/* PANELS · TABS · MODAL · DETAIL · TOAST · CINEMATIC */
#panel{position:fixed;z-index:20;display:flex}
#panel.large{inset:0;background:rgba(0,0,0,.55);align-items:center;justify-content:center;padding:calc(8px + var(--sat)) calc(8px + var(--sar)) calc(8px + var(--sab)) calc(8px + var(--sal))}
#panel.large .panel-box{width:min(980px,100%);height:min(660px,100%)}
#panel.medium{top:calc(70px + var(--sat));right:calc(8px + var(--sar));bottom:calc(var(--navh) + 16px + var(--sab));width:min(430px,calc(100vw - 16px))}
#panel.medium.incombat{bottom:calc(84px + var(--sab))}
#panel.medium .panel-box{width:100%;height:100%;animation:slidein .2s}
#panel.medium .grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
.panel-box{display:flex;flex-direction:column;overflow:hidden;background:var(--cv-bg-panel);border:1px solid rgba(217,164,65,.3);border-radius:var(--cv-radius-lg);box-shadow:var(--cv-shadow-panel);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:pop .2s}
.panel-head{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;border-bottom:1px solid rgba(217,164,65,.22);touch-action:none}
.panel-head h2{margin:0;font-family:var(--cv-font-display);color:var(--cv-lightgold);font-size:19px;display:flex;align-items:center;gap:8px}.panel-head h2 .ic{width:22px;height:22px}
.panel-body{flex:1;overflow:auto;padding:10px 14px 16px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}
.tabs button{min-height:34px;padding:0 12px;border-radius:16px;border:1px solid rgba(184,108,255,.35);background:rgba(58,23,104,.3);font-size:12.5px;font-weight:600}
.tabs button.on{background:linear-gradient(180deg,var(--cv-lightgold),var(--cv-gold));color:var(--cv-ink-on-gold);border-color:#fff0bf}
#modal{position:fixed;inset:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:calc(10px + var(--sat)) 10px calc(10px + var(--sab));background:rgba(0,0,0,.62)}
.modal-box{position:relative;width:min(480px,100%);max-height:100%;overflow:auto;padding:18px;text-align:center;border-radius:20px;background:radial-gradient(circle at 50% 0,rgba(123,63,242,.45),rgba(18,10,36,.96) 65%);border:1px solid rgba(217,164,65,.55);box-shadow:0 0 60px rgba(123,63,242,.4);animation:pop .25s}
.modal-box .mx{position:absolute;top:8px;right:8px}
.modal-box h3{margin:4px 0 8px;font-family:var(--cv-font-display);color:var(--cv-lightgold);font-size:23px;text-shadow:0 0 16px rgba(184,108,255,.8)}
.modal-box p{font-size:14px;line-height:1.5}
.mbtns{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:12px}
.res-head{display:flex;justify-content:center;margin:2px 0 4px}
.res-head .ic.xl{width:64px;height:64px;filter:drop-shadow(0 0 16px rgba(184,108,255,.8))}
.res-head.win .ic.xl{filter:drop-shadow(0 0 16px rgba(217,164,65,.9))}.res-head.lose .ic.xl{filter:drop-shadow(0 0 16px rgba(216,58,88,.8))}
.res-art{display:flex;justify-content:center;margin:-4px 0 2px}.res-art img{max-height:170px;max-width:70%;object-fit:contain;filter:drop-shadow(0 0 18px rgba(184,108,255,.7))}
.res-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}
.res-cell{display:flex;flex-direction:column;align-items:center;padding:10px;border-radius:var(--cv-radius-md);background:var(--cv-bg-glass);border:1px solid var(--cv-line)}.res-cell .t-cap{margin:0}.res-cell b{font-size:28px;color:var(--cv-lightgold)}
.lvup{margin:8px 0;padding:10px;border-radius:var(--cv-radius-md);background:linear-gradient(90deg,rgba(217,164,65,.25),rgba(123,63,242,.25));border:1px solid var(--cv-line-gold);font-family:var(--cv-font-display);font-weight:800;color:var(--cv-lightgold)}
.xpbar{position:relative;height:16px;margin:8px 0;border-radius:8px;background:rgba(10,5,22,.8);border:1px solid var(--cv-line-gold);overflow:hidden}.xpbar i{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,#9c6a18,var(--cv-lightgold))}.xpbar span{position:absolute;inset:0;font-size:11px;font-weight:700;line-height:15px;text-shadow:0 1px 2px #000}
.choices{display:flex;flex-direction:column;gap:8px;margin-top:10px}
#detail{position:fixed;right:calc(10px + var(--sar));top:calc(76px + var(--sat));width:min(340px,calc(100vw - 20px));max-height:calc(100% - 180px - var(--sat) - var(--sab));z-index:30;animation:slidein .18s}
#detailBox{position:relative;max-height:100%;overflow:auto;padding:12px;border-radius:16px;background:var(--cv-bg-panel);border:1px solid rgba(217,164,65,.35);box-shadow:0 0 30px rgba(0,0,0,.7)}
#detailBox .x{position:absolute;top:8px;right:8px;z-index:2}#detailBox p{font-size:13px;margin:4px 0}
.dart{display:flex;align-items:center;justify-content:center;min-height:220px;overflow:hidden;border-radius:12px;background:var(--cv-bg-art)}
.dart img{width:100%;max-height:52vh;object-fit:contain;display:block;filter:drop-shadow(0 0 16px rgba(184,108,255,.55))}.dart canvas{width:220px;height:220px}
#toasts{position:fixed;left:50%;top:calc(92px + var(--sat));transform:translateX(-50%);z-index:60;display:flex;flex-direction:column;gap:5px;align-items:center;pointer-events:none;width:max-content;max-width:90vw}
body.in-combat #toasts{top:auto;bottom:calc(120px + var(--sab))}
.toast{padding:6px 14px;font-weight:700;font-size:13px;text-align:center;color:var(--cv-text);border-radius:14px;background:linear-gradient(160deg,rgba(58,23,104,.85),rgba(18,10,36,.92));border:1px solid rgba(217,164,65,.5);box-shadow:0 0 18px rgba(123,63,242,.4);animation:fly .3s both}
#cine{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;pointer-events:none;background:radial-gradient(circle,rgba(58,23,104,.35),rgba(8,4,18,.95))}
#cine.quick{background:none}#cine.boss{background:radial-gradient(circle,rgba(120,20,40,.35),rgba(8,4,18,.96))}
#cine .t1{font-family:var(--cv-font-display);font-weight:800;font-size:clamp(40px,9vw,96px);color:var(--cv-lightgold);text-shadow:0 0 30px var(--cv-electric),0 0 60px var(--cv-violet);animation:zoom .6s both}
#cine .t1.cd{font-size:clamp(80px,16vw,160px);font-family:var(--cv-font-num)}
#cine.boss .t1{font-size:clamp(28px,6vw,60px);margin-top:6px;color:#ffb0b0;text-shadow:0 0 30px #f00,0 0 60px #800}
#cine .t2{font-family:var(--cv-font-display);font-size:clamp(16px,3.5vw,28px);color:#fff;margin-top:8px;animation:fly .8s .3s both}
#cine .t3{font-size:13px;color:var(--cv-muted);margin-top:6px;max-width:560px;animation:fly .8s .5s both}
#cine .bossart,#cine .cineart{max-width:min(70vw,560px);max-height:52vh;animation:bossin .6s cubic-bezier(.2,1.3,.4,1) both;filter:drop-shadow(0 0 30px rgba(216,58,88,.8))}
#cine .cineart{filter:drop-shadow(0 0 30px rgba(217,164,65,.8));max-height:46vh}
@keyframes bossin{from{transform:scale(.65);opacity:0}}
#cine .ring{position:absolute;width:60vmin;height:60vmin;border-radius:50%;border:3px dashed rgba(255,231,160,.65);animation:spin 3s linear infinite,fade 1s both}
#cine .ring.r2{width:44vmin;height:44vmin;border-style:dotted;animation-direction:reverse}
#cine .flash{position:absolute;inset:0;background:#fff;animation:flash .7s both}
#cine .cap-boss{font-size:16px;letter-spacing:6px;color:#f88}
#pauseTag{position:fixed;top:calc(76px + var(--sat));left:50%;transform:translateX(-50%);z-index:60;background:rgba(0,0,0,.7);border:1px solid var(--cv-line);font-size:12px;padding:3px 12px;border-radius:10px}
#netWarn{position:fixed;top:calc(70px + var(--sat));left:50%;transform:translateX(-50%);z-index:30;background:#7a2020;color:#fff;font-size:12px;padding:4px 12px;border-radius:10px}
#bgFade{position:fixed;inset:0;z-index:1;pointer-events:none;background:#0b0616;opacity:0;transition:opacity .45s}
/* V3.1 session summary · fail analysis · next goal */
.res-grid.sum6{grid-template-columns:repeat(3,1fr)}.res-grid.sum6 .res-cell b{font-size:20px}
.sum-q{margin:6px 0;display:flex;flex-direction:column;gap:4px;align-items:flex-start}.sum-q .sq{font-size:13px}.sum-q .sq .ic{color:var(--cv-jade)}
.why{margin:8px 0;padding:10px;border-radius:var(--cv-radius-md);background:rgba(216,58,88,.12);border:1px solid rgba(216,58,88,.4);text-align:left}
.why .t-h3{color:#ff9db0}.why-r{display:flex;gap:8px;align-items:center;justify-content:space-between;padding:5px 0;border-bottom:1px dashed rgba(255,255,255,.08)}.why-r:last-child{border:0}
.why-r p{margin:0;font-size:13px}.why-r small{display:block;opacity:.7;font-size:11.5px}
.cmp{width:100%;border-collapse:collapse;font-size:12.5px;margin:6px 0}.cmp td,.cmp th{padding:3px 6px;text-align:right;border-bottom:1px solid rgba(255,255,255,.06)}.cmp td:first-child,.cmp th:first-child{text-align:left}.cmp .lo{color:#ff9db0}.cmp .hi{color:#5BE0C6}
@media (max-width:640px){.res-grid.sum6 .res-cell b{font-size:17px}}
