/* Administrative navigation refresh */
.app-shell{grid-template-columns:290px minmax(0,1fr)}
.side{display:flex;flex-direction:column;gap:16px;padding:22px 16px;position:sticky;top:0;height:100vh;overflow:hidden;background:radial-gradient(120% 70% at 8% 118%,var(--color-sidebar-glow) 0%,transparent 54%),linear-gradient(160deg,var(--color-sidebar-gradient-start) 0%,var(--color-sidebar-gradient-mid) 45%,var(--color-sidebar-wine) 75%,var(--color-sidebar-gradient-end) 100%)}
.sidebar-head{display:flex;align-items:center;gap:10px;padding:0 8px 4px}.brand-mark{width:40px;height:40px;border-radius:10px;object-fit:cover;flex:0 0 40px;display:block;background:rgba(255,255,255,.06)}.brand-mark-office{object-fit:contain;padding:2px;box-sizing:border-box}.brand-copy{display:grid;gap:3px;min-width:0}.brand-copy strong{font-size:12px;letter-spacing:1.2px}.brand-copy small{color:var(--color-sidebar-muted);font-size:10px;line-height:1.3}.icon-button{display:grid;place-items:center;background:rgba(255,255,255,.10);color:var(--color-sidebar-muted);border-radius:8px;width:34px;height:34px;margin-left:auto}.icon-button:hover{background:#ffffff21;color:#fff}.menu-icon{width:19px;height:19px;flex:0 0 19px}.profile-card{display:flex;align-items:center;gap:10px;padding:12px;background:var(--color-sidebar-card);border:1px solid var(--color-sidebar-card-border);border-radius:14px}.avatar,.top-avatar{display:grid;place-items:center;border-radius:50%;font-weight:800}.avatar{width:38px;height:38px;background:linear-gradient(160deg,var(--color-avatar-from),var(--color-avatar-to));color:var(--color-on-primary)}.profile-copy{display:grid;gap:3px;min-width:0}.profile-copy strong,.profile-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-copy strong{font-size:13px}.profile-copy small{font-size:11px;color:var(--color-sidebar-muted)}.menu-search{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--color-sidebar-card-border);border-radius:9px;color:var(--color-sidebar-muted)}.menu-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--color-on-primary);font-size:12px}.menu-search input::placeholder{color:var(--color-sidebar-muted)}.menu-search kbd{font-size:10px;color:var(--color-sidebar-muted);white-space:nowrap}.sidebar-nav{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:3px}.sidebar-nav::-webkit-scrollbar{width:5px}.sidebar-nav::-webkit-scrollbar-thumb{background:#ffffff20;border-radius:8px}.menu-item{display:flex;align-items:center;gap:11px;width:100%;min-height:43px;padding:10px 11px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--color-sidebar-text);text-align:left;transition:background .18s,color .18s,border-color .18s,box-shadow .18s}.menu-item:hover{background:var(--color-sidebar-hover);color:var(--color-on-primary)}.menu-item.active{background:linear-gradient(90deg,var(--color-sidebar-active) 0%,var(--color-sidebar-active-end) 100%);border-color:transparent;color:var(--color-on-primary);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 8px 18px rgba(200,16,46,.18)}.menu-item.active .menu-icon{color:var(--color-on-primary)}.menu-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-chevron{width:15px;height:15px;margin-left:auto;opacity:.65}.menu-badge{margin-left:auto;min-width:20px;padding:3px 6px;border-radius:99px;background:var(--color-sidebar-active);color:var(--color-on-primary);text-align:center;font-size:10px;font-weight:800}.menu-item .menu-badge+.menu-chevron{margin-left:3px}.menu-group{margin-top:18px;padding-top:13px;border-top:1px solid #ffffff12}.menu-group h2{margin:0 10px 7px;color:var(--color-sidebar-muted);font-size:10px;letter-spacing:1.2px;font-weight:800}.dashboard-link{margin-bottom:4px}.sidebar-footer{display:grid;gap:5px;padding-top:12px;border-top:1px solid #ffffff18;flex-shrink:0}.footer-action{display:flex;align-items:center;gap:11px;width:100%;padding:10px 11px;background:transparent;color:var(--color-sidebar-text);border-radius:9px;text-align:left}.footer-action:hover{background:var(--color-sidebar-hover);color:var(--color-on-primary)}.logout-link{color:#e08a98}.logout-link:hover{color:#ffb3bd}.collapsed{width:76px}.collapsed .brand-copy,.collapsed .profile-copy,.collapsed .menu-search,.collapsed .menu-label,.collapsed .menu-chevron,.collapsed .menu-group h2,.collapsed .office-identity{display:none}.collapsed .sidebar-head{justify-content:center;padding-left:0;padding-right:0}.collapsed .sidebar-toggle{margin-left:0}.collapsed .profile-card{justify-content:center}.collapsed .menu-item,.collapsed .footer-action{justify-content:center;padding-left:0;padding-right:0}.collapsed .menu-badge{position:absolute;margin:0 0 25px 25px;min-width:16px;padding:2px 4px;font-size:9px}.collapsed+.main{min-width:0}.top{height:72px;padding:0 30px}.breadcrumb{display:grid;gap:2px;min-width:0}
.dash-head-sub{display:block;font-size:12px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--color-text-secondary);margin-top:2px;line-height:1.3}.breadcrumb span{font-size:10px;color:var(--muted);letter-spacing:1px;font-weight:800}.breadcrumb strong{font-size:16px}.top-user{display:flex;align-items:center;gap:9px;font-size:13px}.top-avatar{width:32px;height:32px;background:var(--color-primary-soft);color:var(--color-primary)}.mobile-menu{display:none;background:var(--color-primary-soft);color:var(--color-primary);padding:9px;border-radius:8px}.sidebar-overlay{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.menu-item:focus-visible,.footer-action:focus-visible,.icon-button:focus-visible,.menu-search:focus-within{outline:2px solid var(--color-primary);outline-offset:2px}
@media(max-width:1000px){.app-shell{grid-template-columns:76px minmax(0,1fr)}.side{width:76px}.side .brand-copy,.side .profile-copy,.side .menu-search,.side .menu-label,.side .menu-chevron,.side .menu-group h2,.side .office-identity{display:none}.side .sidebar-head{justify-content:center}.side .sidebar-toggle{margin-left:0}.side .profile-card{justify-content:center}.side .menu-item,.side .footer-action{justify-content:center;padding-left:0;padding-right:0}.side .menu-badge{position:absolute;margin:0 0 25px 25px;min-width:16px;padding:2px 4px;font-size:9px}.collapsed{width:76px}.mobile-menu{display:grid}.sidebar-overlay{display:none}}
@media(max-width:650px){.app-shell{display:block}.side{position:fixed;z-index:30;inset:0 auto 0 0;width:290px;transform:translateX(-102%);transition:transform .2s ease;box-shadow:12px 0 30px rgba(17,17,17,.35)}.side.mobile-open{transform:translateX(0)}.side.mobile-open .brand-copy,.side.mobile-open .profile-copy,.side.mobile-open .menu-search,.side.mobile-open .menu-label,.side.mobile-open .menu-chevron,.side.mobile-open .menu-group h2{display:block}.side.mobile-open .office-identity{display:flex}.side.mobile-open .menu-search{display:flex}.side.mobile-open .menu-item,.side.mobile-open .footer-action{justify-content:flex-start;padding-left:11px;padding-right:11px}.side.mobile-open .menu-chevron{display:block}.side.mobile-open .sidebar-head{justify-content:flex-start}.side.mobile-open .sidebar-toggle{margin-left:auto}.side.mobile-open .profile-card{justify-content:flex-start}.sidebar-overlay.visible{display:block;position:fixed;z-index:20;inset:0;background:rgba(17,17,17,.55)}.top{padding:0 15px}.top-user span{display:none}.content{padding:18px 15px}.page-head{display:block}.actions{margin-top:12px}}
:root{--color-primary:#C8102E;--color-primary-hover:#A00D25;--color-primary-soft:#FDECEE;--color-background:#F5F5F5;--color-surface:#ffffff;--color-surface-hover:#F3F4F6;--color-border:#E5E7EB;--color-text:#111111;--color-text-secondary:#6B7280;--color-success:#1b7a4a;--color-warning:#b7791f;--color-danger:#C8102E;--color-info:#2563EB;--bg:var(--color-background);--panel:var(--color-surface);--text:var(--color-text);--muted:var(--color-text-secondary);--line:var(--color-border);--primary:var(--color-primary);--primary2:var(--color-primary-hover);--danger:var(--color-danger);--ok:var(--color-success);--warn:var(--color-warning);--shadow:0 1px 2px rgba(20,36,44,.04),0 8px 24px rgba(20,36,44,.04);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0}.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(160deg,var(--color-sidebar-gradient-start),var(--color-sidebar-gradient-end))}.login-card{width:min(430px,92vw);background:#fff;border-radius:22px;padding:34px;box-shadow:0 25px 70px #071b4c55}.brand{font-weight:800;font-size:24px}.brand span{color:var(--primary)}.login h1{margin:24px 0 8px;font-size:28px}.login p{color:var(--muted);margin-top:0}.field{display:flex;flex-direction:column;gap:7px;margin:12px 0}.field label{font-size:13px;font-weight:700}.field input,.field select,.field textarea{border:1px solid var(--line);border-radius:10px;padding:11px 12px;outline:none;background:#fff}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.btn{background:var(--primary);color:#fff;padding:10px 15px;border-radius:10px;font-weight:700}.btn:hover{background:var(--primary2)}.btn.secondary{background:#eef2fb;color:var(--primary)}.btn.danger{background:#fff0f2;color:var(--danger)}.btn.ok{background:#e9f8f1;color:var(--ok)}.app-shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.side{background:var(--color-sidebar);color:#fff;padding:22px 15px;position:sticky;top:0;height:100vh}.side .brand{padding:0 10px 22px}.nav{display:grid;gap:5px}.nav button{background:transparent;color:#b9c3d6;text-align:left;padding:11px 12px;border-radius:9px}.nav button:hover,.nav button.active{background:#ffffff14;color:#fff}.main{min-width:0}.top{height:70px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:3}.top small{color:var(--muted)}.content{padding:28px;max-width:1500px;margin:auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:22px}.page-head h1{margin:0 0 5px;font-size:25px}.page-head p{margin:0;color:var(--muted)}.actions{display:flex;gap:8px;flex-wrap:wrap}.grid{display:grid;gap:16px}.cards{grid-template-columns:repeat(4,minmax(0,1fr))}.card,.panel{background:var(--panel);border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow)}.card{padding:19px}.card .label{color:var(--muted);font-size:13px}.card .value{font-size:25px;font-weight:800;margin-top:7px}.panel{padding:20px;margin-bottom:18px}.panel h3{margin:0 0 15px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;font-size:13px}.table th,.table td{padding:11px 10px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.table th{font-size:11px;text-transform:uppercase;color:var(--muted);background:#fafbfc}.badge{display:inline-flex;padding:5px 8px;border-radius:99px;font-size:11px;font-weight:800}.badge.pending{background:#fff6df;color:var(--warn)}.badge.approved{background:#e8f7f0;color:var(--ok)}.badge.rejected{background:#fff0f2;color:var(--danger)}.badge.need{background:#f0edff;color:#6c4fd3}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.span2{grid-column:1/-1}.modal-back{position:fixed;inset:0;background:#09101f80;display:grid;place-items:center;padding:20px;z-index:20}.modal{background:#fff;width:min(760px,96vw);max-height:92vh;overflow:auto;border-radius:18px;padding:22px}.modal-head{display:flex;justify-content:space-between;align-items:center}.modal-head h2{margin:0}.empty{padding:35px;text-align:center;color:var(--muted)}.toast{position:fixed;right:22px;bottom:22px;background:#172033;color:#fff;padding:13px 17px;border-radius:10px;z-index:90}.muted{color:var(--muted)}.money{font-variant-numeric:tabular-nums}.row-actions{display:flex;gap:6px}.drop{border:2px dashed #cfd6e4;border-radius:12px;padding:25px;text-align:center}.kpi-positive{color:var(--ok)}.kpi-negative{color:var(--danger)}.rule-box{background:#f7f9fc;border:1px solid var(--line);padding:12px;border-radius:10px;font-family:ui-monospace,monospace;font-size:12px;white-space:pre-wrap}.dropzone{border:2px dashed #c9d3e0;border-radius:16px;padding:22px;text-align:center;display:grid;gap:8px;background:#f8fafc;margin:8px 0}.dropzone.over{background:var(--color-primary-soft);border-color:var(--color-primary)}.dropzone small{color:var(--muted);font-size:12px}.file-card{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fff}.file-card small{display:block;color:var(--muted)}.doc-block{margin:16px 0 18px}.tx-form .btn{margin-top:8px}@media(max-width:1000px){.app-shell{grid-template-columns:1fr}.side{height:auto;position:relative}.nav{grid-template-columns:repeat(3,1fr)}.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.content{padding:16px}.cards,.form-grid,.form-grid.three{grid-template-columns:1fr}.top{padding:0 15px}.nav{grid-template-columns:repeat(2,1fr)}}
