:root{--ivory:#fbf5e9;--cream:#f3e6c8;--gold:#c99a3c;--gold-soft:#e6c77e;--ink:#3b2a17;--ink-soft:#6b5235;--glass:#fff9ec94;--glass-line:#c99a3c8c;--serif:"Cormorant Garamond", "Noto Serif", Georgia, serif;--sans:"Be Vietnam Pro", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow:hidden}.app{position:fixed;inset:0}.app canvas{touch-action:none}.btn{font:500 15px/1 var(--sans);color:var(--ink);background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(10px);cursor:pointer;border-radius:999px;padding:12px 20px;transition:background .2s,transform .15s}.btn:hover:not(:disabled){background:#fff9ecd9}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.55;cursor:default}.btn--primary{color:#fffaf0;background:linear-gradient(#e8c472,#c3912f);border-color:#b5832a;box-shadow:0 6px 24px #c99a3c73}.btn--primary:hover:not(:disabled){background:linear-gradient(#f0cf80,#c99a3c)}.btn--gold{color:#ffe7a6;background:linear-gradient(#b8321f,#7d150d);border-color:#e2b450;box-shadow:inset 0 0 0 1px #ffd77840,0 6px 22px #d6a03280}.btn--gold:hover:not(:disabled){background:linear-gradient(#c93d27,#8b1a10)}.blessing{text-align:center;pointer-events:none;color:#ffe7a6;background:radial-gradient(at 50% 0,#781e0eeb,#280a06e6);border:1px solid #e2b450b3;border-radius:14px;width:min(500px,100% - 32px);padding:16px 22px 14px;animation:7s forwards blessing;position:absolute;top:18%;left:50%;transform:translate(-50%);box-shadow:0 0 0 4px #280a0659,0 10px 40px #ffbe5059}.blessing small{letter-spacing:.18em;text-transform:uppercase;color:#e2b450;font-size:11px;display:block}.blessing p{color:#fff1c8;text-shadow:0 0 14px #ffc85a99;margin:6px 0 8px;font-size:19px;font-weight:600;line-height:1.4}.blessing em{color:#ffe7a6bf;font-size:12.5px}@keyframes blessing{0%{opacity:0;transform:translate(-50%,-8px)}12%,82%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-6px)}}.hud{pointer-events:none;animation:2s fadein;position:absolute;inset:0}@keyframes fadein{0%{opacity:0}}.hud>*{pointer-events:auto}.hud__top{padding:max(12px, env(safe-area-inset-top)) 16px 12px;justify-content:space-between;align-items:center;gap:8px;display:flex;position:absolute;top:0;left:0;right:0}.brand{white-space:nowrap;font:600 22px/1 var(--serif);color:var(--ink);letter-spacing:.04em;background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(10px);border-radius:999px;align-items:center;gap:8px;padding:7px 14px 7px 10px;display:flex}.brand__mark{color:var(--gold);font-size:18px}.hud__tools{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.chip{font:500 12px/1 var(--sans);color:var(--ink);background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(10px);border-radius:999px;padding:8px 12px}button.chip{cursor:pointer}.hud__hint{text-align:center;background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:18px;width:max-content;max-width:calc(100% - 32px);margin:0;padding:8px 14px;font-size:13px;line-height:1.4;position:absolute;top:72px;left:50%;transform:translate(-50%)}.hud__bottom{padding:8px 16px max(12px, env(safe-area-inset-bottom));flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;bottom:0;left:0;right:0}.stations{border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(10px);scrollbar-width:none;background:#fff9ec6b;border-radius:999px;gap:0;max-width:100%;padding:2px;display:flex;overflow-x:auto}.station{white-space:nowrap;font:500 12px/1 var(--sans);color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:999px;flex:none;padding:6px 11px}.station--on{color:var(--ink);background:#c99a3c33}.icon{flex:none;display:block}.here{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.here:empty{display:none}.btn--here{align-items:center;gap:6px;padding:6px 13px 6px 10px;font-size:13px;display:inline-flex}.btn--here .icon{width:16px;height:16px}.dock{background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(10px);border-radius:16px;gap:1px;padding:3px;display:flex;box-shadow:0 4px 16px #3c280a1a}.tile{cursor:pointer;min-width:62px;color:var(--ink);font:500 11.5px/1.1 var(--sans);white-space:nowrap;background:0 0;border:0;border-radius:13px;flex-direction:column;align-items:center;gap:3px;padding:6px 8px 5px;transition:background .2s,transform .15s;display:flex}.tile .icon{color:#9a6a1c}.tile:hover:not(:disabled){background:#fff9ecb3}.tile:active:not(:disabled){transform:scale(.95)}.tile:disabled{opacity:.45;cursor:default}.tile--on{background:#c99a3c57;box-shadow:inset 0 0 0 1px #b5832a8c}.dock{align-items:stretch;position:relative}.dock__sep{background:#6b523538;width:1px;margin:6px 3px}.sheet{z-index:6;border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(14px);background:#fffaeef7;border-radius:20px;grid-template-columns:repeat(4,1fr);gap:6px;width:min(440px,100vw - 24px);padding:10px;animation:.18s sheetin;display:grid;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 14px 40px #3c280a40}@keyframes sheetin{0%{opacity:0;transform:translate(-50%,8px)}}.sheet__item{cursor:pointer;text-align:center;color:var(--ink);font:500 12.5px/1.25 var(--sans);touch-action:manipulation;background:0 0;border:0;border-radius:14px;flex-direction:column;justify-content:flex-start;align-items:center;gap:7px;padding:12px 6px 10px;display:flex}.sheet__item .icon{color:#9a6a1c}.sheet__item:hover:not(:disabled){background:#c99a3c24}.sheet__item:disabled{opacity:.45;cursor:default}.sheet__item--on{background:#c99a3c4d;box-shadow:inset 0 0 0 1px #b5832a80}.joystick{left:max(18px, env(safe-area-inset-left));bottom:calc(max(16px, env(safe-area-inset-bottom)) + 150px);touch-action:none;background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(10px);border-radius:50%;place-items:center;width:124px;height:124px;display:grid;position:absolute}.joystick:before{content:"▲";color:var(--ink-soft);opacity:.7;font-size:11px;position:absolute;top:8px}.joystick__knob{pointer-events:none;background:#c99a3c8c;border:1px solid #fff0d2b3;border-radius:50%;width:52px;height:52px;box-shadow:0 2px 10px #3c280a40}@media (orientation:landscape) and (height<=500px){.joystick{width:110px;height:110px}}@media (width<=520px){.station{padding:7px 9px;font-size:11.5px}.tile{white-space:normal;text-align:center;flex:1 1 0;min-width:0;padding:8px 2px 6px;font-size:11px;line-height:1.15}.tile span{justify-content:center;align-items:flex-start;min-height:2.3em;display:flex}.sheet__item{padding:11px 4px 9px;font-size:12px}.dock{width:100%}.dock__sep{margin:8px 1px}.btn{padding:11px 15px;font-size:14px}.btn--here{padding:7px 12px 7px 9px;font-size:12.5px}.brand{font-size:19px}}.away{z-index:40;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1c1209b8;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.away__card{text-align:center;background:var(--ivory);border:1px solid var(--glass-line);border-radius:18px;justify-items:center;gap:12px;max-width:380px;padding:24px 22px;display:grid;box-shadow:0 18px 50px #00000059}.away__title{font:600 24px/1.25 var(--serif);color:var(--ink);margin:0}.away__note{font:400 14.5px/1.5 var(--sans);color:var(--ink-soft);margin:0}.veil{z-index:20;pointer-events:none;opacity:0;background:radial-gradient(#fff,#f4efe4 70%);place-items:center;transition:opacity 1.5s;display:grid;position:fixed;inset:0}.veil--on{opacity:1;pointer-events:auto}.veil p{font:600 clamp(22px, 4vw, 34px)/1.3 var(--serif);color:var(--ink-soft);letter-spacing:.04em;text-align:center;margin:0;padding:0 16px}.presence{font:500 13px/1 var(--sans);color:var(--ink-soft);background:var(--glass);border:1px solid var(--glass-line);white-space:nowrap;border-radius:999px;padding:9px 12px}.presence:before{content:"";background:#b0a58f;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.presence--online:before{background:#4f9a5a}.presence--connecting:before{background:#d9a13a}.chip{white-space:nowrap}@media (width<=640px){.hud__top{flex-wrap:wrap;row-gap:6px}.hud__tools{justify-content:flex-start;width:100%}.chip--fps{display:none}.presence{padding:8px 10px;font-size:12px}}html{overscroll-behavior:none}.hud,.joystick{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.btn,.chip,.station,.tile,.swatch{touch-action:manipulation}.stations{touch-action:pan-x}.keep-toast{z-index:12;color:#ffe7a6;width:min(340px,100% - 32px);font:400 13px/1.45 var(--sans);background:linear-gradient(165deg,#2c120bf2,#140805f2);border:1px solid #e2b45099;border-radius:14px;padding:14px 16px;animation:.4s keepin;position:absolute;bottom:96px;right:16px;box-shadow:0 10px 30px #00000059}.keep-toast p{font:600 15.5px/1.35 var(--serif);color:#fff1c8;margin:0 0 4px}.keep-toast small{color:#ffe7a6cc;font-size:12.5px;display:block}.keep-toast div{gap:8px;margin-top:10px;display:flex}.keep-toast .btn{padding:9px 14px;font-size:13.5px}@keyframes keepin{0%{opacity:0;transform:translateY(10px)}}@media (width<=640px){.keep-toast{animation:none;top:64px;bottom:auto;right:50%;transform:translate(50%)}}.keep__ok{font:600 15px/1.4 var(--serif);color:var(--ink);margin:0}.chip--account{text-overflow:ellipsis;align-items:center;gap:6px;max-width:180px;display:inline-flex;overflow:hidden}.chip--signin{color:#fffaf0;background:linear-gradient(#e8c472,#c3912f);border-color:#b5832a}.trail-chip,.presence,.hud__tools,.stations,.here,.hud__hint{transition:opacity .6s}.hud--quiet .trail-chip,.hud--quiet .presence,.hud--quiet .hud__tools,.hud--quiet .stations,.hud--quiet .here,.hud--quiet .hud__hint{opacity:0;pointer-events:none}.hud--quiet .dock{opacity:.82;transition:opacity .6s}.hud--quiet .dock:hover,.hud--quiet .dock:focus-within{opacity:1}.rooms{gap:8px;display:grid}.rooms__auto{cursor:pointer;text-align:left;width:100%;color:var(--ivory);font:500 13px/1.3 var(--sans);touch-action:manipulation;background:#d8ac540d;border:1px solid #d8ac5459;border-radius:12px;align-items:baseline;gap:8px;padding:10px 14px;display:flex}.rooms__auto b{color:var(--gold);font-size:14px;font-weight:700}.rooms__auto span{color:var(--ivory-dim)}.rooms__auto.on{border-color:var(--gold);background:#d8ac5429;box-shadow:inset 0 0 0 1px #d8ac5466}.rooms__grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.room{cursor:pointer;color:var(--ivory);font:500 11.5px/1.1 var(--sans);touch-action:manipulation;background:#00000047;border:1px solid #d8ac5447;border-radius:10px;justify-items:center;gap:2px;padding:7px 2px 9px;display:grid;position:relative;overflow:hidden}.room b{font:600 17px/1 var(--serif);color:var(--ivory)}.room span{color:var(--ivory-dim);font-variant-numeric:tabular-nums}.room i{transform-origin:0;background:linear-gradient(90deg,#b8924a,#f0cf86);height:3px;position:absolute;bottom:0;left:0;right:0}.room:hover:not(:disabled){border-color:#d8ac54b3}.room.on{border-color:var(--gold);background:#d8ac542e}.room.on b{color:var(--gold)}.room--here:after{content:"";background:#6fbf73;border-radius:50%;width:6px;height:6px;position:absolute;top:5px;right:5px}.room:disabled{opacity:.4;cursor:default}.rooms__wait{text-align:center;color:var(--ink-dim);grid-column:1/-1;margin:6px 0;font-size:12.5px}.gate-rooms{gap:8px;display:grid}.gate-rooms__line{font:500 13.5px/1.35 var(--sans);color:var(--ivory);justify-content:space-between;align-items:center;gap:10px;display:flex}.gate-rooms__line em{color:var(--ivory-dim);font-size:12px;font-style:normal;display:block}.gate-rooms .keep__plain{flex:none;justify-self:auto}.presence-box{position:relative}.presence{appearance:none}.presence--pick{cursor:pointer}.presence--pick:after{content:"▾";opacity:.6;margin-left:6px;font-size:11px}.presence:disabled{cursor:default}.presence__note{width:max-content;max-width:260px;font:500 12px/1.35 var(--sans);color:var(--ivory);background:#1c0b07e6;border:1px solid #d8ac5473;border-radius:10px;margin:0;padding:7px 10px;position:absolute;top:calc(100% + 6px);left:0}.rooms-pop{z-index:30;width:min(340px,100vw - 32px);color:var(--ivory);background:linear-gradient(165deg,#2c120bf7,#180906fa);border:1px solid #d8ac5499;border-radius:14px;gap:10px;padding:14px;display:grid;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 24px 60px #00000080,inset 0 1px #ffdc961f}.rooms-pop__title{font:600 19px/1.2 var(--serif);color:var(--gold);margin:0}.rooms-pop__note{font:400 12.5px/1.45 var(--sans);color:var(--ivory-dim);margin:-4px 0 0}.rooms-pop__share{cursor:pointer;touch-action:manipulation;color:#2a1408;min-height:42px;font:700 14px/1 var(--sans);background:linear-gradient(#f6dc94,#c9963a);border:1px solid #f3d793;border-radius:999px}.rooms-pop__link{box-sizing:border-box;width:100%;color:var(--ivory);font:500 12.5px/1.2 var(--sans);background:#0000004d;border:1px solid #d8ac5473;border-radius:8px;padding:9px 10px}@media (width<=640px){.rooms-pop{left:0;transform:none}}.gate{z-index:10;color:var(--ivory);background:#0d0604;transition:opacity 1.6s;position:absolute;inset:0;overflow:hidden auto}.gate--leaving{opacity:0;pointer-events:none}.gate__stage{pointer-events:none;position:fixed;inset:0;overflow:hidden}.gate__media{object-fit:cover;width:100%;height:100%;animation:2.4s ease-out both gate-dawn,36s ease-in-out 2.4s infinite alternate gate-breathe;position:absolute;inset:0}@keyframes gate-dawn{0%{opacity:0;filter:brightness(.25)saturate(.6);transform:scale(1.12)}to{opacity:1;filter:none;transform:scale(1.04)}}@keyframes gate-breathe{0%{transform:scale(1.04)}to{transform:scale(1.15)translate(-1.5%,-2%)}}.gate__grade{background:radial-gradient(55% 50% at 50% 64%,#0e06036b,#0000 75%),radial-gradient(130% 95% at 50% 36%,#0000 45%,#0a040299 100%),linear-gradient(#0e0603a8 0%,#0e060333 28%,#0e060314 46%,#1007038c 70%,#100703e6 100%),linear-gradient(#ffaa3c1a,#78280a1f);position:absolute;inset:0}.gate__rays,.gate__rays:before{left:var(--lx,78%);top:var(--ly,6%);mix-blend-mode:screen;border-radius:50%;width:230vmax;height:230vmax;position:absolute;-webkit-mask:radial-gradient(circle,#000 0%,#0000008c 16%,#0000 52%);mask:radial-gradient(circle,#000 0%,#0000008c 16%,#0000 52%)}.gate__rays{background:repeating-conic-gradient(#ffd68c00 0deg 5deg,#ffd68c26 7.5deg,#ffd68c00 10deg 19deg);animation:150s linear infinite gate-rays,3s 1s both gate-fade}.gate__rays:before{content:"";background:repeating-conic-gradient(from 4deg,#ffe8b400 0deg 9deg,#ffe8b421 11deg,#ffe8b400 13deg 27deg);animation:210s linear infinite gate-rays-back;top:50%;left:50%}.gate__rays:after{content:"";background:radial-gradient(circle,#ffecbe8c,#ffc86e2e 30%,#0000 62%);width:46vmax;height:46vmax;animation:7s ease-in-out infinite alternate gate-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes gate-rays{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}@keyframes gate-rays-back{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(-360deg)}}@keyframes gate-pulse{0%{opacity:.65}to{opacity:1}}@keyframes gate-fade{0%{opacity:0}}.gate__clouds{height:22vh;position:absolute;bottom:0;left:0;right:0}.gate__cloud{opacity:.2;mix-blend-mode:screen;animation:linear infinite gate-drift;position:absolute;left:0;-webkit-mask:radial-gradient(48% 44% at 50% 52%,#000 55%,#0000 100%);mask:radial-gradient(48% 44% at 50% 52%,#000 55%,#0000 100%)}.gate__cloud--0{width:clamp(180px,22vw,340px);animation-duration:160s;animation-delay:-40s;bottom:-22%}.gate__cloud--2{opacity:.16;width:clamp(150px,18vw,280px);animation-duration:190s;animation-direction:reverse;animation-delay:-120s;bottom:-14%}.gate__cloud--1,.gate__cloud--3{display:none}@keyframes gate-drift{0%{transform:translate(-70vw)}to{transform:translate(115vw)}}.gate__motes{width:100%;height:100%;animation:2s 1.4s both gate-fade;position:absolute;inset:0}.gate__bloom{opacity:0;background:radial-gradient(circle at 50% 45%,#fffae6f2,#ffd68cbf 45%,#dca04680);transition:opacity .9s;position:absolute;inset:0}.gate--leaving .gate__bloom{opacity:1}.gate__content{width:100%;min-height:100%;padding:max(5vh, env(safe-area-inset-top)) 16px max(28px, env(safe-area-inset-bottom));flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.gate__head{text-align:center;isolation:isolate;position:relative}.gate__halo{z-index:-1;aspect-ratio:1;pointer-events:none;mix-blend-mode:screen;opacity:.2;width:min(600px,94vw);animation:160s linear infinite gate-halo,3s .6s both gate-halo-in;position:absolute;top:52%;left:50%;-webkit-mask:radial-gradient(circle,#000 40%,#0000 70%);mask:radial-gradient(circle,#000 40%,#0000 70%)}@keyframes gate-halo{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}@keyframes gate-halo-in{0%{opacity:0}}.gate__kicker{font:600 clamp(14px, 1.9vw, 18px)/1.4 var(--serif);letter-spacing:.2em;color:#f4dfa6;text-shadow:0 1px 14px #000000b3;margin:0 0 2px;animation:1.2s .3s both gate-rise}.gate__title{white-space:nowrap;font:700 clamp(52px, 11vw, 128px)/1.25 var(--serif);letter-spacing:.05em;filter:drop-shadow(0 0 26px #ffc46473)drop-shadow(0 3px 3px #1408028c);margin:0;padding:.06em .1em .1em}.gate__title span{color:#0000;background:linear-gradient(110deg,#fffceb00 42%,#fffcebf2 50%,#fffceb00 58%) 160% 0/320% 100%,linear-gradient(#fff4c8 0%,#f3d27a 36%,#c99230 70%,#8d5c14 100%) 0 0/100% 100%;animation:gate-letter 1.2s cubic-bezier(.2, .7, .2, 1) calc(.6s + var(--i) * 80ms) both, gate-gleam 8s ease-in-out calc(3.4s + var(--i) * 60ms) infinite;-webkit-background-clip:text;background-clip:text;display:inline-block}.gate__title .gate__gap{width:.28em}@keyframes gate-letter{0%{opacity:0;filter:blur(12px);transform:translateY(.3em)scale(.94)}to{opacity:1;filter:blur();transform:none}}@keyframes gate-gleam{0%,70%{background-position:160% 0,0 0}to{background-position:-60% 0,0 0}}.gate__sub{font:500 clamp(17px, 2.3vw, 22px)/1.45 var(--serif);color:#f1e3c0;text-shadow:0 1px 14px #000000bf;margin:4px 0 0;font-style:italic;animation:1.2s 1.6s both gate-rise}@keyframes gate-rise{0%{opacity:0;transform:translateY(12px)}}.gate__hint{color:#f3e7c99e;margin:14px 0 0;font-size:12.5px;animation:1s 2.8s both gate-fade}.lac{text-align:left;width:min(420px,100%);color:var(--ivory);-webkit-backdrop-filter:blur(8px);background:radial-gradient(180px 120px at 90% 0,#d8ac542e,#0000 70%),radial-gradient(200px 140px at 0 100%,#d8ac541a,#0000 70%),radial-gradient(2px 2px at 28% 18%,#f0c8788c,#0000),radial-gradient(1.5px 1.5px at 72% 40%,#f0c87873,#0000),radial-gradient(1.5px 1.5px at 18% 76%,#f0c87866,#0000),linear-gradient(165deg,#2c120bf0,#1c0b07f5 55%,#120604f7);border:1px solid #d8ac5499;border-radius:16px;margin-top:clamp(18px,3.5vh,34px);animation:1.1s cubic-bezier(.2,.7,.2,1) 2s both gate-card;position:relative;box-shadow:0 30px 80px #0009,0 0 60px #d8a0461f,inset 0 1px #ffdc9624}.lac:before{content:"";pointer-events:none;border:1px solid #d8ac5438;border-radius:11px;position:absolute;inset:6px}@keyframes gate-card{0%{opacity:0;transform:translateY(26px)}}.lac__top{align-items:center;gap:12px;padding:18px 22px 14px;display:flex;position:relative}.lac__top:after{content:"";border-top:1px solid #d8ac5499;border-bottom:1px solid #d8ac5438;height:3px;position:absolute;bottom:0;left:22px;right:22px}.lac__top h2{font:600 25px/1.2 var(--serif);color:var(--gold);letter-spacing:.04em;margin:0}.lac__body{gap:12px;padding:16px 22px 22px;animation:.45s both gate-swap;display:grid;position:relative}@keyframes gate-swap{0%{opacity:0;transform:translateY(6px)}}.lac__lead{font:500 16px/1.5 var(--serif);color:var(--ivory-dim);margin:0}.lac__ghost{cursor:pointer;touch-action:manipulation;width:100%;min-height:46px;color:var(--ivory);font:600 14.5px/1 var(--sans);background:#d8ac540f;border:1px solid #d8ac5480;border-radius:999px}.lac__ghost:hover{border-color:var(--gold);background:#d8ac5426}.lac__links{flex-wrap:wrap;justify-content:space-between;gap:4px 14px;display:flex}.lac__fine{text-align:center;color:var(--ink-dim);margin:0;font-size:12.5px}.lac__fine b{color:var(--ivory-dim);font-weight:600}.lac__back{justify-self:start}.gate__enter{cursor:pointer;touch-action:manipulation;color:#2a1408;width:100%;min-height:56px;font:700 17px/1 var(--sans);letter-spacing:.02em;background:linear-gradient(#f6dc94 0%,#dcab48 46%,#b17b22 100%);border:1px solid #f3d793;border-radius:999px;transition:transform .2s,filter .2s,box-shadow .2s;position:relative;overflow:hidden;box-shadow:0 12px 34px #dca03c61,inset 0 1px #fff9}.gate__enter span{z-index:1;position:relative}.gate__enter:after{content:"";background:linear-gradient(100deg,#0000,#fffff5b3,#0000);width:40%;animation:3.6s ease-in-out 3s infinite gate-sheen;position:absolute;top:0;bottom:0;left:-60%}@keyframes gate-sheen{0%,55%{left:-60%}to{left:130%}}.gate__enter:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 16px 40px #dca03c80,inset 0 1px #fff9}.gate__enter:active:not(:disabled){transform:scale(.98)}.gate__enter:disabled{cursor:default;color:var(--ivory-dim);box-shadow:none;background:#d8ac541f;border-color:#d8ac5459}.gate__enter:disabled:after{display:none}.back{align-items:center;gap:16px;display:flex}.back__avatar{background:radial-gradient(circle at 50% 40%,#ffd68c66,#d8ac5414 60%,#0000 75%);border:1px solid #d8ac5480;border-radius:14px;flex:none;place-items:end center;width:92px;height:104px;display:grid;overflow:hidden}.back__avatar img{filter:drop-shadow(0 4px 8px #00000073);height:100px}.back__who{min-width:0}.back__hello{font:600 11.5px/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold-soft);margin:0}.back__name{font:600 30px/1.1 var(--serif);color:var(--ivory);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 2px;overflow:hidden}.back__stage{color:var(--ivory-dim);margin:0;font-size:13.5px}.pick__preview{background:radial-gradient(closest-side,#ffd68c59,#0000);place-items:center;height:150px;margin-bottom:6px;display:grid}.pick__preview img{filter:drop-shadow(0 6px 12px #00000080);max-height:150px}.pick__label{font:600 13px/1 var(--sans);color:var(--ivory-dim);margin-bottom:6px;display:block}.pick__row{gap:8px;display:flex}.pick__input,.pick__dice{color:var(--ivory);background:#00000047;border:1px solid #d8ac5480;border-radius:10px}.pick__input{min-width:0;font:500 16px/1.2 var(--sans);flex:1;padding:11px 13px}.pick__input:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px #d8ac542e}.pick__dice{cursor:pointer;width:46px;color:var(--gold);font-size:20px}.pick__note{font:400 12px/1.4 var(--sans);color:var(--ink-dim);margin:6px 0 10px}.pick__note--error{color:#ffb59c;font-weight:600}.pick__seg{margin-bottom:8px}.pick__swatches{justify-content:space-between;gap:10px;padding-top:4px;display:flex}.swatch{cursor:pointer;border:2px solid #fff0d2bf;border-radius:50%;width:34px;height:34px;box-shadow:0 1px 4px #0006}.swatch--on{outline:3px solid var(--gold);outline-offset:2px}.gate__load{transform-origin:0;background:linear-gradient(90deg,#d8ac5433,#f3d27a);height:2px;transition:transform .4s;position:fixed;bottom:0;left:0;right:0}@media (height<=820px){.gate__content{justify-content:flex-start}.pick__preview{height:112px}.pick__preview img{max-height:112px}}@media (width<=520px){.gate__kicker{letter-spacing:.18em}.lac__top{padding:16px 18px 12px}.lac__body{padding:14px 18px 18px}.back__name{font-size:26px}}.gate,.gate .seg,.pick__swatches,.gate__enter,.lac__ghost,.pick__dice,.swatch{touch-action:manipulation}.gate--calm .gate__media,.gate--calm .gate__rays,.gate--calm .gate__rays:before,.gate--calm .gate__cloud,.gate--calm .gate__halo,.gate--calm .gate__title span,.gate--calm .gate__enter:after{animation:none}.gate--calm .gate__rays,.gate--calm .gate__rays:before,.gate--calm .gate__halo{transform:translate(-50%,-50%)}:root{--lac:#1c0b07;--lac-2:#2c120b;--gold:#d8ac54;--gold-soft:#b8924a;--ivory:#f3e7c9;--ivory-dim:#c6b28a;--ink-dim:#8f7b58;--cinnabar:#b3261e}.scroll{z-index:15;width:min(430px,100%);color:var(--ivory);background:radial-gradient(160px 120px at 88% 6%, #d8ac5429, transparent 70%), radial-gradient(220px 160px at 6% 96%, #d8ac541a, transparent 70%), radial-gradient(2px 2px at 30% 20%, #f0c87880, transparent), radial-gradient(1.5px 1.5px at 70% 45%, #f0c87866, transparent), radial-gradient(1.5px 1.5px at 20% 70%, #f0c87859, transparent), linear-gradient(165deg, var(--lac-2), var(--lac) 55%, #120604);border-left:1px solid #d8ac548c;flex-direction:column;animation:.35s slidein;display:flex;position:fixed;top:0;bottom:0;right:0;overflow:hidden;box-shadow:-12px 0 40px #00000073}@keyframes slidein{0%{opacity:0;transform:translate(24px)}}.scroll:before{content:"";pointer-events:none;border:1px solid #d8ac5438;border-radius:4px;position:absolute;inset:6px 6px 6px 7px}.scroll__top{padding:max(16px, env(safe-area-inset-top)) 18px 12px;grid-template-columns:40px 1fr auto;align-items:center;gap:8px;display:grid;position:relative}.scroll__top:after{content:"";border-top:1px solid #d8ac5499;border-bottom:1px solid #d8ac5440;height:3px;position:absolute;bottom:0;left:24px;right:24px}.scroll__top h2{text-align:center;font:600 25px/1.2 var(--serif);color:var(--gold);letter-spacing:.04em;margin:0}.seal{width:34px;height:34px;font:700 19px/1 "Noto Serif", var(--serif);color:#fde9d6;background:var(--cinnabar);border-radius:5px;place-items:center;display:grid;transform:rotate(-5deg);box-shadow:inset 0 0 0 2px #ffdcc873}.scroll__acts{justify-self:end;align-items:center;gap:6px;display:flex}.scroll__close{white-space:nowrap;cursor:pointer;touch-action:manipulation;height:34px;color:var(--ivory);font:600 13px/1 var(--sans);background:#d8ac5414;border:1px solid #d8ac548c;border-radius:999px;align-items:center;gap:6px;padding:0 13px;display:inline-flex}.scroll__close span{color:var(--gold);font-size:11px}.scroll__close:hover{border-color:var(--gold);background:#d8ac5433}.icon-btn--bell{color:var(--gold);place-items:center;display:grid}.scroll__body{padding:16px 22px max(24px, env(safe-area-inset-bottom));flex-direction:column;flex:1;gap:12px;display:flex;position:relative;overflow-y:auto}.scroll__body>*{flex-shrink:0}.scroll__body--sitting{text-align:center;justify-content:center;align-items:center;gap:14px}.scroll__lead{font:500 16px/1.55 var(--serif);color:var(--ivory-dim);margin:0}.scroll__section{font:600 12.5px/1 var(--sans);color:var(--gold-soft);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:10px;margin:8px 0 0;display:flex}.scroll__section:before,.scroll__section:after{content:"";background:#d8ac5459;height:1px}.scroll__section:before{width:14px}.scroll__section:after{flex:1}.scroll__hint{color:var(--ink-dim);text-align:center;margin:0;font-size:12.5px;line-height:1.55}.scroll__done{font:500 16px/1.5 var(--serif);color:var(--gold);text-align:center;border:1px solid #d8ac5459;border-radius:8px;margin:0;padding:12px 14px}.scroll__row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.ink-btn{color:var(--ivory);font:500 13px/1 var(--sans);cursor:pointer;touch-action:manipulation;background:#d8ac540f;border:1px solid #d8ac5480;border-radius:999px;padding:8px 13px}.ink-btn:hover{background:#d8ac5429}.seal-btn{cursor:pointer;touch-action:manipulation;color:#fff0dc;min-height:48px;font:600 16px/1 var(--serif);letter-spacing:.03em;background:linear-gradient(#c33a2c,#8a1a14);border:1px solid #e7c06e;border-radius:999px;padding:0 18px;box-shadow:0 4px 14px #00000059}.seal-btn:disabled{opacity:.5}.seal-btn--wide{width:100%}.seg{background:#0000004d;border:1px solid #d8ac544d;border-radius:999px;gap:3px;padding:3px;display:flex}.seg button{color:var(--ivory-dim);font:500 13.5px/1.2 var(--sans);cursor:pointer;touch-action:manipulation;background:0 0;border:0;border-radius:999px;flex:1;padding:8px 10px}.seg button.on{color:#2a130a;background:linear-gradient(#e5c27a,#b8924a);font-weight:600}.seg button:disabled{opacity:.35}.seg--wrap{background:0 0;border:0;border-radius:0;flex-wrap:wrap;gap:7px;padding:0}.seg--wrap button{background:#d8ac540d;border:1px solid #d8ac5459;flex:none}.seg--small button{padding:6px 10px;font-size:12.5px}.tick{color:var(--ivory-dim);cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.tick input{accent-color:var(--gold);width:17px;height:17px}.ledger{color:var(--ivory-dim);text-align:center;border-top:1px solid #d8ac5433;border-bottom:1px solid #d8ac5433;justify-content:space-around;gap:6px 14px;padding:10px 6px;font-size:12.5px;display:flex}.ledger span{gap:4px;display:grid}.ledger b{font:600 22px/1 var(--serif);color:var(--gold)}.mo{cursor:pointer;touch-action:manipulation;filter:drop-shadow(0 6px 12px #00000080);background:0 0;border:0;align-self:center;padding:0;transition:transform 80ms}.mo:disabled{cursor:default}.mo svg{width:100%;height:100%;overflow:visible}.mo__mallet{transform-box:view-box;transform-origin:192px 104px;transition:transform .12s ease-out;transform:rotate(0)}.mo--hit .mo__mallet{transition-duration:50ms;transform:rotate(-17deg)}.mo--hit{transform:scale(.98)}.leaf{text-align:left;cursor:pointer;color:inherit;font:inherit;background:linear-gradient(#fff0d20d,#fff0d205);border:1px solid #d8ac5440;border-radius:10px;gap:5px;padding:13px 15px;display:grid}.leaf:hover{background:#d8ac5414;border-color:#d8ac5499}.leaf--session{background:linear-gradient(120deg,#b3261e40,#d8ac540f);border-color:#d8ac548c}.leaf__title{font:600 19px/1.25 var(--serif);color:var(--gold)}.leaf__sub{font:italic 14px/1.3 var(--serif);color:var(--ivory-dim)}.leaf__desc{color:#dccba6;font-size:13.5px;line-height:1.5}.leaf__meta{color:var(--ink-dim);font-size:12px}.scroll__body--reader{gap:10px}.kinh__head{text-align:center;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;display:grid}.kinh__head h3{font:600 21px/1.2 var(--serif);color:var(--gold);margin:0}.kinh__head p{color:var(--ink-dim);margin:3px 0 0;font-size:12px}.scroll__body>.kinh{flex:auto}.kinh{text-align:center;scrollbar-width:thin;background:#00000040;border:1px solid #d8ac5438;border-radius:10px;min-height:200px;padding:14px 10px;overflow-y:auto}.kinh--tap{cursor:pointer}.kinh__line{font:500 21px/1.55 var(--serif);color:var(--ink-dim);border-radius:8px;margin:0;padding:5px 10px;transition:background .3s,color .3s}.kinh__line--past{color:#a8946c}.kinh__line--now{color:#a8946c;background:#d8ac5421}.kinh__w--lit{color:#fff4dc}.kinh__line--now .kinh__w--lit{color:#fff4dc;text-shadow:0 0 12px #ffd28259}.kinh__done{font:600 22px/1.6 var(--serif);color:var(--gold);margin:40px 0}.kinh__bar{grid-template-columns:auto 1fr;align-items:center;gap:14px;display:grid}.kinh__opts{gap:9px;display:grid}.mala3{justify-items:center;gap:6px;display:grid}.mala3__phrase{font:600 22px/1.3 var(--serif);color:var(--gold);text-align:center;margin:0}.mala3__loop{cursor:pointer;touch-action:manipulation;background:0 0;border:0;width:100%;max-width:360px;padding:0;position:relative}.loop{width:100%;height:auto;display:block}.loop__cord{fill:none;stroke:#b3261eb3;stroke-width:1.6px}.loop__thumb{fill:#ffd2821f;stroke:#d8ac5480;stroke-dasharray:3 3}.loop__tassel{fill:none;stroke:#c3312a;stroke-width:2.4px;stroke-linecap:round}.mala3__count{pointer-events:none;justify-items:center;display:grid;position:absolute;top:46%;left:50%;transform:translate(-50%,-50%)}.mala3__count b{font:600 52px/1 var(--serif);color:#fff1d2;text-shadow:0 2px 10px #0009}.mala3__count small{color:var(--ivory-dim);font-size:12.5px}.incense{width:60px;height:190px;position:relative}.incense__pot{background:linear-gradient(#d0a050,#6a4614);border-radius:6px 6px 22px 22px;width:50px;height:26px;position:absolute;bottom:0;left:5px}.incense__stick{background:#a8402c;width:4px;transition:height 1s linear;position:absolute;bottom:22px;left:28px}.incense__ember{background:#ff8a3a;border-radius:50%;width:8px;height:8px;animation:2.4s ease-in-out infinite ember;position:absolute;top:-3px;left:-2px;box-shadow:0 0 12px #ff9a4a}@keyframes ember{50%{opacity:.6}}.incense__smoke{filter:blur(4px);background:radial-gradient(at 50% 100%,#e6dcd24d,#0000 70%);border-radius:50%;width:24px;height:60%;animation:5s ease-in-out infinite smoke;position:absolute;top:0;left:18px}@keyframes smoke{50%{opacity:.6;transform:translate(6px)scaleY(1.1)}}.lotus-breath{--k:0;background:radial-gradient(circle, rgba(230, 150, 170, calc(.18 + var(--k) * .32)), transparent 70%);width:180px;height:180px;box-shadow:0 0 0 1px rgba(216, 172, 84, calc(.15 + var(--k) * .3));transform:scale(calc(.75 + var(--k) * .3));border-radius:50%;place-items:center;transition:transform .5s linear;display:grid}.lotus-breath span{font:600 22px/1 var(--serif);color:#ffe9e0}.sit__time{font:600 30px/1 var(--serif);color:var(--gold);margin:0}.mountain{width:100%;height:auto}.mountain__far{fill:#d8ac541a}.mountain__near{fill:#d8ac542e}.mountain__path{fill:none;stroke:var(--gold);stroke-width:1.6px;stroke-dasharray:3 4}.mountain__stop{fill:var(--lac);stroke:var(--gold);stroke-width:1.5px}.mountain__stop--on{fill:var(--gold)}.mountain__me{fill:var(--cinnabar);stroke:#fff0dc;stroke-width:2.5px}.stage{text-align:center;border:1px solid #d8ac5459;border-radius:10px;gap:4px;padding:12px 16px;display:grid}.stage__name{font:700 25px/1.1 var(--serif);color:var(--gold)}.stage__note{font:italic 15px/1.3 var(--serif);color:var(--ivory-dim)}.stage__steps{color:var(--ink-dim);font-size:13px}.chore{border-bottom:1px solid #d8ac5424;grid-template-columns:24px 1fr auto;align-items:center;gap:10px;padding:10px 4px;font-size:15px;display:grid}.chore__mark{border:1.5px solid var(--gold-soft);color:#2a130a;border-radius:50%;place-items:center;width:20px;height:20px;font-size:12px;font-weight:700;display:grid}.chore--done .chore__mark{background:var(--gold)}.chore--done .chore__label,.chore__label small{color:var(--ink-dim)}.chore__pts{color:var(--gold);font-size:12.5px}.stages{color:var(--ink-dim);gap:5px;margin:0;padding-left:22px;font-size:14px;display:grid}.stages li.on{color:var(--ivory)}.stages li span{color:var(--ink-dim);font-size:12px}.verse{text-align:center;background:#d8ac540f;border:1px solid #d8ac5466;border-radius:10px;margin:0;padding:18px 20px}.verse p{font:500 19px/1.6 var(--serif);color:#fff1d6;margin:0 0 10px}.verse footer{color:var(--gold-soft);font-size:12.5px}.talk__player{aspect-ratio:16/9;background:#000;border:1px solid #d8ac5480;border-radius:8px;position:relative;overflow:hidden}.talk__player iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.talk{text-align:left;cursor:pointer;color:inherit;font:inherit;background:#fff0d208;border:1px solid #d8ac542e;border-radius:10px;align-items:center;gap:12px;padding:8px;display:flex}.talk--on{border-color:var(--gold);background:#d8ac541a}.talk img{aspect-ratio:16/9;object-fit:cover;border-radius:6px;flex:none;width:108px}.talk strong{font:600 16px/1.25 var(--serif);color:var(--gold);display:block}.talk small{color:var(--ink-dim);font-size:12px}.trail-chip{cursor:pointer;text-align:left;background:var(--glass);border:1px solid var(--glass-line);color:var(--ink);border-radius:999px;align-items:center;gap:8px;padding:5px 12px 5px 6px;display:flex}.trail-chip__peak{width:28px;height:28px;color:var(--gold);background:#2a110b;border-radius:50%;place-items:center;font-size:14px;display:grid}.trail-chip__text{gap:2px;display:grid}.trail-chip__text b{font:600 14px/1 var(--serif)}.trail-chip__text small{font:500 11px/1 var(--sans);color:var(--ink-soft);white-space:nowrap}@media (width>=641px){.hud--panel .hud__bottom,.hud--panel .hud__top{right:min(430px,100%)}.hud--panel .hud__hint{display:none}}@media (width<=640px){.scroll{border-top:1px solid #d8ac5499;border-left:0;border-radius:18px 18px 0 0;width:100%;height:min(78vh,680px);animation-name:rise;top:auto}@keyframes rise{0%{opacity:0;transform:translateY(40px)}}.hud--panel .hud__bottom,.hud--panel .joystick{display:none}.kinh__line{font-size:19px}.trail-chip__text small{display:none}}.mo{-webkit-tap-highlight-color:transparent;outline:none}.mo:focus-visible{outline-offset:4px;border-radius:50%;outline:2px solid #d8ac5499}.hud--panel .hud__hint{display:none}.nguyen__text{box-sizing:border-box;resize:vertical;width:100%;min-height:78px;color:var(--ivory);font:500 16px/1.5 var(--serif);background:#00000047;border:1px solid #d8ac5473;border-radius:10px;padding:11px 13px}.nguyen__text:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px #d8ac542e}.nguyen__text::placeholder{color:var(--ink-dim);font-style:italic}.nguyen__slip{background:linear-gradient(170deg,#a3241a,#7a150e);border:1px solid #e7c06eb3;border-radius:4px;margin:4px 0 0;padding:14px 18px 10px;position:relative;box-shadow:inset 0 0 0 4px #7a150ee6,inset 0 0 0 5px #e7c06e73,0 6px 18px #00000059}.nguyen__slip blockquote{font:500 16.5px/1.6 var(--serif);color:#fbe7b0;text-align:center;overflow-wrap:anywhere;margin:0}.nguyen__slip figcaption{text-align:right;color:#fbe7b08c;margin-top:6px;font-size:11px}.nguyen__why{color:#ffd9c2;text-align:center;background:#b3261e40;border:1px solid #b3261e99;border-radius:8px;margin:0;padding:9px 12px;font-size:13.5px}.nguyen__book{gap:8px;margin:0;padding:0;list-style:none;display:grid}.nguyen__book li{font:500 14.5px/1.45 var(--serif);color:var(--ivory-dim);overflow-wrap:anywhere;background:#d8ac540d;border-left:2px solid #d8ac5480;gap:3px;padding:9px 12px;display:grid}.nguyen__book li span{font:500 11.5px/1 var(--sans);color:var(--ink-dim);letter-spacing:.02em}.clock-chip{font-variant-numeric:tabular-nums}.keep-card{cursor:pointer;text-align:left;width:100%;color:var(--ivory);font:500 14px/1.3 var(--sans);background:#d8ac540f;border:1px dashed #d8ac548c;border-radius:10px;align-items:center;gap:12px;padding:11px 14px;display:flex}.keep-card>span:first-child{color:var(--gold);font-size:22px}.keep-card b{font-weight:600;display:block}.keep-card small{color:var(--ink-dim);font-size:12.5px}.keep-card--on{border-style:solid;border-color:#78aa6e8c}.keep__google{justify-items:center;gap:6px;min-height:44px;display:grid}.keep__note{color:var(--ivory-dim);margin:0;font-size:13px;line-height:1.5}.keep__why{color:#ffb59c;text-align:center;margin:0;font-size:13px}.keep__go{cursor:pointer;color:#fff1c8;min-height:46px;font:600 14.5px/1 var(--sans);background:linear-gradient(#c43a24,#8b1a10);border:1px solid #e7c06e;border-radius:999px;padding:0 18px}.keep__go:disabled{opacity:.5;cursor:default}.keep__row{flex-wrap:wrap;gap:8px;display:flex}.keep__form{gap:8px;width:100%;display:grid}.keep__field{box-sizing:border-box;width:100%;font:500 15px/1.2 var(--sans);color:var(--ivory);background:#00000040;border:1px solid #d8ac5480;border-radius:10px;padding:11px 13px}.keep__field:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px #d8ac542e}.keep__field::placeholder{color:var(--ink-dim)}.keep__tabs{margin:0}.keep__or{color:var(--ink-dim);align-items:center;gap:10px;font-size:12.5px;display:flex}.keep__or:before,.keep__or:after{content:"";background:#d8ac544d;flex:1;height:1px}.ink-btn--on{border-color:var(--gold);background:#d8ac5447}.keep__plains{flex-wrap:wrap;justify-content:space-between;gap:4px 12px;display:flex}.keep__plain{cursor:pointer;color:var(--gold);font:500 13px/1.2 var(--sans);text-underline-offset:3px;background:0 0;border:0;justify-self:center;padding:6px 2px;text-decoration:underline}.keep__field--code{text-transform:uppercase;letter-spacing:.08em}.keep__field--code::placeholder{text-transform:none;letter-spacing:0}.keep__rescue{border:1px solid var(--gold);background:#d8ac541a;border-radius:12px;gap:8px;padding:14px;display:grid}.keep__rescue-title{font:600 14px/1.2 var(--sans);color:var(--ivory);margin:0}.keep__rescue-code{letter-spacing:.06em;color:var(--gold);-webkit-user-select:all;user-select:all;word-break:break-all;margin:0;font:700 clamp(19px,6vw,26px)/1.1 ui-monospace,Cascadia Mono,Consolas,monospace}.keep__recovery{border-top:1px solid #d8ac5438;gap:8px;padding-top:10px;display:grid}.stages__gift{color:var(--ink-dim);font-size:12px;display:block}.stages li.on .stages__gift{color:var(--gold)}.trail-chip--dong .trail-chip__peak{color:#ffd9a8;background:linear-gradient(145deg,#8a4a22,#4a200e);box-shadow:0 0 0 1.5px #b9733d}.trail-chip--kim .trail-chip__peak{color:#3a2208;background:linear-gradient(145deg,#f3d27a,#b07f22);box-shadow:0 0 0 1.5px #f6dc93,0 0 10px #f0be508c}.trail-chip--quang .trail-chip__peak{color:#3a2208;background:radial-gradient(circle at 35% 30%,#fff6d8,#f0c45a 55%,#b8801c);animation:3.2s ease-in-out infinite radiant}@keyframes radiant{0%,to{box-shadow:0 0 0 1.5px #fff0bd,0 0 10px #ffd26e99}50%{box-shadow:0 0 0 2px #fff0bd,0 0 22px #ffd26ef2}}.levelup{z-index:40;cursor:pointer;background:radial-gradient(circle,#1e0e0659,#1e0e06a6);place-items:center;padding:16px;animation:.5s lvfade;display:grid;position:fixed;inset:0}@keyframes lvfade{0%{opacity:0}}.levelup__card{text-align:center;border:1px solid var(--gold);width:min(360px,100%);color:var(--ivory);background:linear-gradient(#3a170c,#1f0b05);border-radius:20px;justify-items:center;gap:8px;padding:30px 22px 22px;animation:.7s cubic-bezier(.2,1.4,.4,1) lvrise;display:grid;position:relative;box-shadow:0 20px 60px #00000080,0 0 60px #d8ac5440}@keyframes lvrise{0%{opacity:0;transform:translateY(18px)scale(.92)}}.levelup__card small{font:500 12px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}.levelup__card h2{font:600 30px/1.1 var(--serif);color:#ffe6a8;margin:0}.levelup__card p{color:var(--ivory-dim);margin:0;font-size:14px}.levelup__gift{border:1px dashed #d8ac5499;border-radius:999px;padding:8px 14px;font-weight:600;color:var(--gold)!important}.levelup__rings,.levelup__rings:before,.levelup__rings:after{pointer-events:none;z-index:-1;border:2px solid #ffd678b3;border-radius:50%;width:120px;height:120px;margin:-60px 0 0 -60px;animation:2.6s ease-out infinite lvring;position:absolute;top:50%;left:50%}.levelup__rings:before,.levelup__rings:after{content:"";margin:0;top:0;left:0}.levelup__rings:before{animation-delay:.85s}.levelup__rings:after{animation-delay:1.7s}@keyframes lvring{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(4.2)}}.levelup--quang .levelup__card{box-shadow:0 20px 60px #00000080,0 0 90px #ffd6788c}@media (prefers-reduced-motion:reduce){.levelup__rings,.levelup__rings:before,.levelup__rings:after,.trail-chip--quang .trail-chip__peak{animation:none}}.scroll.scroll--dock{top:auto;left:50%;right:auto;bottom:max(12px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px)saturate(1.15);background:radial-gradient(160px 90px at 92% 0,#d8ac5429,#0000 70%),linear-gradient(165deg,#2c120ba8,#160805c2);border:1px solid #d8ac548c;border-radius:18px;width:min(560px,100% - 24px);height:auto;max-height:52vh;animation:.35s dockin;overflow:visible;transform:translate(-50%);box-shadow:0 14px 40px #0006}@keyframes dockin{0%{opacity:0;transform:translate(-50%,18px)}}.scroll--dock:before{border-color:#d8ac5429;border-radius:13px;inset:5px}.scroll--dock .scroll__top{grid-template-columns:26px 1fr auto;padding:8px 10px 7px 12px}.scroll--dock .scroll__top h2{text-align:left}.scroll--dock .scroll__top:after{border-top-color:#d8ac5459;border-bottom:0;height:1px;left:14px;right:14px}.scroll--dock .scroll__top h2{font-size:17px}.scroll--dock .seal{border-radius:4px;width:24px;height:24px;font-size:13px}.scroll--dock .scroll__close{height:32px;padding:0 12px}.scroll--dock .icon-btn--bell{width:32px;height:32px}.scroll--dock .scroll__body{gap:8px;padding:8px 14px 12px;position:static;overflow:visible}.pop{z-index:2;background:linear-gradient(165deg,#2c120bf2,#160805f7);border:1px solid #d8ac548c;border-radius:16px;gap:10px;padding:12px 14px;animation:.18s popin;display:grid;position:absolute;bottom:calc(100% + 8px);left:0;right:0;box-shadow:0 10px 30px #00000073}@keyframes popin{0%{opacity:0;transform:translateY(6px)}}.pop .scroll__section{margin:0}.icon-btn{cursor:pointer;touch-action:manipulation;width:36px;height:36px;color:var(--gold);font:600 17px/1 var(--sans);background:#00000038;border:1px solid #d8ac5473;border-radius:50%;flex:none}.icon-btn.on,.icon-btn:hover{background:#d8ac5433}.mala-d{gap:4px;display:grid}.mala-d__bar{align-items:center;gap:8px;display:flex}.pick-phrase{cursor:pointer;touch-action:manipulation;min-width:0;color:var(--gold);font:600 16.5px/1.2 var(--serif);background:#00000038;border:1px solid #d8ac5473;border-radius:999px;flex:1;justify-content:space-between;align-items:center;gap:8px;padding:8px 14px;display:flex}.pick-phrase span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pick-phrase i{color:var(--ivory-dim);font-size:11px;font-style:normal}.pick-phrase.on,.pick-phrase:hover{border-color:var(--gold)}.mala-d__main{justify-content:center;align-items:center;gap:4px;display:flex}.mala-d__loop{flex:0 260px}.mala-d__loop .mala3__count b{font-size:40px}.sit-d{grid-template-columns:auto 1fr auto;align-items:center;gap:6px 14px;display:grid}.sit-d .lotus-breath{width:76px;height:76px}.sit-d .lotus-breath span{text-align:center;font-size:13.5px;line-height:1.15}.sit-d .sit__time{font-size:25px}.sit-d__note{color:var(--ivory-dim);margin:5px 0 0;font-size:12.5px;line-height:1.4}.sit-d__burn{background:#d8ac5429;border-radius:2px;grid-column:1/-1;height:3px;overflow:hidden}.sit-d__burn i{background:linear-gradient(90deg, #ff8a3a, var(--gold));height:100%;margin-left:auto;transition:width 1s linear;display:block}.kinh-d .kinh__head h3{font-size:17px}.kinh-d__main{grid-template-columns:1fr auto;align-items:center;gap:10px;display:grid}.kinh-d .kinh{background:#00000052;height:clamp(150px,27vh,250px);min-height:0;padding:10px 6px}.kinh-d .kinh__line{padding:4px 10px;font-size:24px;line-height:1.5}.kinh-d>.scroll__hint{display:none}.kinh-d .kinh__line{color:#d9c8a2;font-weight:600}.kinh-d .kinh__line--past{color:#8a7656}.kinh-d .kinh__line--now{color:#d9c8a2;background:#d8ac542e;box-shadow:inset 0 0 0 1px #d8ac5459}.kinh-d .kinh__w--lit{color:#fff6e0}.kinh-d .kinh__line--now .kinh__w--lit{color:#ffe7a8;text-shadow:0 0 14px #ffd28273}.kinh-d .kinh__done{margin:16px 0;font-size:19px}.hud--dock .hud__bottom,.hud--dock .joystick{display:none}.hud--panel.hud--dock .hud__top{right:0}@media (width<=640px){.scroll.scroll--dock{width:calc(100% - 16px);height:auto;bottom:max(8px, env(safe-area-inset-bottom));border:1px solid #d8ac548c;border-radius:18px;animation-name:dockin}.scroll--dock .scroll__body{padding:6px 12px 10px}.pick-phrase{padding:7px 12px;font-size:15.5px}.kinh-d .kinh__line{font-size:21px}.sit-d{gap:6px 10px}.sit-d .sit__time{font-size:22px}.mala-d__loop{flex-basis:196px}.mala-d__loop .mala3__count b{font-size:30px}.kinh-d .kinh{height:clamp(128px,21vh,190px)}.kinh-d .kinh__head h3{font-size:15.5px}.kinh-d .kinh__head .ink-btn{padding:6px 10px}}.auto-btn{cursor:pointer;touch-action:manipulation;white-space:nowrap;height:36px;color:var(--ivory);font:600 13px/1 var(--sans);background:#00000038;border:1px solid #d8ac5473;border-radius:999px;flex:none;padding:0 13px}.auto-btn:hover{border-color:var(--gold)}.auto-btn.on{color:#2a130a;background:linear-gradient(#e5c27a,#b8924a);border-color:#e7c06e}.phrase-sub{opacity:.75;font-size:11.5px;font-weight:500}.phrase-voice{color:var(--gold)}.seg button.on .phrase-voice{color:#6b3a0a}@media (width>=960px){.scroll.scroll--dock{width:min(720px,100% - 48px)}.mala-d{grid-template-columns:200px 1fr auto;grid-template-areas:"loop bar mo";align-items:center;column-gap:16px}.mala-d__main{display:contents}.mala-d__loop{grid-area:loop;width:200px}.mala-d .mo{grid-area:mo}.mala-d__bar{flex-wrap:wrap;grid-area:bar;justify-content:flex-end}.mala-d__bar .pick-phrase{flex-basis:100%}.mala-d__loop .mala3__count b{font-size:32px}.kinh-d .kinh{height:clamp(150px,24vh,230px)}}.hoso{gap:14px}.hoso__who{align-items:center;gap:16px;display:flex}.hoso__face{background:radial-gradient(circle at 50% 40%,#ffd68c52,#d8ac540f 62%,#0000 78%);border:1px solid #d8ac5480;border-radius:14px;flex:none;place-items:end center;width:92px;height:108px;display:grid;overflow:hidden}.hoso__face img{filter:drop-shadow(0 4px 8px #00000073);height:104px}.hoso__face--kim,.hoso__face--quang{border-color:#f3d27a;box-shadow:0 0 18px #f0be504d}.hoso__id{gap:5px;min-width:0;display:grid}.hoso__name{font:600 28px/1.1 var(--serif);color:var(--ivory);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.hoso__badges{flex-wrap:wrap;gap:6px;margin:0;display:flex}.hoso__title{font:600 12px/1.2 var(--sans);background:#00000040;border:1px solid;border-radius:999px;padding:4px 10px}.hoso__badge{font:600 12px/1.2 var(--sans);letter-spacing:.03em;color:#f3e7c9;background:#d8ac541f;border:1px solid #d8ac5466;border-radius:999px;justify-self:start;margin:0;padding:4px 10px}.hoso__badge--dong{color:#ffd9a8;background:linear-gradient(145deg,#8a4a22b3,#4a200eb3);border-color:#b9733d}.hoso__badge--kim,.hoso__badge--quang{color:#3a2208;background:linear-gradient(145deg,#f3d27a,#b07f22);border-color:#f6dc93}.hoso__facts{color:var(--ivory-dim);flex-wrap:wrap;gap:4px 14px;margin:2px 0 0;font-size:12.5px;display:flex}.hoso__facts b{font:600 15px/1 var(--serif);color:var(--ivory);margin-right:3px}.hoso__fire b{color:#ffb36b}.hoso__merit{text-align:center;background:radial-gradient(120% 140% at 50% 0,#d8ac542e,#0000001f 70%);border:1px solid #d8ac5473;border-radius:14px;justify-items:center;gap:2px;padding:14px 16px 12px;display:grid}.hoso__merit-label{font:600 11.5px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-soft)}.hoso__merit b{font:600 40px/1.1 var(--serif);color:#fff1d2;text-shadow:0 0 18px #ffc86e59}.hoso__merit small{max-width:320px;color:var(--ink-dim);font-size:12px;line-height:1.45}.hoso__chart{justify-items:center;gap:4px;display:grid}.radar{width:min(300px,100%);height:auto;overflow:visible}.radar__grid{fill:none;stroke:#d8ac5429;stroke-width:1px}.radar__rim{fill:#d8ac540a;stroke:#d8ac5461;stroke-width:1px}.radar__shape{fill:#e8be6442;stroke:#e8c06a;stroke-width:2px;stroke-linejoin:round}.radar__node{cursor:pointer}.radar__dot{fill:#f3d27a;stroke:#1c0b07;stroke-width:2px;transition:r .15s}.radar__label{font:600 13px/1 var(--sans);fill:var(--ivory-dim)}.radar__label.on{fill:var(--ivory)}.radar__scale{font:500 10.5px/1 var(--sans);fill:var(--ink-dim)}.hoso__focus{text-align:center;min-height:2.8em;color:var(--ivory);margin:0;font-size:13.5px;line-height:1.4}.hoso__focus small{color:var(--ivory-dim);font-size:12.5px}.hoso__focus b{color:var(--gold)}.roots{gap:8px;margin:0;padding:0;list-style:none;display:grid}.root{background:#00000029;border:1px solid #d8ac5433;border-radius:12px;gap:6px;padding:10px 12px;transition:border-color .2s,background .2s;display:grid}.root--on{background:#d8ac5412;border-color:#d8ac5499}.root__head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.root__name{font:600 17px/1.2 var(--serif);color:var(--ivory)}.root__tier{font:600 12px/1 var(--sans);color:var(--gold);letter-spacing:.04em}.root__bar{background:#d8ac5424;border-radius:3px;height:6px;overflow:hidden}.root__bar i{background:linear-gradient(90deg,#b8924a,#f3d27a);border-radius:3px;height:100%;display:block}.root__foot{color:var(--ivory-dim);justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.root__go{cursor:pointer;color:var(--gold);font:600 12px/1 var(--sans);touch-action:manipulation;background:0 0;border:1px solid #d8ac5473;border-radius:999px;padding:4px 10px}.root__go:hover{background:#d8ac5426}.root__grows{color:var(--ink-dim);margin:0;font-size:11.5px;line-height:1.4}.marks{grid-template-columns:repeat(2,1fr);gap:8px;margin:0;padding:0;list-style:none;display:grid}.mark{color:var(--ink-dim);border:1px dashed #d8ac5440;border-radius:12px;grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;column-gap:10px;padding:9px 10px;display:grid}.mark__seal{border:1px solid #d8ac5440;border-radius:50%;grid-row:1/3;place-items:center;width:30px;height:30px;font-size:15px;display:grid}.mark__name{font:600 13px/1.2 var(--sans)}.mark__note{font-size:11px;line-height:1.3}.mark--on{color:var(--ivory);background:#d8ac5414;border-style:solid;border-color:#d8ac548c}.mark--on .mark__seal{color:#3a2208;background:radial-gradient(circle at 35% 30%,#fff1c4,#e3b552 60%,#a8771c);border-color:#f6dc93}.mark--on .mark__note{color:var(--gold-soft)}.hoso__more{align-self:center}.gains{left:50%;top:max(70px, calc(env(safe-area-inset-top) + 62px));z-index:16;pointer-events:none;gap:6px;display:flex;position:fixed;transform:translate(-50%)}.gain{pointer-events:auto;cursor:pointer;white-space:nowrap;font:600 13px/1 var(--sans);color:#fff1d2;background:linear-gradient(#3c1a0ce0,#1e0c06e0);border:1px solid #f3d27ab3;border-radius:999px;padding:6px 12px;animation:2.2s forwards gainup;box-shadow:0 6px 18px #0000004d,0 0 14px #f0be5040}.gain b{color:#f3d27a}@keyframes gainup{0%{opacity:0;transform:translateY(10px)scale(.9)}12%{opacity:1;transform:none}75%{opacity:1}to{opacity:0;transform:translateY(-8px)}}@media (prefers-reduced-motion:reduce){.gain{animation:none}}.sit-g{justify-items:center;gap:10px;display:grid}.sit-g .sit-d{width:100%}@media (width>=641px){.sit-g{grid-template-columns:auto 1fr;place-items:center stretch;gap:20px}.breath{width:min(176px,24vh)}}.breath{aspect-ratio:1;flex:none;width:min(210px,27vh,58vw);position:relative}.breath:before{content:"";background:radial-gradient(circle,#080301b3,#08030166 58%,#0000 74%);border-radius:50%;position:absolute;inset:2%}.breath__halo{opacity:.16;mix-blend-mode:screen;width:116%;height:116%;animation:140s linear infinite breathhalo;position:absolute;inset:-8%;-webkit-mask:radial-gradient(circle,#000 35%,#0000 70%);mask:radial-gradient(circle,#000 35%,#0000 70%)}@keyframes breathhalo{to{transform:rotate(360deg)}}.breath__svg{filter:drop-shadow(0 0 5px #ffc86e80);width:100%;height:100%;position:absolute;inset:0;overflow:visible}.breath__side{fill:none;stroke:#f3d27a73;stroke-width:5px;stroke-linecap:round;transition:stroke .5s}.breath__side--now{stroke:#ffe39a;stroke-width:6px}.breath__mid{text-shadow:0 2px 10px #000000b3;place-content:center;justify-items:center;gap:2px;display:grid;position:absolute;inset:0}.breath--n3 .breath__mid{gap:0;padding-top:30%}.breath--n3 .breath__word{font-size:13.5px}.breath--n3 .breath__count{font-size:42px}.breath__word{font:600 17px/1.2 var(--sans);letter-spacing:.02em;color:#fff1d2}.breath__count{font:500 54px/1 var(--serif);color:#ffe7a8;font-variant-numeric:tabular-nums}.sit-d{grid-template-columns:1fr auto}@media (prefers-reduced-motion:reduce){.breath__halo{animation:none}}.kinh-d__listen{align-items:center;gap:10px;display:flex}.kinh-d__listen span{color:var(--ivory-dim);font-size:12.5px;line-height:1.35}.leaf__voice{color:var(--gold);font-weight:600}.ru{width:min(260px,80vw);min-height:2.6em;font:italic 500 21px/1.3 var(--serif);color:#f3d27a;text-align:center;text-shadow:0 2px 10px #0009;place-content:center;margin:4px 0 2px;animation:2.2s both ru-in;display:grid}@keyframes ru-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.ru{animation:none}}
