/* Additive workspace skin. The existing app.css remains required. */
.workspace {--ws-ink:#17334b;--ws-muted:#526678;--ws-line:#dce5ed;background:#f3f6fa;color:var(--ws-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin:0}
.workspace *, .workspace *::before, .workspace *::after{box-sizing:border-box}
.workspace .layout{display:grid;grid-template-columns:264px minmax(0,1fr);min-height:100vh}
.workspace .sidebar{position:sticky;top:0;left:auto;width:auto;height:100vh;overflow-y:auto;background:#102e45;color:#fff;padding:26px 16px;display:flex;flex-direction:column;gap:16px}
.workspace .brand{display:flex;align-items:center;gap:12px;font-size:17px;line-height:1.4;color:#fff;text-decoration:none;font-weight:750}
.workspace .brand img{object-fit:contain;border-radius:8px;background:#fff;flex-shrink:0}
.workspace-caption{font-size:12px;color:#b7cddd;margin:0 8px}
.workspace .sidebar nav{display:block}
.workspace-nav-group{margin-bottom:22px}
.workspace-nav-label{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#b7cddd;margin:0 10px 8px;font-weight:700}
.workspace .sidebar nav a{display:block;padding:11px 12px;margin:3px 0;border-radius:8px;color:#e3edf5;text-decoration:none;font-size:14px;line-height:1.4;border-left:3px solid transparent}
.workspace .sidebar nav a:hover{background:#23475f}
.workspace .sidebar nav a[aria-current="page"]{background:#22516a;border-left-color:#60d4c2;color:#fff;font-weight:700}
.workspace .nav-bottom{position:static;margin-top:auto;border-top:1px solid #355166;padding:18px 10px 0;display:grid;gap:10px;font-size:13px;color:#dce9f3}
.workspace .nav-bottom a,.workspace .nav-bottom .link{color:#dce9f3;font-size:13px}
.workspace .nav-bottom form{margin:0}
.workspace .content{width:auto;min-width:0;max-width:none;margin:0;padding:30px clamp(18px,3vw,48px)}
.workspace .top{display:flex;align-items:center;gap:14px;margin:0 0 26px;padding:0 0 20px;border-bottom:1px solid var(--ws-line);background:transparent}
.workspace .top h1{font-size:clamp(23px,2.2vw,32px);line-height:1.2;margin:0 0 8px;color:var(--ws-ink)}
.workspace .top small{font-size:13px;color:var(--ws-muted)}
.workspace .panel{background:#fff;border:1px solid var(--ws-line);border-radius:12px;padding:22px;margin:0 0 22px;box-shadow:0 3px 12px #17334b04}
.workspace .panel h2,.workspace-actions h2{font-size:18px;margin-top:0;line-height:1.4}
.workspace .toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.workspace .table-scroll{max-width:100%;overflow-x:auto;border-radius:8px}
.workspace table{width:100%;border-collapse:collapse}
.workspace th{text-align:left;background:#f1f5f9;color:#355168;font-size:12px}
.workspace td,.workspace th{padding:12px;border-bottom:1px solid var(--ws-line)}
.workspace td{vertical-align:top}
.workspace input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),.workspace select,.workspace textarea{max-width:100%;font:inherit;border-radius:7px;border:1px solid #aebfcd;padding:10px;background:#fff;color:var(--ws-ink)}
.workspace textarea{resize:vertical}
.workspace :focus-visible{outline:3px solid #168477;outline-offset:3px}
.workspace .sidebar :focus-visible{outline-color:#73e4d2}
.workspace .dashboard-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin:24px 0}
.workspace .dashboard-kpi{display:flex;flex-direction:column;gap:9px;padding:20px;background:#fff;border:1px solid var(--ws-line);border-radius:12px;text-decoration:none;color:var(--ws-ink)}
.workspace .dashboard-kpi strong{font-size:32px;line-height:1.1}
.workspace .dashboard-kpi small{color:var(--ws-muted)}
.workspace .dashboard-kpi-alert{border-left:4px solid #be7415;background:#fffaf1}
.workspace-actions{background:#e8f3f2;border:1px solid #c7e2df;padding:20px;border-radius:12px;margin-bottom:22px}
.workspace-actions>div{display:flex;flex-wrap:wrap;gap:10px}
.workspace-actions a{display:inline-flex;align-items:center;gap:14px;padding:11px 15px;background:#fff;border:1px solid #b5d3ce;border-radius:7px;text-decoration:none;color:#18534c;font-size:14px;font-weight:650}
.workspace-actions a:hover{background:#f1fbf9}
.workspace-institution{border:1px solid var(--ws-line);border-radius:10px;background:#fff;padding:16px;margin:24px 0}
.workspace-institution summary{cursor:pointer;font-weight:600}
.workspace-institution[open] summary{margin-bottom:16px}
.workspace-skip{position:fixed;top:-100px;left:16px;z-index:1000;background:#fff;color:#17334b;padding:12px;border:2px solid #168477;border-radius:6px}
.workspace-skip:focus{top:12px}
.workspace-menu{display:none}
.workspace .site-footer{margin-top:32px;font-size:12px;color:var(--ws-muted);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}
@media(max-width:900px){
 .workspace .layout{display:block}
 .workspace .sidebar{position:static;height:auto;width:100%;padding:18px}
 .workspace .sidebar nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
 .workspace .sidebar[hidden]{display:none}
 .workspace .content{padding:20px 16px}
 .workspace .top{align-items:flex-start}
 .workspace-menu:not([hidden]){display:inline-block;background:#fff;color:#17334b;border:1px solid #aebfcd;border-radius:7px;padding:10px 12px;cursor:pointer;font:inherit}
 .workspace .top h1{font-size:23px}
 .workspace .panel{padding:16px}
 .workspace-actions a{flex:1 1 200px;justify-content:space-between}
}
@media print{
 .workspace .sidebar,.workspace-menu,.workspace-skip,.workspace-actions{display:none!important}
 .workspace .layout{display:block}.workspace .content{padding:0}.workspace{background:#fff}
 .workspace .panel{box-shadow:none;break-inside:avoid}.workspace .table-scroll{overflow:visible}
}
