:root{--bg: #15131b;--ink: #f5ede2;--muted: #bdb0a2;--line: rgba(245, 237, 226, .14);--glass: rgba(24, 21, 28, .62);--glass-strong: rgba(22, 19, 26, .8);--gold: #e9c27a;--gold-deep: #c8954a;--gold-ink: #2b1d0b;--green: #5fd08a;--danger: #ef9a85;--serif: "Noto Serif SC", "Noto Serif CJK SC", "Songti SC", "Source Han Serif SC", Georgia, serif;--sans: system-ui, -apple-system, "PingFang SC", "Noto Sans SC", "Noto Sans CJK SC", "Apple SD Gothic Neo", sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow:hidden}button{font:inherit;color:var(--ink);background:#f5ede20f;border:1px solid var(--line);border-radius:12px;padding:.5rem 1rem;cursor:pointer;transition:background .2s,border-color .2s,opacity .2s;min-height:38px}button:hover:not(:disabled){background:#f5ede221}button:disabled{opacity:.5;cursor:default}button.primary{background:linear-gradient(180deg,#f3d595,var(--gold-deep));color:var(--gold-ink);border-color:transparent;font-weight:600}button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:.85rem;line-height:1.6}.tiny{font-size:.74rem;margin:6px 0 0}.glass{background:var(--glass);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 40px #00000059}.stage{position:fixed;top:0;right:0;bottom:0;left:0}.app.landing .stage,.app.entering .stage{visibility:hidden}.brand{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-size:1.35rem;color:var(--ink);white-space:nowrap}.brand svg{color:var(--gold)}.brand sup{font-family:var(--sans);font-size:.65rem;color:var(--muted);margin-left:-4px}.brand.big{font-size:clamp(2rem,6vw,3rem);gap:14px}.landing{position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;display:grid;place-items:center;padding:32px 16px;background:radial-gradient(120% 70% at 50% 115%,rgba(255,166,102,.42),transparent 60%),radial-gradient(90% 60% at 50% -10%,rgba(35,42,90,.95),transparent 70%),var(--bg)}.landing-inner{width:100%;max-width:980px}.lede{font-family:var(--serif);font-size:1.2rem;color:var(--muted);margin:.8rem 0 1.8rem}.landing-scenes{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}.scene-tile{position:relative;border-radius:14px;overflow:hidden;border:1px solid var(--line);aspect-ratio:4 / 3;opacity:.6}.scene-tile.open{opacity:1;border-color:#e9c27ab3;box-shadow:0 0 0 1px #e9c27a66,0 8px 30px #e9a05040}.thumb{display:block;width:100%;height:100%;background-color:#ffffff0f;overflow:hidden}.thumb img{width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .35s ease}.thumb img.in{opacity:1}.scene-tile>.thumb{position:absolute;top:0;right:0;bottom:0;left:0}.scene-tile div{position:absolute;inset:auto 0 0 0;padding:8px 10px;background:linear-gradient(transparent,#000000bf);display:grid}.scene-tile strong{font-family:var(--serif);font-weight:500;font-size:.95rem}.scene-tile span{font-size:.72rem;color:var(--muted)}.rooms-card{padding:18px 20px}.rooms{list-style:none;margin:0;padding:0;display:grid}.rooms li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.rooms li div{display:grid;gap:2px}.rooms .muted{font-size:.82rem}.hint{color:var(--muted);font-size:.84rem;margin:12px 0 0;display:flex;align-items:center;gap:6px}.footnote{color:var(--muted);font-size:.8rem;margin-top:1.2rem;text-align:center}.error{color:var(--danger);font-size:.9rem}@media (max-width: 600px){.landing-scenes{grid-template-columns:repeat(2,1fr)}}.landing{place-items:start center}.current-scene{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:16 / 6;margin-bottom:12px;border:1px solid rgba(233,194,122,.55);box-shadow:0 8px 30px #e9a05033;background:var(--glass)}.current-scene img{width:100%;height:100%;object-fit:cover;display:block}.current-scene div{position:absolute;inset:auto 0 0 0;padding:14px 18px;background:linear-gradient(transparent,#000c);display:grid;gap:2px}.current-scene strong{font-family:var(--serif);font-weight:500;font-size:1.5rem}.current-scene span{color:var(--muted);font-size:.85rem}.browser{margin-top:22px}.cat-tabs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:10px}.cat-tabs button,.country-chips button{border-radius:999px;padding:.4rem .9rem;background:#ffffff0d;border:1px solid var(--line);color:var(--ink);font-size:.88rem}.cat-tabs button.on,.country-chips button.on{background:#e9c27a2e;border-color:#e9c27ab3}.cat-tabs small,.country-chips small{color:var(--muted);margin-left:4px;font-size:.75rem}.country-chips{display:flex;gap:6px;overflow-x:auto;padding-bottom:6px;margin-bottom:10px;scrollbar-width:thin}.country-chips button{white-space:nowrap;font-size:.8rem;padding:.3rem .75rem}.scene-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}button.scene-tile{padding:0;cursor:pointer;text-align:left;color:inherit;background:var(--glass);aspect-ratio:16 / 10;font:inherit}button.scene-tile.open{box-shadow:none;border-color:var(--line)}button.scene-tile:hover{border-color:#e9c27a80}button.scene-tile.picked{border-color:#e9c27ae6;box-shadow:0 0 0 2px #e9c27a73}button.scene-tile span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.credit{font-size:.75rem;color:var(--muted);line-height:1.5;margin:8px 2px 12px}.credit a{color:var(--gold)}button.scene-card.new{width:100%;cursor:pointer;font:inherit;color:inherit}@media (max-width: 600px){.current-scene{aspect-ratio:16 / 9}.current-scene strong{font-size:1.2rem}.scene-grid{grid-template-columns:repeat(2,1fr);gap:8px}}.loading{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;justify-items:center;gap:24px;color:var(--muted);font-family:var(--serif);background:var(--bg)}.breath{width:56px;height:56px;border-radius:50%;border:1px solid var(--gold);animation:breath 4s ease-in-out infinite}@keyframes breath{0%,to{transform:scale(.7);opacity:.4}50%{transform:scale(1.1);opacity:1}}.topbar{position:fixed;top:0;left:0;right:0;height:60px;display:flex;align-items:center;gap:28px;padding:0 20px;background:linear-gradient(rgba(14,12,18,.8),rgba(14,12,18,.35) 70%,transparent);z-index:5}.tabs{display:flex;gap:4px}.tabs button{background:none;border:none;border-radius:0;padding:.4rem .9rem;color:var(--muted);position:relative}.tabs button.active{color:var(--ink)}.tabs button.active:after{content:"";position:absolute;left:20%;right:20%;bottom:-6px;height:2px;background:var(--gold);border-radius:2px;box-shadow:0 0 10px var(--gold)}.chips{margin-left:auto;display:flex;gap:8px}.chip{display:inline-flex;align-items:center;gap:8px;padding:.45rem .9rem;border-radius:999px;background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);font-size:.85rem;white-space:nowrap;min-height:36px}.chip svg{color:var(--gold)}.panel{position:fixed;top:76px;z-index:4;background:var(--glass);backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:0 12px 40px #00000059;transition:transform .35s ease,opacity .35s;max-height:calc(100vh - 190px);overflow-y:auto}.panel h2{font-family:var(--serif);font-weight:500;font-size:1.15rem;margin:2px 4px 14px}.panel h2 em{font-style:normal;color:var(--gold);margin-left:6px;font-family:var(--sans);font-weight:600}.panel h3{font-size:.92rem;font-weight:600;margin:18px 4px 8px}.panel.left{left:16px;width:236px}.panel.right{right:16px;width:320px}.panel.left.closed{transform:translate(-120%);opacity:0;pointer-events:none}.panel.right.closed{transform:translate(120%);opacity:0;pointer-events:none}.panel-close{position:absolute;top:10px;right:10px;min-height:0;padding:2px 9px;border-radius:999px;background:none;border:none;color:var(--muted);font-size:1.2rem}.scene-card{position:relative;height:92px;border-radius:14px;overflow:hidden;margin-bottom:10px;border:1px solid var(--line)}.scene-card img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.scene-card-text{position:absolute;inset:auto 0 0 0;padding:8px 12px;display:grid;background:linear-gradient(transparent,#000000c7)}.scene-card-text strong{font-family:var(--serif);font-weight:500}.scene-card-text span{font-size:.75rem;color:var(--muted)}.scene-card.active{border:1.5px solid var(--gold);box-shadow:0 0 18px #e9c27a59}.scene-card.soon{filter:saturate(.7) brightness(.8)}.scene-card.new{height:96px;display:grid;place-content:center;justify-items:center;gap:2px;border:1.5px dashed var(--line);color:var(--muted);font-size:.9rem}.scene-card.new small{font-size:.72rem}.seat-card{display:grid;grid-template-columns:84px 1fr;gap:12px;padding:10px;border-radius:14px;background:#00000038;border:1px solid var(--line)}.seat-thumb{height:84px;border-radius:10px;background-size:cover;background-position:center}.seat-thumb.z-HALL_FRONT{background-image:linear-gradient(#0000000d,#00000040),radial-gradient(circle at 50% 60%,#ffcf7a,#8a2a1e 45%,#2a1a14 80%)}.seat-thumb.z-COURTYARD{background-image:linear-gradient(#6a5a8a,#e8a06a 55%,#8d8070 56%,#6d665e)}.seat-thumb.z-CORRIDOR{background-image:linear-gradient(90deg,#8a2a1e 0 12%,transparent 12% 88%,#8a2a1e 88%),linear-gradient(#2e6b5e 0,#2e6b5e 18%,#e0a070 18%,#e0a070 60%,#6a4630 60%)}.seat-thumb.z-FRONT,.cushion-dot.z-FRONT{background-image:url(/cushions/front.jpg)}.seat-thumb.z-CENTER,.cushion-dot.z-CENTER{background-image:url(/cushions/center.jpg)}.seat-thumb.z-SIDE,.cushion-dot.z-SIDE{background-image:url(/cushions/side.jpg)}.seat-thumb.z-BACK,.cushion-dot.z-BACK{background-image:url(/cushions/back.jpg)}.seat-cushion{margin:2px 0 4px;font-size:.78rem;color:var(--gold)}.cushion-dot{display:inline-block;width:18px;height:18px;margin-right:4px;border-radius:50%;vertical-align:-4px;background-size:cover;background-position:center;border:1px solid var(--line)}.seat-thumb.z-NATURE{background-image:radial-gradient(circle at 70% 30%,#f6b6c8 0 22%,transparent 23%),linear-gradient(#e8a06a,#3d6f83 60%,#2a3a3a)}.seat-zone{margin:4px 0 6px;display:flex;align-items:center;gap:6px;font-weight:600}.seat-zone svg,.seat-desc svg{color:var(--gold);flex:none}.seat-desc{margin:0;display:flex;gap:6px;font-size:.84rem;color:var(--muted);line-height:1.5}.pill{margin-left:auto;font-size:.7rem;padding:1px 8px;border-radius:999px;font-weight:600}.pill.ok{background:#5fd08a2e;color:var(--green)}.pill.no{background:#ef9a852e;color:var(--danger)}.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:7px 4px;font-size:.9rem}.chant-pick{display:grid;gap:6px;padding:7px 4px;font-size:.9rem}.chant-pick select{width:100%;padding:.4rem .5rem;border-radius:8px;border:1px solid var(--line);background:#ffffff0d;color:var(--ink);font-size:.88rem}.chant-pick optgroup,.chant-pick option{background:#17151f;color:var(--ink)}.toggle-row small{color:var(--muted);font-size:.76rem}.toggle-row input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:38px;height:22px;border-radius:999px;background:#f5ede22e;position:relative;cursor:pointer;transition:background .2s;flex:none}.toggle-row input:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .2s}.toggle-row input:checked{background:var(--green)}.toggle-row input:checked:after{transform:translate(16px)}.seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px}.seg button{font-size:.85rem;padding:.55rem .4rem;background:#0003}.seg button.on{border-color:var(--gold);color:var(--gold);background:#e9c27a1a;box-shadow:inset 0 0 0 1px #e9c27a59}.times{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.time{display:grid;gap:4px;padding:5px;font-size:.78rem;border-radius:12px;background:#0003}.time span{height:36px;border-radius:8px}.time.on{border-color:var(--gold);box-shadow:0 0 12px #e9c27a59}.t-dawn span{background:linear-gradient(#34426e,#c79bb0 55%,#f7c697)}.t-day span{background:linear-gradient(#2f6fc4,#86b5e6 60%,#e2ecf2)}.t-dusk span{background:linear-gradient(#232a5a,#b0607a 55%,#ffae66)}.t-night span{background:radial-gradient(circle at 70% 30%,#dfe6ff 0 6%,transparent 7%),linear-gradient(#03061a,#0d1636 60%,#26294a)}.lr{display:flex;align-items:center;gap:10px;padding:4px 2px}.lr span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:.85rem;flex:none}.lr .l{background:#2f9fd8;color:#06202e;box-shadow:0 0 12px #2f9fd899}.lr.vol .l,.lr.vol .r{background:#ffffff1a;color:var(--ink);box-shadow:none;font-size:1rem}.lr.vol input{background:linear-gradient(90deg,#f5ede233,#e9c27ad9)}.lr .r{background:#e9a23c;color:#2b1d0b;box-shadow:0 0 12px #e9a23c99}.lr input{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:6px;border-radius:6px;background:linear-gradient(90deg,#2f9fd8,#f5ede240 50%,#e9a23c);cursor:pointer}.lr input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 0 10px #fffc}.lr input::-moz-range-thumb{width:20px;height:20px;border:none;border-radius:50%;background:#fff}.seatmap{display:grid;gap:5px}.seatrow{display:flex;align-items:center;gap:4px}.seatrow span{width:62px;white-space:nowrap;font-size:.72rem;color:var(--muted);flex:none}.seatrow button{flex:1;min-height:30px;padding:0;font-size:.72rem;border-radius:8px;background:#e9c27a1a}.seatrow button.taken{background:#00000040;color:var(--muted);opacity:.6}.seatrow button.on{border-color:var(--gold);color:var(--gold);box-shadow:0 0 10px #e9c27a73;opacity:1}.actionbar{position:fixed;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translate(-50%);z-index:5;display:flex;align-items:center;gap:14px;padding:10px 12px;background:var(--glass-strong);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--line);border-radius:22px;box-shadow:0 12px 40px #0006;max-width:calc(100% - 32px)}.ab-info{display:flex;align-items:center;gap:10px;padding:0 8px;text-align:left}.ab-info svg{color:var(--muted);flex:none}.ab-info div{display:grid}.ab-info b{font-weight:600;font-size:.9rem;white-space:nowrap}.ab-info span{font-size:.76rem;color:var(--muted);white-space:nowrap}.ab-info.as-btn{background:none;border:none;border-left:1px solid var(--line);border-radius:0}.sit{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:240px;min-height:50px;border-radius:16px;font-size:1.05rem;font-weight:600;background:linear-gradient(180deg,#fbf1dd,#e7cf9e);color:var(--gold-ink);border:none;box-shadow:0 0 24px #e9c27a59}.sit:hover:not(:disabled){background:linear-gradient(180deg,#fff6e6,#f0d9a9)}.sit:disabled{background:#f5ede21f;color:var(--muted);box-shadow:none;opacity:1}.sit.small{min-width:110px;min-height:44px;font-size:.95rem}.ghost{background:none;font-size:.85rem}.ab-timer{display:grid;padding:0 10px;min-width:150px}.ab-timer b{font-family:var(--serif);font-size:1.6rem;font-weight:500;letter-spacing:.06em}.ab-timer span{font-size:.74rem;color:var(--muted);white-space:nowrap}.controls-hint{position:fixed;left:20px;bottom:26px;display:flex;gap:18px;color:var(--muted);font-size:.8rem;z-index:3}.controls-hint span{display:inline-flex;align-items:center;gap:6px}.corner{position:fixed;right:16px;bottom:24px;display:flex;gap:8px;z-index:5}.popover{position:absolute;right:0;bottom:48px;display:grid;gap:6px;padding:10px;width:190px}.popover button{text-align:left;font-size:.86rem}.reopen{position:fixed;right:16px;top:76px;z-index:4;cursor:pointer}.unhide{position:fixed;right:16px;bottom:20px;z-index:6;display:inline-flex;gap:8px;align-items:center;background:var(--glass);border-radius:999px;opacity:.55;font-family:var(--serif)}.unhide:hover{opacity:1}.app.seated .panel.left{transform:translate(-120%);opacity:0;pointer-events:none}.app.seated .topbar{opacity:.35}.app.seated .topbar:hover{opacity:1}.app.ui-hidden .fade,.app.ui-hidden .labels{opacity:0!important;pointer-events:none!important}.fade,.labels{transition:opacity .6s}.labels{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:2}.seat-label,.src-label{position:absolute;left:0;top:0;will-change:transform;transition:opacity .25s}.seat-label{display:grid;justify-items:center;padding:5px 12px 6px;border-radius:10px;background:#1e1a20b8;border:1px solid rgba(245,237,226,.22);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:.8rem;line-height:1.2}.seat-label b{font-size:.95rem;letter-spacing:.02em}.seat-label small{color:var(--muted);font-size:.72rem}.seat-label:after{content:"";position:absolute;left:50%;bottom:-6px;width:10px;height:10px;transform:translate(-50%) rotate(45deg);background:inherit;border-right:inherit;border-bottom:inherit}.seat-label.selected{border-color:var(--gold);box-shadow:0 0 16px #e9c27a80}.seat-label.selected small{color:var(--gold)}.seat-label.taken{opacity:.75}.seat-label.clickable{pointer-events:auto;cursor:pointer}.seat-label.clickable:hover{border-color:var(--gold)}.src-label{display:flex;align-items:center;gap:10px;padding:8px 14px 8px 10px;border-radius:16px;background:#161218ad;border:1px solid var(--accent, var(--gold));box-shadow:0 0 18px color-mix(in srgb,var(--accent, var(--gold)) 45%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.src-label b{display:block;font-size:.88rem;font-weight:600}.src-label small{display:block;font-size:.72rem;color:var(--muted)}.src-label .wave{display:flex;align-items:center;gap:2px;height:22px}.src-label .wave i{width:3px;border-radius:2px;background:var(--accent, var(--gold));animation:eq 1.2s ease-in-out infinite}.src-label .wave i:nth-child(1){animation-delay:-.2s}.src-label .wave i:nth-child(2){animation-delay:-.6s}.src-label .wave i:nth-child(3){animation-delay:-.1s}.src-label .wave i:nth-child(4){animation-delay:-.8s}.src-label .wave i:nth-child(5){animation-delay:-.4s}@keyframes eq{0%,to{height:5px}50%{height:20px}}.k-chant,.k-instrument{--accent: #f0b660}.k-bell{--accent: #5fd4ff}.k-water{--accent: #4fe0d0}.k-birds{--accent: #ff7ad9}.k-wind{--accent: #c9d6e8}.k-insects{--accent: #b8e05a}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;background:#00000059;padding:16px}.modal{max-width:440px;padding:22px 24px}.modal h3{font-family:var(--serif);font-weight:500;font-size:1.25rem;margin:0 0 10px}.modal p{line-height:1.7}.ended{position:fixed;left:50%;top:38%;transform:translate(-50%,-50%);width:min(380px,calc(100% - 32px));text-align:center;padding:22px;font-family:var(--serif);font-size:1.1rem;line-height:1.6;z-index:10}.offer{background:#141018eb;z-index:26;box-shadow:0 10px 40px #00000073}.offer b{font-size:1.6rem;font-weight:500}.offer button{margin-top:12px}.sit.queued{opacity:.85}.banner{position:fixed;top:0;left:0;right:0;padding:8px 16px;text-align:center;background:#784628e6;font-size:.85rem;z-index:30}.toast{position:fixed;left:50%;top:76px;transform:translate(-50%);max-width:calc(100% - 32px);padding:10px 16px;font-size:.9rem;z-index:25;border-radius:12px}@media (max-width: 1100px){.controls-hint{display:none}.tabs button{padding:.4rem .6rem}.chips .chip:first-child span{display:none}}@media (max-width: 900px){.topbar{gap:12px;padding:0 12px;height:54px}.brand{font-size:1.05rem}.brand svg{width:24px;height:24px}.tabs{display:none}.panel{top:auto;bottom:calc(max(18px,env(safe-area-inset-bottom)) + 84px);max-height:52vh}.panel.left{left:12px;right:12px;width:auto;display:grid;grid-template-columns:1fr 1fr;gap:8px}.panel.left h2{grid-column:1 / -1;margin-bottom:4px}.panel.left .scene-card{margin:0;height:74px}.panel.right{left:12px;right:12px;width:auto}.panel.right.closed,.panel.left.closed{transform:translateY(120%)}.actionbar{gap:8px;padding:8px;width:calc(100% - 24px);justify-content:space-between}.ab-info{display:none}.sit{min-width:0;flex:1}.ab-timer{min-width:0}.ab-timer b{font-size:1.3rem}.ghost{padding:.4rem .6rem;font-size:.8rem}.corner{top:9px;bottom:auto;right:12px}.corner .chip:first-child{display:none}.corner .popover{bottom:auto;top:44px}.chips{margin-right:96px;min-width:0}.chips .chip:first-child{display:none}.chips .chip{font-size:.78rem;padding:.4rem .7rem}.brand span{display:none}.reopen{top:auto;bottom:calc(max(18px,env(safe-area-inset-bottom)) + 84px);right:12px}.src-label{padding:5px 10px 5px 8px;gap:6px}.src-label b{font-size:.76rem}.src-label small{font-size:.66rem}.src-label .wave{display:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.ritualbar{position:fixed;left:50%;bottom:calc(max(18px,env(safe-area-inset-bottom)) + 84px);transform:translate(-50%);z-index:5;display:flex;gap:4px;padding:6px;border-radius:999px;background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.ritual{display:grid;justify-items:center;gap:1px;min-width:58px;padding:6px 8px 5px;border-radius:999px;background:transparent;border:1px solid transparent;color:inherit}.ritual i{font-style:normal;font-size:1.05rem;line-height:1.2;filter:saturate(.7)}.ritual span{font-size:.72rem;color:var(--muted)}.ritual:hover:not(:disabled){background:#e9c27a1a}.ritual.on{border-color:var(--gold);background:#e9c27a24}.ritual.on span{color:var(--gold)}.ritual:disabled{opacity:.45}@media (max-width: 560px){.ritual{min-width:46px;padding:5px 4px}.ritual span{font-size:.66rem}}.ritual-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-content:center;justify-items:center;gap:14px;background:#100c0a85;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);animation:ritual-in .35s ease}@keyframes ritual-in{0%{opacity:0}to{opacity:1}}.ritual-overlay .moktak{width:min(300px,70vw);aspect-ratio:1;padding:0;border-radius:50%;overflow:hidden;border:1px solid rgba(233,194,122,.45);box-shadow:0 18px 50px #00000073;transition:transform .09s ease;background:#2a1d14;touch-action:manipulation}.ritual-overlay .moktak img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;-webkit-user-select:none;user-select:none}.ritual-overlay .moktak.hit{transform:scale(.955);box-shadow:0 10px 30px #00000080,0 0 0 6px #e9c27a1f}.ritual-count{margin:0;font-size:1.3rem;letter-spacing:.08em;color:#f5ede2}.ritual-tools{display:flex;gap:8px}.ritual-tools button{padding:7px 16px;border-radius:999px;background:var(--glass);border:1px solid var(--line);color:inherit}.ritual-tools button.on{border-color:var(--gold);color:var(--gold)}.ritual-hint{margin:0;font-size:.74rem;color:var(--muted)}.beads{width:min(340px,82vw);height:auto;touch-action:none;cursor:pointer;-webkit-user-select:none;user-select:none}.bead{fill:#5a3420;stroke:#00000059;stroke-width:.6;transition:r .2s ease,fill .3s ease}.bead.done{fill:#a5683c}.bead.current{fill:#e9c27a;filter:drop-shadow(0 0 6px rgba(233,194,122,.8))}.bead.guru{fill:#7a2b1e}.beads-count{font-size:44px;fill:#f5ede2;font-weight:300}.beads-of{font-size:18px;fill:#bdb0a2}.beads-round{font-size:14px;fill:#bdb0a2;letter-spacing:.1em}.ritual-focus .labels,.ritual-focus .panel,.ritual-focus .ritualbar{opacity:0!important;pointer-events:none!important;transition:opacity .3s}.credits{margin:.6em 0 1em;text-align:left}.credits summary{cursor:pointer;opacity:.8}.credits ul{margin:.5em 0 .3em;padding-left:1.2em;line-height:1.6}.credits p{margin:0}.singing-bowl{width:min(360px,82vw);touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none}.singing-bowl.rubbing{cursor:grabbing}.bowl-ripple{fill:none;stroke:#ffdc968c;stroke-width:2;transform-origin:170px 176px;animation:bowl-ripple 3.6s ease-out forwards;opacity:0}@keyframes bowl-ripple{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}.singing-bowl.rubbing .bowl-mallet{filter:drop-shadow(0 0 6px rgba(255,210,140,.7))}.bowl-state{fill:var(--ink);font-family:var(--serif);font-size:15px;opacity:.85}.globe-card{position:relative;margin:18px 0 8px}.world-globe{position:relative;height:min(62vh,560px);border-radius:18px;overflow:hidden;cursor:grab;touch-action:none;background:radial-gradient(ellipse at 50% 45%,rgba(233,194,122,.08),transparent 60%);border:1px solid var(--line)}.world-globe canvas{width:100%;height:100%;display:block}.globe-tip{position:absolute;transform:translate(-50%,calc(-100% - 12px));pointer-events:none;white-space:nowrap;background:var(--glass-strong);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:4px 10px;font-size:13px}.globe-legend{position:absolute;left:14px;bottom:12px;display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;font-size:12px;color:var(--muted);pointer-events:none}.globe-legend i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px;box-shadow:0 0 6px currentColor}.globe-legend small{opacity:.75}@media (max-width: 640px){.world-globe{height:58vh}.globe-legend small{display:none}}.grand-map{display:grid;gap:8px;margin-bottom:10px}.grand-bay{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.grand-bay>span{width:100%;font-size:13px;color:var(--muted)}.grand-bay>span small{margin-left:6px;opacity:.8}.grand-bay button{min-width:54px;padding:5px 8px;border-radius:8px;border:1px solid var(--line);background:#ffffff0a;color:var(--ink);font-size:13px;cursor:pointer}.grand-bay button small{margin-left:4px;color:var(--muted)}.grand-bay button.on{border-color:var(--gold);background:#e9c27a2e}.grand-bay button.taken,.grand-bay button:disabled{opacity:.4;cursor:default}.world-globe.no-gl{height:auto;cursor:default;padding:18px}.globe-nogl{margin:0 0 28px}.landing{display:block;padding:0;background:#0b0a10;scroll-behavior:smooth}.landing-inner{margin:0 auto;padding:8px 16px 40px}.hero{position:relative;min-height:100vh;min-height:100svh;display:grid;grid-template-columns:minmax(320px,440px) minmax(0,1fr);align-items:center;gap:clamp(16px,4vw,56px);padding:32px clamp(16px,5vw,72px) 72px;max-width:1360px;margin:0 auto}.hero-sky{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(1px 1px at 12% 18%,rgba(255,255,255,.55),transparent 60%),radial-gradient(1px 1px at 27% 62%,rgba(255,255,255,.35),transparent 60%),radial-gradient(1.2px 1.2px at 41% 12%,rgba(255,255,255,.5),transparent 60%),radial-gradient(1px 1px at 63% 28%,rgba(255,255,255,.4),transparent 60%),radial-gradient(1px 1px at 78% 8%,rgba(255,255,255,.45),transparent 60%),radial-gradient(1.3px 1.3px at 88% 44%,rgba(255,255,255,.35),transparent 60%),radial-gradient(1px 1px at 8% 82%,rgba(255,255,255,.3),transparent 60%),radial-gradient(1px 1px at 52% 86%,rgba(255,255,255,.25),transparent 60%),radial-gradient(ellipse 120% 60% at 50% 115%,rgba(214,140,72,.28),transparent 70%),radial-gradient(ellipse 80% 70% at 70% 40%,rgba(70,92,150,.22),transparent 70%),linear-gradient(180deg,#0b0c18,#121225 55%,#1d1620)}.hero-text{display:grid;gap:18px;align-content:center;animation:fade-up 1.6s ease both}.hero-text .brand{font-size:1.15rem;opacity:.9}.hero-line{font-family:var(--serif);font-weight:400;font-size:clamp(1.9rem,3.6vw,2.9rem);line-height:1.35;margin:0;letter-spacing:.02em}.hero-line em{font-style:normal;color:var(--gold)}.breath-cue{position:relative;height:1.4em;margin:-4px 0 4px;font-family:var(--serif);color:var(--muted);letter-spacing:.4em;font-size:.95rem}.breath-cue span{position:absolute;left:0;top:0;opacity:0}.breath-cue .in{animation:cue-in 10s ease-in-out infinite}.breath-cue .out{animation:cue-out 10s ease-in-out infinite}@keyframes cue-in{0%{opacity:0}8%,32%{opacity:.85}40%,to{opacity:0}}@keyframes cue-out{0%,38%{opacity:0}48%,88%{opacity:.85}to{opacity:0}}.place-card{display:grid;grid-template-columns:96px 1fr;gap:12px 14px;align-items:center;padding:14px;border-radius:18px;background:#14121c8c;border:1px solid rgba(233,194,122,.22);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.place-card>.thumb{width:96px;height:72px;border-radius:12px}.place-info{display:grid;gap:2px;min-width:0}.place-info small{color:var(--gold);font-size:.72rem;letter-spacing:.15em}.place-info strong{font-family:var(--serif);font-weight:500;font-size:1.25rem}.place-info span{color:var(--muted);font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.place-info .live{color:var(--ink);opacity:.8}.place-card .enter-btn{grid-column:1 / -1;padding:.85rem 1rem;font-size:1.05rem;border-radius:14px;letter-spacing:.2em}.place-card .error,.place-card>.muted{grid-column:1 / -1;margin:0}.more-rooms{grid-column:1 / -1;font-size:.85rem;color:var(--muted)}.more-rooms summary{cursor:pointer}.more-rooms .rooms li{padding:8px 0}.place-card .hint{grid-column:1 / -1;margin:0;font-size:.78rem}.hero-globe{position:relative;height:min(86vh,820px);min-height:360px;animation:fade-in 2.4s ease both}.hero-globe .world-globe{height:100%;border:0;border-radius:0;background:none}.breath-ring{position:absolute;left:50%;top:50%;height:84%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 0 80px 20px #e9c27a1a,inset 0 0 60px #e9c27a14;border:1px solid rgba(233,194,122,.12);animation:breathe 10s ease-in-out infinite}@keyframes breathe{0%{transform:translate(-50%,-50%) scale(.96);opacity:.5}40%{transform:translate(-50%,-50%) scale(1.06);opacity:1}to{transform:translate(-50%,-50%) scale(.96);opacity:.5}}@keyframes fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.scroll-cue{position:absolute;left:50%;bottom:18px;transform:translate(-50%);background:none;border:0;color:var(--muted);font-size:.85rem;letter-spacing:.15em;cursor:pointer;animation:fade-in 3s ease both}.scroll-cue:hover{color:var(--ink)}.section-title{font-family:var(--serif);font-weight:400;font-size:1.4rem;margin:0 0 12px}.landing .browser{max-width:1100px;margin:0 auto}.landing .footnote{max-width:1100px;margin:1.6rem auto 0}@media (prefers-reduced-motion: reduce){.breath-ring,.breath-cue span,.hero-text,.hero-globe{animation:none}.breath-cue .in{opacity:.85}}@media (max-width: 860px){.hero{grid-template-columns:1fr;padding:20px 16px 64px;gap:4px;align-content:start}.hero-globe{order:-1;height:52vh;min-height:300px;margin:0 -16px}.breath-ring{height:82%}.hero-text{gap:12px}.hero-text .brand{position:absolute;top:16px;left:16px}.hero-line{font-size:1.6rem}}.place-card .back-today{grid-column:1 / -1;justify-self:start;background:none;border:0;padding:0;color:var(--gold);font-size:.82rem;cursor:pointer}.place-card .back-today:hover{text-decoration:underline}.chip.icon-only{padding:.45rem}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.presence{display:flex;align-items:center;gap:12px;padding:.45rem .95rem;border-radius:999px;background:#0e0c1480;border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:.85rem;color:var(--muted);white-space:nowrap}.presence span{display:inline-flex;align-items:center;gap:5px}.presence b{color:var(--ink);font-weight:600;font-size:.95rem;font-variant-numeric:tabular-nums}.presence small{opacity:.7}.presence i{width:1px;height:14px;background:var(--line)}.panel.left.scene-info{width:min(320px,calc(100vw - 32px));padding:14px 14px 12px;display:grid;gap:10px;background:#0e0c148c}.scene-info .si-head{display:grid;grid-template-columns:64px 1fr;gap:10px;align-items:center;padding-right:20px}.scene-info .si-head img{width:64px;height:48px;object-fit:cover;border-radius:10px}.scene-info .si-head div{display:grid;gap:1px;min-width:0}.scene-info .si-head small{color:var(--gold);font-size:.7rem;letter-spacing:.15em}.scene-info .si-head strong{font-family:var(--serif);font-weight:500;font-size:1.12rem}.scene-info .si-head span{color:var(--muted);font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.si-desc{margin:0;font-size:.84rem;line-height:1.65;color:#f5ede2db;cursor:pointer;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.si-desc.open{-webkit-line-clamp:unset}.scene-info .credit{margin:0;font-size:.72rem}.si-react{display:flex;gap:8px}.si-react button,.si-actions button{display:inline-flex;align-items:center;gap:6px;padding:.42rem .8rem;border-radius:999px;border:1px solid var(--line);background:#ffffff0a;color:var(--ink);font-size:.85rem;cursor:pointer;transition:transform .15s,background .2s}.si-react button span{font-variant-numeric:tabular-nums}.si-react button:active{transform:scale(.94)}.si-react .like.on{color:#ff7a8a;border-color:#ff7a8a99;background:#ff7a8a1f}.si-react .dislike.on{color:#9fb2d8;border-color:#9fb2d899;background:#9fb2d81f}.si-actions{display:flex;gap:8px}.si-actions button:first-child{border-color:#e9c27a80;color:var(--gold)}@media (max-width: 640px){.presence{gap:8px;padding:.35rem .7rem;font-size:.78rem}.presence small{display:none}}.place-card .random-btn{grid-column:1 / -1;display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:.6rem 1rem;border-radius:14px;border:1px solid rgba(233,194,122,.35);background:#e9c27a0f;color:var(--gold);font-size:.92rem;cursor:pointer;letter-spacing:.1em}.place-card .random-btn:hover{background:#e9c27a24}.history{margin-bottom:22px}.history .section-title{display:flex;align-items:baseline;gap:12px}.history .section-title .link{background:none;border:0;color:var(--muted);font-size:.8rem;cursor:pointer;padding:0}.history-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(170px,200px);gap:10px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}.country-chips,.history-row{scrollbar-color:rgba(233,194,122,.35) transparent}.headphone-tip{display:inline-flex;align-items:center;gap:8px;margin:-6px 0 0;font-size:.88rem;color:#f5ede2cc}.headphone-tip svg{color:var(--gold);flex:none}.section-title small{font-family:var(--sans);font-size:.78rem;margin-left:10px}.hero-sub{margin:-6px 0 0;font-family:var(--serif);font-size:clamp(1.05rem,1.6vw,1.25rem);color:#f5ede2d1;letter-spacing:.06em}.hero-live{margin:0;display:inline-flex;align-items:center;gap:8px;font-size:.88rem;color:var(--muted)}.hero-live em{font-style:normal;color:var(--gold);font-weight:600}.hero-live .dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green);animation:breathe-dot 10s ease-in-out infinite}@keyframes breathe-dot{0%,to{opacity:.45}40%{opacity:1}}.hero .hero-line{font-size:clamp(1.35rem,2.3vw,2.1rem);line-height:1.45;letter-spacing:.04em}.hero .hero-line span{display:block;white-space:nowrap}@media (max-width: 860px){.hero .hero-line{font-size:clamp(1.2rem,6vw,1.6rem)}}.scene-preview{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:#0b0a10}.scene-preview canvas{width:100%;height:100%;display:block}.sp-still{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.2s ease}.sp-still.on{opacity:1}.sp-still.blur{filter:blur(14px) saturate(1.1);transform:scale(1.06)}.sp-shade{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,rgba(8,7,12,.72) 0%,rgba(8,7,12,.35) 38%,transparent 62%),linear-gradient(0deg,rgba(8,7,12,.78) 0%,rgba(8,7,12,.2) 32%,transparent 55%),linear-gradient(180deg,rgba(8,7,12,.45) 0%,transparent 18%)}.lang-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;font:inherit;font-size:.78rem;color:var(--muted);cursor:pointer;padding:.38rem 1.7rem .38rem .8rem;min-height:32px;border-radius:999px;border:1px solid var(--line);background:var(--glass) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23bdb0a2' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right .7rem center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);opacity:.75;transition:opacity .2s,color .2s,border-color .2s}.lang-select:hover,.lang-select:focus-visible{opacity:1;color:var(--ink);border-color:#e9c27a73;outline:none}.lang-select option{background:#1a171e;color:var(--ink)}.lang-hero{position:absolute;top:18px;right:20px;z-index:3}.hero-tools{position:absolute;top:18px;right:20px;z-index:3;display:flex;gap:8px;align-items:center}.hero-tools .lang-hero{position:static}.acct-chip{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;min-height:32px;padding:.38rem .8rem;border-radius:999px;color:var(--muted);background:var(--glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);opacity:.8;font-variant-numeric:tabular-nums;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.acct-chip:hover{opacity:1;color:var(--ink)}.acct-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);flex:none}.acct-chip.unsaved .acct-dot{background:#e58a6b;box-shadow:0 0 0 3px #e58a6b40;animation:acctPulse 2s ease-in-out infinite}@keyframes acctPulse{50%{box-shadow:0 0 0 6px #e58a6b0d}}.acct-toast{position:fixed;z-index:15;left:50%;bottom:22px;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:10px 12px 10px 16px;font-size:.86rem;max-width:calc(100vw - 32px);flex-wrap:wrap}.acct-toast button{min-height:32px;padding:.3rem .8rem}.acct-panel{width:min(440px,calc(100vw - 32px));display:grid;gap:12px;max-height:calc(100vh - 32px);overflow-y:auto}.acct-panel h3,.acct-panel p{margin:0}.acct-id{display:flex;align-items:center;gap:10px}.acct-id code{flex:1;font-size:1.35rem;letter-spacing:.04em;color:var(--gold);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.acct-id.code code{font-size:1.05rem;letter-spacing:.08em;color:var(--ink);background:#00000040;padding:8px 10px;border-radius:10px}.acct-row{display:flex;align-items:center;gap:8px}.acct-row span{flex:none;color:var(--muted);font-size:.86rem}.acct-panel input{flex:1;min-width:0;font:inherit;color:var(--ink);background:#00000040;border:1px solid var(--line);border-radius:10px;padding:.5rem .7rem}.acct-panel input:focus-visible{outline:2px solid var(--gold);outline-offset:1px}.acct-recovery{display:grid;gap:8px;padding-top:10px;border-top:1px solid var(--line)}.acct-recovery .warn{color:#f0b58f}.acct-recover{border-top:1px solid var(--line);padding-top:10px}.acct-recover summary{cursor:pointer;color:var(--muted);font-size:.88rem}.acct-recover[open]{display:grid;gap:8px}.acct-msg{color:var(--gold);font-size:.88rem}.acct-foot{display:flex;justify-content:space-between;gap:8px}[dir=rtl] .hero-tools{right:auto;left:18px}.lang-room{min-height:36px}@media (max-width: 640px){.lang-hero{top:14px;right:16px}.hero-tools{top:14px;right:16px;gap:6px}.acct-chip{max-width:120px}.lang-room{padding-right:1.4rem;padding-left:.6rem;max-width:92px}}.hero.hero-a{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;max-width:none;padding:28px clamp(16px,4vw,56px) 76px}.hero-a .hero-sky{opacity:.6}.hero-a .hero-text{max-width:470px;gap:14px;text-shadow:0 1px 12px rgba(0,0,0,.55)}.hero-a .hero-text .brand{position:absolute;top:24px;left:clamp(16px,4vw,56px)}.hero-a .place-card{background:#0e0c1480}.mini-globe{position:relative;flex:none;width:clamp(170px,18vw,240px);aspect-ratio:1;border-radius:50%;padding:0;border:0;background:none;cursor:pointer;margin-bottom:8px}.mini-globe .world-globe{position:absolute;top:0;right:0;bottom:0;left:0;height:100%;border:0;border-radius:50%;background:radial-gradient(circle,#0a0c188c,#0a0c1800 70%);pointer-events:none}.mini-globe .breath-ring{height:92%}.mini-globe-label{position:absolute;left:50%;bottom:-6px;transform:translate(-50%);font-size:.78rem;letter-spacing:.25em;color:#f5ede2d9;background:#0e0c148c;padding:3px 10px;border-radius:999px;border:1px solid var(--line);white-space:nowrap;transition:background .2s}.mini-globe:hover .mini-globe-label{background:#e9c27a40}.world-globe.mini .globe-tip{display:none}.globe-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:radial-gradient(ellipse at 50% 45%,#12162ceb,#06060cf7);animation:fade-in .5s ease both}.globe-overlay .world-globe{height:100%;border:0;border-radius:0;background:none}.globe-close{position:absolute;top:18px;right:22px;z-index:2;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:#0e0c1499;color:var(--ink);font-size:1.5rem;cursor:pointer}@media (max-width: 860px){.hero.hero-a{flex-direction:column;align-items:stretch;justify-content:flex-end;padding-bottom:64px}.hero-a .mini-globe{position:absolute;top:64px;right:16px;width:120px;margin:0}.hero-a .mini-globe-label{font-size:.68rem}}.hero.hero-a .hero-text{animation:none}.hero.hero-a .hero-text>:not(.brand){animation:fade-in 1.6s ease both}.spin-btn{position:absolute;left:50%;bottom:46px;transform:translate(-50%);z-index:2;display:inline-flex;align-items:center;gap:10px;padding:.85rem 2.2rem;border-radius:999px;border:1px solid rgba(233,194,122,.6);background:#e9c27a29;color:var(--gold);font-size:1.05rem;letter-spacing:.25em;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .2s}.spin-btn:hover{background:#e9c27a47}.spin-btn:disabled{opacity:.55;cursor:default}.spin-card{position:absolute;left:50%;bottom:36px;transform:translate(-50%);z-index:3;width:min(50vw,calc(50vh * 16 / 9),760px);min-width:min(92vw,340px);display:grid;gap:10px;animation:fade-up .7s ease both}.spin-view{position:relative;aspect-ratio:16 / 9;border-radius:18px;overflow:hidden;border:1px solid rgba(233,194,122,.45);box-shadow:0 18px 60px #0000008c}.scene-preview.inline{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.spin-caption{position:absolute;left:0;right:0;bottom:0;padding:14px 16px 12px;display:grid;gap:1px;background:linear-gradient(transparent,#000000b8)}.spin-caption small{color:var(--gold);font-size:.72rem;letter-spacing:.15em}.spin-caption strong{font-family:var(--serif);font-weight:500;font-size:1.3rem}.spin-caption span{color:#f5ede2cc;font-size:.82rem}.spin-actions{display:grid;grid-template-columns:2fr 1fr;gap:10px}.spin-actions button{padding:.8rem 1rem;border-radius:14px;font-size:1rem;letter-spacing:.15em;display:inline-flex;justify-content:center;align-items:center;gap:8px;cursor:pointer}.spin-actions button:not(.primary){border:1px solid var(--line);background:#0e0c1499;color:var(--ink)}.hero.hero-a .hero-text .brand{position:fixed;top:22px;left:clamp(16px,4vw,56px);z-index:40;text-shadow:0 1px 10px rgba(0,0,0,.6)}.seatrow{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;align-items:stretch}.seatrow>span{grid-column:1 / -1;width:auto;display:flex;align-items:center;gap:6px;margin-top:4px;white-space:normal}.seatrow button{min-width:0;overflow:hidden;text-overflow:clip}.panel{overflow-x:hidden}.spin-card{left:0;right:0;margin:0 auto;transform:none}.loading{padding:24px 20px 96px;text-align:center}.load-audio{display:grid;justify-items:center;gap:12px;max-width:760px}.load-audio svg{color:var(--gold);animation:breathe-dot 10s ease-in-out infinite}.load-audio h2{margin:0;font-family:var(--serif);font-weight:500;font-size:clamp(1.5rem,3.4vw,2.4rem);line-height:1.35;color:var(--ink);letter-spacing:.03em}.load-audio p{margin:0;font-size:clamp(1rem,1.7vw,1.2rem);color:#f5ede2c7;line-height:1.6}.load-progress{margin:0;font-size:.95rem}.load-note{position:absolute;left:50%;bottom:24px;transform:translate(-50%);width:min(720px,calc(100vw - 32px));margin:0;font-family:var(--sans);font-size:.78rem;line-height:1.6;color:#bdb0a2bf}.brand-link{text-decoration:none;color:inherit;cursor:pointer}.brand-link:hover span{color:var(--gold)}:lang(ar) *,:lang(hi) *,:lang(th) *{letter-spacing:0!important}[dir=rtl] .hero.hero-a .hero-text .brand{left:auto;right:clamp(16px,4vw,56px)}[dir=rtl] .lang-hero{right:auto;left:18px}.back-top{position:fixed;right:clamp(14px,2.5vw,32px);bottom:32px;z-index:30;width:52px;height:52px;border-radius:50%;display:grid;place-content:center;gap:0;border:1px solid rgba(233,194,122,.5);background:#0e0c14b8;color:var(--gold);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;animation:fade-in .4s ease both;box-shadow:0 6px 24px #0006}.back-top span{font-size:1.2rem;line-height:1}.back-top small{font-size:.62rem;color:var(--muted)}.back-top:hover{background:#e9c27a33}[dir=rtl] .back-top{right:auto;left:clamp(14px,2.5vw,32px)}.site-notice{position:fixed;top:14px;left:50%;transform:translate(-50%);z-index:45;display:flex;align-items:center;gap:10px;max-width:min(720px,calc(100vw - 32px));padding:.5rem .6rem .5rem 1rem;border-radius:999px;background:#e9c27a29;border:1px solid rgba(233,194,122,.5);color:var(--ink);font-size:.9rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.site-notice button{background:none;border:0;color:var(--muted);font-size:1.1rem;cursor:pointer}.admin{min-height:100vh;background:#0f0e14;color:var(--ink);font-family:var(--sans)}.admin-login{display:grid;place-content:center;gap:14px;text-align:center;padding:24px}.admin-login form{display:flex;gap:8px}.admin-login input,.admin input,.admin select,.admin textarea{background:#ffffff0d;border:1px solid var(--line);color:var(--ink);border-radius:8px;padding:.45rem .7rem;font:inherit}.admin-login input{min-width:320px}.admin button{background:#ffffff0f;border:1px solid var(--line);color:var(--ink);border-radius:8px;padding:.4rem .8rem;cursor:pointer;font:inherit;font-size:.9rem}.admin button.primary{background:var(--gold);color:var(--gold-ink);border-color:var(--gold)}.admin-top{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:16px;padding:12px 20px;background:#15131c;border-bottom:1px solid var(--line)}.admin-top nav{display:flex;gap:4px;flex:1}.admin-top nav button.on{background:#e9c27a2e;border-color:var(--gold)}.admin-top a{color:var(--muted)}.admin-main{padding:18px 20px 40px}.admin-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}.admin-bar label{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.9rem}.admin-msg{background:#5fd08a1a;border:1px solid rgba(95,208,138,.35);padding:8px 12px;border-radius:8px}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-grid>.admin-bar,.admin-grid>.kpis,.admin-grid>.wide{grid-column:1 / -1}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.kpi{background:#17151f;border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:grid;gap:4px}.kpi small{color:var(--muted)}.kpi b{font-size:1.5rem;font-weight:600;color:var(--gold)}.admin .card{background:#17151f;border:1px solid var(--line);border-radius:12px;padding:12px 14px;overflow:auto}.admin .card h3{margin:0 0 8px;font-size:1rem;font-weight:500}.chart{width:100%;height:190px}.chart .bar{fill:#e9c27aa6}.chart .bar:hover{fill:var(--gold)}.chart .line{stroke:#7fe0c6;stroke-width:2}.chart .tick{fill:var(--muted);font-size:10px}.admin-table{width:100%;border-collapse:collapse;font-size:.86rem;margin-bottom:8px}.admin-table th,.admin-table td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line);vertical-align:middle}.admin-table th{color:var(--muted);font-weight:500;position:sticky;top:0;background:#17151f}.admin-table td small{display:block;color:var(--muted)}.admin-table.scenes img{width:72px;height:40px;object-fit:cover;border-radius:6px}.admin-table img.thumb{width:96px;height:48px;object-fit:cover;border-radius:6px}.admin-table tr.dim td{opacity:.55}.admin-table .actions{display:flex;gap:6px;align-items:center}.admin-table .actions a{color:var(--gold);font-size:.85rem}.admin-table code{font-size:.78rem;color:var(--muted);cursor:pointer;word-break:break-all}.badge{padding:2px 8px;border-radius:999px;font-size:.78rem;border:1px solid var(--line)}.badge.ACTIVE{color:var(--green);border-color:#5fd08a80}.badge.HIDDEN{color:var(--danger);border-color:#ef9a8580}.badge.ARCHIVED{color:var(--muted)}.badge.SCHEDULED{color:var(--gold);border-color:#e9c27a80}.admin-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#0009;display:grid;place-items:center;padding:20px}.admin-modal-box{width:min(980px,100%);max-height:92vh;display:grid;gap:10px;background:#17151f;border:1px solid var(--line);border-radius:14px;padding:16px}.admin-modal-box h3{margin:0}.admin-modal-box textarea{min-height:56vh;font-family:ui-monospace,monospace;font-size:.8rem;white-space:pre}.admin .upload{position:relative;overflow:hidden;background:var(--gold);color:var(--gold-ink)!important;padding:.4rem .9rem;border-radius:8px;cursor:pointer}.admin .upload input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.notice-form{display:grid;gap:10px;max-width:720px}.notice-form label{display:grid;gap:4px;color:var(--muted);font-size:.9rem}.notice-form label.row,.ad-langs label{display:inline-flex;align-items:center;gap:6px}.notice-form img.thumb{width:240px;height:auto;border-radius:8px}.ad-langs{display:flex;flex-wrap:wrap;gap:6px 14px;border:1px solid var(--line);border-radius:8px;padding:8px 12px;color:var(--muted);font-size:.9rem}.admin-actions{display:inline-flex;flex-wrap:wrap;gap:4px}@media (max-width: 900px){.admin-grid{grid-template-columns:1fr}}.si-tod{display:flex;flex-wrap:wrap;gap:6px}.si-tod button{padding:.28rem .65rem;border-radius:999px;border:1px solid var(--line);background:#ffffff0a;color:var(--ink);font-size:.78rem;cursor:pointer}.si-tod button.on{border-color:var(--gold);color:var(--gold);background:#e9c27a1f}.si-tod button:disabled{cursor:progress}.si-tod button.loading,.times button.loading{animation:tod-wait 1s ease-in-out infinite}.times button:disabled{cursor:progress}@keyframes tod-wait{50%{opacity:.45}}.pager{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin:18px 0 6px}.pager button{min-width:2.4rem;padding:.45rem .7rem;border-radius:999px;font-variant-numeric:tabular-nums}.pager button.on{background:var(--gold);color:#1b140a;border-color:transparent}.pager button:disabled{opacity:.35;cursor:default}.pager .gap{color:var(--muted);padding:0 2px}.pager .info{width:100%;text-align:center;font-size:.78rem;color:var(--muted)}.modal.guide{position:relative;max-width:640px;width:100%;max-height:min(86vh,900px);overflow-y:auto;padding:26px 28px 20px;text-align:left}.guide h3{font-size:1.5rem;margin-bottom:6px}.guide .guide-lead{color:var(--muted);margin-top:0}.guide section{margin-top:18px}.guide h4{font-family:var(--serif);font-weight:500;font-size:1.05rem;margin:0 0 8px;color:var(--gold)}.guide ol,.guide ul{margin:0;padding-inline-start:1.3em;display:grid;gap:6px;line-height:1.65}.guide table{width:100%;border-collapse:collapse;font-size:.86rem;line-height:1.5}.guide th,.guide td{text-align:start;vertical-align:top;padding:7px 8px;border-bottom:1px solid var(--line)}.guide th{color:var(--muted);font-weight:500}.guide td:first-child{white-space:nowrap}.guide b{color:var(--ink);font-weight:600}.guide-close{position:absolute;top:10px;inset-inline-end:12px;width:34px;height:34px;border-radius:50%;font-size:1.2rem;line-height:1}.guide-ok{margin-top:18px;width:100%}@media (max-width: 560px){.modal.guide{padding:22px 16px 16px;max-height:90vh}.guide td:first-child{white-space:normal}}.footnote .link{background:none;border:0;padding:0;font:inherit;color:var(--gold);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.browse-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.browse-head .section-title{margin:0}.browse-head .search{flex:0 1 280px;min-width:200px;padding:.5rem 1rem;border-radius:999px;border:1px solid var(--line);background:#00000040;color:var(--ink);font:inherit;font-size:.88rem}.browse-head .search::placeholder{color:var(--muted)}.browse-head .search:focus{outline:none;border-color:#e9c27a99}@media (max-width: 640px){.browse-head .search{flex:1 1 100%}}.sit-flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none;overflow:hidden;animation:sit-flash-life 3.2s linear forwards}.sit-flash:before{content:"";position:absolute;left:50%;bottom:-40vmax;width:80vmax;height:80vmax;margin-left:-40vmax;border-radius:50%;background:radial-gradient(circle,transparent 58%,rgba(255,217,138,.55) 66%,rgba(255,217,138,.12) 71%,transparent 74%);transform:scale(.15);opacity:0;animation:sit-ring 2.6s cubic-bezier(.2,.7,.2,1) .1s forwards;mix-blend-mode:screen}.sit-flash:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 100%,rgba(255,210,130,.28),transparent 60%);opacity:0;animation:sit-warm 3s ease-out forwards;mix-blend-mode:screen}@keyframes sit-ring{0%{transform:scale(.15);opacity:0}15%{opacity:1}to{transform:scale(1.6);opacity:0}}@keyframes sit-warm{0%{opacity:0}25%{opacity:1}to{opacity:0}}@keyframes sit-flash-life{to{opacity:1}}@media (prefers-reduced-motion: reduce){.sit-flash:before{display:none}.sit-flash:after{animation-duration:1.6s}.sit-flash{animation-duration:1.6s}}.practice{margin:14px 0;padding:12px 14px;border-radius:14px;background:#e9c27a14;border:1px solid rgba(233,194,122,.25)}.practice-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.practice-level{display:flex;align-items:baseline;gap:10px;margin:8px 0 6px}.practice-n{font-family:var(--serif);font-size:1.6rem;color:var(--gold);line-height:1}.practice-name{font-family:var(--serif);font-size:1.15rem}.practice-bar{height:6px;border-radius:3px;background:#ffffff14;overflow:hidden}.practice-bar i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,rgba(233,194,122,.55),var(--gold))}.practice p{margin:6px 0 0}.sit-summary{position:fixed;left:50%;bottom:96px;transform:translate(-50%);z-index:8;padding:14px 18px;border-radius:16px;text-align:center;max-width:min(92vw,420px)}.sit-summary p{margin:0 0 6px}.sit-summary b{font-family:var(--serif);font-weight:500;font-size:1.1rem;color:var(--gold)}.sit-minutes{-moz-appearance:none;appearance:none;-webkit-appearance:none;font:inherit;font-weight:600;color:var(--ink);background:transparent;border:0;border-bottom:1px dashed rgba(233,194,122,.5);padding:0 1.1rem 1px 0;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23e9c27a' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 2px center}.sit-minutes:focus-visible{outline:1px solid var(--gold);outline-offset:2px}.sit-minutes option{background:#1a171e;color:var(--ink)}.sit-quote{position:fixed;left:50%;top:22%;transform:translate(-50%);z-index:6;width:min(86vw,640px);text-align:center;pointer-events:none;opacity:0;animation:sit-quote-life 13s ease-in-out 3s forwards;text-shadow:0 1px 12px rgba(0,0,0,.75)}.sit-quote p{margin:0 0 10px;font-family:var(--serif);font-size:clamp(1.15rem,2.6vw,1.6rem);line-height:1.7;color:#fff6e4;letter-spacing:.04em}.sit-quote small{color:#ffecc8bf;font-size:.85rem;letter-spacing:.06em}@keyframes sit-quote-life{0%{opacity:0;transform:translate(-50%,6px)}12%{opacity:1;transform:translate(-50%)}85%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion: reduce){.sit-quote{animation-name:sit-quote-fade}@keyframes sit-quote-fade{0%,to{opacity:0}12%,85%{opacity:1}}}.ui-hidden .sit-quote{display:none}.sit-summary-quote{margin:8px 0 10px;padding:0;font-family:var(--serif);font-size:.92rem;line-height:1.6;color:var(--ink);opacity:.85}.sit-summary-quote cite{display:block;margin-top:4px;font-style:normal;font-family:var(--sans);font-size:.75rem;color:var(--muted)}.modal.invite{max-width:480px}.modal.invite code{word-break:break-all;-webkit-user-select:all;user-select:all}.modal.invite>.primary{width:100%;margin:6px 0}.ad-slot{display:block;color:var(--ink);text-decoration:none}.ad-slot .ad-label{color:var(--gold);font-size:.7rem;letter-spacing:.04em;opacity:.9}.ad-slot strong{font-family:var(--serif);font-weight:500}.ad-slot span{color:var(--muted);font-size:.8rem}.ad-slot.scene-tile{opacity:1;background:#ffffff0a}.ad-slot.scene-tile>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.ad-slot.scene-tile:not(:has(>img))>div{top:0;right:0;bottom:0;left:0;align-content:end;background:linear-gradient(160deg,#e9c27a1f,#00000080)}.ad-summary{display:flex;gap:10px;align-items:center;text-align:left;margin:0 0 10px;padding:8px;border:1px solid var(--line);border-radius:12px;background:#ffffff0a}.ad-summary>img{width:72px;height:54px;object-fit:cover;border-radius:8px;flex:none}.ad-summary>div{display:grid;gap:2px;min-width:0}.ad-summary strong{font-size:.92rem}.ad-summary span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ad-slot:hover{border-color:var(--gold)}
