.source-status{display:flex;align-items:center;gap:10px 24px;flex-wrap:wrap;padding:0 0 15px;margin-bottom:4px;color:var(--muted);font-size:10px;border-bottom:1px solid var(--line)}
.source-copy,.source-warning{color:var(--warn)}
.toolbar-action{font-size:11px;color:var(--muted);padding:8px 3px}
.live-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;color:#2d4a36;background:#f3f5ef;padding:30px;text-align:center}
.live-loading>b{font-size:32px;letter-spacing:3px}.live-loading button{border-radius:8px;background:#2d4a36;color:#fff;padding:13px 25px}
.chart-empty{padding:35px 10px;font-size:12px;color:var(--muted);text-align:center}
.live-list{margin:20px 0}.table-box td{max-width:350px;white-space:normal}.table-box td.nowrap{white-space:nowrap}.table-box a{color:var(--accent);text-decoration:none}.table-box a:hover{text-decoration:underline}
.list-heading{display:flex;align-items:center;gap:15px;justify-content:space-between;margin:15px 0}.list-heading h2{font-size:20px}.list-heading select{background:var(--panel);color:var(--ink);border:1px solid var(--line);padding:11px;border-radius:7px;font-size:12px}
.list-count{font-size:11px;color:var(--muted)}.status-overdue{color:var(--warn)}.rank-empty{padding:25px;font-size:14px;color:var(--muted)}
.appearance-bottom>span{font-size:11px;color:#6e7c64}
.auth-body{background:#e9efe4!important}.auth-shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px 20px;color:#263c2d;background:radial-gradient(ellipse at 15% 10%,#dce8cd,transparent 60%),#f0f3eb}
.auth-brand{font-size:35px;font-weight:750;letter-spacing:3px;color:#2d4d38;text-decoration:none}.auth-intro{font-size:13px;margin:15px 0 35px;color:#788972}.auth-card{background:#fff;border:1px solid #dfe7d9;box-shadow:0 16px 70px #25442b0c;border-radius:20px;padding:30px;width:min(430px,100%)}
.auth-card h1{font-size:25px;font-weight:600;margin:0 0 25px;letter-spacing:-.6px}.auth-card form{display:grid;gap:18px}.auth-card label{display:grid;gap:8px;font-size:12px;color:#61735a}.auth-card input{font:inherit;font-size:15px;padding:12px 13px;border:1px solid #dbe3d5;border-radius:8px;background:#fafbf8;color:#2b442e;min-width:0;width:100%}.auth-card button{background:#31543b;color:#fff;border-radius:8px;padding:13px 20px;font-size:13px;margin-top:5px}.auth-card button:disabled{opacity:.5;cursor:wait}.auth-card p{font-size:13px;line-height:1.7;color:#6f7d68}.auth-card .auth-back{color:#6d7b63;background:none;margin-top:20px;padding:0}.auth-error{color:#a2543e;font-size:12px;margin-top:15px;line-height:1.6}.setup-key{display:block;word-break:break-all;background:#edf3e6;padding:14px;border-radius:7px;font-size:14px;line-height:1.6}.recovery-codes{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.recovery-codes code{font-size:14px;background:#f0f3eb;padding:10px;border-radius:6px}
body:has(.admin-dialog[open]){overflow:hidden}.admin-dialog{border:1px solid var(--line);border-radius:18px;max-width:calc(100vw - 30px);width:900px;max-height:calc(100dvh - 30px);padding:25px;background:var(--panel);color:var(--ink);margin:auto}.admin-dialog::backdrop{background:#10221b77;backdrop-filter:blur(4px)}.admin-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.admin-head h2{font-size:25px}.admin-head button{font-size:27px;color:var(--muted)}.admin-content>section{border-top:1px solid var(--line);padding:23px 0}.admin-content h3{font-size:17px;margin:0 0 20px}.admin-content label{display:grid;gap:7px;font-size:12px;color:var(--muted)}.admin-content input,.admin-content select{border:1px solid var(--line);background:var(--bg);border-radius:7px;padding:10px;color:var(--ink);font:inherit;min-width:0}.admin-content input[type=checkbox]{accent-color:var(--accent);width:16px;height:16px}.admin-content form>label{max-width:250px;margin:16px 0}.admin-content button{padding:10px 17px;font-size:12px;border-radius:7px;background:var(--ink);color:var(--panel)}.admin-fields{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.admin-fields label{min-width:0}.admin-content p{font-size:12px;color:var(--muted);line-height:1.6}.sync-history{margin-top:20px;display:grid;gap:10px;font-size:11px}.sync-history>div{display:flex;gap:20px}.sync-history b{min-width:60px}.user-form{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr auto;align-items:center;gap:10px;padding:14px 0;border-bottom:1px solid var(--line)}.user-form b{display:block;font-size:12px}.user-form small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.user-form label.user-enabled{display:flex;align-items:center;gap:6px;font-size:10px}.admin-message{color:var(--accent)!important;min-height:20px}.admin-content details{margin-top:20px}.admin-content summary{cursor:pointer;font-size:13px;margin-bottom:20px}
@media(max-width:760px){.application-bar{grid-template-columns:1fr auto auto}.view-switch,.mode-label{grid-column:1/-1}.appearance-button{grid-column:2}.toolbar-action{font-size:10px;padding:5px}.application-bar [data-admin]{grid-row:4;grid-column:1}.application-bar [data-logout]{grid-column:3;grid-row:1}.source-status{font-size:10px;gap:7px;flex-direction:column;align-items:start}.list-heading{align-items:stretch;flex-direction:column}.table-box td{font-size:11px}.table-box th{font-size:10px}.admin-fields{grid-template-columns:1fr 1fr}.user-form{grid-template-columns:1fr 1fr}.user-form>div{grid-column:1/-1}.admin-dialog{padding:20px}.sync-history>div{flex-wrap:wrap;gap:7px}.auth-card{padding:25px}}

.roster-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:20px 0}.roster-list label{display:flex;align-items:center;gap:8px}

.loss-analysis{margin-block:24px}.loss-analysis>h2{margin:12px 0 20px}.loss-analysis p{line-height:1.6}.loss-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.loss-details{margin-block:24px}.loss-details summary{cursor:pointer;font-weight:600;padding:12px 0}.loss-reason{margin:14px 0}.loss-reason>div{display:flex;justify-content:space-between;gap:16px}.loss-reason progress{width:100%;height:6px;accent-color:var(--accent,#a55034)}.loss-cohort{border-top:1px solid var(--line,#ccc);padding-top:20px}.loss-analysis td{vertical-align:top;line-height:1.6}@media(max-width:800px){.loss-columns{grid-template-columns:1fr}}

.personnel-tabs,.personnel-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.personnel-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:24px}.personnel-list button{text-align:left;display:grid;gap:8px}.personnel-list span{font-size:11px;opacity:.75}.employment-row{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end;margin:12px 0}.personnel-section h4{margin:22px 0 14px}.personnel-section form>button{margin:10px 8px 10px 0}.personnel-section .admin-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.personnel-message{min-height:20px}@media(max-width:600px){.personnel-list,.personnel-section .admin-fields{grid-template-columns:1fr}.employment-row{grid-template-columns:1fr 1fr auto}}

.personnel-list button[hidden]{display:none!important}.personnel-list button span{line-height:1.5}.plan-caption{font-size:14px!important;line-height:1.6!important;font-weight:400!important}.realization-details{margin:0 0 24px}.realization-details summary small{font-variant-numeric:tabular-nums}
