.gh-view{animation:gh-in .38s var(--ease) both}@keyframes gh-in{0%{opacity:0;transform:translateY(10px)}}.gh{gap:14px;display:grid}.gh .gh-card,.gh .gh-hero,.gh .gh-jail{margin:0}.gh-card{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:20px}.gh-card h2{margin:0;font-size:1.2rem}.gh-hero{background:var(--surface);border:1px solid var(--line);border-radius:28px;grid-template-columns:minmax(120px,190px) minmax(0,1fr);align-items:center;gap:18px;padding:14px;display:grid}.gh-stage{background:#111a2e;border-radius:20px;height:250px;position:relative;overflow:hidden}.gh-stage .stage{border-radius:0;height:100%;position:absolute;inset:0}.gh-id h1{letter-spacing:-.025em;overflow-wrap:anywhere;margin:10px 0 2px;font-size:clamp(1.6rem,4.6vw,2.3rem)}.gh-id p{margin:0}.gh-class{border-radius:var(--r-pill);background:color-mix(in srgb, var(--cls) 18%, transparent);color:var(--cls);font:700 .9rem var(--font-head);letter-spacing:.01em;padding:3px 12px;display:inline-block}.gh-tags{flex-wrap:wrap;gap:6px;margin:14px 0 0;padding:0;list-style:none;display:flex}.gh-tags li{border-radius:var(--r-pill);border:1px solid var(--line);background:var(--raised);align-items:center;gap:6px;padding:5px 11px;font-size:.85rem;display:inline-flex}.gh-tags svg{color:var(--green-text)}@media (max-width:520px){.gh-hero{grid-template-columns:1fr}.gh-stage{height:280px}}@media (min-width:900px){.gh-hero{grid-template-columns:260px minmax(0,1fr);gap:28px;padding:18px}.gh-stage{height:300px}}.gh-vitals{grid-template-columns:1fr;gap:16px 24px;margin-top:16px;display:grid}@media (min-width:560px){.gh-vitals{grid-template-columns:1fr 1fr}}.gh-vital{color:var(--green-text);grid-template-columns:22px minmax(0,1fr);align-items:center;gap:12px;display:grid}.gh-vital[data-tone=low],.gh-vital[data-tone=warn]{color:var(--gold-text)}.gh-vital[data-tone=risk]{color:var(--danger-text)}.gh-vtop{color:var(--text);justify-content:space-between;margin-bottom:7px;font-size:.93rem;display:flex}.gh-vtop b{font-weight:600}.gh-meter{background:#ffffff1a;border-radius:5px;height:8px;overflow:hidden}.gh-meter i{transform-origin:0;height:100%;animation:gh-grow .8s var(--ease) .15s both;transition:width .52s var(--ease);background:currentColor;border-radius:5px;display:block}@keyframes gh-grow{0%{transform:scaleX(0)}}.gh-achead{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.gh-achead p{margin:2px 0 0}.gh-cgpa{text-align:right;display:grid}.gh-cgpa b{font:600 2.6rem/1 var(--font-head);letter-spacing:-.03em}.gh-cgpa .mut{font-size:.82rem}.gh-session{background:#ffffff1a;border-radius:5px;height:8px;margin:16px 0 0;overflow:hidden}.gh-session i{background:var(--gold-text);transform-origin:0;height:100%;animation:gh-grow .8s var(--ease) .25s both;border-radius:5px;display:block}.gh-strikes{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;font-size:.85rem;display:flex}.gh-pips{gap:5px;display:inline-flex}.gh-pips i{border:2px solid var(--field);width:14px;height:14px;transition:background-color .3s var(--ease), border-color .3s var(--ease);border-radius:50%}.gh-pips i[data-on]{background:var(--danger-text);border-color:var(--danger-text)}.gh-next{border-radius:var(--r-md);background:var(--raised);color:var(--muted);align-items:center;gap:8px;max-width:none;margin:16px 0 0;padding:12px 14px;font-size:.93rem;display:flex}.gh-exam{animation:gh-in .38s var(--ease) both;background:#f2b84b1a;border:1px solid #f2b84b73;border-radius:18px;gap:14px;margin-top:16px;padding:16px;display:grid}.gh-examtxt{color:var(--gold-text);align-items:flex-start;gap:12px;display:flex}.gh-examtxt b{color:var(--text);font:600 1.05rem var(--font-head)}.gh-examtxt p{color:var(--muted);margin:2px 0 0;font-size:.93rem}.gh-examacts{flex-wrap:wrap;gap:8px;display:flex}.gh-examacts button{flex:150px;min-height:50px}.gh .gh-risk{color:var(--danger-text);background:0 0;border-color:#ff808080}.gh .gh-risk:hover:not(:disabled){border-color:var(--danger-text);background-color:#dc262624}.gh-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;display:grid}@media (min-width:760px){.gh-actions{grid-template-columns:repeat(4,1fr)}}.gh .gh-act{text-align:left;background:var(--bg);min-height:138px;transition:background-color .22s var(--ease), border-color .22s var(--ease), transform .15s var(--ease);border-radius:20px;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:6px;padding:16px}.gh .gh-act:hover:not(:disabled){background-color:var(--raised);border-color:#3fd08a8c}.gh .gh-act[data-tone=risk]:hover:not(:disabled){border-color:#ff808099}.gh-act b{font:600 1.05rem/1.2 var(--font-head)}.gh-act .mut{font-size:.84rem;line-height:1.4}.gh-actico{background:var(--raised);width:42px;height:42px;color:var(--green-text);border-radius:13px;place-items:center;margin-bottom:4px;display:grid}.gh-act[data-tone=risk] .gh-actico{color:var(--danger-text)}.gh-jail{animation:gh-in .38s var(--ease) both;background:#dc26261f;border:1px solid #ff808080;border-radius:22px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;padding:16px;display:grid}.gh-jailico{width:48px;height:48px;color:var(--danger-text);background:#dc262633;border-radius:14px;place-items:center;display:grid}.gh-jailtxt h2{margin:0;font-size:1.15rem}.gh-jailtxt p{margin:3px 0 0;font-size:.93rem}.gh-jail>button{grid-column:1/-1;min-height:50px}@media (min-width:640px){.gh-jail{grid-template-columns:auto minmax(0,1fr) auto}.gh-jail>button{grid-column:auto}}.gh-end,.gh-empty{text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:28px;justify-items:center;gap:8px;padding:56px 20px;display:grid}.gh-end h1,.gh-empty h2{margin:6px 0 0}.gh-end p,.gh-empty p{margin:0}.gh-endico,.gh-emptyico{background:color-mix(in srgb, var(--gold-text) 16%, transparent);width:68px;height:68px;color:var(--gold-text);border-radius:20px;place-items:center;animation:.52s cubic-bezier(.34,1.56,.64,1) both gh-pop;display:grid}.gh-bad .gh-endico,.gh-emptyico{color:var(--danger-text);background:#dc262629}.gh-endclass{font:600 1.4rem var(--font-head);color:var(--gold-text)}.gh-endstats{gap:12px;margin-top:18px;display:flex}.gh-endstats>div{background:var(--raised);border-radius:18px;gap:2px;min-width:140px;padding:14px 18px;display:grid}.gh-endstats b{font:600 1.6rem var(--font-head)}.gh-empty button{min-width:180px;margin-top:12px}@keyframes gh-pop{0%{opacity:0;transform:scale(.6)}}
