@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap');
:root{color-scheme:dark;--bg:#090f1c;--card:#101b2d;--line:#25334a;--muted:#98aac4;--accent:#47b5ff;--text:#e9f1fd}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.55 Inter,Arial,sans-serif}h1,h2,h3{font-family:'Space Grotesk',Arial,sans-serif;line-height:1.16}h1{font-size:38px;letter-spacing:-1px;margin:12px 0}h2{font-size:25px}h3{font-size:19px}a{color:var(--accent);text-decoration:none}button,input,select,textarea{font:inherit}button,.button{border:1px solid var(--line);border-radius:9px;color:var(--text);background:#192840;padding:10px 15px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px}button:hover,.button:hover{border-color:var(--accent);background:#213a57}button:disabled{opacity:.4;cursor:default}.primary{background:#087dc3;border-color:#168fd9;color:white}.quiet{background:transparent}.danger{color:#ffb6b6}.small{padding:6px 10px;font-size:12px}input,select,textarea{width:100%;background:#0a1424;border:1px solid #30415c;color:var(--text);border-radius:8px;padding:10px}input[type=checkbox]{width:auto;accent-color:#47b5ff}label{display:grid;gap:6px;font-size:13px;color:#c3d2e7}label.check{display:flex;align-items:center;gap:8px}textarea{min-height:80px}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #62beff;outline-offset:3px}.layout{display:grid;grid-template-columns:224px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:28px 18px;border-right:1px solid var(--line);background:#0c1526;display:flex;flex-direction:column}.logo{width:170px;max-width:100%}.brand-caption{font-size:11px;letter-spacing:2px;color:var(--muted);margin:12px 10px 28px}.sidebar nav{display:grid;gap:5px}.sidebar nav button{justify-content:flex-start;background:transparent;border-color:transparent;color:#a7b9d0;padding:11px 14px}.sidebar nav button.active{color:#eaf5ff;background:#113153;border-color:#235683}.sidebar-bottom{margin-top:auto;color:var(--muted);font-size:12px;padding:20px 10px 0}.sidebar-bottom a{display:block;margin-top:7px}.workspace{min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 36px;border-bottom:1px solid var(--line);background:#0c1526}.topbar select{max-width:300px}.identity{display:flex;gap:14px;align-items:center;color:var(--muted)}main.content{max-width:1480px;margin:auto;padding:35px 36px 70px}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--accent);font-weight:700;text-transform:uppercase}.lead{color:var(--muted);max-width:720px;font-size:15px}.page-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:27px}.page-head p{margin:8px 0}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.card{border:1px solid var(--line);background:linear-gradient(135deg,#122037,#101a2d);border-radius:14px;padding:22px;min-width:0}.card .number{font-family:'Space Grotesk';font-size:32px;font-weight:600;margin:10px 0}.card .label{color:var(--muted);font-size:12px}.card .sub{color:var(--muted);font-size:12px;margin:5px 0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.cols{display:grid;grid-template-columns:1.1fr 1fr;gap:20px}.panel{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px;margin:22px 0}.panel h2{margin:0 0 18px}.panel h3{margin-top:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid .wide{grid-column:1/-1}.form-grid button{justify-self:start}.muted{color:var(--muted)}.hint{font-size:12px;color:var(--muted)}.table-wrap{overflow:auto;max-width:100%;border:1px solid var(--line);border-radius:10px}table{border-collapse:collapse;width:100%;white-space:nowrap;font-size:13px}th{color:#9eb2ce;font-size:11px;text-transform:uppercase;letter-spacing:.6px;text-align:left;background:#0c1729}th,td{padding:14px 16px;border-bottom:1px solid #223048}td small{display:block;color:var(--muted)}tr:last-child td{border:0}.empty{padding:32px;color:var(--muted);text-align:center;border:1px dashed #30415c;border-radius:12px}.badge{display:inline-block;border:1px solid #2d5367;border-radius:20px;padding:3px 9px;color:#90e2c8;background:#103032;font-size:11px;white-space:nowrap}.badge.warn{color:#ffce94;border-color:#685435;background:#332a1b}.badge.bad{color:#ffa9ad;border-color:#6b353c;background:#351b25}.tags{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0}.course-card{display:flex;flex-direction:column}.course-card .hint{margin-top:auto}.course-card h3{margin:9px 0}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.details{border:1px solid var(--line);padding:20px;border-radius:14px;margin:24px 0}summary{cursor:pointer;font-weight:600;color:#b9d8ff}details form{margin-top:20px}.login{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;max-width:1250px;margin:auto;padding:70px 50px;gap:90px;align-items:center}.login-copy h1{font-size:54px}.login-copy .logo{width:220px}.login-art{height:175px;border:1px solid #29496d;border-radius:18px;margin-top:35px;padding:26px;background:radial-gradient(ellipse at 80% 20%,#154b73,transparent 65%),#101e34}.login-art b{font-family:'Space Grotesk';font-size:25px}.login-card{padding:32px;background:#101b2d;border:1px solid var(--line);border-radius:18px}.login-card form{display:grid;gap:16px}.login-card details{margin-top:24px}.login-card h2{margin-top:0}.link-box{background:#0a1526;border:1px solid #38557a;border-radius:12px;padding:20px;overflow-wrap:anywhere}.link-box input{font-size:12px;margin:12px 0}#notice{position:fixed;z-index:100;right:22px;bottom:22px;max-width:450px;background:#193855;color:#fff;padding:16px 22px;border:1px solid #428dbd;border-radius:12px;box-shadow:0 8px 40px #0009}#notice.error{background:#48232c;border-color:#905765}.loading{padding:70px;text-align:center;color:var(--muted)}dialog{color:var(--text);background:#101b2d;border:1px solid #426189;border-radius:16px;padding:30px;max-width:640px;width:calc(100% - 40px)}dialog::backdrop{background:#020714cc}dialog h2{margin-top:0}.modal-close{float:right}.progress{height:6px;background:#24334a;border-radius:9px;margin:16px 0}.progress span{height:100%;display:block;background:#3eb3ff;border-radius:9px}.learn{display:grid;grid-template-columns:260px 1fr;gap:30px}.learn-index{position:sticky;top:20px;align-self:start;max-height:86vh;overflow:auto}.learn-index button{width:100%;justify-content:flex-start;text-align:left;margin:4px 0;background:transparent;font-size:12px}.learn-index button.selected{background:#153d63;border-color:#479bd2}.lesson{padding:30px;background:#101b2d;border-radius:18px;border:1px solid var(--line);min-height:520px}.lesson h1{font-size:33px}.lesson p,.lesson li{font-size:15px;line-height:1.8}.lesson article{padding:17px;border:1px solid #2d405c;border-radius:10px;margin:12px 0}.lesson article h3{margin-top:0}.lesson blockquote{border-left:3px solid var(--accent);background:#172b43;padding:17px;margin:20px 0;color:#bad5ee}.lesson .options{display:grid;gap:12px;margin:22px 0}.lesson .options button{justify-content:flex-start;text-align:left;padding:17px}.lesson .result{padding:18px;background:#153630;border:1px solid #38745e;border-radius:12px;margin:16px 0}.lesson .result.error{background:#402530;border-color:#834457}.lesson select{max-width:340px}.lesson iframe{width:100%;height:600px;border:0;border-radius:12px}.lesson-nav{display:flex;justify-content:space-between;gap:14px;margin-top:24px}.exam-question{margin:20px 0;padding:20px;border:1px solid #314968;border-radius:12px}.exam-question label{display:flex;align-items:flex-start;gap:10px;padding:8px;font-size:14px}.exam-question input{width:auto}.verify{max-width:660px;margin:60px auto;padding:25px}.note{padding:15px;background:#0d2338;border-left:3px solid #448fc1;margin:20px 0}.compact{font-size:12px;overflow-wrap:anywhere}.row-actions{display:flex;gap:6px}.chart-bars{display:grid;gap:18px}.chart-bar{height:9px;background:#283a52;border-radius:8px;overflow:hidden}.chart-bar i{display:block;background:#389fea;height:100%}.list-line{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:14px 0}.list-line:last-child{border:0}
@media(max-width:1050px){.cards{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:repeat(2,1fr)}.cols{grid-template-columns:1fr}.login{gap:35px;padding:50px 30px}.login-copy h1{font-size:42px}.learn{grid-template-columns:200px 1fr}.lesson{padding:22px}}
@media(max-width:760px){.layout{grid-template-columns:1fr}.sidebar{position:relative;height:auto;padding:18px;border-right:0;border-bottom:1px solid var(--line)}.sidebar .logo{width:140px}.brand-caption{margin:6px 0 14px}.sidebar nav{display:flex;overflow:auto}.sidebar nav button{white-space:nowrap;padding:8px 11px}.sidebar-bottom{display:none}.topbar{padding:15px;flex-wrap:wrap}.identity{font-size:12px}.topbar select{max-width:100%}main.content{padding:24px 16px 70px}.page-head{display:block}h1{font-size:31px}.grid,.form-grid{grid-template-columns:1fr}.cards{gap:10px}.card{padding:18px}.card .number{font-size:26px}.login{display:block;padding:32px 18px}.login-copy h1{font-size:37px}.login-copy .lead{font-size:14px}.login-art{display:none}.login-card{margin-top:30px;padding:22px}.learn{grid-template-columns:1fr}.learn-index{position:static;max-height:210px}.lesson{padding:20px;min-height:0}.lesson h1{font-size:28px}.lesson iframe{height:390px}.lesson-nav{flex-wrap:wrap}.panel{padding:18px}.verify{margin:25px auto}.page-head .toolbar{margin-top:16px}}
.sidebar{min-width:0}.cols{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.panel{min-width:0}@media(max-width:1050px){.cols{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){.layout{grid-template-columns:minmax(0,1fr)}.sidebar nav{min-width:0}.learn{grid-template-columns:minmax(0,1fr)}}
