@font-face{font-family:Inter;src:url(vendor/inter-cyrillic.woff2) format('woff2');font-weight:100 900;font-display:swap;unicode-range:U+0400-052F}@font-face{font-family:Inter;src:url(vendor/inter-latin.woff2) format('woff2');font-weight:100 900;font-display:swap}
:root{--ink:#192d44;--muted:#65768a;--bg:#f4f7fb;--line:#dfe6ee;--primary:#245db0;--bs-primary:#245db0;--bs-body-font-family:Inter,Arial,sans-serif;--bs-body-color:var(--ink);--bs-body-font-size:.875rem}
body{background:var(--bg);margin:0}.shell{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:100dvh}.sidebar{background:#fff;border-right:1px solid var(--line);padding:28px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100dvh}.brand{display:flex;align-items:center;gap:12px;font-size:17px;line-height:1.25;font-weight:750;margin-bottom:36px}.brand-mark{background:var(--primary);color:white;border-radius:12px;padding:10px;font-size:21px}.eyebrow{color:var(--muted);font-size:10px;letter-spacing:1.8px;text-transform:uppercase;margin:20px 12px 10px}.sidebar nav{display:grid;gap:5px}.nav-item{border:0;background:none;text-align:left;padding:12px;border-radius:8px;color:#52647b;display:flex;gap:12px;align-items:center;font-weight:550}.nav-item:hover{background:#f3f6fb}.nav-item.active{background:#eaf1fc;color:var(--primary)}.sidebar-footer{margin-top:auto;color:var(--muted);font-size:12px;line-height:1.8;padding:12px}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);padding:0 30px;display:flex;justify-content:space-between;align-items:center;gap:16px}.topbar small{color:var(--muted)}.topbar-right{display:flex;gap:16px;align-items:center}.avatar{background:#eaf1fc;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;color:var(--primary);font-weight:700}main{min-width:0}#workspace{padding:30px;max-width:1800px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px}.page-heading h1{font-size:27px;letter-spacing:-.6px;font-weight:700;margin:0}.page-heading p{margin:7px 0 0;color:var(--muted)}.card{border:1px solid var(--line);border-radius:12px;box-shadow:0 3px 12px #18324a04}.card-body{padding:22px}h2{font-size:16px;font-weight:650;margin-bottom:18px}h3{font-size:15px}.action-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:12px;flex-wrap:wrap}.directory-tabs{display:flex;gap:4px;background:#e9eef5;padding:4px;border-radius:9px}.directory-tabs button{border:0;background:none;padding:9px 15px;border-radius:7px;color:var(--muted);font-weight:600}.directory-tabs .active{background:white;box-shadow:0 1px 4px #10284012;color:var(--ink)}.btn{font-size:13px;padding:9px 14px;border-radius:7px;font-weight:550}.btn-primary{background:var(--primary);border-color:var(--primary)}.btn-outline-secondary{border-color:#cdd7e3;color:#425873;background:#fff}.btn-sm{font-size:12px;padding:5px 9px}.text-button{padding:0;background:none;border:0;color:var(--primary);font-size:12px;text-align:left;margin-top:5px}.filters{display:grid;grid-template-columns:1fr 1fr 1fr;padding:20px;gap:24px;margin-bottom:18px}.filters label,.form-label{font-size:12px;font-weight:600;margin-bottom:8px;color:#53647a}.form-control,.form-select{font-size:13px;border-color:#d6dfe9;min-height:39px}.table{--bs-table-bg:transparent;margin:0;font-size:13px}.table th{font-size:11px;color:#63758a;background:#f6f8fb!important;font-weight:600;white-space:nowrap;padding:12px 14px;border-bottom:1px solid var(--line)}.table td{padding:15px 14px;border-color:#edf0f5;vertical-align:middle}.table small{margin-top:5px;font-size:11px;line-height:1.5}.table-responsive{max-height:600px}.table thead{position:sticky;top:0;z-index:1}.soft-badge{border-radius:5px;padding:3px 7px;font-size:10px;font-weight:600;display:inline-block}.yellow{background:#fff2cf;color:#835900}.section-note{font-size:12px;line-height:1.7;color:var(--muted)}.schedule-row{display:flex;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}.schedule-row p{font-size:12px;color:var(--muted);margin:0}.empty-state{text-align:center;padding:55px 20px;color:var(--muted)}.empty-state h2{color:var(--ink)}.replacement-table{min-width:1000px}.replacement-table select{max-width:210px}.notice{padding:16px;border-radius:8px;background:#eaf1fc;color:#285481}.login-wrap{min-height:100dvh;display:grid;place-items:center;padding:24px}.login-card{background:white;padding:40px;border:1px solid var(--line);border-radius:18px;width:min(100%,440px);box-shadow:0 18px 65px #1f385510}.login-card h1{font-size:27px;margin:24px 0 12px}.login-card p{color:var(--muted);line-height:1.6}.login-card form{display:grid;gap:14px}.login-card .brand{margin-bottom:20px}#toast{position:fixed;right:24px;bottom:24px;z-index:2000;background:#193b2c;color:#fff;padding:14px 22px;border-radius:9px;max-width:440px;display:none}#toast.error{background:#922b2b}.fullscreen .sidebar,.fullscreen .topbar{display:none}.fullscreen .shell{grid-template-columns:1fr}.fullscreen #workspace{max-width:none}.fullscreen .table-responsive{max-height:none}.status-dot{width:6px;height:6px;border-radius:50%;background:#378560;display:inline-block;margin-right:5px}button:focus-visible,a:focus-visible{outline:3px solid #81aef0;outline-offset:3px}.content-page{min-width:0}
@media(max-width:1000px){.shell{grid-template-columns:185px minmax(0,1fr)}.sidebar{padding:24px 12px}#workspace{padding:22px}.topbar{padding:0 22px}.filters{gap:12px}.table td{padding:12px 10px}.topbar-right .account-name{display:none}}
@media(max-width:700px){.shell{display:block}.sidebar{height:auto;position:static;padding:15px}.sidebar .brand{margin-bottom:12px}.sidebar nav{display:flex;overflow:auto}.nav-item{white-space:nowrap}.sidebar .eyebrow,.sidebar-footer{display:none}.topbar{height:60px;padding:0 16px}#workspace{padding:20px 14px}.page-heading h1{font-size:22px}.filters{grid-template-columns:1fr}.card-body{padding:15px}.topbar-right{gap:8px}}
@media print{.sidebar,.topbar,.action-toolbar,.page-heading button,.text-button,.btn,.filters,#weekly-replacements-open{display:none!important}.shell{display:block}#workspace{padding:0}.table-responsive{max-height:none;overflow:visible}.card{border:0}.table{font-size:10px}.table td{padding:7px}body{background:#fff}thead{display:table-header-group}.page-heading{margin-bottom:16px}}

@media print{.search-bar{display:none}}
