:root{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#10243e;background:#f5f8fb}*{box-sizing:border-box}body{margin:0}.shell{max-width:980px;margin:auto;padding:28px 18px 70px}.hero{padding:24px 0 20px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.16em;color:#0b8fa2}.hero h1{font-size:clamp(28px,5vw,48px);margin:10px 0 8px}.hero p{color:#65758a;max-width:650px;line-height:1.5}.card{background:#fff;border:1px solid #e2eaf1;border-radius:20px;padding:24px;box-shadow:0 12px 35px #24476d12}.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:grid;gap:7px;font-size:13px;font-weight:700}input,select,textarea{width:100%;border:1px solid #d7e1ea;border-radius:11px;padding:12px 13px;font:inherit;color:inherit;background:#fff}textarea{min-height:90px;resize:vertical}.wide{grid-column:1/-1}.primary{margin-top:20px;border:0;border-radius:11px;padding:13px 18px;background:#087fa1;color:#fff;font-weight:800;cursor:pointer}.message{min-height:20px;margin:12px 0 0;font-size:14px}.success{color:#17834c}.error{color:#c0392b}h2{margin:34px 0 14px}.deliveries{display:grid;gap:10px}.delivery{background:#fff;border:1px solid #e2eaf1;border-radius:15px;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:16px}.delivery div{display:grid;gap:5px}.delivery span,.delivery small,.muted{color:#718196}.cancel{border:1px solid #e55353;background:#fff;color:#c0392b;border-radius:9px;padding:9px 12px;cursor:pointer;white-space:nowrap}.cancel:disabled{opacity:.6;cursor:default}@media(max-width:650px){.grid{grid-template-columns:1fr}.wide{grid-column:auto}.delivery{align-items:flex-start;flex-direction:column}.cancel{width:100%}.card{padding:17px}}
.is-hidden{display:none!important}.slot-picker{margin-top:24px;padding-top:20px;border-top:1px solid #e5edf3}.slot-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.slot-heading h2{margin:0 0 5px;font-size:21px}.slot-heading p{margin:0}.selected-slot{background:#e7f6f5;color:#087f82;border-radius:999px;padding:9px 12px;font-size:12px;font-weight:800;white-space:nowrap}.slot-group h3{font-size:14px;margin:22px 0 10px;color:#52677d}.slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.slot{border:1px solid #d8e5ec;background:#fff;border-radius:12px;padding:12px;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:8px;color:#10243e;cursor:pointer}.slot strong{font-size:16px}.slot small{font-size:11px;color:#17834c}.slot:hover,.slot.is-selected{border-color:#087fa1;box-shadow:0 0 0 2px #087fa11c;background:#f2fbfc}.slot.is-busy{background:#f6f8fa;color:#a3afbb;cursor:not-allowed}.slot.is-busy small{color:#a3afbb}.lunch-divider{display:flex;align-items:center;gap:12px;margin:24px 0 2px;color:#8a99a8;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.lunch-divider:before,.lunch-divider:after{content:"";height:1px;background:#dfe8ee;flex:1}.primary:disabled{opacity:.45;cursor:not-allowed}
.admin-shell{max-width:none;padding-left:clamp(22px,4vw,72px);padding-right:clamp(22px,4vw,72px)}.admin-shell .hero{max-width:1200px}.admin-shell #loginCard{max-width:none}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.admin-form{display:grid;gap:14px}.admin-form .primary{margin-top:4px}.check{display:flex;align-items:center;gap:8px;font-weight:600}.check input{width:auto}.admin-bar{display:flex;align-items:center;justify-content:space-between;margin:0 0 18px}.admin-bar h2{margin:5px 0 0}.inline-form{display:flex;gap:8px}.inline-form input{min-width:0}.inline-form .primary{margin:0;white-space:nowrap}.admin-list{display:grid;gap:8px;margin-top:16px}.admin-row{display:grid;gap:4px;padding:13px;border:1px solid #e1eaf0;border-radius:12px}.admin-row span,.admin-row small{color:#718196}.tag{display:inline-block;background:#e7f6f5;color:#087f82;border-radius:999px;padding:7px 10px;font-size:13px;font-weight:700}hr{border:0;border-top:1px solid #e5edf3;margin:25px 0}@media(max-width:760px){.admin-grid{grid-template-columns:1fr}.admin-bar{align-items:flex-start}}
.link-button{display:inline-block;text-decoration:none;margin-top:10px}
.detail-meta{cursor:pointer}.detail-meta div:hover{background:#eaf7f7;outline:1px solid #8bd0d1}.route-photos{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 0 46px}.route-photos img{width:54px;height:42px;object-fit:cover;border-radius:7px;border:1px solid #dbe7ec;cursor:grab;transition:opacity .15s,box-shadow .15s}.route-photos img:active{cursor:grabbing}.route-photos img.photo-dragging{opacity:.45;box-shadow:0 5px 15px #193b5720}.photo-add{display:grid;place-items:center;width:54px;height:42px;border:1px dashed #a7c6ce;border-radius:7px;color:#087f82;font-size:10px;font-weight:800;cursor:pointer}.photo-add input{display:none}
.viewer-image{display:block;max-width:min(90vw,1000px);max-height:78vh;object-fit:contain;border-radius:10px}.viewer-close{position:absolute;right:12px;top:8px;border:0;background:#ffffffdd;border-radius:50%;font-size:24px;width:34px;height:34px;cursor:pointer}.viewer-actions{display:flex;width:100%;justify-content:center;margin-top:12px}.viewer-delete{margin-left:0;background:#fff}
.boarding-pass{position:relative;display:flex;align-items:stretch;gap:18px;overflow:hidden;background:linear-gradient(115deg,#eefbf4,#dff6eb);border-color:#bde8d1;padding:0}.boarding-pass:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:#36aa76}.boarding-main{flex:1;min-width:0;padding:20px 6px 20px 25px}.boarding-status{display:block;color:#259262;font-size:10px;font-weight:900;letter-spacing:.1em;margin-bottom:9px}.boarding-main>b{display:block;color:#14553d;font-size:18px;margin-bottom:7px}.boarding-slot{display:block;color:#2f7258;font-size:14px;font-weight:800}.boarding-details{display:flex;flex-wrap:wrap;gap:18px;margin-top:18px;padding-top:14px;border-top:1px dashed #9fd8b9}.boarding-details span{display:grid;gap:4px;color:#245d47;font-size:13px;font-weight:700}.boarding-details small{color:#5b9a7a;font-size:9px;letter-spacing:.08em}.boarding-actions{display:flex;flex-direction:column;justify-content:center;gap:9px;min-width:148px;padding:18px 18px 18px 0}.route-button{border:0;border-radius:10px;padding:12px 13px;background:#238f61;color:#fff;font:inherit;font-size:12px;font-weight:900;cursor:pointer;white-space:nowrap}.route-button span{font-size:17px;vertical-align:-1px;margin-left:5px}.boarding-actions .cancel{margin:0;border-color:#efaaa0;background:#fff8f6;font-size:11px}.route-view{margin-top:30px}.driver-back{display:inline-flex;align-items:center;border:0;border-radius:10px;background:#e7f6f5;padding:12px 15px;color:#087f82;font:inherit;font-size:13px;font-weight:900;cursor:pointer}.route-view-card{margin-top:18px;max-width:760px}.route-view-card h2{margin:10px 0 7px;color:#123d2c}.route-instructions{margin-top:22px;padding:17px;border-radius:12px;background:#f0faf4;color:#245d47;line-height:1.6;white-space:pre-wrap}.driver-route-photos{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.driver-route-photo{width:130px;height:96px;object-fit:cover;border:2px solid #c8e9d6;border-radius:11px;cursor:zoom-in;transition:transform .15s,box-shadow .15s}.driver-route-photo:hover{transform:translateY(-2px);box-shadow:0 7px 18px #205c3c24}
.route-menu-popover{position:absolute;z-index:30;display:grid;min-width:170px;padding:6px;background:#fff;border:1px solid #dfe9ef;border-radius:10px;box-shadow:0 12px 30px #193b5726}.route-menu-popover button{border:0;background:#fff;text-align:left;padding:10px 12px;border-radius:7px;color:#29465b;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.route-menu-popover button:hover{background:#f1f7f9}.route-menu-popover .is-danger{color:#c0392b}
.page{display:none}.page.active{display:block}.sidebar nav button{border:0;text-align:left;font:inherit;width:100%;cursor:pointer;background:transparent}.welcome-panel{display:flex;align-items:center;gap:18px;background:linear-gradient(110deg,#0b8ca4,#126c91);color:#fff;border-radius:18px;padding:26px 30px}.welcome-panel h2{margin:0 0 8px;font-size:19px}.welcome-panel p{margin:0;max-width:680px;color:#d5f1f3;font-size:13px;line-height:1.55}.welcome-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#ffffff24;font-size:25px}.welcome-panel .ghost-action{margin-left:auto;background:#ffffff;color:#0b7187;white-space:nowrap}.narrow-panel{max-width:720px}.check-grid{display:flex;flex-wrap:wrap;gap:9px}.report-check{display:flex;align-items:center;gap:8px;border:1px solid #dfe9ef;border-radius:9px;padding:10px 12px;font-size:13px;font-weight:700;color:#334e63;cursor:pointer}.report-check input{width:auto}.journal{margin-top:16px;padding:0;overflow:hidden}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:720px;font-size:12px}th,td{text-align:left;padding:14px 17px;border-bottom:1px solid #edf2f5;vertical-align:middle}th{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#8495a2;background:#fbfcfd}td{color:#29465b}td small{color:#8495a2;font-size:11px}.status-pill{display:inline-block;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:800;background:#eaf7ef;color:#2d9560}.status-pill.cancelled_by_driver{background:#fff0ee;color:#c65c53}.status-pill.booked{background:#fff5df;color:#c8882c}.settings-panel{max-width:620px}.settings-panel h3{margin:0}.settings-panel hr{width:100%}
.detail-head{display:flex;align-items:center;gap:24px;margin-bottom:24px}.detail-head h2{margin:6px 0 3px}.back-button{border:0;background:none;color:#087f82;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.danger-button{margin-left:auto;border:1px solid #e55353;border-radius:9px;padding:10px 14px;background:#fff;color:#c0392b;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.detail-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:18px}.detail-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.detail-meta div{padding:14px;background:#f6f9fa;border-radius:11px;color:#344d63;font-size:13px}.detail-meta b{display:block;color:#8495a2;font-size:10px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.route-list{display:grid;gap:10px}.route-card{position:relative;display:flex;align-items:flex-start;gap:12px;padding:14px 56px 14px 14px;border:1px solid #e1ebf0;border-radius:12px;cursor:grab;transition:box-shadow .15s,border-color .15s,opacity .15s}.route-card:active{cursor:grabbing}.route-card.is-dragging{opacity:.45;border-color:#087f82;box-shadow:0 8px 20px #193b5720}.route-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#e5f7f7;color:#078c99;flex:none}.route-card h4{margin:3px 0 5px;font-size:14px}.route-card p{margin:0;color:#718196;font-size:12px;line-height:1.45}.route-card .more{position:absolute;right:14px;top:14px;margin:0;padding:4px 2px}.route-empty{display:grid;gap:7px;padding:28px 12px;text-align:center;border:1px dashed #cbdbe2;border-radius:12px;color:#344d63;font-size:13px}.route-empty span{color:#8495a2;font-size:12px}
.login-screen{min-height:100vh;display:grid;place-items:center;padding:32px;background:linear-gradient(135deg,#f5f8fb 0%,#eef8f8 100%)}.login-brand{position:fixed;top:30px;left:38px;display:flex;align-items:center;gap:10px;color:#0b7891;font-size:12px;font-weight:900;letter-spacing:.16em}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#0d8ca4;color:#fff;font-weight:900;letter-spacing:0}.login-box{width:min(470px,100%);padding:38px;background:#fff;border:1px solid #e0eaf0;border-radius:24px;box-shadow:0 24px 60px #193b5714}.login-box h1{font-size:34px;margin:10px 0 8px}.login-box>p{color:#718196;line-height:1.5;margin:0 0 28px}.app-frame{min-height:100vh;display:flex;background:#f5f8fb}.sidebar{width:255px;flex:none;display:flex;flex-direction:column;background:#092844;color:#d8e8f1;padding:28px 18px 22px}.brand{display:flex;gap:11px;align-items:center;padding:0 11px 42px}.brand b,.brand small,.sidebar-bottom b,.sidebar-bottom small{display:block}.brand b{color:#fff;font-size:16px}.brand small,.sidebar-bottom small{font-size:11px;color:#8eacbd;margin-top:3px}.sidebar nav{display:grid;gap:7px}.nav-item{padding:13px 14px;color:#a8c1cf;text-decoration:none;border-radius:11px;font-size:13px;font-weight:700}.nav-item span{display:inline-block;width:25px;color:#7dd4d8;font-size:17px;vertical-align:-2px}.nav-item.active,.nav-item:hover{color:#fff;background:#174867}.sidebar-bottom{margin-top:auto;border-top:1px solid #23465d;padding:18px 9px 0;display:flex;align-items:center;gap:10px}.account-dot{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:#f1a35b;color:#fff;font-weight:800}.sidebar-bottom b{font-size:12px;color:#fff}.sidebar-bottom button{margin-left:auto;background:none;border:0;color:#9eb9c8;font-size:20px;cursor:pointer}.workspace{min-width:0;flex:1}.topbar{display:flex;align-items:center;justify-content:space-between;padding:38px clamp(28px,4vw,64px) 24px;background:#fff;border-bottom:1px solid #e4edf2}.topbar h1{font-size:27px;margin:7px 0 0;color:#0b2745}.top-action,.ghost-action{border:0;border-radius:10px;padding:12px 16px;background:#0b8ca4;color:#fff;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.ghost-action{background:#e7f6f5;color:#087f82}.content{padding:30px clamp(28px,4vw,64px) 70px;max-width:1500px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stat-card{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #e1ebf0;border-radius:15px;padding:19px}.stat-card small,.stat-card strong{display:block}.stat-card small{color:#718196;font-size:12px}.stat-card strong{font-size:27px;margin-top:6px;color:#0b2947}.stat-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;font-size:21px}.cyan{background:#e5f7f7;color:#0a8b99}.violet{background:#efebff;color:#7961cb}.orange{background:#fff0df;color:#dc8a31}.green{background:#e3f7ed;color:#2b9b64}.section-head{display:flex;align-items:end;justify-content:space-between;margin:40px 0 17px}.section-head h2{margin:6px 0 0;font-size:22px}.object-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.object-card,.empty-card,.panel{background:#fff;border:1px solid #e1ebf0;border-radius:16px;padding:20px}.object-card-top{display:flex;justify-content:space-between}.object-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#e4f7f7;color:#078c99;font-size:21px}.more{border:0;background:none;color:#95a5b1;font-weight:900;letter-spacing:2px}.object-card h3{font-size:18px;margin:19px 0 7px}.address{color:#718196;font-size:12px;min-height:32px;margin:0;line-height:1.5}.object-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid #edf2f5;border-bottom:1px solid #edf2f5;padding:14px 0;margin:17px 0 13px}.object-meta span,.object-footer span{font-size:11px;color:#718196}.object-meta b{display:block;color:#344d63;margin-bottom:5px;font-size:10px;text-transform:uppercase;letter-spacing:.04em}.object-footer{display:flex;justify-content:space-between;align-items:center}.status-dot{color:#329b68!important}.object-open{width:100%;margin-top:16px;background:#f3f7f9;border:0;border-radius:9px;padding:11px;color:#1c536c;font:inherit;font-size:12px;font-weight:800;display:flex;justify-content:space-between;cursor:pointer}.lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px}.panel-head h3{margin:0;font-size:17px}.panel-head p{margin:7px 0 18px;color:#718196;font-size:12px}.tag-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.invite-line{display:flex;gap:9px}.invite-line select{flex:0 0 145px}.invite-line .primary{margin:0;flex:1}.empty-card{grid-column:1/-1;text-align:center;padding:50px 20px}.empty-icon{display:grid;place-items:center;margin:auto;width:54px;height:54px;border-radius:16px;background:#e5f7f7;color:#078c99;font-size:28px}.empty-card h3{margin:16px 0 7px}.empty-card p{color:#718196;font-size:13px;margin:0 0 20px}.empty-card .primary{margin:0}dialog{border:0;border-radius:20px;padding:0;background:transparent;box-shadow:0 24px 70px #193b5730}dialog::backdrop{background:#09284466;backdrop-filter:blur(3px)}.dialog-card{position:relative;width:min(520px,calc(100vw - 32px));padding:30px;background:#fff;border-radius:20px}.dialog-card h2{margin:8px 0}.dialog-card .muted{margin-bottom:22px;font-size:13px}.dialog-close{position:absolute;right:18px;top:15px;border:0;background:none;font-size:25px;color:#718196;cursor:pointer}@media(max-width:1000px){.object-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.sidebar{width:68px;padding-left:8px;padding-right:8px}.brand div,.nav-item:not(.active){font-size:0}.brand{padding:0 8px 42px}.brand-mark{width:36px}.nav-item{padding:13px 10px;text-align:center}.nav-item span{width:auto}.sidebar-bottom div:not(.account-dot),.sidebar-bottom button{display:none}.sidebar-bottom{justify-content:center;padding-left:0;padding-right:0}.topbar{padding:26px 20px}.topbar h1{font-size:21px}.content{padding:22px 20px}.lower-grid{grid-template-columns:1fr}.object-grid{grid-template-columns:1fr}.stats{gap:9px}.stat-card{padding:13px}.stat-card strong{font-size:21px}.top-action{font-size:0;padding:12px}.top-action:first-letter{font-size:18px}.login-brand{left:20px}}
.boarding-pass{flex-direction:column;gap:0}.boarding-main{padding:18px 18px 15px 22px}.boarding-actions{flex-direction:row;align-items:center;min-width:0;padding:0 18px 18px 22px}.route-button,.boarding-actions .cancel{flex:1}.boarding-details{gap:12px}.route-view-card{padding:20px}.driver-route-photo{width:calc(50% - 5px);height:110px}.boarding-comment{margin:14px 0 0;padding-top:12px;border-top:1px solid #c8e9d6;color:#477960;font-size:12px;line-height:1.45}
.boarding-slot{font-size:17px;font-weight:950;color:#246b4d;letter-spacing:.01em}.boarding-actions{align-items:stretch}.route-button{display:flex;align-items:center;justify-content:space-between;width:100%}.route-button span{line-height:1;margin-left:12px}.boarding-actions .cancel{width:100%}
.route-card{display:grid;grid-template-columns:34px minmax(0,1fr) minmax(118px,auto) 30px;align-items:start;column-gap:12px;min-height:72px}.route-card>.route-icon{grid-column:1;grid-row:1}.route-card>div:not(.route-photos){grid-column:2;grid-row:1;min-width:0}.route-card>.route-photos{grid-column:3;grid-row:1;display:flex;flex-wrap:nowrap;align-items:center;gap:7px;min-width:0;max-width:100%;margin:0;overflow-x:auto;overflow-y:hidden;padding:0 1px 2px}.route-card>.route-photos img,.route-card>.route-photos .photo-add{flex:0 0 54px}.route-card>.more{position:static;grid-column:4;grid-row:1;align-self:start;margin:0;padding:4px 2px}.route-card h4,.route-card p{overflow-wrap:anywhere}
@media(max-width:760px){body:has(.admin-shell) .route-card{grid-template-columns:34px minmax(0,1fr) 30px;row-gap:10px}.route-card>.route-photos{grid-column:2/4;grid-row:2;justify-content:flex-start;max-width:100%;overflow-x:auto}.route-card>.more{grid-column:3;grid-row:1}.route-card{min-height:0}}
.route-icon img{width:34px;height:34px;display:block;border-radius:50%;object-fit:cover}.route-icon-picker{display:flex;gap:9px;flex-wrap:wrap;margin:4px 0 16px;padding:10px;border:1px solid #dfe9ef;border-radius:10px}.route-icon-picker legend{width:100%;padding:0;color:#718196;font-size:11px;font-weight:800}.route-icon-picker label{position:relative;display:block;cursor:pointer}.route-icon-picker input{position:absolute;opacity:0}.route-icon-picker img{width:54px;height:54px;border-radius:50%;border:2px solid transparent;display:block}.route-icon-picker input:checked+img{border-color:#0b8ca4;box-shadow:0 0 0 3px #d9f1f1}.admin-compact-icon{width:34px;height:34px;border-radius:50%;object-fit:cover;justify-self:end}.admin-delivery-icon{width:42px;height:42px;border-radius:50%;object-fit:cover;flex:none}.admin-delivery-head>div:first-child{display:flex;align-items:center;gap:10px}
.admin-compact-delivery{grid-template-columns:120px 24px 34px 240px minmax(0,1fr) 150px}.admin-compact-delivery .admin-compact-icon{grid-column:3;grid-row:1/3;justify-self:center}.admin-compact-delivery .admin-compact-supplier{grid-column:4}.admin-compact-delivery .admin-compact-cargo{grid-column:5}.admin-compact-delivery .status-pill{grid-column:6}@media(max-width:650px){.admin-compact-delivery{grid-template-columns:82px 24px 34px minmax(0,1fr) auto}.admin-compact-delivery .admin-compact-icon{grid-column:3;grid-row:1/3}.admin-compact-delivery .admin-compact-supplier{grid-column:4}.admin-compact-delivery .admin-compact-cargo{grid-column:4;grid-row:2}.admin-compact-delivery .status-pill{grid-column:5;grid-row:1}}
.boarding-main{padding-right:190px}.boarding-slot{position:absolute;right:178px;top:50%;transform:translateY(-50%);display:grid;min-width:145px;padding:12px 10px;text-align:center;background:#f8fffa;border:1px solid #b9e3c9;border-radius:12px}.boarding-slot small{color:#65a180;font-size:10px;font-weight:800;letter-spacing:.04em}.boarding-slot strong{color:#14553d;font-size:22px;line-height:1.2;white-space:nowrap}
.completed-card{display:block;padding:0;overflow:hidden;border-color:#d8e9df;background:#f8fcf9}.completed-card summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 20px;cursor:pointer;list-style:none}.completed-card summary::-webkit-details-marker{display:none}.completed-card summary>span{display:grid;gap:5px}.completed-card summary b{color:#2c6f4d;font-size:14px}.completed-card summary small{color:#7d9d8b;font-size:11px}.completed-card summary em{font-style:normal;color:#2c9560;font-size:10px;font-weight:900;letter-spacing:.08em}.completed-body{border-top:1px solid #d8e9df}.completed-body .boarding-main{padding-top:18px}.completed-body .boarding-actions{padding-bottom:18px}
@media(max-width:650px){.boarding-main{padding-right:18px}.boarding-slot{position:static;transform:none;display:block;min-width:0;margin:12px 0 0;padding:0;text-align:left;background:none;border:0}.boarding-slot small{display:inline;margin-right:8px;font-size:11px}.boarding-slot strong{font-size:17px}}
.users-lead{margin:-8px 0 22px}.users-list{display:grid;gap:16px;max-width:900px}.user-access-card{background:#fff;border:1px solid #e1ebf0;border-radius:16px;padding:22px}.user-access-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.user-access-head h3{margin:8px 0 4px;color:#0b2947}.user-access-head p{margin:0;color:#718196;font-size:13px}.user-role{color:#0b8fa2;font-size:10px;font-weight:900;letter-spacing:.12em}.user-object-title{margin:22px 0 10px;color:#344d63;font-size:12px;font-weight:800}.user-object-checks{display:flex;flex-wrap:wrap;gap:9px}.user-object-check{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #dfe9ef;border-radius:9px;color:#29465b;font-size:13px;cursor:pointer}.user-object-check input{width:auto}.user-access-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:19px;padding-top:15px;border-top:1px solid #edf2f5}.user-access-footer .primary{margin:0}.receiver-toolbar{display:flex;gap:14px;align-items:end;margin-bottom:22px}.receiver-toolbar label{min-width:180px}.receiver-toolbar label:first-child{min-width:155px}.receiver-deliveries{display:grid;gap:12px;max-width:1100px}.receiver-delivery{display:flex;gap:20px;background:#fff;border:1px solid #e1ebf0;border-radius:16px;padding:18px 20px}.receiver-time{min-width:78px;color:#0b8ca4;font-size:24px;font-weight:900}.receiver-time small{display:block;color:#718196;font-size:11px;font-weight:600;margin-top:3px}.receiver-delivery-main{flex:1;min-width:0}.receiver-delivery-head{display:flex;justify-content:space-between;gap:14px}.receiver-delivery-head h3{margin:7px 0 0;color:#0b2947}.receiver-details{display:flex;flex-wrap:wrap;gap:20px;margin-top:17px;padding-top:13px;border-top:1px solid #edf2f5}.receiver-details span{display:grid;gap:4px;color:#29465b;font-size:13px;font-weight:700}.receiver-details small{color:#8495a2;font-size:9px;letter-spacing:.08em}.receiver-comment{margin:14px 0 0;padding-top:12px;border-top:1px dashed #dfe9ef;color:#718196;font-size:12px;white-space:pre-wrap}.receiver-empty{padding:45px;text-align:center;border:1px dashed #cbdbe2;border-radius:15px;color:#718196}@media(max-width:650px){.user-access-footer,.receiver-toolbar,.receiver-delivery-head{align-items:stretch;flex-direction:column}.user-access-footer .primary{width:100%}.receiver-toolbar label{min-width:0}.receiver-delivery{gap:12px;padding:15px;flex-direction:column}.receiver-time{font-size:22px}.receiver-details{gap:12px}}
.admin-shell #loginCard .login-brand{display:none}.delivery-toolbar{display:flex;align-items:end;gap:10px}.delivery-toolbar label{min-width:150px}.delivery-toolbar .ghost-action{margin:0}.admin-delivery-list{display:grid;gap:12px;max-width:1100px}.admin-delivery-row{display:flex;gap:20px;background:#fff;border:1px solid #e1ebf0;border-radius:16px;padding:18px 20px}.admin-delivery-time{min-width:78px;color:#0b8ca4}.admin-delivery-time b{display:block;font-size:24px}.admin-delivery-time small{display:block;color:#718196;font-size:11px;margin-top:3px}.admin-delivery-body{flex:1;min-width:0}.admin-delivery-head{display:flex;justify-content:space-between;gap:15px}.admin-delivery-head h3{margin:7px 0 0;color:#0b2947}.admin-delivery-meta{display:flex;flex-wrap:wrap;gap:20px;margin-top:17px;padding-top:13px;border-top:1px solid #edf2f5}.admin-delivery-meta span{display:grid;gap:4px;color:#29465b;font-size:13px;font-weight:700}.admin-delivery-meta small{color:#8495a2;font-size:9px;letter-spacing:.08em}.mobile-more-trigger,.mobile-more-menu{display:none}.archive-user{border:1px solid #e55353;border-radius:9px;padding:10px 13px;background:#fff;color:#c0392b;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.is-archived{opacity:.72}
.admin-shell #dashboard .page>.section-head{display:none}
.admin-shell #dashboard .welcome-panel{display:none}
.accept-delivery{margin-top:18px;border:0;border-radius:10px;padding:12px 16px;background:#238f61;color:#fff;font:inherit;font-size:12px;font-weight:900;cursor:pointer}.accepted-comment{color:#2d8c5e}.accepted-comment b{font-weight:900}
.receipt-card{cursor:pointer;transition:border-color .15s,box-shadow .15s}.receipt-card:hover{border-color:#9bd6b5;box-shadow:0 8px 24px #238f6118}.receipt-hint{margin:13px 0 0;color:#2d9560;font-size:11px;font-weight:800}.receipt-view-card{width:min(680px,calc(100vw - 32px))}.receipt-view-comment{margin:18px 0 0;padding:14px;border-radius:12px;background:#f3faf5;color:#315d47;font-size:13px;line-height:1.5}.receipt-photos{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.receipt-photo{width:128px;height:96px;border-radius:10px;object-fit:cover;cursor:zoom-in;border:1px solid #dce9e1}.receipt-photo-view{position:relative;width:min(900px,calc(100vw - 32px));padding:12px;background:#092844;border-radius:18px}.receipt-photo-view img{display:block;max-width:100%;max-height:80vh;margin:auto;border-radius:10px}.receipt-photo-view .dialog-close{color:#fff;z-index:1}.receipt-photo-view .gallery-caption{margin-top:9px;color:#fff;text-align:center;font-size:12px;font-weight:800}.receipt-photo-view .gallery-arrow{border:0}.receipt-photo-view .gallery-arrow:disabled{display:none}
.driver-photo-note{color:#347b58}.driver-photo-note b{font-weight:900}
.gallery-arrow{position:absolute;top:50%;z-index:2;width:42px;height:42px;border:0;border-radius:50%;background:#ffffffdd;color:#092844;font-size:35px;line-height:30px;cursor:pointer;transform:translateY(-50%)}.gallery-arrow:disabled{opacity:.25;cursor:default}.gallery-prev{left:22px}.gallery-next{right:22px}.gallery-count{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);padding:5px 9px;border-radius:999px;background:#092844cc;color:#fff;font-size:12px;font-weight:800}
.accept-photo-tools{display:grid;gap:7px;margin-top:4px}.accept-photo-tools>b{font-size:13px}.accept-photo-tools p{margin:0;font-size:12px}.accept-photo-tools>input{display:none}.photo-add-button{width:max-content;border:1px dashed #76bda0;border-radius:10px;padding:10px 13px;background:#f3faf5;color:#238f61;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.accept-photo-preview{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.accept-photo-item{position:relative;display:block;width:74px;height:58px}.accept-photo-item img{width:100%;height:100%;object-fit:cover;border-radius:8px;border:1px solid #cfe5d8}.accept-photo-item button{position:absolute;right:-6px;top:-7px;width:21px;height:21px;border:0;border-radius:50%;background:#c0392b;color:#fff;font-weight:800;cursor:pointer}.accept-photo-item button:focus{outline:2px solid #fff}
.accept-photo-buttons{display:flex;flex-wrap:wrap;gap:8px}.photo-gallery-button{border:1px solid #d5e4e9;border-radius:10px;padding:10px 13px;background:#fff;color:#466274;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.capture-card{position:relative;width:min(820px,calc(100vw - 24px));padding:20px;background:#fff;border-radius:20px}.capture-card h2{margin:8px 0 14px}.capture-card video{display:block;width:100%;max-height:74vh;min-height:360px;object-fit:cover;border-radius:14px;background:#092844}.capture-button{position:absolute;left:50%;bottom:62px;z-index:3;display:grid;place-items:center;width:68px;height:68px;margin:0;padding:0;border:5px solid #fff;border-radius:16px;background:#0b8ca4;color:#fff;font-size:34px;line-height:1;cursor:pointer;transform:translateX(-50%);box-shadow:0 5px 18px #09284466}.capture-button:active{transform:translateX(-50%) scale(.94)}.capture-card .message{font-size:12px}.capture-card .dialog-close{z-index:4}
.capture-gallery-button{display:block;width:100%;margin-top:8px}
dialog[open]:has(.capture-card){position:fixed;inset:0;width:100vw;max-width:none;height:100vh;max-height:none;margin:0;padding:16px;background:transparent;display:grid;place-items:center;overflow:auto}
.admin-photo-card{cursor:pointer;transition:border-color .15s,box-shadow .15s}.admin-photo-card:hover{border-color:#9bd6b5;box-shadow:0 8px 24px #238f6118}.admin-photo-hint{display:flex;align-items:center;gap:8px;margin:13px 0 0;color:#2d9560;font-size:11px;font-weight:800}.admin-open-photos{border:0;border-radius:7px;padding:5px 9px;background:#eaf8f1;color:#238f61;font:inherit;font-size:10px;font-weight:900;cursor:pointer}.admin-open-photos:hover{background:#d8f0e3}.admin-photo-dialog{width:min(760px,calc(100vw - 32px))}.admin-photo-item{margin:0;display:grid;gap:5px}.admin-photo-item figcaption{color:#718196;font-size:10px;font-weight:800}.admin-photo-item .receipt-photo{display:block}
.cargo-photo-card{cursor:pointer}.cargo-photo-card:hover{border-color:#9bd6b5;box-shadow:0 8px 24px #238f6118}
.receiver-mode .nav-item[data-page="objects"],.receiver-mode .nav-item[data-page="users"],.receiver-mode .page[data-section="objects"],.receiver-mode .page[data-section="object-detail"],.receiver-mode .page[data-section="users"],.receiver-mode #quickAdd,.receiver-mode #quickAdd2{display:none!important}
.capture-button{bottom:100px!important}.capture-flash{animation:captureFlash .35s ease-out}.capture-button.capture-flash{animation:captureButtonFlash .35s ease-out}@keyframes captureFlash{0%{filter:brightness(2.1)}100%{filter:brightness(1)}}@keyframes captureButtonFlash{0%{transform:translateX(-50%) scale(1.12);box-shadow:0 0 0 9px #ffffff99,0 5px 18px #09284466}100%{transform:translateX(-50%) scale(1);box-shadow:0 5px 18px #09284466}}
.admin-accept-delivery{margin-top:18px;border:0;border-radius:10px;padding:12px 16px;background:#238f61;color:#fff;font:inherit;font-size:12px;font-weight:900;cursor:pointer}.delivery-detail-actions{margin-top:14px}.delivery-detail-actions .admin-accept-delivery{margin-top:0}
.status-pill{white-space:nowrap;flex:none}.receiver-delivery-head .status-pill,.admin-delivery-head .status-pill{align-self:flex-start}
@media(max-width:760px){body:has(.admin-shell) .sidebar .nav-item[data-page="objects"],body:has(.admin-shell) .sidebar .nav-item[data-page="users"],body:has(.admin-shell) .sidebar .nav-item[data-page="settings"]{display:none}.receiver-mode .mobile-more-menu button[data-page="objects"],.receiver-mode .mobile-more-menu button[data-page="users"]{display:none}.mobile-more-trigger{display:grid!important}.mobile-more-menu{position:fixed;z-index:40;right:12px;bottom:72px;display:none;min-width:170px;padding:6px;background:#fff;border:1px solid #dfe9ef;border-radius:12px;box-shadow:0 12px 30px #193b5726}.mobile-more-menu.is-open{display:grid}.mobile-more-menu button{border:0;background:#fff;text-align:left;padding:12px;border-radius:8px;color:#29465b;font:inherit;font-size:13px;font-weight:700}.mobile-more-menu button:hover{background:#f1f7f9}.delivery-toolbar{align-items:stretch;flex-direction:column}.delivery-toolbar label{min-width:0}.admin-delivery-row{gap:12px;padding:15px;flex-direction:column}.admin-delivery-time b{font-size:22px}.admin-delivery-head{align-items:stretch;flex-direction:column}.admin-delivery-meta{gap:12px}.archive-user{width:100%}}
.push-card{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px;padding:16px 18px;background:#eaf8f1;border:1px solid #bee4cd;border-radius:14px;color:#245d47}.push-card p{margin:4px 0 0;font-size:12px;color:#5b806d}.push-enable{margin:0;background:#238f61}.push-card.is-enabled{background:#f2faf5}.push-card.is-hidden{display:none!important}
.grid>label{min-width:0}input[type=date]{min-width:0;display:block}
.delivery-history-divider{display:flex;align-items:center;gap:0;margin:28px 0 12px;color:#7d9d8b;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.delivery-history-divider:before,.delivery-history-divider:after{content:"";height:1px;background:#cfe5d8;flex:1}.delivery-history-divider span{padding:0 12px;background:#f5f8fb}.delivery-cancelled-divider{color:#c67870}.delivery-cancelled-divider:before,.delivery-cancelled-divider:after{background:#f0c9c4}
.weekend-notice{margin-top:22px;padding:14px;border:1px dashed #cbdbe2;border-radius:11px;background:#f6f9fa;color:#718196;text-align:center;font-size:13px;font-weight:800}
.weekend-options{display:flex;flex-wrap:wrap;gap:10px 18px;margin:0;padding:14px;border:1px solid #dfe9ef;border-radius:11px}.weekend-options legend{padding:0 5px;color:#8495a2;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.weekend-options .check{display:flex;align-items:center;gap:7px;font-size:13px}.weekend-options .check input{width:auto}
.report-row{cursor:pointer;transition:background .15s}.report-row:hover{background:#f3faf5}.admin-delivery-detail{width:min(760px,calc(100vw - 32px));max-height:min(88vh,900px);overflow:auto}.admin-delivery-detail h2{margin:9px 0 12px}.admin-delivery-detail>h3{margin:22px 0 8px;font-size:15px}.delivery-detail-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.delivery-detail-meta>div{display:grid;gap:5px;padding:12px;border-radius:10px;background:#f6f9fa;color:#718196;font-size:12px}.delivery-detail-meta small,.delivery-detail-comment small{color:#8495a2;font-size:9px;font-weight:800;letter-spacing:.07em}.delivery-detail-meta b{color:#29465b;font-size:13px}.delivery-detail-comment{margin-top:12px;padding:12px;border-radius:10px;background:#f3faf5;color:#315d47;font-size:12px}.delivery-detail-comment p{margin:7px 0 0;white-space:pre-wrap}@media(max-width:650px){.delivery-detail-meta{grid-template-columns:1fr}}
.delivery-day-section{margin:0 0 24px}.delivery-day-title{display:flex;align-items:center;gap:9px;margin:0 0 10px;padding:0 2px;color:#173955;font-size:16px}.delivery-day-title small{display:inline-grid;place-items:center;min-width:22px;height:22px;border-radius:50%;background:#e7f5f5;color:#0b8fa2;font-size:10px}.admin-compact-delivery{display:grid;grid-template-columns:120px 24px 240px minmax(0,1fr) 150px;align-items:center;gap:14px;padding:10px 15px;box-shadow:none;border-radius:10px}.admin-compact-delivery .status-pill{justify-self:end}.admin-compact-date{color:#718196;font-size:12px;font-variant-numeric:tabular-nums}.admin-compact-supplier,.admin-compact-cargo{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#29465b;font-size:12px}.admin-compact-supplier{font-weight:700}.delivery-day-section+.delivery-day-section{border-top:1px solid #dce7ed;padding-top:20px}@media(max-width:650px){.admin-compact-delivery{grid-template-columns:82px 24px 34px minmax(0,1fr) auto;gap:8px}.admin-compact-cargo{grid-column:4;grid-row:2}.admin-compact-delivery .status-pill{grid-column:5;grid-row:1;align-self:start}.admin-compact-date{grid-row:1/3}}.admin-photo-badge{position:relative;display:inline-block;width:19px;height:14px;border:2px solid #23936a;border-radius:3px;box-sizing:border-box}.admin-photo-badge:before{content:\"\";position:absolute;left:3px;top:-5px;width:6px;height:3px;border-radius:2px 2px 0 0;background:#23936a}.admin-photo-badge:after{content:\"\";position:absolute;left:5px;top:2px;width:6px;height:6px;border:2px solid #23936a;border-radius:50%;box-sizing:border-box}
.admin-delivery-row[data-delivery-detail]{cursor:pointer;transition:background .16s ease,box-shadow .16s ease,transform .16s ease}.admin-delivery-row[data-delivery-detail]:hover{background:#f7fcfb;box-shadow:0 7px 18px #183b5712;transform:translateY(-2px)}.admin-delivery-row[data-delivery-detail] .status-pill{position:relative;z-index:2;transition:transform .16s ease,box-shadow .16s ease}.admin-delivery-row[data-delivery-detail]:hover .status-pill{transform:translateY(2px);box-shadow:0 0 0 4px #f5f8fb}.admin-delivery-row[data-delivery-detail] button{cursor:pointer}@media(max-width:650px){.admin-delivery-row[data-delivery-detail]:hover{transform:none;box-shadow:none}.admin-delivery-row[data-delivery-detail]:hover .status-pill{transform:none;box-shadow:none}.login-box input{font-size:16px}}
@media(max-width:760px){body:has(.admin-shell) .admin-shell{padding:0}body:has(.admin-shell) .app-frame{display:block;padding-bottom:72px}body:has(.admin-shell) .sidebar{position:fixed;z-index:20;left:0;right:0;bottom:0;width:100%;height:64px;display:block;padding:0;background:#092844;box-shadow:0 -8px 24px #09284425}body:has(.admin-shell) .sidebar .brand,body:has(.admin-shell) .sidebar-bottom{display:none}body:has(.admin-shell) .sidebar nav{height:64px;display:flex;justify-content:space-around;align-items:stretch;gap:0}body:has(.admin-shell) .sidebar .nav-item{display:grid;place-items:center;gap:1px;flex:1;padding:7px 2px;border-radius:0;font-size:9px;text-align:center;line-height:1.1}body:has(.admin-shell) .sidebar .nav-item span{display:block;width:auto;font-size:17px;line-height:1.1}body:has(.admin-shell) .topbar{padding:20px 18px 17px;position:sticky;top:0;z-index:10}body:has(.admin-shell) .topbar h1{font-size:22px}body:has(.admin-shell) .content{padding:18px 14px 32px}body:has(.admin-shell) .stats{grid-template-columns:repeat(2,1fr)}body:has(.admin-shell) .stat-card{min-width:0;padding:13px}body:has(.admin-shell) .section-head{margin:20px 0 13px}body:has(.admin-shell) .section-head h2{font-size:20px}body:has(.admin-shell) .object-card,body:has(.admin-shell) .panel,body:has(.admin-shell) .user-access-card{padding:16px;border-radius:14px}body:has(.admin-shell) .detail-head{align-items:flex-start;gap:10px;flex-wrap:wrap}body:has(.admin-shell) .detail-head>div{order:2;width:calc(100% - 42px)}body:has(.admin-shell) .detail-head .danger-button{order:3;width:100%;margin:5px 0 0}body:has(.admin-shell) .detail-grid{grid-template-columns:1fr}body:has(.admin-shell) .detail-meta{grid-template-columns:1fr 1fr;gap:8px}body:has(.admin-shell) .detail-meta div{padding:11px;font-size:12px}body:has(.admin-shell) .route-card{padding-right:48px}body:has(.admin-shell) .route-photos{margin-left:0}body:has(.admin-shell) .table-wrap{overflow:visible}body:has(.admin-shell) table{min-width:0;font-size:11px}body:has(.admin-shell) th,body:has(.admin-shell) td{padding:10px 7px}body:has(.admin-shell) .report-check{flex:1 1 calc(50% - 9px)}body:has(.admin-shell) .user-access-head{flex-direction:column;gap:9px}body:has(.admin-shell) .user-access-footer{align-items:stretch;flex-direction:column}body:has(.admin-shell) .user-access-footer .primary{width:100%}body:has(.admin-shell) .invite-line{flex-direction:column}body:has(.admin-shell) .invite-line select{flex:auto}
}
@media(max-width:760px){body:has(#adminAcceptDialog) textarea,body:has(#adminAcceptDialog) input[type="text"],body:has(#adminAcceptDialog) input[type="email"],body:has(#adminAcceptDialog) input[type="number"]{font-size:16px}}
dialog#acceptDialog .dialog-card,dialog#adminAcceptDialog .dialog-card{max-height:calc(100dvh - 24px);overflow-y:auto;-webkit-overflow-scrolling:touch}dialog#acceptDialog .primary[type="submit"],dialog#adminAcceptDialog .primary[type="submit"]{position:sticky;bottom:0;z-index:2}
@media(min-width:761px){body:has(.admin-shell) .app-frame{display:block;min-height:100vh}body:has(.admin-shell) .sidebar{position:fixed;z-index:20;inset:0 auto 0 0;width:255px;height:100vh;overflow-y:auto}body:has(.admin-shell) .workspace{margin-left:255px;min-height:100vh}}
