:root{color-scheme:dark;--bg:#080e18;--panel:#121d2e;--panel2:#0c1625;--text:#f5f1e8;--muted:#b5c0d2;--line:#34435a;--accent:#f5bd4f;--accent2:#ffdc91;--danger:#ff8b75}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at 50% -10%,#1b2b45 0,#080e18 40rem);color:var(--text);font:18px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif;min-height:100vh}
body.day{color-scheme:light;--bg:#f2ecdf;--panel:#fffaf0;--panel2:#eee4d4;--text:#232a32;--muted:#58636e;--line:#b8aa93;--accent:#935b00;--accent2:#704400;--danger:#a13222;background:#f2ecdf}
button,input{font:inherit}
button{touch-action:manipulation;cursor:pointer}
button:focus-visible,input:focus-visible,summary:focus-visible,a:focus-visible{outline:4px solid var(--accent);outline-offset:3px}
.topbar,main{width:min(940px,100%);margin:auto;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}
.topbar{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}
.home{color:var(--accent2);font-weight:800;text-decoration:none;font-size:19px}
.top-actions{display:flex;gap:8px}
.small,.icon{min-height:50px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--text);padding:10px 16px;font-weight:750}
.intro{padding:28px 0 8px}
.eyebrow{margin:0 0 6px;color:var(--accent2);font-size:12px;font-weight:850;letter-spacing:.18em}
h1{margin:0;font:800 clamp(38px,7vw,62px)/1.05 Georgia,serif;letter-spacing:-.02em}
.intro>p:last-child{max-width:720px;margin:12px 0 0;color:var(--muted);font-size:clamp(18px,3vw,23px)}
.intro .visit-counter{display:inline-flex;align-items:center;min-height:38px;margin:16px 0 0;padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--accent2);font-size:14px;font-weight:800}
.receiver{max-width:720px;margin:24px auto;padding:22px;border:2px solid #a17b43;border-radius:28px;background:linear-gradient(145deg,#5c3d25,#2b2018 55%,#171718);box-shadow:0 18px 50px #0008,inset 0 1px #d9af6d}
.scale{position:relative;display:flex;justify-content:space-between;gap:6px;padding:13px 12px;border:1px solid #b58d4e;border-radius:10px;background:#171914;color:#e6cc91;font:700 13px/1 monospace;letter-spacing:.04em;overflow:hidden}
.scale:after{content:"";position:absolute;left:8px;right:8px;bottom:5px;height:3px;background:repeating-linear-gradient(90deg,#9c885c 0 1px,transparent 1px 12px);opacity:.8}
.scale i{position:absolute;left:57%;top:0;bottom:0;width:3px;background:#ff5f45;box-shadow:0 0 9px #ff5f45}
.display{min-height:148px;margin-top:16px;padding:18px;border:1px solid #194d3e;border-radius:14px;background:radial-gradient(circle at 50% 10%,#124c3c,#07271f 70%);text-align:center;color:#f7dda0;display:flex;flex-direction:column;justify-content:center}
.display small{font-size:11px;font-weight:800;letter-spacing:.16em}
.display h2{margin:10px 0 4px;font:800 clamp(25px,5vw,36px)/1.12 Georgia,serif}
.display p{margin:7px 0 0;color:#d0dfd5;font-size:15px}
.transport{display:grid;grid-template-columns:minmax(80px,1fr) minmax(180px,2.2fr) minmax(80px,1fr);gap:12px;margin-top:16px}
.transport button{min-height:88px;border:1px solid #7d6748;border-radius:17px;background:#171719;color:#fff;font-size:28px;font-weight:850}
.transport button span{display:block;font-size:12px;color:#c9c1b5;margin-top:4px}
.transport .play{background:var(--accent);color:#20170a;border-color:#ffe0a1;font-size:25px}
.voice-panel{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px;margin:30px 0;padding:20px;border:1px solid var(--line);border-radius:20px;background:var(--panel)}
.voice-panel h2{margin:0 0 5px;font-size:23px}.voice-panel p{margin:0;color:var(--muted);font-size:15px}
#mic{min-height:82px;min-width:210px;border:2px solid var(--accent);border-radius:18px;background:var(--panel2);color:var(--accent2);font-size:20px;font-weight:850}
#mic[aria-pressed=true]{background:#6e231c;color:#fff;border-color:#ff9b8b;animation:pulse 1.6s infinite}
@keyframes pulse{50%{box-shadow:0 0 0 8px #ff8b7522}}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-top:32px}.section-head h2{margin:0;font-size:29px}.section-head small{color:var(--muted);font-size:15px}
.program-note{max-width:720px;margin:10px 0 0;color:var(--muted);font-size:16px}
.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:16px}
.tiles button{min-height:124px;padding:18px;border:1px solid var(--line);border-bottom:4px solid #a67c36;border-radius:18px;background:linear-gradient(145deg,var(--panel),var(--panel2));color:var(--text);font-size:21px;font-weight:850;text-align:left;overflow-wrap:anywhere}
.tiles button small{display:block;margin-top:9px;color:var(--muted);font-size:14px;font-weight:500}
.tiles button[aria-pressed=true]{border:3px solid var(--accent);box-shadow:0 0 0 2px #f5bd4f33}
.safety{margin-top:30px;padding:18px;border-left:5px solid var(--accent);border-radius:8px 16px 16px 8px;background:var(--panel);color:var(--muted)}.safety strong{color:var(--text)}
details{margin:20px 0 60px;color:var(--muted)}summary{min-height:56px;display:flex;align-items:center;color:var(--accent2);font-weight:800;cursor:pointer}
dialog{width:min(760px,calc(100% - 24px));max-height:92vh;padding:22px;border:1px solid var(--line);border-radius:24px;background:var(--bg);color:var(--text)}dialog::backdrop{background:#000c;backdrop-filter:blur(3px)}
.dialog-head{display:flex;justify-content:space-between;align-items:start;gap:12px}.dialog-head h2{margin:0;font-size:30px}.icon{min-width:52px;padding:8px}
.program-editor{display:grid;gap:8px;margin:14px 0 22px}.program-row{display:grid;grid-template-columns:1fr 52px 52px 52px;align-items:center;gap:7px;padding:9px 10px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.program-row strong{overflow-wrap:anywhere}.program-row button{min-height:48px;border:1px solid var(--line);border-radius:10px;background:var(--panel2);color:var(--text)}.program-row .remove{color:var(--danger)}
.search-label{display:block;margin:10px 0 7px;font-weight:850}input[type=search]{width:100%;min-height:58px;padding:12px 15px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--text)}
.catalog{max-height:38vh;overflow:auto;margin:10px 0 16px;border-block:1px solid var(--line)}.catalog button{width:100%;min-height:62px;padding:11px 8px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left}.catalog button:disabled{opacity:.45}.catalog small{color:var(--muted)}
.done{position:sticky;bottom:0;width:100%;min-height:64px;border:0;border-radius:16px;background:var(--accent);color:#20170a;font-weight:900;font-size:21px}
@media(max-width:650px){body{font-size:17px}.topbar{min-height:66px}.top-actions .small{font-size:13px;padding:8px 10px}.intro{padding-top:20px}.receiver{margin-inline:-4px;padding:14px;border-radius:22px}.transport{grid-template-columns:68px 1fr 68px;gap:8px}.transport button{min-height:82px;padding:6px;font-size:23px}.transport .play{font-size:21px}.voice-panel{grid-template-columns:1fr;padding:16px}#mic{width:100%;min-width:0}.tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tiles button{min-height:116px;padding:14px;font-size:19px}.program-row{grid-template-columns:1fr 46px 46px 46px}.program-row button{padding:5px}.dialog-head h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important}}
