:root{--bg-core:#0c0e11;--bg-surface:#14171c;--bg-surface-elevated:#1c2027;--border-subtle:#242933;--border-highlight:#3a4252;--text-primary:#f0f3f8;--text-secondary:#9aa5b6;--text-muted:#5e6878;--accent-amber:#ffaa1d;--accent-amber-glow:#ffaa1d40;--accent-cyan:#38bdf8;--accent-green:#22c55e;--accent-red:#ef4444;--font-display:"Saira Condensed", sans-serif;--font-ui:"Outfit", sans-serif;--font-mono:"Share Tech Mono", monospace}*{box-sizing:border-box}html,body{color:var(--text-primary);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#000;width:100%;max-width:100%;min-height:100vh;margin:0;padding:0;overflow-x:hidden}#root{flex-direction:column;width:100%;max-width:100%;min-height:100vh;display:flex;overflow-x:hidden}button{cursor:pointer;border:none;outline:none;font-family:inherit;transition:all .18s cubic-bezier(.16,1,.3,1)}input,textarea,select{outline:none;font-family:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#101216}::-webkit-scrollbar-thumb{background:#2b313d;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#3e4657}:root{--flap-width:52px;--flap-height:78px;--flap-font-size:58px;--flap-font-family:"Saira Condensed", "Oswald", "Bebas Neue", "Impact", sans-serif;--flap-perspective:450px;--flap-radius:4px;--flap-gap:3px;--flap-divider-size:1.5px;--flap-bg-top:#121214;--flap-bg-mid:#0e0e10;--flap-bg-bottom:#0a0a0c;--flap-card-border:#040405;--flap-text-color:#f7f4ec;--flap-hinge-color:#050506;--flap-notch-color:#1a1a1d;--flap-highlight:#ffffff0a;--flap-shadow-drop:#000000d9}.theme-classic,.solari-theme-classic{--flap-bg-top:#121214;--flap-bg-mid:#0e0e10;--flap-bg-bottom:#0a0a0c;--flap-card-border:#040405;--flap-text-color:#f7f4ec;--flap-hinge-color:#050506;--flap-notch-color:#1a1a1d;--flap-highlight:#ffffff0a;--flap-shadow-drop:#000000d9}.theme-amber,.solari-theme-amber{--flap-bg-top:#16110a;--flap-bg-mid:#100c06;--flap-bg-bottom:#090703;--flap-card-border:#050301;--flap-text-color:#ffb833;--flap-hinge-color:#050301;--flap-notch-color:#2b1f0c;--flap-highlight:#ffb83314;--flap-shadow-drop:#000000d9}.theme-emerald{--flap-bg-top:#0a140d;--flap-bg-mid:#060e08;--flap-bg-bottom:#040805;--flap-card-border:#020503;--flap-text-color:#4ade80;--flap-hinge-color:#020503;--flap-notch-color:#122417;--flap-highlight:#4ade8017;--flap-shadow-drop:#000000d9}.theme-cyan{--flap-bg-top:#0a131a;--flap-bg-mid:#060d13;--flap-bg-bottom:#04070a;--flap-card-border:#020406;--flap-text-color:#38bdf8;--flap-hinge-color:#020406;--flap-notch-color:#12222e;--flap-highlight:#38bdf817;--flap-shadow-drop:#000000d9}.theme-ruby{--flap-bg-top:#190a0d;--flap-bg-mid:#120608;--flap-bg-bottom:#0a0305;--flap-card-border:#050102;--flap-text-color:#fb7185;--flap-hinge-color:#050102;--flap-notch-color:#2b1116;--flap-highlight:#fb718517;--flap-shadow-drop:#000000d9}.theme-steel,.solari-theme-steel{--flap-bg-top:#101216;--flap-bg-mid:#0c0d10;--flap-bg-bottom:#08090b;--flap-card-border:#040506;--flap-text-color:#e2f0fb;--flap-hinge-color:#040506;--flap-notch-color:#1a1e26;--flap-highlight:#e2f0fb0f;--flap-shadow-drop:#000000d9}.split-flap-board{-webkit-user-select:none;user-select:none;box-sizing:border-box;background:#080809;border:1px solid #17171a;border-radius:10px;flex-direction:column;gap:6px;width:fit-content;max-width:100%;padding:14px 16px;display:flex;overflow-x:auto;box-shadow:inset 0 2px 5px #ffffff05,inset 0 -3px 8px #000000e6,0 12px 36px #000c}.split-flap-row{align-items:center;gap:var(--flap-gap);flex-direction:row;display:flex}.split-flap-cell{width:var(--flap-width);height:var(--flap-height);perspective:var(--flap-perspective);border-radius:var(--flap-radius);box-shadow:0 3px 6px var(--flap-shadow-drop), 0 1px 2px #000000e6;font-family:var(--flap-font-family);font-size:var(--flap-font-size);color:var(--flap-text-color);text-transform:uppercase;box-sizing:border-box;background:#060607;flex-shrink:0;font-weight:700;position:relative;overflow:visible}.split-flap-cell:before,.split-flap-cell:after{content:"";background:var(--flap-notch-color);z-index:10;border-radius:1px;width:4px;height:6px;position:absolute;top:calc(50% - 3px);box-shadow:inset 0 1px 1px #000c}.split-flap-cell:before{left:-2px}.split-flap-cell:after{right:-2px}.flap-half{box-sizing:border-box;border-left:1px solid var(--flap-card-border);border-right:1px solid var(--flap-card-border);backface-visibility:hidden;width:100%;height:50%;position:absolute;left:0;overflow:hidden}.flap-half.top-static{border-top:1px solid var(--flap-card-border);border-top-left-radius:var(--flap-radius);border-top-right-radius:var(--flap-radius);background:linear-gradient(180deg, var(--flap-bg-top) 0%, var(--flap-bg-mid) 100%);z-index:1;border-bottom:none;top:0}.flap-half.bottom-static{border-bottom:1px solid var(--flap-card-border);border-bottom-left-radius:var(--flap-radius);border-bottom-right-radius:var(--flap-radius);background:linear-gradient(180deg, var(--flap-bg-mid) 0%, var(--flap-bg-bottom) 100%);z-index:1;border-top:none;bottom:0}.flap-half.top-flip{border-top:1px solid var(--flap-card-border);border-top-left-radius:var(--flap-radius);border-top-right-radius:var(--flap-radius);background:linear-gradient(180deg, var(--flap-bg-top) 0%, var(--flap-bg-mid) 100%);transform-origin:bottom;z-index:3;border-bottom:none;top:0}.flap-half.bottom-flip{border-bottom:1px solid var(--flap-card-border);border-bottom-left-radius:var(--flap-radius);border-bottom-right-radius:var(--flap-radius);background:linear-gradient(180deg, var(--flap-bg-mid) 0%, var(--flap-bg-bottom) 100%);transform-origin:top;z-index:2;border-top:none;bottom:0;transform:rotateX(90deg)}.flap-glyph{width:100%;height:var(--flap-height);line-height:var(--flap-height);text-align:center;pointer-events:none;letter-spacing:-.02em;text-shadow:0 1px 1px #0000004d;position:absolute;left:0}.top-static .flap-glyph,.top-flip .flap-glyph{top:0}.bottom-static .flap-glyph,.bottom-flip .flap-glyph{bottom:0}.top-static:after,.top-flip:after{content:"";background:var(--flap-highlight);border-top-left-radius:var(--flap-radius);border-top-right-radius:var(--flap-radius);height:1px;position:absolute;top:0;left:0;right:0}.split-flap-cell .divider-line{z-index:6;pointer-events:none;width:100%;height:1px;box-shadow:none;background:#000000d9;position:absolute;top:50%;left:0;transform:translateY(-50%)}.flap-shadow{pointer-events:none;border-radius:inherit;opacity:0;position:absolute;inset:0}.split-flap-cell.is-flipping .top-flip{animation:.14s cubic-bezier(.4,0,.7,.4) forwards flapTop}.split-flap-cell.is-flipping .bottom-flip{animation:.16s cubic-bezier(.15,.85,.35,1.15) .13s forwards flapBottom}.split-flap-cell.is-flipping .top-flip .flap-shadow{animation:.14s ease-in forwards shadowTop}.split-flap-cell.is-flipping .bottom-static .flap-shadow{animation:.28s ease-out forwards shadowBottom}@keyframes flapTop{0%{transform:rotateX(0)}to{transform:rotateX(-90deg)}}@keyframes flapBottom{0%{z-index:4;transform:rotateX(90deg)}75%{z-index:4;transform:rotateX(-3deg)}to{z-index:4;transform:rotateX(0)}}@keyframes shadowTop{0%{opacity:0;background:0 0}to{opacity:.65;background:linear-gradient(#0000 0%,#000c 100%)}}@keyframes shadowBottom{0%{opacity:.7;background:linear-gradient(#000000e6 0%,#0000001a 100%)}50%{opacity:.5}to{opacity:0;background:0 0}}.split-flap-board.size-sm{--flap-width:32px;--flap-height:48px;--flap-font-size:34px;--flap-gap:2px}.split-flap-board.size-md{--flap-width:42px;--flap-height:64px;--flap-font-size:46px;--flap-gap:3px}.split-flap-board.size-lg{--flap-width:50px;--flap-height:75px;--flap-font-size:55px;--flap-gap:3px}.fliptable-app-root{background-color:var(--bg-primary);min-height:100vh;color:var(--text-primary);flex-direction:column;display:flex}.app-global-nav{border-bottom:1px solid var(--border-subtle);z-index:1000;background:#0d0f12;justify-content:space-between;align-items:center;padding:8px 18px;display:flex;position:sticky;top:0;box-shadow:0 4px 12px #0006}.global-nav-brand{align-items:center;gap:10px;display:flex}.global-nav-brand .app-title{font-family:var(--font-display);letter-spacing:2px;color:var(--accent-amber);font-size:15px;font-weight:900}.global-nav-brand .app-subtitle{font-family:var(--font-mono);letter-spacing:1px;color:var(--text-muted);border-left:1px solid var(--border-subtle);padding-left:10px;font-size:10px}.global-nav-links{align-items:center;gap:8px;display:flex}.global-nav-btn{color:var(--text-secondary);font-family:var(--font-sans);letter-spacing:.5px;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:600;transition:all .15s;display:flex}.global-nav-btn:hover{color:#fff;background:#ffffff0d}.global-nav-btn.active{color:#fff;background:#1f2530;border-color:#353e4f;box-shadow:inset 0 1px #ffffff1a,0 2px 4px #0000004d}.global-nav-divider{background:var(--border-subtle);width:1px;height:20px;margin:0 4px}.global-nav-popout{color:var(--accent-amber);font-family:var(--font-mono);letter-spacing:.5px;background:#f59e0b1a;border:1px solid #f59e0b4d;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:11px;font-weight:700;transition:all .15s;display:flex}.global-nav-popout:hover{border-color:var(--accent-amber);color:#ffc247;background:#f59e0b33}.view-content-wrapper{flex-direction:column;flex:1;display:flex}.fliptable-app-root.view-mode-board{background-color:#000;background-image:none;width:100vw;height:100vh;min-height:100vh;overflow:hidden}.board-display-page{-webkit-user-select:none;user-select:none;background:#000;flex-direction:column;flex:1;justify-content:center;align-items:center;width:100vw;height:100vh;min-height:100vh;display:flex;position:relative;overflow:hidden}.board-stage{box-sizing:border-box;background:#000;flex:1;justify-content:center;align-items:center;width:100%;height:100%;padding:0;display:flex}.board-scalable-wrapper{flex-direction:column;justify-content:center;align-items:center;transition:transform .2s cubic-bezier(.2,.8,.2,1);display:flex}.board-casing{background:linear-gradient(#0d0d10 0%,#050507 100%);border:3px solid #16161a;border-radius:14px;padding:18px 20px;position:relative;box-shadow:0 24px 60px #000000fa,inset 0 1px #ffffff08,inset 0 -4px 10px #000000f2}.screw{background:#18181c;border:1px solid #25252b;border-radius:50%;width:10px;height:10px;position:absolute;box-shadow:inset 0 1px 2px #000000e6,0 1px #ffffff08}.screw:before{content:"";background:#08080a;width:6px;height:1.5px;position:absolute;top:4px;left:2px}.screw.tl{top:7px;left:7px}.screw.tr{top:7px;right:7px}.screw.bl{bottom:7px;left:7px}.screw.br{bottom:7px;right:7px}.controller-page{box-sizing:border-box;flex-direction:column;gap:24px;width:100%;max-width:1400px;margin:0 auto;padding:24px 20px 60px;display:flex;overflow-x:hidden}.controller-header{border:1px solid var(--border-subtle);box-sizing:border-box;background:linear-gradient(#181b22 0%,#121419 100%);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:18px 24px;display:flex;box-shadow:0 10px 30px #00000080,inset 0 1px #ffffff14}.controller-brand{align-items:center;gap:14px;display:flex}.controller-logo{width:44px;height:44px;color:var(--accent-amber);background:linear-gradient(135deg,#2b303c 0%,#171920 100%);border:2px solid #3d4556;border-radius:8px;justify-content:center;align-items:center;display:flex;box-shadow:inset 0 2px 4px #ffffff1a,0 4px 8px #0006}.controller-brand h1{font-family:var(--font-display);letter-spacing:1.5px;color:#fff;margin:0;font-size:24px;font-weight:800;line-height:1.1}.controller-brand p{font-family:var(--font-mono);letter-spacing:1px;color:var(--text-muted);margin:3px 0 0;font-size:11px}.controller-nav-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sync-status-badge{font-family:var(--font-mono);color:#4ade80;background:#22c55e1a;border:1px solid #22c55e4d;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:11px;font-weight:700;display:flex}.session-status-wrap{align-items:center;gap:8px;display:flex}.disconnect-nav-btn{color:#f87171;font-family:var(--font-sans);letter-spacing:.5px;cursor:pointer;background:#ef44441f;border:1px solid #ef444459;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:11px;font-weight:700;transition:all .15s;display:flex}.disconnect-nav-btn:hover{color:#fff;background:#ef444447;border-color:#ef4444;box-shadow:0 0 12px #ef444459}.inline-disconnect-link{color:#f87171;font-family:var(--font-mono);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:10px;font-weight:700;text-decoration:underline;transition:color .15s}.inline-disconnect-link:hover{color:#ef4444}.live-indicator-dot{background:#22c55e;border-radius:50%;width:7px;height:7px;box-shadow:0 0 6px #22c55e}.controller-btn{color:var(--text-primary);border:1px solid var(--border-subtle);background:#1a1e27;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:12px;font-weight:600;transition:all .15s;display:flex}.controller-btn:hover{background:#252b37;border-color:#3f495b}.controller-btn.highlight{color:#000;background:linear-gradient(#f59e0b 0%,#d97706 100%);border-color:#b45309;font-weight:700}.controller-btn.highlight:hover{background:linear-gradient(#fbbf24 0%,#f59e0b 100%)}.controller-btn.secondary{color:var(--text-secondary);background:0 0}.controller-btn.secondary.disclaimer-header-btn{color:var(--accent-amber);background:#ffaa1d14;border:1px solid #ffaa1d4d;text-decoration:none}.controller-btn.secondary.disclaimer-header-btn:hover{border-color:var(--accent-amber);color:#fff;background:#ffaa1d2e;box-shadow:0 0 10px #ffaa1d33}.controller-grid{grid-template-columns:1fr 380px;align-items:start;gap:24px;display:grid}@media (width<=1080px){.controller-grid{grid-template-columns:1fr}}.controller-main-panel{flex-direction:column;gap:20px;display:flex}.card-section{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;flex-direction:column;gap:16px;padding:20px;display:flex;box-shadow:0 4px 16px #0000004d}.section-header-flex{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.section-title{font-family:var(--font-mono);letter-spacing:1px;color:var(--accent-amber);text-transform:uppercase;align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.last-sent-pill{font-family:var(--font-mono);color:#4ade80;background:#22c55e1a;border:1px solid #22c55e40;border-radius:4px;padding:3px 8px;font-size:11px}.mode-tabs-row{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width<=680px){.mode-tabs-row{grid-template-columns:1fr}}.mode-tab{border:1px solid var(--border-subtle);text-align:left;background:#111419;border-radius:8px;align-items:flex-start;gap:12px;padding:14px;transition:all .2s;display:flex}.mode-tab:hover{background:#181c24;border-color:#343c4a}.mode-tab.active{border-color:var(--accent-amber);box-shadow:0 0 0 1px var(--accent-amber), 0 4px 12px #0006;background:#1c212a}.mode-tab svg{color:var(--accent-amber);flex-shrink:0;margin-top:2px}.tab-info strong{color:#fff;margin-bottom:2px;font-size:13px;font-weight:700;display:block}.tab-info span{color:var(--text-muted);font-size:11px}.editor-form{flex-direction:column;gap:10px;display:flex}.line-input-row{align-items:center;gap:10px;display:flex}.line-badge{width:65px;font-family:var(--font-mono);color:var(--accent-amber);font-size:11px;font-weight:700}.input-wrap{flex:1;position:relative}.retro-input{box-sizing:border-box;color:#fff;width:100%;font-family:var(--font-mono);letter-spacing:1.5px;text-transform:uppercase;background:#0c0e12;border:1px solid #232832;border-radius:6px;padding:10px 60px 10px 14px;font-size:15px;font-weight:600;transition:border-color .15s}.retro-input:focus{border-color:var(--accent-amber);box-shadow:0 0 0 3px var(--accent-amber-glow);outline:none}.char-counter{font-family:var(--font-mono);color:var(--text-muted);pointer-events:none;font-size:11px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.editor-actions{box-sizing:border-box;flex-wrap:wrap;justify-content:flex-end;gap:12px;width:100%;margin-top:6px;display:flex}.action-pill{letter-spacing:.5px;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;padding:10px 20px;font-size:13px;font-weight:700;transition:all .15s;display:flex}.action-pill.danger{color:#f87171;background:#1a1415;border-color:#ef44444d}.action-pill.danger:hover{background:#2b1718;border-color:#ef4444}.action-pill.secondary{color:#94a3b8;background:#1a1e27;border-color:#2e384d}.action-pill.secondary:hover{color:#fff;background:#252c3a;border-color:#475569}.action-pill.primary-glow{color:#000;background:linear-gradient(#f59e0b 0%,#d97706 100%);border-color:#b45309;box-shadow:0 4px 14px #f59e0b4d}.action-pill.primary-glow:hover{background:linear-gradient(#fbbf24 0%,#f59e0b 100%);box-shadow:0 4px 20px #f59e0b80}.presets-box{border-top:1px solid var(--border-subtle);margin-top:8px;padding-top:20px}.presets-header{align-items:center;gap:8px;margin-bottom:12px;display:flex}.presets-icon{color:var(--accent-amber)}.presets-label{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:1px;font-size:11px;font-weight:700}.presets-cards-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width<=640px){.presets-cards-grid{grid-template-columns:1fr}}.preset-card{background:#0b0d11;border:1px solid #1f2530;border-radius:10px;flex-direction:column;gap:10px;padding:14px;transition:all .2s;display:flex}.preset-card:hover{border-color:#3b465a;box-shadow:0 4px 16px #0006}.preset-card-header{flex-direction:column;gap:3px;display:flex}.preset-card-header strong{font-family:var(--font-mono);color:#fff;letter-spacing:.5px;font-size:13px}.preset-card-header span{color:var(--text-muted);font-size:11px;line-height:1.3}.preset-card-preview{font-family:var(--font-mono);background:#040507;border:1px solid #161b24;border-radius:6px;flex-direction:column;gap:2px;padding:8px 10px;font-size:10px;line-height:1.35;display:flex}.preview-line-mini{color:#60a5fa;letter-spacing:.5px;white-space:pre;text-overflow:ellipsis;overflow:hidden}.preset-apply-btn{color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.5px;cursor:pointer;text-align:center;background:#151a22;border:1px solid #2a3444;border-radius:6px;margin-top:auto;padding:8px 12px;font-size:11px;font-weight:700;transition:all .15s}.preset-apply-btn:hover{background:var(--accent-amber);color:#000;border-color:#d97706;box-shadow:0 0 12px #f59e0b59}.theme-swatches-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}@media (width<=640px){.theme-swatches-grid{grid-template-columns:repeat(2,1fr)}}.theme-swatch-card{text-align:left;cursor:pointer;background:#0c0e12;border:1px solid #1e242e;border-radius:8px;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.theme-swatch-card:hover{background:#14171f;border-color:#3b465a;transform:translateY(-1px)}.theme-swatch-card.active{border-color:var(--accent-amber);background:#161b24;box-shadow:0 0 14px #f59e0b33,inset 0 1px #ffffff1a}.swatch-indicator{align-items:center;gap:8px;display:flex}.swatch-color-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;transition:box-shadow .2s;display:inline-block}.swatch-indicator strong{color:#fff;letter-spacing:.3px;font-size:12px;font-weight:700}.swatch-desc{color:var(--text-muted);font-size:10px;line-height:1.2}.departures-desc{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.clock-preview-box pre{font-family:var(--font-mono);color:#38bdf8;background:#080b10;border:1px solid #1e293b;border-radius:6px;margin:0;padding:14px;font-size:13px;line-height:1.5}.settings-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}@media (width<=768px){.settings-grid{grid-template-columns:1fr}}.setting-box{flex-direction:column;gap:8px;display:flex}.setting-box label{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.5px;font-size:11px;font-weight:700}.setting-pill-group{border:1px solid var(--border-subtle);box-sizing:border-box;background:#0d0f13;border-radius:8px;gap:2px;width:100%;padding:3px;display:flex}.setting-btn{min-width:0;color:var(--text-secondary);white-space:nowrap;background:0 0;border-radius:6px;flex:1 1 0;justify-content:center;align-items:center;gap:4px;padding:7px 6px;font-size:12px;font-weight:600;transition:all .15s;display:flex}.btn-subtext{opacity:.75;font-size:10px;font-weight:500}.setting-btn:hover{color:#fff;background:#ffffff0d}.setting-btn.active{color:#fff;background:#252c38;box-shadow:0 2px 6px #0006}.setting-btn.active.amber{color:var(--accent-amber);background:#241d11;border:1px solid #ffaa1d4d}.setting-btn.active.green{color:#4ade80;background:#22c55e26;border:1px solid #22c55e4d}.controller-preview-sidebar{position:sticky;top:60px}.preview-card{border:1px solid var(--border-subtle);background:#111419;border-radius:12px;flex-direction:column;gap:16px;padding:18px;display:flex;box-shadow:0 8px 24px #0006}.preview-header{justify-content:space-between;align-items:center;display:flex}.preview-indicator{font-family:var(--font-mono);color:var(--text-secondary);letter-spacing:.5px;align-items:center;gap:8px;font-size:11px;font-weight:700;display:flex}.preview-indicator .live-dot{background:#22c55e;border-radius:50%;width:8px;height:8px;box-shadow:0 0 8px #22c55e}.preview-theme-tag{font-family:var(--font-mono);color:var(--accent-amber);background:#ffaa1d1a;border:1px solid #ffaa1d33;border-radius:4px;padding:2px 6px;font-size:10px}.mini-board-bezel{box-sizing:border-box;background:#07080a;border:2px solid #232832;border-radius:8px;width:100%;max-width:100%;padding:10px 6px;position:relative;overflow:hidden;box-shadow:inset 0 2px 8px #000000e6}.mini-screws{justify-content:space-between;padding:0 4px;display:flex}.mini-screws.top{margin-bottom:6px}.mini-screws.bottom{margin-top:6px}.mini-screw{background:#394150;border-radius:50%;width:5px;height:5px}.mini-board-rows{flex-direction:column;gap:3px;width:100%;display:flex}.mini-board-row{justify-content:center;gap:1px;width:100%;display:flex}.mini-cell{aspect-ratio:12/17;color:#f7f3e8;-webkit-user-select:none;user-select:none;background:#14171d;border-top:1px solid #ffffff14;border-radius:1px;flex:1 1 0;justify-content:center;align-items:center;min-width:0;max-width:14px;height:auto;font-family:Saira Condensed,Bebas Neue,Oswald,monospace;font-size:clamp(8px,2.5vw,13px);font-weight:700;display:flex;overflow:hidden;box-shadow:0 1px 2px #0009}.preview-specs-box{font-family:var(--font-mono);box-sizing:border-box;background:#0a0c0f;border:1px solid #1a202a;border-radius:6px;flex-direction:column;gap:6px;width:100%;padding:10px 12px;font-size:11px;display:flex}.spec-row{color:var(--text-muted);justify-content:space-between;align-items:baseline;gap:8px;width:100%;display:flex}.spec-row>span:first-child{flex-shrink:0;font-size:11px}.spec-row .val{color:#fff;text-align:right;word-break:break-word;font-size:11px;font-weight:600}.spec-row .val.green{color:#4ade80}.preview-instructions{box-sizing:border-box;background:#f59e0b0d;border:1px solid #f59e0b33;border-radius:8px;width:100%;padding:12px}.preview-instructions h4{font-family:var(--font-mono);color:var(--accent-amber);letter-spacing:.5px;margin:0 0 6px;font-size:11px}.preview-instructions p{color:var(--text-secondary);margin:0 0 6px;font-size:11px;line-height:1.4}.preview-instructions p:last-child{margin-bottom:0}.preview-disclaimer-box{box-sizing:border-box;background:#ffaa1d0a;border:1px solid #ffaa1d38;border-radius:8px;align-items:flex-start;gap:10px;width:100%;padding:12px;display:flex}.disclaimer-sidebar-icon{color:var(--accent-amber);flex-shrink:0;margin-top:2px}.disclaimer-sidebar-content{flex-direction:column;gap:4px;display:flex}.disclaimer-sidebar-content strong{font-family:var(--font-mono);color:var(--accent-amber);letter-spacing:.5px;font-size:11px}.disclaimer-sidebar-content p{color:var(--text-muted);margin:0;font-size:11px;line-height:1.35}.disclaimer-sidebar-links{flex-wrap:wrap;align-items:center;gap:10px;margin-top:4px;display:flex}.disclaimer-link-primary{font-family:var(--font-mono);color:var(--accent-amber);align-items:center;gap:4px;font-size:11px;font-weight:700;text-decoration:underline;transition:color .15s;display:inline-flex}.disclaimer-link-primary:hover{color:#fff}.disclaimer-link-secondary{font-family:var(--font-mono);color:var(--text-muted);font-size:10.5px;text-decoration:underline}.disclaimer-link-secondary:hover{color:#fff}.controller-footer{border-top:1px solid var(--border-subtle);box-sizing:border-box;width:100%;margin-top:10px;padding-top:24px}.controller-footer-inner{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.controller-footer-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.footer-legal-link{font-family:var(--font-mono);color:var(--accent-amber);background:#ffaa1d14;border:1px solid #ffaa1d40;border-radius:20px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex}.footer-legal-link:hover{color:#fff;border-color:var(--accent-amber);background:#ffaa1d33;box-shadow:0 0 10px #ffaa1d40}.footer-dot{color:var(--text-muted);font-size:12px}.footer-note{color:var(--text-muted);font-size:11px;font-family:var(--font-mono);letter-spacing:.3px;margin:0}.pairing-overlay-backdrop{-webkit-backdrop-filter:blur(10px);z-index:1000;background:#000000d1;justify-content:center;align-items:center;padding:20px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes modalShake{0%,to{transform:translate(0)}15%,45%,75%{transform:translate(-8px)}30%,60%,90%{transform:translate(8px)}}.pairing-modal-card{text-align:center;background:linear-gradient(#13161c 0%,#0c0e12 100%);border:1px solid #282f3c;border-radius:16px;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:380px;padding:28px 24px;transition:border-color .2s,box-shadow .2s;display:flex;position:relative;box-shadow:0 24px 60px #000000d9,inset 0 1px #ffffff14}.pairing-modal-card.shake{border-color:#ef4444;animation:.45s cubic-bezier(.36,.07,.19,.97) both modalShake;box-shadow:0 0 24px #ef444459,0 24px 60px #000000d9}.pairing-shake-alert{color:#fca5a5;text-align:left;box-sizing:border-box;background:#ef444426;border:1px solid #ef444459;border-radius:8px;align-items:center;gap:8px;width:100%;padding:8px 12px;font-size:11px;font-weight:600;line-height:1.35;animation:.2s ease-out fadeIn;display:flex}.pairing-close-btn{color:var(--text-secondary);background:#ffffff0f;border:1px solid #ffffff14;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .15s;display:flex;position:absolute;top:14px;right:14px}.pairing-close-btn:hover{color:#fff;background:#ffffff26}.pairing-header{flex-direction:column;align-items:center;gap:8px;display:flex}.pairing-icon-badge{width:44px;height:44px;color:var(--accent-amber);background:linear-gradient(135deg,#2b303c 0%,#171920 100%);border:2px solid #3d4556;border-radius:10px;justify-content:center;align-items:center;display:flex}.pairing-header h3{font-family:var(--font-display);letter-spacing:1px;color:#fff;margin:0;font-size:18px;font-weight:800}.pairing-header p{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.5px;margin:0;font-size:11px}.qr-container-box{background:#fff;border-radius:12px;justify-content:center;align-items:center;min-width:220px;min-height:220px;padding:10px;display:flex;position:relative;box-shadow:0 8px 24px #00000080}.qr-image{width:210px;height:210px;image-rendering:pixelated;display:block}.connected-badge-overlay{color:#4ade80;font-family:var(--font-mono);letter-spacing:1px;background:#0d0f12eb;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex;position:absolute;inset:0}.qr-image.expired-blur{filter:blur(4px)grayscale(.8);opacity:.15;transition:all .3s}.expired-badge-overlay{cursor:pointer;text-align:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0c10f2;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:16px;transition:all .2s;display:flex;position:absolute;inset:0}.expired-badge-overlay:hover{background:#0e1116fa}.expired-badge-overlay strong{font-family:var(--font-mono);letter-spacing:1px;color:var(--accent-amber);font-size:13px;font-weight:800}.expired-badge-overlay span{color:var(--text-muted);font-size:11px}.renew-qr-btn{border:1px solid var(--accent-amber);color:#fbbf24;font-family:var(--font-mono);letter-spacing:.5px;cursor:pointer;background:#f59e0b26;border-radius:6px;align-items:center;gap:6px;margin-top:4px;padding:6px 12px;font-size:11px;font-weight:700;transition:all .15s;display:flex}.renew-qr-btn:hover{color:#fff;background:#f59e0b4d;box-shadow:0 0 12px #f59e0b4d}.pin-display-box{box-sizing:border-box;background:#090b0e;border:1px solid #1f2530;border-radius:8px;flex-direction:column;align-items:center;gap:4px;width:100%;padding:10px 16px;display:flex}.pin-label{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:1px;font-size:10px}.pin-value{font-family:var(--font-mono);letter-spacing:5px;color:var(--accent-amber);font-size:26px;font-weight:800;transition:opacity .2s}.pin-value.expired-text{opacity:.35;text-decoration:line-through}.session-timer-pill{font-family:var(--font-mono);color:#38bdf8;letter-spacing:.5px;background:#38bdf81a;border:1px solid #38bdf840;border-radius:4px;padding:3px 10px;font-size:10px;font-weight:700;transition:all .2s}.session-timer-pill.expired{color:#f87171;background:#ef444426;border-color:#ef444459}.pairing-btn.highlight-pulse{color:#fbbf24;background:#f59e0b1f;border-color:#f59e0b59}.pairing-btn.highlight-pulse:hover{color:#fff;background:#f59e0b40;border-color:#fbbf24}.pairing-instructions{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.4}.localhost-tip-box{color:#94a3b8;text-align:left;background:#38bdf80f;border:1px solid #38bdf833;border-radius:6px;padding:8px 12px;font-size:11px;line-height:1.4}.localhost-tip-box code{color:var(--accent-amber);background:#000;border-radius:3px;padding:1px 4px}.pairing-actions{gap:10px;width:100%;display:flex}.pairing-btn{color:#fff;border:1px solid var(--border-subtle);font-size:12px;font-weight:700;font-family:var(--font-mono);background:#191e27;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px;transition:all .15s;display:flex}.pairing-btn:hover{background:#252b37;border-color:#3f4a5c}.pairing-btn.secondary{color:var(--text-muted);background:0 0}.pairing-btn.secondary:hover{color:#fff;background:#ffffff0d}.standalone-option-wrap{border-top:1px solid #ffffff14;width:100%;margin-top:4px;padding-top:14px}.standalone-option-btn{color:#fbbf24;font-size:11.5px;font-family:var(--font-sans);cursor:pointer;text-align:center;box-sizing:border-box;background:#f59e0b0f;border:1px dashed #f59e0b66;border-radius:8px;width:100%;padding:10px 14px;font-weight:600;line-height:1.45;transition:all .2s}.standalone-option-btn:hover{color:#fff;background:#f59e0b2e;border-color:#f59e0b;transform:translateY(-1px);box-shadow:0 0 16px #f59e0b40}.corner-connected-badge{-webkit-backdrop-filter:blur(10px);color:#4ade80;font-family:var(--font-mono);background:#0d0f12eb;border:1px solid #22c55e66;border-radius:20px;align-items:center;gap:8px;padding:6px 14px;font-size:11px;font-weight:700;display:flex;box-shadow:0 0 12px #22c55e26}.corner-connected-badge .status-dot{border-radius:50%;width:6px;height:6px}.corner-standalone-badge{-webkit-backdrop-filter:blur(10px);color:#f1f5f9;font-family:var(--font-mono);background:#0d0f12eb;border:1px solid #f59e0b59;border-radius:20px;align-items:center;gap:8px;padding:4px 6px 4px 12px;font-size:11px;font-weight:700;display:flex}.corner-standalone-badge .standalone-dot{background:var(--accent-amber);width:6px;height:6px;box-shadow:0 0 6px var(--accent-amber);border-radius:50%}.corner-mode-label{letter-spacing:.5px;color:#fbbf24;font-size:10px}.corner-relink-btn{color:#fff;font-family:var(--font-mono);cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:14px;align-items:center;gap:4px;padding:3px 8px;font-size:10px;font-weight:700;transition:all .15s;display:flex}.corner-relink-btn:hover{border-color:var(--accent-amber);color:#fbbf24;background:#f59e0b40}.corner-disconnect-btn{color:#fca5a5;font-family:var(--font-mono);cursor:pointer;background:#ef44441f;border:1px solid #ef44444d;border-radius:14px;align-items:center;gap:4px;padding:3px 8px;font-size:10px;font-weight:700;transition:all .15s;display:flex}.corner-disconnect-btn:hover{color:#fff;background:#ef444447;border-color:#ef4444}.board-corner-dock{z-index:100;align-items:center;gap:8px;transition:opacity .3s,transform .3s;display:flex;position:fixed;top:16px;right:16px}.board-corner-dock.visible{opacity:1;transform:translateY(0)}.board-corner-dock.idle{opacity:.65;transform:translateY(0)}.board-corner-dock:hover{opacity:1}.corner-pin-btn{-webkit-backdrop-filter:blur(10px);color:var(--text-secondary);font-family:var(--font-mono);cursor:pointer;background:#0d0f12e0;border:1px solid #ffffff1f;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:11px;font-weight:700;transition:all .15s;display:flex}.corner-pin-btn:hover{border-color:var(--accent-amber);color:#fff;background:#191d24fa}.corner-pin-btn .status-dot{border-radius:50%;width:6px;height:6px}.corner-pin-btn .status-dot.green{background:#22c55e;box-shadow:0 0 6px #22c55e}.corner-pin-btn .status-dot.amber{background:#f59e0b;box-shadow:0 0 6px #f59e0b}.corner-config-btn{-webkit-backdrop-filter:blur(10px);color:var(--text-secondary);font-family:var(--font-sans);letter-spacing:.5px;cursor:pointer;background:#0d0f12e0;border:1px solid #ffffff1f;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:11px;font-weight:700;transition:all .15s;display:flex}.corner-config-btn:hover{color:#fff;background:#191d24fa;border-color:#ffffff4d}.corner-config-btn.highlight{color:#fbbf24;background:#f59e0b26;border-color:#f59e0b66}.corner-config-btn.highlight:hover{color:#fff;background:#f59e0b47;border-color:#fbbf24;box-shadow:0 0 12px #f59e0b40}.btn-label-text{font-size:11px;font-weight:700}.restore-nav-btn{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--text-muted);font-family:var(--font-mono);cursor:pointer;opacity:.4;background:#0f1218d9;border:1px solid #ffffff26;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:11px;font-weight:600;transition:all .2s;display:flex;position:fixed;top:14px;left:16px}.restore-nav-btn:hover{opacity:1;color:#fff;border-color:var(--accent-amber);background:#181c24}.pin-connect-banner{background:#14171d;border:1px solid #282f3a;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;display:flex}.banner-text strong{color:var(--accent-amber);margin-bottom:2px;font-size:13px;font-weight:700;display:block}.banner-text span{color:var(--text-muted);font-size:11px}.banner-form{align-items:center;gap:8px;display:flex}.pin-banner-input{color:#fff;font-family:var(--font-mono);letter-spacing:2px;text-align:center;text-transform:uppercase;background:#090b0e;border:1px solid #2b3342;border-radius:6px;width:130px;padding:8px 12px;font-size:16px;font-weight:800}.pin-banner-input:focus{border-color:var(--accent-amber);outline:none}.pin-banner-btn{color:#000;background:linear-gradient(#f59e0b 0%,#d97706 100%);border:1px solid #b45309;border-radius:6px;padding:9px 16px;font-size:12px;font-weight:700;transition:all .15s}.pin-banner-btn:hover{background:linear-gradient(#fbbf24 0%,#f59e0b 100%)}.reconnect-mini-btn{color:#fff;background:#ffffff1a;border:1px solid #ffffff26;border-radius:4px;margin-left:4px;padding:1px 6px;font-size:10px}@media (width<=680px){.controller-page{box-sizing:border-box;gap:16px;width:100%;max-width:100%;padding:12px 10px 48px;overflow-x:hidden}.controller-header{gap:12px;width:100%;padding:14px 12px}.controller-brand{gap:10px;width:100%}.controller-logo{width:38px;height:38px}.controller-brand h1{letter-spacing:1px;font-size:19px}.controller-brand p{letter-spacing:.5px;font-size:9.5px}.controller-nav-actions{flex-wrap:wrap;gap:8px;width:100%;display:flex}.session-status-wrap{flex-wrap:wrap;justify-content:space-between;gap:8px;width:100%;display:flex}.sync-status-badge{flex:auto;justify-content:center;padding:6px 10px;font-size:10.5px}.disconnect-nav-btn{flex:none;padding:6px 10px;font-size:10.5px}.controller-btn{text-align:center;flex:calc(50% - 6px);justify-content:center;padding:8px 6px;font-size:11px}.controller-btn.highlight{flex:100%;padding:10px;font-size:12px}.controller-btn.secondary.disclaimer-header-btn{flex:100%;justify-content:center;padding:8px 10px;font-size:11px}.pin-connect-banner{flex-direction:column;align-items:stretch;gap:10px;padding:12px}.banner-form{gap:8px;width:100%;display:flex}.pin-banner-input{flex:1;width:100%;padding:8px;font-size:14px}.pin-banner-btn{flex-shrink:0;padding:8px 14px;font-size:11px}.card-section{box-sizing:border-box;gap:14px;width:100%;padding:14px 12px}.section-title{font-size:11px}.editor-actions{grid-template-columns:1fr 1fr;gap:8px;width:100%;display:grid}.action-pill.danger{grid-column:1/2;justify-content:center;padding:10px 6px;font-size:11px}.action-pill.secondary{grid-column:2/3;justify-content:center;padding:10px 6px;font-size:11px}.action-pill.primary-glow{order:-1;grid-column:1/-1;justify-content:center;width:100%;padding:13px 12px;font-size:13px;font-weight:800}.line-input-row{gap:8px}.line-badge{flex-shrink:0;width:52px;font-size:10px}.retro-input{letter-spacing:1px;padding:9px 44px 9px 10px;font-size:13.5px}.char-counter{font-size:10px;right:8px}.settings-grid{grid-template-columns:1fr;gap:12px;width:100%}.setting-pill-group{width:100%;padding:2px}.setting-btn{gap:3px;padding:8px 4px;font-size:11px}.btn-subtext{font-size:9.5px}.preview-card{gap:12px;width:100%;padding:14px 10px}.preview-header{gap:6px}.preview-indicator{font-size:10px}.preview-specs-box{gap:5px;padding:8px 10px}.spec-row,.spec-row>span:first-child,.spec-row .val{font-size:10px}.preview-instructions{padding:10px}.preview-instructions h4,.preview-instructions p{font-size:10.5px}.preview-disclaimer-box{gap:8px;padding:10px}.controller-footer{margin-top:6px;padding-top:18px}.footer-legal-link{padding:6px 12px;font-size:11px}}@media (width<=420px){.controller-btn{padding:7px 4px;font-size:10.5px}.setting-btn{padding:7px 2px;font-size:10px}.btn-subtext{font-size:8.5px}.footer-legal-link{padding:5px 10px;font-size:10.5px}}
