:root{--fx-top: #66c9ff;--fx-bottom: #0000db;--bg-top: #0b1033;--bg-bottom: #3a2fc4;--fg: #eef0ff;--fg-muted: rgb(238 240 255 / .62);--line: rgb(255 255 255 / .14);--glass: rgb(255 255 255 / .06);--glass-strong: rgb(255 255 255 / .12);--radius: 18px;--serif: "Instrument Serif", Georgia, serif;--sans: "Inter", system-ui, -apple-system, sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg-top);color:var(--fg);font-family:var(--sans);-webkit-font-smoothing:antialiased}.hero,.room{background:radial-gradient(120% 70% at 50% 100%,var(--bg-bottom) 0%,transparent 70%),var(--bg-top)}a{color:inherit}button,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--fx-top);outline-offset:3px}.topbar{position:fixed;inset:0 0 auto;z-index:10;display:flex;align-items:center;gap:12px;padding:max(14px,env(safe-area-inset-top)) 20px 14px;pointer-events:none}.topbar>*{pointer-events:auto}.brand{font-family:var(--serif);font-size:26px;letter-spacing:.01em}.topbar-controls{margin-left:auto;display:flex;gap:8px;align-items:center}.icon-btn,.theme-select{height:40px;border-radius:999px;border:1px solid var(--line);background:var(--glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);cursor:pointer;transition:background .2s,border-color .2s}.icon-btn{width:40px;display:inline-grid;place-items:center;text-decoration:none}.theme-select{padding:0 14px;-moz-appearance:none;appearance:none;-webkit-appearance:none}.theme-select option{color:#111}.icon-btn:hover,.theme-select:hover{background:var(--glass-strong)}.icon-btn[aria-pressed=false]{color:var(--fg-muted)}.landing{min-height:100vh}.hero{position:relative;height:min(100vh,900px);min-height:560px;overflow:hidden}.hero-burst{position:absolute;top:0;right:0;bottom:0;left:0}.burst-canvas{width:100%;height:100%;display:block}.hero-text{position:relative;padding:18vh 20px 0;text-align:center;pointer-events:none}.hero-text h1{font-family:var(--serif);font-weight:400;font-size:clamp(44px,8vw,96px);line-height:.98;margin:0 0 20px;letter-spacing:-.01em}.hero-text p{color:var(--fg-muted);font-size:clamp(15px,1.6vw,18px);max-width:34ch;margin:0 auto}.rooms{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;max-width:1160px;margin:-80px auto 0;padding:0 20px;position:relative}.room-card{position:relative;display:block;padding:28px 24px 64px;border-radius:var(--radius);border:1px solid var(--line);background:linear-gradient(160deg,var(--glass-strong),var(--glass));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);text-decoration:none;overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .3s;animation:rise .8s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i) * 80ms + .3s)}.room-card:before{content:"";position:absolute;inset:auto -30% -60% -30%;height:120%;background:radial-gradient(closest-side,var(--fx-top),transparent);opacity:0;transition:opacity .4s;pointer-events:none}.room-card:hover{transform:translateY(-4px);border-color:#ffffff4d}.room-card:hover:before{opacity:.18}.room-card-index{font-size:12px;color:var(--fg-muted);letter-spacing:.1em}.room-card h2{font-family:var(--serif);font-weight:400;font-size:34px;margin:10px 0 6px}.room-card p{margin:0;color:var(--fg-muted);font-size:15px;line-height:1.45}.room-card-go{position:absolute;right:22px;bottom:20px;font-size:22px;transition:transform .3s}.room-card:hover .room-card-go{transform:translate(4px)}.foot{text-align:center;color:var(--fg-muted);font-size:13px;padding:56px 20px 40px}@keyframes rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.room{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.room-title{font-family:var(--serif);font-weight:400;font-size:26px;margin:0}.room-stage{position:absolute;top:0;right:0;bottom:0;left:0}.room-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;touch-action:none;cursor:crosshair}.room-hint{position:fixed;left:50%;bottom:max(20px,env(safe-area-inset-bottom));transform:translate(-50%);margin:0;padding:10px 16px;border-radius:999px;background:var(--glass);border:1px solid var(--line);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--fg-muted);font-size:13px;white-space:nowrap;pointer-events:none;animation:hint 5s ease forwards}@keyframes hint{0%,70%{opacity:1}to{opacity:0}}.room-fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;text-align:center;color:var(--fg-muted)}.room-counter{position:absolute;top:74px;left:50%;transform:translate(-50%);font-size:13px;color:var(--fg-muted);font-variant-numeric:tabular-nums;pointer-events:none}.room-action{position:absolute;right:20px;bottom:max(20px,env(safe-area-inset-bottom));z-index:2;height:40px;padding:0 16px;border-radius:999px;border:1px solid var(--line);background:var(--glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);cursor:pointer}.room-action:hover{background:var(--glass-strong)}.breathe-ui{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1}.breathe-label{position:absolute;top:13%;width:100%;margin:0;text-align:center;font-family:var(--serif);font-size:clamp(36px,6vw,60px)}.breathe-count{position:absolute;top:52%;width:100%;margin:0;transform:translateY(-50%);text-align:center;font-size:28px;font-variant-numeric:tabular-nums;color:#10122b;mix-blend-mode:normal;font-weight:500}.breathe-patterns{position:absolute;left:50%;bottom:max(70px,calc(env(safe-area-inset-bottom) + 56px));transform:translate(-50%);display:flex;gap:8px;pointer-events:auto}.breathe-patterns button{height:38px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);cursor:pointer;white-space:nowrap;font-size:14px}.breathe-patterns button[aria-pressed=true]{background:var(--glass-strong);border-color:#ffffff59}.breathe-cycles{position:absolute;top:calc(13% + clamp(48px,7vw,72px));width:100%;margin:0;text-align:center;color:var(--fg-muted);font-size:13px}@media(max-width:560px){.topbar{padding-inline:16px}.rooms{padding:0 16px;margin-top:-60px}.theme-select{padding:0 10px;font-size:13px}.room-title{font-size:22px}.breathe-patterns button{padding:0 10px;font-size:13px}.room-action{top:66px;bottom:auto;right:16px;height:34px;font-size:13px}.room-counter{left:16px;transform:none}}@media(prefers-reduced-motion:reduce){.room-card{animation:none}*{transition-duration:.01ms!important}}html.pull-guard,html.pull-guard body{overscroll-behavior:none}
