:root{--bg:#0a0f1f;--bg2:#0e1430;--panel:#141b36;--panel2:#1a2244;--border:#222c4a;--border2:#33406b;--text:#f2f4f8;--muted:#b4bcd2;--faint:#8f99b8;--primary:#6c7bff;--primary-2:#5566e6;--accent:#4ecdc4;--green:#2ecc71;--amber:#f4b740;--red:#ff6b6b;--shadow:0 12px 34px #0006;--display:"Fraunces",Georgia,"Times New Roman",serif}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:radial-gradient(1100px 650px at 92% -14%,#6c7bff21,transparent 60%),var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-feature-settings:"ss01","cv01";font-family:Hanken Grotesk,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.5}.app{grid-template-rows:56px 1fr;grid-template-columns:224px 1fr;height:100vh;display:grid}.topbar{border-bottom:1px solid var(--border);background:#0a0f1fcc;grid-column:1/3;align-items:center;gap:14px;padding:0 18px;display:flex}.brand{align-items:center;gap:9px;font-weight:700;display:flex}.brand .logo{background:linear-gradient(135deg,var(--primary),var(--accent));border-radius:7px;place-items:center;width:26px;height:26px;display:grid;box-shadow:0 0 14px #6c7bff8c}.brand small{color:var(--accent);letter-spacing:1.5px;text-transform:uppercase;margin-left:2px;font-size:11px;font-weight:600}.studio{background:var(--panel);border:1px solid var(--border);border-radius:9px;align-items:center;gap:7px;margin-left:8px;padding:6px 11px;font-size:13px;display:flex}.studio .c{color:var(--muted)}.spacer{flex:1}.who .ava{color:#fff;background:linear-gradient(135deg,#8e44ad,#3498db);border-radius:50%;place-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:grid}.signout{appearance:none;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;padding:6px 4px;font-size:13px;font-weight:600}.signout:hover{color:#fff}.side{border-right:1px solid var(--border);background:#0e143073;flex-direction:column;gap:3px;padding:14px 12px;display:flex;overflow-y:auto}.nav{color:var(--muted);cursor:pointer;border:1px solid #0000;border-radius:10px;align-items:center;gap:11px;padding:10px 12px;font-weight:500;display:flex}.nav svg{width:18px;height:18px}.nav:hover{background:var(--panel);color:var(--text)}.nav.active{color:#fff;border:1px solid var(--border2);background:linear-gradient(135deg,#6c7bff33,#4ecdc414)}.main{position:relative;overflow:auto}.page{max-width:1140px;margin:0 auto;padding:24px 28px 60px}.muted{color:var(--muted)}.faint{color:var(--faint)}.hint{color:var(--faint);font-size:12.5px}.row{align-items:center;gap:12px;display:flex}.between{justify-content:space-between;align-items:center;gap:12px;display:flex}.fw{flex-wrap:wrap}h1{margin:0 0 2px;font-size:22px}.sub{color:var(--muted);margin:0 0 18px}.breadcrumb{color:var(--faint);margin-bottom:10px;font-size:12px}.breadcrumb a{color:var(--muted);cursor:pointer}.breadcrumb a:hover{color:#fff}.sectitle{text-transform:uppercase;letter-spacing:.7px;color:var(--faint);margin:0 0 12px;font-size:12px;font-weight:700}.btn{border:1px solid var(--border2);background:var(--panel);color:var(--text);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:9px 13px;font-family:inherit;font-size:13px;font-weight:600;display:inline-flex}.btn:hover{border-color:var(--primary);background:var(--panel2)}.btn.primary{background:linear-gradient(135deg,var(--primary),var(--primary-2));border:none;box-shadow:0 6px 16px #6c7bff4d}.btn.sm{border-radius:8px;padding:6px 10px;font-size:12px}.btn.ghost{color:var(--muted);background:0 0;border-color:#0000}.btn.ghost:hover{color:var(--text);background:var(--panel)}.btn.dash{width:100%;color:var(--muted);background:0 0;border-style:dashed;padding:13px}.btn.dash:hover{color:#fff;border-color:var(--primary)}.btn.lg{border-radius:12px;padding:13px 22px;font-size:14.5px}.btn:disabled{opacity:.5;cursor:default}.card{background:linear-gradient(180deg,var(--panel),var(--bg2));border:1px solid var(--border);box-shadow:var(--shadow);border-radius:13px;padding:6px}table{border-collapse:collapse;width:100%}th{text-align:left;color:var(--faint);text-transform:uppercase;letter-spacing:.5px;padding:0 12px 10px;font-size:11px;font-weight:600}td{border-top:1px solid var(--border);vertical-align:middle;padding:12px}tr.clk{cursor:pointer}tr.clk:hover td{background:#6c7bff12}.stu{align-items:center;gap:11px;font-weight:600;display:flex}.dot{color:#fff;border-radius:9px;flex:none;place-items:center;width:34px;height:34px;font-size:12px;font-weight:800;display:grid}.dot.rd{border-radius:50%}.pill{border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex}.pill.green{color:#5be39a;background:#2ecc7124}.pill.amber{color:var(--amber);background:#f4b74024}.pill.red{color:var(--red);background:#ff6b6b24}.pill.grey{color:var(--muted);background:#9aa3c71f}.pill.blue{color:#aab2ff;background:#6c7bff29}.seg{background:var(--bg2);border:1px solid var(--border2);border-radius:9px;padding:3px;display:inline-flex}.seg button{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:600}.seg button.on{background:var(--primary);color:#fff}.seg button:disabled{opacity:.45;cursor:default}.grid2c{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.tcard{border:1px solid var(--border);background:var(--panel);border-radius:13px;padding:15px}.tcard .tt{font-size:15px;font-weight:700}.tcard .td{color:var(--muted);margin:5px 0 12px;font-size:12.5px}.field label{color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.select,.input{border:1px solid var(--border2);background:var(--panel);width:100%;color:var(--text);border-radius:10px;padding:10px 12px;font-family:inherit;font-size:14px}.listrow{border:1px solid var(--border);background:var(--panel);cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding:13px 15px;display:flex}.listrow:hover{border-color:var(--border2)}.sd-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.sd-id{align-items:center;gap:14px;display:flex}.sd-id h1{font-family:var(--display);letter-spacing:0;margin:0;font-size:26px;font-weight:600}.sd-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:11px;margin-top:3px;font-size:13px;display:flex}.sd-meta b{color:var(--text)}.sd-meta .sep{background:var(--border2);border-radius:50%;flex:none;width:3px;height:3px}.sd-right{flex-direction:column;flex:none;align-items:flex-end;gap:11px;display:flex}.sd-email{color:var(--faint);margin-top:3px;font-size:12.5px}.minilink{appearance:none;color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:none;padding:0 0 0 3px;font-size:11px;font-weight:600}.minilink:hover{text-decoration:underline}.hstat{align-items:baseline;gap:8px;min-height:22px;display:flex}.pri{background:linear-gradient(100deg,var(--panel2),var(--panel));border:1px solid var(--border);border-left-width:4px;border-radius:14px;align-items:center;gap:15px;margin:18px 0 6px;padding:17px 19px;display:flex}.pri.red{border-left-color:var(--red);background:linear-gradient(100deg,#ff6b6b1f,var(--panel))}.pri.amber{border-left-color:var(--amber);background:linear-gradient(100deg,#f4b7401a,var(--panel))}.pri.green{border-left-color:var(--green);background:linear-gradient(100deg,#2ecc7117,var(--panel))}.pri .pic{border-radius:11px;flex:none;place-items:center;width:40px;height:40px;font-size:18px;font-weight:800;display:grid}.pri .pbody{flex:1}.pri .pk{letter-spacing:.09em;text-transform:uppercase;color:var(--faint);margin-bottom:4px;font-size:10.5px;font-weight:800}.pri.red .pk{color:#ff9a9a}.pri.amber .pk{color:var(--amber)}.pri.green .pk{color:#7fe0a6}.pri .ph{color:var(--muted);font-size:15.5px;font-weight:500;line-height:1.35}.pri .ph b{color:#fff;font-weight:700}.cols{grid-template-columns:1fr 1.35fr;align-items:start;gap:24px;margin-top:22px;display:grid}.colsec{margin-bottom:24px}.sechead{justify-content:space-between;align-items:center;gap:10px;margin:0 0 12px;display:flex}.sechead .st{text-transform:uppercase;letter-spacing:.08em;color:var(--faint);font-size:11px;font-weight:700}.link{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:12px;font-weight:600}.link:hover{text-decoration:underline}.rectable{border:1px solid var(--border);background:var(--panel);border-radius:12px;overflow:hidden}.rlesson{border-top:1px solid var(--border)}.rlesson:first-child{border-top:none}.rlh{cursor:pointer;grid-template-columns:1fr auto 16px;align-items:center;gap:10px;padding:11px 14px;display:grid}.rlh:hover{background:var(--panel2)}.rln .t{font-size:13.5px;font-weight:600}.rln .m{color:var(--faint);margin-top:1px;font-size:11.5px}.rln .tag{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);background:var(--bg2);border:1px solid var(--border2);vertical-align:1px;border-radius:5px;margin-left:8px;padding:1px 6px;font-size:9.5px;font-weight:800;display:inline-block}.rlc{color:var(--faint);justify-self:center;transition:transform .15s}.rlc svg{width:14px;height:14px}.rlesson.open .rlc{transform:rotate(90deg)}.rlb{padding:0 14px 12px;display:none}.rlesson.open .rlb{display:block}.rscore{justify-self:end;align-items:center;gap:10px;display:flex}.rscore .rfrac{font-variant-numeric:tabular-nums;color:var(--muted);font-size:13px;font-weight:700}.miss{background:#ff6b6b0f;border:1px solid #ff6b6b38;border-radius:9px;align-items:flex-start;gap:10px;margin-top:7px;padding:8px 11px;display:flex}.miss .missq{flex:none;width:150px;font-size:12.5px;font-weight:600}.miss .missa{color:#f3a8a8;font-size:12.5px}.allgood{color:#7fe0a6;padding:6px 2px;font-size:12.5px}.rsum{color:var(--faint);margin:2px 0 4px;font-size:11.5px}.stabs{border-bottom:1px solid var(--border);gap:2px;margin:22px 0 0;display:flex}.stab{appearance:none;color:var(--faint);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:11px 16px;font-family:inherit;font-size:13.5px;font-weight:600}.stab:hover{color:var(--muted)}.stab.on{color:#fff;border-color:var(--primary)}.stab .cnt{text-align:center;background:var(--panel2);min-width:18px;color:var(--muted);border-radius:999px;margin-left:5px;padding:1px 6px;font-size:11px;font-weight:800;display:inline-block}.stab.on .cnt{color:#aab2ff;background:#6c7bff38}.spane{display:none}.spane.on{display:block}.srow{grid-template-columns:1.25fr 1fr 1fr;gap:13px;margin-top:16px;display:grid}.stat{background:linear-gradient(180deg,var(--panel),var(--bg2));border:1px solid var(--border);border-radius:14px;flex-direction:column;padding:15px 16px;display:flex}.stat .sl{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);font-size:10.5px;font-weight:800}.stat .svrow{justify-content:space-between;align-items:baseline;gap:8px;margin-top:11px;display:flex}.stat .sv{letter-spacing:-.025em;font-variant-numeric:tabular-nums;align-items:baseline;gap:6px;font-size:31px;font-weight:700;line-height:1;display:flex}.stat .sv small{color:var(--muted);letter-spacing:0;font-size:13px;font-weight:600}.stat .ss{color:var(--faint);margin-top:9px;font-size:12px;line-height:1.45}.pstrip{gap:6px;margin-top:14px;display:flex}.pcell{flex-direction:column;flex:1;align-items:center;gap:6px;min-width:0;display:flex}.pcell .pd{color:var(--faint);letter-spacing:.02em;font-size:10px;font-weight:700}.pcell .pi{border:1px solid var(--border2);background:var(--bg2);color:#0000;border-radius:7px;place-items:center;width:100%;max-width:34px;height:22px;font-size:10px;font-weight:800;display:grid}.pcell.on .pi{background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;border-color:#0000}.pcell.lesson .pi{border:1.5px solid var(--accent);color:var(--accent);background:#4ecdc41f}.pcell.lesson .pd{color:var(--accent)}.delta{align-items:center;gap:3px;font-size:12px;font-weight:700;display:inline-flex}.delta.up{color:#5be39a}.delta.down{color:#ff9a9a}.delta.flat{color:var(--faint)}.kbar{background:var(--bg2);border:1px solid var(--border);border-radius:999px;height:6px;margin-top:11px;overflow:hidden}.kbar i{background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:999px;height:100%;display:block}.ts{background:linear-gradient(180deg,var(--panel),var(--bg2));border:1px solid var(--border);border-radius:14px;align-items:stretch;margin-bottom:11px;transition:border-color .15s;display:flex;overflow:hidden}.ts:hover{border-color:var(--border2)}.ts .tsmark{flex:none;width:4px}.ts.sev-bad .tsmark{background:linear-gradient(#ff6b6b,#ff9a6b)}.ts.sev-warn .tsmark{background:var(--amber)}.ts.sev-ok .tsmark{background:linear-gradient(#4ecdc4,#56d98c)}.ts .tsbody{flex:1;min-width:0;padding:14px 17px}.ts .tstop{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.ts .tsname{letter-spacing:-.01em;font-size:15.5px;font-weight:700}.ts .tsscore{font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap;flex:none;font-size:12.5px;font-weight:700}.ts .tsmistake{color:var(--muted);margin-top:5px;font-size:13.5px;line-height:1.45}.ts .tsmistake b{color:#f0d2a0;font-weight:700}.ts .tswhere{color:var(--muted);margin-top:6px;font-size:11.5px;font-weight:600}.ts .tswhere b{color:#cdd5f2;font-weight:700}.ts .tsalso{color:var(--faint);margin-top:4px;font-size:12px;font-style:italic}.ts .tsmeter{align-items:center;gap:11px;margin-top:12px;display:flex}.ts .tstrack{background:var(--bg2);border:1px solid var(--border);border-radius:999px;flex:1;max-width:240px;height:7px;overflow:hidden}.ts .tsfill{border-radius:999px;height:100%}.ts .tspct{font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:800}.ts .tssince{color:var(--faint);font-size:11.5px;font-weight:600}.ts.tsempty .tsname{color:#7fe0a6}.pgctrl{flex-wrap:wrap;align-items:center;gap:11px;margin-bottom:16px;display:flex}.pgcard{background:linear-gradient(180deg,var(--panel),var(--bg2));border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;margin-bottom:22px;padding:18px 18px 12px}.pgcard .pgt{font-size:15px;font-weight:700}.pgcard .pgs{color:var(--faint);margin-top:2px;font-size:12px}.pgchart{width:100%;height:320px;margin-top:6px}.pgnote{border:1px solid var(--border);color:var(--muted);background:#6c7bff0f;border-radius:11px;gap:9px;padding:12px 14px;font-size:12.5px;display:flex}.pgscope{flex-wrap:wrap;gap:6px;display:flex}.pgchip{appearance:none;font:inherit;cursor:pointer;border:1px solid var(--border2);background:var(--bg2);color:var(--muted);border-radius:8px;padding:6px 11px;font-size:12px;font-weight:600}.pgchip:hover{color:#fff;border-color:var(--primary)}.pgchip.on{background:var(--primary);color:#fff;border-color:#0000}.pgels{border:1px solid var(--border);background:var(--panel);border-radius:13px;margin:-2px 0 18px;padding:14px 15px}.elbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.elbar .ell{color:var(--faint);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:700}.elbar .elacts{gap:12px;display:flex}.elgrp{margin-bottom:12px}.elgrp:last-child{margin-bottom:0}.elgt{color:var(--muted);letter-spacing:.02em;margin-bottom:7px;font-size:10.5px;font-weight:700}.elchips{flex-wrap:wrap;gap:6px;display:flex}.elchip{appearance:none;font:inherit;cursor:pointer;border:1px solid var(--border2);background:var(--bg2);color:var(--faint);border-radius:999px;align-items:center;gap:7px;padding:4px 11px;font-size:12px;font-weight:600;display:inline-flex}.elchip:hover{color:#fff;border-color:var(--primary)}.elchip .eldot{background:#4a5478;border-radius:50%;width:8px;height:8px}.elchip.on{color:#fff}.heat{gap:3px;margin-top:16px;padding-bottom:2px;display:flex;overflow-x:auto}.heatcol{flex-direction:column;flex:none;gap:3px;display:flex}.heatc{background:var(--bg2);border:1px solid var(--border);border-radius:3px;width:12px;height:12px}.heatc.h1{background:#6c7bff47;border-color:#0000}.heatc.h2{background:#6c7bff7a;border-color:#0000}.heatc.h3{background:#6c7bffb8;border-color:#0000}.heatc.h4{background:var(--primary);border-color:#0000}.heatc.future{opacity:.2}.heatmonths{gap:3px;margin-top:7px;display:flex}.heatmonths span{width:12px;color:var(--faint);white-space:nowrap;flex:none;font-size:10px;font-weight:700;overflow:visible}.heatdays{flex-direction:column;flex:none;gap:3px;display:flex}.heatdays span{width:12px;height:12px;color:var(--faint);text-align:center;font-size:9px;font-weight:700;line-height:12px}.heatmonths .heatdayspace{width:12px}.pager{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.pagerinfo{color:var(--faint);font-size:12.5px}.pagerbtns{align-items:center;gap:10px;display:flex}.pagerpage{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.notei{border:1px solid var(--border);background:var(--panel);border-radius:12px;margin-bottom:9px;padding:12px 13px}.notei .nt{white-space:pre-wrap;font-size:13px;line-height:1.55}.notei .nf{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:9px;display:flex}.notei .nw{color:var(--faint);font-size:11px}.notei .nacts{align-items:center;gap:4px;display:flex}.notea{appearance:none;font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:2px 5px;font-size:11.5px;font-weight:600}.notea:hover{color:#fff;background:var(--panel2)}.notea.del:hover{color:var(--red)}.noteadd{border:1px dashed var(--border2);background:#6c7bff0a;border-radius:12px;padding:11px 12px}.noteadd textarea,.noteedit{background:var(--bg2);border:1px solid var(--border2);width:100%;color:var(--text);font:inherit;resize:vertical;border-radius:9px;outline:none;min-height:52px;padding:9px 10px;font-size:13px;line-height:1.5}.noteadd textarea:focus,.noteedit{border-color:var(--primary)}.noterow{justify-content:flex-end;align-items:center;gap:8px;margin-top:10px;display:flex}.notesel{width:auto;min-width:130px;padding:7px 10px;font-size:12.5px}.notefilter{flex-wrap:wrap;gap:6px;margin:18px 0 14px;display:flex}.noteskill{color:var(--muted);background:var(--bg2);border:1px solid var(--border2);border-radius:999px;align-items:center;gap:6px;padding:2px 9px;font-size:10.5px;font-weight:700;display:inline-flex}.noteskill .nsd{border-radius:50%;flex:none;width:7px;height:7px}.pane-notes{max-width:620px}.listtools{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;display:flex}.searchbox{flex:1;min-width:210px;max-width:360px;position:relative}.searchbox svg{width:15px;height:15px;color:var(--faint);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.searchbox input{border:1px solid var(--border2);background:var(--panel);width:100%;color:var(--text);font:inherit;border-radius:10px;outline:none;padding:9px 12px 9px 35px;font-size:13.5px}.searchbox input:focus{border-color:var(--primary)}.sortbox{align-items:center;gap:8px;margin-left:auto;display:flex}.sortbox label{color:var(--faint);white-space:nowrap;font-size:12px;font-weight:600}.sortbox select{width:auto;padding:8px 11px;font-size:13px}.lastcell{font-weight:600}.lastcell.stale{color:var(--amber)}.lastcell.cold{color:#ff9a9a}.acccell{font-variant-numeric:tabular-nums;font-weight:700}.aggstrip{border:1px solid var(--border);background:var(--panel);color:var(--muted);border-radius:11px;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:14px;padding:10px 14px;font-size:13px;display:flex}.aggstrip b{color:#fff}.modetag{letter-spacing:.05em;text-transform:uppercase;color:#8fe7df;vertical-align:1px;white-space:nowrap;background:#4ecdc41a;border:1px solid #4ecdc459;border-radius:5px;margin-left:7px;padding:1px 6px;font-size:9.5px;font-weight:800;display:inline-block}.scrim{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:40;background:#05081299;position:fixed;inset:0}.modal{background:linear-gradient(180deg,var(--panel),var(--bg2));border:1px solid var(--border2);width:600px;max-width:94vw;max-height:88vh;box-shadow:var(--shadow);z-index:41;border-radius:16px;padding:20px;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.onboarding{z-index:60;background:radial-gradient(1000px 640px at 16% -12%,#6c7bff47,transparent 55%),radial-gradient(820px 600px at 102% 6%,#4ecdc429,transparent 52%),radial-gradient(760px 720px at 84% 116%,#9b59b633,transparent 55%),var(--bg);position:fixed;inset:0;overflow-y:auto}.obstars{pointer-events:none;opacity:.55;background-image:radial-gradient(1.6px 1.6px at 12% 22%,#fff,#0000),radial-gradient(1.4px 1.4px at 78% 16%,#dfe5ff,#0000),radial-gradient(1.2px 1.2px at 33% 64%,#cfd6f5,#0000),radial-gradient(1.5px 1.5px at 88% 72%,#fff,#0000),radial-gradient(1.1px 1.1px at 58% 38%,#bcd,#0000),radial-gradient(1.3px 1.3px at 24% 86%,#fff,#0000),radial-gradient(1.2px 1.2px at 67% 90%,#dfe5ff,#0000),radial-gradient(1px 1px at 46% 12%,#fff,#0000);position:absolute;inset:0}.obwrap{flex-direction:column;max-width:780px;min-height:100vh;margin:0 auto;padding:20px 28px 28px;display:flex;position:relative}.obtop{justify-content:space-between;align-items:center;gap:16px;display:flex}.obbrand{align-items:center;gap:9px;font-size:15px;font-weight:700;display:flex}.obbrand .logo{background:linear-gradient(135deg,var(--primary),var(--accent));border-radius:7px;place-items:center;width:26px;height:26px;display:grid;box-shadow:0 0 14px #6c7bff8c}.obbrand small{color:var(--accent);letter-spacing:1.5px;text-transform:uppercase;margin-left:1px;font-size:11px;font-weight:700}.obskip{appearance:none;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;padding:6px 4px;font-size:13px;font-weight:600}.obskip:hover{color:#fff}.obsteps{flex-wrap:wrap;align-items:center;gap:9px;margin:16px 0 24px;display:flex}.obstep{color:var(--faint);white-space:nowrap;align-items:center;gap:8px;font-size:12.5px;font-weight:600;display:flex}.obstep .num{border:1px solid var(--border2);background:#0e143099;border-radius:50%;place-items:center;width:23px;height:23px;font-size:11px;font-weight:700;display:grid}.obstep.on{color:#fff}.obstep.on .num{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 0 0 4px #6c7bff2e}.obstep.done{color:var(--muted)}.obstep.done .num{background:var(--accent);border-color:var(--accent);color:#06231a}.obconn{background:var(--border2);flex:1;min-width:12px;max-width:46px;height:1px}.obbody{flex-direction:column;flex:1;display:flex}.obpanel{flex-direction:column;flex:1;animation:.5s cubic-bezier(.2,.7,.2,1) both obIn;display:flex}@keyframes obIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.obkicker{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:15px;font-size:12px;font-weight:800}.obh{font-family:var(--display);letter-spacing:-.015em;margin:0 0 12px;font-weight:600;line-height:1.05}.obh.big{font-size:clamp(38px,6vw,56px)}.obh.mid{font-size:clamp(27px,4vw,34px)}.obsub{color:var(--muted);max-width:580px;margin:0 0 28px;font-size:15.5px;line-height:1.6}.obsub b{color:var(--text);font-weight:600}.obcenter{flex-direction:column;flex:1;justify-content:center;min-height:62vh;display:flex}.obcenter.mid{text-align:center;align-items:center}.stg>*{opacity:0;animation:.55s cubic-bezier(.2,.7,.2,1) forwards obIn}.stg>:first-child{animation-delay:40ms}.stg>:nth-child(2){animation-delay:.12s}.stg>:nth-child(3){animation-delay:.2s}.stg>:nth-child(4){animation-delay:.28s}.stg>:nth-child(5){animation-delay:.36s}.stg>:nth-child(6){animation-delay:.44s}.obcards{gap:14px;display:grid}.obcards.two{grid-template-columns:1fr 1fr}.obcard{text-align:left;border:1px solid var(--border2);cursor:pointer;font:inherit;color:var(--text);background:linear-gradient(#141b36eb,#0e1430eb);border-radius:17px;padding:21px;transition:transform .14s,border-color .14s,box-shadow .14s;position:relative}.obcard:hover{transform:translateY(-2px)}.obcard.sel{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary),0 14px 36px #6c7bff38}.obcard .obicon{color:#fff;border-radius:14px;place-items:center;width:48px;height:48px;margin-bottom:15px;font-size:22px;display:grid}.obcard .obicon svg{width:24px;height:24px}.obcard .obct{letter-spacing:-.01em;align-items:center;gap:10px;font-size:17.5px;font-weight:700;display:flex}.obcard .obcd{color:var(--muted);margin-top:8px;font-size:13.5px;line-height:1.55;display:block}.obcheck{border:1.5px solid var(--border2);color:#0000;border-radius:50%;place-items:center;width:23px;height:23px;font-size:12px;font-weight:800;transition:all .12s;display:grid;position:absolute;top:17px;right:17px}.obcard.sel .obcheck,.obopt.sel .obcheck{background:var(--primary);border-color:var(--primary);color:#fff}.obopts{gap:8px;display:grid}.obopt{border:1px solid var(--border2);cursor:pointer;font:inherit;color:var(--text);text-align:left;background:#141b36b3;border-radius:12px;align-items:center;gap:14px;padding:12px 16px;transition:border-color .12s,box-shadow .12s,background .12s;display:flex;position:relative}.obopt:hover{border-color:var(--primary)}.obopt.sel{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.obopt.rec{background:linear-gradient(120deg,#6c7bff24,#4ecdc40d)}.obopt:disabled{opacity:.55;cursor:default}.obopt:disabled:hover{border-color:var(--border2)}.obopt .otext{flex:1;min-width:0}.obopt .ot{letter-spacing:-.01em;align-items:center;gap:9px;font-size:14.5px;font-weight:700;display:flex}.obopt .od{color:var(--muted);margin-top:3px;font-size:12.5px;line-height:1.45}.obopt .obcheck{flex:none;width:21px;height:21px;position:static}.recbadge{letter-spacing:.06em;text-transform:uppercase;color:#06231a;background:var(--accent);border-radius:6px;padding:3px 8px;font-size:9.5px;font-weight:800}.soonbadge{letter-spacing:.06em;text-transform:uppercase;color:var(--faint);background:var(--bg2);border:1px solid var(--border2);border-radius:6px;padding:3px 8px;font-size:9.5px;font-weight:800}.oblabel{letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin:18px 0 10px;font-size:12px;font-weight:800}.obfield{margin-bottom:4px}.obfield label{letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin-bottom:9px;font-size:12px;font-weight:800;display:block}.obinput{border:1px solid var(--border2);width:100%;max-width:440px;color:var(--text);font:inherit;background:#141b36d9;border-radius:12px;outline:none;padding:13px 15px;font-size:16px}.obinput:focus{border-color:var(--primary);box-shadow:0 0 0 3px #6c7bff29}.obhint{color:var(--faint);margin-top:9px;font-size:12.5px}.obcode{background:#4ecdc414;border:1px solid #4ecdc459;border-radius:15px;align-items:center;gap:16px;margin-top:6px;padding:18px 20px;animation:.45s both obIn;display:flex}.obcode .ccode{font-family:var(--display);letter-spacing:.12em;color:#bdeee9;font-variant-numeric:tabular-nums;font-size:30px;font-weight:600}.obcode .cmeta{flex:1}.obcode .ct{font-size:14.5px;font-weight:700}.obcode .cd{color:var(--muted);margin-top:3px;font-size:12.5px;line-height:1.5}.obnext3{flex-wrap:wrap;gap:18px;margin-top:18px;display:flex}.obn3{color:var(--muted);align-items:flex-start;gap:10px;max-width:200px;font-size:12.5px;display:flex}.obn3 .n3i{background:var(--panel2);border:1px solid var(--border2);color:#aab2ff;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:11px;font-weight:800;display:grid}.obring{color:#5be39a;background:radial-gradient(circle at 50% 35%,#2ecc714d,#2ecc710d);border:1.5px solid #2ecc7180;border-radius:50%;place-items:center;width:84px;height:84px;margin:0 auto 24px;font-size:38px;animation:.5s cubic-bezier(.2,1.3,.4,1) both pop;display:grid}@keyframes pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.obsummary{text-align:left;border:1px solid var(--border2);background:#141b36b3;border-radius:14px;flex-direction:column;gap:9px;margin:6px 0 28px;padding:16px 20px;display:inline-flex}.obsummary .sr{color:var(--muted);align-items:center;gap:10px;font-size:13.5px;display:flex}.obsummary .sr b{color:#fff;font-weight:600}.obsummary .sr .ok{color:#5be39a;font-weight:800}.obnav{align-items:center;gap:12px;margin-top:24px;display:flex}.obnav .grow{flex:1}@media (max-width:680px){.obcards.two{grid-template-columns:1fr}.obh.big{font-size:34px}}.sideChecklist{margin-top:auto;padding-top:10px}.sgc{border:1px solid var(--border2);background:linear-gradient(160deg,#6c7bff26,#4ecdc40f);border-radius:13px;padding:12px}.sgch{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.sgct{letter-spacing:.03em;color:#fff;align-items:center;gap:7px;font-size:11.5px;font-weight:800;display:flex}.sgcn{color:#8fe7df;font-size:10.5px;font-weight:800}.sgcx{appearance:none;color:var(--faint);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:16px;line-height:1}.sgcx:hover{color:#fff}.sgcbar{background:var(--bg2);border:1px solid var(--border);border-radius:999px;height:5px;margin-bottom:10px;overflow:hidden}.sgcbar i{background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:999px;height:100%;transition:width .4s;display:block}.sgcrow{cursor:pointer;font:inherit;color:var(--muted);text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:9px;width:100%;padding:6px 5px;display:flex}.sgcrow:hover{color:#fff;background:#6c7bff21}.sgcrow .m{border:1.5px solid var(--border2);color:#0000;border-radius:50%;flex:none;place-items:center;width:16px;height:16px;font-size:9px;font-weight:800;display:grid}.sgcrow.done{color:var(--faint);cursor:default}.sgcrow.done:hover{background:0 0}.sgcrow.done .m{background:var(--accent);border-color:var(--accent);color:#06231a}.sgcrow .l{font-size:12px;font-weight:600;line-height:1.25}.sgcrow.done .l{text-decoration:line-through;-webkit-text-decoration-color:var(--border2);text-decoration-color:var(--border2)}.pendwrap{background:radial-gradient(700px 240px at 15% -30%,#4ecdc41f,transparent 60%),linear-gradient(180deg,var(--panel),var(--bg2));box-shadow:var(--shadow);border:1px solid #4ecdc44d;border-radius:16px;margin-top:8px;padding:24px}.pendwrap .ph2{font-family:var(--display);margin:0 0 6px;font-size:22px;font-weight:600}.pendcode{border:1px solid var(--border2);background:var(--bg2);border-radius:14px;flex-wrap:wrap;align-items:center;gap:16px;margin:16px 0;padding:16px 18px;display:flex}.pendcode .pc2{font-family:var(--display);letter-spacing:.12em;color:#bdeee9;font-size:28px;font-weight:600}.pendsteps{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-top:8px;display:grid}.pendstep{border:1px solid var(--border);background:var(--panel);border-radius:12px;padding:14px}.pendstep .psn{background:var(--panel2);border:1px solid var(--border2);color:#aab2ff;border-radius:50%;place-items:center;width:24px;height:24px;margin-bottom:9px;font-size:11px;font-weight:800;display:grid}.pendstep .pst{font-size:13.5px;font-weight:700}.pendstep .psd{color:var(--muted);margin-top:3px;font-size:12px;line-height:1.45}@media (max-width:980px){.cols,.srow{grid-template-columns:1fr}}
