:root{--bg:#faf9fd;--surface:#fff;--surface-soft:#fbf9ff;--border:#e6def2;--text:#251735;--muted:#73677f;--nav:#4d149f;--nav-deep:#381076;--nav-soft:#ffffff1f;--primary:#6425cf;--primary-strong:#5117b5;--primary-bright:#7a2ce5;--primary-soft:#f2ebff;--danger:#b42318;--danger-soft:#fef3f2;--warning:#a15c07;--warning-soft:#fff8e8;--success:#18794e;--success-soft:#edf8f2;--shadow:0 1px 2px #411e640a, 0 10px 30px #411e640e}*{box-sizing:border-box}html{background:var(--bg)}body{color:var(--text);background:var(--bg);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.app-frame{grid-template-columns:252px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:linear-gradient(180deg,var(--nav) 0%,var(--nav-deep) 100%);color:#fff;flex-direction:column;gap:26px;height:100vh;padding:24px 18px;display:flex;position:sticky;top:0}.brand,.login-brand{align-items:center;gap:12px;display:flex}.brand-mark{letter-spacing:-.04em;background:var(--primary);color:#fff;border-radius:12px;place-items:center;width:44px;height:44px;font-size:20px;font-weight:850;display:grid;box-shadow:0 8px 20px #6425cf2e}.sidebar .brand-mark{color:var(--nav);box-shadow:none;background:#fff}.brand strong,.login-brand strong{letter-spacing:-.02em;font-size:19px;display:block}.brand span,.login-brand span{color:#ddd0f5;margin-top:3px;font-size:12px;display:block}.login-brand span{color:var(--muted)}.sidebar nav{gap:6px;display:grid}.sidebar nav a{color:#f2ebff;border-radius:9px;padding:11px 12px;font-weight:690;text-decoration:none}.sidebar nav a:hover,.sidebar nav a:focus-visible{background:var(--nav-soft);outline-offset:1px;outline:2px solid #ffffff47}.sidebar-note{background:#ffffff12;border:1px solid #ffffff2e;border-radius:11px;margin-top:auto;padding:13px}.sidebar-note strong,.sidebar-note span{display:block}.sidebar-note span{color:#ddd0f5;margin-top:4px;font-size:12px;line-height:1.45}.main{min-width:0}.topbar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;justify-content:space-between;align-items:center;height:70px;padding:0 32px;display:flex}.org-name{font-weight:760}.user-chip{align-items:center;gap:16px;display:flex}.user-chip strong,.user-chip span{display:block}.user-chip strong{font-size:14px}.user-chip span{color:var(--muted);margin-top:2px;font-size:12px}.link-button{color:var(--primary);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px;font-weight:760}.link-button:hover,.link-button:focus-visible{background:var(--primary-soft);outline:none}.content{max-width:1500px;margin:0 auto;padding:32px 32px 52px}.eyebrow,.login-kicker{color:var(--primary);text-transform:uppercase;letter-spacing:.09em;margin-bottom:9px;font-size:12px;font-weight:850}.page-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}h1{letter-spacing:-.035em;margin:0;font-size:32px;line-height:1.12}h2{letter-spacing:-.025em;margin:0;font-size:20px}h3{margin:0}p{line-height:1.55}.muted{color:var(--muted)}.small{font-size:12px}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0 24px;display:grid}.metric-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:13px;padding:19px;position:relative;overflow:hidden}.metric-card:before{content:"";background:#d9c7f8;width:4px;position:absolute;inset:0 auto 0 0}.metric-card.metric-danger:before{background:#e4564b}.metric-label{color:var(--muted);font-size:13px;font-weight:720}.metric-value{letter-spacing:-.035em;margin-top:8px;font-size:31px;font-weight:720}.metric-note{color:var(--muted);margin-top:4px;font-size:12px}.panel{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:13px;margin-bottom:20px;overflow:hidden}.panel-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;padding:18px 19px;display:flex}.panel-body{padding:19px}.panel-grid{grid-template-columns:1.4fr .8fr;gap:20px;display:grid}.table-wrap{width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%}th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.065em;background:var(--surface-soft);border-bottom:1px solid var(--border);padding:11px 14px;font-size:11px}td{vertical-align:middle;border-bottom:1px solid #f0ebf6;padding:13px 14px;font-size:14px}tbody tr:hover{background:#fdfbff}tr:last-child td{border-bottom:0}.row-link{color:var(--primary);font-weight:760;text-decoration:none}.row-link:hover{text-decoration:underline}.status{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;padding:5px 9px;font-size:12px;font-weight:760;display:inline-flex}.status-overdue{color:var(--danger);background:var(--danger-soft);border-color:#fecdca}.status-due-soon{color:var(--warning);background:var(--warning-soft);border-color:#f3d9a9}.status-upcoming{color:#5b21b6;background:#f4efff;border-color:#d9c8fa}.status-current,.status-complete{color:var(--success);background:var(--success-soft);border-color:#b8e5ce}.status-unassigned,.status-standard{color:#5f5668;background:#f5f2f7;border-color:#ddd6e2}.status-confidential{color:#6425cf;background:#f3edff;border-color:#d8c8f6}.status-restricted{color:#a44d0b;background:#fff7ed;border-color:#fed7aa}.primary-button,.secondary-button,.mini-button{cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;font-weight:780;text-decoration:none;transition:transform 80ms,background .12s,border-color .12s;display:inline-flex}.primary-button,.secondary-button{padding:10px 14px}.mini-button{color:#fff;background:var(--primary);white-space:nowrap;padding:8px 11px;font-size:12px}.primary-button{color:#fff;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-bright) 100%);box-shadow:0 6px 16px #6425cf29}.primary-button:hover,.mini-button:hover{background:var(--primary-strong)}.primary-button:active,.secondary-button:active,.mini-button:active{transform:translateY(1px)}.secondary-button{color:var(--primary);background:#fff;border-color:#cdb9ec}.secondary-button:hover{background:var(--primary-soft);border-color:#b79ade}.button-row{flex-wrap:wrap;gap:10px;display:flex}.breadcrumbs{color:var(--muted);margin-bottom:12px;font-size:13px}.breadcrumbs a{color:var(--primary);font-weight:700;text-decoration:none}.definition-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.definition{background:var(--surface-soft);border:1px solid var(--border);border-radius:11px;padding:15px}.definition span,.definition strong{display:block}.definition span{color:var(--muted);margin-bottom:5px;font-size:12px}.form-stack{gap:14px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}label{gap:6px;font-size:13px;font-weight:720;display:grid}input,select,textarea{width:100%;color:var(--text);background:#fff;border:1px solid #d7cde2;border-radius:9px;padding:10px 11px}input:focus,select:focus,textarea:focus{border-color:var(--primary);outline:3px solid #6425cf29}.checkbox-row{align-items:center;gap:8px;font-weight:600;display:flex}.checkbox-row input{width:auto}.help{color:var(--muted);font-size:12px;font-weight:450;line-height:1.4}.record-action-form{align-items:end;gap:8px;min-width:120px;display:flex}.compact-field{min-width:138px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;gap:3px;font-size:10px}.compact-field input{text-transform:none;letter-spacing:normal;color:var(--text);padding:7px 8px;font-size:12px}.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.info-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:13px;padding:18px}.info-card p{color:var(--muted);margin-bottom:0}.login-wrap{background:radial-gradient(circle at 18% 10%,#efe5ff 0,#0000 34%),linear-gradient(145deg,#fbf9ff 0%,#fff 52%,#f0e5ff 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--border);background:#fff;border-radius:18px;width:min(100%,480px);padding:31px;box-shadow:0 24px 70px #48198224}.login-kicker{margin-top:28px;margin-bottom:8px}.login-card h1{margin:0;font-size:34px}.login-card>p{color:var(--muted);margin-bottom:22px}.alert-error{background:var(--danger-soft);color:var(--danger);border:1px solid #fecdca;border-radius:9px;margin:14px 0;padding:10px 12px}.security-note{background:var(--surface-soft);border:1px solid var(--border);border-radius:11px;margin-top:20px;padding:13px}.security-note strong,.security-note span{display:block}.security-note span{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.45}.timeline{gap:13px;display:grid}.timeline-item{border-left:3px solid #cbb0f3;padding-left:16px}.timeline-item strong{display:block}.timeline-item span{color:var(--muted);margin-top:3px;font-size:13px;display:block}.notice{background:var(--primary-soft);color:#4f1b9d;border:1px solid #d8c8f6;border-radius:10px;margin-bottom:18px;padding:13px 14px}.notice-success{color:#14623f;background:var(--success-soft);border-color:#b8e5ce}.empty{text-align:center;color:var(--muted);padding:28px}@media (max-width:980px){.app-frame{grid-template-columns:1fr}.sidebar{height:auto;position:static}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar-note{margin-top:0}.metric-grid,.cards,.definition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-grid{grid-template-columns:1fr}}@media (max-width:640px){.content,.topbar{padding-left:16px;padding-right:16px}.topbar{align-items:flex-start;gap:12px;height:auto;min-height:70px;padding-top:14px;padding-bottom:14px}.user-chip{align-items:flex-start}.metric-grid,.cards,.definition-grid,.form-grid,.sidebar nav{grid-template-columns:1fr}h1{font-size:27px}.record-action-form{flex-direction:column;align-items:stretch}}
