:root{--blue:#004586;--blue-dark:#003668;--blue-soft:#edf5fb;--pale:#f8fafc;--line:#d9e3ed;--ink:#12314c;--muted:#66788a;--bg:#eef3f7;--danger:#b72d3a;--success:#16835d;--shadow:0 18px 48px rgba(0,45,86,.12)}
*{box-sizing:border-box}
html{background:var(--bg);color:var(--ink);font-family:"Source Sans 3",Arial,sans-serif}
body{margin:0;min-height:100vh}
button,input,select{font:inherit}
a{color:inherit}
button{cursor:pointer}
.shell-header{height:72px;background:#fff;border-bottom:1px solid #dfe7ee;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:0 28px;position:sticky;top:0;z-index:30}
.shell-brand{display:flex;align-items:center;gap:16px;min-width:0;text-decoration:none}
.shell-logo{display:block;width:166px;height:auto}
.shell-divider{width:1px;height:28px;background:#dce5ed}
.shell-brand-copy strong{display:block;color:var(--blue);font-size:17px;line-height:1.1}.shell-brand-copy span{display:block;color:var(--muted);font-size:12px;margin-top:3px}
.shell-nav{display:flex;align-items:center;gap:8px}.nav-link,.logout-button{border:0;background:transparent;color:#476177;text-decoration:none;font-size:13px;font-weight:700;padding:9px 11px;border-radius:8px}.nav-link:hover,.logout-button:hover,.nav-link.active{background:var(--blue-soft);color:var(--blue)}
.user-chip{display:flex;align-items:center;gap:10px;margin-left:8px;padding-left:14px;border-left:1px solid #dce5ed}.user-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;font-weight:700}.user-copy{line-height:1.15}.user-copy strong{display:block;font-size:13px}.user-copy span{font-size:11px;color:var(--muted)}
.page{width:min(1480px,calc(100% - 42px));margin:0 auto;padding:34px 0 48px}
.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.eyebrow{margin:0 0 5px;color:var(--blue);font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.page-heading h1{margin:0;color:var(--blue);font:400 34px/1 Anton,Impact,sans-serif;text-transform:uppercase}.page-heading p{margin:8px 0 0;color:var(--muted);font-size:14px}
.btn{border:0;border-radius:9px;padding:10px 14px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.15s}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--blue);color:#fff;box-shadow:0 8px 18px rgba(0,69,134,.18)}.btn-primary:hover{background:var(--blue-dark)}.btn-secondary{background:#edf2f6;color:#476177}.btn-secondary:hover{background:#e3eaf0}.btn-danger{background:#fff0f1;color:var(--danger)}.btn-danger:hover{background:#ffe4e7}.btn-small{font-size:12px;padding:7px 9px;border-radius:7px}
.panel{background:#fff;border:1px solid #dce5ed;border-radius:13px;box-shadow:0 5px 18px rgba(0,45,86,.055)}
.filters{display:grid;grid-template-columns:minmax(210px,1.4fr) repeat(4,minmax(135px,.65fr)) auto;gap:12px;padding:16px;margin-bottom:18px}.field{display:flex;flex-direction:column;gap:5px;min-width:0}.field label{font-size:11px;color:#4c667d;font-weight:700}.field input,.field select{width:100%;height:40px;border:1px solid #cad7e2;border-radius:8px;background:#fff;color:var(--ink);padding:0 10px;outline:none}.field input:focus,.field select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,69,134,.08)}.filter-actions{display:flex;align-items:flex-end;gap:8px}
.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:1080px}.data-table th{position:sticky;top:0;background:var(--blue);color:#fff;text-align:left;font-size:11px;letter-spacing:.03em;padding:11px 12px;white-space:nowrap}.data-table td{border-bottom:1px solid #e5ebf0;padding:11px 12px;font-size:13px;vertical-align:middle}.data-table tbody tr:hover{background:#f8fbfd}.data-table tbody tr:last-child td{border-bottom:0}.table-number{color:var(--blue);font-weight:800}.table-client{font-weight:700}.table-muted{color:var(--muted);font-size:12px}.table-total{text-align:right;font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}.actions{display:flex;gap:6px;flex-wrap:wrap;min-width:250px}.status{display:inline-flex;align-items:center;gap:6px;border-radius:99px;padding:5px 8px;font-size:11px;font-weight:800}.status:before{content:"";width:6px;height:6px;border-radius:50%}.status-active{background:#eaf7f1;color:#147554}.status-active:before{background:#19a36f}.status-archived{background:#f0f2f4;color:#66717c}.status-archived:before{background:#8996a1}
.empty{padding:54px 24px;text-align:center;color:var(--muted)}.empty strong{display:block;color:var(--blue);font-size:17px;margin-bottom:5px}.table-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 16px;border-top:1px solid #e5ebf0;color:var(--muted);font-size:12px}.pagination{display:flex;gap:7px}
.alert{border-radius:10px;padding:11px 13px;margin-bottom:16px;font-size:13px}.alert-error{background:#fff0f1;color:#962934;border:1px solid #f1c8cc}.alert-success{background:#eaf7f1;color:#146c50;border:1px solid #c6e7d8}.alert-info{background:#edf5fb;color:var(--blue);border:1px solid #cde0ef}
.toast{position:fixed;right:24px;bottom:24px;z-index:100;max-width:390px;background:#12314c;color:#fff;border-radius:11px;padding:13px 16px;box-shadow:0 16px 40px rgba(0,0,0,.2);font-size:13px;line-height:1.35;transform:translateY(20px);opacity:0;pointer-events:none;transition:.22s}.toast.show{transform:translateY(0);opacity:1}.toast.error{background:#9d2932}.toast.success{background:#146c50}
.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(380px,.82fr) 1.18fr;background:#fff}.login-side{padding:45px;display:flex;flex-direction:column;justify-content:center;position:relative}.login-card{width:min(420px,100%);margin:auto}.login-logo{width:210px;height:auto;margin-bottom:42px}.login-card h1{margin:0;color:var(--blue);font:400 38px/1.05 Anton,Impact,sans-serif;text-transform:uppercase}.login-card>p{margin:12px 0 28px;color:var(--muted);line-height:1.5}.login-form{display:flex;flex-direction:column;gap:15px}.login-form .field label{font-size:12px}.login-form .field input{height:46px}.login-form .btn{height:46px;margin-top:4px}.login-version{margin-top:34px;color:#8a99a7;font-size:11px}.login-visual{position:relative;background:linear-gradient(145deg,#003668,#005da9);overflow:hidden;display:flex;align-items:center;justify-content:center;padding:60px}.login-visual:before,.login-visual:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.16)}.login-visual:before{width:620px;height:620px;right:-170px;top:-180px}.login-visual:after{width:440px;height:440px;left:-170px;bottom:-190px}.login-message{position:relative;z-index:1;max-width:630px;color:#fff}.login-message h2{font:400 52px/1.02 Anton,Impact,sans-serif;text-transform:uppercase;margin:0}.login-message p{font-size:18px;line-height:1.55;color:rgba(255,255,255,.82);max-width:540px}.login-dots{position:absolute;right:-20px;bottom:50px;width:330px;height:330px;opacity:.23;background-image:radial-gradient(circle,#fff 1.5px,transparent 1.8px);background-size:15px 15px;transform:rotate(-13deg)}
.users-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:20px;align-items:start}.form-panel{padding:20px;position:sticky;top:94px}.form-panel h2{margin:0 0 5px;color:var(--blue);font-size:17px}.form-panel>p{margin:0 0 18px;color:var(--muted);font-size:12px}.form-grid{display:grid;gap:13px}.checkbox-row{display:flex;align-items:center;gap:9px;color:#476177;font-size:13px}.checkbox-row input{width:17px;height:17px}.form-buttons{display:flex;gap:8px;margin-top:6px}.password-hint{font-size:11px;color:var(--muted);margin-top:1px}
@media(max-width:1050px){.filters{grid-template-columns:repeat(3,1fr)}.filter-actions{align-items:end}.users-layout{grid-template-columns:1fr}.form-panel{position:static}.login-visual{display:none}.login-page{grid-template-columns:1fr}.login-side{padding:30px}}
@media(max-width:760px){.shell-header{padding:0 16px}.shell-divider,.shell-brand-copy,.user-copy{display:none}.shell-logo{width:145px}.shell-nav{gap:2px}.nav-link{font-size:0}.nav-link:after{content:attr(data-short);font-size:12px}.user-chip{padding-left:8px;margin-left:0}.page{width:min(100% - 26px,1480px);padding-top:24px}.page-heading{align-items:flex-start;flex-direction:column}.filters{grid-template-columns:1fr}.filter-actions{align-items:stretch}.login-side{padding:24px}.login-logo{margin-bottom:32px}.login-card h1{font-size:32px}}

