@import"https://fonts.googleapis.com/css2?family=DotGothic16&family=Noto+Sans+KR:wght@400;500;700&display=swap";:root{--bg-base: #0a0a1a;--bg-card: rgba(28, 18, 52, .88);--bg-card-hover: rgba(40, 28, 72, .92);--bg-overlay: rgba(5, 3, 15, .72);--border-default: rgba(140, 100, 220, .28);--border-accent: rgba(155, 111, 212, .65);--accent-purple: #9b6fd4;--accent-purple-dim: #6b4a9a;--accent-pink: #e87ca0;--accent-gold: #f5c842;--accent-cyan: #7ecef4;--text-primary: #f0eaff;--text-secondary: #9a8fc0;--text-muted: #5a5070;--text-danger: #ff6b6b;--text-success: #6be5a0;--color-kyuu: #7ecef4;--color-rion: #b48de0;--color-yui: #f4a0bc;--color-usa: #f4a060;--color-pure: #e8e4f0;--status-ok: #6be5a0;--status-warn: #f5c842;--status-danger: #ff6b6b;--radius-card: 12px;--radius-btn: 8px;--radius-pill: 999px;--shadow-glow: 0 0 14px}.action-overlay{display:grid;place-items:center;padding:18px}.action-shell{position:relative;width:min(900px,100%);height:min(510px,100%);display:grid;grid-template-rows:auto auto auto 1fr auto;gap:10px;padding:16px;overflow:hidden}.action-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.action-header h1{margin:2px 0 0;font-size:22px}.action-resource-row{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.action-resource-row strong{padding:8px 10px;border:1px solid var(--border-default);border-radius:var(--radius-pill);background:#05030f5c;color:var(--text-primary);font-size:12px}.action-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.action-tab{display:flex;align-items:center;justify-content:center;gap:6px;min-height:38px;border:1px solid var(--border-default);border-radius:var(--radius-btn);background:#1c1234a3;color:var(--text-secondary)}.action-tab.is-active{border-color:var(--border-accent);background:linear-gradient(135deg,var(--accent-purple),var(--accent-purple-dim));color:var(--text-primary)}.action-emergency{min-height:34px;padding:9px 12px;border:1px solid var(--border-default);border-radius:var(--radius-btn);background:#05030f57;color:var(--text-secondary);font-size:13px}.action-emergency.is-visible{border-color:#ff6b6b99;background:#ff6b6b1f;color:var(--text-primary)}.action-body{min-height:0;display:grid;grid-template-columns:260px minmax(0,1fr);gap:12px}.action-member-panel,.action-main-panel{min-height:0;overflow-y:auto;border:1px solid var(--border-default);border-radius:var(--radius-card);background:#05030f52;padding:12px}.action-member-row,.action-card{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;margin-top:8px;padding:10px;border:1px solid var(--border-default);border-radius:var(--radius-btn);background:#1c1234bd;color:var(--text-primary);text-align:left}.action-member-row.is-selected,.action-card:not(.is-disabled):hover{border-color:var(--border-accent);background:#281c48eb}.action-member-row.is-warning{box-shadow:inset 0 0 0 1px #f5c84273}.action-member-row.is-critical{box-shadow:inset 0 0 0 1px #ff6b6b94,0 0 16px #ff6b6b29}.action-member-row.is-resting{box-shadow:inset 0 0 0 1px #f59e4280,0 0 12px #f59e421a}.action-member-row .action-member-alert.is-recovered{color:#f59e42}.action-member-thumb{width:44px;height:44px;border-radius:12px;background-position:center top;background-size:cover;border:1px solid var(--border-default)}.action-member-row strong,.action-card strong{display:block;font-size:14px}.action-member-row small,.action-card small,.action-member-row span,.action-card p{display:block;margin-top:2px;color:var(--text-secondary);font-size:12px;line-height:1.45}.action-member-row .action-member-alert{color:var(--status-danger);font-weight:800}.action-card>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#9b6fd429;font-size:20px}.action-card.is-disabled{opacity:.42;cursor:not-allowed}.action-empty{margin:12px 0 0;color:var(--text-secondary);font-size:13px}.action-footer{display:flex;justify-content:flex-end;padding-top:2px}.action-confirm-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;border-radius:inherit;background:#05030f94;z-index:5}.action-confirm-dialog{width:min(420px,100%);padding:18px;border:1px solid var(--border-accent);border-radius:var(--radius-card);background:#120a20fa;box-shadow:0 18px 42px #0000005c}.action-confirm-dialog h2{margin:4px 0 8px;color:var(--text-primary);font-size:18px}.action-confirm-dialog p{margin:0;color:var(--text-secondary);font-size:13px;line-height:1.6}.action-confirm-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}:root[data-device=mobile] .action-overlay{padding:6px}:root[data-device=mobile] .action-shell{height:calc(100% - 12px);grid-template-areas:"header back" "tabs   tabs" "emergency emergency" "body   body";grid-template-rows:auto auto auto minmax(0,1fr);grid-template-columns:1fr auto;gap:5px;padding:10px;overflow-y:auto}:root[data-device=mobile] .action-header{grid-area:header}:root[data-device=mobile] .action-footer{grid-area:back}:root[data-device=mobile] .action-tabs{grid-area:tabs}:root[data-device=mobile] .action-emergency{grid-area:emergency}:root[data-device=mobile] .action-body{grid-area:body}:root[data-device=mobile] .action-footer{justify-content:flex-end;align-self:start;padding:0}:root[data-device=mobile] .action-footer .btn{font-size:11px;padding:3px 10px;min-height:22px}:root[data-device=mobile] .action-header{align-items:flex-start;flex-direction:column;gap:5px}:root[data-device=mobile] .action-header h1{font-size:15px}:root[data-device=mobile] .action-resource-row{gap:4px}:root[data-device=mobile] .action-resource-row strong{padding:3px 7px;font-size:11px}:root[data-device=mobile] .action-tabs{grid-template-columns:repeat(4,1fr);gap:4px}:root[data-device=mobile] .action-tab{min-height:28px;gap:3px;font-size:11px;padding:0 3px}:root[data-device=mobile] .action-tab span{font-size:13px}:root[data-device=mobile] .action-emergency{min-height:18px;padding:2px 8px;font-size:10px}:root[data-device=mobile] .action-body{grid-template-columns:155px minmax(0,1fr);gap:7px;min-height:0}:root[data-device=mobile] .action-member-panel,:root[data-device=mobile] .action-main-panel{padding:7px}:root[data-device=mobile] .action-member-row{gap:6px;padding:5px 7px;margin-top:4px}:root[data-device=mobile] .action-member-thumb{width:32px;height:32px;border-radius:7px}:root[data-device=mobile] .action-member-row strong{font-size:11px}:root[data-device=mobile] .action-member-row small,:root[data-device=mobile] .action-member-row span{font-size:10px}:root[data-device=mobile] .action-card{gap:7px;padding:7px;margin-top:4px}:root[data-device=mobile] .action-card>span{width:30px;height:30px;border-radius:7px;font-size:15px}:root[data-device=mobile] .action-card-title{font-size:11px;font-weight:600;display:block}:root[data-device=mobile] .action-card strong{font-size:11px!important;font-weight:600}:root[data-device=mobile] .action-card small,:root[data-device=mobile] .action-card p{font-size:10px}:root[data-device=mobile] .action-confirm-backdrop{padding:10px}:root[data-device=mobile] .action-confirm-dialog{padding:14px}:root[data-device=mobile] .action-confirm-dialog h2{font-size:15px}:root[data-device=mobile] .action-confirm-actions{display:grid;grid-template-columns:1fr 1fr}*{box-sizing:border-box}html,body{width:100%;min-width:320px;min-height:100%;margin:0}body{color:var(--text-primary);background:var(--bg-base);font-family:Noto Sans KR,sans-serif;overflow:hidden;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{color:inherit}#app{display:flex;align-items:center;justify-content:center;width:100vw;height:100svh;min-height:100svh;overflow:hidden;background:radial-gradient(circle at 50% 15%,rgba(155,111,212,.12),transparent 34%),var(--bg-base)}#game-root{position:relative;flex:0 0 auto;width:960px;height:540px;aspect-ratio:16 / 9;overflow:hidden;background:#05030f;--ui-scale: 1;--text-scale: 1;--mobile-vn-character-scale: 1}@supports (height: 100dvh){#app{height:100dvh;min-height:100dvh}#game-root{width:960px;height:540px}}:root[data-device=mobile] #game-root{width:min(100vw,calc(100svh * 16 / 9));height:min(100svh,56.25vw);max-width:none}@supports (height: 100dvh){:root[data-device=mobile] #game-root{width:min(100vw,calc(100dvh * 16 / 9));height:min(100dvh,56.25vw)}}:root[data-resolution=fhd-recording] #game-root{width:1920px;height:1080px;--ui-scale: 2;--text-scale: 1.8}:root[data-resolution=fhd-recording] .dashboard-panel{max-width:1280px}:root[data-resolution=fhd-recording] button,:root[data-resolution=fhd-recording] .btn{min-height:44px}#orientation-gate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:none;align-items:center;justify-content:center;background:radial-gradient(circle at top,rgba(255,120,190,.16),transparent 34%),#080812;color:#fff;text-align:center;padding:24px}#orientation-gate.is-visible{display:flex}.orientation-gate-card{width:min(320px,88vw);padding:24px 22px;border-radius:20px;background:#ffffff12;border:1px solid rgba(255,255,255,.18);box-shadow:0 18px 48px #0000006b}.orientation-gate-icon{font-size:42px;margin-bottom:12px}.orientation-gate-title{font-size:18px;font-weight:800;margin-bottom:10px}.orientation-gate-text{font-size:14px;line-height:1.65;opacity:.82}.font-pixel{font-family:DotGothic16,monospace}.text-title{font-size:18px;font-weight:700}.text-body{font-size:13px;font-weight:400}.text-small{font-size:11px;font-weight:400}.game-overlay{position:absolute;top:0;right:0;bottom:0;left:0}.panel,.card{background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-card);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.card{transition:background .12s ease,border-color .12s ease,transform .12s ease}.card:hover{background:var(--bg-card-hover);border-color:var(--border-accent)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:36px;gap:8px;padding:8px 14px;border:1px solid var(--border-default);border-radius:var(--radius-btn);background:#140c2ad1;cursor:pointer;transition:transform 80ms ease,background .12s ease,border-color .12s ease}.btn:hover{background:var(--bg-card-hover);border-color:var(--border-accent)}.btn:active{transform:scale(.96)}.btn:disabled{cursor:not-allowed;opacity:.42}.btn-primary{background:linear-gradient(135deg,var(--accent-purple),var(--accent-purple-dim));border-color:var(--border-accent);box-shadow:var(--shadow-glow) #9b6fd440}.icon-btn{display:inline-grid;width:36px;height:36px;padding:0;place-items:center;border:1px solid var(--border-default);border-radius:var(--radius-btn);background:#140c2ad1;cursor:pointer;transition:transform 80ms ease,background .12s ease,border-color .12s ease}.icon-btn:hover{background:var(--bg-card-hover);border-color:var(--border-accent)}.icon-btn:active{transform:scale(.96)}.badge{display:inline-flex;align-items:center;justify-content:center;min-height:20px;padding:3px 8px;border-radius:var(--radius-pill);background:#9b6fd43d;color:var(--text-primary);font-size:11px;font-weight:700;white-space:nowrap}.badge-primary{background:var(--accent-purple)}.badge-muted{background:#9a8fc033;color:var(--text-secondary)}.progress{width:100%;height:6px;overflow:hidden;border-radius:3px;background:#ffffff1a}.progress-fill{width:var(--progress-value, 0%);height:100%;border-radius:inherit;background:var(--progress-color, var(--accent-purple));transition:width .4s ease}.member-color-kyuu{--member-color: var(--color-kyuu)}.member-color-rion{--member-color: var(--color-rion)}.member-color-yui{--member-color: var(--color-yui)}.member-color-usa{--member-color: var(--color-usa)}.member-color-pure{--member-color: var(--color-pure)}.member-color-npc{--member-color: rgba(160, 148, 180, .7)}.member-placeholder{width:100%;height:100%;background:var(--member-color, var(--accent-purple));opacity:.4}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width: 640px){:root[data-device=mobile] #game-root{width:min(100vw,calc(100svh * 16 / 9));height:min(100svh,56.25vw);max-width:none}:root[data-device=mobile] .text-title{font-size:16px}:root[data-device=mobile] .btn{min-height:34px;padding:7px 12px}}.live-overlay{display:grid;grid-template-rows:auto 1fr auto;gap:10px;padding:10px;background:linear-gradient(180deg,#05030f2e,#05030f6b)}.live-top-hud{display:grid;grid-template-columns:300px minmax(0,1fr) 360px;align-items:start;gap:14px;min-height:78px}.live-title-block{display:flex;align-items:flex-start;gap:10px}.live-badge{display:inline-flex;min-width:62px;min-height:32px;align-items:center;justify-content:center;border:1px solid var(--border-default);border-radius:4px;color:var(--accent-pink);background:#05030fa3;font-size:20px;font-weight:700}.live-title-block strong{display:block;font-size:18px}.live-title-block small,.live-song span,.live-stats span{color:var(--text-secondary);font-size:11px}.live-song{display:grid;gap:5px}.live-song strong{font-size:15px}.live-progress-track{position:relative;height:5px;border-radius:var(--radius-pill);background:#ffffff14}.live-progress-fill{width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent-purple),var(--accent-pink));transition:width .36s ease}.live-progress-thumb{position:absolute;top:50%;left:0;width:10px;height:10px;border-radius:50%;background:var(--accent-purple);box-shadow:0 0 12px #9b6fd4cc;transform:translate(-50%,-50%);transition:left .36s ease}.live-parts{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.live-parts span{min-height:22px;padding:4px 6px;border:1px solid rgba(140,100,220,.16);border-radius:3px;background:#05030f80;color:var(--text-secondary);text-align:center;font-size:10px}.live-parts span.is-active{color:var(--text-primary);background:var(--accent-purple)}.live-stats{display:grid;grid-template-columns:repeat(4,auto);justify-content:end;gap:8px}.live-stats div,.live-stats button{min-height:44px;padding:6px 12px;border:1px solid var(--border-default);border-radius:var(--radius-btn);background:#05030f94}.live-stats div{display:grid;place-items:center;gap:1px}.live-stats strong{font-size:16px}.live-stats button{color:var(--text-primary);cursor:pointer;font-size:22px;font-weight:700}.live-goals{position:absolute;top:106px;left:10px;display:grid;width:168px;gap:10px;padding:13px}.live-goal-row{display:grid;grid-template-columns:1fr auto;gap:3px 8px;padding-top:8px;border-top:1px solid var(--border-default)}.live-goal-row span{grid-column:1;color:var(--text-primary);font-size:12px}.live-goal-row strong{grid-column:1;color:var(--text-secondary);font-size:12px}.live-goal-row i{grid-row:1 / 3;grid-column:2;align-self:center;color:var(--accent-purple);font-style:normal;font-weight:700}.live-member-panel{position:absolute;top:88px;right:10px;display:grid;width:300px;max-height:308px;gap:6px;overflow:hidden;padding:10px}.live-member-list{display:grid;gap:4px}.live-member-row{display:grid;grid-template-columns:34px 1fr;gap:7px;min-height:38px;padding-top:3px;border-top:1px solid var(--border-default)}.live-member-thumb{width:34px;height:34px;border-radius:4px;background:radial-gradient(circle at 50% 20%,rgba(255,255,255,.24),transparent 24%),linear-gradient(180deg,var(--member-color),rgba(5,3,15,.6));background-position:center top;background-size:cover}.live-member-info{display:grid;gap:1px;min-width:0}.live-member-info div{display:flex;align-items:center;gap:6px;min-height:15px}.live-member-info strong{font-size:12px}.live-member-info small,.live-member-info label{color:var(--text-secondary);font-size:10px}.live-member-info>small{display:none}.live-member-info em{margin-left:auto;color:var(--accent-gold);font-size:10px;font-style:normal}.live-member-info label{display:flex;justify-content:space-between}.live-member-info label{display:none}.live-bottom-area{position:absolute;right:10px;bottom:10px;left:10px;display:grid;grid-template-columns:minmax(250px,.92fr) minmax(330px,1.12fr) minmax(270px,.96fr);gap:12px;min-height:146px}.live-chat,.live-response,.live-estimate{display:grid;align-content:start;gap:7px;padding:11px}.live-estimate{min-height:146px}@keyframes live-comment-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.live-chat-comment--new{animation:live-comment-in .4s ease-out forwards}.live-finish-btn{margin-top:6px;width:100%;padding:9px 0;font-size:13px}.live-chat p{display:grid;grid-template-columns:18px 1fr auto;gap:7px;margin:0;color:var(--text-secondary);font-size:12px}.live-chat p span{color:var(--accent-purple)}.live-chat p strong{color:var(--text-primary);font-weight:500}.live-chat p time{color:var(--text-muted)}.live-response-row{display:grid;grid-template-columns:24px 94px minmax(0,1fr) 44px 58px;align-items:center;gap:8px;min-height:28px}.live-response-row strong,.live-response-row em{font-size:12px;font-style:normal}.live-response-row b{padding:4px 8px;border:1px solid rgba(232,124,160,.24);border-radius:5px;color:var(--accent-pink);background:#e87ca01f;font-size:11px;text-align:center}.live-estimate div{display:grid;grid-template-columns:1fr auto auto;gap:8px;min-height:20px;padding-top:4px;border-top:1px solid var(--border-default);font-size:11px}.live-estimate span{color:var(--text-secondary)}.live-estimate em{color:var(--text-success);font-style:normal}@media (max-width: 860px){:root[data-device=mobile] .live-top-hud{grid-template-columns:1fr}:root[data-device=mobile] .live-stats{justify-content:start}:root[data-device=mobile] .live-goals,:root[data-device=mobile] .live-member-panel{display:none}:root[data-device=mobile] .live-overlay{display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;gap:10px}:root[data-device=mobile] .live-bottom-area{position:static;display:flex;flex-direction:column;gap:10px;overflow:visible;min-height:unset}:root[data-device=mobile] .live-chat,:root[data-device=mobile] .live-response{display:none}}.live-result-overlay{display:grid;place-items:center;padding:18px;background:radial-gradient(circle at 50% 6%,rgba(232,124,160,.24),transparent 34%),#05030f9e}.live-result-card{display:grid;width:min(560px,100%);max-height:min(500px,100%);gap:14px;overflow:auto;padding:18px;border-color:var(--border-accent);box-shadow:0 0 32px #9b6fd43d}.live-result-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.live-result-header h1{margin:0;color:var(--accent-gold);font-size:24px;line-height:1.1}.live-result-header span{padding:7px 12px;border-radius:var(--radius-pill);color:var(--text-primary);background:var(--accent-pink);font-size:13px;font-weight:700;white-space:nowrap}.live-result-summary{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:14px;border:1px solid var(--border-default);border-radius:var(--radius-btn);background:#05030f61}.result-rank{display:grid;place-items:center;align-content:center;gap:7px;min-height:136px;border-right:1px solid var(--border-default)}.result-rank strong{display:grid;width:86px;height:86px;place-items:center;border:2px solid var(--accent-cyan);border-radius:50%;color:var(--accent-cyan);box-shadow:0 0 18px #7ecef43d;font-family:DotGothic16,monospace;font-size:54px}.result-rank span{color:var(--accent-purple);font-size:18px}.result-rows{display:grid}.result-rows div{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;min-height:30px;border-bottom:1px solid var(--border-default);font-size:13px}.result-rows div:last-child{border-bottom:0}.result-rows span{color:var(--text-secondary)}.result-rows em{color:var(--accent-cyan);font-style:normal}.result-members{display:grid;gap:10px;padding:12px;border:1px solid var(--border-default);border-radius:var(--radius-btn);background:#05030f4d}.result-member-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.result-member-item{display:grid;gap:3px;min-width:0;padding:8px;border:1px solid var(--border-default);border-radius:var(--radius-btn);background:#ffffff0a;text-align:center}.result-member-thumb{width:100%;aspect-ratio:1 / .72;border-radius:5px;background:radial-gradient(circle at 50% 18%,rgba(255,255,255,.28),transparent 22%),linear-gradient(180deg,var(--member-color),rgba(5,3,15,.58));background-position:center top;background-size:cover}.result-member-item strong{overflow:hidden;color:var(--text-primary);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.result-member-item span{color:var(--text-secondary);font-size:10px}.result-member-item em{font-style:normal;font-weight:700}.result-member-item em.is-plus{color:var(--text-danger)}.result-member-item em.is-minus{color:var(--accent-cyan)}.live-result-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.result-rank .live-grade-s{color:#ffe66d;border-color:#ffe66d;box-shadow:0 0 18px #ffe66d52}.result-rank .live-grade-a{color:#a5ffdf;border-color:#a5ffdf;box-shadow:0 0 18px #a5ffdf47}.result-rank .live-grade-b{color:#8fd4ff;border-color:#8fd4ff;box-shadow:0 0 18px #8fd4ff3d}.result-rank .live-grade-c{color:#c7a4ff;border-color:#c7a4ff;box-shadow:0 0 18px #c7a4ff3d}.result-rank .live-grade-d{color:#ff9a76;border-color:#ff9a76;box-shadow:0 0 18px #ff9a763d}.result-rank .live-grade-f{color:#ff6b8b;border-color:#ff6b8b;box-shadow:0 0 18px #ff6b8b47}.live-grade-label{font-size:11px;color:inherit;opacity:.82;text-align:center;font-weight:500}.result-summary-block{padding:10px 14px;border:1px solid var(--border-default);border-radius:var(--radius-btn);background:#05030f52;display:grid;gap:3px}.result-summary-line{margin:0;color:var(--text-secondary);font-size:12px;line-height:1.7}@media (max-width: 640px){:root[data-device=mobile] .live-result-card{padding:14px}:root[data-device=mobile] .live-result-header{align-items:flex-start;flex-direction:column}:root[data-device=mobile] .live-result-summary{grid-template-columns:1fr}:root[data-device=mobile] .result-rank{border-right:0;border-bottom:1px solid var(--border-default);padding-bottom:12px}:root[data-device=mobile] .result-member-list{grid-template-columns:repeat(3,minmax(0,1fr))}}.dashboard-overlay{display:flex;flex-direction:column;background:linear-gradient(90deg,#05030f6b,#05030f14 52%,#05030f8c),radial-gradient(circle at 50% 105%,rgba(155,111,212,.22),transparent 34%)}.dashboard-topbar{display:grid;grid-template-columns:auto minmax(62px,84px) minmax(108px,1fr) minmax(132px,1.15fr) minmax(108px,1fr) minmax(94px,.9fr) auto;align-items:center;gap:9px;min-height:58px;padding:8px 14px;border-bottom:1px solid var(--border-default);background:#050312db}.topbar-badge-block,.topbar-resource{display:inline-flex;align-items:center;justify-content:center;min-height:36px;gap:8px;padding:6px 12px;border:1px solid var(--border-default);border-radius:var(--radius-pill);background:#080418d1;white-space:nowrap;min-width:0}.week-badge{flex-direction:column;min-width:44px;gap:0;border-radius:var(--radius-btn);background:linear-gradient(135deg,var(--accent-purple),var(--accent-purple-dim))}.topbar-badge-block span,.topbar-resource span,.topbar-resource em{color:var(--text-secondary);font-size:11px;font-style:normal}.topbar-resource strong,.dashboard-day{color:var(--text-primary);font-size:14px}.topbar-resource em{color:var(--status-warn)}.topbar-icons{display:flex;justify-content:flex-end;gap:7px}.dashboard-main{display:grid;grid-template-columns:minmax(0,1fr) 226px;flex:1;min-height:0;gap:10px;overflow:hidden;padding:12px}.dashboard-member-section{display:flex;min-width:0;flex-direction:column;gap:10px}.section-label{margin:0;color:var(--text-primary);font-size:14px;font-weight:700;line-height:1.2}.dashboard-member-cards{display:flex;min-width:0;gap:8px;overflow-x:auto;padding:2px 2px 8px;scroll-snap-type:x mandatory;scrollbar-width:none}.dashboard-member-cards::-webkit-scrollbar{display:none}.member-card{position:relative;display:flex;width:124px;min-width:124px;height:324px;flex-direction:column;overflow:hidden;border-color:color-mix(in srgb,var(--member-color) 62%,transparent);scroll-snap-align:start}.member-card.is-selected{box-shadow:0 0 16px color-mix(in srgb,var(--member-color) 34%,transparent)}.member-card.is-unavailable{filter:grayscale(.2)}.member-card-visual{height:194px;overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--member-color) 38%,transparent),#05030f33)}.member-card-image{width:100%;height:100%;object-fit:cover;object-position:center top;transform:translateY(2px) scale(1.18);transform-origin:top center}.member-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:6px;padding:7px 8px 3px}.member-card-identity{display:grid;gap:1px}.member-card-name{color:var(--text-primary);font-size:13px;line-height:1.1}.member-card-role{color:var(--member-color);font-size:10px;font-weight:700}.member-card-body{display:grid;gap:6px;padding:5px 8px}.progress-row{display:grid;gap:4px}.progress-meta{display:flex;justify-content:space-between;gap:8px;color:var(--text-secondary);font-size:10px}.progress-value{color:var(--text-primary)}.member-card-exp{padding:0 8px 4px}.member-card-exp-label{display:flex;justify-content:space-between;font-size:9px;color:var(--text-muted);margin-bottom:3px;font-family:DotGothic16,monospace}.member-card-exp-track{height:4px;background:#9b6fd426;border-radius:2px;overflow:hidden}.member-card-exp-fill{height:100%;background:linear-gradient(90deg,#7c3aed,#a855f7);border-radius:2px;transition:width .3s ease}.member-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding:6px 8px 8px}.member-card-mood{display:inline-grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#ffffff14;font-size:18px}.member-card-status{color:var(--text-secondary);font-size:10px}.member-card-warning-overlay{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;display:flex;align-items:flex-end;justify-content:center;padding-bottom:6px}.member-card-warning-label{font-size:10px;font-weight:700;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.8);text-align:center;line-height:1.2}.member-card.is-caution .member-card-visual img{filter:saturate(.75)}.member-card.is-danger .member-card-visual img{filter:saturate(.3) brightness(.85)}.member-card.is-critical .member-card-visual img{filter:saturate(.05) brightness(.7)}.dashboard-side{display:flex;flex-direction:column;gap:6px;min-width:0;min-height:0;overflow:hidden}.dashboard-side .dashboard-panel:last-child{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.dashboard-panel{display:grid;gap:6px;padding:9px 11px}.schedule-list{display:grid;gap:4px}.schedule-row{display:grid;grid-template-columns:18px 38px 1fr;align-items:center;gap:5px;min-height:20px;padding:3px 6px;border-radius:var(--radius-btn);background:#05030f8a;color:var(--text-secondary);font-size:11px}.schedule-row strong{color:var(--text-primary);font-size:11px}.schedule-row.is-past{opacity:.48}.schedule-row.is-current{border-left:2px solid var(--accent-pink);box-shadow:inset 0 0 18px #e87ca01f}.quest-card{display:grid;gap:8px;padding:10px;border:1px solid var(--border-default);border-radius:var(--radius-btn);background:#05030f94}.quest-empty{font-size:calc(12px * var(--text-scale));color:#6b5b8a;margin:0}.quest-compact-list{display:grid;align-content:start;gap:calc(4px * var(--ui-scale));flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:calc(2px * var(--ui-scale));scrollbar-width:thin;scrollbar-color:rgba(155,111,212,.25) transparent}.quest-compact-card{display:flex;flex-direction:column;gap:calc(4px * var(--ui-scale));width:100%;padding:calc(5px * var(--ui-scale)) calc(8px * var(--ui-scale));border:1px solid rgba(155,111,212,.18);border-radius:calc(7px * var(--ui-scale));background:#9b6fd412;text-align:left;cursor:pointer;transition:background .12s}.quest-compact-card:hover{background:#9b6fd424}.quest-compact-top{display:flex;align-items:center;justify-content:space-between;gap:calc(5px * var(--ui-scale))}.quest-compact-title{font-size:calc(10px * var(--text-scale));font-weight:700;color:#f0eafb;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.quest-compact-tag{flex:none;font-size:calc(8px * var(--text-scale));font-weight:700;padding:calc(1px * var(--ui-scale)) calc(4px * var(--ui-scale));border-radius:999px;white-space:nowrap}.quest-compact-meta{flex:none;font-size:calc(9px * var(--text-scale));color:#9b6fd4cc;white-space:nowrap}.quest-compact-bar{height:calc(2px * var(--ui-scale));background:#9b6fd426;border-radius:999px;overflow:hidden}.quest-compact-bar>div{height:100%;background:linear-gradient(90deg,#7c3aed,#a855f7);border-radius:999px;transition:width .3s}.quest-viewall-btn{display:block;width:100%;flex:none;margin-top:auto;padding:calc(6px * var(--ui-scale)) 0;font-size:calc(11px * var(--text-scale));font-weight:600;color:#9b6fd4b3;background:none;border:none;cursor:pointer;text-align:center;transition:color .12s}.quest-viewall-btn:hover{color:#9b6fd4}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:9000;display:flex;align-items:center;justify-content:center;background:#05030f9e}.modal-card{min-width:calc(260px * var(--ui-scale));max-width:calc(360px * var(--ui-scale));width:90%;padding:calc(22px * var(--ui-scale)) calc(24px * var(--ui-scale));border-radius:calc(18px * var(--ui-scale));background:#120a24f7;border:1px solid rgba(155,111,212,.35);box-shadow:0 calc(20px * var(--ui-scale)) calc(60px * var(--ui-scale)) #00000080;display:flex;flex-direction:column;gap:calc(8px * var(--ui-scale))}.modal-title{font-size:calc(13px * var(--text-scale));font-weight:700;letter-spacing:.18em;color:#9b6fd4cc;text-align:center;margin:0 0 calc(4px * var(--ui-scale))}.modal-menu-btn{width:100%;padding:calc(11px * var(--ui-scale)) calc(16px * var(--ui-scale));border-radius:calc(10px * var(--ui-scale));border:1px solid rgba(155,111,212,.25);background:#9b6fd414;color:#f0eafb;font-size:calc(13px * var(--text-scale));font-weight:600;cursor:pointer;text-align:left;transition:background .12s}.modal-menu-btn:hover:not(:disabled){background:#9b6fd42e}.settings-card{max-width:calc(400px * var(--ui-scale));width:92%}.settings-section{display:flex;flex-direction:column;gap:calc(10px * var(--ui-scale));padding:calc(10px * var(--ui-scale)) 0 calc(6px * var(--ui-scale))}.settings-section-title{margin:0 0 calc(4px * var(--ui-scale));font-size:calc(10px * var(--text-scale));font-weight:700;letter-spacing:.14em;color:#9b6fd4a6}.settings-row{display:flex;align-items:center;gap:calc(10px * var(--ui-scale))}.settings-label{flex:0 0 calc(72px * var(--ui-scale));font-size:calc(12px * var(--text-scale));color:#f0eafbd9;white-space:nowrap}.settings-slider{flex:1;height:calc(4px * var(--ui-scale));min-height:4px;accent-color:rgb(155,111,212);cursor:pointer;-webkit-tap-highlight-color:transparent;padding:calc(10px * var(--ui-scale)) 0;background:transparent}.settings-pct{flex:0 0 calc(36px * var(--ui-scale));font-size:calc(11px * var(--text-scale));color:#9b6fd4e6;text-align:right;font-variant-numeric:tabular-nums}.settings-mute-btn{padding:calc(6px * var(--ui-scale)) calc(18px * var(--ui-scale));border-radius:calc(8px * var(--ui-scale));border:1px solid rgba(155,111,212,.35);background:#9b6fd414;color:#f0eafb99;font-size:calc(11px * var(--text-scale));font-weight:700;letter-spacing:.06em;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .12s,color .12s}.settings-mute-btn.is-active{background:#9b6fd447;color:#dbbeff;border-color:#9b6fd4a6}.shop-buy-card{max-width:calc(360px * var(--ui-scale));width:92%;gap:calc(12px * var(--ui-scale))}.shop-buy-desc{margin:0;font-size:calc(12px * var(--text-scale));color:var(--text-secondary);line-height:1.5}.shop-buy-qty-row{display:flex;align-items:center;gap:calc(8px * var(--ui-scale))}.shop-buy-stepper-btn{width:calc(36px * var(--ui-scale));height:calc(36px * var(--ui-scale));border-radius:calc(8px * var(--ui-scale));border:1px solid rgba(155,111,212,.4);background:#9b6fd41a;color:var(--text-primary);font-size:calc(18px * var(--text-scale));font-weight:700;cursor:pointer;-webkit-tap-highlight-color:transparent;flex:0 0 auto}.shop-buy-qty-input{width:calc(64px * var(--ui-scale));padding:calc(6px * var(--ui-scale));border-radius:calc(8px * var(--ui-scale));border:1px solid rgba(155,111,212,.35);background:#ffffff0f;color:var(--text-primary);font-size:calc(16px * var(--text-scale));text-align:center;font-variant-numeric:tabular-nums}.shop-buy-total{flex:1;text-align:right;font-size:calc(14px * var(--text-scale));font-weight:700;color:#9b6fd4f2;font-variant-numeric:tabular-nums}.shop-buy-presets{display:flex;gap:calc(6px * var(--ui-scale))}.shop-buy-preset-btn{flex:1;padding:calc(6px * var(--ui-scale)) 0;border-radius:calc(8px * var(--ui-scale));border:1px solid rgba(155,111,212,.28);background:#9b6fd414;color:#c8afebe6;font-size:calc(11px * var(--text-scale));font-weight:700;cursor:pointer;-webkit-tap-highlight-color:transparent}.shop-buy-preset-btn:active{background:#9b6fd438}.shop-buy-btn-row{display:flex;gap:calc(8px * var(--ui-scale))}.shop-buy-btn-row .modal-menu-btn{text-align:center}.shop-buy-confirm-btn{background:#9b6fd438;border-color:#9b6fd480;color:#dbbeff;font-weight:700}.quest-board-card{max-width:calc(420px * var(--ui-scale));max-height:calc(400px * var(--ui-scale))}.quest-board-list{display:flex;flex-direction:column;gap:calc(5px * var(--ui-scale));overflow-y:auto;max-height:calc(280px * var(--ui-scale));scrollbar-width:thin;scrollbar-color:rgba(155,111,212,.25) transparent}.quest-board-row{display:flex;flex-direction:column;gap:calc(3px * var(--ui-scale));width:100%;padding:calc(7px * var(--ui-scale)) calc(10px * var(--ui-scale));border:1px solid rgba(155,111,212,.18);border-radius:calc(8px * var(--ui-scale));background:#9b6fd412;text-align:left;cursor:pointer;transition:background .12s}.quest-board-row:hover{background:#9b6fd426}.quest-board-row-top{display:flex;align-items:center;justify-content:space-between;gap:calc(6px * var(--ui-scale))}.quest-board-row-bottom{display:flex;align-items:center;gap:calc(8px * var(--ui-scale))}.quest-detail-card{max-width:calc(400px * var(--ui-scale))}.quest-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:calc(8px * var(--ui-scale))}.quest-detail-title{font-size:calc(14px * var(--text-scale));font-weight:800;color:#f0eafb;line-height:1.3}.quest-detail-tag{flex:none;font-size:calc(9px * var(--text-scale));font-weight:700;padding:calc(2px * var(--ui-scale)) calc(6px * var(--ui-scale));border-radius:999px}.quest-detail-desc{font-size:calc(11px * var(--text-scale));color:#f0eafb99;margin:0;line-height:1.55}.quest-detail-progress-row{display:flex;justify-content:space-between;font-size:calc(10px * var(--text-scale));color:#9b6fd4cc}.quest-detail-bar{height:calc(4px * var(--ui-scale));background:#9b6fd426;border-radius:999px;overflow:hidden}.quest-detail-bar>div{height:100%;background:linear-gradient(90deg,#7c3aed,#a855f7);border-radius:999px}.quest-detail-objectives{display:flex;flex-direction:column;gap:calc(5px * var(--ui-scale))}.quest-detail-obj{display:flex;gap:calc(6px * var(--ui-scale));font-size:calc(11px * var(--text-scale));color:#f0eafba6}.quest-detail-obj.is-done{color:#9b6fd480;text-decoration:line-through}.quest-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.quest-card p{margin:0;color:var(--text-secondary);font-size:12px}.quest-progress{justify-self:end;color:var(--text-primary);font-size:12px}.dashboard-actionbar{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:0 12px 8px}.dashboard-action-btn,.bottomnav-item{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border-default);color:var(--text-secondary);background:#080418c7;cursor:pointer}.dashboard-action-btn{min-height:38px;border-radius:var(--radius-btn);font-size:13px}.dashboard-action-btn.is-active,.dashboard-action-btn:hover{color:var(--text-primary);border-color:var(--border-accent);background:linear-gradient(135deg,#9b6fd4b8,#6b4a9a94)}.dashboard-bottomnav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));min-height:48px;border-top:1px solid var(--border-default);background:#050312e6}.bottomnav-item{position:relative;flex-direction:column;gap:2px;border-width:0;border-radius:0;font-size:11px}.bottomnav-item span{font-size:18px}.bottomnav-item.is-active{color:var(--text-primary);background:linear-gradient(180deg,#9b6fd433,#9b6fd457)}.bottomnav-item.is-active:before{position:absolute;top:0;left:28%;right:28%;height:2px;border-radius:var(--radius-pill);background:var(--accent-purple);content:""}.bottomnav-item.is-disabled{cursor:not-allowed;opacity:.32;filter:grayscale(.5)}.bottomnav-item.is-disabled:hover{color:var(--text-muted);background:transparent}.bottomnav-item.has-notice:after{position:absolute;top:8px;right:calc(50% - 24px);width:7px;height:7px;border-radius:50%;background:var(--accent-pink);content:""}@media (max-width: 760px){:root[data-device=mobile] .dashboard-overlay{overflow-y:auto}:root[data-device=mobile] .dashboard-topbar{grid-template-columns:auto auto 1fr auto;gap:6px}:root[data-device=mobile] .topbar-resource:nth-of-type(n+3),:root[data-device=mobile] .topbar-icons{display:none}:root[data-device=mobile] .dashboard-main{grid-template-columns:1fr;flex:0 0 auto;overflow:visible;padding:10px}:root[data-device=mobile] .dashboard-side{grid-template-columns:1fr 1fr}:root[data-device=mobile] .dashboard-actionbar{grid-template-columns:repeat(3,minmax(0,1fr));padding-inline:10px}}@media (orientation: landscape) and (max-height: 600px){:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-topbar{grid-template-columns:auto auto minmax(92px,1fr) minmax(112px,1fr) minmax(96px,1fr) auto;min-height:42px;gap:6px;padding:5px 8px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .topbar-resource{min-height:30px;padding:4px 9px;gap:5px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .week-badge{min-width:38px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .topbar-resource:nth-of-type(4),:root[data-device=mobile]:not([data-resolution=fhd-recording]) .topbar-icons .icon-btn:first-child{display:none}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .topbar-badge-block span,:root[data-device=mobile]:not([data-resolution=fhd-recording]) .topbar-resource span,:root[data-device=mobile]:not([data-resolution=fhd-recording]) .topbar-resource em{font-size:9px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .topbar-resource strong,:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-day{font-size:12px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .topbar-icons{gap:5px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .icon-btn{width:34px;height:34px;border-radius:8px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-main{grid-template-columns:minmax(0,1fr) 176px;gap:8px;padding:8px 10px 6px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-member-section{gap:6px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .section-label{font-size:12px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-member-cards{gap:7px;padding-bottom:4px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card{width:96px;min-width:96px;height:238px;border-radius:9px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-visual{height:126px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-image{transform:translateY(1px) scale(1.24)}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-header{padding:5px 6px 2px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-name{font-size:11px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-role,:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-status,:root[data-device=mobile]:not([data-resolution=fhd-recording]) .progress-meta{font-size:9px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-body{gap:4px;padding:4px 6px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-exp{padding:0 6px 3px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-exp-label{display:none}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-footer{padding:4px 6px 6px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-mood{width:22px;height:22px;font-size:14px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-side{gap:8px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-panel{gap:6px;padding:8px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-side .dashboard-panel:nth-child(2){display:none}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .schedule-row{grid-template-columns:16px 38px 1fr;min-height:25px;gap:5px;padding:5px 7px;font-size:10px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .schedule-row strong{font-size:10px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-actionbar{gap:6px;padding:0 10px 6px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-action-btn{min-height:31px;gap:5px;font-size:11px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-bottomnav{min-height:42px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .bottomnav-item{font-size:9px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .bottomnav-item span{font-size:15px}}@media (max-width: 760px){:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-overlay{overflow:hidden}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-topbar{grid-template-columns:auto auto minmax(88px,1fr) minmax(104px,1fr) auto;min-height:40px;gap:5px;padding:5px 8px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .topbar-resource{min-height:29px;padding:4px 8px;gap:5px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .topbar-resource:nth-of-type(n+3),:root[data-device=mobile]:not([data-resolution=fhd-recording]) .topbar-icons .icon-btn:first-child{display:none}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .topbar-badge-block span,:root[data-device=mobile]:not([data-resolution=fhd-recording]) .topbar-resource span,:root[data-device=mobile]:not([data-resolution=fhd-recording]) .topbar-resource em{font-size:9px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .topbar-resource strong,:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-day{font-size:12px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .icon-btn{width:32px;height:32px;border-radius:8px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-main{grid-template-columns:minmax(0,1fr) 148px;flex:1 1 auto;min-height:0;gap:7px;overflow:hidden;padding:7px 8px 5px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-member-section{min-height:0;gap:5px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .section-label{font-size:11px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-member-cards{gap:6px;padding:1px 1px 3px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card{width:86px;min-width:86px;height:196px;border-radius:8px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-visual{height:100px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-image{transform:translateY(1px) scale(1.28)}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-header{padding:4px 5px 2px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-name{font-size:10px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-role,:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-status,:root[data-device=mobile]:not([data-resolution=fhd-recording]) .progress-meta{font-size:8px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-body{gap:3px;padding:3px 5px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .progress-row{gap:2px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-exp{display:none}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-footer{padding:3px 5px 5px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .member-card-mood{width:20px;height:20px;font-size:13px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-side{display:grid;grid-template-columns:1fr;gap:0;min-height:0}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-panel{gap:5px;padding:7px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-side .dashboard-panel:nth-child(2){display:none}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .schedule-list{gap:5px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .schedule-row{grid-template-columns:14px 34px 1fr;min-height:23px;gap:4px;padding:4px 6px;font-size:9px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .schedule-row strong{font-size:9px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-actionbar{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;padding:0 8px 5px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-action-btn{min-height:29px;gap:4px;font-size:10px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .dashboard-bottomnav{min-height:38px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .bottomnav-item{font-size:8px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .bottomnav-item span{font-size:14px}}.allocation-overlay{display:grid;place-items:center;padding:14px;background:#05030f80}.allocation-shell{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(820px,100%);max-height:min(512px,100%);overflow:hidden;box-shadow:0 0 28px #9b6fd438}.allocation-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 20px 12px;border-bottom:1px solid var(--border-default)}.allocation-header h1{margin:2px 0 0;font-size:22px;line-height:1.1}.allocation-resource-row{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.allocation-resource-row strong{display:inline-flex;min-height:34px;align-items:center;gap:6px;padding:7px 11px;border:1px solid var(--border-default);border-radius:var(--radius-pill);background:#05030f80;font-size:13px}.allocation-resource-row span{color:var(--accent-gold)}.allocation-body{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr);gap:12px;min-height:0;overflow:auto;padding:14px 20px}.allocation-section{display:grid;align-content:start;gap:10px;min-width:0}.allocation-member-list,.allocation-budget-list{display:grid;gap:6px}.allocation-member-row,.allocation-budget-item{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:47px;padding:8px 11px;border:1px solid var(--border-default);border-radius:var(--radius-btn);background:#05030f6b}.allocation-member-meta{display:flex;align-items:center;min-width:0;gap:10px}.member-dot{width:12px;height:12px;flex:0 0 auto;border-radius:50%;background:var(--member-color);box-shadow:0 0 10px color-mix(in srgb,var(--member-color) 48%,transparent)}.allocation-member-meta div{display:grid;gap:2px}.allocation-member-meta strong,.allocation-budget-item span{color:var(--text-primary);font-size:14px}.allocation-member-meta small,.allocation-budget-item strong{color:var(--text-secondary);font-size:11px}.allocation-stepper{display:inline-grid;grid-template-columns:30px 32px 30px;align-items:center;gap:5px}.allocation-stepper button{display:grid;width:30px;height:30px;place-items:center;border:1px solid var(--border-default);border-radius:var(--radius-btn);color:var(--text-primary);background:#9b6fd438;cursor:pointer}.allocation-stepper output{color:var(--accent-gold);text-align:center;font-family:DotGothic16,monospace;font-size:16px}.allocation-budget-item{cursor:pointer}.allocation-budget-item input{width:18px;height:18px;accent-color:var(--accent-purple)}.allocation-footer{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 20px 14px;border-top:1px solid var(--border-default)}@media (max-width: 720px){:root[data-device=mobile] .allocation-overlay{padding:10px}:root[data-device=mobile] .allocation-header{align-items:flex-start;flex-direction:column}:root[data-device=mobile] .allocation-resource-row{justify-content:flex-start}:root[data-device=mobile] .allocation-body{grid-template-columns:1fr;padding:14px}:root[data-device=mobile] .allocation-footer{padding-inline:14px}}.action-cutin-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8000;display:none;align-items:center;justify-content:center;background:#05041047;pointer-events:none}.action-cutin-overlay.is-visible{display:flex;pointer-events:auto}.action-cutin-card{min-width:calc(260px * var(--ui-scale, 1));max-width:calc(380px * var(--ui-scale, 1));padding:calc(18px * var(--ui-scale, 1)) calc(22px * var(--ui-scale, 1));border-radius:calc(22px * var(--ui-scale, 1));background:#1a1034e0;border:1px solid rgba(186,142,255,.55);box-shadow:0 calc(18px * var(--ui-scale, 1)) calc(52px * var(--ui-scale, 1)) #0000006b;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.action-cutin-card.is-animating{animation:actionCutinIn .24s ease-out,actionCutinFloat 1.8s ease-in-out .24s infinite alternate}.action-cutin-image{width:calc(180px * var(--ui-scale, 1));height:calc(180px * var(--ui-scale, 1));object-fit:contain;display:block;margin:0 auto calc(10px * var(--ui-scale, 1));filter:drop-shadow(0 calc(10px * var(--ui-scale, 1)) calc(14px * var(--ui-scale, 1)) rgba(0,0,0,.35))}.action-cutin-title{font-size:calc(18px * var(--text-scale, 1));font-weight:800;color:#f4eaff;margin-bottom:calc(6px * var(--ui-scale, 1))}.action-cutin-line{font-size:calc(13px * var(--text-scale, 1));line-height:1.55;color:#f4eaffd1}@keyframes actionCutinIn{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes actionCutinFloat{0%{transform:translateY(0)}to{transform:translateY(calc(-6px * var(--ui-scale, 1)))}}.vn-overlay{background:linear-gradient(180deg,#05030f14,#05030f61),radial-gradient(circle at 16% 36%,rgba(245,200,66,.14),transparent 16%),radial-gradient(circle at 78% 26%,rgba(155,111,212,.18),transparent 22%);background-position:center;background-size:cover}.vn-controls{position:absolute;top:calc(14px * var(--ui-scale));right:calc(14px * var(--ui-scale));left:calc(14px * var(--ui-scale));display:flex;align-items:center;justify-content:space-between;pointer-events:none}.vn-controls div{display:flex;gap:7px}.vn-controls button{min-width:calc(58px * var(--ui-scale));min-height:calc(30px * var(--ui-scale));border:1px solid var(--border-default);border-radius:var(--radius-pill);color:var(--text-primary);background:#05030f9e;cursor:pointer;pointer-events:auto;font-size:calc(11px * var(--text-scale));transition:background .15s,color .15s}.vn-controls button.is-active{background:#9b6fd473;border-color:#9b6fd4b3;color:#f0eafb}.vn-log-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;flex-direction:column;background:#05030feb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.vn-log-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid rgba(155,111,212,.2);color:var(--text-primary);font-size:13px;font-weight:600}.vn-log-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:16px;line-height:1;padding:4px 8px}.vn-log-body{flex:1;overflow-y:auto;padding:16px 18px;display:flex;flex-direction:column;gap:12px}.vn-log-entry strong{display:block;font-size:11px;color:#9b6fd4e6;margin-bottom:3px}.vn-log-entry p{font-size:13px;color:var(--text-primary);line-height:1.6;margin:0;white-space:pre-wrap}.vn-character{position:absolute;bottom:calc(68px * var(--ui-scale));left:50%;width:calc(440px * var(--ui-scale) * var(--mobile-vn-character-scale));height:calc(430px * var(--ui-scale) * var(--mobile-vn-character-scale));transform:translate(-50%);overflow:hidden;animation:vn-fade-in .3s ease both;pointer-events:none;z-index:2}.vn-character--npc{width:calc(440px * var(--ui-scale) * var(--mobile-vn-character-scale) * .92);height:calc(430px * var(--ui-scale) * var(--mobile-vn-character-scale) * .92)}.vn-character--left{left:18%}.vn-character--center{left:50%}.vn-character--right{left:82%}.vn-character:after{position:absolute;right:-22px;bottom:-12px;left:-22px;height:170px;background:linear-gradient(180deg,#08041800,#080418a8 42%,#080418f5 78%,#080418);content:"";pointer-events:none;z-index:2}.vn-character-image{position:relative;width:100%;height:auto;min-height:100%;object-fit:contain;object-position:center top;filter:drop-shadow(0 0 28px color-mix(in srgb,var(--member-color) 32%,transparent));z-index:1}.vn-character-name{display:none}.vn-ending-title{position:absolute;top:calc(52px * var(--ui-scale));left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:calc(4px * var(--ui-scale));pointer-events:none;z-index:5;animation:vn-ending-fadein 1.2s ease both}.vn-ending-label{font-size:calc(10px * var(--text-scale));font-weight:500;letter-spacing:.24em;color:#9b6fd4b3}.vn-ending-name{font-size:calc(17px * var(--text-scale));font-weight:700;letter-spacing:.06em;color:#f0eafbeb;text-shadow:0 0 24px rgba(155,111,212,.5)}@keyframes vn-ending-fadein{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.vn-speaker{position:absolute;bottom:calc(118px * var(--ui-scale));left:calc(42px * var(--ui-scale));min-width:0;padding:0;background:none;border:none;border-radius:0;box-shadow:none;font-size:calc(15px * var(--text-scale));font-weight:600;letter-spacing:.04em;color:#9b6fd4d9;text-align:left;z-index:4}.vn-dialogue{position:absolute;right:0;bottom:0;left:0;height:calc(150px * var(--ui-scale));display:flex;align-items:center;padding:calc(16px * var(--ui-scale)) calc(42px * var(--ui-scale));border:0;border-top:1px solid var(--border-default);color:var(--text-primary);background:#080418eb;cursor:pointer;text-align:left;z-index:3;-webkit-tap-highlight-color:transparent;outline:none}.vn-dialogue:active{background:#080418eb}.vn-dialogue-text{max-width:calc(760px * var(--ui-scale));margin:0;font-size:calc(19px * var(--text-scale));line-height:1.7;white-space:pre-wrap}.vn-dialogue-text[data-system=true]{color:var(--accent-gold);font-size:14px;opacity:.9;letter-spacing:.02em}.vn-dialogue-text[data-system=true]:before{content:""}.vn-dialogue-text[data-complete=true]:after{display:inline-block;margin-left:8px;color:var(--accent-purple);animation:vn-cursor .8s infinite;content:"▼"}@media (orientation: landscape) and (max-height: 500px){:root[data-device=mobile]:not([data-resolution=fhd-recording]) #game-root{--mobile-vn-character-scale: .68}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .vn-character{bottom:62px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .vn-speaker{bottom:104px}:root[data-device=mobile]:not([data-resolution=fhd-recording]) .vn-dialogue{height:132px;padding:12px 32px}}.vn-choices{position:absolute;right:calc(40px * var(--ui-scale));bottom:calc(162px * var(--ui-scale));left:calc(40px * var(--ui-scale));display:grid;gap:8px;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .16s ease,transform .16s ease}.vn-choices.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.vn-choice-btn{display:flex;align-items:center;min-height:calc(38px * var(--ui-scale));gap:11px;padding:calc(9px * var(--ui-scale)) calc(18px * var(--ui-scale));font-size:calc(14px * var(--text-scale));border:1px solid var(--border-accent);border-radius:var(--radius-btn);color:var(--text-primary);background:#3c1e64c7;cursor:pointer;text-align:left}.vn-choice-btn:hover{background:#5a308ee6;transform:scale(1.01)}.vn-choice-btn span{color:var(--accent-purple)}@keyframes vn-fade-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}@keyframes vn-cursor{0%,to{opacity:.25}50%{opacity:1}}.member-overlay{display:grid;place-items:center;padding:14px}.member-shell{display:grid;grid-template-rows:auto 1fr;width:min(940px,100%);height:min(520px,100%);overflow:hidden;box-shadow:0 0 32px #9b6fd433}.member-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px 12px;border-bottom:1px solid var(--border-default)}.member-header h1{margin:2px 0 0;font-size:20px;line-height:1.1}.member-body{display:grid;grid-template-columns:180px 1fr;min-height:0;overflow:hidden}.member-roster{display:flex;flex-direction:column;gap:4px;padding:12px 10px;border-right:1px solid var(--border-default);overflow-y:auto}.member-roster .section-label{margin-bottom:6px;font-size:11px}.member-roster-item{display:flex;align-items:center;gap:8px;padding:7px 8px;border:1px solid transparent;border-radius:var(--radius-btn);color:var(--text-secondary);background:transparent;cursor:pointer;text-align:left;transition:background .12s}.member-roster-item:hover{background:#9b6fd41a;border-color:var(--border-default)}.member-roster-item.is-selected{color:var(--text-primary);border-color:var(--border-accent);background:#9b6fd42e}.roster-portrait{width:36px;height:36px;flex:0 0 auto;border-radius:50%;background-color:#1c1234cc;background-size:cover;background-position:top center}.roster-info{flex:1;display:grid;gap:1px;min-width:0}.roster-info strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.roster-info small{font-size:10px;color:var(--text-muted)}.condition-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%}.condition-dot--critical{background:var(--status-danger);box-shadow:0 0 6px var(--status-danger)}.condition-dot--warning{background:var(--status-warn)}.condition-dot--good{background:var(--status-ok)}.condition-dot--normal{background:var(--text-muted)}.member-content{display:grid;grid-template-rows:1fr auto;min-height:0;overflow:hidden}.member-top-area{display:grid;grid-template-columns:280px 1fr;min-height:0;overflow:hidden}.member-cg-area{position:relative;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;background:radial-gradient(ellipse 55% 60% at 50% 100%,color-mix(in srgb,var(--member-color) 14%,transparent) 0%,transparent 70%)}.member-fullbody-image{max-height:88%;max-width:90%;object-fit:contain;object-position:bottom center;filter:drop-shadow(0 16px 40px rgba(0,0,0,.55));transition:opacity .18s ease}.member-right-panel{display:flex;flex-direction:column;gap:14px;padding:14px 16px;border-left:1px solid var(--border-default);overflow-y:auto}.right-identity{display:flex;flex-direction:column;gap:4px;padding-bottom:12px;border-bottom:1px solid var(--border-default)}.right-name{margin:0;font-size:20px;font-weight:700;letter-spacing:.04em;color:var(--member-color, var(--text-primary));text-shadow:0 0 16px color-mix(in srgb,var(--member-color) 40%,transparent)}.right-role{font-size:11px;color:var(--text-muted);letter-spacing:.06em}.right-level{display:flex;align-items:center;gap:8px;margin-top:6px}.level-badge{font-size:12px;font-weight:700;color:var(--member-color, var(--accent-purple));flex:0 0 auto}.exp-bar-wrap{flex:1;height:5px;border-radius:3px;background:#ffffff1a;overflow:hidden}.exp-bar-fill{height:100%;border-radius:3px;background:var(--member-color, var(--accent-purple));transition:width .3s ease}.exp-text{font-size:10px;color:var(--text-muted);flex:0 0 auto}.right-condition{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:8px;background:#ffffff0a;border:1px solid var(--border-default)}.right-condition.is-critical{border-color:#ff505066;background:#ff50500f}.right-condition.is-warning{border-color:#ffaa2859;background:#ffaa280d}.right-condition.is-good{border-color:#50c87859;background:#50c8780d}.right-condition-text{margin:0;font-size:11px;line-height:1.5;color:var(--text-secondary)}.right-condition.is-critical .right-condition-text{color:#ff8282f2}.right-condition.is-warning .right-condition-text{color:#ffbe50f2}.right-condition.is-good .right-condition-text{color:#64dc8cf2}.right-gauge-row{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--text-muted)}.right-gauge-track{flex:1;height:4px;border-radius:2px;background:#ffffff1a;overflow:hidden}.right-gauge-fill{height:100%;border-radius:2px}.gauge-fatigue{background:#ff8c3cd9}.gauge-stress{background:#c8508cd9}.right-gauge-num{font-size:10px;flex:0 0 28px;text-align:right}.right-injury{margin:0;font-size:11px;color:#ff6464e6;font-weight:700}.right-stats{display:flex;flex-direction:column;gap:5px}.right-stat-row{display:flex;align-items:center;gap:6px}.right-stat-label{flex:0 0 44px;font-size:10px;color:var(--text-muted);letter-spacing:.02em}.right-stat-track{flex:1;height:5px;border-radius:3px;background:#ffffff14;overflow:hidden}.right-stat-fill{height:100%;border-radius:3px;background:color-mix(in srgb,var(--member-color) 70%,rgba(155,111,212,1));transition:width .3s ease}.right-stat-val{flex:0 0 24px;font-size:10px;color:var(--text-secondary);text-align:right;font-variant-numeric:tabular-nums}.member-bottom-panel{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--border-default);min-height:90px;max-height:130px;overflow:hidden}.bottom-bio,.bottom-recent{padding:10px 16px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.bottom-bio{border-right:1px solid var(--border-default)}.bottom-section-label{margin:0;font-size:9px;font-weight:700;letter-spacing:.14em;color:#9b6fd499}.bottom-bio-text{margin:0;font-size:11px;line-height:1.65;color:var(--text-secondary)}.bottom-tag-list{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.bottom-tag{padding:2px 8px;border-radius:12px;font-size:10px;background:#9b6fd424;color:#c8afebe6;border:1px solid rgba(155,111,212,.22)}.bottom-empty{font-size:10px;color:var(--text-muted)}.bottom-milestone{margin:4px 0 0;font-size:10px;color:#9b6fd4bf}:root[data-resolution=fhd-recording] .member-top-area{grid-template-columns:420px 1fr}:root[data-resolution=fhd-recording] .member-fullbody-image{max-height:84%}:root[data-resolution=fhd-recording] .member-right-panel{padding:18px 22px;gap:18px}:root[data-resolution=fhd-recording] .right-name{font-size:32px}:root[data-resolution=fhd-recording] .right-role{font-size:15px}:root[data-resolution=fhd-recording] .level-badge{font-size:18px}:root[data-resolution=fhd-recording] .right-condition-text{font-size:16px}:root[data-resolution=fhd-recording] .right-gauge-row,:root[data-resolution=fhd-recording] .right-gauge-num{font-size:14px}:root[data-resolution=fhd-recording] .right-gauge-track{height:7px}:root[data-resolution=fhd-recording] .right-stat-label{font-size:15px;flex:0 0 66px}:root[data-resolution=fhd-recording] .right-stat-track{height:8px}:root[data-resolution=fhd-recording] .right-stat-val{font-size:15px;flex:0 0 34px}:root[data-resolution=fhd-recording] .member-bottom-panel{min-height:160px;max-height:200px}:root[data-resolution=fhd-recording] .bottom-bio-text{font-size:16px}:root[data-resolution=fhd-recording] .bottom-tag{font-size:14px;padding:4px 12px}@media (orientation: landscape) and (max-height: 520px){:root:not([data-resolution=fhd-recording]) .member-fullbody-image{max-height:72%}:root:not([data-resolution=fhd-recording]) .member-right-panel{font-size:.88em}:root:not([data-resolution=fhd-recording]) .member-bottom-panel{min-height:70px;max-height:90px}}@media (max-width: 860px){:root[data-device=mobile] .member-overlay{overflow-y:auto;align-items:start;padding:8px}:root[data-device=mobile] .member-shell{height:auto;min-height:min(520px,100%);overflow:visible}:root[data-device=mobile] .member-body{grid-template-columns:140px 1fr;overflow:visible;min-height:unset}:root[data-device=mobile] .member-content{overflow:visible;grid-template-rows:auto auto}:root[data-device=mobile] .member-top-area{grid-template-columns:200px 1fr;overflow:visible;min-height:220px}:root[data-device=mobile] .member-right-panel{overflow-y:visible}:root[data-device=mobile] .member-bottom-panel{max-height:none;min-height:80px}}.member-detail{display:flex;flex-direction:column;gap:0;overflow-y:auto;padding:14px 20px 18px}.member-identity{display:flex;align-items:center;gap:14px;padding-bottom:14px;border-bottom:1px solid var(--border-default);margin-bottom:14px}.member-identity-portrait{width:56px;height:56px;flex:0 0 auto;border-radius:var(--radius-btn);background-color:#1c1234cc;background-size:cover;background-position:top center;border:1px solid var(--border-default)}.member-identity-info h2{margin:0 0 4px;font-size:20px}.member-role-tag{display:inline-block;padding:2px 10px;border-radius:var(--radius-pill);background:#9b6fd42e;border:1px solid var(--border-accent);color:var(--accent-purple);font-size:11px;font-weight:700;letter-spacing:.04em}.member-detail-section{margin-bottom:16px}.detail-section-heading{margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--text-muted);text-transform:uppercase}.detail-empty{margin:0;color:var(--text-muted);font-size:12px}.member-condition-card{padding:12px 14px;border:1px solid var(--border-default);border-radius:var(--radius-btn);background:#05030f6b}.member-condition-card.is-critical{border-color:#ff6b6b80;background:#ff6b6b0f}.member-condition-card.is-warning{border-color:#f5c84266;background:#f5c8420d}.member-condition-card.is-good{border-color:#6be5a066;background:#6be5a00d}.condition-status-text{margin:0 0 4px;font-size:13px;color:var(--text-primary)}.condition-recommend{margin:0 0 10px;font-size:12px;color:var(--text-secondary)}.condition-gauges{display:grid;gap:6px}.gauge-row{display:grid;grid-template-columns:60px 1fr 36px;align-items:center;gap:8px;font-size:11px;color:var(--text-muted)}.gauge-track{position:relative;height:5px;border-radius:var(--radius-pill);background:#8c64dc26;overflow:hidden}.gauge-fill{position:absolute;inset:0 auto 0 0;border-radius:var(--radius-pill);transition:width .3s ease}.gauge-fatigue{background:linear-gradient(90deg,#f5c842,#f4a060)}.gauge-stress{background:linear-gradient(90deg,#9b6fd4,#e87ca0)}.injury-badge{margin:8px 0 0;padding:4px 10px;display:inline-block;border-radius:var(--radius-pill);background:#ff6b6b2e;color:var(--text-danger);font-size:11px;font-weight:700}.growth-grid{display:grid;gap:7px}.growth-row{display:grid;grid-template-columns:52px 1fr 76px 36px;align-items:center;gap:8px}.growth-label{font-size:11px;color:var(--text-secondary)}.growth-track{position:relative;height:6px;border-radius:var(--radius-pill);background:#8c64dc1f;overflow:hidden}.growth-base,.growth-fill{position:absolute;inset:0 auto 0 0;border-radius:var(--radius-pill);background:#8c64dc4d}.growth-fill.has-growth{background:linear-gradient(90deg,rgba(140,100,220,.4),var(--accent-purple))}.growth-values{font-size:11px;color:var(--text-muted);text-align:right}.growth-delta{font-size:12px;font-weight:700;text-align:right;color:var(--text-muted)}.growth-delta.is-positive{color:var(--text-success)}.growth-delta.is-negative{color:var(--text-danger)}.weekly-list{display:flex;flex-wrap:wrap;gap:6px}.weekly-tag{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--radius-pill);font-size:11px;font-weight:700;border:1px solid transparent}.weekly-tag--lesson{background:#9b6fd42e;border-color:var(--border-accent);color:var(--accent-purple)}.weekly-tag--rest{background:#6be5a01f;border-color:#6be5a04d;color:var(--text-success)}.weekly-tag--item{background:#f5c8421a;border-color:#f5c8424d;color:var(--accent-gold)}.history-list{display:grid;gap:5px}.history-row{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:var(--radius-btn);background:#05030f52;border:1px solid var(--border-default)}.history-week{flex:0 0 auto;min-width:30px;font-size:11px;font-weight:700;color:var(--accent-purple);font-family:DotGothic16,monospace}.history-actions{font-size:12px;color:var(--text-secondary)}.milestone-list{display:grid;gap:6px}.milestone-item{display:flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid var(--border-default);border-radius:var(--radius-btn);background:#05030f61}.milestone-mark{color:var(--accent-purple);font-size:13px;flex:0 0 auto}.milestone-label{flex:1;font-size:13px;color:var(--text-primary)}.milestone-week{flex:0 0 auto;font-family:DotGothic16,monospace;color:var(--text-muted)}.text-small{font-size:11px;color:var(--text-muted);letter-spacing:.04em}@media (max-width: 640px){:root[data-device=mobile] .vn-character{bottom:72px;width:300px;height:315px}:root[data-device=mobile] .vn-speaker{bottom:112px;left:24px}:root[data-device=mobile] .vn-dialogue{height:145px;padding:14px 24px}:root[data-device=mobile] .vn-dialogue-text{font-size:17px}:root[data-device=mobile] .vn-choices{right:24px;left:24px}}:root[data-resolution=fhd-recording] .dashboard-topbar{grid-template-columns:auto auto minmax(160px,auto) minmax(170px,auto) minmax(156px,auto) minmax(150px,auto) auto;min-height:80px;padding:10px 20px;gap:12px}:root[data-resolution=fhd-recording] .topbar-resource,:root[data-resolution=fhd-recording] .topbar-badge-block{min-height:52px;padding:8px 16px;gap:10px}:root[data-resolution=fhd-recording] .topbar-badge-block span,:root[data-resolution=fhd-recording] .topbar-resource span,:root[data-resolution=fhd-recording] .topbar-resource em{font-size:14px}:root[data-resolution=fhd-recording] .topbar-resource strong,:root[data-resolution=fhd-recording] .dashboard-day{font-size:20px}:root[data-resolution=fhd-recording] .icon-btn{width:52px;height:52px;font-size:22px}:root[data-resolution=fhd-recording] .dashboard-main{grid-template-columns:minmax(0,1fr) 380px;padding:16px;gap:14px}:root[data-resolution=fhd-recording] .section-label{font-size:20px}:root[data-resolution=fhd-recording] .dashboard-member-cards{gap:12px;padding:4px 4px 10px}:root[data-resolution=fhd-recording] .member-card{width:185px;min-width:185px;height:460px}:root[data-resolution=fhd-recording] .member-card-visual{height:280px}:root[data-resolution=fhd-recording] .member-card-name{font-size:18px}:root[data-resolution=fhd-recording] .member-card-role{font-size:14px}:root[data-resolution=fhd-recording] .member-card-body{gap:9px;padding:8px 12px}:root[data-resolution=fhd-recording] .progress-meta{font-size:14px}:root[data-resolution=fhd-recording] .member-card-status{font-size:13px}:root[data-resolution=fhd-recording] .member-card-mood{width:38px;height:38px;font-size:24px}:root[data-resolution=fhd-recording] .member-card-exp-label{font-size:12px}:root[data-resolution=fhd-recording] .dashboard-panel{padding:16px;gap:12px}:root[data-resolution=fhd-recording] .schedule-row{min-height:44px;padding:8px 12px;font-size:16px;grid-template-columns:26px 64px 1fr;gap:9px}:root[data-resolution=fhd-recording] .schedule-row strong{font-size:16px}:root[data-resolution=fhd-recording] .dashboard-side{gap:16px}:root[data-resolution=fhd-recording] .dashboard-actionbar{gap:10px;padding:0 16px 12px}:root[data-resolution=fhd-recording] .dashboard-action-btn{min-height:58px;font-size:18px;gap:10px}:root[data-resolution=fhd-recording] .dashboard-bottomnav{min-height:80px}:root[data-resolution=fhd-recording] .bottomnav-item{font-size:16px;gap:4px}:root[data-resolution=fhd-recording] .bottomnav-item span{font-size:26px}:root[data-resolution=fhd-recording] .live-overlay{padding:14px;gap:14px}:root[data-resolution=fhd-recording] .live-top-hud{grid-template-columns:480px minmax(0,1fr) 560px;min-height:112px;gap:20px;align-items:center}:root[data-resolution=fhd-recording] .live-badge{min-width:96px;min-height:52px;font-size:28px}:root[data-resolution=fhd-recording] .live-title-block strong{font-size:32px}:root[data-resolution=fhd-recording] .live-title-block small,:root[data-resolution=fhd-recording] .live-song span,:root[data-resolution=fhd-recording] .live-stats span{font-size:16px}:root[data-resolution=fhd-recording] .live-song strong{font-size:24px}:root[data-resolution=fhd-recording] .live-progress-track{height:10px}:root[data-resolution=fhd-recording] .live-progress-thumb{width:18px;height:18px}:root[data-resolution=fhd-recording] .live-parts span{min-height:36px;font-size:15px;padding:6px 4px}:root[data-resolution=fhd-recording] .live-stats div,:root[data-resolution=fhd-recording] .live-stats button{min-height:68px;padding:8px 20px}:root[data-resolution=fhd-recording] .live-stats strong{font-size:26px}:root[data-resolution=fhd-recording] .live-stats button{font-size:34px}:root[data-resolution=fhd-recording] .live-goals{width:290px;top:160px;left:14px;padding:18px;gap:14px}:root[data-resolution=fhd-recording] .live-goal-row{padding-top:12px;gap:4px 12px}:root[data-resolution=fhd-recording] .live-goal-row span,:root[data-resolution=fhd-recording] .live-goal-row strong{font-size:18px}:root[data-resolution=fhd-recording] .live-goal-row i{font-size:20px}:root[data-resolution=fhd-recording] .live-member-panel{width:430px;top:140px;right:14px;max-height:480px;padding:14px;gap:8px}:root[data-resolution=fhd-recording] .live-member-row{grid-template-columns:52px 1fr;gap:10px;min-height:62px;padding-top:6px}:root[data-resolution=fhd-recording] .live-member-thumb{width:52px;height:52px;border-radius:6px}:root[data-resolution=fhd-recording] .live-member-info strong{font-size:18px}:root[data-resolution=fhd-recording] .live-member-info small,:root[data-resolution=fhd-recording] .live-member-info label{font-size:14px}:root[data-resolution=fhd-recording] .live-member-info em{font-size:14px}:root[data-resolution=fhd-recording] .live-bottom-area{min-height:200px;gap:14px}:root[data-resolution=fhd-recording] .live-chat,:root[data-resolution=fhd-recording] .live-response,:root[data-resolution=fhd-recording] .live-estimate{padding:14px;gap:9px}:root[data-resolution=fhd-recording] .live-chat p{font-size:18px;grid-template-columns:24px 1fr auto;gap:9px}:root[data-resolution=fhd-recording] .live-response-row{grid-template-columns:32px 150px minmax(0,1fr) 68px 96px;align-items:center;gap:12px;min-height:44px;font-size:18px}:root[data-resolution=fhd-recording] .live-response-row strong,:root[data-resolution=fhd-recording] .live-response-row em{font-size:18px}:root[data-resolution=fhd-recording] .live-response-row b{font-size:16px;padding:5px 10px}:root[data-resolution=fhd-recording] .live-estimate div{font-size:17px;min-height:34px;gap:10px}:root[data-resolution=fhd-recording] .live-estimate{min-height:200px}:root[data-resolution=fhd-recording] .live-goals .section-label,:root[data-resolution=fhd-recording] .live-member-panel .section-label,:root[data-resolution=fhd-recording] .live-chat .section-label,:root[data-resolution=fhd-recording] .live-response .section-label,:root[data-resolution=fhd-recording] .live-estimate .section-label{font-size:20px}:root[data-resolution=fhd-recording] .action-overlay{padding:24px}:root[data-resolution=fhd-recording] .action-shell{width:min(1720px,100%);height:min(960px,100%);max-width:none;gap:14px;padding:24px}:root[data-resolution=fhd-recording] .action-header h1{font-size:36px}:root[data-resolution=fhd-recording] .action-resource-row strong{font-size:16px;padding:10px 14px}:root[data-resolution=fhd-recording] .action-tabs{gap:10px}:root[data-resolution=fhd-recording] .action-tab{min-height:58px;font-size:18px}:root[data-resolution=fhd-recording] .action-emergency{min-height:52px;font-size:18px;padding:14px 16px}:root[data-resolution=fhd-recording] .action-body{grid-template-columns:400px minmax(0,1fr);gap:16px}:root[data-resolution=fhd-recording] .action-member-panel,:root[data-resolution=fhd-recording] .action-main-panel{padding:16px}:root[data-resolution=fhd-recording] .action-member-row,:root[data-resolution=fhd-recording] .action-card{gap:14px;margin-top:10px;padding:14px}:root[data-resolution=fhd-recording] .action-member-thumb{width:64px;height:64px;border-radius:16px}:root[data-resolution=fhd-recording] .action-member-row strong,:root[data-resolution=fhd-recording] .action-card strong{font-size:20px}:root[data-resolution=fhd-recording] .action-member-row small,:root[data-resolution=fhd-recording] .action-card small,:root[data-resolution=fhd-recording] .action-member-row span,:root[data-resolution=fhd-recording] .action-card p{font-size:15px}:root[data-resolution=fhd-recording] .action-card>span{width:58px;height:58px;font-size:28px;border-radius:16px}:root[data-resolution=fhd-recording] .action-empty{font-size:18px}:root[data-resolution=fhd-recording] .action-confirm-dialog{width:min(680px,100%);padding:28px}:root[data-resolution=fhd-recording] .action-confirm-dialog h2{font-size:28px}:root[data-resolution=fhd-recording] .action-confirm-dialog p{font-size:18px}:root[data-resolution=fhd-recording] .allocation-overlay{padding:20px}:root[data-resolution=fhd-recording] .allocation-shell{width:min(1640px,100%);max-height:min(1000px,100%)}:root[data-resolution=fhd-recording] .allocation-header{padding:20px 28px 16px}:root[data-resolution=fhd-recording] .allocation-header h1{font-size:32px}:root[data-resolution=fhd-recording] .allocation-resource-row strong{font-size:16px;min-height:44px;padding:10px 14px}:root[data-resolution=fhd-recording] .allocation-body{padding:18px 28px;gap:16px}:root[data-resolution=fhd-recording] .allocation-member-row,:root[data-resolution=fhd-recording] .allocation-budget-item{min-height:64px;padding:12px 16px}:root[data-resolution=fhd-recording] .allocation-member-meta strong,:root[data-resolution=fhd-recording] .allocation-budget-item span{font-size:18px}:root[data-resolution=fhd-recording] .allocation-member-meta small,:root[data-resolution=fhd-recording] .allocation-budget-item strong{font-size:14px}:root[data-resolution=fhd-recording] .allocation-stepper button{width:42px;height:42px}:root[data-resolution=fhd-recording] .allocation-stepper output{font-size:22px}:root[data-resolution=fhd-recording] .allocation-footer{padding:16px 28px 20px;gap:12px}:root[data-resolution=fhd-recording] .member-overlay{padding:16px}:root[data-resolution=fhd-recording] .member-shell{width:min(1880px,100%);height:min(1040px,100%)}:root[data-resolution=fhd-recording] .member-header{padding:18px 26px 14px}:root[data-resolution=fhd-recording] .member-header h1{font-size:32px}:root[data-resolution=fhd-recording] .member-body{grid-template-columns:280px 1fr}:root[data-resolution=fhd-recording] .member-roster{padding:14px 12px;gap:5px}:root[data-resolution=fhd-recording] .member-roster-item{padding:10px 12px;gap:10px}:root[data-resolution=fhd-recording] .roster-portrait{width:50px;height:50px}:root[data-resolution=fhd-recording] .roster-info strong{font-size:17px}:root[data-resolution=fhd-recording] .roster-info small{font-size:13px}:root[data-resolution=fhd-recording] .member-identity-info h2{font-size:28px}:root[data-resolution=fhd-recording] .member-detail{padding:18px 26px 24px}:root[data-resolution=fhd-recording] .detail-section-heading{font-size:14px}:root[data-resolution=fhd-recording] .condition-status-text{font-size:18px}:root[data-resolution=fhd-recording] .condition-recommend{font-size:16px}:root[data-resolution=fhd-recording] .gauge-row{font-size:15px;gap:10px;grid-template-columns:76px 1fr 44px}:root[data-resolution=fhd-recording] .gauge-track{height:8px}:root[data-resolution=fhd-recording] .growth-label{font-size:14px}:root[data-resolution=fhd-recording] .growth-values,:root[data-resolution=fhd-recording] .growth-delta{font-size:15px}:root[data-resolution=fhd-recording] .live-result-overlay{padding:24px}:root[data-resolution=fhd-recording] .live-result-card{width:min(900px,100%);max-height:min(960px,100%);padding:28px;gap:20px}:root[data-resolution=fhd-recording] .live-result-header h1{font-size:36px}:root[data-resolution=fhd-recording] .live-result-header span{font-size:18px;padding:10px 18px}:root[data-resolution=fhd-recording] .live-result-summary{grid-template-columns:200px 1fr;gap:22px;padding:20px}:root[data-resolution=fhd-recording] .result-rank strong{width:120px;height:120px;font-size:72px}:root[data-resolution=fhd-recording] .result-rank span{font-size:22px}:root[data-resolution=fhd-recording] .result-rows div{min-height:44px;font-size:18px;gap:12px}:root[data-resolution=fhd-recording] .result-member-item{padding:12px}:root[data-resolution=fhd-recording] .result-member-item strong{font-size:16px}:root[data-resolution=fhd-recording] .result-member-item span{font-size:13px}
