
:root{
 --bg:#f5f9fc;--surface:#ffffff;--surface2:#eef8f7;--text:#18324a;--muted:#61758a;
 --primary:#2878c8;--primary2:#1e5f9f;--teal:#159a91;--teal2:#0f766e;
 --amber:#f2b84b;--border:#d9e6ee;--danger:#c94b55;--success:#27856f;
 --shadow:0 12px 34px rgba(37,74,103,.10);--radius:18px;
}
*{box-sizing:border-box}
html{background:var(--bg)}
body{background:var(--bg)!important;color:var(--text)!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important}
body:before{display:none!important}
a{color:var(--primary)}
.sk-shell{display:grid!important;grid-template-columns:250px minmax(0,1fr)!important;min-height:100vh!important}
.sk-side{width:250px!important;position:fixed!important;left:0!important;top:0!important;bottom:0!important;height:100vh!important;padding:26px 18px!important;background:#eaf6f5!important;border-right:1px solid var(--border)!important;overflow-y:auto!important}
.sk-logo{font-size:29px!important;font-weight:900!important;color:#135f72!important;letter-spacing:-.03em}
.sk-sub{color:var(--teal2)!important;font-size:11px!important;letter-spacing:.12em;font-weight:800}
.sk-nav{margin-top:30px!important;display:grid!important;gap:7px!important}
.sk-nav a{display:flex!important;align-items:center!important;gap:10px!important;color:#34566b!important;text-decoration:none!important;padding:11px 12px!important;border-radius:12px!important;font-weight:700}
.sk-nav a:hover,.sk-nav a.active{background:#fff!important;color:var(--primary2)!important;box-shadow:0 5px 18px rgba(37,74,103,.08)!important}
.sk-content{grid-column:2!important;min-width:0!important;width:100%!important;background:var(--bg)!important;min-height:100vh!important}
.sk-page,.main.sk-content>.sk-page,.wrap.sk-page{width:100%!important;max-width:1180px!important;margin:0 auto!important;padding:28px 34px!important}
.wrap.sk-page .sk-page{padding:0!important}
.sk-unified-head,.hero{min-height:126px!important;background:linear-gradient(135deg,#e8f5ff,#e7f8f5)!important;border:1px solid #cde5e8!important;border-radius:22px!important;padding:23px 25px!important;margin:0 0 22px!important;box-shadow:var(--shadow)!important}
.sk-unified-head .eyebrow,.hero .eyebrow{font-size:11px!important;font-weight:900!important;letter-spacing:.10em!important;color:var(--teal2)!important;text-transform:uppercase}
.sk-unified-head h1,.hero h1,h1{color:#173d59!important}
.sk-unified-head p,.muted,.hero p{color:var(--muted)!important}
.card,.box,.panel,.stat,.year,.topic,.action,.tool{background:var(--surface)!important;color:var(--text)!important;border:1px solid var(--border)!important;box-shadow:0 8px 24px rgba(37,74,103,.07)!important}
.card,.box,.panel,.stat,.year,.action,.tool{border-radius:var(--radius)!important}
.action,.tool{transition:.18s ease}
.action:hover,.tool:hover{transform:translateY(-2px);border-color:#9fcbd1!important;box-shadow:var(--shadow)!important}
.tool h2,.box h2,.panel h2,.card h2,.year h2{color:#204a65!important}
.cta,button,.btn{background:var(--primary)!important;color:#fff!important;border:0!important;border-radius:10px!important}
button:hover,.btn:hover,.cta:hover{background:var(--primary2)!important}
input,textarea,select{background:#fff!important;color:var(--text)!important;border:1px solid #c9dbe5!important;border-radius:10px!important}
input:focus,textarea:focus,select:focus{outline:3px solid rgba(40,120,200,.13)!important;border-color:var(--primary)!important}
.pill{background:#d9f1ee!important;color:#116b68!important}
.logout{color:var(--primary2)!important;border:1px solid #b8d7e5!important;background:#fff!important}
.bar{background:#dfeaf0!important}.bar span{background:linear-gradient(90deg,var(--teal),var(--primary))!important}
.ok{color:var(--success)!important}
table{background:#fff;border-radius:14px;overflow:hidden}
th{color:#31566d;background:#edf6f8}td,th{border-color:#e1ebf0!important}
pre{background:#f1f6f8!important;color:var(--text)!important}
@media(max-width:900px){
 .sk-shell{display:block!important}.sk-side{position:relative!important;width:100%!important;height:auto!important;padding:14px!important;border-right:0!important;border-bottom:1px solid var(--border)!important}
 .sk-nav{margin-top:13px!important;display:flex!important;overflow:auto!important}.sk-nav a{white-space:nowrap!important}
 .sk-content{width:100%!important}.sk-page,.main.sk-content>.sk-page,.wrap.sk-page{max-width:100%!important;padding:18px!important}
}
