:root{--navy:#163a6b;--navy-dark:#0f2a50;--navy-soft:#1f4e8f;--teal:#1796a3;--teal-soft:#e3f2f4;--teal-ink:#0d6b75;--green:#7cb342;--ink:#273341;--grey:#6a7684;--border:#e2e8f0;--bg:#f4f7fa;--bg-2:#eef3f8;--card:#fff;--side:var(--navy-dark);--red:#c0392b;--sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--accent:var(--teal);--line:var(--border);--cream:var(--bg);--cream-2:var(--bg-2);--tint:var(--teal-soft);--maroon:var(--navy);--gold:var(--teal);color:#273341;color:var(--ink);font:15px/1.55 Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font:15px/1.55 var(--sans)}*{box-sizing:border-box}body{background:#f4f7fa;background:var(--bg);margin:0}h1{font:700 26px/1.15 Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font:700 26px/1.15 var(--sans);letter-spacing:-.01em;margin:0 0 6px}h1,h2{color:#163a6b;color:var(--navy)}h2{font:700 19px/1.2 Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font:700 19px/1.2 var(--sans);margin:0 0 12px}h3{color:#163a6b;color:var(--navy);font-size:14px;font-weight:700;margin:16px 0 6px}p{margin:0 0 8px}a{color:#1f4e8f;color:var(--navy-soft)}.muted{color:#6a7684;color:var(--grey);font-size:13px}.small{font-size:11px}.err,.error{color:#c0392b;color:var(--red);font-size:13px;margin:8px 0 0}.eyebrow{color:#0d6b75;color:var(--teal-ink);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}button{background:#163a6b;background:var(--navy);border:none;border-radius:8px;color:#fff;cursor:pointer;font:600 14px Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font:600 14px var(--sans);padding:9px 16px;transition:background .15s}button:hover:not(:disabled){background:#1f4e8f;background:var(--navy-soft)}button.secondary{background:#e3f2f4;background:var(--teal-soft);color:#0d6b75;color:var(--teal-ink)}button.secondary:hover:not(:disabled){background:#d2e9ec}button.link{background:none;border-radius:0;color:#1f4e8f;color:var(--navy-soft);font-weight:500;padding:4px 0;text-decoration:underline}button:disabled{cursor:default;opacity:.5}input,select,textarea{background:#fff;background:var(--card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;color:#273341;color:var(--ink);font-family:inherit;font-size:14px;padding:9px 11px;width:100%}input:focus,select:focus,textarea:focus{border-color:#1796a3;border-color:var(--teal);outline:2px solid #1796a34d}label{color:#6a7684;color:var(--grey);display:block;font-size:13px;font-weight:600;margin:12px 0 4px}.card{background:#fff;background:var(--card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;box-shadow:0 1px 2px #102a500a;margin-top:16px;padding:24px}.row{display:flex;gap:12px}.row>*{flex:1 1;min-width:0}@media (max-width:640px){.row{flex-direction:column}}.wrap{margin:48px auto;max-width:460px;padding:0 16px}.table{border-collapse:collapse;width:100%}.table td,.table th{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);font-size:14px;padding:9px 12px;text-align:left;white-space:nowrap}.table th{color:#6a7684;color:var(--grey);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.table tbody tr:hover td{background:#eef3f8;background:var(--bg-2)}.table tr.clickable{cursor:pointer}.table tr.clickable:hover td{background:#e3f2f4;background:var(--teal-soft)}.table-wrap{overflow-x:auto}.profile-sheet .table-wrap{overflow:visible}.profile-sheet .table{table-layout:fixed;width:100%}.profile-sheet .table td,.profile-sheet .table th{overflow-wrap:anywhere;white-space:normal}.table.fixed{table-layout:fixed;width:100%}.table.fixed td,.table.fixed th{overflow-wrap:anywhere;white-space:normal}@page{size:A4;margin:.5in .75in 1in}@media print{.no-print,.reopen-btn,.scrim,.sidebar,.topbar{display:none!important}.app-shell{display:block!important;height:auto!important}.content{overflow:visible!important;padding:0!important}body{background:#fff!important}.profile-sheet{border:none!important;box-shadow:none!important;margin:0!important;max-width:none!important;min-height:0!important;padding:0!important;width:auto!important}.profile-sheet .table td,.profile-sheet .table th{white-space:normal}.profile-sheet thead{display:table-header-group}.profile-sheet tr{break-inside:avoid;page-break-inside:avoid}.profile-sheet table{break-inside:auto;page-break-inside:auto}.profile-sheet h3{break-after:avoid;page-break-after:avoid}}.grid-scroll{background:#fff;background:var(--card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;flex:1 1;min-height:160px;overflow:auto}.grid-scroll table{border-collapse:initial;border-spacing:0;min-width:100%;width:max-content}.grid-scroll td,.grid-scroll th{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);font-size:14px;padding:9px 12px;white-space:nowrap}.grid-scroll thead th{background:#eef3f8;background:var(--bg-2);color:#6a7684;color:var(--grey);cursor:pointer;font-size:11px;font-weight:700;letter-spacing:.05em;position:sticky;text-transform:uppercase;top:0;z-index:2}.grid-scroll tbody tr{cursor:pointer}.grid-scroll tbody tr:hover td{background:#e3f2f4;background:var(--teal-soft)}.app-shell{display:flex;height:100svh}.sidebar{background:#0f2a50;background:var(--side);color:#cdd8e6;display:flex;flex-direction:column;flex-shrink:0;padding:18px 14px;width:230px}.brand{align-items:center;color:#fff;display:flex;font:700 17px Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font:700 17px var(--sans);gap:10px;margin:2px 4px 20px}.brand img{background:#fff;border-radius:8px;height:38px;object-fit:contain;padding:3px;width:38px}.nav-link{border-radius:8px;color:#aebdd0;display:block;font-size:14px;margin-bottom:3px;padding:9px 14px;text-decoration:none}.nav-link:hover{background:#ffffff0f;color:#fff}.nav-link.active{background:#1f4e8f;background:var(--navy-soft);color:#fff;font-weight:600}.sidebar-footer{border-top:1px solid #ffffff1f;margin-top:auto;padding-top:14px}.sidebar-footer .muted{color:#9fb0c6}.sidebar-footer button.link{color:#dce6f2}.sidebar-collapse{background:none;border:0;border-radius:6px;color:#9fb0c6;cursor:pointer;font-size:18px;margin-left:auto;padding:2px 6px}.sidebar-collapse:hover{background:#ffffff0f;color:#fff}.content{flex:1 1;min-width:0;overflow:auto;padding:24px 28px}.page-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px}.page-fill{display:flex;flex-direction:column;height:100%;min-height:0}.page-fill>.card{display:flex;flex:1 1;flex-direction:column;min-height:0}.card-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.filter-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:8px}.app-shell.collapsed .sidebar,.reopen-btn{display:none}.app-shell.collapsed .reopen-btn{align-items:center;background:#163a6b;background:var(--navy);border:0;border-radius:8px;box-shadow:0 2px 8px #102a5040;color:#fff;cursor:pointer;display:inline-flex;gap:6px;left:12px;padding:8px 12px;position:fixed;top:12px;z-index:40}.app-shell.collapsed .content{padding-top:56px}.popover{background:#fff;background:var(--card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 40px #102a502e;max-height:70vh;overflow:auto;padding:16px;position:fixed;width:300px;z-index:60}.popover-backdrop{inset:0;position:fixed;z-index:59}.check-row{align-items:center;display:flex;font-size:14px;gap:8px;padding:4px 0}.check-row input{width:auto}.scrim,.topbar{display:none}@media (max-width:860px){.app-shell{flex-direction:column;height:auto;min-height:100svh}.content{overflow:visible}.page-fill{height:auto}.grid-scroll{flex:none;max-height:70vh}.app-shell.collapsed .sidebar{display:flex}.app-shell.collapsed .reopen-btn{display:none}.app-shell.collapsed .content{padding-top:18px}.topbar{align-items:center;background:#0f2a50;background:var(--side);color:#fff;display:flex;font:700 16px Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font:700 16px var(--sans);gap:12px;padding:12px 16px;position:sticky;top:0;z-index:30}.menu-toggle{background:none;border:0;border-radius:8px;color:#fff;cursor:pointer;font-size:22px;padding:4px 8px}.sidebar{bottom:0;left:0;overflow-y:auto;position:fixed;top:0;transform:translateX(-100%);transition:transform .2s ease;width:250px;z-index:50}.sidebar.open{box-shadow:0 0 50px #00000073;transform:none}.scrim.show{background:#00000073;display:block;inset:0;position:fixed;z-index:40}.content{padding:16px}}