@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_Fallback_8b3a0b;src:local("Arial");ascent-override:90.49%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:107.06%}.__className_8b3a0b{font-family:__Inter_8b3a0b,__Inter_Fallback_8b3a0b;font-style:normal}.__variable_8b3a0b{--font-body:"__Inter_8b3a0b","__Inter_Fallback_8b3a0b"}:root{--bg:#0b0b0d;--text:#f2f2f3;--text-dim:#8b8b93;--text-faint:#8b8b9399;--accent:#ef4a34;--accent-2:#ff7a59;--accent-strong:#c53a26;--accent-teal:#8b8b93;--accent-glow:rgba(239,74,52,.3);--hero-gradient:linear-gradient(135deg,var(--accent-2),var(--accent));--positive:#22c55e;--warn:#fbbf24;--danger:#ef4444;--info:#60a5fa;--glass:#18181b;--glass-2:#202024;--glass-strong:#28282d;--stroke:hsla(0,0%,100%,.08);--stroke-soft:hsla(0,0%,100%,.05);--blur:none;--radius:14px;--radius-sm:10px;--shadow:0 16px 32px rgba(0,0,0,.45);--surface:#18181b;--surface-2:#202024;--surface-3:#28282d;--border:hsla(0,0%,100%,.08);--font:var(--font-body),system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-heading-stack:var(--font);--sidebar-w:232px;--sidebar-w-collapsed:68px}*{box-sizing:border-box}body,html{margin:0;padding:0}body{min-height:100vh;color:var(--text);font-family:var(--font);font-size:16px;line-height:1.55;background-color:var(--bg)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{font-family:var(--font-heading-stack);line-height:1.2;letter-spacing:-.02em;font-weight:700}h1{font-size:30px}h2{font-size:21px}h3{font-size:16px}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit;background:var(--glass);border:1px solid var(--stroke);color:var(--text);border-radius:var(--radius-sm);padding:11px 13px;font-size:15px;width:100%;transition:border-color .15s,background .15s}input::placeholder,textarea::placeholder{color:var(--text-faint)}input:hover,select:hover,textarea:hover{border-color:hsla(0,0%,100%,.16)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);background:var(--glass-2);box-shadow:0 0 0 3px var(--accent-glow)}select option{background:var(--glass)}.container{max-width:1120px;margin:0 auto;padding:0 18px}.card{background:var(--glass);border:1px solid var(--stroke);border-radius:var(--radius);padding:22px;transition:transform .18s ease-out,box-shadow .18s ease-out,border-color .18s,background .18s}.card-hover:hover,a.card:hover{transform:translateY(-4px);border-color:hsla(0,0%,100%,.16);background:var(--glass-2);box-shadow:var(--shadow);text-decoration:none}.grid{display:grid;grid-gap:16px;gap:16px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.row,.spread{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.spread{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:12px}.muted{color:var(--text-dim)}.small{font-size:13px}.big-number{font-family:var(--font-heading-stack);font-size:32px;font-weight:700;letter-spacing:-.03em;color:var(--text)}.mt{margin-top:16px}.mb{margin-bottom:16px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-heading-stack);background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);padding:10px 18px;font-size:14.5px;font-weight:600;transition:filter .15s,transform .1s,box-shadow .15s}.btn:hover{filter:brightness(1.1);box-shadow:0 8px 24px var(--accent-glow);text-decoration:none}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;filter:none}.btn-secondary{background:var(--glass-2);color:var(--text);border:1px solid var(--stroke)}.btn-secondary:hover{background:var(--glass-strong);box-shadow:none;filter:none}.btn-danger{background:var(--danger);color:#2b0611}.btn-ghost{background:transparent;color:var(--text-dim);border:1px solid var(--stroke);border-radius:var(--radius-sm)}.btn-ghost:hover{color:var(--text);border-color:var(--text-dim);background:transparent;box-shadow:none;filter:none}.btn-sm{padding:6px 12px;font-size:13px}.btn-lg{padding:13px 26px;font-size:16px}.btn-icon{width:40px;height:40px;padding:0;border-radius:50%;background:var(--glass-2);color:var(--text)}.btn-icon:hover{filter:none;box-shadow:0 0 0 4px var(--accent-glow)}.badge{display:inline-flex;align-items:center;gap:5px;background:var(--glass-2);border:1px solid var(--stroke-soft);border-radius:999px;padding:3px 11px;font-size:12px;color:var(--text-dim)}.badge-accent{background:rgba(239,74,52,.14);border-color:rgba(239,74,52,.4);color:#ff8b76}.badge-warn{background:rgba(251,191,36,.12);border-color:rgba(251,191,36,.4);color:var(--warn)}.badge-positive{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.35);color:var(--positive)}.progress-track{background:var(--glass-2);height:8px}.progress-fill,.progress-track{border-radius:999px;overflow:hidden;position:relative}.progress-fill{background:var(--hero-gradient);height:100%;transition:width .4s ease;box-shadow:0 0 12px var(--accent-glow)}.progress-fill-xp{transition:width 1.1s cubic-bezier(.22,1,.36,1)}.progress-fill-xp:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.35),transparent);animation:xp-shimmer 1.8s ease-in-out infinite}@keyframes xp-shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes pop-in{0%{opacity:0;transform:scale(.85) translateY(8px)}60%{opacity:1;transform:scale(1.03) translateY(0)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes badge-pulse{0%,to{box-shadow:0 0 0 0 var(--accent-glow)}50%{box-shadow:0 0 0 8px transparent}}.level-up-banner{animation:pop-in .5s cubic-bezier(.22,1,.36,1) both;background:linear-gradient(135deg,rgba(239,74,52,.18),rgba(255,122,89,.08));border:1px solid rgba(239,74,52,.4);border-radius:var(--radius);padding:18px 20px;text-align:center}.level-up-banner .badge-accent{animation:badge-pulse 1.6s ease-in-out infinite}.achievement-pop{animation:pop-in .45s cubic-bezier(.22,1,.36,1) both}.achievement-pop:nth-child(2){animation-delay:.08s}.achievement-pop:nth-child(3){animation-delay:.16s}.achievement-pop:nth-child(4){animation-delay:.24s}.autocomplete-wrap{position:relative}.autocomplete-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:20;background:var(--glass-strong);border:1px solid var(--stroke);border-radius:var(--radius-sm);box-shadow:var(--shadow);max-height:260px;overflow-y:auto}.autocomplete-item{padding:9px 13px;font-size:14px;cursor:pointer;border-bottom:1px solid var(--stroke-soft)}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover{background:var(--glass-2)}table.data{width:100%;border-collapse:collapse;font-size:14px}table.data td,table.data th{text-align:left;padding:10px 12px;border-bottom:1px solid var(--stroke-soft)}table.data th{color:var(--text-dim);font-weight:600;font-size:12.5px;text-transform:uppercase;letter-spacing:.03em}table.data tr:last-child td{border-bottom:none}table.data tr:hover td{background:hsla(0,0%,100%,.02)}.alert{border-radius:var(--radius-sm);padding:12px 16px;font-size:14px;border:1px solid}.alert-error{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.4);color:#fca5a5}.alert-success{background:rgba(34,197,94,.1);border-color:rgba(34,197,94,.4);color:var(--positive)}.alert-info{background:rgba(96,165,250,.1);border-color:rgba(96,165,250,.4);color:#93c5fd}.alert-warn{background:rgba(251,191,36,.1);border-color:rgba(251,191,36,.4);color:var(--warn)}.shell{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-w);background:var(--glass);border-right:1px solid var(--stroke-soft);padding:16px 12px;display:flex;flex-direction:column;gap:3px;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto;overflow-x:hidden;transition:width .22s cubic-bezier(.4,0,.2,1);flex-shrink:0}.sidebar::-webkit-scrollbar{width:0}.shell.collapsed .sidebar{width:var(--sidebar-w-collapsed)}.sidebar a{display:flex;align-items:center;gap:13px;padding:10px 13px;border-radius:var(--radius-sm);color:var(--text-dim);font-size:14.5px;white-space:nowrap;transition:background .22s cubic-bezier(.4,0,.2,1),color .14s;position:relative}.sidebar a .nav-icon{display:inline-flex;width:20px;flex-shrink:0}.sidebar a .nav-label{overflow:hidden}.shell.collapsed .sidebar a .nav-label{display:none}.shell.collapsed .sidebar a{justify-content:center;padding:11px 0}.sidebar a:hover{background:var(--glass-2);text-decoration:none;color:var(--text)}.sidebar a.active{background:rgba(239,74,52,.14);color:var(--accent-2);font-weight:600}.side-title{display:flex;align-items:center;gap:10px;padding:8px 13px 16px;font-family:var(--font-heading-stack);font-weight:700;font-size:17px;letter-spacing:-.02em;white-space:nowrap}.shell.collapsed .side-title .nav-label{display:none}.shell.collapsed .side-title{justify-content:center;padding:8px 0 16px}.collapse-btn{background:var(--glass);border:1px solid var(--stroke-soft);color:var(--text-dim);border-radius:9px;padding:7px;font-size:13px;margin-bottom:8px;transition:color .14s,background .14s}.collapse-btn:hover{color:var(--text);background:var(--glass-2)}.main-content{flex:1 1;padding:30px 30px 70px;min-width:0}.mobile-topbar,.sidebar-close,.sidebar-overlay{display:none}@media (max-width:800px){.mobile-topbar{gap:12px;position:-webkit-sticky;position:sticky;top:0;z-index:30;padding:12px 16px;background:var(--glass);border-bottom:1px solid var(--stroke-soft)}.hamburger,.mobile-topbar{display:flex;align-items:center}.hamburger{background:var(--glass-2);border:1px solid var(--stroke);color:var(--text);border-radius:10px;width:42px;height:42px;font-size:20px;justify-content:center;flex-shrink:0}.shell,.shell.collapsed{flex-direction:column}.shell.collapsed .sidebar,.sidebar{position:fixed;top:0;left:0;height:100dvh;width:270px;max-width:82vw;z-index:60;transform:translateX(-100%);transition:transform .26s cubic-bezier(.4,0,.2,1);border-right:1px solid var(--stroke);flex-direction:column;overflow-y:auto;padding:16px 12px}.shell.drawer-open .sidebar{transform:translateX(0);box-shadow:12px 0 40px rgba(0,0,0,.5)}.shell.collapsed .sidebar a .nav-label,.sidebar a .nav-label{display:inline}.shell.collapsed .sidebar a,.sidebar a{justify-content:flex-start;padding:12px 14px;font-size:15.5px}.side-title{display:flex}.shell.collapsed .side-title .nav-label,.side-title .nav-label{display:inline}.sidebar a.active:before{display:block}.collapse-btn{display:none}.sidebar-close{display:flex;align-self:flex-end;background:var(--glass-2);border:1px solid var(--stroke);color:var(--text-dim);border-radius:9px;padding:6px 10px;font-size:14px;margin-bottom:6px}.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50}.shell.drawer-open .sidebar-overlay{display:block}.main-content{padding:18px 16px 70px}}.streak-card{border-radius:var(--radius);border:1px solid var(--stroke);background:var(--glass);padding:20px 22px;display:flex;align-items:stretch;gap:20px;flex-wrap:wrap}.streak-card.milestone{border-color:rgba(239,74,52,.4)}.streak-flame{display:inline-flex;align-items:center;justify-content:center;width:64px;min-height:100%;border-radius:var(--radius-sm);background:rgba(239,74,52,.14);color:var(--accent);flex-shrink:0}.streak-flame svg{width:60%;height:60%}.streak-card.milestone .streak-flame{animation:badge-pulse 1.6s ease-in-out infinite}.streak-card.milestone .streak-milestone-badge{animation:pop-in .5s cubic-bezier(.22,1,.36,1) both}.streak-number{font-size:34px;font-weight:700;letter-spacing:-.03em;line-height:1;color:var(--text)}.streak-body{flex:1 1;min-width:200px}.streak-milestone-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:999px;font-weight:600;font-size:12.5px;color:var(--accent-2);background:rgba(239,74,52,.14);border:1px solid rgba(239,74,52,.3)}.set-controls button{min-width:48px;min-height:48px;font-size:20px}.body3d-wrap{position:relative;border-radius:var(--radius);overflow:hidden;background:radial-gradient(400px 320px at 50% 15%,rgba(239,74,52,.12),transparent 65%),var(--glass);border:1px solid var(--stroke);min-height:380px}.body3d-hint{position:absolute;bottom:10px;left:0;right:0;text-align:center;font-size:12px;color:var(--text-dim);pointer-events:none}.pc-grid{display:grid;grid-template-columns:330px minmax(320px,1fr) 310px;grid-gap:16px;gap:16px;align-items:start}@media (max-width:1240px){.pc-grid{grid-template-columns:1fr 1fr}.pc-grid>.pc-col-centre{grid-column:1/-1;order:-1}}@media (max-width:820px){.pc-grid{grid-template-columns:1fr}}.pc-col{display:flex;flex-direction:column;gap:16px;min-width:0}.pc-label{display:flex;align-items:center;gap:10px;font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim);margin:0 0 10px}.pc-label:after{content:"";flex:1 1;height:1px;background:var(--stroke)}.pc-panel{background:var(--glass);border:1px solid var(--stroke);border-radius:var(--radius);padding:16px 18px}.pc-identity{display:flex;gap:14px;align-items:flex-start}.pc-rank{width:58px;height:68px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--accent-2);background:linear-gradient(160deg,rgba(239,74,52,.22),rgba(239,74,52,.06));border:1px solid rgba(239,74,52,.4);-webkit-clip-path:polygon(0 0,100% 0,100% 78%,50% 100%,0 78%);clip-path:polygon(0 0,100% 0,100% 78%,50% 100%,0 78%)}.pc-rank-num{font-size:22px;font-weight:700;line-height:1;letter-spacing:-.02em;color:var(--text)}.pc-rank-pip{font-size:8px;letter-spacing:.2em}.pc-name{font-size:34px;font-weight:700;letter-spacing:-.03em;line-height:1.05;margin:0}.pc-title{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);margin:4px 0 0}.pc-stat-row{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px}.pc-stat{background:var(--glass-2);border:1px solid var(--stroke-soft);border-radius:var(--radius-sm);padding:10px 8px;text-align:center;min-width:0}.pc-stat.is-primary{border-color:rgba(239,74,52,.45);background:rgba(239,74,52,.1)}.pc-stat-icon{color:var(--text-dim);display:block;margin:0 auto 4px}.pc-stat.is-primary .pc-stat-icon{color:var(--accent-2)}.pc-stat-value{font-size:17px;font-weight:700;letter-spacing:-.02em;line-height:1.1;overflow-wrap:anywhere}.pc-stat-label{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.pc-badge-row{display:flex;gap:8px;flex-wrap:wrap}.pc-plate{width:56px;height:62px;display:flex;align-items:center;justify-content:center;background:var(--glass-2);border:1px solid var(--stroke);color:var(--text-dim);-webkit-clip-path:polygon(50% 0,100% 26%,100% 74%,50% 100%,0 74%,0 26%);clip-path:polygon(50% 0,100% 26%,100% 74%,50% 100%,0 74%,0 26%)}.pc-plate.unlocked{background:linear-gradient(160deg,rgba(239,74,52,.24),rgba(239,74,52,.05));border-color:rgba(239,74,52,.4);color:var(--accent-2)}.pc-plate-tier{font-size:17px;font-weight:700;letter-spacing:.02em;color:var(--accent-2)}.pc-tier-pips{display:flex;gap:5px;margin-top:10px}.pc-pip{flex:1 1;height:3px;border-radius:999px;background:var(--glass-strong)}.pc-pip.earned{background:var(--accent-2)}.pc-stage{position:relative;border-radius:var(--radius);border:1px solid var(--stroke);overflow:hidden;background:radial-gradient(520px 420px at 50% 8%,rgba(239,74,52,.16),transparent 68%),linear-gradient(180deg,var(--glass-2),var(--glass))}.pc-stage .body3d-wrap{border:none;background:transparent;min-height:0}.pc-stage-head{position:absolute;top:0;left:0;right:0;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;pointer-events:none}.pc-chip-col{display:flex;flex-direction:column;gap:6px;align-items:flex-end}.pc-chip{background:rgba(11,11,13,.72);border:1px solid var(--stroke);border-radius:999px;padding:3px 10px;font-size:11.5px;color:var(--text-dim);white-space:nowrap}.pc-chip strong{color:var(--text);font-weight:600}.pc-best{display:flex;align-items:center;gap:11px;padding:8px 0;border-bottom:1px dashed var(--stroke-soft)}.pc-best:last-child{border-bottom:none}.pc-best-icon{width:34px;height:34px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--glass-2);border:1px solid var(--stroke-soft);color:var(--text-dim)}.pc-best-label{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}.pc-best-value{font-size:15px;font-weight:700;letter-spacing:-.01em}.pc-bar-row{margin-bottom:10px}.pc-bar-row:last-child{margin-bottom:0}.pc-bar-head{display:flex;justify-content:space-between;font-size:12px;margin-bottom:4px}.pc-bar-track{height:5px;border-radius:999px;background:var(--glass-2);overflow:hidden}.pc-bar-fill{height:100%;border-radius:999px;background:var(--hero-gradient);transition:width .6s ease}.pc-radar{width:100%;height:auto;display:block}.pc-radar .grid-line{fill:none;stroke:var(--stroke);stroke-width:1}.pc-radar .spoke{stroke:var(--stroke-soft);stroke-width:1}.pc-radar .shape{fill:rgba(239,74,52,.22);stroke:var(--accent);stroke-width:1.5;stroke-linejoin:round}.pc-radar .axis-label{fill:var(--text-dim);font-size:9px;letter-spacing:.08em;text-transform:uppercase}.preset-card{display:flex;flex-direction:column;gap:6px;align-items:flex-start;text-align:left;padding:20px;border-radius:var(--radius);border:1px solid var(--stroke);background:var(--glass);color:var(--text);transition:transform .16s,border-color .16s,box-shadow .16s,background .16s}.preset-card:hover{transform:translateY(-4px);border-color:rgba(239,74,52,.5);box-shadow:0 8px 26px var(--accent-glow)}.preset-card.selected{border-color:var(--accent);background:rgba(239,74,52,.12);box-shadow:0 0 0 1px var(--accent)}.preset-card .preset-icon{color:var(--accent)}.preset-card .preset-title{font-weight:700;font-size:16px}.preset-card .preset-sub{font-size:13px;color:var(--text-dim)}.day-card{cursor:pointer}.day-card .day-exercises{border-top:1px solid var(--stroke-soft);margin-top:14px;padding-top:14px}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}