@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/be-vietnam-pro-vietnamese-400-normal-CRcqvyg1.woff2) format("woff2"),url(/assets/be-vietnam-pro-vietnamese-400-normal-BuGn0gnm.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/be-vietnam-pro-latin-ext-400-normal-CiZNW1ec.woff2) format("woff2"),url(/assets/be-vietnam-pro-latin-ext-400-normal-DYBYyMQr.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/be-vietnam-pro-latin-400-normal-PpnXBOrz.woff2) format("woff2"),url(/assets/be-vietnam-pro-latin-400-normal-bXgqVju9.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/be-vietnam-pro-vietnamese-500-normal-DREgrEoJ.woff2) format("woff2"),url(/assets/be-vietnam-pro-vietnamese-500-normal-CfdwVo8-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/be-vietnam-pro-latin-ext-500-normal-h0Fp6aX0.woff2) format("woff2"),url(/assets/be-vietnam-pro-latin-ext-500-normal-CK0UkkKf.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/be-vietnam-pro-latin-500-normal-B6LVzGNe.woff2) format("woff2"),url(/assets/be-vietnam-pro-latin-500-normal-BJkVuMHw.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/be-vietnam-pro-vietnamese-600-normal-nyU-ZL2p.woff2) format("woff2"),url(/assets/be-vietnam-pro-vietnamese-600-normal-DkpCIyan.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/be-vietnam-pro-latin-ext-600-normal-BNd8euf0.woff2) format("woff2"),url(/assets/be-vietnam-pro-latin-ext-600-normal-BeUwKxhG.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/be-vietnam-pro-latin-600-normal-BZDkUTrt.woff2) format("woff2"),url(/assets/be-vietnam-pro-latin-600-normal-5IO4e7bK.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/be-vietnam-pro-vietnamese-700-normal-Csr0PCuG.woff2) format("woff2"),url(/assets/be-vietnam-pro-vietnamese-700-normal-By_5yT39.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/be-vietnam-pro-latin-ext-700-normal-C8_gqRu2.woff2) format("woff2"),url(/assets/be-vietnam-pro-latin-ext-700-normal-4Hjo2OtD.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/be-vietnam-pro-latin-700-normal-DlW1Zbsh.woff2) format("woff2"),url(/assets/be-vietnam-pro-latin-700-normal-C2EtzaOi.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Noto Serif";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-serif-cyrillic-ext-700-normal-Wu7eRLdv.woff2) format("woff2"),url(/assets/noto-serif-cyrillic-ext-700-normal-ByCiBMHB.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Noto Serif";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-serif-cyrillic-700-normal-st5jqzMC.woff2) format("woff2"),url(/assets/noto-serif-cyrillic-700-normal-QbseYGNj.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Noto Serif";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-serif-greek-ext-700-normal-C0PQplx8.woff2) format("woff2"),url(/assets/noto-serif-greek-ext-700-normal-CJdSMDIv.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:"Noto Serif";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-serif-greek-700-normal-C2W7LK9p.woff2) format("woff2"),url(/assets/noto-serif-greek-700-normal-ByUwHYrz.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Noto Serif";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-serif-vietnamese-700-normal-CCI1nutj.woff2) format("woff2"),url(/assets/noto-serif-vietnamese-700-normal-l1Aj8lOE.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Noto Serif";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-serif-latin-ext-700-normal-C8sxdbiU.woff2) format("woff2"),url(/assets/noto-serif-latin-ext-700-normal-Be_dCxHi.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Noto Serif";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-serif-latin-700-normal-DnoTpr3z.woff2) format("woff2"),url(/assets/noto-serif-latin-700-normal-s---Dpcw.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Noto Serif";font-style:normal;font-display:swap;font-weight:900;src:url(/assets/noto-serif-cyrillic-ext-900-normal-BE1rub3X.woff2) format("woff2"),url(/assets/noto-serif-cyrillic-ext-900-normal-Dx5bQPxP.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Noto Serif";font-style:normal;font-display:swap;font-weight:900;src:url(/assets/noto-serif-cyrillic-900-normal-Cn6xK3mF.woff2) format("woff2"),url(/assets/noto-serif-cyrillic-900-normal-CC-LmUJ5.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Noto Serif";font-style:normal;font-display:swap;font-weight:900;src:url(/assets/noto-serif-greek-ext-900-normal-RcZP4JgE.woff2) format("woff2"),url(/assets/noto-serif-greek-ext-900-normal-OdQBvJ3X.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:"Noto Serif";font-style:normal;font-display:swap;font-weight:900;src:url(/assets/noto-serif-greek-900-normal-Bf6Yo2L-.woff2) format("woff2"),url(/assets/noto-serif-greek-900-normal-HveI2BKE.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Noto Serif";font-style:normal;font-display:swap;font-weight:900;src:url(/assets/noto-serif-vietnamese-900-normal-BknuXQb5.woff2) format("woff2"),url(/assets/noto-serif-vietnamese-900-normal-DtjkNmQ5.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Noto Serif";font-style:normal;font-display:swap;font-weight:900;src:url(/assets/noto-serif-latin-ext-900-normal-DDwdTkS0.woff2) format("woff2"),url(/assets/noto-serif-latin-ext-900-normal-BWzLU_rV.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Noto Serif";font-style:normal;font-display:swap;font-weight:900;src:url(/assets/noto-serif-latin-900-normal-Dxf9r6B8.woff2) format("woff2"),url(/assets/noto-serif-latin-900-normal-B_X43KYz.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #2b1d14;--card: #fbf3e6;--card-line: #ead9bf;--ink: #3b2414;--ink-soft: #7a5a42;--gold: #e8a33d;--gold-hi: #f6c766;--gold-ink: #4a2c0e;--danger: #b4432f;--online: #5cc06a;--radius: 22px;--shadow: 0 18px 50px rgba(20, 10, 4, .45);font-family:Be Vietnam Pro,system-ui,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;overflow:hidden;background:var(--bg)}button{font:inherit;color:inherit;cursor:pointer}.world{position:fixed!important;top:0;right:0;bottom:0;left:0;touch-action:none}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;overflow-y:auto;padding:16px;background:radial-gradient(ellipse at 50% 30%,rgba(232,163,61,.22),transparent 60%),var(--bg);z-index:50}.overlay.overlay--top{z-index:70}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow)}.overlay>*{margin:auto}.welcome{width:min(420px,100%);padding:32px 28px 24px;display:flex;flex-direction:column;gap:8px;text-align:center}.welcome__logo{margin:0 auto 4px}.welcome__title{margin:0;font-size:28px;font-weight:700}.welcome__sub{margin:0 0 14px;color:var(--ink-soft)}.welcome__note{margin:6px 0 0;font-size:13px;color:var(--ink-soft)}.field__label{text-align:left;font-weight:600;font-size:15px;color:var(--gold-ink);margin-top:6px}.field__input{font:inherit;font-size:17px;padding:13px 16px;border-radius:14px;border:2px solid var(--card-line);background:#fffdf8;color:var(--ink);outline:none;transition:border-color .15s,box-shadow .15s}.field__input:focus{border-color:var(--gold);box-shadow:0 0 0 4px #e8a33d33}.field__error{margin:4px 0 0;color:var(--danger);font-size:14px;text-align:left}.segmented{display:flex;gap:4px;padding:4px;border-radius:14px;background:#f1e4cf}.segmented__opt{flex:1;padding:9px 6px;border:none;border-radius:10px;background:transparent;font-size:15px;font-weight:600;color:var(--ink-soft);transition:background .15s,color .15s}.segmented__opt--on{background:#fffdf8;color:var(--ink);box-shadow:0 2px 8px #4a2c0e26}.swatches{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;padding:4px 0 8px}.swatch{width:36px;height:36px;border-radius:50%;border:3px solid transparent;box-shadow:inset 0 0 0 2px #ffffff80;transition:transform .12s}.swatch:hover{transform:scale(1.08)}.swatch--on{border-color:var(--ink);transform:scale(1.12)}.btn{border:none;border-radius:999px;padding:15px 20px;font-weight:700;font-size:17px;transition:transform .1s,filter .15s}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.6;cursor:wait}.btn--primary{margin-top:10px;background:linear-gradient(180deg,var(--gold-hi),var(--gold));color:var(--gold-ink);box-shadow:0 6px 18px #e8a33d66}.btn--primary:hover{filter:brightness(1.05)}.loader{width:44px;height:44px;border-radius:50%;border:4px solid rgba(246,199,102,.25);border-top-color:var(--gold-hi);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}input[type=range]{touch-action:pan-y}.stage-note{margin:4px 0 8px;padding:6px 10px;border-radius:10px;background:#d4a24c29;font-size:12.5px;text-align:center}.stage-note--staging{background:#ffe1e1;color:#8a1c1c;font-weight:700}.stage-corner{position:fixed;left:50%;top:0;transform:translate(-50%);z-index:200;padding:1px 10px 2px;border-radius:0 0 8px 8px;background:#c62828;color:#fff;font:700 10px/1.4 system-ui,sans-serif;letter-spacing:.12em;pointer-events:none}.swatch{position:relative}.swatch--locked{opacity:.55}.swatch .lock-badge{position:absolute;right:-6px;bottom:-6px;font-size:12px;line-height:1}.chip--locked{opacity:.6}.hud-top{position:fixed;top:16px;left:16px;z-index:20;max-width:calc(100vw - 32px)}.pill{display:inline-flex;align-items:center;gap:8px;padding:8px 16px 8px 10px;border:none;border-radius:999px;background:#fbf3e6f0;box-shadow:0 6px 20px #140a044d;font-size:14px;white-space:nowrap}.pill strong{font-weight:700;max-width:calc(100vw - 520px);overflow:hidden;text-overflow:ellipsis}@media (max-width: 760px){.hud-top .pill strong,.hud-top .pill__sep{display:none}}.pill__sep{width:1px;height:16px;background:var(--card-line)}.online-dot{width:9px;height:9px;border-radius:50%;background:var(--online);box-shadow:0 0 0 3px #5cc06a40}.online-list{list-style:none;margin:8px 0 0;padding:10px;width:240px;max-height:50vh;overflow-y:auto}.online-list li{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:10px;font-size:14px}.online-list li:hover{background:#e8a33d1f}.online-list em{color:var(--ink-soft);font-style:normal}.banner{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:30;padding:10px 18px;border-radius:999px;background:var(--danger);color:#fff;font-weight:600;font-size:14px}.hint{position:fixed;bottom:84px;left:50%;transform:translate(-50%);z-index:20;max-width:calc(100vw - 32px);padding:10px 18px;border:none;border-radius:999px;background:#2b1d14d1;color:#f6ead8;font-size:14px;line-height:1.6}kbd{display:inline-block;min-width:22px;margin-right:3px;padding:0 5px;border-radius:6px;background:#f6ead8;color:var(--ink);font:600 12px/20px Be Vietnam Pro,system-ui,sans-serif;text-align:center}.nametag{display:inline-flex;align-items:center;gap:6px;padding:4px 12px 4px 8px;border-radius:999px;background:#2b1d14c7;color:#fff7ea;font:600 13px/1.2 Be Vietnam Pro,system-ui,sans-serif;white-space:nowrap;-webkit-user-select:none;user-select:none}.nametag--self{background:#e8a33df2;color:var(--gold-ink)}.nametag__dot{width:10px;height:10px;border-radius:50%;flex:none;box-shadow:0 0 0 2px #fff9}.joystick{position:fixed;left:max(24px,env(safe-area-inset-left));bottom:max(28px,env(safe-area-inset-bottom));z-index:25;width:132px;height:132px;border-radius:50%;background:#2b1d1459;border:2px solid rgba(251,243,230,.45);display:grid;place-items:center;touch-action:none;user-select:none;-webkit-user-select:none;transition:background .15s}.joystick--active{background:#2b1d1480}@media (min-width: 641px) and (pointer: fine){.joystick{left:calc(max(16px,env(safe-area-inset-left)) + 124px)}}.joystick__knob{width:58px;height:58px;border-radius:50%;background:linear-gradient(180deg,var(--gold-hi),var(--gold));box-shadow:0 4px 14px #140a0473;pointer-events:none}.joystick:not(.joystick--active) .joystick__knob{transition:transform .15s ease-out}.hint--touch{bottom:auto;top:70px}.overhead{position:relative;display:flex;flex-direction:column;align-items:center}.overhead__above{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:4px}.bubble{position:relative;width:max-content;max-width:220px;padding:8px 12px;border-radius:16px;background:#fffdf8;color:var(--ink);font:500 14px/1.35 Be Vietnam Pro,system-ui,sans-serif;box-shadow:0 4px 14px #140a044d;overflow-wrap:anywhere;animation:bubble-in .18s ease-out,bubble-out .4s ease-in 6.6s forwards}.bubble:after{content:"";position:absolute;left:50%;bottom:-6px;transform:translate(-50%);border:7px solid transparent;border-bottom:0;border-top-color:#fffdf8}.bubble--typing{display:flex;gap:4px;padding:10px 14px;animation:bubble-in .18s ease-out}.bubble--typing i{width:6px;height:6px;border-radius:50%;background:var(--ink-soft);animation:typing 1s infinite ease-in-out}.bubble--typing i:nth-child(2){animation-delay:.15s}.bubble--typing i:nth-child(3){animation-delay:.3s}.bubble-emoji{font-size:44px;line-height:1;filter:drop-shadow(0 4px 6px rgba(0,0,0,.3));animation:emoji-bounce .7s cubic-bezier(.3,1.6,.5,1),bubble-out .4s ease-in 6.6s forwards}.emote-pop{font-size:32px;line-height:1;animation:emote-float 1.6s ease-out forwards}@keyframes bubble-in{0%{opacity:0;transform:translateY(6px) scale(.9)}}@keyframes bubble-out{to{opacity:0}}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}@keyframes emoji-bounce{0%{transform:scale(.2) translateY(20px)}to{transform:scale(1) translateY(0)}}@keyframes emote-float{0%{opacity:0;transform:translateY(10px) scale(.6)}20%{opacity:1;transform:translateY(0) scale(1.1)}to{opacity:0;transform:translateY(-40px) scale(1)}}.chat{position:fixed;right:16px;bottom:16px;z-index:22;width:340px;max-height:42vh;display:flex;flex-direction:column;border-radius:18px;background:#2b1d14b8;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fbf3e6;box-shadow:0 10px 30px #140a0459;overflow:hidden}.chat--sheet{left:0;right:0;bottom:0;width:auto;max-height:55vh;border-radius:20px 20px 0 0;padding-bottom:env(safe-area-inset-bottom);background:#2b1d14e6}.chat__header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px 4px}.chat__header button{border:none;background:transparent;color:inherit;font-size:18px;padding:4px 8px}.chat__list{list-style:none;margin:0;padding:10px 12px 4px;overflow-y:auto;flex:1;min-height:60px}.chat__empty{padding:8px;font-size:13px;opacity:.7}.chat__msg{display:flex;gap:8px;padding:5px 6px;border-radius:10px}.chat__msg:hover{background:#ffffff0f}.chat__msg .nametag__dot{margin-top:5px}.chat__body{min-width:0;flex:1}.chat__meta{display:flex;gap:8px;align-items:baseline;font-size:12px}.chat__meta strong{color:var(--gold-hi);font-weight:600}.chat__meta time{opacity:.55}.chat__body p{margin:1px 0 0;font-size:14px;line-height:1.4;overflow-wrap:anywhere}.chat__note{display:block;margin-top:2px;opacity:.7}.chat__actions{display:flex;gap:6px;margin-top:6px}.chat__actions button{border:none;border-radius:999px;padding:5px 10px;font-size:12px;background:#ffffff24;color:inherit}.chat__error{margin:0 14px;font-size:13px;color:#ffb4a3}.chat__form{display:flex;gap:8px;padding:10px}.chat__form input{flex:1;min-width:0;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:10px 14px;background:#ffffff1a;color:#fffdf8;font:inherit;font-size:16px;outline:none}.chat__form input:focus{border-color:var(--gold-hi)}.chat__form input::placeholder{color:#fbf3e68c}.chat__send{width:42px;border:none;border-radius:50%;background:linear-gradient(180deg,var(--gold-hi),var(--gold));color:var(--gold-ink);font-size:16px}.chat__send:disabled{opacity:.4}.fab{position:relative;width:52px;height:52px;border:none;border-radius:50%;background:#fbf3e6f2;box-shadow:0 6px 18px #140a0459;font-size:24px;display:grid;place-items:center}.fab--chat{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(28px,env(safe-area-inset-bottom));z-index:22}.fab__badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--danger);color:#fff;font-size:11px;font-weight:700;line-height:20px}.emotes{position:fixed;left:50%;bottom:16px;transform:translate(-50%);z-index:21;display:flex;gap:8px;padding:6px;border-radius:999px;background:#2b1d1499;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.emotes--touch{left:auto;border-radius:0;right:max(16px,env(safe-area-inset-right));bottom:calc(max(28px,env(safe-area-inset-bottom)) + 64px);transform:none;flex-direction:column-reverse;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;padding:0}.emotes__btn{width:44px;height:44px;border:none;border-radius:50%;background:#fbf3e61f;font-size:22px;transition:transform .1s,background .15s}.emotes--touch .emotes__btn{background:#fbf3e6f2;box-shadow:0 4px 12px #140a044d}.emotes__btn:hover{background:#fbf3e640;transform:translateY(-2px)}.topright{position:fixed;top:16px;right:16px;z-index:24;display:flex;align-items:flex-start;gap:8px}.pill--me{padding:8px 14px 8px 10px}.pill--me__name{max-width:110px;overflow:hidden;text-overflow:ellipsis;font-weight:600}.focus{position:relative;display:flex;flex-direction:column;align-items:flex-end}.focus .fpanel{position:absolute;top:calc(100% + 8px);right:0;width:320px;max-width:calc(100vw - 32px)}.focus__pill{padding:8px 14px}.focus__pill--break{background:#ffe6c2}.focus__time{font-variant-numeric:tabular-nums;font-size:16px;display:inline-block;min-width:3.3em;text-align:center}.fpanel{width:320px;max-width:100%;max-height:calc(100vh - 120px);overflow-y:auto}.fpanel__tabs{display:flex;gap:2px;padding:6px;border-bottom:1px solid var(--card-line)}.fpanel__tab{flex:1;border:none;background:transparent;padding:8px 4px;border-radius:10px;font-size:13px;font-weight:600;color:var(--ink-soft)}.fpanel__tab--on{background:#f1e4cf;color:var(--ink)}.fpanel__body{padding:14px;display:flex;flex-direction:column;gap:12px}.fpanel__note{margin:0;font-size:13px;color:var(--ink-soft);line-height:1.45;list-style:none}.fpanel__row{display:flex;gap:8px}.fpanel__row .btn{flex:1}.fpanel__custom{display:flex;gap:8px;align-items:flex-end}.fpanel__custom label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:var(--ink-soft)}.fpanel__custom input{width:72px;padding:7px 10px;border-radius:10px;border:2px solid var(--card-line);background:#fffdf8;font:inherit;font-size:15px}.clock{text-align:center;padding:14px;border-radius:16px;background:#f6ead8}.clock--break{background:#ffe6c2}.clock__phase{display:block;font-size:13px;font-weight:600;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em}.clock__time{display:block;font-size:46px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.15}.clock__bar{height:6px;margin-top:8px;border-radius:999px;background:#4a2c0e1f;overflow:hidden}.clock__bar i{display:block;height:100%;background:var(--gold);border-radius:inherit;transition:width .5s linear}.btn--small{margin:0;padding:10px 14px;font-size:15px;background:#efe1ca;color:var(--ink)}.btn--small.btn--primary{background:linear-gradient(180deg,var(--gold-hi),var(--gold));color:var(--gold-ink)}.btn--ghost{background:transparent;border:2px solid var(--card-line)}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip{border:none;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:600;background:#efe1ca;color:var(--ink)}.chip--on{background:var(--ink);color:#fff7ea}.chip:disabled{opacity:.5}.mixer{display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:500}.mixer input{width:100%;accent-color:var(--gold)}.todo__form{display:flex;gap:8px}.todo__form input{flex:1;min-width:0;padding:9px 12px;border-radius:12px;border:2px solid var(--card-line);background:#fffdf8;font:inherit;font-size:15px}.todo__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.todo{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:10px}.todo:hover{background:#f6ead8}.todo label{flex:1;display:flex;gap:8px;align-items:center;font-size:14px;cursor:pointer}.todo input{width:18px;height:18px;accent-color:var(--gold)}.todo--done span{text-decoration:line-through;opacity:.55}.todo button{border:none;background:transparent;color:var(--ink-soft);font-size:13px;padding:4px 6px}.seat-prompt{position:fixed;left:50%;bottom:88px;transform:translate(-50%);z-index:23;display:flex;flex-direction:column;align-items:center;gap:8px}.btn--prompt{display:inline-flex;align-items:center;gap:10px;padding:12px 22px;background:#fbf3e6f5;color:var(--ink);box-shadow:0 8px 22px #140a0459}.toast{position:fixed;left:50%;bottom:200px;transform:translate(-50%);z-index:90;padding:10px 16px;border-radius:999px;background:#2b1d14e6;color:#fff7ea;font-size:14px;max-width:calc(100vw - 32px);text-align:center}@media (pointer: coarse){.seat-prompt{bottom:calc(max(28px,env(safe-area-inset-bottom)) + 150px)}}.fade{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#120c08;opacity:0;pointer-events:none;transition:opacity .25s ease}.fade--on{opacity:1}.door-label{padding:6px 12px;border-radius:999px;background:#ffd27af2;color:var(--gold-ink);font:700 13px/1.2 Be Vietnam Pro,system-ui,sans-serif;white-space:nowrap;box-shadow:0 4px 14px #140a0459}.door-label span{font-weight:500}.pill__shard{padding:2px 8px;border-radius:999px;background:#efe1ca;font-size:12px}.drink{position:fixed;left:16px;bottom:88px;z-index:23;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.drink__btn{padding:10px 16px;font-size:15px}.drink__menu{display:flex;flex-direction:column;gap:2px;padding:12px;width:220px}.drink__menu strong{padding:4px 8px 8px}.drink__item{display:flex;align-items:center;gap:10px;padding:9px 10px;border:none;border-radius:10px;background:transparent;font-size:15px;text-align:left}.drink__item:hover,.drink__item--on{background:#f1e4cf}.drink__item span{font-size:20px}.minimap{position:fixed;top:122px;left:16px;z-index:19;padding:4px;border:none;border-radius:14px;background:#2b1d1499;box-shadow:0 6px 18px #140a0459;line-height:0}.minimap__toggle{position:fixed;top:122px;left:16px;z-index:19;width:44px;height:44px;font-size:20px}@media (pointer: coarse),(max-width: 640px){.drink{bottom:calc(max(28px,env(safe-area-inset-bottom)) + 236px)}}.channels{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding-bottom:8px;margin-bottom:4px;border-bottom:1px dashed rgba(0,0,0,.12)}.channels__label{font-weight:700;font-size:13px}.channels__here{opacity:1;cursor:default}.channels__note{flex-basis:100%;font-size:11px;opacity:.7}.hud-top:has(.online-list){z-index:46}.fpanel,.online-list,.mode__card{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.hud-top>.pill{vertical-align:middle}.hud-top>.pill:not(:last-child){margin-right:6px}.hud-top>.pill{margin-bottom:6px}.online-list__note{font-size:12px;opacity:.8;padding-bottom:4px}.drink__price{margin-left:auto;font-size:12px;opacity:.85}.drink__note{display:block;margin:-4px 0 4px;opacity:.75}.drink__item:disabled{opacity:.45;cursor:not-allowed}.nhau-menu{width:min(380px,calc(100vw - 32px))}.nhau-menu__list{width:auto;padding:0}.nhau-menu__list .drink__item small{margin-left:auto;font-weight:700}.dm{width:min(420px,calc(100vw - 32px))}.dm__body{display:flex;flex-direction:column;gap:8px;max-height:min(70vh,560px)}.dm-threads{list-style:none;margin:0;padding:0;display:grid;gap:4px;overflow-y:auto}.dm-threads button{width:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;column-gap:8px;padding:10px;border:0;border-radius:10px;background:#0000000a;color:inherit;font:inherit;text-align:left;cursor:pointer}.dm-threads__on{color:#2e7d32}.dm-threads__last{grid-column:2 / 4;opacity:.7;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.dm-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;overflow-y:auto;min-height:160px;flex:1}.dm-msg{align-self:flex-start;max-width:80%;padding:8px 10px;border-radius:12px 12px 12px 4px;background:#f1e4cf;display:grid;gap:2px;word-break:break-word}.dm-msg--mine{align-self:flex-end;border-radius:12px 12px 4px;background:#e9d3a6}.dm-msg small{opacity:.6;font-size:11px}.dm-msg__invite{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.dm-tools,.dm-form{display:flex;gap:6px}.dm-form input{flex:1;min-width:0;padding:10px 12px;border-radius:999px;border:1px solid rgba(0,0,0,.15);font:inherit}.mictest{width:min(360px,calc(100vw - 32px))}.mictest__meter{height:12px;border-radius:999px;background:#0000001a;overflow:hidden;margin:6px 0 10px}.mictest__meter i{display:block;height:100%;background:linear-gradient(90deg,#3c9d5d,#e8a33d);transition:width .08s}.dm-safety{display:flex;gap:8px;align-items:flex-start;padding:8px 10px;border-radius:10px;background:#fff3cd;font-size:13px;line-height:1.4}.dm-safety .linkbtn{flex:none;font-weight:700}.settings{width:min(440px,calc(100vw - 32px))}.settings__links{display:grid;gap:4px;margin-bottom:8px}.settings__links button,.settings__links a{display:flex;align-items:center;gap:8px;padding:10px 12px;border:0;border-radius:10px;background:#0000000a;color:inherit;font:inherit;text-align:left;text-decoration:none;cursor:pointer}.settings__links button:hover,.settings__links a:hover{background:#00000014}.topright__gear{position:relative}.pill__count{font-variant-numeric:tabular-nums}@media (max-width: 640px){.pill__word{display:none}}.profile__back{margin-right:8px;padding:0 6px;border:0;background:none;color:inherit;font:inherit;cursor:pointer}.overlay--dim{background:#120c088c;z-index:45}.profile{width:min(440px,100%);max-height:calc(100vh - 32px);overflow-y:auto;overflow-x:hidden;padding:18px}.profile__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.profile__head h2{margin:0;font-size:22px}.profile__close{width:38px;height:38px;border:none;border-radius:50%;background:#efe1ca;font-size:16px}.profile__tabs{margin-bottom:12px}.profile__body{display:flex;flex-direction:column;gap:8px}.profile__preview{height:200px;border-radius:16px;background:radial-gradient(circle at 50% 40%,#fff7ea,#f1e2c9);overflow:hidden}.profile__creds{display:flex;flex-direction:column;gap:8px;padding:8px 4px;box-shadow:none;text-align:center}.swatches--left{justify-content:flex-start}.field__hint{text-align:left;color:var(--ink-soft);font-size:12px}.field__ok{margin:4px 0 0;color:#2f7d4a;font-weight:600;text-align:left}.field__input--code{text-transform:uppercase;letter-spacing:.12em;text-align:center;font-variant-numeric:tabular-nums}.welcome__lock{font-size:44px}.btn--plain{background:transparent;color:var(--ink-soft);font-size:15px;padding:10px}.btn--danger{background:#f6e1da;color:var(--danger)}.chip--gold{background:linear-gradient(180deg,var(--gold-hi),var(--gold));color:var(--gold-ink);white-space:nowrap}.account-row{display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;border:2px solid var(--card-line)}.account-row div{flex:1;display:flex;flex-direction:column;min-width:0}.account-row small{color:var(--ink-soft)}.account-row__icon{font-size:22px}.secret{padding:12px;border-radius:12px;background:#f6ead8;font:700 18px/1 ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.08em;text-align:center}@media (max-width: 1000px){.pill--me__name{display:none}}.pill--icon{padding:8px 12px;font-size:16px}.stats{width:min(520px,100%)}.loader--dark{margin:30px auto;border-color:#4a2c0e26;border-top-color:var(--gold)}.kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.kpis div{display:flex;flex-direction:column;padding:12px;border-radius:14px;background:#f6ead8}.kpis strong{font-size:18px}.kpis span{font-size:12px;color:var(--ink-soft)}.bars{display:flex;gap:8px;height:130px;padding:8px 4px 0;align-items:flex-end}.bars__col{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px}.bars__col i{width:100%;max-width:36px;border-radius:6px 6px 3px 3px;background:linear-gradient(180deg,var(--gold-hi),var(--gold))}.bars__val{font-size:11px;color:var(--ink-soft);min-height:14px}.bars__day{font-size:12px;font-weight:600}.heatmap{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px}.heatmap__labels{display:grid;grid-template-rows:repeat(7,13px);gap:3px;font-size:10px;color:var(--ink-soft)}.heatmap__grid{display:flex;gap:3px}.heatmap__col{display:grid;grid-template-rows:repeat(7,13px);gap:3px}.hm{width:13px;height:13px;border-radius:3px}.hm--empty{background:transparent}.hm--0{background:#efe3cf}.hm--1{background:#f5d9a0}.hm--2{background:#f0bf5e}.hm--3{background:#d9952b}.hm--4{background:#9c5f12}.badges{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.badge{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px;border-radius:14px;background:#f1e6d4;filter:grayscale(1);opacity:.5;text-align:center}.badge span{font-size:26px}.badge small{font-size:11px;font-weight:600}.badge--on{filter:none;opacity:1;background:#fff1d0;box-shadow:inset 0 0 0 2px var(--gold)}.leaders{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.leaders li{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:12px;background:#f6ead8}.leaders__rank{width:26px;text-align:center;font-weight:700}.leaders__name{flex:1;font-weight:600}.leaders__time{font-size:13px;color:var(--ink-soft)}@media (max-width: 480px){.badges{grid-template-columns:repeat(3,1fr)}}.toggle{display:flex;gap:10px;align-items:flex-start;font-size:14px;text-align:left;cursor:pointer}.toggle input{width:18px;height:18px;margin-top:1px;accent-color:var(--gold);flex:none}.room-card{display:flex;align-items:center;gap:10px;padding:12px;border-radius:14px;background:#f6ead8}.room-card--edit{flex-direction:column;align-items:stretch}.room-card__main{flex:1;min-width:0;display:flex;flex-direction:column}.room-card__main small{color:var(--ink-soft)}.room-card__actions{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.online-list__invite{width:100%}.public-profile{width:min(560px,100%)}.public-profile__cta{display:block;text-align:center;text-decoration:none}html.transparent,html.transparent body,html.transparent #root{background:transparent}.obs{position:fixed;left:24px;bottom:24px;display:inline-flex;flex-direction:column;padding:18px 28px;border-radius:24px;background:#2b1d14d9;color:#fff7ea;font-family:Be Vietnam Pro,system-ui,sans-serif}.obs--break{background:#b06e1ee0}.obs__phase{font-size:22px;font-weight:600}.obs__time{font-size:84px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}.obs__room{font-size:16px;opacity:.8}.subjects{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}.subject{display:flex;flex-direction:column;align-items:center;gap:2px;padding:14px 6px;border:2px solid;border-radius:16px;background:#fffdf8;transition:transform .1s}.subject:hover{transform:translateY(-2px)}.subject__icon{font-size:28px}.subject small{color:var(--ink-soft);font-size:12px}.lecture{position:fixed;left:50%;bottom:84px;transform:translate(-50%);z-index:21;width:min(620px,calc(100vw - 32px));padding:12px 16px;border-radius:18px;background:#14100cd1;color:#fff7ea;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.lecture__body{max-height:min(42vh,360px);overflow-y:auto}.lecture--mini{padding:8px 12px}.lecture--mini .lecture__head{margin-bottom:6px}.lecture__head{display:flex;align-items:center;gap:10px;font-size:13px}.lecture__head .chip{white-space:nowrap;flex-shrink:0}.lecture__head strong{white-space:nowrap;color:var(--gold-hi);font-size:15px}.lecture__head span{flex:1;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lecture p{margin:6px 0 8px;font-size:15px;line-height:1.45}.lecture__bar{height:4px;border-radius:999px;background:#ffffff26;overflow:hidden}.lecture__bar i{display:block;height:100%;background:var(--gold);transition:width .5s linear}@media (max-width: 640px){.subjects{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px),(pointer: coarse){.lecture{left:50%;bottom:auto;top:160px;transform:translate(-50%);width:calc(100vw - 32px);padding:8px 12px;z-index:26}.lecture__body{max-height:max(90px,min(42vh,calc(100dvh - 380px)))}.lecture p{font-size:13px;margin:4px 0}}.admin{max-width:1100px;margin:0 auto;padding:24px 20px;color:#2b1d14;background:#f6ecd8;height:100vh;overflow-y:auto}.admin__row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.admin__row .field__input{flex:1;min-width:180px}.admin__edit{display:flex;flex-direction:column;gap:8px;padding:16px;margin-bottom:16px;color:var(--ink)}.admin__json{min-height:280px;font:13px/1.5 ui-monospace,Menlo,monospace;padding:10px;border-radius:12px;border:2px solid var(--card-line)}.admin__json--short{min-height:80px}.admin__table{width:100%;border-collapse:collapse;font-size:14px}.admin__table th,.admin__table td{padding:8px;border-bottom:1px solid rgba(90,58,32,.18);text-align:left}.admin__table th{color:#5a4636;font-weight:700}.admin__table tbody tr:hover{background:#d4a24c1a}.game{width:min(560px,100%);max-height:calc(100vh - 32px);overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px}.game__players{display:flex;justify-content:space-between;gap:8px;font-size:14px}.game__players span{padding:6px 10px;border-radius:999px;background:#f1e4cf}.game__players span:nth-child(2){background:none;color:var(--ink-soft)}.game__players .on{background:var(--gold-hi);font-weight:700}.game__status{margin:0;text-align:center;font-weight:600}.caro{display:grid;aspect-ratio:1;background:#f3e2c2;border:2px solid #b08a5a;border-radius:8px}.caro__cell{border:.5px solid rgba(90,60,30,.35);background:transparent;padding:0;display:grid;place-items:center;font-size:clamp(10px,3.2vw,20px);font-weight:800;line-height:1}.caro__cell:not(:disabled):hover{background:#e8a33d40}.caro__cell--win{background:#ffd27ae6!important}.caro__cell--last{box-shadow:inset 0 0 0 2px #e8a33d}.caro__x{color:#c0392b}.caro__o{color:#2c5aa0}.xq{display:grid;grid-template-columns:repeat(9,1fr);aspect-ratio:9 / 10;background:linear-gradient(#6b4226,#6b4226) center / 2px 100% no-repeat,#e9c98f;border:3px solid #6b4226;border-radius:8px;padding:2%}.xq__pt{position:relative;border:none;background:linear-gradient(#8a6040,#8a6040) center / 1px 100% no-repeat,linear-gradient(#8a6040,#8a6040) center / 100% 1px no-repeat;display:grid;place-items:center;padding:0}.xq__pt:nth-child(n+37):nth-child(-n+54){background:linear-gradient(#8a6040,#8a6040) center / 100% 1px no-repeat}.xq__piece{width:86%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:#fbf3e2;border:2px solid #222;color:#222;font-size:clamp(12px,3.6vw,22px);font-weight:700;box-shadow:0 2px 4px #0000004d;z-index:1}.xq__piece--red{border-color:#b22222;color:#b22222}.xq__piece--sel{outline:3px solid #e8a33d;transform:scale(1.08)}.xq__pt--last .xq__piece{background:#fff2c4}.xq__dot{position:absolute;width:30%;aspect-ratio:1;border-radius:50%;background:#3c9d5dbf;z-index:2}.game-prompt{position:fixed;left:50%;bottom:152px;transform:translate(-50%);z-index:23}.bg-tools{position:fixed;left:16px;top:160px;z-index:21;display:flex;flex-direction:column;align-items:flex-start;gap:8px;max-height:calc(100vh - 360px)}.quiz{width:min(340px,calc(100vw - 32px));overflow:auto;padding:12px;display:flex;flex-direction:column;gap:8px}.quiz__head{display:flex;align-items:center;gap:8px}.quiz__head span{flex:1;text-align:right;font-size:13px;color:var(--ink-soft);font-variant-numeric:tabular-nums}.quiz__hide{border:none;background:#efe1ca;border-radius:8px;width:26px;height:26px}.quiz__q{margin:0;font-weight:600}.quiz__choices{display:grid;grid-template-columns:1fr 1fr;gap:6px}.quiz__c{border:2px solid var(--card-line);border-radius:12px;padding:8px;background:#fffdf8;font-size:14px;text-align:left}.quiz__c:not(:disabled):hover{border-color:var(--gold)}.quiz__c--picked{border-color:var(--gold);background:#fff1d0}.quiz__c--right{border-color:#3c9d5d;background:#dff3e6;font-weight:700}.quiz__c--wrong{border-color:var(--danger);background:#f9e0da}.quiz__top{list-style:none;margin:0;padding:0;font-size:13px}.quiz__top b{float:right}.exercise{margin:8px 0;padding:10px;border-radius:14px;background:#fbf3e6;color:var(--ink);display:flex;flex-direction:column;gap:8px}.exercise__head{display:flex;justify-content:space-between;font-size:14px}.exercise__head span{font-variant-numeric:tabular-nums;color:var(--ink-soft)}.exercise__q{margin:0!important;font-weight:600;font-size:15px!important}.exercise__note,.exercise__stats{margin:0!important;font-size:13px!important;color:var(--ink-soft)}.exercise__reveal p{margin:4px 0!important;font-size:14px!important}.exercise__explain{padding:8px;border-radius:10px;background:#fff1d0}.learn{width:min(600px,100%)}.learn__headact{display:flex;align-items:center;gap:6px;flex-shrink:0}.learn__headact .chip{white-space:nowrap}.path-head{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}.path-head>div{flex:1 1 100%}.level{border-radius:16px;background:#f8eedd;padding:10px 12px;display:flex;flex-direction:column;gap:6px}.level header{display:flex;justify-content:space-between;align-items:baseline}.level header span{font-size:12px;font-weight:700;color:var(--gold-ink);background:var(--gold-hi);border-radius:999px;padding:2px 10px}.session{border-radius:12px;background:#fffdf8;border:2px solid transparent}.session--next{border-color:var(--gold)}.session__head{width:100%;display:flex;gap:8px;align-items:center;padding:10px;border:none;background:none;text-align:left;font-size:14px}.session__head strong{flex:1}.session__body{padding:0 12px 12px;display:flex;flex-direction:column;gap:6px;font-size:14px}.session__body ul,.plan{margin:0;padding-left:20px}.plan li{margin:3px 0}.stage-tag{display:inline-block;padding:1px 8px;border-radius:999px;background:#e6efff;color:#2c4a80;font-size:11px;font-weight:700;width:fit-content}.selfstudy__top{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--ink-soft)}.selfstudy__bar{height:5px;border-radius:999px;background:#efe1ca;overflow:hidden}.selfstudy__bar i{display:block;height:100%;background:var(--gold)}.selfstudy__title{margin:0;font-size:20px}.selfstudy__bullets{margin:0;padding-left:20px;line-height:1.6}.selfstudy__say{margin:0;padding:10px;border-radius:12px;background:#f6ead8;font-size:14px;line-height:1.5}.hw,.notes{display:flex;flex-direction:column;gap:6px}.hw textarea,.notes textarea{min-height:90px;padding:10px;border-radius:12px;border:2px solid var(--card-line);background:#fffdf8;font:inherit;font-size:14px;resize:vertical}.notes summary{cursor:pointer;font-weight:600;font-size:14px;padding:4px 0}.archive-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.archive-list li{display:flex;flex-direction:column;padding:8px 10px;border-radius:10px;background:#f6ead8;font-size:14px}.archive-list small{color:var(--ink-soft)}.archive-body{margin:4px 0 8px;white-space:pre-wrap;font-size:14px;padding:8px;border-radius:10px;background:#fffdf8}.chat__tabs{display:flex;gap:4px;padding:8px 10px 0}.chat__tabs button{flex:1;border:none;border-radius:999px;padding:6px;font-size:13px;background:#ffffff14;color:inherit}.chat__tabs button.on{background:var(--gold);color:var(--gold-ink);font-weight:700}.fab__badge--inline{position:static;display:inline-block;margin-left:4px}.crew{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:16px;background:#f8eedd}.crew__head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.crew__head div{display:flex;flex-direction:column}.crew__head small{color:var(--ink-soft)}.crew__streak{padding:4px 10px;border-radius:999px;background:#fff1d0;font-weight:700}.crew__members{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.crew__members li{display:flex;align-items:center;gap:8px;padding:8px;border-radius:12px;background:#fffdf8}.crew__who{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;font-size:14px}.crew__who small{color:var(--ink-soft);font-size:12px}.crew__who .clock__bar{margin-top:4px;height:5px}.crew__acts{display:flex;gap:4px}.crew__feed{list-style:none;margin:0;padding:8px;border-radius:12px;background:#fffdf8;font-size:13px;display:flex;flex-direction:column;gap:4px;max-height:140px;overflow-y:auto}.crew__feed small{color:var(--ink-soft)}.crew__leave{align-self:flex-end;border:none;background:none;color:var(--ink-soft);font-size:12px;text-decoration:underline}.crew-notice{position:fixed;top:70px;left:50%;transform:translate(-50%);z-index:35;width:min(380px,calc(100vw - 32px));padding:14px;animation:bubble-in .2s ease-out}.crew-notice p{margin:0 0 10px;font-weight:600}.topright__menu{display:none;position:relative;z-index:3}.menu{position:absolute;top:calc(100% + 8px);right:0;width:220px;padding:6px;display:flex;flex-direction:column}.menu button{border:none;background:none;text-align:left;padding:10px 12px;border-radius:10px;font-size:15px}.menu button:hover{background:#f1e4cf}body.hud-crowded .topright__wide{display:none}body.hud-crowded .topright__menu{display:block}@media (max-width: 760px),(pointer: coarse) and (max-height: 520px){.topright__wide{display:none}.topright__menu{display:block}}.hand-up{font-size:30px;animation:emoji-bounce .5s ease-out}.meeting-bar{position:fixed;left:16px;top:64px;z-index:21;display:flex;gap:8px}.pill--live{background:#ffdfdf}.meeting-panel{width:min(900px,100%)}.slide-view{position:relative;border-radius:12px;overflow:hidden;background:#111;cursor:crosshair}.slide-view img{display:block;width:100%}.slide-view__n{flex:1;text-align:center;font-variant-numeric:tabular-nums;align-self:center}.laser{position:absolute;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:#ff2a2a;box-shadow:0 0 12px 4px #ff2a2a99;pointer-events:none}.upload-btn{text-align:center;cursor:pointer}.board-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.board-canvas{width:100%;aspect-ratio:11 / 6;border-radius:12px;border:2px solid var(--card-line);background:#fbfbf7;touch-action:none;cursor:crosshair}.screen-video{width:100%;border-radius:12px;background:#111}.meeting-bar{flex-wrap:wrap;max-width:calc(100vw - 32px)}.mode{position:relative;margin-top:8px}.mode__pill{font-weight:700;font-size:13px}.mode__pill--focus{background:#2c3e66;color:#e9efff}.mode__pill--fun{background:#e07a5f;color:#fff}.mode__caret{opacity:.6;font-size:10px}.mode__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:29}.mode__card{position:absolute;top:calc(100% + 6px);left:0;z-index:30;width:320px;max-width:calc(100vw - 32px);display:flex;flex-direction:column;gap:8px;padding:12px}.mode__opts{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.mode__opt{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border:2px solid transparent;border-radius:12px;background:#f6ead8;text-align:center}.mode__opt small{font-size:10.5px;line-height:1.25;color:var(--ink-soft)}.mode__opt--on{border-color:var(--ink);background:#fff1d0}.mode__opt--focus.mode__opt--on{background:#dfe7fb}.mode__opt--fun.mode__opt--on{background:#fde3d9}.mode__icon{font-size:22px}.qa-item{display:flex;gap:10px;align-items:center;padding:10px;border:none;border-radius:12px;background:#f6ead8;text-align:left}.qa-item__count{min-width:52px;display:flex;flex-direction:column;align-items:center;padding:4px;border-radius:10px;border:1.5px solid var(--card-line);font-size:11px;color:var(--ink-soft)}.qa-item__count b{font-size:16px;color:var(--ink)}.qa-item__count--solved{background:#3c9d5d;border-color:#3c9d5d;color:#eafbe9}.qa-item__count--solved b{color:#fff}.qa-item__main{display:flex;flex-direction:column;gap:2px;min-width:0}.qa-item__main small,.qa-post small{color:var(--ink-soft);font-size:12px}.qa-post{display:flex;gap:10px;padding:10px;border-radius:12px;background:#fffdf8;border:1.5px solid var(--card-line)}.qa-post--accepted{border-color:#3c9d5d;background:#effaf0}.qa-post__title{font-size:16px}.qa-post__body{margin:4px 0;white-space:pre-wrap;font-size:14px}.qa-vote{align-self:flex-start;display:flex;flex-direction:column;align-items:center;min-width:40px;padding:4px;border:1.5px solid var(--card-line);border-radius:10px;background:#fff;color:var(--ink-soft)}.qa-vote--on{background:var(--accent, #e3b04b);border-color:transparent;color:#3a2410}.qa-vote:disabled{opacity:.6}.qa-badge{font-size:12px;font-weight:700;color:#2b7a46}.qa-related{display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:12px;background:#fff1d0}.qa-related__item{display:flex;flex-direction:column}.qa-related__item small{color:var(--ink-soft)}.linkbtn{margin-left:8px;border:none;background:none;padding:0;color:#2c5aa0;font-size:12px;text-decoration:underline}.deck{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;border:none;border-radius:12px;background:#f6ead8;text-align:left;font-size:14px}.deck small b{color:var(--danger)}.flash{min-height:200px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:20px;border:2px solid var(--card-line);border-radius:20px;background:#fffdf8;box-shadow:0 6px 18px #4a2c0e1f;transition:transform .25s,background .2s}.flash--back{background:#fff1d0;transform:rotateX(4deg)}.flash__side{font-size:12px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em}.flash__text{font-size:18px;font-weight:600;white-space:pre-wrap;text-align:center}.grades{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.grade{border:none;border-radius:12px;padding:10px 4px;font-weight:700;color:#fff}.grade--0{background:#c0392b}.grade--1{background:#e07a5f}.grade--2{background:#3c9d5d}.grade--3{background:#2c5aa0}.nametag__status{margin-left:2px}@media (max-width: 900px) and (pointer: fine){.chat{width:290px}}@media (max-width: 480px){.welcome{padding:26px 18px 20px}.hint{font-size:12px}}.deep{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:16px;background:#0c0e1a8c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.deep--run{background:#0a0c16d1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.deep__box{width:420px;max-width:100%;max-height:calc(100vh - 32px);overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:22px;border-radius:22px;background:var(--card, #fffaf0);color:var(--ink)}.deep__box h2{margin:0}.deep__sub{margin:0;color:var(--ink-soft);font-size:14px}.deep__box--run{align-items:center;text-align:center;background:transparent;color:#eef1ff}.deep__label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;opacity:.6}.deep__goal{font-size:20px}.deep__time{font-size:84px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1}.deep__bar{width:100%;background:#ffffff26}.deep__todos{width:100%;text-align:left}.deep__todos .todo{background:#ffffff14;color:#eef1ff}.deep__quit{margin-top:12px;border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:6px 16px;background:none;color:#eef1ffb3}.deep__open{margin:0 14px 14px}.pill--icon{position:relative}.pill__dot{position:absolute;top:4px;right:4px;width:9px;height:9px;border-radius:50%;background:var(--danger, #c0392b);box-shadow:0 0 0 2px #fff}.pill--me__coins{margin-left:6px;font-size:12px;font-weight:700;color:#9a6a12}.coins-big{align-self:center;font-size:22px;padding:6px 18px;border-radius:999px;background:#fff1d0}.quest{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;background:#f6ead8}.quest--claimed{opacity:.6}.quest--bonus{background:#fff1d0;border:1.5px dashed #e3b04b}.quest__icon{font-size:22px}.quest__main{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.quest__main small{color:var(--ink-soft);font-size:12px}.quest__done{font-weight:800;color:#3c9d5d;padding:0 8px}.nametag--hidden{visibility:hidden}.profile:has(.selfstudy__mode){width:min(860px,100%)}.selfstudy__mode{margin:4px 0 8px}.art{font-size:15.5px;line-height:1.68;color:var(--ink)}.art__progress{position:sticky;top:0;z-index:2;height:3px;margin:0 0 6px;background:#0000000f;border-radius:2px;overflow:hidden}.art__progress>div{height:100%;background:var(--accent, #c9a14a);transform:scaleX(0);transform-origin:left;transition:transform .15s linear}.art__resume{position:sticky;top:10px;z-index:2;margin:6px 0 10px;box-shadow:0 4px 14px #0000002e}.art__head h2{margin:4px 0 2px;font-size:22px;line-height:1.3}.art__head span{font-size:13px;opacity:.7}.art__h{margin:26px 0 8px;padding-bottom:4px;border-bottom:2px solid rgba(155,47,47,.25);font-size:19px}.art__h3{margin:18px 0 6px;font-size:16.5px}.art p{margin:8px 0}.art ul,.art ol{margin:8px 0;padding-left:22px}.art li{margin:4px 0}.art code{padding:1px 5px;border-radius:5px;background:#2b1d1414;font-size:.9em}.art__code{margin:10px 0;padding:12px 14px;border-radius:12px;background:#1e1a24;color:#f2ecff;font-size:13px;line-height:1.55;overflow-x:auto;white-space:pre}.art__code[data-lang=text]{white-space:pre-wrap;overflow-wrap:anywhere}.art__code code{background:none;padding:0;font-size:inherit}.art__box{margin:12px 0;padding:10px 14px;border-radius:12px;font-size:14.5px}.art__box--tip{background:#eef7ea;border-left:4px solid #4c9a52}.art__box--warn{background:#fff1e6;border-left:4px solid #d9822b}.art__story{margin:12px 0;padding:14px 16px;border-radius:14px;background:linear-gradient(135deg,#fbf3e4,#f3e4cc);border:1px solid rgba(155,47,47,.18)}.art__story blockquote{margin:0;font-style:italic}.art__story figcaption{margin-top:6px;font-size:13px;opacity:.75;text-align:right}.art figure{margin:14px 0}.art figure>figcaption{font-weight:700;margin-bottom:8px}.art__flow ol{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:22px;counter-reset:none}.art__flow li{position:relative;flex:1 1 140px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;padding:12px 10px;border-radius:14px;background:#fffaf2;border:1.5px solid rgba(212,162,76,.55);margin:0}.art__flow li:not(:last-child):after{content:"→";position:absolute;right:-19px;top:50%;transform:translateY(-50%);font-size:18px;color:#9b2f2f}.art__flow-icon{font-size:26px}.art__flow small{font-size:12.5px;opacity:.8;line-height:1.4}.art__compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.art__compare-grid>div{padding:10px 12px;border-radius:12px}.art__compare-grid span{font-weight:700;font-size:13.5px}.art__compare-grid pre{margin:6px 0 0;white-space:pre-wrap;font:13.5px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.art__compare-bad{background:#fdeceb;border:1px solid #e8b4b0}.art__compare-good{background:#eaf6ec;border:1px solid #a9d3b0}.art__check{padding:12px 14px;border-radius:14px;background:#fffaf2;border:1.5px dashed rgba(212,162,76,.7)}.art__check ul{list-style:none;padding:0}.art__check label{display:flex;gap:8px;align-items:flex-start}.art__check input{margin-top:5px}.art__chat{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:14px;background:#f4efe6}.art__msg{max-width:88%;padding:8px 12px;border-radius:14px;font-size:14.5px}.art__msg span{font-size:12px;font-weight:700;opacity:.7}.art__msg p{margin:2px 0 0}.art__msg--user{align-self:flex-end;background:#fff}.art__msg--ai{align-self:flex-start;background:#2b2433;color:#f2ecff}.art__table{overflow-x:auto;margin:12px 0}.art__table table{border-collapse:collapse;width:100%;font-size:14px}.art__table th,.art__table td{padding:7px 10px;border:1px solid rgba(120,80,40,.25);text-align:left;vertical-align:top}.art__table th{background:#f3e4cc}.art__go{display:block;margin:22px auto 8px}@media (max-width: 640px){.art__compare-grid{grid-template-columns:1fr}.art__flow ol{flex-direction:column;gap:18px}.art__flow li{flex:none;display:grid;grid-template-columns:34px 1fr;column-gap:10px;align-items:center;text-align:left;padding:8px 12px}.art__flow-icon{grid-row:span 2;font-size:24px}.art__flow li:not(:last-child):after{content:"↓";right:auto;left:50%;top:auto;bottom:-19px;transform:translate(-50%)}}.session__read{margin-left:auto;padding:1px 7px;border-radius:999px;background:#4c9a5226;color:#2f6e35;font-size:11.5px;font-weight:700;white-space:nowrap}.selfstudy-next{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;margin:8px 0 12px;padding:12px 16px;text-align:left;border-radius:16px}.selfstudy-next span{font-size:12.5px;opacity:.85}.selfstudy-next b{font-size:15.5px}.selfstudy-next small{font-size:12px;opacity:.8}.drill__top{display:flex;justify-content:space-between;font-weight:700;margin:4px 0}.drill__score{color:#2f6e35}.drill--end{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:8px 0}.subjbar__add{border-style:dashed}.subjbar__pick{margin:6px 0 10px;padding:10px 12px;border-radius:14px;background:#d4a24c1a;display:flex;flex-direction:column;gap:6px}.subjbar__row{display:flex;justify-content:space-between;align-items:center;gap:8px}.subjbar__soon summary{cursor:pointer;opacity:.7;font-size:13px}.chip--soon{opacity:.45;filter:grayscale(1);cursor:default}.topright__menu{display:block}.topright__main{position:relative;font-weight:700;padding:8px 14px 8px 12px}@media (max-width: 480px){.topright__main{padding:7px 10px;font-size:13px;gap:4px}}.sect-pick__opt.is-soon{opacity:.45;filter:grayscale(1);cursor:not-allowed}.group-opt:disabled{cursor:default}.welcome__warn{display:block;margin:6px 0 2px;padding:6px 10px;border-radius:10px;background:#fff1e6;border-left:3px solid #d9822b;font-size:12.5px}@media (max-width: 760px),(pointer: coarse) and (max-height: 520px){.topright{flex-wrap:wrap;justify-content:flex-end;max-width:200px;row-gap:6px}.topright .focus{order:1}.topright__menu{order:2}.topright__main{order:3}.topright__gear{order:4}.topright__main{padding:6px 12px 6px 10px;font-size:13px}.topright .focus__time{font-size:15px;min-width:3.15em}body .tanthu__pill{top:calc(max(12px,env(safe-area-inset-top)) + 150px)}}@media (pointer: coarse) and (max-height: 520px) and (min-width: 641px){.topright{max-width:240px}.topright__main{flex-basis:100%;max-width:max-content;margin-left:auto}}@media (min-width: 761px) and (not ((pointer: coarse) and (max-height: 520px))){.event-banner{top:70px}}.topright__menu>.pill{position:relative}.enter-room{position:relative;display:inline-block;vertical-align:middle;margin-bottom:6px}.enter-room__list{position:absolute;top:calc(100% + 6px);left:0;z-index:30;width:240px;max-height:calc(100dvh - 140px);overflow-y:auto;padding:6px;display:flex;flex-direction:column}.enter-room__list button{border:none;background:none;text-align:left;padding:9px 10px;border-radius:10px;font-size:14.5px}.enter-room__list button:hover{background:#f1e4cf}.hud-top:has(.enter-room__list){z-index:46}.admin .btn--ghost{color:#5a3a20;border-color:#5a3a2073}.admin h1,.admin h2,.admin h3{color:#2b1d14}.course-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;margin:6px 0 10px;border-radius:14px;background:linear-gradient(135deg,#fbf3e4,#f3e4cc);border:1.5px solid rgba(212,162,76,.55)}.course-head>div{display:flex;flex-direction:column;gap:2px}.course-head b{font-size:17px}.course-head small{font-size:12.5px;opacity:.8}.course-head__tag{font-size:11.5px;font-weight:700;color:#9b2f2f}.course-head--pro{border-color:#d4a24c;box-shadow:0 0 0 2px #d4a24c40}.pro-badge,.session__pro{flex:none;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.06em;background:#5a3a201f;color:#5a3a20}.pro-badge,.session__pro--on{background:linear-gradient(135deg,#ffe08a,#e0a93a);color:#4a2c00}.session__lock{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.nametag__pro{margin-left:4px;padding:0 6px;border-radius:999px;background:linear-gradient(135deg,#ffe08a,#e0a93a);color:#4a2c00;font:800 10px/1.6 system-ui,sans-serif;letter-spacing:.05em;box-shadow:0 0 8px #ffc850b3;white-space:nowrap}.tpl{display:flex;flex-direction:column;gap:8px}.tpl-search{display:flex;gap:6px}.tpl-search .input{flex:1;min-width:0}.tpl-types,.tpl-subjects{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.tpl-types .chip,.tpl-subjects .chip{flex:none;white-space:nowrap}.tpl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(230px,100%),1fr));gap:10px}.tpl-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;text-align:left;border-radius:14px;background:#fffaf2;border:1.5px solid rgba(212,162,76,.45);color:#2b1d14;cursor:pointer}.tpl-card:hover{border-color:#d4a24c;box-shadow:0 4px 14px #5a3a2026}.tpl-card b{font-size:14.5px;word-break:break-word}.tpl-card span:not(.tpl-tag){font-size:12.5px;opacity:.85;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.tpl-card small{font-size:11px;opacity:.6}.tpl-tag{padding:1px 8px;border-radius:999px;font-size:11px;font-weight:700;background:#9b2f2f1f;color:#9b2f2f}.tpl-tag--soft{background:#5a3a201a;color:#5a3a20}.tpl-tags{display:flex;gap:6px;flex-wrap:wrap}.tpl-more{align-self:center}.tpl-credit{margin-top:6px}.tpl-detail{width:min(720px,100%)}.tpl-detail-wrap{z-index:60}.tpl-desc{white-space:pre-wrap;font-size:14px;max-height:220px;overflow-y:auto}.tpl-body{padding:12px 14px;border-radius:12px;background:#fffaf2;border:1px solid rgba(212,162,76,.4);font-size:14px;line-height:1.6}.tpl-body p{margin:0;white-space:pre-wrap}.tpl-table{margin:6px 0;overflow-x:auto}.tpl-table table{border-collapse:collapse;font-size:13px;min-width:100%}.tpl-table th,.tpl-table td{padding:5px 8px;border:1px solid rgba(212,162,76,.45);text-align:left;vertical-align:top}.tpl-table th{background:#d4a24c29}.tpl-install pre{margin:4px 0 6px;padding:10px 12px;border-radius:10px;background:#1e1a24;color:#f2ecff;font-size:12.5px;white-space:pre-wrap;word-break:break-all}.tpl-gate{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:12px 14px;border-radius:14px;background:linear-gradient(135deg,#fff1d6,#f6dfb0);border:1.5px solid #d4a24c}.tpl-gate span{font-size:13px}.tpl-page{width:min(1100px,100%);grid-template-columns:minmax(0,1fr);box-sizing:border-box}.tpl-page>*,.tpl,.tpl-page .guide__head>div{min-width:0}.tpl-page .guide__head img{flex:none}@media (max-width: 520px){.tpl-page{padding:14px}.tpl-page .guide__head h1{font-size:1.15rem}}.tpl-code{font-size:12px;padding:2px 6px;border-radius:6px;background:#0000000f}.tpl-orig{font-size:13px;opacity:.8}.tpl-orig summary{cursor:pointer}.tpl-orig p{white-space:pre-line}.pro-buy{position:relative;width:min(420px,100%);margin:auto;padding:0 0 20px;overflow:hidden;display:flex;flex-direction:column;gap:14px}.pro-buy__close{position:absolute;top:10px;right:10px;z-index:1;color:#fff3d6;background:#ffffff24}.pro-buy__hero{display:flex;flex-direction:column;align-items:center;gap:4px;padding:26px 20px 20px;text-align:center;color:#fff3d6;background:radial-gradient(circle at 50% 0%,rgba(255,214,120,.45),transparent 60%),linear-gradient(160deg,#7a1d1d,#3c0f14)}.pro-buy__star{font-size:42px;line-height:1;filter:drop-shadow(0 0 14px rgba(255,204,92,.8))}.pro-buy__hero small{text-transform:uppercase;letter-spacing:.12em;font-size:11px;opacity:.85}.pro-buy__hero h2{margin:0;font-size:1.45rem;color:#ffe2a0}.pro-buy__price{margin-top:8px;display:flex;align-items:baseline;gap:6px;padding:6px 16px;border-radius:999px;background:#ffffff1f;border:1px solid rgba(255,214,120,.5)}.pro-buy__price b{font-size:1.5rem;color:#fff}.pro-buy__price span{font-size:12px;opacity:.85}.pro-buy__perks{list-style:none;margin:0;padding:0 22px;display:grid;gap:8px;font-size:14px;line-height:1.4}.pro-buy__wallet{margin:0 22px;padding:10px 14px;border-radius:12px;display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;background:#3c783c1a;font-size:14px}.pro-buy__wallet--short{background:#b028281a}.pro-buy__wallet em{margin-left:auto;font-style:normal;font-weight:600;color:#a02828}.pro-buy__err{margin:0 22px;color:#a02828;font-size:13px}.pro-buy__actions{padding:0 22px;display:flex;flex-direction:column;gap:8px}.pro-buy__actions .btn{width:100%;justify-content:center}.tpl-actions{display:flex;flex-wrap:wrap;gap:8px}@media print{body:has(.tpl-detail-wrap)>*:not(.tpl-detail-wrap){display:none!important}.tpl-detail-wrap{position:static!important;background:#fff!important;padding:0!important;overflow:visible!important}.tpl-detail,.tpl-detail .profile__body{max-height:none!important;overflow:visible!important}.tpl-detail{width:100%!important;box-shadow:none!important;border:none!important;background:#fff!important;color:#000!important}.tpl-detail button,.tpl-detail .tpl-orig,.tpl-detail .tpl-gate{display:none!important}.tpl-detail .tpl-body{max-height:none!important;overflow:visible!important;background:none!important;font-size:11pt}}.save-acc{display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:14px;background:#e8a33d24;border:1px solid rgba(212,162,76,.5);font-size:14px;line-height:1.45}.save-acc .btn{justify-content:center}.pro-buy__save{padding:0 22px}.save-nudge{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;padding:8px 12px;border-radius:12px;background:#e8a33d29;font-size:13px}.save-nudge span{flex:1 1 200px}.subjbar__courses{align-items:center;margin-top:6px}.subjbar__courses .field__label{margin:0 4px 0 0}.study-skills{display:flex;flex-direction:column;gap:10px}.study-skills__back{align-self:flex-start}.thpt{display:flex;flex-direction:column;gap:12px}.thpt-modal{width:min(820px,100%);margin:auto}.thpt-entry{display:flex;align-items:center;gap:10px;text-align:left;padding:10px 14px;border-radius:14px;border:1px solid rgba(160,40,40,.35);background:linear-gradient(120deg,#7a1d1d1f,#e8a33d29);cursor:pointer;color:inherit}.thpt-entry>span:first-child{font-size:26px}.thpt-entry small{display:block;opacity:.8}.thpt__pack{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 14px;border-radius:12px;background:#e8a33d29}.thpt__pack span{flex:1 1 220px}.thpt__bar{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:12px;background:#fbf3e6;box-shadow:0 4px 12px #28140826}.thpt__bar span{flex:1;font-size:13px}.thpt__time{font-variant-numeric:tabular-nums}.thpt__time--low{color:#a02828}.thpt__sec h4{margin:8px 0 2px}.thpt__passage{white-space:pre-line;padding:12px 14px;border-radius:12px;background:#fffaf2;border:1px solid rgba(212,162,76,.4);line-height:1.6;font-size:14px}.thpt__q{padding:8px 0;border-bottom:1px dashed rgba(120,80,40,.2)}.thpt__q p{margin:0 0 6px;white-space:pre-line}.thpt__choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:6px}.thpt__opt{text-align:left;padding:8px 10px;border-radius:10px;border:1px solid rgba(120,80,40,.25);background:#ffffff80;color:inherit;font:inherit;font-size:14px;cursor:pointer}.thpt__opt.is-on{border-color:#7a1d1d;background:#7a1d1d1f}.thpt__opt.is-key{border-color:#2f7d3a;background:#2f7d3a24}.thpt__opt.is-wrong{border-color:#a02828;background:#a028281f;text-decoration:line-through}.thpt__subj{display:flex;flex-direction:column;gap:8px}.thpt__subj h3{margin:6px 0 0}.thpt__format{padding:8px 12px;border-radius:10px;background:#e8a33d1a}.thpt__tf{display:flex;flex-direction:column;gap:6px}.thpt__tfrow{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:4px 8px;border-radius:10px}.thpt__tfrow>span{flex:1 1 240px;font-size:14px}.thpt__tfrow>.thpt__opt{min-width:64px;text-align:center}.thpt__tfrow.is-key{background:#2f7d3a1f}.thpt__tfrow.is-wrong{background:#a028281a}.thpt__short{width:min(220px,100%);padding:8px 10px;border-radius:10px;border:1px solid rgba(120,80,40,.35);background:#ffffffb3;color:inherit;font:inherit;font-variant-numeric:tabular-nums}.thpt__shortkey{font-size:14px}.thpt__pts{font-weight:600;white-space:nowrap}.thpt__explain{font-size:13px;opacity:.9}.thpt__score{display:flex;flex-direction:column;align-items:center;padding:16px;border-radius:14px;background:linear-gradient(160deg,#7a1d1d,#3c0f14);color:#fff3d6}.thpt__score b{font-size:3rem;line-height:1.1;color:#ffe2a0}.purchases{font-size:13px}.purchases summary{cursor:pointer;font-weight:600}.purchases ul{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}.purchases li{display:flex;flex-direction:column;padding:8px 10px;border-radius:10px;background:#e8a33d1f}.purchases li span{opacity:.8}.mydata{margin-top:6px;font-size:13px}.mydata[open]{padding:10px;border-radius:12px;background:#a028280f}.mydata summary{cursor:pointer}.mydata__body{display:grid;gap:10px;justify-items:start;margin-top:10px}.mydata__body .fpanel__note{margin:0}.mydata__body .field__input{width:100%}.adm-errors{list-style:none;padding:0;display:grid;gap:6px}.adm-errors li{display:grid;gap:2px;padding:8px 10px;border-radius:8px;background:#fff;border:1px solid #e3d3b5;font-size:13px}.adm-errors pre{white-space:pre-wrap;font-size:11px;max-height:220px;overflow:auto}.free-badge{flex:none;align-self:flex-start;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:800;background:#3fa77a29;color:#2e7d57}.course-pro{display:flex;flex-direction:column;gap:6px;margin-top:6px;padding:12px 14px;border-radius:12px;border:1px solid rgba(90,58,32,.18);background:#ffffff59;line-height:1.45}.ai-sev{display:inline-block;padding:1px 6px;border-radius:999px;font-size:11px;font-weight:700;background:#e0e0e0}.ai-sev--nghiem_trong{background:#c62828;color:#fff}.ai-sev--vua{background:#f9a825}.ai-sev--khong_vi_pham{background:#c8e6c9}.ai-sev__note{display:block;margin-top:2px;opacity:.8}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}.shop-item{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;border-radius:14px;background:#f6ead8;border:2px solid transparent;text-align:center;font-size:13px}.shop-item--on{border-color:#3c9d5d;background:#effaf0}.shop-item__icon{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:#fff;font-size:28px}.pet-zzz{font-size:14px;animation:zzz 2.4s ease-in-out infinite;display:inline-block}@keyframes zzz{0%,to{transform:translateY(0);opacity:.5}50%{transform:translateY(-6px);opacity:1}}.barista-cta{position:fixed;left:50%;bottom:150px;transform:translate(-50%);z-index:22;font-weight:700;background:#2f5d50;color:#fff}.barista{position:fixed;right:16px;bottom:96px;z-index:23;width:340px;max-width:calc(100vw - 32px);max-height:calc(100vh - 200px);overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:12px}.barista__head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.barista__head small{flex:1;color:var(--ink-soft);font-size:11px}.barista__order{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:#fff1d0}.barista__order div{display:flex;flex-direction:column}.barista__order small{color:var(--ink-soft);font-size:12px}.barista__drink{font-size:30px}.barista__cup{min-height:40px;display:flex;align-items:center;justify-content:center;gap:6px;border:2px dashed var(--card-line);border-radius:12px;font-size:22px}.barista__cup small{font-size:12px;color:var(--ink-soft)}.barista__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.barista__ing{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;border:none;border-radius:10px;background:#f6ead8;font-size:20px}.barista__ing small{font-size:10px;line-height:1.2}.barista__ing:disabled{opacity:.4}@media (max-width: 640px),(pointer: coarse){.barista{left:16px;right:16px;width:auto;top:160px;bottom:auto;max-height:calc(100vh - 210px)}}.breath{position:fixed;left:50%;top:22%;transform:translate(-50%);z-index:15;display:flex;flex-direction:column;align-items:center;gap:6px;pointer-events:none;color:#fff7ea;text-shadow:0 1px 6px rgba(0,0,0,.6)}.breath small{pointer-events:auto;font-size:12px;opacity:.85}.breath .linkbtn{color:#ffe2a8}.breath__circle{width:120px;height:120px;border-radius:50%;border:3px solid rgba(255,226,168,.85);background:radial-gradient(circle,#ffd68c59,#ffd68c0d);transition-property:transform;transition-timing-function:ease-in-out}.breath__label{font-size:18px}.gn,.gn-reopen{position:fixed;right:16px;bottom:96px;z-index:22}.gn{width:300px;max-width:calc(100vw - 32px);display:flex;flex-direction:column;gap:8px;padding:12px}.gn-reopen{font-weight:700;background:#8f2d2d;color:#fff}.gn__head{display:flex;justify-content:space-between;align-items:center}.gn__mo{position:relative;height:96px;border:none;border-radius:18px;background:radial-gradient(circle,#a8462f,#6b1f1f);box-shadow:inset 0 -4px #00000040;touch-action:manipulation}.gn__mo:active .gn__mo-icon{transform:scale(.88)}.gn__mo-icon{display:inline-block;font-size:56px;transition:transform .06s}.gn__pop{position:absolute;top:8px;transform:translate(-50%);color:#ffe2a8;font-weight:800;font-size:13px;pointer-events:none;animation:gnpop .9s ease-out forwards;white-space:nowrap}@keyframes gnpop{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-36px)}}.gn__stats{display:flex;justify-content:space-between;font-size:13px}.gn__burn{display:flex;flex-direction:column;gap:6px}.gn__burn textarea{min-height:56px;border-radius:10px;border:1.5px solid var(--card-line);padding:8px;font:inherit;font-size:13px;resize:none}.gn__paper{margin:0;padding:10px;border-radius:8px;background:#fff6e0;font-size:13px}.gn__paper--burn{animation:burn 2.2s ease-in forwards}@keyframes burn{0%{filter:none;background:#fff6e0}40%{background:#ffcf8a;color:#8a2f0f}to{opacity:0;transform:translateY(-20px) scale(.9);filter:blur(3px);background:#2b1d14}}@media (max-width: 640px),(pointer: coarse){.gn{left:16px;right:16px;width:auto;top:160px;bottom:auto}.gn-reopen{top:160px;bottom:auto;left:16px;right:auto}.gn__mo{height:64px}.gn__mo-icon{font-size:40px}.gn__burn textarea{min-height:40px}}.adult{max-width:440px}.adult__rules{margin:0;padding-left:18px;font-size:14px;line-height:1.5}.kd,.kd-reopen{position:fixed;right:16px;bottom:96px;z-index:22}.kd{width:320px;max-width:calc(100vw - 32px);max-height:calc(100vh - 200px);display:flex;flex-direction:column;gap:8px;padding:12px}.kd-reopen{font-weight:700;background:#d4627c;color:#fff}.kd__partner{display:flex;align-items:center;gap:6px}.kd__actions{margin-left:auto;display:flex;gap:4px}.kd__log{flex:1;min-height:120px;max-height:260px;overflow-y:auto;display:flex;flex-direction:column;gap:4px;padding:6px;border-radius:10px;background:#fff7f9}.kd__msg{margin:0;max-width:80%;padding:6px 10px;border-radius:12px;background:#fff;border:1px solid #f3d0db;font-size:14px;align-self:flex-start}.kd__msg--mine{align-self:flex-end;background:#d4627c;border-color:#d4627c;color:#fff}.kd__sys{margin:2px 0;text-align:center;font-size:12px;color:var(--ink-soft)}.kd__safe{font-size:11px;color:var(--ink-soft)}.online-list__block{margin-left:auto;border:none;background:none;font-size:12px;opacity:.5}.online-list__block:hover{opacity:1}@media (max-width: 640px),(pointer: coarse){.kd{left:16px;right:16px;width:auto;top:160px;bottom:auto;max-height:calc(100vh - 284px)}.kd-reopen{top:160px;bottom:auto;left:16px;right:auto}}.busride{position:fixed;top:0;right:0;bottom:0;left:0;z-index:41;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#ffe2a8;font-weight:700;pointer-events:none;overflow:hidden}.busride__bus{font-size:64px;animation:busrun 1.6s linear forwards}@keyframes busrun{0%{transform:translate(-60vw) translateY(0) scaleX(-1)}25%{transform:translate(-30vw) translateY(-4px) scaleX(-1)}50%{transform:translate(0) translateY(0) scaleX(-1)}75%{transform:translate(30vw) translateY(-4px) scaleX(-1)}to{transform:translate(60vw) translateY(0) scaleX(-1)}}.groups{display:grid;grid-template-columns:1fr 1fr;gap:8px}.group-opt{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 8px;border:2px solid var(--card-line);border-radius:14px;background:#fffdf8;text-align:center;font-size:13px}.group-opt small{font-size:11px;line-height:1.3;color:var(--ink-soft)}.group-opt__icon{font-size:26px}.group-opt--on{border-color:var(--ink);background:#fff1d0}.pill--me__dia{color:#2c5aa0}.packs{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.pack{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 6px;border:2px solid #c9dcf5;border-radius:14px;background:#f2f7ff;font-size:13px}.pack strong{font-size:18px}.pack__bonus{color:#3c9d5d;font-weight:700}.pay{display:flex;flex-direction:column;align-items:center;gap:8px}.pay__qr{width:220px;max-width:100%;border-radius:12px;background:#fff}.pay__info{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0;width:100%;font-size:14px}.pay__info dt{color:var(--ink-soft)}.pay__info dd{margin:0;font-weight:600}.pay__code{letter-spacing:.08em;color:#c0392b}.pay__wait{margin:0;font-weight:700;animation:zzz 1.6s ease-in-out infinite}.level--locked{opacity:.92;border-style:dashed}.unlock-btn{align-self:flex-start;background:#2c5aa0;color:#fff}.ride-hud{position:fixed;left:50%;bottom:150px;transform:translate(-50%);z-index:22;padding:10px 18px;border-radius:999px;background:#14100cd1;color:#ffe2a8;font-weight:700;white-space:nowrap}.event-banner{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:19;display:flex;align-items:center;gap:8px;max-width:calc(100vw - 260px);padding:6px 8px 6px 14px;border-radius:999px;background:#fffaf0f0;box-shadow:0 4px 14px #00000026;font-size:13px;white-space:nowrap}.event-banner span{overflow:hidden;text-overflow:ellipsis}.event-banner--live{background:linear-gradient(90deg,#ffe2a8,#ffc2d4);animation:evpulse 2.4s ease-in-out infinite}@keyframes evpulse{50%{box-shadow:0 4px 22px #ff78968c}}.event-banner__x{border:none;background:none;opacity:.5}@media (max-width: 640px),(pointer: coarse){.event-banner{top:auto;bottom:96px;max-width:calc(100vw - 32px)}}.voice{position:fixed;left:max(16px,env(safe-area-inset-left));bottom:16px;z-index:22;display:flex;align-items:center;gap:8px}.fab--muted{background:#f3d0d0}.fab--small{width:36px;height:36px;font-size:14px}.fab__badge--ok{background:#3c9d5d}.nametag__speak{animation:zzz .8s ease-in-out infinite}@media (max-width: 640px),(pointer: coarse){.voice{left:auto;right:max(16px,env(safe-area-inset-right));bottom:calc(max(28px,env(safe-area-inset-bottom)) + 128px);flex-direction:column}}.media{position:fixed;z-index:21;right:16px;top:76px;width:400px;max-width:calc(100vw - 32px);display:flex;flex-direction:column;gap:6px;padding:8px;border-radius:16px;background:#140e18db;color:#fff3dc;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.media__screen{position:relative;width:100%;aspect-ratio:16 / 9;min-height:200px;border-radius:10px;overflow:hidden;background:#000}.media__screen iframe{pointer-events:none}.media__screen iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.media--music{width:300px}.media__bar{display:flex;align-items:center;gap:6px;font-size:13px}.media__now{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media__now small{opacity:.7}.media .todo__form input{color:var(--ink)}.media__queue{margin:0;padding-left:20px;max-height:120px;overflow-y:auto;font-size:12px}.media__tap{position:absolute;left:50%;top:40px;transform:translate(-50%)}.media.media--low{top:auto;right:auto;left:16px;bottom:136px}@media (max-width: 640px),(pointer: coarse){.media{left:16px;right:16px;width:auto;top:160px}.media.media--low{top:auto;right:16px;bottom:calc(max(28px,env(safe-area-inset-bottom)) + 200px)}.media--mini{left:auto;width:240px}}.chemgio{position:fixed;left:50%;top:76px;transform:translate(-50%);z-index:20;width:340px;max-width:calc(100vw - 32px);display:flex;flex-direction:column;gap:6px;padding:12px}.chemgio small{color:var(--ink-soft)}@media (max-width: 640px),(pointer: coarse){.chemgio{top:160px}}.nhau{position:fixed;left:50%;top:76px;transform:translate(-50%);z-index:20;width:360px;max-width:calc(100vw - 32px);display:flex;flex-direction:column;gap:6px;padding:12px}.nhau--mini{width:auto;padding:8px 10px}.nhau__head{display:flex;align-items:center;gap:8px}.nhau__head small{color:var(--ink-soft)}.nhau__timer{margin-left:auto;font-variant-numeric:tabular-nums}.nhau__toggle{min-width:28px;padding:0 6px}.nhau__ask{margin:0;line-height:1.4}.nhau__note{color:var(--ink-soft);font-size:11px}.nhau__zo{font-weight:700}.zo-banner{position:fixed;left:50%;top:38%;z-index:40;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 26px;border-radius:18px;background:#b02620eb;color:#fff6d6;text-align:center;pointer-events:none;box-shadow:0 10px 40px #00000059;animation:zo-pop 3.5s ease-out forwards}.zo-banner strong{font-size:clamp(22px,5vw,36px);letter-spacing:.02em}.zo-banner small{opacity:.9}@keyframes zo-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}10%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}18%{transform:translate(-50%,-50%) scale(1)}85%{opacity:1}to{opacity:0;transform:translate(-50%,-60%) scale(1)}}@media (prefers-reduced-motion: reduce){.zo-banner{animation:none}}@media (max-width: 640px),(pointer: coarse){.nhau{top:160px;left:max(16px,env(safe-area-inset-left));transform:none;max-width:calc(100vw - 180px)}.nhau:not(.nhau--mini){top:208px;max-width:calc(100vw - 32px)}}.mymusic{position:fixed;left:max(16px,env(safe-area-inset-left));bottom:136px;z-index:21;width:220px;padding:6px;border-radius:14px;background:#140e18db;color:#fff3dc;font-size:12px}.mymusic__screen{position:relative;width:100%;height:200px;border-radius:8px;overflow:hidden;background:#000}.mymusic__screen iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.mymusic__bar{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:4px}@media (max-width: 640px),(pointer: coarse){.mymusic{left:auto;right:max(16px,env(safe-area-inset-right));bottom:auto;top:108px}}.btn--google{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#fff;color:#3c4043;border:1px solid #dadce0;text-decoration:none}.btn--google__g{font-weight:800;color:#4285f4}.media__screen{position:fixed;z-index:22;min-height:0;aspect-ratio:auto;width:0;transition:none}body:has(.media__screen[data-where=stage]),body:has(.media__screen[data-where=stage]) #root{background:transparent}.media__screen[data-where=stage]{z-index:-1;border-radius:0;pointer-events:none}.media__screen[data-where=theater]{z-index:71;border-radius:6px}.media__slot{width:100%;aspect-ratio:16 / 9;min-height:200px;border-radius:10px;background:#000}.media__slot--away{display:grid;place-items:center;aspect-ratio:auto;min-height:0;padding:6px;background:#ffffff0f;font-size:12px;opacity:.85}.media-theater{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:#050308f0}.media-theater__x{position:fixed;z-index:72;left:50%;bottom:calc(max(16px,env(safe-area-inset-bottom)) + 8px);transform:translate(-50%)}.invite-menu{display:flex;flex-wrap:wrap;gap:6px;padding:8px;border-radius:12px;background:#ffffff14}.invite-menu strong{flex-basis:100%;font-size:13px}.bgm__list{display:grid;gap:8px}.bgm__opt{display:flex;align-items:center;gap:12px;padding:12px;border:2px solid var(--card-line);border-radius:14px;background:#fffdf8;color:inherit;text-align:left;cursor:pointer}.bgm__opt small{display:block;font-size:12px;opacity:.75}.bgm__opt--on{border-color:var(--gold);background:#fff4dc}.bgm__icon{font-size:28px}.donate__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:10px 0}.donate__item{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;border:2px solid var(--card-line);border-radius:14px;background:#fffdf8;color:inherit;text-align:left;cursor:pointer}.donate__item:hover{border-color:var(--gold)}.donate__item small{font-size:12px;opacity:.75}.donate__item b{font-size:18px}.donate__icon{font-size:30px}.donate__item--custom{cursor:default}.donate__amount{display:flex;align-items:center;gap:4px;font-weight:700}.donate__amount input{width:70px;padding:6px 8px;border:1px solid var(--card-line);border-radius:8px;font:inherit}.donate__pub{display:flex;gap:6px;align-items:center;font-size:13px}.donate__wall{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px}.donate__tabs{display:flex;gap:6px;margin:0 -4px 12px;padding:2px 4px 4px;overflow-x:auto;scrollbar-width:none}.donate__tabs .chip{flex:none;white-space:nowrap}.donate__banner{display:flex;gap:12px;align-items:center;padding:12px 14px;border-radius:14px;background:linear-gradient(135deg,#8a2f3c,#5a2433);color:#fff4e6;margin-bottom:8px}.donate__banner p{margin:2px 0 0;font-size:.85rem;opacity:.92}.donate__banner-icon{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#ffffff24;font-size:1.4rem}.donate__fb{display:flex;flex-direction:column;gap:8px}.donate__fb textarea{width:100%;resize:vertical;min-height:110px;padding:10px 12px;border-radius:12px;border:1.5px solid rgba(120,80,40,.35);background:#fffaf2;color:var(--ink);font:inherit}.donate__fb .btn{align-self:flex-end}.donate__count{align-self:flex-end;opacity:.6}.donate__thanks{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.profile.shop{width:min(920px,100%)}.shop__tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.shop__tabs .segmented__opt{flex:none;white-space:nowrap}.shop .shop-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}.shop .shop-item{padding:14px 10px}.shop .shop-item--free:not(.shop-item--on){outline:2px dashed rgba(212,162,76,.6)}.card.dance{position:fixed;right:16px;top:76px;z-index:23;width:300px;max-width:calc(100vw - 32px);display:flex;flex-direction:column;gap:8px;padding:12px;background:#100a1ee0;color:#fff;border:1px solid rgba(179,136,255,.45)}.dance__head{display:flex;align-items:center;gap:6px}.dance__song{flex:1;min-width:0;display:flex;flex-direction:column}.dance__song strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dance__song small,.dance__join small,.dance__hint,.dance__wait{color:#ffffffb8;font-size:12px;margin:0}.dance__join{display:flex;flex-direction:column;gap:6px;align-items:stretch;text-align:center}.dance__cta{font-size:16px;font-weight:700;background:linear-gradient(90deg,#ff5fa2,#b388ff);color:#fff;border:none}.dance__stats{display:flex;justify-content:space-between;align-items:center;min-height:24px;font-size:14px}.dance__judge{font-weight:800;letter-spacing:.04em;animation:dance-pop .5s ease-out}.dance__judge--perfect{color:#ffd84d}.dance__judge--great{color:#69f0ae}.dance__judge--miss{color:#ff6b6b}@keyframes dance-pop{0%{transform:scale(1.5);opacity:.4}to{transform:scale(1);opacity:1}}.dance__highway{position:relative;height:260px;display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;border-radius:12px;background:linear-gradient(180deg,#ffffff05,#b388ff1f)}.dance__lane{position:relative;cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none;border-left:1px solid rgba(255,255,255,.08)}.dance__lane:first-child{border-left:none}.dance__target{position:absolute;left:50%;bottom:8px;width:44px;height:44px;margin-left:-22px;display:grid;place-items:center;font-size:24px;font-weight:800;border-radius:50%;border:2px solid rgba(255,255,255,.55);color:#fff9}.dance__lane--hit .dance__target{animation:dance-hit .18s ease-out}@keyframes dance-hit{0%{background:#ffffff8c;transform:scale(1.15)}to{background:transparent;transform:scale(1)}}.dance__note{position:absolute;left:0;top:0;width:25%;height:44px;margin-top:8px;display:grid;place-items:center;font-size:26px;font-weight:800;color:#fff;will-change:transform;pointer-events:none;text-shadow:0 0 10px currentColor}.dance__note--0,.dance__pad--0{color:#ff5fa2}.dance__note--1,.dance__pad--1{color:#3fd0ff}.dance__note--2,.dance__pad--2{color:#69f0ae}.dance__note--3,.dance__pad--3{color:#ffd84d}.dance__pads{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.dance__pad{height:64px;font-size:30px;font-weight:800;border-radius:14px;border:2px solid currentColor;background:#ffffff14;touch-action:none;user-select:none;-webkit-user-select:none}.dance__pad:active{background:#ffffff4d}.dance__board ol{margin:6px 0 0;padding-left:22px;display:flex;flex-direction:column;gap:3px;font-size:13px}.dance__board li{display:list-item}.dance__board li span{display:inline-block;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;font-weight:700}.dance__board li b{margin-left:8px}.dance__board li small{margin-left:6px;color:#fff9}@media (max-width: 640px){.card.dance{top:auto;bottom:150px;right:8px;width:min(300px,calc(100vw - 16px))}.dance__highway{height:170px}.dance__pad{height:56px}}@media (prefers-reduced-motion: reduce){.dance__judge,.dance__lane--hit .dance__target{animation:none}}.kara{position:fixed;right:16px;top:76px;z-index:23;width:290px;max-width:calc(100vw - 32px);display:flex;flex-direction:column;gap:8px;padding:12px}.kara--mini{width:auto;padding:8px 10px}.kara__head{display:flex;align-items:center;gap:6px}.kara__head strong{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kara__reacts{display:flex;gap:6px}.kara__react{flex:1;font-size:20px;justify-content:center}.kara__react:disabled{opacity:.45}.kara__cta{font-size:15px;font-weight:700;justify-content:center;background:linear-gradient(90deg,#ff5fa2,#ffb347);color:#fff;border:none}.kara__me{display:flex;flex-direction:column;gap:6px}.kara__me small,.kara__tip,.kara__queue small{color:var(--ink-soft);font-size:12px;margin:0}.kara__songs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;max-height:260px;overflow-y:auto}.kara__song{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:7px 10px;border-radius:10px;border:1px solid var(--card-line);background:#ffffff80;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.kara__song:hover,.kara__song:focus-visible{background:#ff5fa229}.kara__song small{color:var(--ink-soft);font-size:11px}.kara__queue{margin:0;padding-left:20px;font-size:13px}.kara__toggle{display:flex;align-items:center;gap:6px;font-size:13px;cursor:pointer}.kara-lyrics{position:fixed;left:50%;top:76px;transform:translate(-50%);z-index:22;width:min(620px,calc(100vw - 32px));padding:10px 18px 12px;border-radius:16px;background:#0a0414c7;color:#fff;text-align:center;pointer-events:none;box-shadow:0 8px 30px #0000004d}.kara-lyrics__meta{display:block;color:#ffffffb3;font-size:12px}.kara-lyrics__line{margin:4px 0 0;font-size:24px;font-weight:800;line-height:1.25;background:linear-gradient(90deg,#ffd84d var(--p, 0%),#ffffff var(--p, 0%));-webkit-background-clip:text;background-clip:text;color:transparent}.kara-lyrics__next{margin:2px 0 0;font-size:15px;color:#ffffff8c}.kara-lyrics__count{display:block;margin-top:4px;font-size:20px;color:#ffd84d}.kara-fly{position:fixed;top:0;right:0;bottom:0;left:0;z-index:21;pointer-events:none;overflow:hidden}.kara-fly span{position:absolute;bottom:90px;font-size:30px;animation:kara-fly 2.4s ease-out forwards}@keyframes kara-fly{0%{transform:translateY(0) scale(.6);opacity:0}15%{transform:translateY(-40px) scale(1.15);opacity:1}to{transform:translateY(-46vh) scale(.9);opacity:0}}.kara-result{position:fixed;left:50%;top:40%;z-index:40;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:2px;padding:16px 30px;border-radius:20px;background:linear-gradient(160deg,#c2185bf2,#581c87f2);color:#fff6d6;text-align:center;pointer-events:none;box-shadow:0 10px 40px #00000059;animation:kara-pop .5s ease-out}@keyframes kara-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}70%{opacity:1;transform:translate(-50%,-50%) scale(1.06)}to{transform:translate(-50%,-50%) scale(1)}}.kara-result strong{font-size:20px}.kara-result__score{font-size:48px;line-height:1;color:#ffd84d}@media (max-width: 640px),(pointer: coarse){.kara{top:auto;bottom:150px;right:8px;width:min(290px,calc(100vw - 16px))}.kara--mini{width:auto}.kara-lyrics{top:150px;padding:8px 12px}.kara-lyrics__line{font-size:18px}.kara-lyrics__next{font-size:13px}}@media (prefers-reduced-motion: reduce){.kara-fly span,.kara-result{animation:none}.kara-fly span{opacity:0}}.vibe{position:fixed;left:50%;top:76px;transform:translate(-50%);z-index:20;width:320px;max-width:calc(100vw - 32px);display:flex;flex-direction:column;gap:6px;padding:12px}.vibe--mini{width:auto;padding:6px 8px}.vibe__head{display:flex;align-items:center;gap:8px}.vibe__head>small{color:var(--ink-soft);font-weight:600}.vibe__toggle{margin-left:auto;min-width:28px;padding:0 6px}.vibe__note{margin:0;color:var(--ink-soft);font-size:12px;line-height:1.4}.vibe__check{display:inline-flex;align-items:center;gap:4px;font-size:13px}.vibe__mono{font-variant-numeric:tabular-nums}.vibe__swm-big{font-size:40px;font-weight:200;letter-spacing:.04em;text-align:center}.vibe__wish{font-weight:700;animation:vibe-glow 1.4s ease-in-out infinite alternate}@keyframes vibe-glow{0%{box-shadow:0 0 #a0c8ff00}to{box-shadow:0 0 14px #a0c8ffd9}}.vibe__wishform{display:flex;gap:6px}.vibe__wishform input{flex:1;min-width:0;border:1px solid var(--line, rgba(0, 0, 0, .15));border-radius:999px;padding:6px 12px;font:inherit;font-size:16px}.vibe__lofi input[type=range]{flex:1;min-width:0}.vibe-chip{position:fixed;left:50%;top:76px;transform:translate(-50%);z-index:20;display:flex;align-items:center;gap:8px;overflow:hidden;padding:6px 14px 8px;border-radius:999px;background:#4a3020e6;color:#fff3dc;font-size:13px;pointer-events:none}.vibe-chip--focus{background:#24382ceb}.vibe-chip strong{font-variant-numeric:tabular-nums}.vibe-chip__bar{position:absolute;left:0;bottom:0;height:3px;background:#ffd27a;transition:width 1s linear}.vibe-chip--focus .vibe-chip__bar{background:#9fe0a8}.vibe-toast{position:fixed;left:50%;top:34%;z-index:40;transform:translate(-50%,-50%);width:max-content;max-width:min(420px,calc(100vw - 32px));padding:12px 20px;border-radius:16px;background:#5c3a26f0;color:#fff3dc;text-align:center;pointer-events:none;box-shadow:0 10px 30px #0000004d;animation:vibe-toast 4s ease-out forwards}@keyframes vibe-toast{0%{opacity:0;transform:translate(-50%,-40%)}10%,85%{opacity:1;transform:translate(-50%,-50%)}to{opacity:0;transform:translate(-50%,-55%)}}.vibe-read{width:min(720px,100%)}.chat__hush{margin:0;padding:12px 14px;color:#d9f2dc;font-size:14px;text-align:center}@media (prefers-reduced-motion: reduce){.vibe-toast,.vibe__wish{animation:none}}@media (max-width: 640px),(pointer: coarse){.vibe,.vibe-chip{top:160px;left:16px;transform:none}.vibe--mini .btn{white-space:nowrap}.vibe:not(.vibe--mini){top:208px}.vibe .btn{white-space:nowrap}.vibe--mini{box-sizing:border-box;height:40px;max-width:calc(100vw - 180px);padding:0 4px;border-radius:999px}.vibe--mini .vibe__head{gap:4px;min-width:0}.vibe--mini .btn{height:32px;padding:0 12px;font-size:14px;min-width:0;overflow:hidden;text-overflow:ellipsis}.vibe--mini .vibe__toggle{flex:none;min-width:28px;padding:0 6px}.vibe__swm-big{font-size:30px}}.room-tabs{display:flex;gap:6px}.room-tabs .chip{flex:1;padding:6px 8px;font-size:12px}.kd{overflow-y:auto}.sb{display:flex;flex-direction:column;gap:8px}.sb__form{display:flex;flex-direction:column;gap:6px}.sb__form input,.sb__form select,.sb__filters select{border-radius:10px;border:1.5px solid var(--card-line);padding:6px 8px;font:inherit;font-size:13px;background:#fff;min-width:0}.sb__form .chip{padding:5px 10px;font-size:12px}.sb__filters{display:flex;gap:4px}.sb__filters select{flex:1;font-size:12px;padding:5px 4px}.sb__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.sb__list--scroll{max-height:280px;overflow-y:auto}.sb__card{padding:8px 10px;border-radius:10px;background:#fff8e8;border:1px solid #f0dcb4;display:flex;flex-direction:column;gap:3px}.sb__top{display:flex;align-items:center;gap:6px;font-size:13px}.sb__subj{margin-left:auto;color:var(--ink-soft)}.sb__goal{margin:0;font-size:14px;font-weight:600;overflow-wrap:anywhere}.sb__meta{color:var(--ink-soft);font-size:11px}.sb__actions{display:flex;gap:4px;margin-top:2px}.sb__actions .chip{padding:5px 10px;font-size:12px}.ts__breath{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 0 4px;border-radius:14px;background:linear-gradient(180deg,#fbefe4,#f3e6f4)}.ts__breath--idle{padding:8px}.ts__circle{width:96px;height:96px;border-radius:50%;display:grid;place-items:center;border:3px solid rgba(214,150,120,.8);background:radial-gradient(circle,#ffd6b4e6,#e6c8f059);transition-property:transform;transition-timing-function:ease-in-out;color:#8a4a3a;font-size:22px}.ts__breath small{font-size:12px;color:var(--ink-soft)}.ts__jar{display:flex;flex-direction:column;gap:8px}.ts__count{color:var(--ink-soft);font-size:11px;margin-right:auto}.ts__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:240px;overflow-y:auto}.ts__note{padding:8px 10px;border-radius:10px;background:#fff6ec;border:1px solid #f1dcc4}.ts__note--mine{background:#f4ecfa;border-color:#e0d0ee}.ts__note p{margin:0 0 6px;font-size:13px;overflow-wrap:anywhere}.ts__row{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.ts__row .chip{padding:4px 8px;font-size:11px}.ts__row--meta{justify-content:space-between;margin-top:4px;color:var(--ink-soft)}.ts__support{margin:0;padding:8px 10px;border-radius:10px;background:#fff3d6;font-size:12px;line-height:1.45}@media (max-width: 640px),(pointer: coarse){.kd{z-index:26;max-height:calc(100dvh - 176px)}.sb__list--scroll,.ts__list{max-height:180px}}.carnival__note{padding:3px 10px;border-radius:999px;background:#14100cb8;color:#ffe2a8;font-size:12px}.carnival{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:16px;background:#0f0a068c}.carnival__card{width:min(520px,100%);max-height:100%;overflow:auto;display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:18px;background:#2b1d14;color:#fff3dc;box-shadow:0 16px 40px #00000073}.carnival__head{display:flex;align-items:center;gap:12px}.carnival__head strong{flex:1;font-size:17px}.carnival__stat b{color:#ffd84d;font-size:18px}.carnival__stage{position:relative;border-radius:12px;overflow:hidden}.carnival__canvas{display:block;width:100%;height:auto;aspect-ratio:4 / 3;touch-action:none;-webkit-user-select:none;user-select:none;cursor:crosshair}.carnival__over{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:12px;background:#140c0699;text-align:center}.carnival__count{font-size:72px;font-weight:800;color:#ffd84d}.carnival__done p{margin:0}.carnival__final{font-size:22px}.carnival__final b{color:#ffd84d;font-size:30px}.carnival__top{margin:4px 0;padding-left:22px;display:flex;flex-direction:column;gap:2px;font-size:13px;text-align:left}.carnival__top li span{display:inline-block;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;font-weight:700}.carnival__top li b{margin-left:8px}.carnival__actions{display:flex;gap:8px}.carnival__cta{padding:8px 18px;background:#ffd84d;color:#2b1d14;font-weight:700}.carnival__help{color:#fff3dcbf}.carnival__throw{align-self:center;padding:14px 40px;font-size:18px}.ski-qte{position:fixed;left:50%;top:22%;transform:translate(-50%);z-index:24;display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none;color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.5)}.ski-qte__gates{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:#142846b3}.ski-qte__dot{width:10px;height:10px;border-radius:50%;background:#ffffff59}.ski-qte__dot.is-ok{background:#69f0ae}.ski-qte__dot.is-miss{background:#ff6b6b}.ski-qte__dot.is-now{outline:2px solid #ffd84d}.ski-qte__prompt{position:relative;width:110px;height:110px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:#2c5aa0d9}.ski-qte__prompt--right{background:#d9534fe0}.ski-qte__ring{position:absolute;top:0;right:0;bottom:0;left:0;border:4px solid #ffd84d;border-radius:50%}.ski-qte__arrow{font-size:56px;font-weight:800;line-height:1}.ski-qte__hint{padding:4px 12px;border-radius:999px;background:#14284699}.ski-qte__flash{font-size:22px;font-weight:800}.ski-qte__flash.is-ok{color:#69f0ae}.ski-qte__flash.is-miss{color:#ff8a80}.ski-qte__pads{position:fixed;left:0;right:0;bottom:0;height:45vh;display:flex;pointer-events:auto}.ski-qte__pads button{flex:1;border:none;background:transparent;touch-action:none}.ski-result{position:fixed;right:16px;top:76px;z-index:23;width:280px;max-width:calc(100vw - 32px);display:flex;flex-direction:column;gap:4px;padding:12px;background:#142846e6;color:#fff}.ski-result__head{display:flex;align-items:center;gap:8px}.ski-result__head strong{flex:1}@media (max-width: 640px){.ski-result{top:auto;bottom:150px;right:8px}}@media (prefers-reduced-motion: reduce){.ski-qte__ring{display:none}}.kara-yt{position:fixed;left:50%;top:76px;transform:translate(-50%);z-index:22;width:min(480px,calc(100vw - 32px));padding:8px;border-radius:16px;background:#0a0414d9;color:#fff;text-align:center}.kara-yt__frame{width:100%;height:max(200px,min(270px,calc((100vw - 48px)*.5625)));border-radius:10px;overflow:hidden}.kara-yt__frame iframe{width:100%;height:100%;border:0}@media (max-width: 640px){.kara-yt{top:150px}}.media__note{display:block;margin-top:6px;font-size:12px;opacity:.8}.kara__tv{display:flex;flex-direction:column;gap:6px}.kara__hide{display:none}@media (max-width: 640px){.media__slot--away{display:none}body:has(.card.kara) .seat-prompt{bottom:calc(max(28px,env(safe-area-inset-bottom)) + 250px)}}@media (pointer: coarse) and (max-height: 520px) and (min-width: 641px){.card.kara{top:150px;bottom:auto;left:max(16px,env(safe-area-inset-left));right:auto;width:min(290px,40vw);max-height:calc(100vh - 290px);overflow:auto}.card.kara.kara--mini{width:auto}.media{left:50%;right:auto;transform:translate(-50%);width:280px;top:56px}.media.media--low{left:calc(max(16px,env(safe-area-inset-left)) + 170px);right:auto;transform:none;top:auto;bottom:max(12px,env(safe-area-inset-bottom))}.media__slot--away{display:none}}body .seat-prompt.seat-prompt--watch,body:has(.card.kara) .seat-prompt.seat-prompt--watch{top:auto;bottom:max(10px,env(safe-area-inset-bottom))}.seat-prompt--watch .btn--prompt{padding:6px 14px;font-size:14px;opacity:.85}@media (max-width: 640px){body .seat-prompt.seat-prompt--watch{top:auto;bottom:calc(max(28px,env(safe-area-inset-bottom)) + 160px);left:auto;right:16px;transform:none}body:has(.card.kara) .seat-prompt.seat-prompt--watch{bottom:calc(max(28px,env(safe-area-inset-bottom)) + 240px)}}@media (max-width: 640px){.minimap,.minimap__toggle{top:160px}}@media (pointer: coarse) and (max-height: 520px) and (min-width: 641px){html body .mountctl{left:calc(max(24px,env(safe-area-inset-left)) + 146px);bottom:max(28px,env(safe-area-inset-bottom))}html body .tanthu__pill{top:calc(max(12px,env(safe-area-inset-top)) + 160px)}html body .mymusic.mymusic--tr{right:calc(max(16px,env(safe-area-inset-right)) + 134px);top:216px}html body .mymusic.mymusic--br{right:calc(max(16px,env(safe-area-inset-right)) + 134px);bottom:max(12px,env(safe-area-inset-bottom))}}.lib-tpl-btn{position:fixed;left:50%;top:122px;transform:translate(-50%);z-index:20}.books-reopen{position:fixed;right:16px;bottom:160px;z-index:21;font-weight:700}.books{bottom:160px;width:360px;max-height:calc(100vh - 240px);overflow-y:auto}.books__list{display:flex;flex-direction:column;gap:4px}.books__item{display:flex;align-items:center;gap:10px;padding:8px 10px;border:none;border-radius:10px;background:transparent;text-align:left;font:inherit}.books__item:hover,.books__item:focus-visible{background:#f1e4cf}.books__item b,.books__item small{display:block}.books__item small,.books__meta{color:var(--ink-soft);font-size:12px}.books__icon{font-size:24px}.books__read{display:flex;flex-direction:column;gap:6px}.books__bar{justify-content:space-between}.books .books__bar .btn{flex:0 1 auto;white-space:nowrap}.books__title{margin:4px 0 0;font-size:17px}.books__h{margin-top:4px;font-size:14px}.books__ideas,.books__apply ul{margin:0;padding-left:20px;font-size:14px}.books__p{margin:0;font-size:14px;line-height:1.6}.books__apply{padding:10px;border-radius:10px;background:#d4a24c26;font-size:14px}@media (max-width: 640px),(pointer: coarse){.books-reopen{top:160px;bottom:auto}body:has(.card.vibe:not(.vibe--mini)) .books-reopen{top:auto;bottom:calc(max(28px,env(safe-area-inset-bottom)) + 192px)}.books{bottom:auto;width:auto;max-height:calc(100dvh - 124px)}.books-reopen.books-now{top:208px;flex-wrap:wrap;justify-content:center;width:164px;padding:6px 8px;border-radius:18px;row-gap:0}.books-now .books-now__title{flex-basis:100%;text-align:center;padding:2px 4px;font-size:13px}.books-now .books-now__title small{font-weight:400}}.beach-shells{position:fixed;left:16px;top:160px;z-index:20}.beach-game{width:min(380px,calc(100vw - 32px))}.beach-game__score{text-align:center;font-weight:700;margin:8px 0}.beach-game__big{width:100%;min-height:52px;font-size:18px;touch-action:manipulation}.volley{position:relative;height:220px;border-radius:12px;background:linear-gradient(#bfe6ff,#fbe7c3);overflow:hidden}.volley__zone{position:absolute;left:0;right:0;bottom:0;height:20%;background:#3c9d5d59;border-top:2px dashed rgba(60,157,93,.8)}.volley__ball{position:absolute;left:50%;transform:translate(-50%);font-size:34px;line-height:1}.crabs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:12px;border-radius:12px;background:#f3d9a4}.crabs__hole{aspect-ratio:1;border:0;border-radius:50%;background:radial-gradient(circle,#7a5a3a 55%,#c9a46a 60%);font-size:34px;cursor:pointer;touch-action:manipulation}.crabs__hole--up{background:radial-gradient(circle,#a8784a 55%,#c9a46a 60%)}.bar-party--on{background:linear-gradient(90deg,#ff5a8a,#8a5cff);color:#fff}.booth{width:min(380px,calc(100vw - 32px))}.booth__strip{display:block;width:100%;max-height:60vh;object-fit:contain;border-radius:10px;margin-bottom:10px}.booth__swatch{display:inline-block;width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.2);vertical-align:-2px}.booth__go{width:100%;margin-top:12px}.booth-count{position:fixed;left:50%;top:18%;transform:translate(-50%);z-index:60;display:flex;flex-direction:column;align-items:center;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.6);pointer-events:none}.booth-count b{font-size:72px;line-height:1}.booth-flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:#fff;opacity:.85;pointer-events:none;animation:booth-flash .25s ease-out forwards}@keyframes booth-flash{to{opacity:0}}.booth-goto{position:fixed;right:max(16px,env(safe-area-inset-right));top:160px;z-index:20}.postcard{width:min(420px,calc(100vw - 32px))}.pcard{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px;margin-bottom:10px;border-radius:10px;background:#fffaf0;box-shadow:0 2px 8px #3c28142e}.pcard__pic{position:relative;min-height:120px;border-radius:6px;display:flex;flex-direction:column;justify-content:flex-start;padding:8px;overflow:hidden}.pcard__pic b{font-family:"Noto Serif",Georgia,serif;font-size:22px}.pcard__pic small{font-size:11px;opacity:.8}.pcard__motif{position:absolute;bottom:8px;left:8px;font-size:22px}.pcard__msg{border-left:1px dashed rgba(90,58,32,.4);padding-left:10px;display:flex;flex-direction:column;justify-content:space-between}.pcard__msg p{margin:0;font-style:italic;line-height:1.45;white-space:pre-wrap;word-break:break-word}.pcard__msg small{opacity:.7;font-size:12px}.postcard__text{width:100%;min-height:80px;resize:vertical}.postcard__send{width:100%;margin-top:10px}.stars{width:min(420px,calc(100vw - 32px))}.stars__tabs{padding:0 12px}.stars__sky{display:block;width:calc(100% - 24px);margin:8px 12px 0;aspect-ratio:1;border-radius:12px;background:radial-gradient(circle at 50% 30%,#1d2a52,#070b1c 75%);touch-action:manipulation}.stars__sky--miss{animation:stars-shake .35s}@keyframes stars-shake{25%{transform:translate(-4px)}75%{transform:translate(4px)}}.stars__dust{fill:#ffffff73}.stars__dot{fill:#fff8d6;filter:drop-shadow(0 0 1.5px #fff2a8)}.stars__dot--on{fill:#ffd84d}.stars__star{cursor:pointer}.stars__line{stroke:#9ec9ff;stroke-width:.7;stroke-linecap:round}.stars__hint{stroke:#9ec9ff59;stroke-width:.5;stroke-dasharray:1.5 1.5}.stars__name{margin:4px 0 6px}.stars__name small{font-weight:400;opacity:.7}.books-now{display:flex;align-items:center;gap:4px;padding:4px 6px 4px 10px;max-width:min(360px,calc(100vw - 32px))}.books-now button{border:0;background:transparent;font:inherit;cursor:pointer;padding:4px 6px}.books-now__title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;font-weight:700}.books__item--on{outline:2px solid #d4a24c}.books__auto{margin:4px 0 8px}.room-feat{position:fixed;right:max(16px,env(safe-area-inset-right));top:160px;z-index:20;display:flex;flex-direction:column;align-items:flex-end;gap:6px}.room-feat--side{right:auto;left:max(16px,env(safe-area-inset-left));align-items:flex-start}.room-feat>.pill{box-sizing:border-box;height:40px;position:relative}.room-feat__menu{display:flex;flex-direction:column;min-width:200px;padding:6px;gap:2px}.room-feat__menu button{position:relative;padding:10px 12px;border:0;border-radius:8px;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.room-feat__menu button:hover{background:#0000000f}@media (max-width: 640px),(min-width: 641px) and (pointer: fine){body:has(.room-feat:not(.room-feat--side)) .media:not(.media--low){top:208px}}.kara__mic{display:grid;gap:6px;padding:6px 0}.kara__mic input[type=range]{width:100%}.kara__fx{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;font-size:14px}.kara__fx small{min-width:64px;text-align:right;opacity:.75}.media__mic{display:grid;gap:6px;padding:4px 2px}.voice{position:fixed}.voice__menu{position:absolute;left:0;bottom:60px;min-width:230px;padding:6px;display:flex;flex-direction:column}.voice__menu button{padding:10px 12px;border:0;border-radius:8px;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.voice__menu button:hover{background:#0000000f}@media (max-width: 640px),(pointer: coarse){.voice__menu{left:auto;right:60px;bottom:0}}.nametag__realm{margin-left:4px;font-size:11px;text-shadow:0 0 6px currentColor}.skills{position:fixed;left:max(16px,env(safe-area-inset-left));bottom:76px;z-index:22;display:flex;flex-direction:column-reverse;align-items:flex-start;gap:8px}.skills__list{display:flex;flex-direction:column;gap:4px;padding:10px;width:250px}.skill{display:flex;align-items:center;gap:8px;padding:6px 8px;border:none;border-radius:10px;background:#f6ead8;text-align:left;font-size:13px}.skill__name{flex:1}.skill--locked{opacity:.55}.realm-card{display:flex;flex-direction:column;gap:6px;padding:12px;border:2px solid;border-radius:14px;background:#1d1a26;color:#f2eefc}.realm-card__head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.realm-card__head strong{font-size:18px;text-shadow:0 0 10px currentColor}.realm-card small,.realm-card details{font-size:12px;opacity:.85}.realm-card__skills{display:flex;gap:6px;font-size:20px}.realm-card__locked{filter:grayscale(1);opacity:.35}@media (max-width: 640px),(pointer: coarse){.skills{left:auto;right:max(16px,env(safe-area-inset-right));bottom:calc(max(28px,env(safe-area-inset-bottom)) + 244px);align-items:flex-end}}.duel{position:fixed;right:16px;top:76px;z-index:22;width:360px;max-width:calc(100vw - 32px);max-height:calc(100vh - 180px);overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:12px}.duel__vs{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:8px}.duel__vs small{display:block;font-weight:700;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.duel__hp{position:relative;height:14px;border-radius:999px;background:#e8e1d6;overflow:hidden}.duel__hp i{position:absolute;inset:0 auto 0 0;transition:width .4s}.duel__hp span{position:absolute;right:6px;top:-1px;font-size:11px;font-weight:700}.duel__meta{font-size:12px;color:var(--ink-soft)}.duel__q{margin:0;font-weight:700}.duel__choices{display:grid;gap:6px}.duel__c{padding:8px 10px;border:2px solid var(--card-line);border-radius:10px;background:#fffdf8;text-align:left}.duel__c--picked{border-color:#2c5aa0}.duel__c--ok{border-color:#3c9d5d;background:#effaf0}.duel__c--bad{border-color:#c0392b;background:#fdecec}.duel__res,.duel__end{margin:0;font-weight:700}.duel__end{font-size:20px}.duel__top{margin:0;padding-left:20px;font-size:13px}@media (max-width: 640px),(pointer: coarse){.duel{left:16px;right:16px;width:auto;top:108px;max-height:calc(100vh - 260px)}}.shop-item__prices{display:flex;gap:4px;flex-wrap:wrap;justify-content:center}.realm-card__brand{letter-spacing:.12em;text-transform:uppercase;color:#ffd27a}.boo{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;display:grid;place-items:center;pointer-events:none;background:radial-gradient(circle,#78000040 20%,#000000eb 75%);animation:boo-flash 1.2s ease-out forwards}.boo span{font-size:min(70vw,70vh);line-height:1;filter:drop-shadow(0 0 40px rgba(255,255,255,.6)) contrast(1.4);animation:boo 1.2s cubic-bezier(.2,1.6,.4,1) forwards,boo-shake .08s linear .1s 8}@keyframes boo-flash{0%{opacity:0}6%{opacity:1;background-color:#ff000059}20%{background-color:transparent}80%{opacity:1}to{opacity:0}}@keyframes boo{0%{transform:scale(.2)}18%{transform:scale(1.25)}to{transform:scale(1.5)}}@keyframes boo-shake{50%{translate:12px -10px}to{translate:-10px 8px}}.hell-card{position:fixed;left:50%;bottom:96px;transform:translate(-50%);z-index:21;width:420px;max-width:calc(100vw - 32px);display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:2px solid;background:#120c0ee6;color:#f2e6e6;font-size:14px}@media (max-width: 640px),(pointer: coarse){.hell-card{top:160px;bottom:auto}}:root{--bg: #1b120c;--card: #f3e7cc;--card-line: #c9a873;--ink: #2a1a10;--ink-soft: #6e5038;--gold: #c9a14a;--gold-hi: #e8c46a;--gold-ink: #3a240e;--danger: #a12a24;--son: #a3202f;--son-dark: #6e1019;--radius: 14px;--serif: "Noto Serif", "Be Vietnam Pro", serif;--shadow: 0 18px 46px rgba(10, 5, 2, .55)}.card{background:radial-gradient(120% 80% at 10% 0%,rgba(255,255,255,.35),transparent 60%),radial-gradient(100% 70% at 100% 100%,rgba(150,110,60,.12),transparent 60%),var(--card);border:2px solid #5a3a20;box-shadow:inset 0 0 0 3px var(--card),inset 0 0 0 4px #c9a14ab3,var(--shadow)}.welcome__title,.profile__head h2,.deep__box h2,.adult h2{font-family:var(--serif);font-weight:900;color:var(--son);letter-spacing:.02em}.welcome__title{font-size:32px;text-shadow:0 1px 0 rgba(255,255,255,.6)}.profile__head{border-bottom:3px double rgba(90,58,32,.45);padding-bottom:8px}.field__label,.realm-card__head strong,.duel__end,.qa-post__title{font-family:var(--serif)}.btn--primary{background:linear-gradient(180deg,#c4313b,var(--son) 55%,var(--son-dark));color:#fff3dc;border:1px solid var(--gold-hi);box-shadow:0 0 0 2px #6e101959,0 6px 16px #6e101973;font-family:var(--serif);letter-spacing:.04em}.btn--primary:disabled{filter:grayscale(.6) brightness(.9)}.chip--gold,.chip--on{background:linear-gradient(180deg,var(--gold-hi),var(--gold));color:var(--gold-ink);border-color:#8a6a3d}.segmented__opt--on{background:var(--son);color:#fff3dc}.pill{background:linear-gradient(180deg,#f3e7ccf7,#e2cea6f7);border:1.5px solid #5a3a20;color:var(--ink)}.fab{background:radial-gradient(circle at 35% 30%,#fff6dc,#e2cea6);border:2px solid #5a3a20}.welcome__logo img{display:block;filter:drop-shadow(0 4px 10px rgba(22,36,74,.35))}.nametag{background:#24160cd1;color:#fbe9c6;border:1px solid rgba(232,196,106,.6);font-family:var(--serif);font-weight:700}.nametag--self{background:#a3202fe6}.welcome__sub:after{content:"☁ ◆ ☁";display:block;margin-top:6px;color:var(--gold);letter-spacing:.6em;font-size:12px}.gem{display:inline-block;vertical-align:middle;background:linear-gradient(135deg,#fff 0%,var(--gem) 35%,color-mix(in srgb,var(--gem) 55%,#000) 100%);clip-path:polygon(50% 0,100% 40%,50% 100%,0 40%);filter:drop-shadow(0 0 3px var(--gem))}.gem--t2{filter:drop-shadow(0 0 6px var(--gem))}.gem--t3{filter:drop-shadow(0 0 10px var(--gem));animation:gem-pulse 1.6s ease-in-out infinite}@keyframes gem-pulse{50%{transform:scale(1.12)}}.gems__h{margin:14px 0 6px;font-size:.95rem}.gems__slots{display:grid;grid-template-columns:1fr 1fr;gap:8px}.gems__slot{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px;border-radius:12px;border:1px dashed rgba(180,140,80,.6);background:#fff8e60f;color:inherit;cursor:pointer;font:inherit}.gems__slot.is-on{border-style:solid;border-color:#d4a24c;box-shadow:0 0 0 2px #d4a24c59}.gems__empty{opacity:.55;font-size:.85rem}.gems__grid{display:flex;flex-direction:column;gap:6px;max-height:240px;overflow:auto}.gems__item{display:flex;align-items:center;gap:10px}.gems__acts{margin-left:auto;display:flex;gap:6px}.gems__legend{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;opacity:.8}.bh__invite{width:100%;margin-bottom:8px;animation:gem-pulse 1.4s ease-in-out infinite}.bh__players{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.85rem;max-height:120px;overflow:auto}.bh__players li.is-out{opacity:.45;text-decoration:line-through}.dye-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px;margin:10px 0}.dye{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px;border-radius:12px;border:1px solid rgba(180,140,80,.35);text-align:center}.dye.is-on{border-color:#d4a24c;box-shadow:0 0 0 2px #d4a24c59}.dye__swatch{width:34px;height:34px;border-radius:50%;border:2px solid rgba(255,255,255,.7);box-shadow:0 2px 6px #00000040}.dye--gold .dye__swatch{background:linear-gradient(135deg,#fff2c2,#d4a24c 45%,#7a5410)!important}.dye--ink .dye__swatch{background:radial-gradient(circle at 35% 35%,#6d8fa8,#26323f 55%,#0c1218)!important}.dye--rainbow .dye__swatch{background:conic-gradient(#ff5a8a,#ffd84d,#5ef08a,#4fc3ff,#b388ff,#ff5a8a)!important;animation:dye-spin 4s linear infinite}@keyframes dye-spin{to{transform:rotate(360deg)}}.dye__dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-left:6px;vertical-align:middle}.mountctl{position:fixed;left:max(16px,env(safe-area-inset-left));bottom:76px;z-index:22;display:flex;align-items:center;gap:8px}.fab--on{box-shadow:0 0 0 3px #d4a24c99}.mountctl__menu{position:absolute;left:0;bottom:60px;display:flex;flex-direction:column;min-width:190px;padding:6px;gap:2px}.mountctl__menu button{display:flex;align-items:center;gap:8px;padding:8px 10px;border:0;border-radius:8px;background:none;color:inherit;font:inherit;cursor:pointer;text-align:left}.mountctl__menu button:hover:not(:disabled),.mountctl__menu button.is-on{background:#d4a24c2e}.mountctl__menu button:disabled{opacity:.55;cursor:default}.mountctl__menu small{margin-left:auto;opacity:.75;font-size:.75rem}@media (max-width: 640px),(pointer: coarse){.mountctl{left:max(24px,env(safe-area-inset-left));bottom:calc(max(28px,env(safe-area-inset-bottom)) + 144px)}}.cb__side{display:block;margin-bottom:4px;font-weight:700}.cb__flag{display:flex;align-items:center;gap:8px;margin:6px 0 10px;font-weight:800;font-variant-numeric:tabular-nums}.cb__rope{position:relative;flex:1;height:8px;border-radius:4px;background:linear-gradient(90deg,#2f9e8f,#c9b98f 50%,#e9e2d0);box-shadow:inset 0 1px 2px #00000059}.cb__rope:after{content:"";position:absolute;left:50%;top:-4px;bottom:-4px;width:2px;background:#00000059}.cb__rope i{position:absolute;top:-16px;transform:translate(-50%);font-style:normal;font-size:1.3rem;transition:left .6s cubic-bezier(.3,1.4,.5,1)}.cb__teams{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.cb__teams ul{list-style:none;margin:0;padding:6px 8px;border-left:3px solid;border-radius:6px;background:#fff8e60d;font-size:.8rem;max-height:150px;overflow:auto}.cb__teams li{display:flex;align-items:center;gap:4px;padding:2px 0}.cb__teams li b{margin-left:auto;font-variant-numeric:tabular-nums}.cb__teams li.is-me{font-weight:800}.nametag__sect{margin:2px auto 0;width:max-content;padding:1px 8px;border-radius:999px;font:700 10px/1.5 "Noto Serif",serif;background:#140e0a8c;border:1px solid currentColor;text-shadow:0 0 4px currentColor}.nametag__sect--t3{box-shadow:0 0 8px currentColor;animation:gem-pulse 2.2s ease-in-out infinite}.sects__list{display:flex;flex-direction:column;gap:8px}.sect-row{display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center;padding:8px 10px;border-radius:10px;border:1px solid rgba(180,140,80,.3)}.sect-row.is-on{border-color:#d4a24c;box-shadow:0 0 0 2px #d4a24c4d}.sect-row__bar{grid-column:1 / -1;height:6px;border-radius:3px;background:#0000002e;overflow:hidden}.sect-row__bar i{display:block;height:100%;border-radius:3px}.sect-row small{opacity:.8}.skills__sect{border-top:1px dashed rgba(180,140,80,.4);margin-top:4px;padding-top:4px}.exv{display:flex;flex-direction:column;gap:8px}.exv__kind{align-self:flex-start;padding:1px 8px;border-radius:999px;font-size:.72rem;font-weight:700;background:#d4a24c2e;color:#b07a1f}.exv__tf,.exv__match,.exv__order{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.exv__tf li,.exv__match li{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:6px 8px;border-radius:8px;background:#fff8e60f;border:1px solid rgba(180,140,80,.25)}.exv__tf li>span:first-child,.exv__match li>span:first-child{flex:1 1 200px}.exv__tfbtns{display:flex;gap:4px}.exv__ok{outline:2px solid #3c9d5d}.exv__match select{flex:1 1 160px;min-width:0;padding:6px 8px;border-radius:8px;font:inherit}.exv__fix{flex-basis:100%;color:#3c9d5d;font-weight:600}.exv__order{counter-reset:ord}.exv__order li{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;background:#fff8e60f;border:1px solid rgba(180,140,80,.3);counter-increment:ord}.exv__order li:before{content:counter(ord);display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#9b2f2f;color:#fff6e0;font-size:.75rem;font-weight:800;flex:none}.exv__order li>span:first-of-type{flex:1}.exv__order li.is-ok{border-color:#3c9d5d}.exv__order li.is-bad{border-color:#c0392b}.exv__arrows{display:flex;gap:4px}.exv__cloze p{line-height:2.2;margin:0}.exv__cloze input{margin:0 4px;padding:2px 6px;border-radius:6px;border:1px solid rgba(180,140,80,.6);font:inherit;text-align:center}.exv__cloze input.is-ok{border-color:#3c9d5d;background:#3c9d5d1f}.exv__cloze input.is-bad{border-color:#c0392b;background:#c0392b1a}.exv__submit{align-self:flex-start}.ex-steps{margin-top:6px;padding:8px 10px;border-radius:10px;background:#d4a24c1a;border-left:3px solid #d4a24c}.ex-steps ol{margin:6px 0;padding-left:20px}.ex-steps li{margin:3px 0}.sect-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:6px}.sect-pick__opt{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:8px 10px;border-radius:10px;border:1px solid rgba(180,140,80,.4);background:#fff8e699;color:inherit;font:inherit;text-align:left;cursor:pointer}.sect-pick__opt b{color:var(--c);font-family:"Noto Serif",serif;font-size:.9rem}.sect-pick__opt small{opacity:.75;font-size:.72rem}.sect-pick__opt.is-on{border-color:var(--c);box-shadow:0 0 0 2px color-mix(in srgb,var(--c) 45%,transparent);background:#fff8e6}.tanthu,.tanthu__pill,.tanthu__next{position:fixed;left:16px;top:236px;z-index:19}@media (min-width: 641px) and (pointer: fine){body:has(.minimap) .tanthu,body:has(.minimap) .tanthu__pill,body:has(.minimap) .tanthu__next{top:262px}}.tanthu{width:min(300px,calc(100vw - 32px));padding:10px 12px}.tanthu__bar{height:5px;border-radius:3px;background:#00000026;margin:6px 0 8px;overflow:hidden}.tanthu__bar i{display:block;height:100%;background:linear-gradient(90deg,#d4a24c,#9b2f2f);transition:width .5s}.tanthu__steps{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:4px}.tanthu__steps li{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:8px;font-size:.85rem}.tanthu__steps li>div{flex:1;display:flex;flex-direction:column}.tanthu__steps li small{opacity:.8;font-size:.75rem}.tanthu__steps li.is-cur{background:#d4a24c29;outline:1px solid rgba(212,162,76,.5)}.tanthu__steps li.is-done{opacity:.6}.tanthu__icon{width:22px;text-align:center}@media (max-width: 640px),(pointer: coarse){.tanthu,.tanthu__pill,.tanthu__next{top:auto;bottom:calc(max(28px,env(safe-area-inset-bottom)) + 210px);left:max(24px,env(safe-area-inset-left))}.tanthu{left:12px;right:12px;bottom:12px;width:auto;max-height:60vh;overflow:auto;z-index:30}}.sect-pick__opt{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:center}.sect-pick__opt>span{grid-row:span 2;font-size:1.2rem}@media (max-width: 640px),(pointer: coarse){.tanthu__pill,.tanthu__next{top:auto;left:calc(max(24px,env(safe-area-inset-left)) + 144px);bottom:max(28px,env(safe-area-inset-bottom))}}@media (max-width: 640px),(pointer: coarse){.skills{bottom:max(calc(max(28px,env(safe-area-inset-bottom)) + 244px),calc(var(--tanthu-h, 0px) + 24px))}.mountctl{bottom:max(calc(max(28px,env(safe-area-inset-bottom)) + 144px),calc(var(--tanthu-h, 0px) + 24px))}}@media (min-width: 641px) and (pointer: fine){.skills{bottom:136px}}.mountctl__row{display:flex;align-items:stretch;gap:4px}.mountctl__row>button:first-child{flex:1}.mountctl__row em{font-style:normal;font-size:12px;font-weight:700}.mountctl__up{min-width:40px;border-radius:10px;border:1px solid rgba(201,161,74,.5);background:linear-gradient(135deg,#fff4d6,#ffe0a3);cursor:pointer}.strike-dmg{font:900 28px/1 Be Vietnam Pro,sans-serif;color:#fff3dc;-webkit-text-stroke:1.5px #b4432f;text-shadow:0 0 10px rgba(255,90,60,.9),0 2px 0 #7a1f12;white-space:nowrap}@media (max-width: 640px),(pointer: coarse){.duel{top:auto;bottom:max(12px,env(safe-area-inset-bottom));max-height:52vh;padding:10px;gap:6px}.duel .duel__q{font-size:15px;line-height:1.3}.duel .duel__choices{grid-template-columns:1fr 1fr}.duel .duel__c{padding:8px;font-size:14px;line-height:1.25}body:has(.card.duel) .tanthu,body:has(.card.duel) .tanthu__pill,body:has(.card.duel) .online-list,body:has(.card.duel) .mountctl,body:has(.card.duel) .skills,body:has(.card.duel) .chat,body:has(.card.duel) .challenge-pill,body:has(.card.duel--fight) .joystick,body:has(.card.duel--fight) .hotbar,body:has(.card.duel--fight) .fab{display:none}}.hotbar{position:fixed;left:max(16px,env(safe-area-inset-left));bottom:136px;z-index:22;display:flex;align-items:flex-end;gap:8px}.hb{position:relative;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:2px solid currentColor;background:radial-gradient(circle at 35% 30%,#ffffff59,#1e1428d9 70%);box-shadow:0 0 0 3px #2b1d148c,0 0 14px currentColor;cursor:pointer;overflow:hidden;touch-action:manipulation}.hb--main{width:64px;height:64px}.hb__icon{font-size:24px;line-height:1;filter:drop-shadow(0 0 4px rgba(0,0,0,.6))}.hb--main .hb__icon{font-size:32px}.hb kbd{position:absolute;right:2px;bottom:2px;padding:0 4px;border-radius:6px;background:#0009;color:#fff3dc;font:700 10px/1.4 Be Vietnam Pro,sans-serif}.hb__cd{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:conic-gradient(rgba(0,0,0,.65) var(--cd, 100%),transparent 0);animation:hb-cd linear forwards;pointer-events:none}@property --cd{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@keyframes hb-cd{0%{--cd: 100%}to{--cd: 0%}}.hb--more{width:34px;height:34px;color:#d4a24c;font-weight:900}.hb:active{transform:scale(.94)}@media (max-width: 640px),(pointer: coarse){.hotbar{left:auto;right:calc(max(16px,env(safe-area-inset-right)) + 76px);bottom:max(max(28px,env(safe-area-inset-bottom)),calc(var(--tanthu-h, 0px) + 24px));width:64px;height:64px;display:block}.hotbar .hb{position:absolute}.hb--main{right:0;bottom:0}.hb--s0{right:72px;bottom:0}.hb--s1{right:56px;bottom:58px}.hb--sect{right:6px;bottom:74px}.hb--more{right:-14px;bottom:-6px;z-index:1}body:has(.emotes--touch .emotes__btn) .voice{display:none}body:has(.chat--sheet) .joystick,body:has(.chat--sheet) .hotbar,body:has(.chat--sheet) .fab{display:none}.seat-prompt{bottom:calc(max(28px,env(safe-area-inset-bottom)) + 172px);z-index:31}body .challenge-pill{bottom:calc(max(28px,env(safe-area-inset-bottom)) + 226px);z-index:31}body .tanthu__pill{left:auto;right:max(16px,env(safe-area-inset-right));top:calc(max(12px,env(safe-area-inset-top)) + 92px);bottom:auto}}body .card.hell-card{background:#120c0eeb;color:#f2e6e6}body .card.hell-card strong{color:#fff}.haunted-intro{width:min(420px,calc(100vw - 32px));padding:18px}.haunted-intro h2{margin:0 0 8px}.haunted-intro ol{margin:0 0 14px;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:14px}.haunted-progress{position:fixed;right:max(16px,env(safe-area-inset-right));top:76px;z-index:20;display:flex;align-items:center;gap:8px;padding:6px 8px 6px 12px;border-radius:999px;background:#120c0ed9;color:#f2e6e6;font-size:13px}.haunted-progress button{width:24px;height:24px;border-radius:50%;border:1px solid rgba(242,230,230,.5);background:none;color:inherit}@media (max-width: 640px),(pointer: coarse){.pill--exit{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-banner{top:calc(max(12px,env(safe-area-inset-top)) + 150px);bottom:auto;max-width:calc(100vw - 24px)}body:has(.event-banner) .hell-card{top:206px}.haunted-progress{top:auto;right:auto;left:50%;transform:translate(-50%);bottom:calc(max(28px,env(safe-area-inset-bottom)) + 200px)}}@media (max-width: 760px),(pointer: coarse) and (max-height: 520px){.hud-top{max-width:calc(100vw - 182px)}}.hud-top:has(.mode__card){z-index:46}.mode__card{max-height:calc(100dvh - 130px);overflow-y:auto;overscroll-behavior:contain}@media (pointer: coarse) and (max-height: 520px){.tanthu{left:auto;right:12px;width:min(360px,45vw);max-height:calc(100dvh - 120px)}}.topright:has(.fpanel){z-index:47}.topright:has(.fpanel) .topright__main{visibility:hidden}.duel__forfeit{align-self:flex-end;font-size:13px}.mountctl__menu .mountctl__more{justify-content:center;margin-top:4px;border-top:1px solid rgba(0,0,0,.08);border-radius:0 0 8px 8px;font-weight:600}.mountp__list{flex-wrap:wrap;gap:6px;margin-bottom:4px}.mountp__stage{cursor:default}.mountp__info{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:6px 0}.mountp__info dt{font-weight:600;opacity:.75}.mountp__info dd{margin:0}.mountp__stages{margin:0;padding:0;list-style:none;display:grid;gap:2px}.mountp__stages li.is-done{font-weight:600}.mountp__stages small{opacity:.7}.mountp__stage .pet__stage-name{position:absolute;left:10px;bottom:8px;padding:2px 8px;border-radius:999px;background:#00000059;color:#fff;font-size:13px}.cact{margin-top:8px;padding:10px;border-radius:12px;background:#fff8e614;border:1px solid rgba(212,162,76,.35);display:flex;flex-direction:column;gap:6px}.cact__q{margin:0;font-weight:600}.cact__cloud{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 12px;min-height:40px;padding:6px}.cact__cloud span{font-family:"Noto Serif",serif;font-weight:700;color:hsl(var(--h) 55% 45%);line-height:1.1;animation:cact-pop .4s ease-out}@keyframes cact-pop{0%{transform:scale(.4);opacity:0}}.cact__poll{display:flex;flex-direction:column;gap:4px}.cact__opt{position:relative;display:flex;justify-content:space-between;align-items:center;overflow:hidden;padding:7px 10px;border-radius:8px;border:1px solid rgba(180,140,80,.4);background:#ffffff0a;color:inherit;font:inherit;text-align:left;cursor:pointer}.cact__opt i{position:absolute;inset:0 auto 0 0;background:#d4a24c40;transition:width .5s}.cact__opt span,.cact__opt b{position:relative}.cact__opt.is-on{border-color:#d4a24c}.cact__opt:disabled{cursor:default}.cact__pair{opacity:.85}.cboard{margin-top:6px;padding:8px 10px;border-radius:10px;background:#d4a24c1a}.cboard__fast{margin:0 0 4px}.cboard ol{list-style:none;margin:0;padding:0}.cboard li{display:flex;align-items:center;gap:6px;padding:2px 0;font-size:.85rem}.cboard li b{margin-left:auto;font-variant-numeric:tabular-nums}.cboard li.is-me{font-weight:800}.crew__boardbtn{width:100%;margin-top:8px}.cboard2{display:flex;flex-direction:column;gap:10px;margin-top:10px}.cpost-new{display:flex;flex-direction:column;gap:6px}.cpost-new .segmented{flex-wrap:wrap}.cpost-new textarea{min-height:64px;resize:vertical;padding:8px 10px;border-radius:10px;border:1px solid rgba(180,140,80,.5);font:inherit}.cpost-new .btn{align-self:flex-end}.cpost{padding:10px 12px;border-radius:12px;background:#fff8e680;border:1px solid rgba(180,140,80,.3);display:flex;flex-direction:column;gap:6px}.cpost.is-pinned{border-color:#d4a24c;box-shadow:0 0 0 2px #d4a24c40}.cpost header{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.cpost header small{margin-left:auto;opacity:.7}.cpost__kind{font-size:.72rem;padding:1px 7px;border-radius:999px;background:#9b2f2f1f}.cpost__body{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.cpost__react{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.cpost__react small{opacity:.7}.cpost__tools{margin-left:auto;display:flex;gap:8px}.cpost__comments{list-style:none;margin:0;padding:6px 8px;border-radius:8px;background:#0000000a;display:flex;flex-direction:column;gap:4px;font-size:.85rem;overflow-wrap:anywhere}.cpost__comments small{opacity:.6}.cevents{padding:8px 10px;border-radius:12px;background:#3c9d5d14;border:1px solid rgba(60,157,93,.3)}.cevents ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.cevents li{display:flex;align-items:center;gap:8px}.cevents li>div{flex:1;display:flex;flex-direction:column;min-width:0}.cevents li small{opacity:.75;overflow-wrap:anywhere}.cevents li.is-live b:before{content:"● ";color:#c0392b}.cevents__form{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.cevents__form input,.cevents__form select{flex:1 1 140px;padding:6px 8px;border-radius:8px;border:1px solid rgba(180,140,80,.5);font:inherit}.adm-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.adm-tabs{margin:8px 0 14px;flex-wrap:wrap}.adm-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.adm-card{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:12px;background:#fffaf0;border:1px solid rgba(180,140,80,.35)}.adm-card b{font-size:1.6rem;font-variant-numeric:tabular-nums}.adm-card small{opacity:.75}.adm-charts{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-top:14px}.adm-charts section,.adm-two section{padding:10px 12px;border-radius:12px;background:#fffaf0;border:1px solid rgba(180,140,80,.3)}.adm-charts h3,.adm-two h3{margin:0 0 6px;font-size:.95rem}.adm-bars{width:100%;height:70px;display:block}.adm-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin-top:14px}.adm-scroll{overflow-x:auto}.adm-muted{opacity:.5}.ai-open{margin-top:6px}.ai-box{margin-top:8px;padding:10px 12px;border-radius:12px;background:linear-gradient(135deg,#5b8fd91a,#9b2f2f14);border:1px solid rgba(91,143,217,.35);display:flex;flex-direction:column;gap:6px}.ai-reply{margin:0;padding:8px 10px;border-radius:10px;background:#ffffff8c;white-space:pre-wrap;line-height:1.55}.ai-ask{display:flex;gap:6px;flex-wrap:wrap}.ai-ask input{flex:1 1 200px;padding:6px 10px;border-radius:8px;border:1px solid rgba(180,140,80,.5);font:inherit}.ai-hire{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.ai-note{opacity:.6;font-size:.72rem}.adm-ai{display:flex;flex-direction:column;gap:10px}.adm-ai label{display:flex;flex-direction:column;gap:4px;font-size:.85rem}.adm-provider{padding:10px 12px;border-radius:12px;background:#fffaf0;border:1px solid rgba(180,140,80,.35);display:flex;flex-direction:column;gap:8px}.adm-provider header{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.adm-provider header .toggle{display:inline-flex;flex-direction:row}.adm-test{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px;overflow-wrap:anywhere}.mistake{padding:10px 12px;border-radius:12px;border:1px solid rgba(192,57,43,.3);background:#c0392b0a;margin-bottom:8px;display:flex;flex-direction:column;gap:6px}.mistake__later ul{margin:6px 0 0;padding-left:18px;font-size:.85rem}.exam-btn{margin:4px 0 8px}.exam{gap:10px}.exam__time{font-variant-numeric:tabular-nums;font-weight:800}.exam__time.is-low{color:#c0392b}.exam__q{padding:10px 12px;border-radius:12px;border:1px solid rgba(180,140,80,.35)}.exam__q.is-ok{border-color:#3c9d5d}.exam__q.is-bad{border-color:#c0392b}.exam__result{padding:12px;border-radius:12px;background:#0000000a;text-align:center}.exam__result.is-pass{background:#d4a24c26}.cert-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.cert-list a{color:inherit;text-decoration:none}.cert{position:relative;padding:18px 16px;border-radius:10px;text-align:center;color:#3a2414;background:linear-gradient(135deg,#fff8e6,#f3e2bd);border:3px double #b8863b;box-shadow:inset 0 0 0 6px #fff8e6,inset 0 0 0 7px #b8863b80;font-family:"Noto Serif",serif}.cert h3{margin:6px 0;font-size:1.3rem;color:#9b2f2f}.cert p{margin:4px 0}.cert__score{font-weight:900}.cert__seal{position:absolute;right:10px;bottom:10px;width:42px;height:42px;display:grid;place-items:center;border-radius:6px;background:#b0292b;color:#ffe9c9;font-weight:900;font-size:.68rem;line-height:1.1;text-align:center;letter-spacing:.04em;transform:rotate(-8deg);opacity:.85}.cert-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:16px;background:#2b1d14}.cert-page .cert{width:min(420px,100%)}.cert-page .btn{text-decoration:none}.exv__case{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.exv__case li{padding:8px 10px;border-radius:10px;border-left:3px solid #d4a24c;background:#fff8e60f;display:flex;flex-direction:column;gap:6px;animation:cact-pop .35s ease-out}.exv__info{margin:0;font-style:italic}.exv__why{opacity:.9}.weekgoal{padding:10px 12px;border-radius:12px;background:#3c9d5d14;border:1px solid rgba(60,157,93,.3);display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.weekgoal__row{display:flex;flex-direction:column;gap:3px}.weekgoal__edit{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}.weekgoal__edit label{display:flex;flex-direction:column;font-size:.8rem;gap:2px}.weekgoal__edit input{width:110px;padding:5px 8px;border-radius:8px;border:1px solid rgba(180,140,80,.5);font:inherit}.lang-switch{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.fortune{width:340px;max-height:calc(100dvh - 160px);overflow-y:auto}.fortune__disc{opacity:.7;font-size:.75rem;text-align:center}.tarot{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.tarot__card{aspect-ratio:2 / 3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:4px;border-radius:10px;border:2px solid #b8863b;background:linear-gradient(160deg,#3b2152,#1f0f30);color:#f3e2bd;font:inherit;cursor:pointer;transition:transform .4s}.tarot__card.is-open{background:linear-gradient(160deg,#fff8e6,#f3e2bd);color:#3a2414;transform:rotateY(360deg);cursor:default}.tarot__card small{font-size:.65rem;opacity:.8}.tarot__card em{font-size:.6rem;opacity:.7}.tarot__icon{font-size:1.8rem}.tarot__back{font-size:2rem;color:#d4a24c}.tarot__read{margin:0;font-size:.85rem;line-height:1.45}.tarot__read i{display:block;opacity:.85}.xam{padding:10px 12px;border-radius:12px;background:#7b4bd11f;border:1px solid rgba(123,75,209,.4);text-align:center;animation:cact-pop .4s ease-out}.xam p{margin:6px 0 0}.xam__poem{font-family:"Noto Serif",serif;font-style:italic}.xam__rank{font-size:1.05rem}.xam__rank--top{color:#b8863b}.xam__rank--low{color:#6aa84f}.xam__shake{animation:xam-shake 1.2s ease-in-out infinite}@keyframes xam-shake{0%,to{transform:rotate(0)}25%{transform:rotate(-4deg)}75%{transform:rotate(4deg)}}.que{display:flex;flex-direction:column;gap:8px;align-items:center;padding:8px 0}.que__line{width:140px;height:12px;border-radius:3px;background:#3b2152}.que__line.is-yin{background:linear-gradient(90deg,#3b2152 42%,transparent 42% 58%,#3b2152 58%)}.que__line.is-empty{background:#00000014}.love{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.love input{flex:1 1 110px;min-width:0;padding:6px 8px;border-radius:8px;border:1px solid rgba(180,140,80,.5);font:inherit}.love__score{font-size:2rem;color:#d4627c}@media (max-width: 640px),(pointer: coarse){.gn{z-index:26;max-height:calc(100dvh - 176px);overflow-y:auto}.fortune{width:auto}}.rank-me{padding:8px 12px;border-radius:10px;background:#d4a24c26;font-weight:700;margin-bottom:8px}.rank-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}.rank-list li{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;background:#fff8e60f}.rank-list li.is-me{background:#d4a24c38;font-weight:800}.rank-list__no{width:28px;text-align:center}.rank-list__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-list b{font-variant-numeric:tabular-nums}.rank-titles{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.rank-last{margin-top:10px}.nametag__season{margin-left:3px;filter:drop-shadow(0 0 3px rgba(255,216,77,.8))}.qr{display:flex;flex-direction:column;gap:10px;text-align:center}.qr__top{display:flex;justify-content:space-between}.qr__card{min-height:180px;padding:18px;border-radius:16px;border:2px solid #b8863b;background:linear-gradient(160deg,#fff8e6,#f3e2bd);color:#3a2414;font:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:transform .35s}.qr__card.is-flip{transform:rotateX(360deg);cursor:default;background:linear-gradient(160deg,#eaf7ee,#cfe9d6)}.qr__card p{margin:0;font-size:1.05rem;line-height:1.5}.qr__start{width:100%;margin-bottom:8px}.qr__front{white-space:pre-line;text-align:left}.wmap{width:min(720px,calc(100vw - 32px))}.wmap__svg{width:100%;height:auto;display:block}.wmap__ground{fill:#c9b68f;stroke:#8a6a3f;stroke-width:2}.wmap__water{fill:#4fa6c9;opacity:.8}.wmap__shop{cursor:pointer}.wmap__shop rect{stroke:#00000059;stroke-width:1;transition:transform .15s}.wmap__shop:hover rect,.wmap__shop:focus rect{stroke:#fff;stroke-width:2.5}.wmap__shop.is-here rect{stroke:#ffd84d;stroke-width:3}.wmap__shop.is-hot rect{filter:drop-shadow(0 0 5px #ff7a2b)}.wmap__icon{font-size:16px}.wmap__label{font-size:10px;font-weight:700;fill:#2b1d14;paint-order:stroke;stroke:#fff8e6d9;stroke-width:3px}.wmap__bus{display:flex;flex-wrap:wrap;gap:6px}.wmap__events{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.wmap__events li{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;background:#fff8e60f}.wmap__events li span{flex:1}.wmap__events li.is-live{background:#c0392b1f}.friends{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.friend{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;background:#fff8e60f}.friend__dot{width:8px;height:8px;border-radius:50%;background:#999;flex:none}.friend__dot.is-on{background:#3c9d5d;box-shadow:0 0 6px #3c9d5d}.friend__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friend__acts{display:flex;gap:4px}.cact__opt.is-right{border-color:#4caf6a;box-shadow:0 0 0 1px #4caf6a inset}.cact__opt.is-right i{background:#4caf6a4d}.mquiz__q{font-size:1.05rem;font-weight:600;margin:4px 0 8px}.mquiz__res{margin:6px 0 0}.mquiz__in{width:100%;box-sizing:border-box;resize:vertical;font:inherit;padding:6px 8px;border-radius:8px}.mquiz__opt{display:flex;gap:6px;align-items:center;margin:6px 0}.mquiz__opt input{flex:1;min-width:0;font:inherit;padding:5px 8px;border-radius:8px}.perf-box{position:fixed;left:8px;bottom:8px;z-index:999;padding:3px 8px;border-radius:6px;background:#000000b3;color:#9f9;font:12px/1.4 ui-monospace,monospace;pointer-events:none}.insights{margin-bottom:10px}.insights__weeks{list-style:none;margin:0;padding:0;display:grid;gap:6px}.insights__weeks li{display:grid;grid-template-columns:minmax(90px,30%) 1fr;gap:2px 8px;align-items:center}.insights__weeks small{grid-column:2;opacity:.8}.insights__bar{height:8px;border-radius:4px;background:#b48c5033;overflow:hidden}.insights__bar i{display:block;height:100%;background:linear-gradient(90deg,#d4a24c,#4caf6a)}.insights .is-up{color:#3c9d5d}.insights .is-down{color:#c0392b}.insights__weak{display:flex;gap:8px;align-items:center;justify-content:space-between;padding:6px 0;border-bottom:1px dashed rgba(180,140,80,.3)}.insights__weak span{min-width:0}.lantern-tag{padding:2px 8px;border-radius:10px;border:2px solid;background:#2b1d14d9;color:#ffe2a0;font-size:12px;white-space:nowrap}.buddy{margin:10px 0;display:grid;gap:6px}.buddy__row{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;align-items:center}.buddy__m{display:inline-flex;gap:4px;align-items:center;padding:3px 9px;border-radius:12px;background:#ffffff1f;font-size:13px}.buddy__m--left{opacity:.55}.buddy__m--done{background:#4caf6a40}.buddy__pick{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;align-items:center}.buddy-invite{position:fixed;left:50%;top:70px;transform:translate(-50%);z-index:60;padding:12px 16px;max-width:min(92vw,380px)}.buddy-invite p{margin:4px 0 8px}.qcard__add{margin-left:6px;padding:0 6px;border:1px solid rgba(180,140,80,.5);border-radius:8px;background:transparent;color:#a0742c;font:inherit;font-size:11px;cursor:pointer;opacity:.75}.qcard__add:hover{opacity:1}.qcard{display:grid;gap:4px;margin:6px 0 10px;padding:10px;border-radius:10px;background:#d4a24c1f}.crewboard{position:fixed;right:16px;top:208px;z-index:22;width:min(260px,70vw);padding:8px 10px;font-size:13px}.crewboard__head{all:unset;cursor:pointer;font-weight:600;display:block}.crewboard ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px;max-height:40vh;overflow:auto}.crewboard li{display:grid;grid-template-columns:auto minmax(0,1fr) 70px auto;gap:6px;align-items:center}.crewboard__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crewboard__bar{height:6px;border-radius:3px;background:#b48c5033;overflow:hidden}.crewboard__bar i{display:block;height:100%}.recap{display:grid;gap:6px;margin:10px 0;padding:10px;border-radius:10px;border:1px dashed rgba(180,140,80,.5)}.recap textarea{width:100%;box-sizing:border-box;font:inherit;padding:6px 8px;border-radius:8px}.recap__keys{margin:0;padding-left:18px;font-size:13px;display:grid;gap:3px}.tourney{display:grid;gap:6px;margin-top:12px;padding:10px;border-radius:10px;background:#c0392b14;border:1px solid rgba(192,57,43,.25)}.tourney__last{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px}.tourney__sects{list-style:none;margin:0;padding:0;display:grid;gap:4px}.tourney__sects li{display:grid;grid-template-columns:minmax(110px,40%) 1fr auto;gap:6px;align-items:center;font-size:13px}.tourney__sects li.is-me{font-weight:700}.wreport h3{margin:0 0 8px}.wreport h3 small{font-weight:400;opacity:.7}.wreport__chart{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;height:120px;align-items:end}.wreport__col{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:2px}.wreport__col i{display:block;width:70%;border-radius:4px 4px 0 0;background:linear-gradient(#d4a24c,#c0392b)}.wreport__v{font-size:10px;opacity:.8}.wreport__nums{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:10px 0;text-align:center}.wreport__nums b{display:block;font-size:1.15rem}.wreport__nums small{opacity:.75;font-size:11px}.wreport__subj{margin:0;padding-left:18px;font-size:13px}.wreport-page{max-width:520px;width:calc(100% - 32px);padding:16px;display:grid;gap:10px}.welcome__pitch{list-style:none;margin:4px 0 10px;padding:0;display:grid;gap:4px;font-size:13px;text-align:left}.welcome__pitch li{padding:6px 10px;border-radius:8px;background:#d4a24c1f}.welcome__ver{font-size:12px;opacity:.75}.whatsnew__list{margin:0 0 12px;padding-left:18px;display:grid;gap:6px}.mymusic.mymusic--tr{left:auto;right:max(16px,env(safe-area-inset-right));top:108px;bottom:auto}.mymusic.mymusic--tl{right:auto;left:max(16px,env(safe-area-inset-left));top:170px;bottom:auto}.mymusic.mymusic--bl{right:auto;left:max(16px,env(safe-area-inset-left));top:auto;bottom:136px}.mymusic.mymusic--br{left:auto;right:max(16px,env(safe-area-inset-right));top:auto;bottom:200px}.mymusic__note{display:block;margin-top:4px;font-size:10px;opacity:.6;line-height:1.3}@media (pointer: coarse){.chip{min-height:38px}.linkbtn{min-height:36px;padding:0 8px}.qcard__add{min-height:30px;padding:0 10px}}.wmap__hit{fill:transparent;stroke:none!important}.wmap__quick{margin-top:8px;max-height:120px;overflow-y:auto}.breakthrough{font:700 20px/1 "Noto Serif",serif;white-space:nowrap;text-shadow:0 0 8px rgba(0,0,0,.7),0 0 18px currentColor;animation:bt-rise 3.5s ease-out forwards}@keyframes bt-rise{0%{transform:translateY(20px) scale(.6);opacity:0}15%{transform:translateY(0) scale(1.1);opacity:1}70%{opacity:1}to{transform:translateY(-50px) scale(1);opacity:0}}body.night-ui .card,body.night-ui .pill,body.night-ui .chip,body.night-ui .btn,body.night-ui .segmented,body.night-ui .toast{filter:brightness(.78) sepia(.12)}body.night-ui .card .card,body.night-ui .card .pill,body.night-ui .card .chip,body.night-ui .card .btn,body.night-ui .card .segmented{filter:none}.examplan{margin-bottom:10px;padding:10px;border-radius:10px;background:#2c5aa014;border:1px solid rgba(44,90,160,.25);display:grid;gap:6px}.examplan__head{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.examplan__head input{font:inherit;padding:4px 6px;border-radius:8px}.examplan__left{margin:0;font-weight:600}.examplan__days{margin:0;padding-left:0;list-style:none;display:grid;gap:6px;max-height:260px;overflow-y:auto}.examplan__days>li{padding:6px 8px;border-radius:8px;background:#ffffff59}.examplan__days>li.is-today{outline:2px solid #d4a24c}.examplan__days ul{margin:2px 0 0;padding-left:16px;font-size:13px}.crew-challenge{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:6px 0;padding:6px 8px;border-radius:8px;background:#d4a24c1f;font-size:13px}.crew-challenge.is-done{background:#3c9d5d26}.guide-page{height:100vh;box-sizing:border-box;padding:24px 16px;background:#16244a;display:flex;justify-content:center;overflow-y:auto}.guide{width:min(760px,100%);padding:22px;display:grid;gap:14px;height:fit-content}.guide__head{display:flex;gap:14px;align-items:center}.guide__head h1{margin:0;font-size:1.4rem}.guide__head p{margin:4px 0 0;opacity:.8}.guide h2{margin:6px 0 4px;font-size:1.1rem}.guide ul{margin:0;padding-left:20px;display:grid;gap:6px;line-height:1.5}.guide .btn{justify-self:start;text-decoration:none}.guide__actions{display:flex;gap:8px;flex-wrap:wrap}.cert-page__guide{color:#ffe2a0}@media print{.guide-page{height:auto;background:#fff;padding:0;overflow:visible}.guide{box-shadow:none;border:none;background:#fff;color:#000;width:100%}.guide__actions{display:none}.guide section{break-inside:avoid}}.adm-card,.adm-charts section,.adm-two section,.adm-provider,.admin__table{color:#2b1d14}.adm-card small,.adm-charts small{color:#5a4636;opacity:1}@media (max-width: 640px),(pointer: coarse){.mymusic{width:212px;padding:6px}.mymusic__bar{position:absolute;top:10px;left:10px;right:10px;margin:0;pointer-events:none}.mymusic__bar>span{padding:2px 8px;border-radius:999px;background:#0000008c}.mymusic__bar .chip{pointer-events:auto;min-height:30px;padding:2px 8px;font-size:11px}.mymusic__note{display:none}}@media (max-width: 640px){.mymusic.mymusic--bl{left:max(16px,env(safe-area-inset-left));right:auto;top:auto;bottom:calc(max(28px,env(safe-area-inset-bottom)) + 200px)}.mymusic.mymusic--br{left:auto;right:max(16px,env(safe-area-inset-right));top:auto;bottom:calc(max(28px,env(safe-area-inset-bottom)) + 200px)}.mymusic.mymusic--tr{top:172px}.mymusic.mymusic--tl{top:200px}}@media (pointer: coarse) and (max-height: 520px) and (min-width: 641px){.mymusic.mymusic--tr{left:auto;right:calc(max(16px,env(safe-area-inset-right)) + 80px);top:172px;bottom:auto}.mymusic.mymusic--br{left:auto;right:calc(max(16px,env(safe-area-inset-right)) + 80px);top:auto;bottom:96px}.mymusic.mymusic--tl{left:230px;right:auto;top:100px;bottom:auto}.mymusic.mymusic--bl{left:230px;right:auto;top:auto;bottom:max(16px,env(safe-area-inset-bottom))}}.welcome__terms{display:flex;align-items:flex-start;gap:8px;margin:10px 0 4px;font-size:13px;line-height:1.45;text-align:left}.welcome__terms input{margin-top:2px;width:18px;height:18px;flex:none}.welcome__terms a{color:var(--accent, #9b2f2f);font-weight:700}.policy{line-height:1.65}.policy__toc{display:flex;flex-wrap:wrap;gap:6px 14px;margin:8px 0 16px;font-size:14px}.policy__toc a{color:var(--accent, #9b2f2f);font-weight:600}.policy__sec{scroll-margin-top:16px;margin-top:18px}.policy__sec h2{margin:0 0 6px;font-size:20px}.policy__sec ul{padding-left:20px}.policy__sec li{margin:4px 0}.policy__table{overflow-x:auto}.policy__table table{border-collapse:collapse;width:100%;font-size:14px}.policy__table th,.policy__table td{padding:6px 8px;border:1px solid rgba(212,162,76,.45);text-align:left;vertical-align:top}.policy__table th{background:#d4a24c29}.save-popup{width:min(420px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;padding:18px;display:flex;flex-direction:column;gap:10px}.save-popup h2{margin:0}.save-popup p{margin:0;line-height:1.5}.save-popup__list{margin:0;padding-left:4px;list-style:none;display:flex;flex-direction:column;gap:6px;line-height:1.45}.acct-status{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0 4px;padding:8px 12px;border-radius:12px;font-size:14px}.acct-status small{display:block;opacity:.75;font-size:12px}.acct-status--guest{background:#e8a33d29;border:1px dashed rgba(196,128,32,.6)}.acct-status--ok{background:#3c9d5d1f;border:1px solid rgba(60,157,93,.4)}.acct-status--ok small{display:inline}.menu__guest{margin-left:6px;padding:1px 6px;border-radius:999px;background:#e8a33d40;font-size:11px;font-weight:700}.nametag__sect.nametag__guest{color:#e8e1d6;border-style:dashed;text-shadow:none}.acct-status--guest{flex-wrap:wrap}.acct-status--guest>span{flex:1 1 180px}.nametag__tap{pointer-events:auto;cursor:pointer}.nametag__tap:hover{filter:brightness(1.15)}.tag-info{position:relative}.tag-info__x{position:absolute;top:10px;right:10px;border:0;background:transparent;font-size:18px;cursor:pointer;color:inherit}.tag-info h2{padding-right:28px}.tag-info__courses,.tag-info__ladder{display:flex;flex-direction:column;gap:4px;line-height:1.45}.tag-info__ladder ol{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:3px}.tag-info__ladder li span{margin-left:6px;opacity:.8}.tag-info__ladder li.is-on{font-weight:700}.tag-info__here{color:#b8860b}.tag-info__ladder small{opacity:.75}.chip--guest{border:1.5px dashed #8a7a66;background:transparent}.email-auth{display:flex;flex-direction:column;gap:8px}.login__forgot{align-self:flex-end;font-size:13px}.adm-login{display:flex;flex-direction:column;gap:8px;max-width:360px}.adm-token{margin-top:16px}.adm-token summary{cursor:pointer;opacity:.8}:focus-visible{outline:3px solid #f5c84c;outline-offset:2px}.field__input:focus-visible,.chat__form input:focus-visible{outline-offset:0}@media (min-width: 720px){body.ui-l .card,body.ui-l .chat{zoom:1.12}body.ui-xl .card,body.ui-xl .chat{zoom:1.25}body.ui-l .card .card,body.ui-xl .card .card{zoom:1}}body.reduce-motion *,body.reduce-motion *:before,body.reduce-motion *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}body.readable .lecture__body,body.readable .exercise,body.readable .exv,body.readable .exercise__q,body.readable .exercise__explain,body.readable .mistake,body.readable .qr,body.readable .chat__body,body.readable .session__body{line-height:1.75;letter-spacing:.02em;word-spacing:.08em}body.readable .lecture__body,body.readable .exercise__q{font-size:1.08em}.exercise__listen{margin-bottom:6px}.notesbook__tools{display:flex;gap:8px;align-items:center}.notesbook__tools .field__input{flex:1;min-width:0}.lecture__notes textarea{min-height:80px}.hm--rest{outline:2px solid #8fd3ff;outline-offset:-2px}.classq{margin-top:10px;padding-top:8px;border-top:1px solid rgba(255,255,255,.15);display:flex;flex-direction:column;gap:6px}.classq__head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.classq__head small{opacity:.7;flex:1}.classq__form{display:flex;gap:6px}.classq__form .field__input{flex:1;min-width:0}.classq__row{display:flex;gap:8px;align-items:flex-start}.classq__text{cursor:pointer;line-height:1.4}.classq__answers{margin:4px 0 4px 44px;display:flex;flex-direction:column;gap:4px}.classq__answers p{margin:0;font-size:.92em}.classq__ai{background:#f5c84c1f;border-radius:8px;padding:4px 8px}.lo__stage{height:220px;border-radius:12px;overflow:hidden;margin:8px 0}.lo__pick{display:flex;flex-wrap:wrap;gap:6px}.lo__bars{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center}.lo__hp i{background:#d33a3a}.lo__q{display:flex;flex-direction:column;gap:8px}.lo__choices{display:grid;grid-template-columns:1fr 1fr;gap:6px}.lo__msg{margin:0;font-weight:600;text-align:center}.lo__msg--ok{color:#3aa65a}.lo__msg--bad{color:#d33a3a}.smedia{display:flex;flex-direction:column;gap:8px;margin:8px 0}.smedia__listen{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.smedia__listen small{opacity:.75}.smedia__script{width:100%}.smedia__passage,.smedia__script p{font-family:Georgia,Times New Roman,serif;line-height:1.65}.smedia__passage{max-height:300px;overflow-y:auto;padding:10px 14px;border-radius:10px;background:#fffcf0e6;color:#2b2118;border:1px solid rgba(0,0,0,.08)}.smedia__passage summary{font-family:inherit;font-weight:700;cursor:pointer}.smedia__passage p{margin:8px 0}.qc{width:min(760px,100%)}.qc__cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}.qc__card{display:flex;flex-direction:column;gap:6px;padding:12px;border-radius:12px;border:1px solid rgba(0,0,0,.1);background:#ffffff80}.qc__icon{font-size:26px;font-weight:700;color:#b8862b}.qc__waiting,.qc__vs{display:flex;gap:8px;align-items:center;justify-content:center}.qc__status{text-align:center;font-weight:600;margin:4px 0}.qc__match{display:flex;flex-direction:column;gap:8px;align-items:center}.qc__rank{display:flex;flex-direction:column;gap:4px;padding:6px;border-radius:8px;background:#0000000a}.qc__rank ol,.qc__top{margin:0;padding-left:20px}.qc__invite{position:fixed;left:50%;bottom:90px;transform:translate(-50%);z-index:60;padding:10px 14px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.oan__board{display:flex;gap:6px;align-items:stretch}.oan__rows{display:flex;flex-direction:column;gap:6px}.oan__row{display:flex;gap:6px}.oan__cell,.oan__quan{width:52px;min-height:52px;border-radius:8px;border:2px solid #8b6a3e;background:#f3e3c3;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#4a3420;padding:2px}.oan__quan{width:58px;border-radius:50% 0 0 50%}.oan__quan:last-child{border-radius:0 50% 50% 0}.oan__cell--sel{outline:3px solid #e8a33d}.oan__cell--last{box-shadow:inset 0 0 0 3px #e8a33d99}.oan__dots{font-size:11px;line-height:1;word-break:break-all;text-align:center}.oan__big{color:#8b2d1a;font-size:18px}.oan__score,.rps__score{text-align:center;font-weight:700}.rps{display:flex;flex-direction:column;align-items:center;gap:8px}.rps__score{font-size:28px}.rps__picks{display:flex;gap:10px}.rps__btn{font-size:34px;width:64px;height:64px;border-radius:50%;border:2px solid #8b6a3e;background:#fff8ea;cursor:pointer}.rps__btn--on{background:#e8a33d}.sdk{display:flex;flex-direction:column;gap:8px;align-items:center}.sdk__grid{display:grid;grid-template-columns:repeat(9,1fr);width:min(360px,100%);aspect-ratio:1;border:2px solid #4a3420}.sdk__cell{border:1px solid rgba(74,52,32,.25);background:#fffdf6;font-size:18px;color:#2563eb;padding:0;cursor:pointer}.sdk__cell:nth-child(9n+3),.sdk__cell:nth-child(9n+6){border-right:2px solid #4a3420}.sdk__cell:nth-child(n+19):nth-child(-n+27),.sdk__cell:nth-child(n+46):nth-child(-n+54){border-bottom:2px solid #4a3420}.sdk__cell--fixed{color:#2b2118;font-weight:700;background:#f1e8d6}.sdk__cell--sel{background:#ffe9b8}.sdk__cell--bad{color:#d33a3a}.sdk__pad{display:flex;flex-wrap:wrap;gap:4px;justify-content:center}@media (max-width: 480px){.oan__cell{width:40px;min-height:44px}.oan__quan{width:42px}}.soon-banner{margin:6px 0;padding:8px 12px;border-radius:10px;background:#8fd3ff2e;border:1px dashed rgba(70,140,200,.6);font-size:.92em}.subject__soon{color:#3a7bbf;font-weight:600}.topright:has(.menu){z-index:45}.menu{max-height:calc(100vh - 90px);overflow-y:auto}.oan__hint{text-align:center;opacity:.8}.sect-pick__hot{color:#b5452b;font-weight:700}.sect-pick__opt .subject__soon,.sect-pick__opt .sect-pick__hot{grid-column:1 / -1;opacity:1}.smedia__lines{white-space:pre-line}.mock__steps,.mock__bar{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.mock__bar{position:sticky;top:0;z-index:2;justify-content:space-between;padding:6px 0;background:var(--card)}.mock__time{font-variant-numeric:tabular-nums;font-weight:700}.mock__time--low{color:#d33a3a}.mock__part{display:flex;flex-direction:column;gap:8px;margin:10px 0}.mock__q{padding:8px;border-radius:10px;background:#00000008}.mock__prompt{white-space:pre-line;font-family:Georgia,Times New Roman,serif;line-height:1.6}.mock__data{font-family:Georgia,Times New Roman,serif}.mock__text{min-height:200px;font-family:Georgia,Times New Roman,serif;font-size:15px;line-height:1.6;padding:10px;border-radius:10px}.mock__wc--low{color:#d33a3a}.mock__fb{white-space:pre-line;padding:10px;border-radius:10px;background:#f5c84c24}.mock__self{max-width:220px}.mock__overall{font-size:1.15em;font-weight:700;text-align:center}.course__cta{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.course__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.course__feat{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-radius:12px;background:#0000000a}.course__feat span{font-size:.9em;opacity:.85}.course__table{width:100%;border-collapse:collapse}.course__table td{padding:8px 6px;border-bottom:1px solid rgba(0,0,0,.08);vertical-align:top}.course__packs{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.course__pack{display:flex;flex-direction:column;align-items:center;padding:10px 16px;border-radius:12px;border:1px solid rgba(232,163,61,.6);background:#fff8e6}.welcome__more summary{cursor:pointer;font-weight:600;margin:6px 0}.menu__locked{opacity:.6}.sp{display:flex;flex-direction:column;gap:8px}.sp__call--on{color:#3aa65a}.sp__call--error{color:#d33a3a}.sp__script ul{margin:4px 0;padding-left:20px;line-height:1.6}.sp__rate{display:flex;flex-direction:column;gap:6px}.sp__rate label{display:flex;justify-content:space-between;align-items:center;gap:8px}.sp__rate select{max-width:90px}.sp__card{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:10px;background:#3aa65a1a}.sp__card p{margin:2px 0 0}.duel__sect{display:block;font-weight:700;color:#b8862b}.arena-watch{position:fixed;top:70px;left:50%;transform:translate(-50%);z-index:23;width:min(420px,calc(100vw - 32px));padding:8px 12px;text-align:center}.arena-watch__title{font-weight:700;margin-bottom:6px}.arena-watch__vs{display:grid;grid-template-columns:1fr 1fr;gap:12px}.arena-watch__side{display:flex;flex-direction:column;gap:2px;position:relative;transition:transform .2s}.arena-watch__side--hit{transform:scale(1.06)}.arena-watch__hp i{background:#d33a3a;transition:width .4s}.arena-watch__boom{font-weight:700;color:#e8a33d;animation:cact-pop .4s ease-out}.challenge-pill{position:fixed;left:50%;bottom:150px;transform:translate(-50%);z-index:22;font-weight:700;background:linear-gradient(180deg,#f5c84c,#d99a2b);color:#3a2410}.aisp__stage{position:relative;height:220px;border-radius:14px;overflow:hidden}.aisp__name{position:absolute;left:50%;bottom:8px;transform:translate(-50%);padding:4px 10px;border-radius:999px;background:#ffffffd9;font-weight:600;font-size:.85em;white-space:nowrap}.aisp__log{display:flex;flex-direction:column;gap:6px;max-height:260px;overflow-y:auto}.aisp__log p{margin:0;padding:8px 10px;border-radius:12px;max-width:85%;line-height:1.45}.aisp__ai{align-self:flex-start;background:#e7eef9}.aisp__me{align-self:flex-end;background:#fff1d6}.aisp__draft{opacity:.7;font-style:italic}.aisp__controls{display:flex;flex-direction:column;gap:6px}.aisp__mic{font-size:1.05em}.aisp__mic--on{animation:cact-pop 1s ease-in-out infinite alternate}.smedia__code{margin:8px 0;padding:10px 12px;border-radius:8px;background:#1e1b26;color:#f3eadb;font:12.5px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre;overflow-x:auto}.roomload{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:16px;background:radial-gradient(ellipse at 50% 35%,rgba(232,163,61,.2),transparent 60%),#120c08;animation:roomload-in .2s ease;transition:opacity .35s ease}.roomload--out{opacity:0;pointer-events:none}@keyframes roomload-in{0%{opacity:0}}.roomload__box{width:min(340px,100%);display:flex;flex-direction:column;align-items:center;gap:10px;color:#ffe2a8;text-align:center}.roomload__icon{font-size:56px;line-height:1;animation:roomload-bob 1.2s ease-in-out infinite}.roomload__icon--bus{animation:roomload-bus .6s ease-in-out infinite}@keyframes roomload-bob{50%{transform:translateY(-8px)}}@keyframes roomload-bus{50%{transform:translateY(-3px) rotate(-2deg)}}.roomload__title{font:700 17px/1.3 Be Vietnam Pro,sans-serif}.roomload__bar{width:100%;height:10px;border-radius:999px;background:#f6c76626;box-shadow:inset 0 0 0 1px #f6c7664d;overflow:hidden}.roomload__bar>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#e8a33d,var(--gold-hi),#fff1c9);box-shadow:0 0 12px #f6c766b3;transition:width .12s linear}.roomload__pct{font:800 22px/1 Be Vietnam Pro,sans-serif;font-variant-numeric:tabular-nums;color:var(--gold-hi)}.roomload__tip{font-size:13px;opacity:.75;min-height:2.6em}.pill--exit{font-weight:700}@media (prefers-reduced-motion: reduce){.roomload__icon,.roomload__icon--bus{animation:none}}.pet__stage{position:relative;height:230px;border-radius:14px;overflow:hidden;margin:4px 0 8px;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none}.pet__stage--bath{cursor:grab;box-shadow:inset 0 0 0 3px #7cc6d9}.pet__bubble{position:absolute;top:14px;left:50%;transform:translate(-50%);padding:6px 12px;border-radius:14px;background:#fff;color:#4a2f1c;font-weight:700;box-shadow:0 4px 12px #00000026;animation:pet-pop .25s ease;pointer-events:none}@keyframes pet-pop{0%{transform:translate(-50%) scale(.6);opacity:0}}.pet__heart{position:absolute;left:50%;top:45%;font-size:26px;pointer-events:none;animation:pet-heart 1.2s ease-out forwards}@keyframes pet-heart{to{transform:translate(-50%,-110px) scale(1.4);opacity:0}}.pet__foam{position:absolute;font-size:22px;transform:translate(-50%,-50%);pointer-events:none;animation:pet-foam 1.4s ease-out forwards}@keyframes pet-foam{to{transform:translate(-50%,-80%) scale(1.3);opacity:0}}.pet__bathbar{position:absolute;left:12px;right:12px;bottom:10px;display:grid;gap:4px;color:#23606e;font-weight:700;font-size:13px;text-align:center;pointer-events:none}.pet__mood{margin:0 0 6px;font-weight:700;text-align:center}.pet__mood em{font-weight:400;opacity:.7}.pet__stat{display:grid;grid-template-columns:24px 1fr 28px;align-items:center;gap:8px;margin:4px 0}.pet__stat em{font-style:normal;font-variant-numeric:tabular-nums;text-align:right;opacity:.8}.pet__bar{height:10px;border-radius:999px;background:#00000014;overflow:hidden}.pet__bar>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7cd992,#4fbf74);transition:width .3s ease}.pet__bar--low>span{background:linear-gradient(90deg,#ff9b7a,#e8603d)}.pet__h{margin:12px 0 6px;font-size:15px}.pet__row{display:flex;flex-wrap:wrap;gap:6px}@media (prefers-reduced-motion: reduce){.pet__heart,.pet__foam{animation-duration:.01s}}.pet__adopt{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}.pet__pick{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 6px;border:2px solid rgba(201,161,74,.4);border-radius:14px;background:#fff8ea;color:inherit;cursor:pointer;transition:transform .15s ease,border-color .15s ease}.pet__pick:hover,.pet__pick:focus-visible{transform:translateY(-3px);border-color:var(--gold-hi)}.pet__pick span{font-size:42px;line-height:1}.pet__pick em{font-size:12px;opacity:.7}.pet-invite{position:fixed;left:50%;top:calc(max(12px,env(safe-area-inset-top)) + 112px);transform:translate(-50%);z-index:25;white-space:nowrap;font-size:14px;display:flex;align-items:center;gap:2px;border-radius:999px;background:#fff4e0;box-shadow:0 6px 18px #00000040;animation:pet-pop-in .4s ease}@keyframes pet-pop-in{0%{transform:translate(-50%) translateY(-10px);opacity:0}}.pet-invite__open{border:0;background:none;padding:8px 4px 8px 14px;font-weight:700;color:#4a2f1c;cursor:pointer}.pet-invite__x{border:0;background:none;padding:8px 12px 8px 6px;color:#8a6b4f;cursor:pointer}.pet__stage-name{font-weight:800;text-shadow:0 0 8px currentColor}.pet__evolve{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0;padding:10px 12px;border-radius:12px;background:linear-gradient(135deg,#7fe3ff2e,#ffd16638)}.pet__evolve div{display:grid;gap:2px}.pet__evolve span{font-size:13px;opacity:.75}.ai-petvoice{margin-top:6px}.ai-reply--pet{background:linear-gradient(135deg,#fff4e0,#ffe8f3);border-radius:14px 14px 14px 4px;padding:10px 12px}.pet__naming{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:14px;background:#d4a24c29;border:1.5px solid rgba(212,162,76,.55);margin-bottom:6px}.pet__naming .input{flex:1;min-width:0}.pet__rename{margin-left:6px;border:none;background:none;font-size:.75em;cursor:pointer;vertical-align:middle}.pet__evolve--top{margin:0 0 8px}@media (max-width: 640px){html body .hud-top{display:flex;flex-direction:column;align-items:flex-start;gap:8px}html body .hud-top>.pill,html body .hud-top>.enter-room>.pill,html body .hud-top .mode__pill,html body .topright>.pill,html body .topright__menu>.pill,html body .topright .focus__pill,html body .tanthu__pill,html body .books-reopen:not(.books-now),html body .booth-goto,html body .gn-reopen,html body .kd-reopen{box-sizing:border-box;height:40px}html body .hud-top>.pill,html body .hud-top>.pill:not(:last-child),html body .hud-top>*,html body .hud-top .mode{margin:0}html body .topright{row-gap:8px}html body .topright__main{padding-top:0;padding-bottom:0}html body .tanthu__pill{top:calc(max(16px,env(safe-area-inset-top)) + 96px)}}@media (max-width: 640px),(pointer: coarse){html body .vibe-chip{box-sizing:border-box;height:40px}html body .lib-tpl-btn{left:auto;right:max(16px,env(safe-area-inset-right));top:160px;transform:none;box-sizing:border-box;height:40px}}@media (pointer: coarse) and (max-height: 520px) and (min-width: 641px){html body .topright{row-gap:8px}html body .topright>.pill,html body .topright__menu>.pill,html body .topright .focus__pill,html body .tanthu__pill,html body .lib-tpl-btn,html body .booth-goto,html body .books-reopen:not(.books-now){box-sizing:border-box;height:40px}html body .topright__main{padding-top:0;padding-bottom:0}html body .tanthu__pill{top:calc(max(16px,env(safe-area-inset-top)) + 96px)}}.duel{position:fixed}.duel__mini{align-self:flex-end}.duel-reopen{position:fixed;left:max(16px,env(safe-area-inset-left));top:160px;z-index:22;box-sizing:border-box;height:40px;font-weight:700}@media (pointer: coarse) and (max-height: 520px) and (min-width: 641px){html body .emotes--touch{flex-direction:row-reverse;align-items:center}html body .skills{top:160px;bottom:auto;right:calc(max(16px,env(safe-area-inset-right)) + 70px);left:auto}html body .skills__list{max-height:calc(100dvh - 176px);overflow-y:auto}}.skills__head{display:flex;align-items:center;justify-content:space-between;gap:8px}.skills__close{border:0;background:transparent;font-size:16px;cursor:pointer;padding:2px 6px;color:inherit}@media (pointer: coarse) and (max-height: 520px) and (min-width: 641px){html body .skills__list{max-height:calc(100dvh - 260px)}}.ask{z-index:90;align-items:center;justify-content:center}.ask__card{width:min(360px,calc(100vw - 32px));margin:auto;padding:18px;display:flex;flex-direction:column;gap:14px}.ask__msg{margin:0;font-size:16px;line-height:1.5;white-space:pre-line}.ask__row{display:flex;justify-content:flex-end;gap:8px}.ask__row .btn{min-width:96px}
