:root{font-family:'DM Sans',sans-serif;color:#10334d;background:#f4f8fc;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,sans-serif;letter-spacing:-.035em}h1{font-size:clamp(1.6rem,4vw,2.15rem)}h2{font-size:1.22rem}h3{font-size:1rem}.boot{height:100vh;display:grid;place-content:center;font-size:2rem;font-weight:800;color:#0878bb}.boot span{font-size:.9rem;font-weight:400}.shell{max-width:1160px;margin:auto;padding:20px 24px 80px}.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0 22px}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-family:Manrope;font-size:1.45rem;color:#123b56}.brandicon{display:grid;place-items:center;background:#0578c5;color:white;width:39px;height:39px;border-radius:13px}.nav{display:flex;gap:6px;flex-wrap:wrap}.nav button,.ghost{border:0;background:transparent;padding:10px 13px;color:#517086;border-radius:9px}.nav button.on,.nav button:hover{background:#e3f2fc;color:#006fae}.layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:24px}.sidebar{display:flex;flex-direction:column;gap:8px}.sidebtn{border:0;padding:13px 14px;border-radius:10px;background:transparent;text-align:left;color:#537286;font-weight:600}.sidebtn.on{background:white;color:#007dbb;box-shadow:0 4px 18px #b4c9d82b}.main{min-width:0}.hero{background:linear-gradient(115deg,#083e61,#087cb3);color:white;border-radius:19px;padding:26px;display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;overflow:hidden}.hero h1{font-size:1.7rem}.hero p{color:#c9e7f8;margin-top:9px;max-width:610px}.hero .drop{font-size:4rem;opacity:.7}.eyebrow{text-transform:uppercase;letter-spacing:.11em;font-size:.7rem;font-weight:800;color:#7693a5;margin-bottom:7px}.hero .eyebrow{color:#95e1f9}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:white;border-radius:15px;padding:22px;box-shadow:0 6px 30px #b8ceda24;margin-bottom:15px}.card h2{margin-bottom:12px}.stat{font-size:1.95rem;font-family:Manrope;font-weight:800;margin:6px 0;color:#074c73}.muted{color:#678396}.small{font-size:.8rem}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field label{font-weight:700;font-size:.84rem}.field input,.field select,.field textarea{width:100%;border:1px solid #d8e7ed;background:#fbfdff;padding:12px;border-radius:9px;color:#163c54;outline-color:#139adb}.field textarea{min-height:74px;resize:vertical}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.action{border:0;background:#027ac0;color:white;padding:12px 18px;border-radius:10px;font-weight:700}.action.secondary{background:#e6f4fa;color:#036c9e}.action.danger{background:#d34452}.action.small{padding:7px 10px;font-size:.78rem}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.tag{display:inline-flex;border-radius:20px;background:#e3f5fc;color:#087eb6;font-size:.72rem;font-weight:700;padding:5px 9px}.tag.good{background:#dff6eb;color:#117d5b}.tag.warn{background:#fff0d6;color:#995e18}.line{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid #eef3f6}.line:last-child{border:0}.note{background:#eaf6fd;padding:13px;border-radius:10px;font-size:.85rem;color:#436a82;margin:10px 0}.warning{background:#fff4dd;color:#875518}.error{background:#ffebed;color:#a13945}.empty{color:#8096a5;text-align:center;padding:28px}.tabs{display:flex;gap:6px;margin:0 0 15px;flex-wrap:wrap}.tabs button{border:0;border-radius:20px;padding:9px 15px;background:#e8f0f5;color:#587586;font-weight:700}.tabs button.on{background:#056fa9;color:white}.map{height:260px;border-radius:12px;overflow:hidden;background:#e5eef3;margin:12px 0}.confirm{display:flex;align-items:center;gap:12px;background:#eaf5f9;padding:14px;border-radius:12px;margin:12px 0}.confirm input{flex:1;accent-color:#0480c0}.confirm strong{font-size:.8rem}.qty{font-family:Manrope;font-size:1.55rem;font-weight:800}.authwrap{max-width:480px;margin:12px auto}.between{display:flex;align-items:center;justify-content:space-between;gap:12px}.pill{display:inline-block;padding:7px 12px;background:#e7f7ff;border-radius:8px;font-size:.83rem}.pill.red{background:#fff0ee;color:#a74d40}.toast{position:fixed;bottom:22px;right:22px;background:#133c52;color:white;border-radius:12px;padding:14px 18px;box-shadow:0 7px 25px #385f7470;max-width:390px;z-index:9999}.toast.bad{background:#a43d49}.link{color:#007bb6;text-decoration:none;font-weight:700}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.85rem}th{text-align:left;color:#648496;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase}td,th{padding:12px 8px;border-bottom:1px solid #e7eef2}.info{font-size:.87rem;line-height:1.5}.footer{text-align:center;font-size:.72rem;color:#8fa4b0;padding-top:30px}@media(max-width:750px){.shell{padding:12px 15px 76px}.layout{grid-template-columns:1fr;gap:10px}.sidebar{flex-direction:row;overflow-x:auto;gap:5px;padding-bottom:5px}.sidebtn{white-space:nowrap;padding:10px 12px;font-size:.82rem}.top{flex-wrap:wrap;padding-bottom:12px}.nav{width:100%}.nav button{flex:1;font-size:.81rem;padding:9px}.grid,.grid.three{grid-template-columns:1fr}.card{padding:16px}.hero{padding:21px}.hero .drop{display:none}.two{grid-template-columns:1fr}.map{height:235px}}

/* Onboarding polish and non-blocking accessible feedback */
.authwrap{max-width:510px}
.authwrap .card{padding:29px}
.authwrap h2{font-size:1.42rem;margin-bottom:8px}
.authwrap .tabs{background:#eef5f8;border-radius:11px;padding:4px}
.authwrap .tabs button{flex:1;border-radius:9px}
.role-pick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.role-choice{display:flex;gap:9px;align-items:flex-start;border:1px solid #dae8ef;border-radius:12px;padding:14px 11px;background:#f9fcfe;cursor:pointer;font-weight:500}
.role-choice:has(input:checked){border-color:#228cc6;background:#eef8ff;box-shadow:0 0 0 2px #bbdfef}
.role-choice input{margin-top:4px;accent-color:#087fc0}
.role-choice span{display:grid;gap:4px}.role-choice small{font-size:.73rem;line-height:1.4;color:#678396}
.password-wrap{position:relative}.password-wrap .field{margin-bottom:14px}.password-wrap input{padding-right:76px}
.password-toggle{position:absolute;right:6px;bottom:6px;border:0;background:#eaf3f8;color:#177ca8;border-radius:7px;font-size:.8rem;font-weight:700;padding:7px 12px}
.onboarding-head{margin-bottom:13px}.auth-success{display:grid;justify-items:center;gap:13px;text-align:center;padding:23px 8px}.auth-success p{font-size:.9rem;line-height:1.6;color:#587488}
.toast{background:#eaf9f5!important;color:#146d57!important;box-shadow:0 6px 22px #267b6e20!important;border:1px solid #cbece3;animation:toaster .23s ease-out;max-width:400px;font-size:.86rem;font-weight:600}
.toast.bad{background:#fff1f3!important;color:#a13b51!important;border-color:#ffd3db}
@keyframes toaster{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #7bc7f5;outline-offset:2px}
@media(max-width:530px){.authwrap .card{padding:19px}.role-pick{grid-template-columns:1fr}.role-choice{padding:11px 12px}}
