.chat-room-modal{position:fixed;inset:0;z-index:9997;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .3s cubic-bezier(.25,1,.5,1),visibility .3s cubic-bezier(.25,1,.5,1);font-family:inherit}.chat-room-modal.show{opacity:1;visibility:visible}.chat-room-overlay{position:absolute;inset:0;background:#000000bf;backdrop-filter:blur(8px)}.chat-room-container{position:relative;background:#fff;border-radius:var(--border-radius);box-shadow:0 25px 50px -12px #00000040;max-width:95vw;max-height:95vh;width:1200px;height:700px;display:flex;flex-direction:column;overflow:hidden;transform:scale(.95) translateY(20px);transition:transform .4s cubic-bezier(.25,1,.5,1);border:1px solid rgb(var(--gray-light))}.chat-room-modal.show .chat-room-container{transform:scale(1) translateY(0)}.chat-room-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;background:var(--primary-green);color:#fff;border-radius:var(--border-radius) var(--border-radius) 0 0}.chat-room-header h3{margin:0;font-size:1.25rem;font-weight:700;color:#fff}.chat-room-close{background:#ffffff1a;border:none;border-radius:var(--border-radius);padding:.5rem;cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:center;width:40px;height:40px}.chat-room-close:hover{background:#fff3;transform:translateY(-1px)}.chat-room-close svg{fill:#fff;width:20px;height:20px}.chat-room-content{flex:1;display:flex;overflow:hidden}.video-section{flex:1;display:flex;flex-direction:column;background:rgb(var(--gray-light));padding:1.5rem;gap:1rem}.local-video-container{position:relative;width:320px;height:240px;border-radius:var(--border-radius);overflow:hidden;box-shadow:0 10px 25px -5px #0000001a;align-self:flex-end;border:2px solid white}.local-video-container video{width:100%;height:100%;object-fit:cover;background:#1a1a1a}.video-label{position:absolute;bottom:8px;left:8px;background:#000c;color:#fff;padding:.25rem .5rem;border-radius:calc(var(--border-radius) / 2);font-size:.75rem;font-weight:600;backdrop-filter:blur(4px)}.remote-videos-container{flex:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem;overflow-y:auto;padding:1rem;border-radius:var(--border-radius);background:#fff;border:1px solid rgb(var(--gray-light))}.remote-video-container{position:relative;aspect-ratio:4/3;border-radius:var(--border-radius);overflow:hidden;box-shadow:0 4px 6px -1px #0000001a;border:2px solid white;transition:transform var(--transition-normal)}.remote-video-container:hover{transform:translateY(-2px);box-shadow:0 10px 25px -5px #00000026}.remote-video-container video{width:100%;height:100%;object-fit:cover;background:#1a1a1a}.no-users-message{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;height:200px;color:rgb(var(--gray-dark));font-style:italic;font-size:1rem}.users-sidebar{width:280px;background:#fff;border-left:1px solid rgb(var(--gray-light));padding:1.5rem;overflow-y:auto}.users-sidebar h4{margin:0 0 1rem;font-size:1rem;font-weight:700;color:rgb(var(--gray-dark));text-transform:uppercase;letter-spacing:.05em}.users-list{display:flex;flex-direction:column;gap:.5rem}.user-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:rgb(var(--gray-light));border-radius:var(--border-radius);transition:all var(--transition-normal);border:1px solid transparent}.user-item:hover{background:var(--primary-green);color:#fff;transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}.user-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid white;box-shadow:0 2px 4px #0000001a}.user-avatar.fallback{background:var(--primary-green);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem}.user-name{font-weight:600;font-size:.875rem}.chat-room-controls{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1.5rem 2rem;background:#fff;border-top:1px solid rgb(var(--gray-light))}.control-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:var(--border-radius-pill);border:2px solid var(--primary-green);background:transparent;color:var(--primary-green);cursor:pointer;transition:all var(--transition-normal);font-family:inherit;font-weight:600;font-size:.875rem;min-width:120px}.control-btn:not(.leave-btn):hover{background:var(--primary-green);color:#fff;transform:translateY(-2px)}.control-btn.disabled{opacity:.5;cursor:not-allowed;transform:none!important}.control-btn.disabled:hover{background:transparent;color:var(--primary-green)}.leave-btn{background:var(--primary-green-dark);color:#fff;border-color:var(--primary-green-dark)}.leave-btn:hover{background:var(--primary-green);border-color:var(--primary-green);transform:translateY(-2px)}.control-btn svg{fill:currentColor;width:18px;height:18px}.comment-form-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.go-live-section{margin-left:auto}.go-live-button{font-size:.875rem;padding:.6rem 1rem;white-space:nowrap}.go-live-button .live-icon{fill:currentColor;width:16px;height:16px}.live-indicator{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:var(--primary-green);color:#fff;border-radius:var(--border-radius-pill);font-size:.875rem;font-weight:600;white-space:nowrap}.live-dot{width:8px;height:8px;background:#fff;border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width: 1024px){.chat-room-container{width:95vw;height:85vh}.local-video-container{width:280px;height:210px}.remote-videos-container{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width: 768px){.chat-room-content{flex-direction:column}.users-sidebar{width:100%;max-height:150px;border-left:none;border-top:1px solid rgb(var(--gray-light));padding:1rem}.users-list{flex-direction:row;overflow-x:auto;gap:.75rem}.user-item{min-width:120px;flex-shrink:0}.video-section{padding:1rem}.local-video-container{width:240px;height:180px;align-self:center}.remote-videos-container{grid-template-columns:1fr}.chat-room-controls{padding:1rem;flex-wrap:wrap}.control-btn{min-width:100px;padding:.6rem .8rem;font-size:.8rem}.leave-btn{order:1;width:100%;margin-top:.5rem}}@media (max-width: 480px){.chat-room-header{padding:1rem}.chat-room-header h3{font-size:1.1rem}.local-video-container{width:200px;height:150px}.remote-videos-container{padding:.75rem;gap:.75rem}.comment-form-header{flex-wrap:wrap;gap:.75rem}.go-live-section{margin-left:0;width:100%}.go-live-button{width:100%;justify-content:center}}.chat-loading{display:flex;align-items:center;justify-content:center;gap:.5rem;color:rgb(var(--gray-dark));font-size:.875rem}.chat-loading:before{content:"";width:16px;height:16px;border:2px solid rgb(var(--gray-light));border-top:2px solid var(--primary-green);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--accent: #2337ff;--accent-dark: #000d8a;--primary-green: #00a98f;--primary-green-dark: #007a63;--rotary-yellow: #ffa30f;--black: 15, 18, 25;--gray: 96, 115, 159;--gray-light: 229, 233, 240;--gray-dark: 34, 41, 57;--gray-gradient: rgba(var(--gray-light), 50%), #fff;--primary-text: #2c3e50;--text-color-secondary: rgb(var(--gray));--border-color: rgb(var(--gray-light));--font-family: "MiSans Latin", "MiSans Thai", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--line-height-base: 1.7;--line-height-heading: 1.2;--max-width: 1100px;--padding-inline: 2rem;--border-radius: 8px;--border-radius-large: 1.5em;--border-radius-pill: 2em;--box-shadow: 0 2px 6px rgba(var(--gray), 25%), 0 8px 24px rgba(var(--gray), 33%), 0 16px 32px rgba(var(--gray), 33%);--shadow-medium: var(--box-shadow);--transition-fast: .2s ease;--transition-normal: .3s ease}html[lang=th]{--font-family: "MiSans Thai", "MiSans Latin", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}@font-face{font-family:MiSans Latin;src:url(/fonts/MiSans%20Latin%20VF.ttf) format("truetype");font-weight:100 500;font-display:swap;font-style:normal}@font-face{font-family:MiSans Thai;src:url(/fonts/MiSans%20Thai%20VF.ttf) format("truetype");font-weight:100 500;font-display:swap;font-style:normal}body{font-family:var(--font-family);margin:0;padding:0;text-align:left;background:linear-gradient(var(--gray-gradient)) no-repeat;background-size:100% 600px;word-wrap:break-word;overflow-wrap:break-word;color:rgb(var(--gray-dark));font-size:20px;font-weight:330;letter-spacing:-.008em;line-height:var(--line-height-base);min-height:100vh;width:100%;isolation:auto}main{width:var(--max-width);max-width:calc(100% - 2em);margin:auto;padding:3em 1em}h1,h2,h3,h4,h5,h6{margin:0 0 .5rem;color:rgb(var(--black));line-height:var(--line-height-heading);font-weight:700}h1{font-size:clamp(2.5rem,1.5rem + 5vw,3.052rem)}h2{font-size:clamp(2rem,1.2rem + 4vw,2.441rem)}h3{font-size:clamp(1.5rem,1rem + 2vw,1.953rem)}h4{font-size:clamp(1.2rem,.8rem + 1.5vw,1.563rem)}h5{font-size:1.25em}strong,b{font-weight:700}a{color:#000;transition:color var(--transition-fast);text-decoration:none}a:hover:not(.cta-button):not(.btn):not(.btn-primary):not(.btn-outline):not(.about-link):not(.lang-switch-btn):not(.month-link):not(.social-link){color:var(--primary-green, #00a98f);text-decoration:none}.search-result-item:hover,.search-result-item:hover h3{color:var(--primary-green, #00a98f)!important;text-decoration:none!important}p{margin-bottom:1em}.prose p{margin-bottom:2em}textarea,input{font-size:16px;font-family:inherit}textarea{width:100%;resize:vertical}table{width:100%;border-collapse:collapse}img{max-width:100%;height:auto;border-radius:var(--border-radius)}code{padding:2px 5px;background-color:rgb(var(--gray-light));border-radius:2px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9em}pre{padding:1.5em;border-radius:var(--border-radius);overflow-x:auto}pre>code{all:unset}blockquote{border-left:4px solid var(--accent);padding:0 0 0 20px;margin:0;font-size:1.333em;font-style:italic}hr{border:none;border-top:1px solid rgb(var(--gray-light));margin:2em 0}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--padding-inline)}.btn{display:inline-flex;align-items:center;gap:.5em;padding:.8em 1.5em;border-radius:var(--border-radius-pill);text-decoration:none;font-weight:700;border:none;cursor:pointer;transition:all var(--transition-normal);font-family:inherit}.btn-primary{background-color:var(--primary-green);color:#fff}.btn-primary:hover{background-color:var(--primary-green-dark);transform:translateY(-2px)}.btn-outline{background-color:transparent;color:var(--primary-green);border:2px solid var(--primary-green)}.btn-outline:hover{background-color:var(--primary-green);color:#fff}@media (max-width: 768px){:root{--padding-inline: 1rem}body{font-size:18px}main{padding:2em 1em}.container{padding:0 1rem}.btn{padding:.8em 1.2em}}@media (max-width: 480px){:root{--padding-inline: .75rem}main{padding:1.5em .75em}.container{padding:0 .75rem}}.cursor-circle{position:fixed;top:0;left:0;width:20px;height:20px;background:var(--primary-green);pointer-events:none;z-index:9998;border-radius:50%;opacity:0;transform:translate(-50%,-50%);transition:width .3s cubic-bezier(.25,1,.5,1),height .3s cubic-bezier(.25,1,.5,1),border-radius .3s cubic-bezier(.25,1,.5,1),opacity .2s ease;will-change:transform,width,height,border-radius}.cursor-circle.active{opacity:1}.cursor-circle.fading{opacity:0!important}@media (pointer: coarse){.cursor-circle{display:none!important}*,*:hover{cursor:auto!important}}@media (prefers-reduced-motion: reduce){.cursor-circle{transition:opacity .2s ease}}.subscribe-modal[data-astro-cid-dzxbfk3c]{position:fixed;top:0;left:0;width:100%;height:100%;z-index:10000;cursor:auto}.subscribe-modal__backdrop[data-astro-cid-dzxbfk3c]{position:absolute;inset:0;background:#00000073;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);cursor:auto}.subscribe-modal__dialog[data-astro-cid-dzxbfk3c]{position:relative;width:min(92vw,560px);margin:10vh auto 0;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;padding:1.5rem;cursor:default}.subscribe-modal__close[data-astro-cid-dzxbfk3c]{position:absolute;top:8px;right:10px;border:none;background:transparent;font-size:1.5rem;line-height:1;cursor:pointer;color:#666}.subscribe-modal__title[data-astro-cid-dzxbfk3c]{margin:0 0 .5rem;font-size:1.4rem;color:var(--primary-text)}.subscribe-modal__desc[data-astro-cid-dzxbfk3c]{margin:0 0 1rem;color:#444;line-height:1.6}.subscribe-modal__actions[data-astro-cid-dzxbfk3c]{display:flex;gap:.75rem;flex-wrap:wrap}.subscribe-modal__cta[data-astro-cid-dzxbfk3c]{flex:1;min-width:200px}.subscribe-modal__dismiss[data-astro-cid-dzxbfk3c]{flex:1;min-width:160px}.subscribe-modal__note[data-astro-cid-dzxbfk3c]{margin:.75rem 0 0;font-size:.85rem;color:#777}@media (max-width: 480px){.subscribe-modal__dialog[data-astro-cid-dzxbfk3c]{margin-top:6vh;padding:1.25rem}.subscribe-modal__title[data-astro-cid-dzxbfk3c]{font-size:1.25rem}}html{scroll-behavior:smooth;overflow-x:hidden;width:100%}body{background-image:url(/bg.png);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed;min-height:100vh;width:100%;overflow-x:hidden;margin:0;padding:0}body.blog-post{background-image:none!important;background-color:#fff!important;overflow-x:visible!important}.page-wrapper{min-height:100vh;display:flex;flex-direction:column;width:100%;max-width:100vw;overflow-x:hidden;box-sizing:border-box}body.blog-post .page-wrapper{overflow-x:visible!important}:focus-visible{outline:2px solid var(--primary-green);outline-offset:2px;border-radius:4px}:focus:not(:focus-visible){outline:none}img[loading=lazy]{transition:opacity .3s ease}img[loading=lazy]:not([src]){opacity:0}*,*:before,*:after{box-sizing:border-box}@media (max-width: 768px){body{background-attachment:scroll;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-color:#ffffff80;pointer-events:none;z-index:-1}html{-webkit-overflow-scrolling:touch}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
