:root{--brand:#07376a;--accent:#168bbc;--ink:#17344c;--muted:#5c7184;--border:#dce6ee;--bg:#f4f7fb}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:#086e9f;text-decoration:none}a:hover{text-decoration:underline}button,.button{font:inherit;font-size:14px;font-weight:650;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--brand);color:#fff;border:1px solid transparent;border-radius:8px;padding:11px 19px;cursor:pointer;line-height:1.4;text-decoration:none}.button:hover,button:hover{filter:brightness(.95);text-decoration:none}button:disabled{opacity:.55;cursor:default}.secondary{background:#fff;color:var(--brand);border-color:var(--border)}.light{background:#fff;color:var(--brand)}input,select,textarea{font:inherit;border:1px solid #b9cbd9;border-radius:7px;padding:10px 12px;width:100%;color:var(--ink);background:#fff}input[type=color]{height:45px}input[type=checkbox],input[type=radio]{width:18px;height:18px;flex-shrink:0;accent-color:var(--brand)}label{display:block;margin:13px 0;font-size:14px;font-weight:600}label input,label textarea,label select{margin-top:6px}input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #65badb;outline-offset:2px}h1{font-size:clamp(25px,2.7vw,36px);letter-spacing:-.035em;line-height:1.2;margin:10px 0 24px;font-weight:700}h2{font-size:25px;line-height:1.3;letter-spacing:-.025em;margin:0 0 16px}h3{font-size:19px;line-height:1.4;margin:20px 0 10px}p{margin:10px 0 17px}small{font-size:12px}.eyebrow{color:#207a9b;font-size:12px;font-weight:750;letter-spacing:.08em}.muted,.meta{color:var(--muted);font-size:13px}.preline{white-space:pre-wrap;overflow-wrap:anywhere}.sidebar{position:fixed;inset:0 auto 0 0;width:254px;background:#fff;border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:auto;z-index:10;padding:18px 14px}.brand{display:block;text-align:center}.brand img{display:block;width:180px;height:145px;object-fit:contain;margin:auto}.brand span{font-size:10px;letter-spacing:.22em;color:#627589;font-weight:750}.side-search{padding:10px 7px}.side-search label{font-size:12px;color:var(--muted)}.side-search>div{display:flex}.side-search input{font-size:13px;min-width:0;margin:0;border-radius:7px 0 0 7px}.side-search button{border-radius:0 7px 7px 0;padding:8px 10px}.sidebar nav small{display:block;font-size:11px;letter-spacing:.12em;font-weight:700;color:#738495;margin:24px 15px 8px}.sidebar nav a{display:block;color:#405b70;padding:10px 16px;border-radius:7px;font-size:14px;margin:3px 0}.sidebar nav a[aria-current=page]{background:#eaf3fa;color:var(--brand);font-weight:700}.sidebar nav a:hover{background:#f0f6fa;text-decoration:none}.side-bottom{margin-top:auto;padding:22px 15px 0}.side-bottom p{font-size:13px;color:#7790a5}.side-bottom small{display:block}.side-bottom form{margin-top:12px}.main{margin-left:254px}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 40px;font-size:13px}.topbar b{padding:0 10px;color:#bec8cf}main#content{padding:35px 40px;max-width:1500px;margin:auto;min-height:80vh}.hero{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:40px;padding:42px;background:linear-gradient(115deg,var(--brand),#07557e);color:#fff;border-radius:17px;overflow:hidden}.hero h2{font-size:clamp(32px,3.6vw,48px);line-height:1.16;margin:22px 0}.hero p{color:#d0e3f1;max-width:470px}.hero-kicker{font-size:11px;letter-spacing:.12em;color:#a5daf0}.hero-foot{font-size:12px;margin-top:24px!important}.hero-logo{text-align:center}.hero-logo img{width:100%;max-width:280px;border-radius:18px}.hero-logo span{display:block;letter-spacing:.18em;font-size:10px;margin-top:14px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0 36px}.stats article{background:#fff;border:1px solid var(--border);border-radius:10px;padding:18px 22px;display:flex;gap:18px;align-items:center}.stats strong{font-size:32px;color:var(--brand)}.stats span{font-size:13px;color:var(--muted)}.panel{background:#fff;border:1px solid var(--border);border-radius:13px;padding:26px;margin:0 0 22px;min-width:0}.panel h2:first-child{margin-top:0}.official-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.official-grid .panel{border-top:3px solid var(--accent);display:flex;flex-direction:column}.official-grid a{margin-top:auto;font-size:13px;font-weight:650}.official-grid p{font-size:14px;color:var(--muted)}.section-title{margin:36px 0 20px}.section-title h2{margin-top:8px}.normative{background:#e6f0f7;border-radius:12px;padding:25px;margin:22px 0}.normative p{font-size:14px}.categories{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.categories a{font-size:14px;font-weight:600;color:var(--brand);display:flex;justify-content:space-between;margin:0}.company-info{margin-top:30px}.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.course-card{border:1px solid var(--border);border-radius:13px;background:#fff;overflow:hidden;display:flex;flex-direction:column}.course-cover{height:145px;background:linear-gradient(125deg,#d9eaf7,#ebf5f8);position:relative;padding:15px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;font-size:11px;color:#407499}.course-cover .pulse{position:absolute;inset:40px 0 auto;text-align:center;font-size:32px;letter-spacing:-8px;color:#2b86b4}.course-body{padding:23px;display:flex;flex-direction:column;flex:1}.course-body .eyebrow{font-size:10px}.course-body h3{margin:10px 0 20px}.course-link{border-top:1px solid var(--border);padding-top:16px;margin-top:auto;font-weight:650;font-size:14px;display:flex;justify-content:space-between}.badge{display:inline-block;background:#edf2f7;color:#536a7e;padding:5px 9px;border-radius:6px;font-size:11px;line-height:1.4;align-self:flex-start}.approved{background:#def4e9;color:#1a7250}.pending{background:#fff0d7;color:#986015}.suspended{background:#fae6e6;color:#9a3030}.catalog-search{margin:20px 0}.catalog-search>div{display:flex;gap:12px}.catalog-search input{flex:1}.heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-top:25px}.heading h1{margin-bottom:16px}.heading .button{flex-shrink:0}.course-layout{display:grid;grid-template-columns:2fr 1fr;gap:22px}.two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.two-columns .two-columns{gap:12px}.two-columns>label{margin:0 0 15px}.check{display:flex;align-items:center;gap:12px;line-height:1.5;font-weight:400}.check input{margin:0}.check span{min-width:0}fieldset{border:1px solid var(--border);border-radius:9px;padding:18px;margin:22px 0}legend{padding:0 7px;font-weight:650}summary{font-weight:650;cursor:pointer}details.panel summary{font-size:18px}.lesson-text{margin:22px 0;font-size:16px;line-height:1.85}progress{width:100%;height:12px;accent-color:var(--accent)}.editor{max-width:950px}.editor-block{background:#f8fafc}.savebar{position:sticky;bottom:0;background:#fff;padding:15px;border:1px solid var(--border);border-radius:10px;margin-top:20px}.permission-list{max-height:420px;overflow:auto;border:1px solid var(--border);border-radius:8px;padding:12px 16px}.permission-item{padding:10px;border-bottom:1px solid var(--border);margin:0}.permission-item small{display:block;color:var(--muted);margin-top:4px}.student-list{max-height:350px;overflow:auto}.student-list a{display:block;padding:14px;border-bottom:1px solid var(--border)}.student-list small{display:block;color:var(--muted)}.request{padding:16px 0;border-bottom:1px solid var(--border)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:13px;vertical-align:top;border-bottom:1px solid var(--border)}th{font-size:12px;color:var(--muted)}td button{font-size:12px;padding:8px}.actions{display:flex;gap:15px;flex-wrap:wrap}.error,.success{padding:17px 22px;border-radius:10px;margin-bottom:24px}.error{background:#fbe8e8;color:#912b33}.success{background:#e2f3e9;color:#1b6745}.auth{max-width:570px;margin:30px auto;padding:35px}.auth-logo{width:180px;display:block;margin:auto}.install{padding:30px 20px}.certificate{background:#fff;border:8px double var(--brand);padding:50px;text-align:center;max-width:1000px;margin:20px auto}.certificate img{width:190px}.certificate h1{letter-spacing:.2em;color:var(--brand);margin:25px 0}.certificate h2{font-size:32px;margin-top:25px}.certificate h3{font-size:25px}.certificate small{display:block}.signature{margin:50px auto 24px;display:flex;flex-direction:column;border-top:1px solid #8aa0b5;padding-top:12px;max-width:300px}.print-toolbar{text-align:right}footer{padding:25px 40px;font-size:12px;color:var(--muted);border-top:1px solid var(--border)}.skip{position:absolute;left:-9999px;z-index:50;background:#fff;padding:15px}.skip:focus{left:10px;top:10px}.mobile-toggle{display:none}[hidden]{display:none!important}@media(max-width:1200px){.course-grid,.official-grid,.categories{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{gap:24px;padding:30px}.main #content{padding:30px 25px}.stats article{display:block}.stats span{display:block}}@media(max-width:850px){.sidebar{transform:translateX(-100%);box-shadow:5px 0 25px #1234;transition:transform .2s}.sidebar.mobile-open{transform:translateX(0);top:66px}.main{margin:0}.topbar{position:sticky;top:0;z-index:20;padding:0 18px;height:66px}.topbar>.badge{display:none}.mobile-toggle{display:inline-flex}.hero{grid-template-columns:1fr}.hero-logo{display:none}.course-layout{grid-template-columns:1fr}.two-columns{grid-template-columns:1fr}.heading{display:block}.heading>.button{margin-bottom:20px}}@media(max-width:520px){main#content{padding:24px 16px!important}.course-grid,.official-grid,.categories{grid-template-columns:1fr}.stats{gap:8px}.stats article{padding:12px}.stats strong{font-size:24px}.stats span{font-size:11px}.panel{padding:20px}.hero{padding:27px}.topbar{font-size:11px}.auth{padding:24px}.certificate{padding:20px}.certificate h2{font-size:24px}.catalog-search>div{gap:7px}footer{padding:22px 16px}}@media print{@page{size:A4 landscape;margin:12mm}body{background:#fff}.sidebar,.topbar,footer,.print-toolbar,.skip,.error,.success{display:none!important}.main{margin:0}main#content{padding:0;min-height:0}.certificate{margin:0;max-width:none;border:6px double #07376a;padding:12mm;height:auto;break-inside:avoid}.certificate img{width:140px}.certificate h1{font-size:27px;margin:12px}.certificate h2{font-size:26px}.certificate h3{font-size:22px}.certificate p{margin:6px}.signature{margin:24px auto 16px}}
