:root{--bg: #0f1420;--bg-2: #161d2c;--card: #1b2335;--card-on: #22304a;--line: #2a3550;--text: #e6e9f0;--muted: #8b95ab;--accent: #8fb8ff;color-scheme:dark}@media(prefers-color-scheme:light){:root:not([data-theme]){--bg: #eef1f6;--bg-2: #e3e8f0;--card: #ffffff;--card-on: #e4edff;--line: #d3dae6;--text: #1a2233;--muted: #5d6880;--accent: #2f62c9;color-scheme:light}}:root[data-theme=dawn]{--bg: #eef1f6;--bg-2: #e3e8f0;--card: #ffffff;--card-on: #e4edff;--line: #d3dae6;--text: #1a2233;--muted: #5d6880;--accent: #2f62c9;color-scheme:light}:root[data-theme=forest]{--bg: #0e1712;--bg-2: #15221a;--card: #1a2a20;--card-on: #21392a;--line: #2b4434;--text: #e4ede6;--muted: #8aa392;--accent: #8fd6a4;color-scheme:dark}:root[data-theme=ember]{--bg: #1a1210;--bg-2: #241815;--card: #2c1e1a;--card-on: #3d2820;--line: #4a3229;--text: #f2e8e3;--muted: #b09a8f;--accent: #ffb37a;color-scheme:dark}:root[data-theme=ocean]{--bg: #0b1820;--bg-2: #10222c;--card: #142a36;--card-on: #1a3a4a;--line: #234656;--text: #e2eef3;--muted: #86a6b4;--accent: #7fd3e8;color-scheme:dark}:root[data-theme=paper]{--bg: #f4efe6;--bg-2: #ece4d6;--card: #fbf8f2;--card-on: #f1e6d2;--line: #ddd1bd;--text: #2b241b;--muted: #6f6454;--accent: #9a5b20;color-scheme:light}:root[data-theme=dusk]{--bg: #15111f;--bg-2: #1d1730;--card: #241c3a;--card-on: #30254f;--line: #3a2e5c;--text: #ece6f7;--muted: #a197bb;--accent: #c4a6ff;color-scheme:dark}:root[data-theme=storm]{--bg: #121417;--bg-2: #1a1d21;--card: #1f2328;--card-on: #2a3038;--line: #343b44;--text: #e8eaed;--muted: #959ca6;--accent: #b8c4d0;color-scheme:dark}:root[data-theme=rose]{--bg: #1b1014;--bg-2: #26161c;--card: #2e1b22;--card-on: #40232e;--line: #4c2a37;--text: #f5e6ea;--muted: #b8949f;--accent: #ff9fb6;color-scheme:dark}:root[data-theme=aurora]{--bg: #0b1517;--bg-2: #0f1f22;--card: #13282b;--card-on: #183a3a;--line: #1f4646;--text: #e0f2ef;--muted: #86aaa6;--accent: #7cf0c4;color-scheme:dark}:root[data-theme=oled]{--bg: #000000;--bg-2: #000000;--card: #0d0d0d;--card-on: #1a1a1a;--line: #262626;--text: #e6e6e6;--muted: #8c8c8c;--accent: #ffffff;color-scheme:dark}:root[data-theme=sakura]{--bg: #fbf0f2;--bg-2: #f6e3e7;--card: #fffafb;--card-on: #fbe1e8;--line: #ecd0d7;--text: #3a2228;--muted: #7d5b63;--accent: #c2477a;color-scheme:light}:root[data-theme=sage]{--bg: #eef2ea;--bg-2: #e2e9dc;--card: #f8faf6;--card-on: #dfe9d6;--line: #cfdac5;--text: #1f2a1c;--muted: #5c6b55;--accent: #4f7a3a;color-scheme:light}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(180deg,var(--bg-2),var(--bg));color:var(--text);font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}main{max-width:860px;margin:0 auto;padding:40px 16px 64px}h1{margin:0;font-size:2rem;font-weight:600;letter-spacing:-.01em}h2{margin:32px 0 12px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.tag,.muted{color:var(--muted)}.tag{margin:6px 0 0}.controls{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:28px}.play{min-width:120px;padding:12px 28px;border-radius:999px;border:0;background:var(--accent);color:var(--bg);font:inherit;font-weight:600;cursor:pointer}.play.playing{background:var(--card-on);color:var(--text);outline:1px solid var(--accent)}.ctl{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.9rem}select{font:inherit;padding:4px 8px;border-radius:8px;background:var(--card);color:var(--text);border:1px solid var(--line)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--text);font:inherit;font-size:.9rem;cursor:pointer}.chip{text-decoration:none}.chip:hover,.chip.current{border-color:var(--accent)}.chip.current{background:var(--card-on)}.home{color:var(--muted);text-decoration:none;font-size:.9rem}.home:hover{color:var(--accent)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.card{display:grid;grid-template-columns:1fr auto;gap:10px 8px;padding:14px;border-radius:14px;background:var(--card);border:1px solid var(--line);transition:background .2s,border-color .2s}.card.on{background:var(--card-on);border-color:var(--accent)}.name{font-weight:500}.status{font-size:.75rem;color:var(--muted);align-self:center}.card input{grid-column:1 / -1}input[type=range]{width:100%;accent-color:var(--accent)}.ctl input[type=range]{width:140px}.about{margin-top:48px;color:var(--muted);font-size:.95rem;max-width:640px}.about strong{color:var(--text);font-weight:500}.about h3{margin:24px 0 8px;font-size:1rem;font-weight:600;color:var(--text)}.about ul{margin:0;padding-left:20px}.about li{margin:4px 0}.about a{color:var(--accent)}.sponsor{margin-top:32px;padding:12px 14px;border:1px dashed var(--line);border-radius:14px;font-size:.9rem}.sponsor-label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:6px}.sponsor a{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none}.sponsor a:hover strong{color:var(--accent)}.sponsor img{border-radius:6px;flex:none}.stage{position:relative;margin-top:24px;aspect-ratio:16 / 9;border-radius:16px;overflow:hidden;background:#000;border:1px solid var(--line)}#bg{position:absolute;inset:0;background:linear-gradient(160deg,var(--tint-a),var(--tint-b) 70%);background-size:200% 200%;animation:drift 60s ease-in-out infinite alternate}#bg video,#bg img{width:100%;height:100%;object-fit:cover;display:block}@keyframes drift{0%{background-position:0% 0%}to{background-position:100% 100%}}@media(prefers-reduced-motion:reduce){#bg{animation:none}}.stage-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:72px;height:72px;border-radius:50%;border:0;cursor:pointer;display:grid;place-items:center;padding-left:4px;background:#00000073;color:#fff;backdrop-filter:blur(4px);transition:opacity .3s,transform .2s}.stage-play:hover{transform:translate(-50%,-50%) scale(1.06)}body.playing .stage-play{opacity:0;pointer-events:none}.stage-btns{position:absolute;right:12px;bottom:12px;display:flex;gap:8px}.stage-btn{padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.3);background:#00000073;color:#fff;font:inherit;font-size:.85rem;cursor:pointer;transition:opacity .4s}.stage.idle .stage-btn{opacity:0}.stage-min .stage.idle .stage-btn{opacity:1}.stage.idle:fullscreen{cursor:none}.stage:fullscreen{border:0;border-radius:0}.chip.add{color:var(--muted);border-style:dashed}.chip.mine{display:inline-flex;align-items:center;gap:4px;padding:0 6px 0 0}.chip.mine button{background:none;border:0;color:inherit;font:inherit;cursor:pointer;padding:8px 4px 8px 14px}.chip.mine .del{padding:4px 6px;color:var(--muted);font-size:1rem;line-height:1}.chip.mine .del:hover{color:var(--text)}kbd{display:inline-block;min-width:1.6em;padding:1px 6px;border-radius:6px;text-align:center;border:1px solid var(--line);border-bottom-width:2px;background:var(--card);color:var(--text);font:.8rem/1.4 ui-monospace,Cascadia Mono,monospace}.hint{margin-top:24px;font-size:.85rem}.keys{border:1px solid var(--line);border-radius:16px;padding:20px 24px;min-width:min(360px,calc(100vw - 32px));background:var(--bg-2);color:var(--text)}.keys::backdrop{background:#00000080}.keys h2{margin-top:0}.keys dl{display:grid;grid-template-columns:auto 1fr;gap:10px 16px;margin:0 0 20px}.keys dd{margin:0;color:var(--muted)}.site-footer{max-width:860px;margin:0 auto;padding:24px 16px 48px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px}.site-footer nav{display:flex;gap:20px}.site-footer a{color:var(--muted);text-decoration:none;font-size:.9rem}.site-footer a:hover{color:var(--accent)}.prose{max-width:680px}.prose h2{margin-top:36px}.prose p,.prose li{color:var(--muted)}.prose strong{color:var(--text);font-weight:500}.prose a{color:var(--accent)}.draft{padding:10px 14px;border-radius:10px;border:1px dashed var(--line);font-size:.85rem}.topbar{max-width:860px;margin:0 auto;padding:16px 16px 0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.brand{color:var(--text);text-decoration:none;font-weight:600;letter-spacing:-.01em}.brand:hover{color:var(--accent)}.themes{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.themes-label{font-size:.8rem;color:var(--muted);margin-right:4px}.swatch{width:24px;height:24px;border-radius:50%;padding:0;cursor:pointer;border:2px solid var(--line);background:linear-gradient(135deg,var(--sw-bg) 50%,var(--sw-acc) 50%);transition:transform .15s,border-color .15s}.swatch.auto{background:linear-gradient(90deg,var(--sw-bg) 50%,var(--sw-acc) 50%)}.swatch:hover{transform:scale(1.12)}.swatch[aria-checked=true]{border-color:var(--accent);box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--accent)}main{padding-top:24px}@keyframes breathe{0%,to{box-shadow:0 0 color-mix(in srgb,var(--accent) 0%,transparent)}50%{box-shadow:0 0 22px 4px color-mix(in srgb,var(--accent) 45%,transparent)}}body.playing .play{animation:breathe 5s ease-in-out infinite}.card.on{box-shadow:0 0 calc(var(--glow, 0) * 26px) calc(var(--glow, 0) * 2px) color-mix(in srgb,var(--accent) 55%,transparent)}.particles{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.topbar-right{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.calm-btn{padding:4px 12px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--muted);font:inherit;font-size:.8rem;cursor:pointer}.calm-btn:hover{border-color:var(--accent);color:var(--text)}.calm-btn[aria-pressed=true]{background:var(--card-on);border-color:var(--accent);color:var(--text)}.calm *,.calm *:before,.calm *:after{animation:none!important;transition:none!important}.calm .card.on{box-shadow:none}.calm .particles{display:none}.stage{transition:height .35s ease}.stage-min .stage{aspect-ratio:auto;height:52px}.stage-min .stage-play,.stage-min #fullscreen{display:none}.stage-min .stage-btns{top:50%;bottom:auto;transform:translateY(-50%)}.particles.page{position:fixed;inset:0;width:100vw;height:100vh;z-index:0}.topbar,main,.site-footer{position:relative;z-index:1}.calm #fx-page{opacity:.45}.theme-chip{display:inline-flex;align-items:center;gap:8px}.theme-chip[aria-checked=true]{border-color:var(--accent);background:var(--card-on)}.swatch-dot{width:14px;height:14px;border-radius:50%;flex:none;border:1px solid var(--line);background:linear-gradient(135deg,var(--sw-bg) 50%,var(--sw-acc) 50%)}.swatch-dot.auto{background:linear-gradient(90deg,var(--sw-bg) 50%,var(--sw-acc) 50%)}.look-toggles{margin-top:10px}.chip[aria-pressed=true]{border-color:var(--accent);background:var(--card-on)}.flash{position:absolute;inset:0;pointer-events:none;opacity:0;z-index:1;background:radial-gradient(ellipse at 50% 0%,#eef3ff 0%,#c9d6ff 45%,transparent 85%)}.flash.page{position:fixed;z-index:0}.flash.on{animation:flash .9s ease-out}@keyframes flash{0%{opacity:0}4%{opacity:calc(var(--flash, 1) * .55)}12%{opacity:calc(var(--flash, 1) * .12)}18%{opacity:calc(var(--flash, 1) * .4)}to{opacity:0}}.flash.page.on{animation-name:flash-page}@keyframes flash-page{0%{opacity:0}4%{opacity:calc(var(--flash, 1) * .22)}12%{opacity:calc(var(--flash, 1) * .05)}18%{opacity:calc(var(--flash, 1) * .16)}to{opacity:0}}html.calm .flash{display:none}.swatch.scene,.swatch-dot.scene{background:conic-gradient(#8fb8ff,#ffb37a,#8fd6a4,#7fd3e8,#c4a6ff,#8fb8ff)}.chip[data-slug]{position:relative}.peek{display:none;position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%);width:230px;padding:10px;border-radius:12px;z-index:20;pointer-events:none;text-align:left;background:var(--card);border:1px solid var(--line);color:var(--text);font-size:.8rem;line-height:1.4;box-shadow:0 10px 30px #00000059}.peek-tint{display:block;height:44px;border-radius:8px;margin-bottom:8px}.peek-title{display:block;font-weight:600;font-size:.9rem}.peek-row{display:block;margin-top:2px}@media(hover:hover){.chip[data-slug]:hover .peek,.chip[data-slug]:focus-visible .peek{display:block}}#sleep-custom{width:4.5em;font:inherit;padding:4px 6px;border-radius:8px;background:var(--card);color:var(--text);border:1px solid var(--line)}.howto{margin:14px 0 0;color:var(--muted);font-size:.9rem}.note{margin:-6px 0 10px;color:var(--muted);font-size:.8rem}.site-footer .copy{margin:10px 0 0;text-align:center;color:var(--muted);font-size:.8rem}.card.failed .status{color:#e8857a}.share-menu{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.faq dt{font-weight:600;margin-top:12px}.faq dd{margin:4px 0 0}.sponsor.open a{opacity:.75}.chip .feel{margin-left:6px;font-size:.75em;opacity:.6}.scene-group h3{font-size:.85rem;font-weight:500;color:var(--muted);margin:12px 0 6px}.scene-group:first-child h3{margin-top:0}.stage{cursor:pointer}.panel{margin-top:20px;padding:16px;border-radius:18px;background:color-mix(in srgb,var(--text) 4%,transparent);border:1px solid color-mix(in srgb,var(--text) 7%,transparent)}.panel>h2:first-child{margin-top:0}#layers{margin-top:8px}.look-note{margin:8px 0 0}.install-help{position:relative;z-index:2;max-width:680px;margin:8px auto 0;padding:12px 16px;border-radius:12px;background:color-mix(in srgb,var(--text) 6%,transparent);color:var(--muted)}.install-help .calm-btn{margin-left:8px}.guide-list li{margin-bottom:10px}.sources{font-size:.9rem}.prose table{width:100%;border-collapse:collapse;margin:16px 0;font-size:.95rem}.prose th,.prose td{text-align:left;padding:8px 10px;border-bottom:1px solid color-mix(in srgb,var(--text) 12%,transparent);color:var(--muted);vertical-align:top}.prose th{color:var(--text);font-weight:500}@media(max-width:520px){.prose table{font-size:.85rem}.prose th,.prose td{padding:6px}}
