@import url('data:text/css,');
:root{color-scheme:light;--paper:#dedbd1;--ink:#34342f;--muted:#77776d;--line:#b7b5aa;--panel:#e5e2d8;--radius:18px;font-family:Arial,Helvetica,sans-serif;font-size:15px;background:#171713;color:var(--ink)}*{box-sizing:border-box}body{margin:0;min-height:100dvh}button,input,select,textarea{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{opacity:.45;cursor:wait}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid currentColor;outline-offset:4px}[hidden]{display:none!important}#visual,#fallback,#shade{position:fixed;inset:0;width:100%;height:100%;z-index:-3}#fallback{background:radial-gradient(ellipse at 30% 80%,#55594d,transparent 55%),linear-gradient(165deg,#c3c2b6,#6d7060 55%,#282b25)}#shade{z-index:-2;background:linear-gradient(90deg,rgba(226,223,210,.94),rgba(226,223,210,.65) 44%,rgba(226,223,210,.04));transition:opacity 1s;pointer-events:none}body.listening #shade{opacity:0}body.remote-mode #shade{background:var(--paper);opacity:1}button{border:0;background:transparent}.welcome{min-height:100dvh;padding:40px 6vw;display:flex;flex-direction:column}.brand-row{display:flex;align-items:center;justify-content:space-between}.wordmark{text-decoration:none;font-size:29px;font-weight:500;letter-spacing:-1.6px}.brand-dot{margin-left:3px}.language{border:1px solid #77776d66;border-radius:30px;padding:9px 13px;font-size:11px;letter-spacing:1px}.intro{margin:auto 0;max-width:670px;padding:70px 0}.eyebrow{font-size:10px;letter-spacing:2.3px;text-transform:uppercase;font-weight:500;color:var(--muted)}h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(48px,6.7vw,94px);line-height:1.06;letter-spacing:-3px;max-width:660px;margin:25px 0}h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.6px}h3{font-size:12px;letter-spacing:1px;font-weight:500;margin-top:28px}.intro-copy{max-width:330px;font-size:16px;line-height:1.7;color:#636359}.entry-actions{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}.primary,.secondary{padding:15px 23px;border-radius:7px;min-height:48px;font-size:13px}.primary{background:var(--ink);color:var(--paper)}.secondary{border:1px solid #85857980;background:#e5e2d844}.entry-note{font-size:11px;line-height:1.6;color:var(--muted);max-width:300px;margin-top:28px}.landscape-caption{display:flex;align-items:center;gap:20px;font-size:9px;letter-spacing:2px;color:#494c44}.hairline{height:1px;width:80px;background:#737769}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 16px 80px #0002}.pairing{position:relative;margin:6vh auto;padding:32px;max-width:520px;text-align:center}.pairing h1{font-size:40px;letter-spacing:-1px}.pairing p{line-height:1.6;color:var(--muted)}.pairing .wordmark{display:block;margin:20px}.text-button{padding:12px;font-size:12px;text-decoration:underline;text-underline-offset:4px}.pair-code{font-size:40px;letter-spacing:10px;margin:20px}.code-input{display:block;margin:20px auto;padding:15px;width:230px;text-align:center;letter-spacing:9px;font-size:30px;border:1px solid var(--line);background:transparent}.pairing #qr{background:#e5e2d8;padding:16px;display:table;margin:20px auto}.pairing #qr svg{display:block;width:160px;height:160px}#orb{position:fixed;right:25px;bottom:24px;width:48px;height:48px;display:grid;place-items:center;z-index:3;border-radius:50%}#orb span{height:8px;width:8px;border-radius:100%;background:#a6a497;box-shadow:0 0 12px #c6c0a222}#controller{position:fixed;right:28px;top:24px;bottom:24px;width:440px;max-width:calc(100vw - 32px);border:1px solid #9d9d8e88;border-radius:20px;background:var(--panel);box-shadow:0 24px 90px #0003;display:flex;flex-direction:column;z-index:4;overflow:hidden}.panel-header{padding:25px 25px 14px;display:flex;justify-content:space-between;align-items:start}.panel-header .wordmark{font-size:25px}.panel-header .eyebrow{font-size:8px;margin:8px 0 0;letter-spacing:1.7px}.icon-button{font-size:26px;color:var(--muted);height:36px;width:36px;border:1px solid var(--line);border-radius:50%}.now-playing{margin:0 25px;display:flex;gap:15px;align-items:center;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.mini-landscape{display:grid;place-items:center;width:58px;height:65px;border-radius:4px;background:linear-gradient(160deg,#bcbcaf,#73786d);font-family:Georgia,serif;font-size:38px;color:#deded1}.now-playing h2{margin:8px 0 0;font-size:25px}.now-playing .eyebrow{font-size:8px;letter-spacing:1.3px}.play-button{margin-left:auto;flex-shrink:0;background:var(--ink);color:var(--paper);border-radius:50%;width:45px;height:45px;font-size:17px}.master{margin:20px 25px 12px;display:grid;grid-template-columns:1fr auto;gap:9px;font-size:11px}.master input{grid-column:1/-1}.master output{color:var(--muted)}input[type=range]{width:100%;accent-color:#626457;height:20px;margin:0;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{height:3px;background:#b1b2a3;border-radius:3px}input[type=range]::-webkit-slider-thumb{margin-top:-6px}input[type=checkbox]{accent-color:#55594d;width:17px;height:17px}.tabs{display:flex;padding:0 20px;border-bottom:1px solid var(--line);gap:3px}.tabs button{font-size:11px;padding:14px 7px;border-bottom:2px solid transparent;flex:1;color:var(--muted)}.tabs button.selected{border-color:var(--ink);color:var(--ink)}.panel-scroll{overflow:auto;padding:22px 25px;flex:1;scrollbar-width:thin;scrollbar-color:#aaa99b transparent}.preset-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.preset-card{text-align:left;min-height:89px;border:1px solid #b2b3a5;border-radius:7px;padding:12px;position:relative;background:#ffffff10}.preset-card.active{border-color:#5f6557;background:#c9cbbc}.preset-card .number{font-size:8px;letter-spacing:1px;color:var(--muted);display:block;margin-bottom:13px}.preset-card strong{display:block;font-size:12px;line-height:1.4;font-weight:400}.preset-card .checkmark{position:absolute;right:9px;top:9px;font-size:10px}.preset-delete{position:absolute;right:3px;top:3px;font-size:12px;padding:8px}.wide{display:block;width:100%;margin-top:18px}.muted{color:var(--muted);font-size:13px;line-height:1.65}.small{font-size:10px}.field{display:flex;flex-direction:column;gap:10px;margin:18px 0;font-size:12px}.field input:not([type=range]),.field select,select,input[type=number],input[type=time],textarea{background:#ffffff14;border:1px solid var(--line);border-radius:5px;padding:12px;color:inherit;max-width:100%}.range-field{margin-bottom:22px}.range-label{display:flex;justify-content:space-between;font-size:12px;margin-bottom:10px}.range-label output{color:var(--muted);font-size:11px}.range-hint{font-size:10px;color:var(--muted);margin-top:8px;line-height:1.5}.check{display:flex;align-items:center;gap:10px;font-size:12px;line-height:1.6;margin:20px 0}.time-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.duration-chips{display:flex;gap:8px;margin:22px 0}.duration-chips button{padding:10px;border:1px solid var(--line);border-radius:5px;flex:1;font-size:12px}.timer-digits{font:38px Georgia,serif;letter-spacing:3px;display:block;text-align:center}.status-row{padding:12px 25px;display:flex;align-items:center;gap:7px;border-top:1px solid var(--line);font-size:9px;color:var(--muted);min-height:40px}.status-dot{height:4px;width:4px;border-radius:50%;background:#686d5e}.status-row #timerBadge{margin-left:auto}.panel-footer{border-top:1px solid var(--line);margin-top:28px;padding-top:18px;font-size:10px;color:var(--muted);line-height:1.7}.panel-footer a{display:inline-block;margin-right:18px}dialog{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:14px;padding:25px;width:400px;max-width:90vw}dialog::backdrop{background:#0009}#toast{position:fixed;left:50%;bottom:30px;transform:translateX(-50%);max-width:90vw;background:#34382f;color:#dcded1;padding:16px 25px;border-radius:8px;z-index:20;font-size:13px}.remote-mode #controller{left:50%;right:auto;transform:translateX(-50%);box-shadow:none}.remote-mode #closePanel{display:none}.credits-page,.admin-page{background:var(--paper);min-height:100dvh;padding:32px 5vw}.content-wrap{max-width:1050px;margin:auto}.credits-page h1,.admin-page h1{font-size:48px}.credits-page p{line-height:1.8}.credits-item{padding:20px 0;border-bottom:1px solid var(--line)}.admin-layout{display:grid;grid-template-columns:240px 1fr;gap:30px}.admin-sidebar{display:flex;flex-direction:column;gap:8px}.admin-sidebar button{text-align:left;padding:13px;border:1px solid var(--line);border-radius:6px}.admin-sidebar .selected{background:#bfc3b1}.admin-editor{min-width:0}.admin-editor textarea{width:100%;min-height:200px;font:12px monospace;line-height:1.7}.admin-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.admin-toolbar{display:flex;justify-content:space-between;gap:15px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.admin-login{max-width:440px;margin:7vh auto}.notice{padding:14px;border:1px solid var(--line);border-radius:8px;font-size:12px;line-height:1.6}.admin-preview{position:relative;height:270px;background:#222;border-radius:8px;overflow:hidden}.admin-preview canvas{width:100%;height:100%}.admin-preview-note{font-size:11px;color:var(--muted)}@media(max-width:650px){.welcome{padding:25px}.intro{padding:55px 0}.intro h1{max-width:340px;font-size:60px;letter-spacing:-2px}#shade{background:linear-gradient(180deg,#e2dfd2ed,#e2dfd2a0 65%,#e2dfd222)}.landscape-caption{font-size:7px;gap:10px}.hairline{width:35px}#controller{inset:0;max-width:none;width:100%;border-radius:0;border:0}.remote-mode #controller{left:0;transform:none}.panel-header{padding-top:max(20px,env(safe-area-inset-top))}.pairing{margin:20px 15px;padding:25px}.pairing h1{font-size:33px}.panel-scroll{padding-bottom:30px}.admin-layout{grid-template-columns:1fr}.admin-sidebar{display:grid;grid-template-columns:1fr 1fr}.form-row{grid-template-columns:1fr}.admin-toolbar{align-items:start;flex-direction:column}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.welcome-grid{display:grid;grid-template-columns:minmax(0,1fr) 250px;align-items:center;gap:50px;flex:1}.welcome-grid .intro{margin:0}.welcome-association{padding:25px 20px;text-align:center;border:1px solid #85857960;border-radius:12px;background:#dedbd166}.welcome-association label{display:block;font-size:10px;color:var(--muted);margin-top:16px}.welcome-qr{display:table;margin:20px auto;padding:12px;background:#dedbd1}.welcome-qr svg{display:block;width:145px;height:145px}.welcome-code{display:block;font-size:26px;letter-spacing:5px;margin-top:10px}.welcome-association .text-button{font-size:10px}@media(max-width:850px){.welcome-grid{grid-template-columns:1fr;gap:0}.welcome-grid .intro{padding-bottom:35px}.welcome-association{margin-bottom:35px;max-width:360px;width:100%;justify-self:center}.landscape-caption{padding-bottom:15px}}

body.tv-navigation :focus-visible{outline:3px solid #a99b7f;outline-offset:5px;box-shadow:0 0 0 7px rgba(169,155,127,.18)}

.landscape-caption{flex-wrap:wrap;gap:14px}.landscape-caption a{text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}.landscape-caption a:hover{text-decoration:underline}

.audio-activation{position:fixed;z-index:100;bottom:32px;left:50%;transform:translateX(-50%);max-width:90vw}

/* Compact welcome layout for televisions and large landscape screens. */
@media(min-width:851px){
 .welcome{padding:32px 5.4vw;font-size:13.5px}
 .welcome .wordmark{font-size:28px}
 .welcome-grid{grid-template-columns:minmax(0,1fr) 225px;gap:45px}
 .welcome-grid .intro{max-width:603px;padding:42px 0}
 .welcome .intro h1{font-size:clamp(43px,6.03vw,84.6px);max-width:594px;margin:22px 0;letter-spacing:-2.7px}
 .welcome .intro-copy{font-size:14.4px;max-width:300px}
 .welcome .entry-actions{gap:10px}
 .welcome .entry-actions button{font-size:13.5px;padding:14px 20px}
 .welcome-association{padding:22px 18px}
 .welcome-qr{padding:10px;margin:18px auto}
 .welcome-qr svg{width:130px;height:130px}
 .welcome-code{font-size:23px;letter-spacing:4.5px}
 .welcome .entry-note{font-size:10px;max-width:300px}
}
@media(min-width:851px) and (max-height:750px){
 .welcome{padding-top:22px;padding-bottom:22px}
 .welcome-grid .intro{padding:25px 0}
}

/* Compact the complete controller by 20% on TV and desktop layouts. */
@media(min-width:851px){
 body:not(.remote-mode) #controller{transform:scale(.8);transform-origin:top right}
 body.remote-mode #controller{transform:translateX(-50%) scale(.8);transform-origin:top center}
}

.brand-menu{margin-right:auto;margin-left:28px;font-size:12px}.brand-menu a,.panel-story{color:inherit;text-decoration:none;border-bottom:1px solid currentColor}.panel-story{font-size:11px;margin-left:14px}.donate-button{border:1px solid #77786c;border-radius:30px;padding:8px 15px;background:transparent;color:inherit;font:inherit;font-size:12px;cursor:pointer}.donate-button:hover{background:#77786c22}.support-dialog{max-width:440px;width:calc(100% - 40px);padding:30px;border:1px solid #99998b;border-radius:16px;background:var(--paper,#e6e3da);color:var(--ink,#35362f)}.support-dialog::backdrop{background:#0008}.donation-form{margin:24px 0}.donation-form .field{max-width:220px}.donation-form .primary{margin-top:8px}.about-page{background:#e6e3da;color:#35362f}.about-page .content-wrap{max-width:850px}.about-page article{padding:45px 0 20px}.about-page h1{font:normal clamp(36px,6vw,62px)/1.08 Georgia,serif;letter-spacing:-1.5px;max-width:650px}.about-page article p,.support-card>p{font-size:17px;line-height:1.8;max-width:680px}.about-page article .small{font-size:12px;margin-top:35px}.support-card{border:1px solid #aaa99d;padding:30px;border-radius:14px}.support-card h2{font:normal 30px/1.2 Georgia,serif}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:25px 0}.stat-card{padding:18px;border:1px solid #aaa99d;border-radius:9px}.stat-card strong{display:block;font:normal 36px Georgia,serif;margin-top:10px}.stats-table{width:100%;border-collapse:collapse}.stats-table th,.stats-table td{text-align:left;padding:12px;border-bottom:1px solid #aaa99d}.stats-table td:last-child{text-align:right}.stats-toolbar{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.stats-toolbar .field{max-width:220px}@media(max-width:600px){.brand-menu{margin-left:14px;font-size:10px}.stats-grid{grid-template-columns:1fr}.support-card{padding:20px}.panel-story{display:block;margin:5px 0 0}}

.usage-panel{border:1px solid #aaa99d;padding:20px;border-radius:12px;margin:25px 0}.usage-panel summary{cursor:pointer;font-size:18px}.usage-panel[open] summary{margin-bottom:20px}

.language-links{display:flex;gap:10px;margin-left:auto;font-size:9px}.language-links a{text-decoration:none}.brand-row .language{max-width:125px}.about-page .language{max-width:140px}

.connection-status{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--muted);margin:5px 0 0;letter-spacing:0}.connection-status .status-dot{width:5px;height:5px;flex:none}.status-row.donation-row{justify-content:space-between;padding:9px 24px;min-height:47px}.donation-row .donate-button{font-size:11px;padding:7px 13px}.donation-row #timerBadge{margin-left:auto}

.settings-footer{margin-top:18px;padding-top:12px;padding-bottom:14px}.settings-footer>p{margin:0 0 14px;line-height:1.6}.settings-links{display:flex;align-items:center;flex-wrap:wrap;gap:14px 20px}.settings-links a,.settings-links .home-link{display:inline-block;margin:0;padding:3px 0;border:0;border-radius:0;background:none;line-height:1.6;font:inherit;color:inherit;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.settings-links .home-link{cursor:pointer}.settings-links>*{flex:none}

.wordmark{white-space:nowrap}.wordmark img{display:inline-block}@media(max-width:600px){.brand-row{flex-wrap:wrap;gap:12px}.brand-row .wordmark{font-size:24px}.brand-row .wordmark img{display:none}.brand-row>div:last-child{margin-left:auto}.brand-row .brand-menu{order:3;flex-basis:100%;margin-left:0}.admin-toolbar .wordmark{font-size:24px}}

