:root{--navy:#10233f;--navy2:#18385f;--green:#0f9d58;--green-soft:#e9f8f0;--bg:#f3f6fa;--card:#fff;--ink:#172033;--muted:#66758b;--line:#dce4ed;--red:#b42318;--amber:#b66a00;--radius:16px;--shadow:0 9px 28px rgba(16,35,63,.07)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);line-height:1.45}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.topbar,.top{position:sticky;top:0;z-index:80;min-height:68px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:9px 22px;box-shadow:0 3px 16px rgba(16,35,63,.18)}.admin-brand{display:flex;align-items:center;gap:11px}.admin-brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,#1d4e85,#0f9d58);display:grid;place-items:center;font-weight:950;font-size:19px}.admin-brand-copy{display:grid;line-height:1.05}.admin-brand-copy strong{font-size:15px}.admin-brand-copy span{font-size:11px;color:#c8d7e8;margin-top:4px}.admin-user{display:flex;align-items:center;gap:10px;color:#dce7f4;font-size:12px}.admin-nav{position:sticky;top:68px;z-index:70;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid #dfe7ef;padding:8px max(14px,calc((100vw - 1440px)/2));display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.admin-nav::-webkit-scrollbar{display:none}.admin-nav a{white-space:nowrap;padding:8px 11px;border-radius:9px;font-size:12px;font-weight:850;color:#526278}.admin-nav a:hover{background:#f0f4f8;color:var(--navy)}.admin-nav a.active{background:var(--navy);color:#fff}.container,.wrap{max-width:1100px;margin:28px auto;padding:0 18px}.wide,.wrap2{max-width:1440px;margin:28px auto;padding:0 18px}.hero,.table-card,.card,.panel{background:#fff;border:1px solid #e5ebf2;border-radius:18px;box-shadow:var(--shadow)}.hero,.card,.panel{padding:22px;margin-bottom:18px}.table-card{padding:10px 18px 18px}.badge{display:inline-flex;background:var(--green-soft);color:#08743f;padding:5px 9px;border-radius:999px;font-weight:850;font-size:12px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.card{padding:18px;transition:.15s ease}.card:hover{transform:translateY(-1px)}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.025em}h2{letter-spacing:-.015em}.card h2{font-size:18px;margin-bottom:4px}.card p,.muted{color:var(--muted)}.page-head,.section-title{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px}.btn{min-height:40px;border:1px solid #cbd7e4;background:#fff;border-radius:10px;padding:9px 13px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:.15s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(16,35,63,.12)}.primary,.btn.primary{background:var(--navy);color:#fff;border-color:var(--navy)}.ghost,.btn.ghost{background:transparent;color:#fff;border-color:#6b7d96}.danger,.danger2{color:#fff!important;background:var(--red)!important;border-color:var(--red)!important}.small{padding:6px 9px;min-height:34px;font-size:12px}.full{width:100%}.table-wrap{overflow:auto;border-radius:12px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:13px 10px;border-bottom:1px solid #e7ecf2;vertical-align:middle}th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#6c7b90;background:#fafbfd;position:sticky;top:0;z-index:2}tbody tr:hover{background:#fbfcfe}.status{padding:5px 9px;border-radius:999px;font-size:11px;font-weight:850}.status.active{background:var(--green-soft);color:#08743f}.status.inactive{background:#f0f3f6;color:#66758b}.actions{white-space:nowrap}.alert{background:var(--green-soft);color:#08743f;padding:12px 14px;border-radius:10px;margin-bottom:14px;border:1px solid #cdeedc}.alert.bad,.error{color:#b42318}.alert.bad{background:#fff0ef;border-color:#ffd2ce}.center{text-align:center}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 15%,#dfeaf7 0,transparent 36%),linear-gradient(145deg,#f5f8fb,#edf2f7)}.login-card{width:min(410px,92vw);background:#fff;padding:30px;border-radius:20px;box-shadow:0 20px 55px rgba(16,35,63,.14);border:1px solid #e3e9f0}.login-card h1{text-align:center}.login-card:before{content:"J";display:grid;place-items:center;margin:0 auto 16px;width:52px;height:52px;border-radius:15px;background:linear-gradient(145deg,#18385f,#0f9d58);color:white;font-size:24px;font-weight:950}label{display:block;font-weight:800;font-size:13px;margin:13px 0;color:#34455c}input,select,textarea{width:100%;min-height:43px;margin-top:6px;border:1px solid #cbd7e4;border-radius:10px;padding:10px 11px;background:#fff;outline:none}textarea{min-height:86px}input:focus,select:focus,textarea:focus{border-color:#568ac2;box-shadow:0 0 0 4px rgba(45,110,176,.1)}dialog{border:0;border-radius:16px;padding:0;width:min(760px,94vw);box-shadow:0 25px 70px rgba(0,0,0,.23)}dialog form{padding:22px}.modal-head,.modal-actions{display:flex;justify-content:space-between;align-items:center}.modal-actions{justify-content:flex-end;gap:10px;margin-top:18px}.icon-btn{border:0;background:none;font-size:28px;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.span2{grid-column:1/-1}small{display:block;color:var(--muted);margin-top:3px}.order{border:1px solid #e2e8f0;border-radius:13px;padding:14px;margin:10px 0;background:#fff}.msg{padding:10px 12px;border-radius:9px}.msg.err{background:#fff0ef;color:#a3261d}.msg.ok{background:var(--green-soft);color:#08743f}.top .btn.alt{background:#fff;color:var(--navy)}:focus-visible{outline:3px solid rgba(52,125,198,.28);outline-offset:2px}@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.grid,.form-grid{grid-template-columns:1fr}.span2{grid-column:auto}.page-head,.section-title{align-items:flex-start;gap:12px;flex-direction:column}.actions{white-space:normal}.topbar,.top{padding:8px 12px}.admin-user span{display:none}.container,.wide,.wrap,.wrap2{margin:18px auto;padding:0 12px}.hero,.card,.panel{padding:16px;border-radius:14px}.admin-nav{top:62px}.btn{min-height:42px}}