:root{color-scheme:dark;font-family:Arial,Helvetica,sans-serif;background:#20251d;color:#e9e2cd;--case:#20251d;--brass:#c3b18a;--border:#625e49;--muted:#acac98}*{box-sizing:border-box}body{margin:0;padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--brass);outline-offset:3px}.app{position:relative;height:calc(100dvh - max(10px,env(safe-area-inset-top)) - max(10px,env(safe-area-inset-bottom)));min-height:0;overflow:hidden;display:flex;flex-direction:column;gap:12px;padding:18px 28px 16px;background:linear-gradient(115deg,#2b3025,var(--case) 35%,#1b211a);border:8px solid #1c221b;border-radius:23px;box-shadow:inset 0 1px 0 #62654a66,0 3px 6px #171b1529}.app:before{content:"";position:absolute;inset:5px;border:1px solid #9b947333;border-radius:10px;pointer-events:none}.maker-line{position:absolute;top:20px;left:28px;right:28px;justify-content:space-between;color:#b6ac8c;font-size:8px;letter-spacing:1.4px}.identity,.maker-line{display:flex;flex-shrink:0}.identity{height:57px;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 80px}.instrument-face{display:flex;flex-direction:column;gap:12px;flex:1 1;min-height:0;background:linear-gradient(115deg,#2b3025,var(--case) 35%,#1b211a);border-radius:5px;transition:filter 2s ease}.brandmark svg{width:clamp(110px,13vw,160px);height:auto;display:block;margin:auto}.clock-row .flap{font-size:var(--clock-font,3.35cqw)}.brandmark{margin:0;font-family:Century Gothic,Trebuchet MS,Arial,sans-serif;font-size:30px;font-weight:500;letter-spacing:5px;padding-left:5px;color:#ece5ce}.model-number{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:5px;color:var(--brass);font-size:10px;letter-spacing:2px}.model-number span{width:20px;height:1px;background:#a3947077}.company-name{color:#b2b19a;font-size:8px;letter-spacing:1.5px;margin:8px 0 0}.topbar{order:2;width:100%;display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-shrink:0;padding-top:2px;transition:opacity .6s ease}.brand-sub{color:var(--muted);font-size:8px;letter-spacing:1.2px;white-space:nowrap}.status-led{display:inline-block;width:5px;height:5px;margin-right:7px;border-radius:50%;background:#c57b43;box-shadow:0 0 5px #bc6c3133}.status-led.degraded{background:#e4b65e}.status-led.connecting,.status-led.local{background:#929787}.actions{display:flex;gap:6px}.actions button,.icon-btn{display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:4px;padding:7px 10px;color:#c3bea1;background:#151c1533;font-size:8px;letter-spacing:1px}.actions .settings-button{border-color:#a3947044;color:var(--brass)}.actions button:hover,.icon-btn:hover{background:#2b3028;color:#f0e6c6}.actions button:disabled{opacity:.55;cursor:wait}.display-area{flex:1 1;min-height:0;width:100%;display:flex;align-items:center;justify-content:center;container-type:size}.board-stage{container-type:inline-size;flex-shrink:0;display:flex;flex-direction:column;min-height:0;width:var(--fit-width)}.board-footer,.frame-label{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-shrink:0;color:var(--muted);font-size:clamp(4px,.8cqw,9px);letter-spacing:.08cqw;padding:0 2px 1cqw}.board-footer{padding:1cqw 2px 0;color:#a08c59}.board-footer span,.frame-label span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.frame-label span:last-child{max-width:36%}.board{flex:1 1;min-height:0;background:#111710;padding:1.1cqw;border:1px solid #50533d;border-radius:7px;overflow:hidden;box-shadow:inset 0 3px 9px #0008,0 1px 0 #74745b55}.board-inner{height:100%;display:grid;grid-gap:.38cqw;gap:.38cqw}.flap-row{display:grid;grid-template-columns:repeat(var(--board-columns,24),minmax(0,1fr));min-height:0;grid-gap:.28cqw;gap:.28cqw}.flap-row.section-start{position:relative}.flap-row.section-start:before{content:"";position:absolute;left:0;right:0;top:calc(-.19cqw - .5px);height:1px;background:var(--brass);opacity:.65;pointer-events:none}.flap{position:relative;perspective:300px;height:100%;min-width:0;overflow:hidden;background:#1d231b;border-radius:2px;font-family:Arial Narrow,Trebuchet MS,Arial,sans-serif;font-size:var(--flap-font,2.8cqw);font-weight:600;line-height:1;color:#e8e0c5;box-shadow:inset 0 1px 0 #69705244,0 1px 2px #0009}.flap-base,.flap-bottom,.flap-top,.flap-turn{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.flap-base,.flap-top{background:linear-gradient(#272e22,#22291f)}.flap-top{-webkit-clip-path:inset(0 0 50%);clip-path:inset(0 0 50%)}.flap-bottom{-webkit-clip-path:inset(50% 0 0);clip-path:inset(50% 0 0);background:linear-gradient(#1c231a,#192017)}.flap-turn{-webkit-clip-path:inset(0 0 50%);clip-path:inset(0 0 50%);transform-origin:center;-webkit-backface-visibility:hidden;backface-visibility:hidden;background:#242a22;z-index:3;opacity:0}.flap-turn.turning{animation:flap-turn ease-in both}.flap-seam{position:absolute;top:50%;left:0;right:0;height:1px;background:#0b110b;box-shadow:0 1px 0 #61634a44;z-index:4}.flap-pin{position:absolute;width:1px;height:3px;top:calc(50% - 1px);background:#797153;z-index:5;opacity:.5}.flap-pin.left{left:0}.flap-pin.right{right:0}@keyframes flap-turn{0%{opacity:1;transform:rotateX(0)}to{opacity:0;transform:rotateX(-92deg)}}.bottom{order:3;justify-content:center;flex-wrap:wrap;gap:5px 16px;color:var(--muted);letter-spacing:.4px;transition:opacity .6s ease}.bottom,.maker-footer{display:flex;flex-shrink:0;font-size:8px}.maker-footer{order:4;flex-direction:column;align-items:center;gap:4px;padding-top:0;letter-spacing:1.2px;color:var(--brass)}.display-idle .topbar{opacity:0}.display-idle .topbar:focus-within,.display-idle .topbar:hover{opacity:1}.display-idle .bottom:hover{opacity:1}.feed-warnings{order:3;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px;color:#e4b65e;font-size:10px;flex-shrink:0}.feed-warnings:empty{display:none}@media (hover:none),(prefers-reduced-motion:reduce){.bottom,.topbar{transition:none}}@media (prefers-reduced-motion:reduce){.instrument-face{transition:none}}@media (hover:none){.display-idle .topbar{opacity:.7}.display-idle .bottom{opacity:.5}}.maker-footer span:last-child{font-size:8px;color:#9c997d}.notice{display:flex;justify-content:space-between;gap:10px;flex-shrink:0;background:#3a3020;color:#efcf89;padding:8px 12px;font-size:12px}.notice button{color:inherit;background:none;border:0}.settings-shade{position:fixed;inset:0;background:#070c08bb;z-index:20;display:flex;justify-content:flex-end}.settings{height:100%;width:min(480px,100%);min-width:0;background:var(--case);border-left:1px solid var(--border);box-shadow:-20px 0 60px #0006;display:flex;flex-direction:column}.settings header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 12px;flex-shrink:0}.settings header small{font-size:9px;color:var(--brass);letter-spacing:2px}.settings h2{font-size:20px;margin:0;letter-spacing:1px}.settings h3{color:var(--brass);margin:28px 0 16px;font-size:10px;letter-spacing:2px}.settings-content{padding:4px 20px 24px;overflow:auto;min-height:0;overscroll-behavior:contain;scrollbar-gutter:stable}.settings-save-note{color:var(--muted);font-size:11px;margin:0;padding:0 24px 18px}.settings-save-note,.settings-section{border-bottom:1px solid #464a39}.settings summary{cursor:pointer;color:#e9e2cd;font-size:13px;line-height:1.5;padding:16px 4px;overflow-wrap:anywhere}.settings summary:focus-visible{outline:2px solid var(--brass);outline-offset:-2px;border-radius:3px}.settings summary::marker{color:var(--brass)}.settings summary>span{display:block;padding-left:15px;color:var(--muted);font-size:11px;font-weight:400}.settings-section[open]>summary{color:var(--brass)}.settings-section-body{padding:0 8px 20px}.settings-section-body>:first-child{margin-top:0}.settings-help{margin-top:12px}.settings-help>summary{font-size:11px;padding:10px 0;color:var(--muted)}.favorite-section{margin-top:12px;padding:0 12px 8px;border:1px solid #4c503e;border-radius:4px;background:#12171244}.favorite-section>summary{padding:12px 0 4px}.league-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-column-gap:12px;column-gap:12px}.settings .league-options label{font-size:11px;margin:10px 0}.range-captions{display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.settings-reset{border-top:1px solid #464a39;margin-top:24px}.backup-confirm{border:1px solid var(--border);padding:12px;margin-top:16px;border-radius:4px}.settings input:disabled{opacity:.4;cursor:not-allowed}.selected-city{color:#e9e2cd;font-size:14px;margin:0 0 16px;line-height:1.5}.message-editor{margin:18px 0;padding:12px;border:1px solid var(--border);border-radius:4px}.message-editor legend{color:var(--brass);font-size:12px}.settings textarea{width:100%;resize:vertical;background:#121712;color:#f0eddf;border:1px solid #4c503e;padding:10px;border-radius:3px}.message-preview{display:grid;grid-gap:8px;gap:8px}.message-preview pre{margin:0;padding:10px 6px;background:#111710;color:#e8e0c5;border:1px solid #50533d;font:clamp(8px,2.5vw,12px)/1.7 monospace;white-space:pre;overflow-x:auto}.settings label{display:flex;flex-direction:column;gap:8px;color:#dedccb;font-size:12px;margin:16px 0}.settings input:not([type=checkbox]):not([type=range]),.settings select{background:#121712;border:1px solid #4c503e;border-radius:3px;padding:12px;color:#f0eddf;width:100%}.settings .two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.settings .two>*,.settings label{min-width:0}.settings .check{flex-direction:row;align-items:center;gap:10px}.settings input[type=checkbox]{accent-color:var(--brass);width:17px;height:17px;flex-shrink:0}.settings input[type=range]{accent-color:var(--brass)}.hint{color:var(--muted);font-size:11px;line-height:1.6}.settings-identity{display:flex;align-items:center;gap:12px}.settings-identity img{flex-shrink:0}.maker-about{margin-top:28px;padding:20px 0 8px;border-top:1px solid var(--border);text-align:center}.maker-about h3{margin-top:0}.maker-wordmark{display:block;width:min(100%,290px);height:auto;margin:20px auto;color:#e8e0c5}.maker-wordmark-detail{color:var(--brass)}.maker-about p{color:#dedccb;font-size:12px;letter-spacing:.06em}.maker-about .hint{color:var(--muted);font-size:11px;letter-spacing:normal}.reset{width:100%;padding:12px;color:var(--brass);background:transparent;border:1px solid var(--border);border-radius:3px;margin-top:18px}.reset:hover{background:#2b3028}.city-results{display:grid;grid-gap:6px;gap:6px;margin-top:12px}.city-results button{background:#242b22;color:#eee9d7;padding:10px;text-align:left}.city-results button,.team-picker{border:1px solid #4c503e;border-radius:3px}.team-picker{max-height:220px;overflow:auto;margin-top:16px}.team-picker legend{font-size:12px;color:var(--brass)}@media (max-width:360px){.settings-content{padding-left:12px;padding-right:12px}.league-options,.settings .two{grid-template-columns:minmax(0,1fr)}}@media (max-width:650px){body{padding:5px}.app{height:calc(100dvh - 10px);border-width:7px;padding:14px 12px 12px;gap:8px;border-radius:18px}.identity{height:60px;padding:0}.maker-line{top:14px;left:12px;right:12px;font-size:7px}.brandmark{font-size:25px;letter-spacing:4px}.company-name{font-size:7px;letter-spacing:1px}.actions button{padding:7px}.actions button span,.board-footer span:nth-child(2),.frame-label span:nth-child(2){display:none}.maker-footer{font-size:8px}.bottom{font-size:7px;gap:4px 10px}.bottom span:last-child{display:none}}@media (max-height:600px){.app{padding-top:10px;padding-bottom:10px;gap:6px}.identity{height:48px;padding:0 65px}.brandmark{font-size:22px}.model-number{margin-top:3px;font-size:11px}.company-name{margin-top:5px;font-size:8px}.maker-line{font-size:8px}.topbar{padding-top:6px}.actions button{padding:5px 7px}.maker-footer{gap:3px;font-size:7px}.maker-footer span:last-child{font-size:7px}}@media (max-width:650px) and (max-height:600px){.identity{height:50px;padding:0}}@media (max-width:650px),(pointer:coarse){button,input,select,summary,textarea{touch-action:manipulation}.actions button,.icon-btn{min-width:44px;min-height:44px}.display-idle .topbar{opacity:1}.settings header{padding-top:max(16px,env(safe-area-inset-top));padding-right:max(20px,env(safe-area-inset-right));padding-left:max(20px,env(safe-area-inset-left))}.settings-content{padding-bottom:max(24px,env(safe-area-inset-bottom));padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.settings-save-note{padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right))}.settings label{font-size:14px}.settings .league-options label{font-size:13px}.settings .check{min-height:44px;margin-top:8px;margin-bottom:8px}.settings input:not([type=checkbox]):not([type=range]),.settings select,.settings textarea{font-size:16px;min-height:44px}.settings input[type=range]{min-height:44px}.settings input[type=checkbox]{width:20px;height:20px}.settings summary{min-height:44px}.settings .hint{font-size:12px}.settings button{min-height:44px}.team-picker{overscroll-behavior:contain}}@media (max-width:1000px) and (max-height:500px) and (pointer:coarse),(max-width:650px){body{padding:max(5px,env(safe-area-inset-top)) max(5px,env(safe-area-inset-right)) max(5px,env(safe-area-inset-bottom)) max(5px,env(safe-area-inset-left))}.app{height:calc(100dvh - max(5px,env(safe-area-inset-top)) - max(5px,env(safe-area-inset-bottom)));border-width:4px;padding:10px 8px;gap:12px;border-radius:16px}.app,.app.settings-open{overflow:hidden}.instrument-face{flex:1 1;gap:12px}.identity{padding:8px 0}.brandmark svg{width:120px}.display-area{flex:1 1;container-type:size}.board-stage{width:var(--fit-width);min-height:0}.topbar{order:-1;position:-webkit-sticky;position:sticky;top:0;z-index:10;padding:4px;background:#20251df5;border:1px solid #a3947033;border-radius:6px}.display-idle .topbar{opacity:0;pointer-events:none}.display-idle .topbar:has(button:focus-visible){opacity:1;pointer-events:auto}.actions{width:100%;gap:4px}.actions button{flex:1 1;flex-direction:column;gap:4px;min-width:0;min-height:48px;padding:6px 3px;font-size:8px;letter-spacing:.5px}.actions button span{display:inline}.feed-warnings{font-size:11px;line-height:1.5}.notice{font-size:12px;overflow-wrap:anywhere}.settings{width:100%;height:100dvh;border-left:0}}@media (orientation:landscape) and (max-height:500px) and (pointer:coarse){.topbar{position:absolute;top:10px;right:8px;padding:0;background:transparent}.actions,.topbar{width:auto}.actions button{flex:0 0 auto}}