/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.block{display:block}}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff)format("woff")}:root{--bg-canvas:#090a0f;--bg-stage:#0f111a;--bg-glass:#141722b8;--bg-glass-hover:#1e2334d9;--border-subtle:#ffffff14;--border-active:#38bdf88c;--accent-primary:#38bdf8;--accent-cinema:#a855f7;--signal-live:#ef4444;--signal-cc:#10b981;--text-primary:#f4f6fb;--text-secondary:#f4f6fbad;--text-tertiary:#f4f6fb75;--font-sans:"Inter Variable", "Inter", "PingFang SC", "Noto Sans SC", "Microsoft YaHei", sans-serif;--font-mono:"JetBrains Mono", "SF Mono", ui-monospace, "PingFang SC", "Noto Sans SC", monospace;--radius-stage:16px;--radius-card:12px;--radius-pill:9999px;--ambient:#38bdf82e}html,body{background:var(--bg-canvas);min-height:100%;color:var(--text-primary);font-family:var(--font-sans);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;margin:0}body{min-height:100vh}button,a{font:inherit}button{cursor:pointer}.desk{width:min(1440px,100% - 32px);margin:0 auto;padding-bottom:72px}.topbar,.hud,.page-footer{transition:opacity .28s}.desk.is-idle .topbar,.desk.is-idle .hud,.desk.is-idle .page-footer,.desk.is-idle .guide,.desk.is-idle .festival{opacity:0;pointer-events:none}.topbar{z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#090a0fe0;justify-content:space-between;align-items:center;gap:16px;min-height:64px;display:flex;position:sticky;top:0}.brand{color:inherit;align-items:center;gap:10px;text-decoration:none;display:flex}.brand h1{letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:16px;font-weight:600}.topnav{border-radius:var(--radius-pill);border:1px solid var(--border-subtle);background:#10131dc7;align-items:center;gap:4px;padding:4px;display:inline-flex}.topnav-link{border-radius:var(--radius-pill);min-height:30px;color:var(--text-secondary);border:1px solid #0000;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:500;text-decoration:none;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.topnav-link:hover{color:var(--text-primary);background:#ffffff0d}.topnav-link.is-active{color:var(--text-primary);background:#38bdf824;border-color:#38bdf861}.topnav-badge{font-family:var(--font-mono);border-radius:var(--radius-pill);color:var(--text-tertiary);background:#ffffff0f;padding:2px 6px;font-size:11px;line-height:1}.topnav-link.is-active .topnav-badge{color:var(--accent-primary);background:#38bdf829}.topbar-actions{gap:8px;display:flex}.button{border:1px solid var(--border-subtle);background:var(--bg-glass);color:var(--text-primary);border-radius:var(--radius-pill);justify-content:center;align-items:center;min-height:36px;padding:0 14px;text-decoration:none;display:inline-flex}.button:hover,.filter:hover,.channel-row:hover,.bento-card:hover{background:var(--bg-glass-hover)}.button-primary,.filter.is-active{border-color:var(--border-active);color:var(--accent-primary)}.studio{align-items:start;gap:20px;display:grid}.stage-column{flex-direction:column;gap:12px;min-width:0;scroll-margin-top:80px;display:flex}.stage-frame{aspect-ratio:16/9;border-radius:var(--radius-stage);background:var(--bg-stage);border:1px solid var(--border-subtle);box-shadow:0 24px 80px -16px var(--ambient);transition:box-shadow .6s;position:relative;overflow:hidden}.stage-frame[data-category=live-tv]{--ambient:#ef444429}.stage-frame[data-category=indie-animation]{--ambient:#a855f733}.stage-frame[data-category=open-movies]{--ambient:#10b98129}.stage-frame[data-category=space-docs]{--ambient:#38bdf838}.engine-mount,.stage-idle{position:absolute;inset:0}.engine-mount iframe,.youtube-slot,.direct-skin,.engine-mount video{border:0;width:100%;height:100%}.direct-skin{background:var(--bg-stage)}.stage-frame .video-js,.stage-frame .video-js .vjs-tech{width:100%;height:100%;position:absolute;inset:0}.stage-frame .video-js{background:var(--bg-stage);font-family:var(--font-sans)}.stage-frame .video-js .vjs-control-bar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#090a0fb8}.stage-frame .video-js .vjs-error-display{display:none}.osd,.osd-watermark,.zap-overlay,.stage-card,.advance-card,.unmute{z-index:3;position:absolute}.osd{border:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);opacity:0;pointer-events:none;background:#090a0f8c;border-radius:10px;align-items:center;gap:10px;padding:8px 10px;transition:opacity .28s;display:flex;top:12px;left:12px;right:12px}.osd.is-visible{opacity:1}.osd-code,.channel-code,.hud-code,.poster-code{font-family:var(--font-mono);letter-spacing:.04em;color:var(--accent-primary);font-size:12px}.osd-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;overflow:hidden}.osd-resolution{font-family:var(--font-mono);color:var(--text-secondary);font-size:11px}.osd-watermark{font-family:var(--font-mono);color:#f4f6fbb8;opacity:0;font-size:12px;top:16px;right:16px}.desk.is-idle .osd-watermark{opacity:1}.unmute{z-index:4;bottom:16px;left:16px}.zap-overlay{font-family:var(--font-mono);letter-spacing:.04em;background:#090a0f59;flex-direction:column;justify-content:flex-end;gap:6px;padding:24px;display:flex;inset:0}.stage-card,.advance-card{border:1px solid var(--border-subtle);background:var(--bg-glass);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:var(--radius-card)}.stage-card{flex-direction:column;justify-content:center;gap:10px;padding:24px;display:flex;inset:12%}.stage-card h2,.modal h2,.section-head h2,.section-head h3,.guide-head h2{margin:0;font-weight:600}.stage-card p,.advance-card p,.section-head p,.page-footer p,.modal p,.hud-author,.bento-blurb,.channel-meta{color:var(--text-secondary);margin:0;line-height:1.5}.stage-card-kicker{font-family:var(--font-mono);color:var(--accent-primary);margin:0;font-size:12px}.stage-card-actions,.hud-pills{flex-wrap:wrap;gap:8px;display:flex}.advance-card{flex-direction:column;gap:8px;width:min(320px,100% - 32px);padding:14px;display:flex;bottom:16px;right:16px}.advance-card strong{font-size:15px}.hud{border-radius:var(--radius-card);border:1px solid var(--border-subtle);background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;display:flex}.hud-title,.bento-title,.channel-title{font-weight:600}.hud-title{margin:2px 0}.pill{border-radius:var(--radius-pill);border:1px solid var(--border-subtle);min-height:28px;color:var(--text-secondary);letter-spacing:.01em;background:#090a0f73;align-items:center;padding:0 11px;font-size:12px;text-decoration:none;display:inline-flex}.pill-source{color:var(--text-primary)}.guide{border-radius:var(--radius-stage);background:linear-gradient(#121520eb,#0b0d14f0);border:1px solid #ffffff17;flex-direction:column;gap:12px;min-width:0;padding:16px;scroll-margin-top:80px;transition:border-color .26s,box-shadow .26s;display:flex;box-shadow:0 24px 60px #0000006b}.guide.is-spotlight{border-color:#38bdf8a6;box-shadow:0 0 0 2px #38bdf838,0 24px 60px #00000080}.guide-head,.section-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.guide-sub{color:var(--text-tertiary);margin:3px 0 0;font-size:12px}.guide-count{font-family:var(--font-mono);color:var(--text-secondary);border-radius:var(--radius-pill);border:1px solid var(--border-subtle);background:#ffffff0a;padding:4px 10px;font-size:12px}.filters{background:#07080db8;border:1px solid #ffffff0f;border-radius:12px;flex-wrap:wrap;gap:5px;padding:5px;display:flex}.filter{min-height:30px;color:var(--text-secondary);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex:auto;justify-content:center;align-items:center;gap:5px;padding:0 9px;font-size:12px;font-weight:500;transition:background .14s,color .14s,border-color .14s;display:inline-flex}.filter-count{font-family:var(--font-mono);color:var(--text-tertiary);font-size:11px}.filter.is-active{color:var(--text-primary);background:#38bdf824;border-color:#38bdf861}.filter.is-active .filter-count{color:var(--accent-primary)}.channel-list{flex-direction:column;gap:8px;max-height:calc(100vh - 230px);padding-right:4px;display:flex;overflow:auto}.channel-list::-webkit-scrollbar{width:5px}.channel-list::-webkit-scrollbar-thumb{background:#ffffff24;border-radius:999px}.bento-card{text-align:left;width:100%;color:inherit;background:#090a0f7a;border:1px solid #ffffff12;border-radius:14px;transition:background .14s,border-color .14s,transform .14s}.channel-row{text-align:left;width:100%;color:inherit;background:#ffffff06;border:1px solid #ffffff0d;border-radius:12px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;transition:background .15s,border-color .15s;display:grid;position:relative}.channel-row:hover{background:#ffffff0f;border-color:#ffffff1f}.channel-row.is-current,.bento-card.is-current{background:linear-gradient(135deg,#38bdf829,#38bdf80a);border-color:#38bdf873}.channel-row .channel-code{width:36px;height:36px;color:var(--text-secondary);background:#ffffff0a;border:1px solid #ffffff12;border-radius:10px;place-items:center;font-size:12px;font-weight:600;display:grid}.channel-row.is-current .channel-code{color:#04111d;background:var(--accent-primary);border-color:var(--accent-primary)}.channel-copy,.bento-copy{flex-direction:column;gap:4px;min-width:0;display:flex}.channel-title,.bento-title{text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);font-size:14px;font-weight:600;line-height:1.35;overflow:hidden}.channel-meta{color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.35;overflow:hidden}.live-pill,.vod-pill{border-radius:var(--radius-pill);white-space:nowrap;justify-content:center;align-items:center;gap:6px;height:24px;padding:0 9px;font-size:11px;font-weight:500;display:inline-flex}.live-pill{color:#fecaca;background:#ef44441f;border:1px solid #ef444447}.vod-pill{color:var(--text-tertiary);background:#ffffff08;border:1px solid #ffffff0f}.live-dot{background:var(--signal-live);border-radius:50%;flex:none;width:8px;height:8px;animation:1.8s infinite live-pulse}@keyframes live-pulse{0%{box-shadow:0 0 #ef44448c}to{box-shadow:0 0 0 8px #ef444400}}.festival{flex-direction:column;gap:28px;margin-top:56px;scroll-margin-top:80px;display:flex}.festival-room{flex-direction:column;gap:14px;display:flex}.bento{grid-template-columns:1fr;gap:12px;display:grid}.bento-card{flex-direction:column;gap:12px;padding:12px;display:flex}.poster{aspect-ratio:16/9;background:#161925;border-radius:8px;place-items:center;display:grid;position:relative;overflow:hidden}.poster img{z-index:1;object-fit:cover;width:100%;height:100%;position:relative}.poster-code{color:var(--text-tertiary);font-size:28px;position:absolute}.page-footer{border-top:1px solid var(--border-subtle);flex-direction:column;gap:8px;max-width:72ch;margin-top:48px;padding-top:20px;display:flex}.page-footer a{color:var(--text-secondary)}.footer-links{align-items:center;gap:16px;display:flex}.text-button{color:var(--text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.page-footer a:hover,.text-button:hover{color:var(--text-primary)}.modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#06070cc2;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal{border-radius:var(--radius-stage);background:linear-gradient(#141824fa,#0c0e16fa);border:1px solid #ffffff1f;flex-direction:column;gap:16px;width:min(440px,100%);padding:22px 24px;display:flex;box-shadow:0 28px 80px #000000a6}.modal-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.modal-kicker{font-family:var(--font-mono);letter-spacing:.08em;color:var(--accent-primary);margin:0 0 4px;font-size:11px}.modal h2{font-size:18px;line-height:1.3}.modal-close{color:var(--text-secondary);background:0 0;border:0;padding:0}.modal-close:hover kbd{color:var(--text-primary);border-color:#ffffff3d}.shortcut-list{background:#07080d99;border:1px solid #ffffff12;border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.shortcut-row{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.shortcut-row:last-child{border-bottom:0}.shortcut-label{color:var(--text-primary);font-size:13.5px}.shortcut-keys{align-items:center;gap:6px;display:inline-flex}.key-sep{color:var(--text-tertiary);font-size:12px}kbd{min-width:26px;height:24px;font-family:var(--font-mono);color:var(--text-primary);background:#ffffff0f;border:1px solid #ffffff24;border-bottom-width:2px;border-radius:6px;justify-content:center;align-items:center;padding:0 7px;font-size:12px;font-weight:500;display:inline-flex;box-shadow:inset 0 1px #ffffff0f}.modal-note{color:var(--text-secondary);background:#38bdf812;border:1px solid #38bdf82e;border-radius:10px;padding:10px 12px;font-size:12.5px;line-height:1.55}.modal-foot{justify-content:flex-end;display:flex}.error-page{width:min(720px,100% - 32px);margin:64px auto}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width>=1024px){.studio{grid-template-columns:minmax(0,7fr) minmax(350px,3fr)}.desk.is-theater .studio{grid-template-columns:minmax(0,1fr)}.desk.is-theater .stage-column{width:min(92vw,1440px);margin-inline:auto}.desk.is-theater .guide{display:none}.bento{grid-template-columns:repeat(12,minmax(0,1fr))}.bento-card{grid-column:span 4}.bento-card.is-lead{flex-direction:row;grid-column:span 8}.bento-card.is-lead .poster{aspect-ratio:auto;flex:1.4;min-height:220px}.bento-card.is-lead .bento-copy{flex:1;justify-content:center}}@media (width<=1023px){.desk{width:min(100% - 20px,1440px)}.topbar{flex-wrap:wrap;padding:8px 0}.stage-column{z-index:40;background:var(--bg-canvas);padding-bottom:8px;position:sticky;top:0}.hud{overflow-x:auto}.channel-list{max-height:none}}@media (prefers-reduced-motion:reduce){.live-dot,.stage-frame,.osd,.topbar,.hud,.page-footer{transition:none;animation:none}}
