:root{--navy:#083b66;--navy2:#0d4e80;--green:#65b32e;--ink:#183142;--muted:#6b7d89;--line:#dbe5eb;--bg:#f3f7f9;--card:#fff;--danger:#b23a3a;--amber:#ad6900;--shadow:0 10px 28px rgba(24,49,66,.08)}
*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}body{margin:0}a{color:var(--navy);text-decoration:none}button,input,select,textarea{font:inherit}.topbar{height:72px;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:20}.topbar nav{display:flex;gap:18px;align-items:center;color:var(--muted)}.brand{display:flex;align-items:center;gap:11px;color:var(--ink)}.brand-mark{background:var(--navy);color:#fff;font-weight:900;letter-spacing:-1px;border-bottom:5px solid var(--green);padding:9px 10px 6px;border-radius:8px;line-height:1}.brand strong,.brand span{display:block}.brand span{font-size:12px;color:var(--muted);margin-top:2px}.container{max-width:1460px;margin:auto;padding:28px}.narrow{max-width:1080px}.hero{display:flex;justify-content:space-between;align-items:center;margin:8px 0 24px;gap:20px}.hero h1{font-size:34px;margin:2px 0 4px}.hero p{margin:0;color:var(--muted)}.eyebrow{font-size:11px!important;font-weight:800!important;letter-spacing:.12em;color:var(--green)!important;margin:0 0 5px!important}.btn{border:1px solid #c9d8e1;background:#fff;color:var(--navy);border-radius:9px;padding:10px 14px;cursor:pointer;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.btn:hover{filter:brightness(.98)}.btn.primary{background:var(--navy);border-color:var(--navy);color:#fff}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.warning{background:#fff3d9;border-color:#e7bf72;color:#8d5700}.btn.big{padding:14px 18px;font-size:16px}.btn.full{width:100%}.btn.small{padding:7px 10px;font-size:12px}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:20px}.stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px;box-shadow:var(--shadow)}.stat span{display:block;color:var(--muted);font-size:12px}.stat strong{display:block;font-size:26px;color:var(--ink);margin-top:2px}.panel{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:20px;margin-bottom:20px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px}.panel h2{margin:0 0 14px}.filters,.quick{display:flex;gap:8px}.filters input{min-width:260px}.filters input,.filters select,.quick select,input,select,textarea{border:1px solid #cbd8df;background:#fff;border-radius:8px;padding:10px 11px;color:var(--ink)}textarea{min-height:88px;resize:vertical}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);padding:10px;border-bottom:1px solid var(--line)}td{padding:13px 10px;border-bottom:1px solid #edf2f5;vertical-align:top}.muted{color:var(--muted)}small{color:var(--muted)}.empty{text-align:center;color:var(--muted);padding:38px}.badge{display:inline-block;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:800;background:#edf3f7;color:var(--navy);white-space:nowrap}.badge.delivered{background:#e8f6df;color:#39751d}.badge.problem,.badge.failed{background:#fde7e7;color:#942c2c}.badge.returned{background:#eee8fa;color:#65428d}.badge.new{background:#eef1f4;color:#566773}.badge.assigned,.badge.en-route-to-pickup,.badge.en-route-to-delivery{background:#e4f0fb;color:#0b568e}.badge.picked-up,.badge.arrived,.badge.arrived-at-pickup{background:#fff3d9;color:#8d5700}.driver-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-bottom:16px}.driver-card{border:1px solid var(--line);border-radius:10px;padding:14px}.driver-card span{display:block;color:var(--muted);font-size:13px;margin-top:4px}details{border-top:1px solid var(--line);padding-top:14px}summary{cursor:pointer;font-weight:800;color:var(--navy)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}.form-grid label,.dialog-form>label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;color:#4d6270}.wide{grid-column:1/-1}.price-preview{background:#eef5f8;border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:5px}.price-preview strong{font-size:17px}dialog{width:min(900px,calc(100% - 24px));border:0;border-radius:16px;padding:0;box-shadow:0 30px 80px rgba(0,0,0,.25)}dialog::backdrop{background:rgba(11,31,45,.55)}.dialog-form{padding:24px;max-height:88vh;overflow:auto}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start}.dialog-head h2{margin:0}.icon-btn{border:0;background:transparent;font-size:30px;line-height:1;cursor:pointer}.dialog-form h3{margin:24px 0 8px;border-top:1px solid var(--line);padding-top:18px}.alert{padding:12px 14px;border-radius:9px;margin-bottom:14px}.alert.success{background:#eaf6e4;color:#39751d}.alert.error{background:#fdeaea;color:#8c2f2f}.login-body{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(145deg,#062f51,#0a4d7d 58%,#173f54)}.login-card{width:min(430px,100%);background:#fff;border-radius:18px;padding:34px;box-shadow:0 30px 80px rgba(0,0,0,.3)}.brand-center{justify-content:center;margin-bottom:24px}.login-card h1{margin-bottom:5px}.stack{display:flex;flex-direction:column;gap:14px;margin-top:20px}.stack label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700}.demo{margin-top:20px;padding:14px;border-radius:10px;background:#f2f6f8;font-size:13px;color:#4f6572}.job-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.stop .note,.mobile-stop .note{background:#f5f8fa;border-radius:8px;padding:10px;color:#526774}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.detail-grid>div{background:#f6f9fa;border-radius:10px;padding:13px}.detail-grid span{display:block;color:var(--muted);font-size:12px}.detail-grid strong{display:block;margin-top:4px}.detail-grid .grand{background:var(--navy);color:#fff}.detail-grid .grand span{color:#cfe0ec}.pod-image{max-width:430px;max-height:380px;border:1px solid var(--line);border-radius:10px;margin:10px 12px 0 0;object-fit:contain;background:#fff}.pod-image.signature{max-height:160px}.timeline>div{padding:12px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:160px 1fr 220px;gap:14px}.timeline small{text-align:right}.driver-body{background:#edf3f6}.driver-top{background:var(--navy);border:0}.driver-top .brand,.driver-top .brand span,.driver-top nav a{color:#fff}.driver-top .brand-mark{background:#fff;color:var(--navy)}.driver-container{max-width:720px;margin:auto;padding:22px 14px 70px}.driver-welcome{padding:8px 4px 14px}.driver-welcome h1{margin:3px 0}.driver-welcome p{color:var(--muted)}.driver-card-main{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:16px;box-shadow:var(--shadow)}.driver-job-head{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:14px}.driver-job-head h2{margin:8px 0 2px}.driver-job-head p{margin:0;color:var(--muted);font-size:13px}.mobile-stop{padding:17px 0;border-bottom:1px solid var(--line)}.mobile-stop h3{margin:3px 0 5px}.mobile-stop p{margin:5px 0}.action-row{display:flex;gap:8px;margin-top:12px}.driver-action{margin-top:16px}.signature-pad{width:100%;height:160px;border:2px dashed #b9c8d1;border-radius:10px;background:#fff;touch-action:none}.pod-form{display:flex;flex-direction:column;gap:12px}.pod-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700}.recent h2{font-size:18px}.recent-job{display:flex;justify-content:space-between;gap:12px;background:#fff;border:1px solid var(--line);padding:12px 14px;margin-bottom:8px;border-radius:10px}.empty-state{text-align:center;padding:36px}.empty-state p{color:var(--muted)}
@media(max-width:900px){.stats{grid-template-columns:repeat(2,1fr)}.panel-head{align-items:flex-start;flex-direction:column}.filters{width:100%;flex-wrap:wrap}.filters input{min-width:0;flex:1}.quick{flex-direction:column}.job-columns{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr 1fr}.timeline>div{grid-template-columns:1fr}.timeline small{text-align:left}.topbar{padding:0 14px}.topbar nav span{display:none}.container{padding:18px}.hero h1{font-size:28px}}
@media(max-width:620px){.topbar{height:66px}.brand strong{font-size:13px}.hero{align-items:flex-start}.hero .btn{white-space:nowrap}.stats{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.detail-grid{grid-template-columns:1fr}.filters{display:grid;grid-template-columns:1fr 1fr}.filters input{grid-column:1/-1}.panel{padding:15px}.login-card{padding:25px}.driver-top nav{font-size:13px}.recent-job{flex-direction:column}.table-wrap table{min-width:980px}}
@media print{.topbar,.hero .btn,.btn,dialog{display:none!important}body{background:#fff}.container{padding:0}.panel{box-shadow:none;break-inside:avoid}.hero{margin-top:0}}
.money-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.money-grid>div,.driver-charge-strip>div{background:#f3f7f9;border-radius:10px;padding:12px}.money-grid span,.driver-charge-strip span{display:block;font-size:11px;color:var(--muted);font-weight:800;letter-spacing:.04em}.money-grid strong,.driver-charge-strip strong{display:block;font-size:20px;margin-top:3px}.driver-charge-strip{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 2px}.driver-charge-strip .cod-due{background:#fff3d9;border:1px solid #f0d99b}.driver-charge-strip .cod-due strong{color:#8d5700}.cod-confirm{background:#fff3d9;border:1px solid #f0d99b;border-radius:10px;padding:13px}.cod-confirm strong,.cod-confirm span{display:block}.cod-confirm span{font-size:12px;margin-top:4px;color:#76531a}@media(max-width:700px){.money-grid{grid-template-columns:1fr}.driver-charge-strip{grid-template-columns:1fr 1fr}.panel-head{align-items:flex-start;flex-direction:column}.filters{width:100%;flex-wrap:wrap}.filters input,.filters select{min-width:0;flex:1}}

.presence-card{display:flex;flex-direction:column;gap:5px}.presence-name{display:flex;align-items:center;gap:8px}.presence-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex:0 0 10px}.presence-dot.online{background:#42b72a;box-shadow:0 0 0 3px rgba(66,183,42,.13)}.presence-dot.offline{background:#a8b4bc}.presence-status{font-size:12px;font-weight:800}.online-text{color:#39751d}.offline-text{color:var(--muted)}.scheduled-pickup{background:#eef5f8;border-left:4px solid var(--green);border-radius:7px;padding:9px 10px;margin:10px 0!important;color:var(--ink)}

.edit-warning{background:#eef5f8;border-left:4px solid var(--navy);border-radius:8px;padding:11px 12px;margin:18px 0;color:#405966;font-size:13px}
.contact-search{position:relative;margin:10px 0 4px;background:#f4f8fa;border:1px solid var(--line);border-radius:10px;padding:12px}.contact-search label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:800;color:#4d6270}.contact-search-input{width:100%}.contact-results{display:none;position:absolute;left:12px;right:12px;top:76px;z-index:30;background:#fff;border:1px solid #cbd8df;border-radius:10px;box-shadow:0 14px 36px rgba(24,49,66,.16);max-height:280px;overflow:auto}.contact-results.open{display:block}.contact-result{width:100%;border:0;border-bottom:1px solid #edf2f5;background:#fff;text-align:left;padding:11px 12px;cursor:pointer;color:var(--ink)}.contact-result:hover{background:#f3f7f9}.contact-result strong,.contact-result span{display:block}.contact-result span{font-size:12px;color:var(--muted);margin-top:2px}.contact-no-results{padding:12px;color:var(--muted);font-size:13px}.save-contact{display:flex!important;flex-direction:row!important;align-items:center;gap:9px!important;background:#eef5f8;border-radius:9px;padding:10px 12px}.save-contact input{width:auto;margin:0}.contact-picked{font-size:12px;color:#39751d;font-weight:700;margin-top:6px}
.dispatch-live-alert{position:fixed;right:20px;top:90px;z-index:9999;background:#14202b;color:#fff;padding:15px 18px;border-radius:12px;border-left:5px solid var(--green);box-shadow:0 14px 40px rgba(0,0,0,.28);max-width:min(440px,calc(100vw - 40px));font-weight:700;opacity:0;transform:translateY(-12px);transition:.2s ease}.dispatch-live-alert.show{opacity:1;transform:translateY(0)}.dispatch-live-alert strong,.dispatch-live-alert span{display:block}.dispatch-live-alert span{font-weight:500;margin-top:4px;color:#e8f1f6}

/* v12 user management */
.users-table td{vertical-align:middle}.role-pill,.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800}.role-pill{background:#edf3f7;color:var(--navy)}.role-admin{background:#e8f6df;color:#39751d}.role-dispatcher{background:#e4f0fb;color:#0b568e}.role-driver{background:#fff3d9;color:#8d5700}.role-accounting{background:#eee8fa;color:#65428d}.status-pill.active{background:#e8f6df;color:#39751d}.status-pill.inactive{background:#eef1f4;color:#657581}.user-form{padding:0}.user-form>.dialog-head{padding:22px 24px 16px;border-bottom:1px solid var(--line)}.user-form>.user-section,.user-form>.permission-box,.user-form>.role-selector,.user-form>#driverExtras{margin:18px 24px}.user-section{border:1px solid var(--line);border-radius:12px;padding:16px}.user-section h3,.permission-box h3{margin:0 0 14px}.role-selector{display:flex;align-items:center;gap:24px;flex-wrap:wrap;background:#fff2ca;border-radius:10px;padding:14px}.role-selector>span{font-weight:800;margin-right:auto}.role-selector label{font-weight:700}.role-selector input{accent-color:#16ae3d}.permission-box{border:1px solid var(--line);border-radius:12px;padding:16px}.permission-box p{color:var(--muted);margin:7px 0 0}.permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px 18px}.permission-grid label{display:flex;align-items:center;gap:9px;font-weight:600;font-size:13px}.permission-grid input,.switch-row input{width:18px;height:18px;accent-color:#16ae3d}.toggle-label .switch-row{display:flex;align-items:center;gap:8px;height:42px}.dialog-actions{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line);padding:14px 24px;display:flex;justify-content:space-between;gap:12px}.user-form #driverExtras{margin:0}.user-form #driverExtras>.user-section,.user-form #driverExtras>.permission-box{margin:18px 24px}@media(max-width:700px){.permission-grid{grid-template-columns:1fr}.role-selector{gap:12px}.role-selector>span{width:100%;margin:0}.user-form>.user-section,.user-form>.permission-box,.user-form>.role-selector,.user-form #driverExtras>.user-section,.user-form #driverExtras>.permission-box{margin-left:14px;margin-right:14px}.dialog-actions{padding:12px 14px}}

.recurring-box{margin:14px 0;padding:16px;border:1px solid #cfd9e3;border-radius:12px;background:#f7fbff}.recurring-box .save-contact{font-weight:700}.recurring-box .form-grid{margin-top:14px}

/* v14 requirements + CSV import */
.requirements-box{margin:12px 0 18px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#fbfcfd}.requirement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.requirement-option{display:flex!important;align-items:center;gap:8px;padding:11px 12px;border:1px solid #d7e2e9;border-radius:10px;background:#fff;font-size:13px!important;font-weight:700!important;cursor:pointer}.requirement-option input{width:18px;height:18px;padding:0;accent-color:var(--green)}.requirement-option:has(input:checked){border-color:#93c977;background:#f1f8ed}.age-requirement{margin-top:14px;padding:12px;border-radius:10px;background:#f3f7f9}.age-requirement label{display:flex;align-items:center;gap:12px;font-weight:700}.age-requirement select{min-width:100px}.requirement-badges{display:flex;gap:8px;flex-wrap:wrap}.requirement-badges span{background:#edf5e9;color:#356b22;border:1px solid #cce4c0;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800}.import-help{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:12px 0 18px}.pod-signature-image{max-width:430px;max-height:180px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:6px}.action-row{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:700px){.requirement-grid{grid-template-columns:1fr 1fr}}

/* v15 task-style New Order window */
.task-dialog{width:min(820px,calc(100% - 24px));max-width:820px;border-radius:14px;overflow:hidden}.task-form{padding:0;max-height:94vh;display:flex;flex-direction:column;background:#fff}.task-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px 9px}.task-head h2{margin:0;font-size:20px}.task-tabs{display:flex;gap:26px;padding:0 18px;border-bottom:1px solid var(--line)}.task-tabs a{padding:10px 2px 11px;color:#6a7075;font-size:13px;font-weight:800;border-bottom:2px solid transparent}.task-tabs a.active,.task-tabs a:hover{color:var(--green);border-bottom-color:var(--green)}.task-scroll{overflow:auto;padding:14px 18px 8px}.task-top-row{display:grid;grid-template-columns:32px 1.15fr auto .9fr auto 1fr;align-items:stretch;border:1px solid #cdd7de;border-radius:8px;overflow:hidden;margin-bottom:14px}.task-top-row>*{border:0!important;border-right:1px solid #d9e1e6!important;border-radius:0!important;min-height:38px}.task-top-row>*:last-child{border-right:0!important}.task-top-row .field-icon,.task-top-row .inline-label{display:flex;align-items:center;justify-content:center;background:#f7f9fa;color:#4b5660;font-size:12px}.task-top-row .inline-label{padding:0 9px}.task-top-row input,.task-top-row select{padding:8px 9px;background:#fff}.location-block{margin:13px 0 18px}.location-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 2px 6px;font-size:13px}.location-title strong{color:#49535a}.compact-contact{margin:0!important;padding:0!important;border:0!important;background:transparent!important;min-width:260px}.compact-contact .contact-search-input{height:30px;padding:5px 9px;font-size:12px;border:1px solid #cbd7df;border-radius:6px}.compact-contact .contact-results{left:0;right:0;top:34px}.compact-contact .contact-picked{display:none}.line-field{display:grid;grid-template-columns:31px 1fr;align-items:stretch;border:1px solid #ccd7df;border-bottom:0;background:#fff;min-height:38px}.location-block>.line-field:nth-last-of-type(1){border-bottom:1px solid #ccd7df}.line-field>span{display:flex;align-items:center;justify-content:center;background:#f8f9fa;border-right:1px solid #d6dfe5;color:#4a5b67;font-size:14px}.line-field input,.line-field textarea{border:0!important;border-radius:0!important;box-shadow:none!important;padding:8px 9px;min-width:0}.line-field textarea{min-height:48px;resize:vertical}.split-line{display:grid;grid-template-columns:1.05fr .95fr}.split-line .line-field{border-radius:0}.split-line .line-field+ .line-field{border-left:0}.mini-check{display:flex;align-items:center;gap:7px;margin:6px 2px 0;color:#687983;font-size:11px;font-weight:600}.mini-check input{width:auto}.three-col-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin:14px 0}.three-col-row>label{font-size:12px;font-weight:700;color:#56636b}.three-col-row small{display:block;margin-top:5px;font-weight:500;line-height:1.35}
.two-col-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:14px 0}.two-col-row>label{font-size:12px;font-weight:700;color:#56636b}.two-col-row .line-field{margin-top:5px;border-bottom:1px solid #ccd7df;border-radius:7px;overflow:hidden}.assign-row select{width:100%;margin-top:5px}.task-options{margin:15px 0}.options-label{display:block;font-size:12px;font-weight:700;color:#56636b;margin:0 0 6px}.requirements-dropdown{position:relative;border:1px solid #cbd7df;border-radius:8px;background:#fff}.requirements-dropdown>summary{display:flex;justify-content:space-between;align-items:center;list-style:none;padding:10px 12px;cursor:pointer;font-size:12px}.requirements-dropdown>summary::-webkit-details-marker{display:none}.requirements-dropdown>summary:after{content:'⌄';margin-left:10px}.requirements-dropdown>summary strong{font-weight:600;color:#66757e}.requirements-menu{display:grid;grid-template-columns:1fr 1fr;gap:9px 18px;padding:12px;border-top:1px solid var(--line);background:#fbfcfd}.requirements-menu label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600}.requirements-menu input{width:17px;height:17px;accent-color:var(--green)}.age-inline{grid-column:1/-1;display:flex;align-items:center;gap:10px;padding-top:5px}.age-inline select{width:110px}.charge-row .money-field{display:grid;grid-template-columns:auto 1fr;margin-top:5px;border:1px solid #ccd7df;border-radius:7px;overflow:hidden}.money-field span{display:flex;align-items:center;padding:0 10px;background:#f7f9fa;border-right:1px solid #d6dfe5}.money-field input{border:0!important;border-radius:0!important;text-align:right}.repeat-row{border-top:1px solid var(--line);padding:13px 2px 3px}.switch-line{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:700;color:#4e5961}.switch-line input{appearance:none;width:32px;height:18px;border-radius:99px;background:#c7cdd1;position:relative;cursor:pointer;padding:0}.switch-line input:after{content:'';position:absolute;width:14px;height:14px;border-radius:50%;background:#fff;top:2px;left:2px;transition:.18s}.switch-line input:checked{background:var(--green)}.switch-line input:checked:after{left:16px}.repeat-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}.repeat-fields label{font-size:12px;font-weight:700}.repeat-fields select{width:100%;margin-top:5px}.task-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 18px;border-top:1px solid var(--line);background:#fff;box-shadow:0 -8px 24px rgba(22,45,61,.04)}.task-footer>div{display:flex;gap:10px}.task-footer .btn.primary{background:#0bae27;border-color:#0bae27}.task-footer .btn{padding:9px 12px}.task-dialog input,.task-dialog select,.task-dialog textarea{border:1px solid #cbd7df;border-radius:7px;padding:9px 10px;background:#fff;color:var(--ink)}
@media(max-width:700px){.task-dialog{width:calc(100% - 10px)}.task-scroll{padding:12px}.task-top-row{grid-template-columns:32px 1fr}.task-top-row .inline-label{display:none}.task-top-row select,.task-top-row input{grid-column:2}.split-line,.two-col-row,.repeat-fields{grid-template-columns:1fr}.split-line .line-field+ .line-field{border-left:1px solid #ccd7df}.compact-contact{min-width:0;width:54%}.requirements-menu{grid-template-columns:1fr}.task-footer{align-items:stretch}.task-footer,.task-footer>div{flex-direction:column}.task-footer .btn{width:100%}}

/* v15.1 New Order layout hardening — reference-style full-width task form */
.task-dialog{
  width:min(800px,calc(100vw - 36px))!important;
  max-width:800px!important;
  min-width:0!important;
  max-height:96vh!important;
  margin:auto!important;
  border-radius:14px!important;
  background:#fff!important;
  overflow:hidden!important;
}
.task-dialog[open]{display:block!important}
.task-form{width:100%!important;max-height:96vh!important;overflow:hidden!important;background:#fff!important}
.task-head{padding:14px 16px 10px!important;border-bottom:0!important}
.task-tabs{padding:0 16px!important;gap:22px!important;height:39px!important;align-items:flex-end!important}
.task-tabs a{white-space:nowrap!important}
.task-scroll{display:block!important;width:100%!important;padding:14px 16px 10px!important;overflow-x:hidden!important;overflow-y:auto!important;flex:1 1 auto!important}
.task-scroll>*{max-width:100%!important}
.task-top-row{width:100%!important;display:grid!important;grid-template-columns:31px 1.1fr 58px .86fr 65px 1.18fr!important;margin:0 0 14px!important}
.task-top-row>*{width:100%!important;min-width:0!important}
.location-block{display:block!important;width:100%!important;margin:12px 0 16px!important}
.location-title{width:100%!important;min-height:31px!important;margin:0 0 5px!important}
.location-title strong{font-size:13px!important}
.compact-contact{display:block!important;position:relative!important;width:265px!important;min-width:220px!important;max-width:48%!important}
.compact-contact .contact-search-input{width:100%!important;height:31px!important;padding:5px 9px 5px 28px!important;background:#fff!important}
.compact-contact:before{content:'⌕';position:absolute;left:9px;top:3px;z-index:2;color:#6a7881;font-size:18px;pointer-events:none}
.compact-contact.has-selection .contact-search-input{border-color:#63b52d!important;box-shadow:0 0 0 2px rgba(101,179,46,.12)!important}
.compact-contact .contact-results{position:absolute!important;left:0!important;right:0!important;top:35px!important;z-index:9999!important;max-height:300px!important}
.contact-search-error{color:#9b2f2f!important;background:#fff4f4!important}
.line-field{display:grid!important;width:100%!important;grid-template-columns:31px minmax(0,1fr)!important;min-height:37px!important;border-radius:0!important;margin:0!important}
.line-field>span{width:31px!important}
.line-field input,.line-field textarea{display:block!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important}
.location-block>.line-field:first-of-type{border-radius:8px 8px 0 0!important;overflow:hidden!important}
.location-block>.line-field.textarea-line{border-bottom:1px solid #ccd7df!important;border-radius:0 0 8px 8px!important;overflow:hidden!important}
.split-line{display:grid!important;width:100%!important;grid-template-columns:1.05fr .95fr!important;margin:0!important;gap:0!important}
.split-line>.line-field{width:100%!important;min-width:0!important}
.split-line>.line-field:first-child{border-right:0!important}
.mini-check{width:100%!important;margin:7px 2px 0!important}
.two-col-row{display:grid!important;width:100%!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:16px!important}
.two-col-row>label{display:block!important;min-width:0!important}
.two-col-row input,.two-col-row select{width:100%!important;min-width:0!important}
.assign-row label:first-child:before{content:''}
.task-options,.repeat-row{width:100%!important}
.requirements-dropdown{width:100%!important}
.charge-row .money-field{width:100%!important}
.task-footer{width:100%!important;flex:0 0 auto!important;padding:12px 16px!important}
@media(max-width:700px){
  .task-dialog{width:calc(100vw - 10px)!important;max-height:98vh!important}
  .task-top-row{grid-template-columns:31px 1fr!important}
  .task-top-row .inline-label{display:none!important}
  .task-top-row select,.task-top-row input{grid-column:2!important}
  .location-title{align-items:flex-start!important;flex-direction:column!important}
  .compact-contact{width:100%!important;max-width:none!important}
  .split-line,.two-col-row,.repeat-fields{grid-template-columns:1fr!important}
  .split-line>.line-field:first-child{border-right:1px solid #ccd7df!important}
  .task-footer,.task-footer>div{flex-direction:column!important;width:100%!important}
}
/* v15.7 archive/reporting/business settings */
.business-logo{display:block;max-width:150px;max-height:48px;width:auto;height:auto;object-fit:contain}.settings-logo-preview{padding:14px;border:1px solid var(--line);border-radius:10px;background:#f7fafb}.settings-logo-preview img{display:block;max-width:320px;max-height:120px;width:auto;height:auto;object-fit:contain}.completed-filters{flex-wrap:wrap}.float-form{display:flex;gap:6px;align-items:center}.float-form .money-field{min-width:120px}.float-form .money-field input{width:90px}
@media(max-width:900px){.business-logo{max-width:110px;max-height:40px}.topbar nav{gap:10px;font-size:13px}.hero .action-row{flex-wrap:wrap}}

/* v15.8 Dispatch sidebar navigation */
.dispatch-shell{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr)}
.dispatch-sidebar{position:sticky;top:0;height:100vh;background:#fff;border-right:1px solid var(--line);padding:18px 14px;display:flex;flex-direction:column;z-index:30;box-shadow:4px 0 18px rgba(24,49,66,.04)}
.sidebar-brand{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 7px 18px;border-bottom:1px solid var(--line)}
.sidebar-brand .brand{min-width:0}.sidebar-brand .business-logo{max-width:105px;max-height:44px}.sidebar-brand .brand>div:last-child{min-width:0}.sidebar-brand .brand strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:115px}
.sidebar-close{display:none;border:0;background:transparent;font-size:28px;line-height:1;cursor:pointer;color:var(--muted)}
.sidebar-user{padding:16px 10px 10px}.sidebar-user span{display:block;color:var(--muted);font-size:11px}.sidebar-user strong{display:block;margin-top:2px;font-size:13px}
.sidebar-nav{display:flex;flex-direction:column;gap:5px}.sidebar-nav a,.sidebar-nav button{width:100%;border:0;background:transparent;color:#405767;text-align:left;border-radius:9px;padding:10px 11px;font-weight:700;font-size:13px;cursor:pointer;display:block}.sidebar-nav a:hover,.sidebar-nav button:hover{background:#f2f6f8;color:var(--navy)}.sidebar-nav a.active{background:#eaf2f8;color:var(--navy);box-shadow:inset 3px 0 0 var(--green)}
.sidebar-spacer{flex:1}.sidebar-bottom{border-top:1px solid var(--line);padding-top:10px}.dispatch-main{width:100%;max-width:none;padding:28px 32px}.dispatch-main .hero{margin-top:0}.mobile-dispatch-bar{display:none}
.sidebar-backdrop{display:none}
@media(max-width:900px){
  .dispatch-shell{display:block}.mobile-dispatch-bar{height:58px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;padding:0 14px;position:sticky;top:0;z-index:25}.mobile-dispatch-bar strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .dispatch-sidebar{position:fixed;left:0;top:0;width:270px;height:100vh;transform:translateX(-105%);transition:transform .2s ease;box-shadow:12px 0 35px rgba(11,31,45,.20)}.dispatch-sidebar.open{transform:translateX(0)}.sidebar-close{display:block}.sidebar-backdrop{position:fixed;inset:0;background:rgba(11,31,45,.45);z-index:29}.sidebar-open .sidebar-backdrop{display:block}.sidebar-open{overflow:hidden}.dispatch-main{padding:18px}.dispatch-main .hero{margin-top:4px}
}
@media print{.dispatch-sidebar,.mobile-dispatch-bar,.sidebar-backdrop{display:none!important}.dispatch-shell{display:block}.dispatch-main{padding:0}}

/* v16.2 customer order form link in Business Settings */
.settings-public-link{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;margin-top:6px}
.settings-public-link input{min-width:0}
@media(max-width:700px){.settings-public-link{grid-template-columns:1fr 1fr}.settings-public-link input{grid-column:1/-1}}

/* v16.8 HalNora commercial operations interface */
:root{--navy:#081f3b;--navy2:#0d355a;--green:#00d1c1;--blue:#007bff;--teal:#00d1c1;--ink:#0f2740;--muted:#728399;--line:#dfe7ee;--bg:#eef3f7;--card:#fff;--shadow:0 14px 36px rgba(7,31,59,.10)}
body.halnora-ui{background:linear-gradient(180deg,#071f3b 0,#0a2d4f 210px,#eef3f7 520px);min-height:100vh}
.halnora-ui .dispatch-shell{grid-template-columns:260px minmax(0,1fr)}
.halnora-ui .dispatch-sidebar{background:linear-gradient(180deg,#071f3b,#092b4c 72%,#071f3b);border-right:1px solid rgba(255,255,255,.07);box-shadow:10px 0 30px rgba(2,16,31,.18);padding:18px 14px}
.halnora-ui .sidebar-brand{border-bottom:1px solid rgba(255,255,255,.10);padding-bottom:18px}
.halnora-ui .sidebar-brand .brand{color:#fff}.halnora-ui .sidebar-brand .brand span{color:#8ea8c0}.halnora-ui .sidebar-brand .brand strong{color:#fff;max-width:125px}.halnora-ui .sidebar-brand .business-logo{background:#fff;border-radius:9px;padding:4px;max-width:110px}
.halnora-ui .brand-mark{background:linear-gradient(135deg,#007bff,#00d1c1);border:0;box-shadow:0 8px 18px rgba(0,123,255,.28)}
.halnora-ui .sidebar-user span{color:#7f9ab2}.halnora-ui .sidebar-user strong{color:#e9f4fb;font-size:14px}
.halnora-ui .sidebar-nav a,.halnora-ui .sidebar-nav button{color:#c2d4e2;border:1px solid transparent;padding:11px 12px;border-radius:9px;font-weight:650}
.halnora-ui .sidebar-nav a:hover,.halnora-ui .sidebar-nav button:hover{background:rgba(255,255,255,.07);color:#fff}
.halnora-ui .sidebar-nav a.active{background:linear-gradient(90deg,#087fff,#129af4);color:#fff;box-shadow:0 10px 22px rgba(0,123,255,.24);border-color:rgba(255,255,255,.08)}
.halnora-ui .sidebar-bottom{border-top:1px solid rgba(255,255,255,.1)}
.halnora-powered{display:flex;align-items:center;gap:9px;margin:10px 5px;padding:10px;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:rgba(255,255,255,.035)}
.halnora-powered img{width:29px;height:29px}.halnora-powered strong,.halnora-powered span{display:block}.halnora-powered strong{font-size:11px;color:#d8e9f5}.halnora-powered span{font-size:9px;color:#6f93ad;text-transform:uppercase;letter-spacing:.12em;margin-top:2px}
.halnora-ui .dispatch-main{padding:24px 30px 34px;max-width:1800px}
.halnora-ui .command-hero{margin:0 0 20px;padding:3px 4px 8px;color:#fff;align-items:flex-end}
.halnora-ui .command-hero h1{font-size:34px;color:#fff;letter-spacing:-.035em;margin:3px 0 5px}.halnora-ui .command-hero>div>p:not(.eyebrow){color:#a8bfd1}
.halnora-ui .command-hero .eyebrow{color:#45e2d4!important;letter-spacing:.18em}
.hero-business-contact{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.hero-business-contact span{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);padding:7px 10px;border-radius:9px;color:#d7e7f2;font-size:12px}
.halnora-ui .operations-stats{grid-template-columns:repeat(5,minmax(130px,1fr));gap:12px;margin-bottom:16px}
.halnora-ui .operations-stats .stat{position:relative;overflow:hidden;min-height:126px;background:linear-gradient(145deg,#0d365d,#0b2a49);border:1px solid rgba(255,255,255,.07);box-shadow:0 12px 28px rgba(5,28,51,.16);padding:16px 17px}
.halnora-ui .operations-stats .stat:after{content:'';position:absolute;width:90px;height:90px;border-radius:50%;right:-35px;bottom:-42px;background:radial-gradient(circle,rgba(0,209,193,.18),transparent 68%)}
.halnora-ui .operations-stats .stat>span:not(.stat-icon){color:#9eb5c8;font-size:12px}.halnora-ui .operations-stats .stat strong{color:#fff;font-size:29px;line-height:1;margin:8px 0 6px}.halnora-ui .operations-stats .stat small{color:#6689a4;font-size:10px}.stat-icon{display:grid!important;place-items:center;width:31px;height:31px;border-radius:10px;background:rgba(0,123,255,.16);color:#4ea7ff!important;font-size:16px;margin-bottom:10px}.stat-completed .stat-icon{background:rgba(0,209,193,.14);color:#41dccf!important}.stat-new .stat-icon{background:rgba(93,104,255,.16);color:#9b9fff!important}.stat-progress .stat-icon{background:rgba(255,163,54,.15);color:#ffb458!important}
.dashboard-columns{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:16px;align-items:start}.dashboard-primary,.dashboard-rail{min-width:0}.dashboard-rail{display:flex;flex-direction:column;gap:16px}.dashboard-rail .panel{margin-bottom:0}
.halnora-ui .panel{border:1px solid #dde6ed;border-radius:14px;box-shadow:0 12px 30px rgba(8,31,59,.08);padding:18px}.halnora-ui .panel h2{font-size:17px;letter-spacing:-.015em}.halnora-ui .panel-head{margin-bottom:13px}
.halnora-ui .orders-panel{padding:0;overflow:hidden}.halnora-ui .orders-panel .panel-head{padding:17px 18px 14px;margin:0;border-bottom:1px solid var(--line)}.halnora-ui .orders-panel table th{background:#f5f8fb;color:#60768b}.halnora-ui .orders-panel table td{background:#fff}.halnora-ui .orders-panel tbody tr:hover td{background:#f8fbfd}
.halnora-ui .btn{border-radius:8px;border-color:#cad8e4;color:#123b62;box-shadow:none}.halnora-ui .btn.primary{background:linear-gradient(135deg,#087fff,#129af4);border-color:#087fff;color:#fff;box-shadow:0 6px 14px rgba(0,123,255,.19)}
.halnora-ui input,.halnora-ui select,.halnora-ui textarea{border-color:#d0dbe4}.halnora-ui input:focus,.halnora-ui select:focus,.halnora-ui textarea:focus{outline:2px solid rgba(0,123,255,.12);border-color:#4ba1f7}
.halnora-ui .badge{border-radius:6px;padding:5px 8px}.halnora-ui .badge.assigned,.halnora-ui .badge.en-route-to-pickup,.halnora-ui .badge.en-route-to-delivery{background:#e2f1ff;color:#0872c9}.halnora-ui .badge.delivered{background:#ddf8f3;color:#08766c}
.halnora-ui .driver-presence .driver-grid{grid-template-columns:1fr;gap:8px;margin:0}.halnora-ui .driver-card{position:relative;background:#f7fafc;border-color:#e1e8ee;padding:12px;border-radius:10px}.halnora-ui .presence-name{padding-right:58px}.halnora-ui .presence-status{position:absolute;right:11px;top:10px;font-size:10px!important}.halnora-ui .presence-gps{font-size:11px!important}.halnora-ui .driver-presence .action-row{margin-top:0}.halnora-ui .driver-presence .panel-head{align-items:flex-start}
.activity-panel{margin-bottom:0}.activity-list{display:flex;flex-direction:column}.activity-item{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:10px;align-items:start;padding:11px 0;border-bottom:1px solid #edf1f4}.activity-item:last-child{border-bottom:0}.activity-dot{width:8px;height:8px;border-radius:50%;margin-top:5px;background:linear-gradient(135deg,#007bff,#00d1c1);box-shadow:0 0 0 4px rgba(0,123,255,.08)}.activity-item strong{font-size:12px}.activity-item p{margin:3px 0 0;color:var(--muted);font-size:11px}.activity-item time{font-size:10px;color:#8ba0b2;white-space:nowrap}
.platform-panel{background:linear-gradient(155deg,#0b2e51,#071f3b)!important;border-color:#123e65!important;color:#fff}.platform-panel h2{color:#fff}.platform-panel .muted{color:#8da8bd}.platform-status{display:grid;gap:8px}.platform-status>div{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:8px;padding:9px 10px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);border-radius:9px}.platform-status strong{font-size:11px}.platform-status small{font-size:10px;color:#40d8ca}.status-light{width:8px;height:8px;border-radius:50%;background:#7f94a8}.status-light.online{background:#00d1c1;box-shadow:0 0 0 4px rgba(0,209,193,.09)}
.halnora-ui dialog{border-radius:14px;box-shadow:0 28px 80px rgba(2,17,32,.36)}.halnora-ui dialog::backdrop{background:rgba(4,21,39,.72);backdrop-filter:blur(2px)}
.halnora-ui .task-footer .btn.primary{background:linear-gradient(135deg,#087fff,#00a6e9)!important;border-color:#087fff!important}
.halnora-ui .mobile-dispatch-bar{background:#071f3b;color:#fff;border-color:rgba(255,255,255,.08)}.halnora-ui .mobile-dispatch-bar .btn{background:#0d355a;color:#fff;border-color:#244b6b}
@media(max-width:1250px){.dashboard-columns{grid-template-columns:1fr}.dashboard-rail{display:grid;grid-template-columns:1fr 1fr}.halnora-ui .driver-presence .driver-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){body.halnora-ui{background:#eef3f7}.halnora-ui .command-hero{color:var(--ink)}.halnora-ui .command-hero h1{color:var(--ink)}.halnora-ui .command-hero>div>p:not(.eyebrow){color:var(--muted)}.hero-business-contact span{background:#fff;border-color:#d9e3eb;color:#426078}.halnora-ui .operations-stats{grid-template-columns:repeat(2,1fr)}.dashboard-rail{grid-template-columns:1fr}.halnora-ui .driver-presence .driver-grid{grid-template-columns:1fr}.halnora-ui .dispatch-main{padding:18px}.halnora-ui .dispatch-sidebar{width:280px}}
@media(max-width:620px){.halnora-ui .operations-stats{grid-template-columns:1fr 1fr}.halnora-ui .operations-stats .stat{min-height:112px;padding:13px}.halnora-ui .command-hero{display:block}.hero-business-contact{justify-content:flex-start;margin-top:10px}.activity-item{grid-template-columns:10px 1fr}.activity-item time{grid-column:2}}

/* v17.1 Analytics */
.analytics-page{max-width:none}.analytics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:18px 0}.analytics-card{min-height:330px}.analytics-card .panel-head{align-items:flex-start}.overview-list{display:grid;gap:8px;margin-top:4px}.overview-list a{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:12px 4px;text-decoration:none;color:inherit;border-bottom:1px solid var(--line,#e6ebf0)}.overview-list a:last-child{border-bottom:0}.overview-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:#fff;font-weight:800}.icon-active{background:#19a9bd}.icon-complete{background:#12b72c}.icon-new{background:#f5b000}.icon-due{background:#e83b4f}.overview-list strong{font-size:1.05rem}.status-stack{display:flex;height:16px;overflow:hidden;border-radius:6px;background:#eef2f5;margin:10px 0 14px}.status-seg{display:block;min-width:3px}.analytics-legend{display:grid;gap:4px}.analytics-legend a{display:grid;grid-template-columns:14px 1fr auto;align-items:center;gap:9px;color:inherit;text-decoration:none;padding:7px 6px;border-radius:8px}.analytics-legend a:hover{background:#f5f8fa}.legend-dot{width:11px;height:11px;border-radius:50%}.seg-0{background:#7a8792}.seg-1{background:#1783f7}.seg-2{background:#26a6bd}.seg-3{background:#6959d9}.seg-4{background:#f09a28}.seg-5{background:#35a853}.seg-6{background:#e24a5a}.chart-key{display:flex;justify-content:center;gap:22px;font-size:.82rem;font-weight:650;margin-top:4px}.chart-key span{display:flex;align-items:center;gap:7px}.chart-key i{width:11px;height:11px;display:inline-block}.created-key,.created-bar{background:#858f98}.completed-key,.completed-bar{background:#2eaa55}.bar-history-chart{height:205px;display:flex;align-items:flex-end;gap:9px;padding:18px 4px 0;border-bottom:1px solid #dce3e8}.bar-day{flex:1;min-width:0;text-align:center}.bar-pair{height:155px;display:flex;align-items:flex-end;justify-content:center;gap:3px}.history-bar{position:relative;display:block;width:42%;min-width:5px;border-radius:4px 4px 0 0;transition:height .2s}.history-bar b{position:absolute;top:-18px;left:50%;transform:translateX(-50%);font-size:.68rem;color:#68747e;font-weight:600}.bar-day small{display:block;padding-top:8px;white-space:nowrap;font-size:.72rem}.team-list{display:grid;gap:5px}.team-row{display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center;padding:9px 4px}.team-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#6f7d88;color:#fff;font-size:.8rem;font-weight:700}.team-row>div{display:grid}.team-row small{font-size:.72rem}.team-count{font-size:1rem}.compact-task-list{display:grid}.compact-task-list>a{display:flex;justify-content:space-between;gap:12px;padding:11px 4px;border-bottom:1px solid var(--line,#e6ebf0);text-decoration:none;color:inherit}.compact-task-list>a:last-child{border-bottom:0}.compact-task-list>a>div{display:grid;gap:3px}.compact-task-list>a>div:last-child{text-align:right;justify-items:end}.compact-task-list small{color:#77828b}.merchant-list{display:grid;gap:13px}.merchant-row{display:grid;gap:5px}.merchant-label{display:flex;justify-content:space-between;gap:12px;font-size:.84rem}.merchant-track{height:11px;border-radius:5px;background:#edf1f4;overflow:hidden}.merchant-fill{display:block;height:100%;border-radius:5px}.merchant-0{background:#1674d1}.merchant-1{background:#b1175e}.merchant-2{background:#2da66f}.merchant-3{background:#e28b25}.merchant-4{background:#704fd1}.merchant-5{background:#1a9bab}.analytics-activity{margin:0 0 24px}.analytics-activity .activity-list{max-height:520px;overflow:auto}
@media(max-width:1180px){.analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.analytics-grid{grid-template-columns:1fr}.analytics-card{min-height:auto}.bar-history-chart{gap:4px}.history-bar b{display:none}.chart-key{justify-content:flex-start}.analytics-page .hero{margin-bottom:10px}}


/* v17.2 Sidebar logo-only brand panel */
.halnora-ui .sidebar-brand.sidebar-logo-only{position:relative;padding:0 0 18px;margin:0 0 0;border-bottom:1px solid rgba(255,255,255,.10);display:block}
.halnora-ui .sidebar-logo-link{display:flex;width:100%;height:96px;align-items:center;justify-content:center;background:#fff;border-radius:12px;padding:8px;overflow:hidden}
.halnora-ui .sidebar-brand .sidebar-business-logo{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;background:transparent;border-radius:0;padding:0}
.halnora-ui .sidebar-logo-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:28px}
.halnora-ui .sidebar-brand.sidebar-logo-only .sidebar-close{position:absolute;right:7px;top:7px;z-index:2;width:34px;height:34px;border-radius:50%;background:rgba(7,31,59,.78);color:#fff;font-size:24px;line-height:30px}
@media(max-width:900px){.halnora-ui .sidebar-logo-link{height:104px}.halnora-ui .sidebar-brand .sidebar-business-logo{max-width:none;max-height:none}}

/* v17.3 Merchant Portal administration */
.merchant-admin-form{max-width:880px;margin:auto}.merchant-admin-form .permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:12px 0 4px}.merchant-admin-form .permission-grid label{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid var(--line);border-radius:9px;background:#f7fafb;font-size:12px}.merchant-admin-form .permission-grid input{width:auto}.badge.active{background:#e2f7e7;color:#28763e}.badge.inactive{background:#edf0f2;color:#6d7c85}@media(max-width:720px){.merchant-admin-form .permission-grid{grid-template-columns:1fr 1fr}}


/* v17.4 Invoice & Billing */
.invoice-ui{background:#f4f6f8}.invoice-page{max-width:none}.invoice-page-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:4px 0 8px}.invoice-page-head h1{margin:0;font-size:30px}.invoice-actions{display:flex;gap:8px;align-items:center}.invoice-actions select{padding:9px}.invoice-tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin-bottom:14px;padding-left:4px;overflow:auto}.invoice-tabs a{padding:12px 2px 10px;white-space:nowrap;color:#4f606a}.invoice-tabs a.active{color:#08a83d;border-bottom:3px solid #08b43e;font-weight:800}.invoice-list-panel{padding:0}.invoice-summary{display:flex;justify-content:flex-end;align-items:center;gap:22px;padding:13px 14px;border-bottom:1px solid var(--line);font-size:12px}.invoice-summary form{display:flex;gap:6px}.invoice-summary input{padding:8px;min-width:190px}.invoice-table{min-width:1250px}.invoice-number{color:#0aaa3d;font-weight:800}.invoice-status{display:inline-flex;padding:4px 7px;border-radius:7px;font-size:11px;font-weight:800;background:#e8edf0}.invoice-status.paid{background:#18a941;color:#fff}.invoice-status.awaiting-payment{background:#1388ff;color:#fff}.invoice-status.overdue{background:#dc3b45;color:#fff}.invoice-status.draft{background:#e9edf0;color:#57656e}.invoice-more{position:relative;border:0;padding:0}.invoice-more summary{list-style:none;border:1px solid var(--line);border-radius:8px;padding:4px 9px}.invoice-more[open] .invoice-menu{display:grid}.invoice-menu{display:none;position:absolute;right:0;top:34px;width:190px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 35px rgba(0,0,0,.18);z-index:20;padding:6px}.invoice-menu a,.invoice-menu button{display:block;width:100%;text-align:left;border:0;background:#fff;padding:10px;border-radius:7px;color:#293942;font-weight:500;cursor:pointer}.invoice-menu a:hover,.invoice-menu button:hover{background:#f0f5f7}.invoice-menu form{margin:0}.invoice-menu .danger-link{color:#b32e36}.invoice-footer{padding:12px 15px;color:var(--muted);font-size:12px}.mini-dialog{width:min(520px,calc(100% - 24px))}.mini-dialog label{display:grid;gap:6px;margin-top:12px;font-size:12px;font-weight:700}.payment-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}.payment-summary span{background:#f4f7f8;padding:10px;border-radius:8px;font-size:12px}.payment-summary strong{display:block;margin-top:3px}.invoice-create-body{background:#eef2f4}.invoice-workflow{max-width:1320px;margin:auto;padding:22px}.workflow-head{display:flex;justify-content:space-between;align-items:center}.workflow-head h1{margin:5px 0 14px}.workflow-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:15px}.workflow-steps span{background:#fff;border:1px solid var(--line);border-radius:9px;padding:10px;color:#88969e;font-size:12px;font-weight:800;text-align:center}.workflow-steps span.active{color:#15993b;border-color:#a8dcb7;background:#f1fbf4}.bill-type-row{display:flex;gap:26px;margin:14px 0 18px}.bill-type-row label{font-weight:700}.invoice-search-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.invoice-search-grid label,.review-fields label{display:grid;gap:5px;font-size:12px;font-weight:700;color:#50636f}.toggle-line{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center!important;justify-content:start}.toggle-line input{width:auto}.workflow-search-action{display:flex;justify-content:flex-end;margin-top:14px}.invoice-task-results{max-height:58vh}.invoice-task-results table{min-width:1200px}.invoice-task-results tr:has(.job-check:checked){background:#f0fbf4}.workflow-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px}.workflow-bottom>div{display:flex;gap:8px}.workflow-bottom button:disabled{opacity:.45;cursor:not-allowed}.review-top{display:grid;grid-template-columns:1fr 1fr;gap:24px}.review-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.review-items{max-height:56vh;margin-top:18px}.review-items table{min-width:1050px}.review-items input{padding:7px;min-width:78px}.review-bottom{display:grid;grid-template-columns:1fr 330px;gap:28px;margin-top:18px}.review-bottom label{display:grid;gap:6px;font-size:12px;font-weight:700}.invoice-totals{display:grid;gap:8px}.invoice-totals span{display:flex;justify-content:space-between;border-bottom:1px solid #e8edef;padding:4px}.invoice-totals .grand{background:#e9f8ed;border:0;border-radius:5px;padding:8px;font-size:16px}.invoice-document-body{background:#eef2f4;padding:25px}.invoice-document{max-width:1050px;margin:auto;background:#fff;box-shadow:0 15px 45px rgba(0,0,0,.12);padding:38px}.invoice-doc-actions{display:flex;gap:8px;justify-content:flex-end;margin-bottom:20px}.invoice-document header{display:flex;justify-content:space-between;gap:30px;border-bottom:2px solid #17384f;padding-bottom:20px}.invoice-document header img{max-width:180px;max-height:85px}.invoice-document header h1{margin:6px 0}.invoice-document header p{color:#647680}.invoice-doc-number{text-align:right;display:grid;justify-items:end;gap:7px}.invoice-doc-number span{font-size:13px;letter-spacing:.15em}.invoice-doc-number strong{font-size:28px}.invoice-doc-meta{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:24px 0}.invoice-doc-meta h3{margin:0 0 8px}.invoice-doc-table{margin-top:8px}.invoice-doc-table th{background:#f1f4f6}.invoice-doc-footer{display:grid;grid-template-columns:1fr 330px;gap:30px;margin-top:28px}.invoice-doc-totals{display:grid;gap:8px}.invoice-doc-totals span{display:flex;justify-content:space-between;padding:7px;border-bottom:1px solid #e5ebef}.invoice-doc-totals .due{background:#e8f8ec;font-size:17px;border:0}.invoice-doc-totals b{font-weight:900}
@media(max-width:850px){.invoice-page-head,.invoice-summary{align-items:flex-start;flex-direction:column}.invoice-tabs{gap:14px}.invoice-search-grid,.review-top,.review-fields,.review-bottom,.invoice-doc-meta,.invoice-doc-footer{grid-template-columns:1fr}.workflow-steps{grid-template-columns:1fr}.bill-type-row{flex-direction:column;gap:10px}.invoice-workflow{padding:12px}.invoice-document{padding:20px}.invoice-document header{flex-direction:column}.invoice-doc-number{justify-items:start;text-align:left}.workflow-bottom{align-items:stretch;flex-direction:column}.workflow-bottom>div{display:grid}}
@media print{.invoice-doc-actions{display:none}.invoice-document-body{padding:0;background:#fff}.invoice-document{box-shadow:none;max-width:none}}


/* v17.7 PayPal + dashboard sign-out */
.hero-business-contact{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;justify-content:flex-end}.hero-business-contact .hero-signout{margin-top:4px}.settings-section-title{margin-top:8px;padding-top:16px;border-top:1px solid var(--border,#dce4ea);display:flex;flex-direction:column;gap:4px}.paypal-settings-note{padding:12px;border-radius:10px;background:#f4f7fa;font-size:13px}.invoice-menu form{margin:0}.invoice-menu button[type="button"]{width:100%;text-align:left}.mp-paypal-btn{background:#0070ba!important;color:#fff!important;border-color:#0070ba!important}.mp-row-actions{display:flex;gap:6px;flex-wrap:wrap}

/* v17.8 bulk dispatch, tracking and attachments */
.bulk-assign-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;margin:0 0 12px;background:#f5f9ff;border:1px solid #d6e5f6;border-radius:12px}.bulk-assign-bar select{min-width:190px}.bulk-assign-bar span{color:var(--muted,#65758b);font-size:13px}.select-col{width:38px;text-align:center}.tracking-link-box{display:flex;gap:8px;align-items:center}.tracking-link-box input{flex:1;min-width:0}.tracking-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}.tracking-actions form{display:flex;gap:8px}.tracking-actions input{flex:1;min-width:0}.attachment-list{display:grid;gap:8px;margin:12px 0}.attachment-list>div{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #dce6ef;border-radius:10px;background:#fafcfe}.attachment-list>div>a{flex:1}.attachment-list span{font-size:12px;color:#667085}.attachment-upload{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}.attachment-upload small{color:#667085}@media(max-width:720px){.bulk-assign-bar{align-items:stretch}.bulk-assign-bar select,.bulk-assign-bar .btn{width:100%}.tracking-link-box,.tracking-actions form{flex-direction:column;align-items:stretch}.tracking-actions{grid-template-columns:1fr}.attachment-list>div{align-items:flex-start;flex-direction:column}}

/* v18.0 - HalNora visual system across Dispatch */
:root{--hn-navy:#071f3b;--hn-navy-2:#0b2d4f;--hn-blue:#007bff;--hn-teal:#00d1c1;--hn-cyan:#45e2d4;--hn-bg:#eef3f7;--hn-card:#ffffff;--hn-line:#dce6ee;--hn-ink:#0f2740;--hn-muted:#6f8295}
body.halnora-ui:not(.driver-body):not(.login-body){background:linear-gradient(180deg,var(--hn-navy) 0,var(--hn-navy-2) 180px,var(--hn-bg) 470px);min-height:100vh}
.halnora-ui .topbar{background:rgba(7,31,59,.96);border-bottom-color:rgba(255,255,255,.08);box-shadow:0 10px 28px rgba(2,16,31,.16)}
.halnora-ui .topbar .brand,.halnora-ui .topbar nav,.halnora-ui .topbar nav a{color:#d8e9f5}.halnora-ui .topbar .brand span{color:#8ea8c0}
.halnora-ui .hero:not(.command-hero){padding:16px 18px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:linear-gradient(135deg,rgba(13,53,90,.96),rgba(8,42,73,.96));box-shadow:0 16px 36px rgba(2,16,31,.18)}
.halnora-ui .hero:not(.command-hero) h1,.halnora-ui .hero:not(.command-hero) strong{color:#fff}.halnora-ui .hero:not(.command-hero) p{color:#a8bfd1}.halnora-ui .hero:not(.command-hero) .eyebrow{color:var(--hn-cyan)!important}
.halnora-ui .panel,.halnora-ui dialog{border-color:var(--hn-line);box-shadow:0 12px 30px rgba(8,31,59,.09)}
.halnora-ui .panel h1,.halnora-ui .panel h2,.halnora-ui .panel h3{color:var(--hn-ink)}
.halnora-ui .btn.primary{background:linear-gradient(135deg,var(--hn-blue),#129af4);border-color:var(--hn-blue);box-shadow:0 7px 18px rgba(0,123,255,.18)}
.halnora-ui .btn:not(.primary):not(.danger):not(.warning){border-color:#cddae5;color:#0d4d80}.halnora-ui .btn:not(.primary):not(.danger):not(.warning):hover{background:#f0f7ff;border-color:#9fc8ee}
.halnora-ui input:focus,.halnora-ui select:focus,.halnora-ui textarea:focus{outline:3px solid rgba(0,123,255,.12);border-color:var(--hn-blue)}
.halnora-ui th{background:#f4f8fb;color:#60778b}.halnora-ui tbody tr:hover td{background:#f8fbfd}.halnora-ui .badge.assigned,.halnora-ui .badge.en-route-to-pickup,.halnora-ui .badge.en-route-to-delivery{background:#e8f3ff;color:#075eaa}.halnora-ui .badge.delivered{background:#e8fbf8;color:#08786f}
.halnora-ui summary,.halnora-ui a{color:#0a6fca}.halnora-ui .stat{border-color:var(--hn-line)}.halnora-ui .detail-grid .grand{background:linear-gradient(135deg,var(--hn-navy),var(--hn-navy-2))}
.halnora-ui .workflow-head,.halnora-ui .invoice-page-head{color:#fff}.halnora-ui .workflow-head h1,.halnora-ui .invoice-page-head h1{color:#fff}.halnora-ui .workflow-head a{color:var(--hn-cyan)}
.halnora-ui .workflow-steps span.active{background:linear-gradient(135deg,var(--hn-blue),#129af4);color:#fff;border-color:var(--hn-blue)}
.halnora-ui .invoice-tabs a.active{color:var(--hn-blue);border-bottom-color:var(--hn-teal)}
.halnora-ui .invoice-document header{border-bottom-color:var(--hn-navy)}.halnora-ui .invoice-doc-table th{background:#eef5fb}.halnora-ui .invoice-doc-totals .due{background:#e8fbf8}
.halnora-ui .settings-section-title{border-top-color:var(--hn-line)}.halnora-ui .tracking-link-box input{background:#f8fbfd}
.halnora-ui .alert.success{background:#e8fbf8;color:#08786f}.halnora-ui .role-admin,.halnora-ui .status-pill.active{background:#e8fbf8;color:#08786f}

@media(max-width:720px){.three-col-row{grid-template-columns:1fr}}

/* v18.7 Tutorials & Feature Guide */
.tutorial-page{padding-bottom:48px}.tutorial-hero{display:flex;justify-content:space-between;align-items:center;gap:24px}.tutorial-hero-meta{min-width:145px;padding:16px 20px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.06);text-align:center}.tutorial-hero-meta strong{display:block;font-size:34px;color:#fff}.tutorial-hero-meta span{font-size:12px;color:#a9c1d4;text-transform:uppercase;letter-spacing:.1em}.tutorial-toolbar{margin:18px 0;padding:16px}.tutorial-search{display:flex;gap:10px;align-items:center;padding:0 14px;border:1px solid var(--hn-line);border-radius:12px;background:#f8fbfd}.tutorial-search span{font-size:24px;color:#60778b}.tutorial-search input{border:0;background:transparent;box-shadow:none;padding:13px 0;width:100%;font-size:15px}.tutorial-search input:focus{outline:0}.tutorial-filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.tutorial-filters button{border:1px solid #cbd9e4;border-radius:999px;background:#fff;color:#325a78;font-weight:800;padding:8px 12px;cursor:pointer}.tutorial-filters button.active{background:linear-gradient(135deg,var(--hn-blue),#129af4);border-color:var(--hn-blue);color:#fff}.tutorial-grid{display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));gap:16px}.tutorial-card{display:flex;flex-direction:column;min-height:250px;border:1px solid var(--hn-line);border-radius:16px;background:#fff;color:var(--hn-ink)!important;text-decoration:none;overflow:hidden;box-shadow:0 10px 26px rgba(7,31,59,.08);transition:.18s transform,.18s box-shadow,.18s border-color}.tutorial-card:hover{transform:translateY(-3px);box-shadow:0 17px 38px rgba(7,31,59,.13);border-color:#9fc8ee}.tutorial-card[hidden]{display:none}.tutorial-card-top{display:flex;justify-content:space-between;align-items:center;padding:18px 18px 6px}.tutorial-card-top>span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#70879a;font-weight:900}.tutorial-card-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#eaf4ff,#e7fbf9);color:#0873ca;font-size:22px;font-weight:900}.tutorial-card h2{font-size:18px;line-height:1.25;margin:10px 18px 8px}.tutorial-card p{margin:0 18px 18px;color:#6e8192;line-height:1.55;font-size:13px}.tutorial-card-foot{margin-top:auto;padding:13px 18px;background:linear-gradient(135deg,var(--hn-navy),var(--hn-navy-2));color:#d8ebf7;font-weight:800;font-size:12px;display:flex;justify-content:space-between}.tutorial-card-foot b{color:var(--hn-cyan);font-size:16px}.tutorial-empty{margin-top:18px}.tutorial-breadcrumb{display:flex;gap:9px;align-items:center;margin:18px 0;color:#71859a;font-size:13px}.tutorial-detail{max-width:980px;margin:0 auto;padding:24px}.tutorial-detail-head{display:flex;gap:18px;align-items:flex-start;padding-bottom:20px;border-bottom:1px solid var(--hn-line)}.tutorial-big-icon{width:68px;height:68px;flex:0 0 68px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,var(--hn-blue),var(--hn-teal));color:#fff;font-size:28px;font-weight:900}.tutorial-detail h1{margin:3px 0 7px;font-size:30px}.tutorial-steps{list-style:none;padding:0;margin:22px 0;display:grid;gap:12px}.tutorial-steps li{display:grid;grid-template-columns:38px 1fr;gap:13px;align-items:start;padding:14px;border:1px solid #dfe8ef;border-radius:12px;background:#fbfdff;color:#22384d;line-height:1.55}.tutorial-steps li>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#eaf4ff;color:#086dbc;font-weight:900}.tutorial-help-note{padding:14px 16px;border-radius:12px;background:#e9fbf8;border:1px solid #bdece6;color:#17665f}.tutorial-help-note strong{color:#075e57}@media(max-width:1050px){.tutorial-grid{grid-template-columns:repeat(2,minmax(240px,1fr))}}@media(max-width:700px){.tutorial-grid{grid-template-columns:1fr}.tutorial-hero{align-items:flex-start;flex-direction:column}.tutorial-hero-meta{width:100%}.tutorial-detail{padding:17px}.tutorial-detail-head{flex-direction:column}.tutorial-detail h1{font-size:24px}}

/* v19.0 collapsible left navigation */
.sidebar-dropdown-nav{gap:8px;overflow:auto;padding-right:2px}
.sidebar-group{border:1px solid transparent;border-radius:10px;overflow:hidden}
.sidebar-group summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 12px;cursor:pointer;font-weight:750;font-size:13px;color:#c2d4e2;border-radius:9px;user-select:none}
.sidebar-group summary::-webkit-details-marker{display:none}
.sidebar-group summary:hover{background:rgba(255,255,255,.07);color:#fff}
.sidebar-group summary b{font-size:14px;font-weight:700;transition:transform .18s ease;color:#7fa8c9}
.sidebar-group[open] summary b{transform:rotate(180deg)}
.sidebar-group-links{display:flex;flex-direction:column;gap:4px;padding:0 0 5px 9px}
.halnora-ui .sidebar-group-links a,.halnora-ui .sidebar-group-links button{font-size:12.5px;padding:9px 10px;border-left:2px solid rgba(255,255,255,.08);border-radius:7px;color:#abc2d3}
.halnora-ui .sidebar-group-links a.active{border-left-color:#19d4c7;background:linear-gradient(90deg,rgba(8,127,255,.34),rgba(18,154,244,.18));box-shadow:none;color:#fff}
.dashboard-sound-btn{white-space:nowrap}
.profile-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}
.profile-summary-item{border:1px solid var(--line);border-radius:12px;padding:14px;background:#fff}
.profile-summary-item span{display:block;color:var(--muted);font-size:12px;margin-bottom:4px}.profile-summary-item strong{font-size:15px}
@media(max-width:650px){.profile-summary-grid{grid-template-columns:1fr}.hero-business-contact{align-items:flex-end}}

/* v20.6 business settings navigation and section highlighting */
.sidebar-subgroup{margin:2px 0}.sidebar-subgroup>summary{cursor:pointer;list-style:none;font-size:12.5px;padding:9px 10px;border-left:2px solid rgba(255,255,255,.08);border-radius:7px;color:#abc2d3;display:flex;justify-content:space-between}.sidebar-subgroup>summary::-webkit-details-marker{display:none}.sidebar-subgroup[open]>summary{color:#fff;background:rgba(8,127,255,.16)}.sidebar-subgroup-links{display:flex;flex-direction:column;gap:2px;padding:4px 0 4px 12px}.halnora-ui .sidebar-subgroup-links a{font-size:11.8px;padding:7px 9px}.halnora-ui .sidebar-subgroup-links a.active{border-left-color:#19d4c7;background:linear-gradient(90deg,rgba(8,127,255,.34),rgba(18,154,244,.18));color:#fff}.business-settings-section{grid-column:1/-1;border:1px solid var(--hn-line,#dce4ea);border-radius:12px;padding:14px;background:rgba(9,41,64,.025);scroll-margin-top:18px}.business-settings-section .settings-section-title{margin-top:0;padding-top:0;border-top:0}.business-settings-section.is-target{outline:2px solid #19d4c7;box-shadow:0 0 0 4px rgba(25,212,199,.10)}

/* v20.8 Business Settings selector */
.business-settings-picker{margin:0 0 14px;padding:16px;border:1px solid var(--hn-line,#dce4ea);border-radius:14px;background:linear-gradient(135deg,rgba(8,127,255,.08),rgba(25,212,199,.06));display:flex;flex-direction:column;gap:12px}.business-settings-picker>div:first-child{display:flex;flex-direction:column;gap:3px}.business-settings-picker>div:first-child small{color:var(--muted,#687983)}.business-settings-picker-buttons{display:flex;gap:8px;flex-wrap:wrap}.business-settings-picker-buttons .btn{min-height:38px}.business-settings-picker-buttons .btn.primary{box-shadow:0 0 0 2px rgba(25,212,199,.18)}#businessSettingsGrid>[hidden]{display:none!important}
/* v20.9 Support release history */
.release-history-panel{margin:18px 0;padding:20px}.release-history-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.release-history-head h2{margin:3px 0 5px}.release-history-head p{margin:0;color:#6e8192}.release-current{white-space:nowrap;padding:8px 12px;border-radius:999px;background:#e9fbf8;border:1px solid #bdece6;color:#075e57;font-weight:900}.release-history-list{display:grid;gap:8px}.release-item{border:1px solid #dfe8ef;border-radius:11px;background:#fbfdff;overflow:hidden}.release-item summary{cursor:pointer;display:flex;justify-content:space-between;gap:12px;padding:12px 14px;color:#17384f}.release-item summary span{color:#71859a;font-size:12px}.release-item ul{margin:0;padding:0 32px 14px 38px;color:#50697c;line-height:1.55}.release-item li+li{margin-top:5px}@media(max-width:700px){.release-history-head{flex-direction:column}.release-item summary{flex-direction:column;gap:3px}}

/* v20.12 Google Places-safe simulated modal.
   Native Places Autocomplete appends .pac-container to <body>, so New/Edit Order
   remain non-modal dialogs but are visually/behaviorally presented as modals. */
body.otg-address-dialog-open{overflow:hidden!important}
body.otg-address-dialog-open::before{content:"";position:fixed;inset:0;background:rgba(4,21,39,.72);backdrop-filter:blur(2px);z-index:9990}
.task-dialog[open],.google-places-dialog[open]{position:fixed!important;inset:0!important;margin:auto!important;z-index:10000!important}
.google-places-dialog{width:min(900px,calc(100vw - 24px));max-height:92vh;overflow:auto}
.pac-container{z-index:2147483647!important}

/* v20.14 New/Edit Order modal repair */
body.otg-address-dialog-open{overflow:hidden!important}
body.otg-address-dialog-open::before{content:""!important;display:block!important;position:fixed!important;inset:0!important;background:rgba(4,21,39,.72)!important;backdrop-filter:blur(2px);z-index:9990!important;pointer-events:auto!important}
.task-dialog[open],.google-places-dialog[open]{position:fixed!important;left:50%!important;top:50%!important;right:auto!important;bottom:auto!important;transform:translate(-50%,-50%)!important;margin:0!important;z-index:10000!important;max-height:92vh!important}
.task-dialog .task-form{max-height:92vh!important}
.task-dialog .task-scroll{min-height:0!important;overflow-y:auto!important}
.pac-container{z-index:2147483647!important}

/* v20.29 — HalNora Control dashboard visual refresh. Presentation only; existing workflows remain intact. */
.halnora-ui{background:#061a2c;color:#dcecff;--hn-card:#0b2a43;--hn-line:#173f5d;--hn-ink:#eaf6ff;--hn-muted:#8faabd;min-height:100vh}
.halnora-ui .dispatch-shell{background:linear-gradient(135deg,#071c30 0%,#061827 55%,#071f33 100%);min-height:100vh}
.halnora-ui .dispatch-sidebar.hn-modern-sidebar{width:205px;background:linear-gradient(180deg,#082641,#061d33);border-right:1px solid #123954;box-shadow:12px 0 40px rgba(0,0,0,.16);padding:0 10px 12px}
.halnora-ui .dispatch-main{margin-left:205px;max-width:none;width:auto;padding:18px 20px 28px}
.hn-brand-lockup{height:88px;padding:0 10px;border-bottom:1px solid rgba(255,255,255,.06);display:flex;align-items:center}
.hn-brand-lockup .sidebar-logo-link{height:auto!important;display:flex!important;align-items:center!important;gap:10px!important;overflow:visible!important}
.hn-brand-mark{width:38px;height:46px}.hn-brand-text{display:grid;line-height:1}.hn-brand-text strong{font-size:25px;letter-spacing:-1.2px;color:#f6fbff}.hn-brand-text strong span{color:#17a9ff}.hn-brand-text small{font-size:6px;letter-spacing:2.1px;color:#8fb2ca;margin-top:6px;font-weight:800}
.hn-main-nav{display:grid!important;gap:4px!important;padding:12px 0!important}.halnora-ui .hn-main-nav a{display:flex;align-items:center;gap:12px;padding:10px 12px!important;border:0!important;border-radius:6px!important;color:#b7ccdb!important;font-size:12px!important;font-weight:600!important;background:transparent!important}.halnora-ui .hn-main-nav a:hover{background:#0c3554!important;color:#fff!important}.halnora-ui .hn-main-nav a.active{background:linear-gradient(90deg,#078cff,#0798ff)!important;color:#fff!important;box-shadow:0 5px 18px rgba(0,139,255,.26)!important}.nav-icon{width:18px;text-align:center;color:#cfe7f7}.hn-sidebar-footer{padding:10px 7px;color:#7799b1}.hn-sidebar-footer .halnora-powered{padding:0;background:none;border:0}.hn-sidebar-footer .halnora-powered img{width:18px}.hn-sidebar-footer strong{font-size:10px}.hn-sidebar-footer span,.hn-sidebar-footer>small{font-size:8px;color:#7693a8}.halnora-ui .sidebar-bottom{border-top:1px solid rgba(255,255,255,.06);padding-top:7px}.halnora-ui .sidebar-bottom a{font-size:10px!important;padding:6px 8px!important}
.hn-dashboard-header{min-height:64px!important;margin:0!important;padding:0 2px 12px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;display:flex!important;align-items:center!important;justify-content:space-between!important}.hn-welcome h1{margin:0;color:#f4f9fd;font-size:22px;letter-spacing:-.5px}.hn-welcome p{margin:4px 0 0;color:#8da7bb;font-size:12px}.hn-header-actions{display:flex;align-items:center;gap:10px}.hn-search{width:min(340px,32vw);height:36px;border:1px solid #214864;background:#0b2b46;border-radius:8px;display:flex;align-items:center;padding:0 10px;color:#86a8bf}.hn-search input{width:100%;border:0!important;outline:0;background:transparent!important;color:#dcecff!important;padding:8px!important;font-size:11px}.hn-search input::placeholder{color:#7898af}.hn-profile{display:grid;grid-template-columns:34px auto;grid-template-rows:1fr 1fr;column-gap:8px;text-decoration:none;color:#e8f4fb}.hn-profile>span{grid-row:1/3;width:34px;height:34px;border-radius:50%;background:#148ff0;display:grid;place-items:center;font-size:11px}.hn-profile b{font-size:10px;align-self:end}.hn-profile small{font-size:9px;color:#91aabd}.hn-date-row{display:flex;justify-content:flex-end;gap:8px;align-items:baseline;margin:-7px 0 8px;color:#839db0;font-size:10px}.hn-date-row strong{color:#d7e9f6;font-size:12px}
.halnora-ui .operations-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 10px}.halnora-ui .stat{min-height:86px;background:linear-gradient(145deg,#0b2b45,#0a263e)!important;border:1px solid #173f5c!important;border-radius:8px!important;box-shadow:0 8px 22px rgba(0,0,0,.13)!important;color:#a9c0d1!important;padding:12px 13px 10px 54px!important;position:relative}.halnora-ui .stat .stat-icon{position:absolute;left:13px;top:20px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#0b8ef4;color:white;font-size:15px}.halnora-ui .stat strong{color:#f4fbff!important;font-size:22px!important;line-height:1.1}.halnora-ui .stat small{color:#4fd8a3!important;font-size:9px!important}.halnora-ui .stat span:not(.stat-icon){font-size:9px!important;color:#9ab2c4!important}
.halnora-ui .dashboard-columns{grid-template-columns:minmax(0,1fr) 270px!important;gap:10px!important}.halnora-ui .panel{background:linear-gradient(145deg,#0a2942,#09243a)!important;border:1px solid #173f5b!important;border-radius:8px!important;box-shadow:0 8px 22px rgba(0,0,0,.12)!important;color:#d8e9f5}.halnora-ui .panel-head{border-bottom:1px solid #173c57!important}.halnora-ui .panel h2{color:#e9f5fc!important;font-size:14px!important}.halnora-ui .muted{color:#7f9bb0!important}.halnora-ui table{color:#c8dbe8}.halnora-ui th{background:#0a2237!important;color:#7f9db3!important;border-color:#173a54!important;font-size:9px!important;text-transform:uppercase;letter-spacing:.04em}.halnora-ui td{border-color:#153850!important;font-size:10px!important}.halnora-ui tbody tr:hover{background:#0d304b!important}.halnora-ui a{color:#62bfff}.halnora-ui input,.halnora-ui select,.halnora-ui textarea{background:#0b2338;color:#dcebf5;border-color:#214963}.halnora-ui .btn{background:#0b2c46;color:#dcebf5;border-color:#214963}.halnora-ui .btn.primary{background:#078cf0!important;border-color:#078cf0!important;color:#fff!important}.halnora-ui .bulk-assign-bar{background:#0a2237;border-color:#173f5b}.halnora-ui .driver-card{background:#0a2238!important;border-color:#173e59!important}.halnora-ui .platform-status>div{background:#0a2238!important;border-color:#173e59!important}.halnora-ui .badge{border:0!important}.halnora-ui .badge.assigned{background:#0d705f!important;color:#6df0c7!important}.halnora-ui .badge.en-route-to-delivery,.halnora-ui .badge.picked-up{background:#0a5c9d!important;color:#80ccff!important}.halnora-ui .badge.new{background:#55480b!important;color:#ffe379!important}.halnora-ui .badge.problem,.halnora-ui .badge.failed{background:#6d2930!important;color:#ffb1b8!important}
.halnora-ui .driver-presence .panel-head{display:block}.halnora-ui .driver-presence .action-row{margin-top:8px}.halnora-ui .driver-grid{gap:5px}.halnora-ui .presence-name strong{font-size:10px}.halnora-ui .presence-status,.halnora-ui .presence-last-seen,.halnora-ui .presence-gps{font-size:9px}.halnora-ui .platform-panel{margin-top:10px}.halnora-ui .alert.success{background:#0c503f;border-color:#16735b;color:#9ff3d4}
@media(max-width:1100px){.halnora-ui .operations-stats{grid-template-columns:repeat(3,1fr)}.hn-search{display:none}.halnora-ui .dashboard-columns{grid-template-columns:1fr!important}}
@media(max-width:900px){.halnora-ui .dispatch-main{margin-left:0;padding:12px}.halnora-ui .dispatch-sidebar.hn-modern-sidebar{width:240px}.hn-dashboard-header{padding-top:45px!important}.hn-profile b,.hn-profile small{display:none}.halnora-ui .operations-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.halnora-ui .operations-stats{grid-template-columns:1fr}.hn-dashboard-header{align-items:flex-start!important}.hn-welcome h1{font-size:18px}.hn-date-row{justify-content:flex-start}.halnora-ui .stat{min-height:76px}}

/* v20.30 — reference-dashboard layout; operational forms/tables remain unchanged. */
.hn-kpis{grid-template-columns:repeat(4,minmax(0,1fr))!important;max-width:none}
.hn-command-grid{display:grid;grid-template-columns:minmax(360px,1.15fr) minmax(340px,.95fr) 250px;gap:10px;align-items:stretch;margin-bottom:10px}
.hn-panel-title{height:42px;padding:0 13px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #173f5b;font-size:11px;font-weight:800;color:#e9f5fc}.hn-panel-title a{font-size:9px;text-decoration:none}.hn-live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#25d366;margin-right:6px;box-shadow:0 0 9px rgba(37,211,102,.55)}
.hn-live-ops,.hn-active-summary{min-height:285px;overflow:hidden}.hn-dashboard-map{height:243px;width:100%;background:#dbe7d2}.hn-map-empty{height:243px;display:grid;place-items:center;align-content:center;gap:10px;color:#8faabd;text-align:center;padding:20px}.hn-map-empty strong{color:#eaf6ff;font-size:15px}.hn-map-empty span{max-width:320px;font-size:10px}
.hn-order-list{padding:4px 10px}.hn-order-row{display:grid;grid-template-columns:52px 1fr 92px 58px;gap:7px;align-items:center;padding:9px 4px;border-bottom:1px solid #143a54;text-decoration:none;color:#cfe2ee}.hn-order-row b{font-size:9px}.hn-order-row span{font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hn-order-row em{font-style:normal;font-size:8px!important;text-align:center}.hn-order-row small{font-size:8px;color:#8faabd;text-align:right}.hn-empty-small{padding:24px;color:#7898af;font-size:10px;text-align:center}
.hn-right-stack{display:grid;grid-template-rows:1fr auto;gap:10px}.hn-shift-list{padding:6px 10px}.hn-shift-row{display:grid;grid-template-columns:10px 1fr auto;gap:7px;align-items:center;padding:8px 2px;font-size:9px}.hn-shift-row em{font-style:normal;color:#6fc9ff;background:#0b4269;border-radius:12px;padding:3px 7px}.hn-quick{padding-bottom:9px}.hn-quick>.btn{display:block;margin:6px 9px;width:calc(100% - 18px);text-align:center;font-size:9px;text-decoration:none}
.hn-lower-grid{display:grid;grid-template-columns:1.25fr .85fr .75fr;gap:10px;margin-bottom:10px}.hn-lower-grid>.panel{min-height:155px}.hn-activity-list{padding:6px 12px}.hn-activity-list>div{display:grid;grid-template-columns:52px 1fr;gap:8px;padding:6px 0;border-bottom:1px solid #14364e}.hn-activity-list time{font-size:8px;color:#7998ae}.hn-activity-list span{font-size:9px}.hn-activity-list small{display:block;color:#7897ac;margin-top:2px}.hn-system{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:13px}.hn-system div{display:grid;grid-template-columns:28px 1fr;grid-template-rows:1fr 1fr;align-items:center}.hn-system i{grid-row:1/3;width:26px;height:26px;border:1px solid #0c8ee9;border-radius:50%;display:grid;place-items:center;color:#20b6ff;font-style:normal}.hn-system b{font-size:9px}.hn-system small{font-size:8px;color:#31dc9c}.hn-summary{display:grid;grid-template-columns:1fr 1fr;padding:12px;gap:8px}.hn-summary div{background:#092238;border:1px solid #153d59;border-radius:7px;padding:10px}.hn-summary strong{display:block;font-size:18px;color:#fff}.hn-summary span{font-size:8px;color:#8ba8bb}.hn-full-orders{margin-top:0}.hn-full-orders .table-wrap{max-height:430px;overflow:auto}
@media(max-width:1350px){.hn-command-grid{grid-template-columns:1fr 1fr}.hn-right-stack{grid-column:1/3;grid-template-columns:1fr 1fr;grid-template-rows:auto}.hn-lower-grid{grid-template-columns:1fr 1fr}.hn-lower-grid>:last-child{grid-column:1/3}.hn-kpis{grid-template-columns:repeat(4,1fr)!important}}
@media(max-width:900px){.hn-command-grid,.hn-lower-grid{grid-template-columns:1fr}.hn-right-stack,.hn-lower-grid>:last-child{grid-column:auto}.hn-right-stack{grid-template-columns:1fr}.hn-kpis{grid-template-columns:repeat(2,1fr)!important}}

/* v20.43 — fit-and-finish pass: full-width dashboard, tighter reference proportions. */
.halnora-ui .dispatch-main{margin-left:0!important;width:100%!important;max-width:none!important;padding:14px 18px 26px!important}
.hn-dashboard-header{min-height:58px!important;padding-bottom:8px!important}.hn-welcome h1{font-size:25px}.hn-welcome p{font-size:10px}.hn-date-row{margin:-5px 0 7px}
.hn-kpis{gap:9px!important;margin-bottom:9px!important}.halnora-ui .hn-kpis .stat{min-height:80px;padding-top:10px!important;padding-bottom:8px!important}.halnora-ui .hn-kpis .stat .stat-icon{top:18px}
.hn-command-grid{grid-template-columns:minmax(420px,1.22fr) minmax(360px,.98fr) 260px;gap:9px;margin-bottom:9px}
.hn-live-ops,.hn-active-summary{height:330px;min-height:330px}.hn-dashboard-map,.hn-map-empty{height:288px}.hn-panel-title{height:41px}
.hn-right-stack{gap:9px}.hn-shift{min-height:145px}.hn-quick>.btn{margin:5px 9px}
.hn-lower-grid{grid-template-columns:1.25fr .9fr .8fr;gap:9px;margin-bottom:9px}.hn-lower-grid>.panel{min-height:160px}.hn-activity-list>div{padding:5px 0}
.hn-summary-v31{display:grid;grid-template-columns:64px 1fr!important;grid-template-rows:88px auto;padding:10px!important;gap:7px 10px!important}.hn-summary-v31>div{background:transparent!important;border:0!important;border-radius:0!important;padding:0!important}.hn-summary-bars{display:flex;align-items:flex-end;gap:6px;height:78px;padding:4px 2px!important;border-bottom:1px solid #21445d!important}.hn-summary-bars i{display:block;flex:1;height:var(--v);min-height:8px;border-radius:2px 2px 0 0;background:#0b96f6}.hn-summary-bars i:nth-child(2){background:#18b8d8}.hn-summary-bars i:nth-child(3){background:#ff8b32}.hn-summary-legend{display:grid;align-content:center;gap:5px}.hn-summary-legend span{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:5px;font-size:8px;color:#91aabd}.hn-summary-legend span>i{width:7px;height:7px;border-radius:2px;background:#0b96f6}.hn-summary-legend span:nth-child(2)>i{background:#18b8d8}.hn-summary-legend span:nth-child(3)>i{background:#ff8b32}.hn-summary-legend span:nth-child(4)>i{background:#35d79b}.hn-summary-legend b{color:#eaf6ff;font-size:9px}.hn-summary-revenue{grid-column:1/3!important;border-top:1px solid #173f5b!important;padding-top:7px!important;display:flex!important;justify-content:space-between;align-items:center}.hn-summary-revenue span{font-size:8px!important}.hn-summary-revenue strong{font-size:15px!important}
@media(max-width:1350px){.hn-command-grid{grid-template-columns:1fr 1fr}.hn-right-stack{grid-column:1/3}.halnora-ui .dispatch-main{padding:12px!important}}
@media(max-width:900px){.halnora-ui .dispatch-main{margin-left:0!important;padding:12px!important}.hn-live-ops,.hn-active-summary{height:auto;min-height:285px}.hn-dashboard-map,.hn-map-empty{height:260px}}

/* v20.43 — viewport-position correction and final dashboard shell alignment. */
@media(min-width:901px){
  .halnora-ui .dispatch-shell{grid-template-columns:205px minmax(0,1fr)!important}
  .halnora-ui .dispatch-main{margin-left:0!important;width:auto!important;min-width:0!important;padding:14px 18px 26px!important}
}
.hn-dashboard-header{scroll-margin-top:0}
.hn-command-grid{margin-top:0!important}
.hn-lower-grid{margin-top:10px!important}


/* v20.44 — desktop viewport/header correction and compact dashboard geometry. */
@media(min-width:901px){
  html,body.halnora-ui{width:100%;min-width:0;overflow-x:hidden}
  .halnora-ui .dispatch-shell{width:100%;max-width:100%;grid-template-columns:205px minmax(0,1fr)!important}
  .halnora-ui .dispatch-main{grid-column:2;min-width:0!important;width:100%!important;max-width:100%!important;margin:0!important;padding:10px 14px 24px!important}
  .hn-top-shell{position:sticky;top:0;z-index:18;background:linear-gradient(180deg,#071c30 0%,#071c30 82%,rgba(7,28,48,.96) 100%);padding-top:2px}
  .hn-dashboard-header{min-height:54px!important;padding:0 2px 5px!important}
  .hn-date-row{margin:-3px 0 6px!important}
  .hn-kpis,.hn-command-grid,.hn-lower-grid,.hn-full-orders{width:100%!important;max-width:none!important}
  .hn-command-grid{grid-template-columns:minmax(390px,1.2fr) minmax(330px,.95fr) 245px!important;align-items:start!important;gap:8px!important;margin-bottom:8px!important}
  .hn-live-ops,.hn-active-summary{height:300px!important;min-height:300px!important}
  .hn-dashboard-map,.hn-map-empty{height:258px!important}
  .hn-right-stack{height:300px!important;grid-template-rows:112px 180px!important;gap:8px!important;align-self:start}
  .hn-shift{min-height:0!important;height:112px!important;overflow:hidden}
  .hn-shift-list{padding:3px 9px!important}.hn-shift-row{padding:5px 2px!important}
  .hn-quick{height:180px!important;padding-bottom:5px!important;overflow:hidden}
  .hn-quick>.btn{min-height:27px!important;padding:5px 8px!important;margin:4px 8px!important;width:calc(100% - 16px)!important}
  .hn-lower-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr) minmax(0,.8fr)!important;gap:8px!important;margin:0 0 8px!important}
  .hn-lower-grid>.panel{min-width:0!important;min-height:150px!important;margin-bottom:0!important}
}
@media(min-width:901px) and (max-width:1350px){
  .hn-command-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.95fr) 220px!important}
  .hn-right-stack{grid-column:auto!important;grid-template-columns:1fr!important;grid-template-rows:112px 180px!important}
  .hn-lower-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr) minmax(0,.8fr)!important}
  .hn-lower-grid>:last-child{grid-column:auto!important}
}

/* v20.45 — reference visual polish; presentation only. */
@media(min-width:901px){
  .halnora-ui .dispatch-main{padding:9px 12px 20px!important}
  .hn-dashboard-header{min-height:50px!important;padding-bottom:4px!important}
  .hn-welcome h1{font-size:24px!important;letter-spacing:-.7px}.hn-welcome p{margin-top:2px!important}
  .hn-header-actions{gap:8px}.hn-search{height:34px;width:min(360px,30vw)}
  .hn-date-row{margin:-2px 0 5px!important}
  .hn-kpis{gap:8px!important;margin-bottom:8px!important}.halnora-ui .hn-kpis .stat{min-height:74px!important;padding:9px 12px 7px 50px!important}.halnora-ui .hn-kpis .stat .stat-icon{left:12px;top:17px;width:30px;height:30px}.halnora-ui .hn-kpis .stat strong{font-size:21px!important}
  .hn-command-grid{grid-template-columns:minmax(430px,1.28fr) minmax(350px,.96fr) 240px!important;gap:8px!important;margin-bottom:8px!important}
  .hn-live-ops,.hn-active-summary{height:274px!important;min-height:274px!important}.hn-dashboard-map,.hn-map-empty{height:232px!important}.hn-panel-title{height:38px!important;padding:0 12px!important}
  .hn-right-stack{height:274px!important;grid-template-rows:102px 164px!important;gap:8px!important}.hn-shift{height:102px!important}.hn-quick{height:164px!important}.hn-quick>.btn{min-height:25px!important;padding:4px 7px!important;margin:4px 8px!important}
  .hn-lower-grid{gap:8px!important;margin-bottom:8px!important}.hn-lower-grid>.panel{height:190px!important;min-height:190px!important;overflow:hidden}.hn-activity-list{padding:4px 12px!important}.hn-activity-list>div{padding:4px 0!important}.hn-system{padding:10px 12px!important;gap:6px!important}
  .hn-full-orders{margin-top:0!important}
}
/* subtle KPI trend motif matching the dashboard reference */
.hn-kpis .stat:after{content:"";position:absolute;right:13px;bottom:13px;width:45px;height:20px;opacity:.55;background:linear-gradient(135deg,transparent 0 28%,#0a9cff 29% 32%,transparent 33% 48%,#0a9cff 49% 52%,transparent 53% 67%,#0a9cff 68% 71%,transparent 72%)}
.hn-kpis .stat:nth-child(3):after{filter:hue-rotate(100deg)}.hn-kpis .stat:nth-child(4):after{filter:hue-rotate(230deg)}


/* v20.46 — readability + Quick Actions fit; preserve v20.45 geometry. */
@media(min-width:901px){
  .halnora-ui .dispatch-main{font-size:13px!important}
  .hn-panel-title{font-size:11px!important}
  .hn-panel-title a{font-size:9px!important}
  .hn-shift-row{font-size:10px!important}
  .hn-quick{height:164px!important;overflow:visible!important;padding-bottom:6px!important}
  .hn-quick .hn-panel-title{height:32px!important}
  .hn-quick>.btn{box-sizing:border-box!important;min-height:24px!important;height:24px!important;line-height:14px!important;padding:4px 7px!important;margin:3px 8px!important;width:calc(100% - 16px)!important;font-size:9px!important}
  .hn-lower-grid>.panel{height:198px!important;min-height:198px!important}
  .hn-activity-list>div{font-size:9px!important}
  .hn-system div{font-size:10px!important}
  .hn-summary-legend span{font-size:9px!important}
  .hn-full-orders .panel-head{padding-top:10px!important;padding-bottom:10px!important}
}


/* v20.47 — visual detail pass; keep v20.46 geometry and operational behavior intact. */
@media(min-width:901px){
  .hn-kpis .stat{overflow:hidden!important;background:linear-gradient(145deg,#0b2d49 0%,#0a2943 72%,#0b3451 100%)!important}
  .hn-kpis .stat:before{content:"";position:absolute;inset:auto -18px -32px auto;width:105px;height:70px;background:radial-gradient(circle,rgba(16,154,255,.16),transparent 67%);pointer-events:none}
  .hn-kpis .stat:nth-child(3):before{background:radial-gradient(circle,rgba(40,218,154,.15),transparent 67%)}
  .hn-kpis .stat:nth-child(4):before{background:radial-gradient(circle,rgba(127,101,255,.18),transparent 67%)}
  .hn-kpis .stat:after{width:58px!important;height:25px!important;right:12px!important;bottom:11px!important;opacity:.72!important}
  .hn-panel-title{border-bottom:1px solid #17415e!important;font-weight:800!important}
  .hn-live-dot{box-shadow:0 0 0 4px rgba(48,217,139,.08),0 0 10px rgba(48,217,139,.45)}
  .hn-dashboard-map{border-top:1px solid rgba(255,255,255,.03)}
  .hn-order-row{grid-template-columns:72px minmax(0,1fr) auto 92px!important;gap:8px!important;align-items:center!important;padding:9px 12px!important;border-bottom:1px solid #143b56!important}
  .hn-order-row:hover{background:#0c3451!important}
  .hn-order-row b{color:#eaf7ff!important}.hn-order-row small{color:#8caabd!important;text-align:right}
  .hn-shift-row{border:1px solid #17425f;border-radius:7px;margin:3px 0;padding:6px 7px!important;background:#09243a}
  .hn-shift-row em{font-size:8px!important;font-weight:800!important}
  .hn-quick>.btn{border-color:#6f9fbd!important;background:#0a2941!important;color:#a9cbe0!important;font-weight:800!important}
  .hn-quick>.btn.primary{background:linear-gradient(135deg,#078cff,#119df2)!important;border-color:#078cff!important;color:#fff!important}
  .hn-activity-list>div{grid-template-columns:58px 1fr!important;transition:background .15s ease}
  .hn-activity-list>div:hover{background:#0b2e49}.hn-activity-list b{color:#eaf6ff}.hn-activity-list time{color:#5fa8d3!important}
  .hn-system div{padding:3px 4px;border-radius:7px}.hn-system div:hover{background:#0a2941}.hn-system i{box-shadow:inset 0 0 0 2px rgba(10,142,233,.06)}
  .hn-summary-bars i{box-shadow:0 0 10px rgba(11,150,246,.16)}
  .hn-summary-revenue{margin-top:2px}.hn-summary-revenue strong{font-size:17px!important}
  .hn-full-orders .panel-head h2{margin-bottom:2px!important}.hn-full-orders .panel-head .muted{font-size:10px!important;color:#7f9db2!important}
  .hn-full-orders .table-wrap thead th{position:sticky;top:0;z-index:2;background:#09263e!important;color:#75a8ca!important;letter-spacing:.045em;text-transform:uppercase;font-size:8px!important}
}


/* v20.48 — Live Operations map polish; preserve v20.47 dashboard geometry. */
.hn-dashboard-map{position:relative;overflow:hidden;background:#dce8d2}
.hn-dashboard-map .gm-style{font-family:inherit}
.hn-dashboard-map .gm-style .gm-style-iw-c{border-radius:10px;padding:0;box-shadow:0 10px 28px rgba(0,20,38,.28)}
.hn-dashboard-map .gm-style .gm-style-iw-d{overflow:auto!important}
.hn-map-popup{min-width:190px;padding:12px 14px;color:#123149;display:grid;gap:5px;font-family:Arial,sans-serif}
.hn-map-popup strong{font-size:14px;color:#08243b}.hn-map-popup-status{font-size:11px;font-weight:700;color:#15945f}.hn-map-popup-job{font-size:11px;color:#31566d;border-top:1px solid #dce7ed;padding-top:5px}.hn-map-popup small{font-size:10px;color:#6c8493}
.hn-map-recenter{width:40px;height:40px;margin:0 10px 10px 0;border:0;border-radius:4px;background:#fff;color:#087fd0;font-size:25px;line-height:38px;font-weight:700;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.3)}
.hn-map-recenter:hover{background:#f4f9fc}

/* v20.49 operational dashboard detail */
.hn-driver-state.available{color:#62efc4!important;background:#0b493f!important}.hn-driver-state.on-route{color:#79d4ff!important;background:#0b4269!important}.hn-driver-state.assigned{color:#d9c6ff!important;background:#3b2d67!important}.hn-driver-state.offline{color:#a7b8c5!important;background:#26394a!important}
.hn-order-row small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hn-map-popup{min-width:180px;color:#123047;font:13px/1.35 Arial,sans-serif}.hn-map-popup strong{display:block;font-size:14px;margin-bottom:4px}.hn-map-popup-status{display:block;color:#0a9b69;font-weight:700;margin-bottom:4px}.hn-map-popup-job{margin:4px 0;font-weight:700}.hn-map-popup small{display:block;color:#607789;margin-top:5px}


/* v20.57 — PWA/mobile order-form stability. Keep dialogs anchored while the virtual keyboard resizes the visual viewport. */
@media (max-width: 900px), (display-mode: standalone) {
  .task-dialog[open], .google-places-dialog[open] {
    position: fixed !important;
    left: 8px !important;
    right: 8px !important;
    top: max(8px, env(safe-area-inset-top)) !important;
    bottom: max(8px, env(safe-area-inset-bottom)) !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    transform: none !important;
    overflow: hidden !important;
  }
  .task-dialog .task-form,
  .google-places-dialog > form.dialog-form {
    height: 100% !important;
    max-height: none !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }
  .task-dialog .task-head,
  .google-places-dialog .dialog-head {
    position: sticky;
    top: 0;
    z-index: 20;
    background: #fff;
  }
  .task-dialog .task-footer {
    position: sticky;
    bottom: 0;
    z-index: 20;
    padding-bottom: max(13px, env(safe-area-inset-bottom));
  }
  .task-dialog input, .task-dialog select, .task-dialog textarea,
  .google-places-dialog input, .google-places-dialog select, .google-places-dialog textarea {
    font-size: 16px !important; /* prevents mobile browser focus zoom/jumping */
  }
}


/* v20.58 — complete navigation + true phone/PWA dashboard layout. */
@media (max-width: 700px) {
  html,body{width:100%;max-width:100%;overflow-x:hidden!important}
  .halnora-ui .mobile-dispatch-bar{width:100%;max-width:100%;box-sizing:border-box}
  .halnora-ui .dispatch-shell,.halnora-ui .dispatch-main,.halnora-ui .hn-top-shell{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box}
  .halnora-ui .dispatch-main{margin-left:0!important;padding:10px 10px calc(18px + env(safe-area-inset-bottom))!important;overflow-x:hidden!important}
  .halnora-ui .dispatch-sidebar.hn-modern-sidebar{width:min(88vw,300px)!important;max-width:300px!important;overflow-y:auto!important;overscroll-behavior:contain;padding-bottom:max(16px,env(safe-area-inset-bottom))}
  .halnora-ui .hn-main-nav{padding-bottom:10px!important}
  .hn-dashboard-header{width:100%!important;min-width:0!important;padding:10px 0 8px!important;display:block!important}
  .hn-header-actions{margin-top:8px;max-width:100%;flex-wrap:wrap}.hn-profile{margin-left:auto}
  .hn-kpis,.halnora-ui .operations-stats{width:100%!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .halnora-ui .stat{min-width:0!important;padding:10px 8px 9px 46px!important}.halnora-ui .stat .stat-icon{left:9px}.halnora-ui .stat strong{font-size:20px!important}
  .hn-command-grid,.hn-lower-grid,.hn-right-stack{display:grid!important;width:100%!important;max-width:100%!important;min-width:0!important;grid-template-columns:minmax(0,1fr)!important;grid-column:auto!important;gap:10px!important}
  .hn-command-grid>* ,.hn-lower-grid>* ,.hn-right-stack>*{width:100%!important;max-width:100%!important;min-width:0!important;grid-column:auto!important;box-sizing:border-box}
  .hn-live-ops,.hn-active-summary{min-height:0!important;height:auto!important}.hn-dashboard-map,.hn-map-empty{width:100%!important;height:250px!important;min-width:0!important}
  .hn-order-row{grid-template-columns:48px minmax(0,1fr) 86px!important}.hn-order-row small{display:none}
  .hn-lower-grid>.panel{min-height:0!important}.hn-activity-list{max-height:230px!important}.hn-system{grid-template-columns:1fr 1fr!important}
  .halnora-ui .panel,.halnora-ui .active-orders-panel,#activeOrders{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box}
  #activeOrders .panel-head{align-items:stretch!important;flex-direction:column!important;gap:10px!important}
  #activeOrders .panel-head .filters,#activeOrders .panel-head .action-row{width:100%!important;max-width:100%!important;display:flex!important;flex-wrap:wrap!important}
  #activeOrders .panel-head input,#activeOrders .panel-head select{min-width:0!important;flex:1 1 140px!important}
  .halnora-ui .bulk-assign-bar{width:100%!important;max-width:100%!important;box-sizing:border-box}.halnora-ui .table-wrap{width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
  .halnora-ui .table-wrap table{min-width:760px}
}
@media (max-width: 390px){.hn-kpis,.halnora-ui .operations-stats{grid-template-columns:1fr!important}}

/* v20.59 — canonical application shell and hard mobile viewport containment. */
.sidebar-logo-link .sidebar-business-logo{display:block;width:100%;height:72px;max-width:155px;object-fit:contain;background:#fff;border-radius:8px;padding:5px;box-sizing:border-box}
@media (max-width:700px){
  html,body{margin:0!important;padding:0!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important}
  body.halnora-ui{position:relative!important;left:0!important;right:0!important}
  .mobile-dispatch-bar{position:sticky!important;left:0!important;right:0!important;top:0!important;width:100vw!important;max-width:100vw!important;min-width:0!important;margin:0!important;box-sizing:border-box!important}
  .dispatch-shell{display:block!important;position:relative!important;left:0!important;right:auto!important;width:100vw!important;max-width:100vw!important;min-width:0!important;margin:0!important;padding:0!important;box-sizing:border-box!important;overflow:visible!important}
  .dispatch-main,.halnora-ui .dispatch-main{display:block!important;position:relative!important;left:0!important;right:auto!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:10px!important;box-sizing:border-box!important;overflow-x:hidden!important}
  .hn-top-shell,.hn-dashboard-header,.hn-kpis,.hn-command-grid,.hn-lower-grid,.hn-right-stack,#activeOrders{width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important}
  .hn-command-grid,.hn-lower-grid,.hn-right-stack{display:flex!important;flex-direction:column!important;gap:10px!important}
  .hn-command-grid>*,.hn-lower-grid>*,.hn-right-stack>*{flex:0 0 auto!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;box-sizing:border-box!important}
  .hn-kpis,.operations-stats{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .hn-dashboard-map,.hn-map-empty{width:100%!important;max-width:100%!important;height:240px!important}
  .panel{max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
}
.mobile-business-logo{display:none}
@media(max-width:700px){.mobile-dispatch-bar .mobile-business-logo{display:block;max-width:92px;max-height:38px;object-fit:contain;background:#fff;border-radius:5px;padding:2px}}
.hn-section-header{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-4px 0 18px;padding:9px 14px;border:1px solid #17425f;border-radius:10px;background:#082641;color:#fff;box-sizing:border-box}.hn-section-business{display:flex;align-items:center;gap:10px;min-width:0}.hn-section-business img{width:72px;height:38px;object-fit:contain;background:#fff;border-radius:5px;padding:2px}.hn-section-business strong{display:block;font-size:14px}.hn-section-business small{display:block;color:#8fb1c8;font-size:10px;margin-top:2px}.hn-section-user{display:flex;align-items:center;gap:12px;font-size:11px}.hn-section-user a{color:#8fd8ff;text-decoration:none}.hn-section-user a:hover{color:#fff}@media(max-width:700px){.hn-section-header{margin:0 0 10px;padding:8px 10px}.hn-section-business img{display:none}.hn-section-user span,.hn-section-user a:first-of-type{display:none}}

/* v20.60 — universal section layout + readability pass */
@media (min-width:901px){
  body.halnora-ui .dispatch-shell{display:grid!important;grid-template-columns:205px minmax(0,1fr)!important;grid-template-rows:auto!important;align-items:start!important;min-height:100vh!important}
  body.halnora-ui .dispatch-shell>.dispatch-sidebar{grid-column:1!important;grid-row:1!important;min-height:100vh!important;height:100vh!important;position:sticky!important;top:0!important}
  body.halnora-ui .dispatch-shell>.topbar{display:none!important}
  body.halnora-ui .dispatch-shell>.dispatch-main{grid-column:2!important;grid-row:1!important;align-self:start!important;min-height:100vh!important;margin:0!important;width:100%!important;max-width:100%!important}
}
/* Consistent, accessible field treatment throughout Dispatch/PWA. */
body.halnora-ui input:not([type="checkbox"]):not([type="radio"]),
body.halnora-ui select,
body.halnora-ui textarea{background:#fff!important;color:#102b43!important;border:1px solid #9fb4c4!important;box-shadow:none!important;font-weight:500}
body.halnora-ui input::placeholder,body.halnora-ui textarea::placeholder{color:#657f92!important;opacity:1!important}
body.halnora-ui input:disabled,body.halnora-ui select:disabled,body.halnora-ui textarea:disabled{background:#e8eef3!important;color:#536b7d!important;opacity:1!important}
body.halnora-ui input:focus,body.halnora-ui select:focus,body.halnora-ui textarea:focus{border-color:#159bf2!important;outline:3px solid rgba(21,155,242,.20)!important}
body.halnora-ui .panel label,body.halnora-ui .builder-card label,body.halnora-ui .form-card-row label,body.halnora-ui dialog label{color:#29485e!important}
body.halnora-ui .panel .muted,body.halnora-ui .builder-card .muted,body.halnora-ui .form-card-row .muted{color:#5d7486!important}
body.halnora-ui .builder-card,body.halnora-ui .form-card-row{color:#102b43!important}
body.halnora-ui .builder-card h1,body.halnora-ui .builder-card h2,body.halnora-ui .builder-card h3,body.halnora-ui .form-card-row h3{color:#102b43!important}
body.halnora-ui .field-config th{color:#405f75!important;background:#eef4f8!important}
body.halnora-ui .field-config td{color:#18384f!important}
body.halnora-ui .section-label{color:#173d57!important;background:#e7f0f6!important}
body.halnora-ui .hn-section-header{color:#f7fbff!important}
body.halnora-ui .hn-section-header strong{color:#fff!important}
body.halnora-ui .hn-section-header small{color:#a9c8dc!important}
body.halnora-ui .hero>div>p:not(.eyebrow){color:#9eb8ca!important}
body.halnora-ui .dispatch-main>.hero h1{color:#fff!important}
body.halnora-ui .dispatch-main>.hero h2{color:#fff!important}
@media(max-width:900px){
 body.halnora-ui .dispatch-main>.hero h1,body.halnora-ui .dispatch-main>.hero h2{color:#102b43!important}
 body.halnora-ui .dispatch-main>.hero>div>p:not(.eyebrow){color:#5d7486!important}
}

/* v20.63 — Shipping Calculator + Help readability */
body.halnora-ui .calc-card{color:#17384f!important}
body.halnora-ui .calc-card h1,body.halnora-ui .calc-card h2,body.halnora-ui .calc-card h3,body.halnora-ui .calc-card label,body.halnora-ui .calc-card .summary-row,body.halnora-ui .calc-card .rate-box{color:#17384f!important}
body.halnora-ui .calc-card input,body.halnora-ui .calc-card select,body.halnora-ui .quote-dialog input{background:#fff!important;color:#17384f!important;border-color:#9fb4c3!important}
body.halnora-ui .calc-card input::placeholder,body.halnora-ui .quote-dialog input::placeholder{color:#667f91!important;opacity:1}
body.halnora-ui .calc-card .rate-box,body.halnora-ui .calc-status{background:#f4f8fb!important;color:#29485e!important}
body.halnora-ui .calc-card .muted,body.halnora-ui .calc-card #tollNote,body.halnora-ui .calc-card #routeNote{color:#506b7e!important}
body.halnora-ui .quote-dialog,body.halnora-ui .quote-dialog form{background:#fff!important;color:#17384f!important}
body.halnora-ui .quote-dialog h2,body.halnora-ui .quote-dialog label{color:#17384f!important}
body.halnora-ui .tutorial-detail{background:#fff!important;color:#22384d!important}
body.halnora-ui .tutorial-detail h1,body.halnora-ui .tutorial-detail h2,body.halnora-ui .tutorial-detail h3{color:#17384f!important}
body.halnora-ui .tutorial-detail .muted{color:#536d80!important}
body.halnora-ui .tutorial-detail .eyebrow{color:#0876c9!important}
body.halnora-ui .tutorial-breadcrumb{color:#9db4c5!important}
body.halnora-ui .tutorial-steps li{color:#22384d!important;background:#fbfdff!important}
body.halnora-ui .tutorial-help-note{color:#17665f!important}

/* v20.63 Help tutorial card readability */
body.halnora-ui.tutorial-body .tutorial-card{background:#fff!important;color:#102b43!important}
body.halnora-ui.tutorial-body .tutorial-card h2{color:#123a56!important;font-weight:800!important;opacity:1!important}
body.halnora-ui.tutorial-body .tutorial-card p{color:#496579!important;font-weight:500!important;opacity:1!important}
body.halnora-ui.tutorial-body .tutorial-card-top>span{color:#526d80!important;font-weight:900!important;opacity:1!important}
body.halnora-ui.tutorial-body .tutorial-card-foot{background:#082b49!important;color:#fff!important;opacity:1!important}
body.halnora-ui.tutorial-body .tutorial-card-foot b{color:#43d7ef!important}
body.halnora-ui.tutorial-body .tutorial-toolbar{color:#17384f!important}
body.halnora-ui.tutorial-body .tutorial-search{background:#fff!important}
body.halnora-ui.tutorial-body .tutorial-search input{color:#17384f!important;background:#fff!important}
body.halnora-ui.tutorial-body .tutorial-filters button:not(.active){background:#fff!important;color:#17384f!important;border-color:#9fb4c3!important}

/* v20.64 — secondary portal readability + business settings logo preview */
body.halnora-ui .dispatch-main>.panel,
body.halnora-ui .dispatch-main>section.panel{color:#d8e9f5!important}
body.halnora-ui .dispatch-main>.panel p,
body.halnora-ui .dispatch-main>.panel small,
body.halnora-ui .dispatch-main>.panel .muted,
body.halnora-ui .dispatch-main>.panel label{color:#9fb9cb!important;opacity:1!important}
body.halnora-ui .dispatch-main>.panel strong,
body.halnora-ui .dispatch-main>.panel h2,
body.halnora-ui .dispatch-main>.panel h3{color:#f2f8fc!important}
body.halnora-ui .dispatch-main>.panel td{color:#d8e9f5!important}
body.halnora-ui .dispatch-main>.panel td small{color:#8eabba!important}
body.halnora-ui .dispatch-main>.panel .btn:not(.primary):not(.danger):not(.warning){color:#74c8ff!important;border-color:#8fb8d2!important;background:#0b2c46!important}
body.halnora-ui .dispatch-main>.panel .btn:not(.primary):not(.danger):not(.warning):hover{color:#fff!important;background:#104268!important;border-color:#74c8ff!important}
/* Keep intentionally light cards and form surfaces dark-on-light. */
body.halnora-ui .dispatch-main>.panel .builder-card,
body.halnora-ui .dispatch-main>.panel .form-card-row,
body.halnora-ui .dispatch-main>.panel .driver-map-card,
body.halnora-ui .dispatch-main>.panel .settings-logo-preview{color:#17384f!important}
body.halnora-ui .form-card-row p,body.halnora-ui .form-card-row small{color:#526d80!important}
body.halnora-ui .form-card-row h3,body.halnora-ui .form-card-row strong{color:#17384f!important}
/* Profile disabled/read-only fields need readable values. */
body.halnora-ui input:disabled,body.halnora-ui input[readonly]{color:#36566d!important;-webkit-text-fill-color:#36566d!important;opacity:1!important}
/* Live map right-side status copy. */
body.halnora-ui .live-tracking-side p,body.halnora-ui .live-tracking-side small,
body.halnora-ui .driver-list p,body.halnora-ui .driver-list small{color:#9fb9cb!important;opacity:1!important}
body.halnora-ui .driver-list .driver-card{background:#fff!important;color:#17384f!important}
body.halnora-ui .driver-list .driver-card strong{color:#17384f!important}
body.halnora-ui .driver-list .driver-card small,body.halnora-ui .driver-list .driver-card p{color:#526d80!important}
/* Business Settings remains a light dialog and gets an obvious live logo preview. */
body.halnora-ui #businessSettings,body.halnora-ui #businessSettings .dialog-form{color:#17384f!important}
body.halnora-ui #businessSettings label{color:#29485e!important}
body.halnora-ui #businessSettings small,body.halnora-ui #businessSettings .muted{color:#60788a!important}
.settings-logo-preview{min-height:86px;display:flex;align-items:center;padding:10px;border:1px solid #d7e3eb;border-radius:10px;background:#f7fafc}
.settings-logo-preview img{display:block;max-width:360px;max-height:96px;width:auto;height:auto;object-fit:contain}


/* v20.65 — Resources / Recent Upgrades readability */
body.halnora-ui.tutorial-body .dispatch-main>.release-history-panel .release-item{background:#fff!important;color:#17384f!important;border-color:#d5e1e9!important}
body.halnora-ui.tutorial-body .dispatch-main>.release-history-panel .release-item summary{background:#fff!important;color:#17384f!important}
body.halnora-ui.tutorial-body .dispatch-main>.release-history-panel .release-item summary strong{color:#17384f!important;opacity:1!important}
body.halnora-ui.tutorial-body .dispatch-main>.release-history-panel .release-item summary span{color:#536d80!important;opacity:1!important}
body.halnora-ui.tutorial-body .dispatch-main>.release-history-panel .release-item ul,
body.halnora-ui.tutorial-body .dispatch-main>.release-history-panel .release-item li{color:#36566d!important;opacity:1!important}
body.halnora-ui.tutorial-body .dispatch-main>.release-history-panel .release-item[open] summary{border-bottom-color:#d5e1e9!important}
body.halnora-ui.tutorial-body .dispatch-main>.release-history-panel .release-current{background:#effaf7!important;color:#075e55!important;border-color:#a8ddd3!important}

/* v20.67 — Users section readability */
body.halnora-ui .dispatch-main .users-table,
body.halnora-ui .dispatch-main table.users-table{font-size:15px!important}
body.halnora-ui .dispatch-main .users-table th,
body.halnora-ui .dispatch-main table.users-table th{font-size:13px!important;letter-spacing:.025em}
body.halnora-ui .dispatch-main .users-table td,
body.halnora-ui .dispatch-main table.users-table td{font-size:15px!important;line-height:1.45;padding-top:14px!important;padding-bottom:14px!important}
body.halnora-ui .dispatch-main .users-table td strong,
body.halnora-ui .dispatch-main table.users-table td strong{font-size:15px!important}
body.halnora-ui .dispatch-main .users-table td small,
body.halnora-ui .dispatch-main table.users-table td small{font-size:12px!important}

/* v20.71 — Ooma caller handoff fix */
.ooma-incoming{position:fixed;right:24px;top:92px;z-index:5000;width:min(440px,calc(100vw - 32px));display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px 20px;border-radius:16px;background:#fff;color:#17384f;box-shadow:0 18px 55px rgba(0,0,0,.35);border:2px solid #18aeea}.ooma-incoming[hidden]{display:none!important}.ooma-incoming div:first-child{display:grid;gap:3px}.ooma-incoming small{font-weight:900;color:#087da8}.ooma-incoming strong{font-size:20px;color:#17384f}.ooma-incoming span{font-size:16px;color:#29485e}.ooma-incoming em{font-style:normal;font-size:12px;color:#60788a}.ooma-incoming div:last-child{display:flex;gap:8px;flex-wrap:wrap}@media(max-width:650px){.ooma-incoming{right:16px;top:72px;align-items:flex-start;flex-direction:column}}

/* v20.76 dashboard cash-float editing */
.hn-dashboard-float-form{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.hn-dashboard-float-form .money-field{min-width:105px}.hn-dashboard-float-form .money-field input{width:78px}.hn-dashboard-float-form .btn{white-space:nowrap}


/* v20.82 — full-page Dispatch dark shell consistency */
html:has(body.halnora-ui){background:#061a2c!important;}
body.halnora-ui:not(.driver-body):not(.login-body){background:#061a2c!important;min-height:100vh!important;}
body.halnora-ui .dispatch-shell{background:linear-gradient(135deg,#071c30 0%,#061827 55%,#071f33 100%)!important;min-height:100vh!important;height:auto!important;}
body.halnora-ui .dispatch-main{background:transparent!important;min-height:100vh!important;}
@media(max-width:900px){body.halnora-ui:not(.driver-body):not(.login-body){background:#061a2c!important;}}

/* v20.83 — selectable Dispatch light theme. Functional layout/logic remains unchanged. */
.hn-theme-control{display:grid;gap:6px;margin:0 0 12px;padding:9px;border:1px solid #17425f;border-radius:9px;background:rgba(3,19,33,.42)}
.hn-theme-control>span{font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#8fb1c8}
.hn-theme-options{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.hn-theme-btn{appearance:none;border:1px solid #28516d;border-radius:6px;background:#0b2c46;color:#b9d0df;font:inherit;font-size:10px;font-weight:800;padding:6px 8px;cursor:pointer}
.hn-theme-btn[aria-pressed="true"]{background:#078cf0;color:#fff;border-color:#078cf0;box-shadow:0 2px 8px rgba(7,140,240,.25)}

html.hn-light-theme:has(body.halnora-ui){background:#eef3f7!important}
body.halnora-ui.hn-light-theme:not(.driver-body):not(.login-body){background:#eef3f7!important;color:#18384f!important}
body.halnora-ui.hn-light-theme .dispatch-shell{background:linear-gradient(135deg,#f5f8fb 0%,#edf3f7 55%,#f7f9fb 100%)!important}
body.halnora-ui.hn-light-theme .dispatch-main{background:transparent!important;color:#18384f!important}
body.halnora-ui.hn-light-theme .dispatch-sidebar.hn-modern-sidebar{background:linear-gradient(180deg,#ffffff,#f4f8fb)!important;border-right-color:#ccdbe5!important;box-shadow:10px 0 28px rgba(20,55,80,.08)!important;color:#18384f!important}
body.halnora-ui.hn-light-theme .sidebar-nav a{color:#36566d!important}
body.halnora-ui.hn-light-theme .sidebar-nav a:hover{background:#e7f2fa!important;color:#0879c5!important}
body.halnora-ui.hn-light-theme .sidebar-nav a.active{background:#dceffc!important;color:#066fad!important;border-color:#b9dcef!important}
body.halnora-ui.hn-light-theme .sidebar-nav .nav-icon{color:inherit!important}
body.halnora-ui.hn-light-theme .hn-sidebar-footer,body.halnora-ui.hn-light-theme .hn-sidebar-footer small,body.halnora-ui.hn-light-theme .halnora-powered span{color:#607b8e!important}
body.halnora-ui.hn-light-theme .halnora-powered strong{color:#17384f!important}
body.halnora-ui.hn-light-theme .hn-theme-control{background:#edf5fa;border-color:#ccdce7}
body.halnora-ui.hn-light-theme .hn-theme-control>span{color:#607b8e}
body.halnora-ui.hn-light-theme .hn-theme-btn{background:#fff;color:#36566d;border-color:#c7d8e4}
body.halnora-ui.hn-light-theme .hn-theme-btn[aria-pressed="true"]{background:#078cf0;color:#fff;border-color:#078cf0}
body.halnora-ui.hn-light-theme .hn-section-header{background:#fff!important;border-color:#d2e0e9!important;color:#17384f!important;box-shadow:0 4px 16px rgba(20,55,80,.06)}
body.halnora-ui.hn-light-theme .hn-section-business strong,body.halnora-ui.hn-light-theme .hn-section-user span{color:#17384f!important}
body.halnora-ui.hn-light-theme .hn-section-business small{color:#6b8495!important}
body.halnora-ui.hn-light-theme .hn-section-user a{color:#087fc5!important}
body.halnora-ui.hn-light-theme .panel,body.halnora-ui.hn-light-theme dialog{background:#fff!important;color:#17384f!important;border-color:#d3e0e8!important;box-shadow:0 7px 22px rgba(20,55,80,.08)!important}
body.halnora-ui.hn-light-theme .panel-head{border-color:#d9e4eb!important}
body.halnora-ui.hn-light-theme .panel h1,body.halnora-ui.hn-light-theme .panel h2,body.halnora-ui.hn-light-theme .panel h3,body.halnora-ui.hn-light-theme h1,body.halnora-ui.hn-light-theme h2,body.halnora-ui.hn-light-theme h3{color:#17384f!important}
body.halnora-ui.hn-light-theme .muted,body.halnora-ui.hn-light-theme small{color:#617b8e}
body.halnora-ui.hn-light-theme table{color:#29485e!important;background:#fff!important}
body.halnora-ui.hn-light-theme th{background:#edf4f8!important;color:#536f82!important;border-color:#d6e2e9!important}
body.halnora-ui.hn-light-theme td{border-color:#e0e8ed!important;color:#29485e!important}
body.halnora-ui.hn-light-theme tbody tr:hover{background:#f3f8fb!important}
body.halnora-ui.hn-light-theme a{color:#087fc5}
body.halnora-ui.hn-light-theme input:not([type="checkbox"]):not([type="radio"]),body.halnora-ui.hn-light-theme select,body.halnora-ui.hn-light-theme textarea{background:#fff!important;color:#17384f!important;border-color:#aebfca!important}
body.halnora-ui.hn-light-theme .btn{background:#f3f7fa!important;color:#29485e!important;border-color:#bfd0db!important}
body.halnora-ui.hn-light-theme .btn:hover{background:#e8f1f7!important}
body.halnora-ui.hn-light-theme .btn.primary{background:#078cf0!important;color:#fff!important;border-color:#078cf0!important}
body.halnora-ui.hn-light-theme .bulk-assign-bar,body.halnora-ui.hn-light-theme .driver-card,body.halnora-ui.hn-light-theme .platform-status>div,body.halnora-ui.hn-light-theme .hn-summary div{background:#f4f8fb!important;color:#29485e!important;border-color:#d5e2ea!important}
body.halnora-ui.hn-light-theme .hn-summary strong{color:#17384f!important}
body.halnora-ui.hn-light-theme .hn-summary span,body.halnora-ui.hn-light-theme .hn-activity-list time,body.halnora-ui.hn-light-theme .hn-activity-list small{color:#688295!important}
body.halnora-ui.hn-light-theme .hn-activity-list>div{border-color:#dce6ec!important}
body.halnora-ui.hn-light-theme .hn-system b{color:#29485e!important}
body.halnora-ui.hn-light-theme .hn-system small{color:#15845f!important}
body.halnora-ui.hn-light-theme .hn-system i{border-color:#0a8bd7!important;color:#0783ca!important}
body.halnora-ui.hn-light-theme .alert.success{background:#e9f8f1!important;border-color:#a8ddc7!important;color:#176848!important}
body.halnora-ui.hn-light-theme .live-tracking-side p,body.halnora-ui.hn-light-theme .live-tracking-side small,body.halnora-ui.hn-light-theme .driver-list p,body.halnora-ui.hn-light-theme .driver-list small{color:#607b8e!important}
body.halnora-ui.hn-light-theme .driver-list .driver-card,body.halnora-ui.hn-light-theme .driver-list .driver-card strong{color:#17384f!important}
body.halnora-ui.hn-light-theme .ooma-incoming{border-color:#078cf0!important}
@media(max-width:900px){body.halnora-ui.hn-light-theme:not(.driver-body):not(.login-body){background:#eef3f7!important}}


/* v20.85 — light theme readability hardening. Presentation only. */
body.halnora-ui.hn-light-theme .dispatch-main>.panel{color:#29485e!important}
body.halnora-ui.hn-light-theme .dispatch-main>.panel .panel-head p,
body.halnora-ui.hn-light-theme .dispatch-main>.panel .panel-head .muted,
body.halnora-ui.hn-light-theme .dispatch-main>.panel>p.muted{color:#5d7486!important;opacity:1!important}
body.halnora-ui.hn-light-theme .dispatch-main>.panel table,
body.halnora-ui.hn-light-theme .dispatch-main>.panel tbody,
body.halnora-ui.hn-light-theme .dispatch-main>.panel tr,
body.halnora-ui.hn-light-theme .dispatch-main>.panel td{color:#29485e!important}
body.halnora-ui.hn-light-theme .dispatch-main>.panel td strong,
body.halnora-ui.hn-light-theme .dispatch-main>.panel td b{color:#17384f!important;opacity:1!important}
body.halnora-ui.hn-light-theme .dispatch-main>.panel td small{color:#617b8e!important;opacity:1!important}
body.halnora-ui.hn-light-theme .dispatch-main>.panel th{color:#405f75!important;background:#edf4f8!important}
body.halnora-ui.hn-light-theme .dispatch-main>.panel .empty{color:#617b8e!important}
body.halnora-ui.hn-light-theme.driver-totals-ui .money-field span{color:#536f82!important}
body.halnora-ui.hn-light-theme.driver-totals-ui .float-form input{color:#17384f!important;background:#fff!important}
body.halnora-ui.hn-light-theme.driver-totals-ui .float-form .btn{background:#073b5d!important;color:#fff!important;border-color:#073b5d!important}

/* v20.85 — complete light theme readability pass. Presentation only. */
body.halnora-ui.hn-light-theme:not(.driver-body):not(.login-body){background:#eef3f7!important;color:#17384f!important}
body.halnora-ui.hn-light-theme .dispatch-main{background:#eef3f7!important;color:#17384f!important}
body.halnora-ui.hn-light-theme .dispatch-main p,
body.halnora-ui.hn-light-theme .dispatch-main li,
body.halnora-ui.hn-light-theme .dispatch-main dd,
body.halnora-ui.hn-light-theme .dispatch-main dt,
body.halnora-ui.hn-light-theme .dispatch-main span:not(.badge):not(.presence-dot):not(.stat-icon){color:inherit}
body.halnora-ui.hn-light-theme .dispatch-main .panel,
body.halnora-ui.hn-light-theme .dispatch-main .card,
body.halnora-ui.hn-light-theme .dispatch-main .stat,
body.halnora-ui.hn-light-theme .dispatch-main .builder-card,
body.halnora-ui.hn-light-theme .dispatch-main .form-card-row,
body.halnora-ui.hn-light-theme .dispatch-main .calc-card,
body.halnora-ui.hn-light-theme .dispatch-main .tutorial-detail{background:#fff!important;color:#17384f!important;border-color:#d3e0e8!important}
body.halnora-ui.hn-light-theme .dispatch-main .panel p,
body.halnora-ui.hn-light-theme .dispatch-main .panel li,
body.halnora-ui.hn-light-theme .dispatch-main .panel td,
body.halnora-ui.hn-light-theme .dispatch-main .panel label{color:#29485e!important;opacity:1!important}
body.halnora-ui.hn-light-theme .dispatch-main .panel .muted,
body.halnora-ui.hn-light-theme .dispatch-main .panel small,
body.halnora-ui.hn-light-theme .dispatch-main .muted{color:#5d7486!important;opacity:1!important}
body.halnora-ui.hn-light-theme .dispatch-main .panel strong,
body.halnora-ui.hn-light-theme .dispatch-main .panel b,
body.halnora-ui.hn-light-theme .dispatch-main .panel h1,
body.halnora-ui.hn-light-theme .dispatch-main .panel h2,
body.halnora-ui.hn-light-theme .dispatch-main .panel h3,
body.halnora-ui.hn-light-theme .dispatch-main .panel h4{color:#17384f!important;opacity:1!important}
/* Dashboard */
body.halnora-ui.hn-light-theme .hn-top-shell{color:#17384f!important}
body.halnora-ui.hn-light-theme .hn-dashboard-header{background:#fff!important;color:#17384f!important;border-color:#d3e0e8!important;box-shadow:0 7px 22px rgba(20,55,80,.08)!important}
body.halnora-ui.hn-light-theme .hn-dashboard-header h1,
body.halnora-ui.hn-light-theme .hn-dashboard-header h2,
body.halnora-ui.hn-light-theme .hn-dashboard-header strong{color:#17384f!important}
body.halnora-ui.hn-light-theme .hn-dashboard-header p,
body.halnora-ui.hn-light-theme .hn-dashboard-header small,
body.halnora-ui.hn-light-theme .hn-date-row{color:#617b8e!important}
body.halnora-ui.hn-light-theme .hn-search{background:#f5f8fa!important;border-color:#c8d7e0!important;color:#17384f!important}
body.halnora-ui.hn-light-theme .hn-profile{color:#17384f!important}
body.halnora-ui.hn-light-theme .hn-kpis .stat{background:#fff!important;color:#17384f!important;border-color:#d3e0e8!important;box-shadow:0 5px 18px rgba(20,55,80,.06)!important}
body.halnora-ui.hn-light-theme .hn-kpis .stat strong{color:#17384f!important}
body.halnora-ui.hn-light-theme .hn-kpis .stat span,body.halnora-ui.hn-light-theme .hn-kpis .stat small{color:#617b8e!important}
body.halnora-ui.hn-light-theme .hn-panel-title{color:#17384f!important}
body.halnora-ui.hn-light-theme .hn-order-row,
body.halnora-ui.hn-light-theme .hn-shift-row,
body.halnora-ui.hn-light-theme .hn-activity-item{background:#f8fbfd!important;color:#29485e!important;border-color:#dbe6ec!important}
body.halnora-ui.hn-light-theme .hn-order-row strong,
body.halnora-ui.hn-light-theme .hn-shift-row strong,
body.halnora-ui.hn-light-theme .hn-activity-item strong{color:#17384f!important}
body.halnora-ui.hn-light-theme .hn-order-row small,
body.halnora-ui.hn-light-theme .hn-shift-row small,
body.halnora-ui.hn-light-theme .hn-activity-item small,
body.halnora-ui.hn-light-theme .hn-activity-item time,
body.halnora-ui.hn-light-theme .hn-empty-small{color:#617b8e!important}
body.halnora-ui.hn-light-theme .hn-driver-dialog-card{background:#fff!important;color:#17384f!important;border-color:#d3e0e8!important}
body.halnora-ui.hn-light-theme .hn-driver-dialog-card p,
body.halnora-ui.hn-light-theme .hn-driver-dialog-card span,
body.halnora-ui.hn-light-theme .hn-driver-dialog-card label{color:#29485e!important}
/* Tables, lists and operational pages */
body.halnora-ui.hn-light-theme .dispatch-main table{background:#fff!important;color:#29485e!important}
body.halnora-ui.hn-light-theme .dispatch-main thead th{background:#eaf2f7!important;color:#365a72!important;border-color:#d3e0e8!important}
body.halnora-ui.hn-light-theme .dispatch-main tbody td{background:#fff!important;color:#29485e!important;border-color:#e0e8ed!important}
body.halnora-ui.hn-light-theme .dispatch-main tbody tr:nth-child(even) td{background:#fbfdfe!important}
body.halnora-ui.hn-light-theme .dispatch-main tbody tr:hover td{background:#f2f7fa!important}
body.halnora-ui.hn-light-theme .dispatch-main tbody td a{color:#087fc5!important}
/* Forms, filters, modal surfaces */
body.halnora-ui.hn-light-theme .dispatch-main fieldset,
body.halnora-ui.hn-light-theme .dispatch-main .filters,
body.halnora-ui.hn-light-theme .dispatch-main .toolbar,
body.halnora-ui.hn-light-theme .dispatch-main .bulk-assign-bar{background:#f7fafc!important;color:#29485e!important;border-color:#d5e2ea!important}
body.halnora-ui.hn-light-theme .dispatch-main input:not([type="checkbox"]):not([type="radio"]),
body.halnora-ui.hn-light-theme .dispatch-main select,
body.halnora-ui.hn-light-theme .dispatch-main textarea{background:#fff!important;color:#17384f!important;border-color:#aebfca!important}
body.halnora-ui.hn-light-theme .dispatch-main input::placeholder,
body.halnora-ui.hn-light-theme .dispatch-main textarea::placeholder{color:#708797!important;opacity:1!important}
/* Resource/help/integration/settings cards */
body.halnora-ui.hn-light-theme .dispatch-main [class*="card"]:not(.hn-driver-dialog-card),
body.halnora-ui.hn-light-theme .dispatch-main [class*="tile"]{color:#29485e}
body.halnora-ui.hn-light-theme .dispatch-main [class*="card"] h2,
body.halnora-ui.hn-light-theme .dispatch-main [class*="card"] h3,
body.halnora-ui.hn-light-theme .dispatch-main [class*="tile"] h2,
body.halnora-ui.hn-light-theme .dispatch-main [class*="tile"] h3{color:#17384f!important}
body.halnora-ui.hn-light-theme .dispatch-main [class*="card"] p,
body.halnora-ui.hn-light-theme .dispatch-main [class*="card"] small,
body.halnora-ui.hn-light-theme .dispatch-main [class*="tile"] p,
body.halnora-ui.hn-light-theme .dispatch-main [class*="tile"] small{color:#5d7486!important;opacity:1!important}
/* Preserve status/badge contrast rather than forcing generic text colors. */
body.halnora-ui.hn-light-theme .badge{opacity:1!important}
body.halnora-ui.hn-light-theme .alert{opacity:1!important}

/* v20.86 — high-contrast light theme. Presentation only. */
body.halnora-ui.hn-light-theme .dispatch-main,
body.halnora-ui.hn-light-theme .dispatch-main .panel{color:#17384f!important}
body.halnora-ui.hn-light-theme .dispatch-main .panel p:not(.eyebrow),
body.halnora-ui.hn-light-theme .dispatch-main .panel li,
body.halnora-ui.hn-light-theme .dispatch-main .panel label,
body.halnora-ui.hn-light-theme .dispatch-main .panel td,
body.halnora-ui.hn-light-theme .dispatch-main .panel td *:not(.btn):not(.badge):not(input):not(select):not(textarea){color:#29485e!important;opacity:1!important}
body.halnora-ui.hn-light-theme .dispatch-main .panel td strong,
body.halnora-ui.hn-light-theme .dispatch-main .panel td b,
body.halnora-ui.hn-light-theme .dispatch-main .panel h1,
body.halnora-ui.hn-light-theme .dispatch-main .panel h2,
body.halnora-ui.hn-light-theme .dispatch-main .panel h3,
body.halnora-ui.hn-light-theme .dispatch-main .panel h4{color:#102f44!important;opacity:1!important}
body.halnora-ui.hn-light-theme .dispatch-main .panel .muted,
body.halnora-ui.hn-light-theme .dispatch-main .panel small,
body.halnora-ui.hn-light-theme .dispatch-main .panel .note{color:#526f83!important;opacity:1!important}
body.halnora-ui.hn-light-theme .dispatch-main table tbody td,
body.halnora-ui.hn-light-theme .dispatch-main table tbody td strong,
body.halnora-ui.hn-light-theme .dispatch-main table tbody td b{color:#17384f!important;opacity:1!important}
body.halnora-ui.hn-light-theme .dispatch-main table tbody td a{color:#056fae!important;opacity:1!important}
body.halnora-ui.hn-light-theme .dispatch-main table thead th{color:#365a72!important;opacity:1!important}
/* Dashboard settlement gets explicit high-contrast rules because the dark dashboard skin uses !important text colors. */
body.halnora-ui.hn-light-theme .hn-dashboard-settlement tbody td,
body.halnora-ui.hn-light-theme .hn-dashboard-settlement tbody td strong{color:#17384f!important;opacity:1!important}
body.halnora-ui.hn-light-theme .hn-dashboard-settlement .money-field span{background:#f1f6f9!important;color:#365a72!important;border-color:#cbd9e2!important;opacity:1!important}
body.halnora-ui.hn-light-theme .hn-dashboard-settlement .money-field input{background:#fff!important;color:#17384f!important;border-color:#aebfca!important;opacity:1!important}
body.halnora-ui.hn-light-theme .hn-dashboard-settlement .btn:not(.primary){background:#073b5d!important;color:#fff!important;border-color:#073b5d!important}
/* Dashboard cards/activity/order rows. */
body.halnora-ui.hn-light-theme .hn-kpis .stat,
body.halnora-ui.hn-light-theme .hn-kpis .stat *,
body.halnora-ui.hn-light-theme .hn-order-row,
body.halnora-ui.hn-light-theme .hn-order-row *,
body.halnora-ui.hn-light-theme .hn-shift-row,
body.halnora-ui.hn-light-theme .hn-shift-row *,
body.halnora-ui.hn-light-theme .hn-activity-item,
body.halnora-ui.hn-light-theme .hn-activity-item *{opacity:1!important}
body.halnora-ui.hn-light-theme .hn-kpis .stat strong,
body.halnora-ui.hn-light-theme .hn-order-row strong,
body.halnora-ui.hn-light-theme .hn-shift-row strong,
body.halnora-ui.hn-light-theme .hn-activity-item strong{color:#102f44!important}
body.halnora-ui.hn-light-theme .hn-kpis .stat span,
body.halnora-ui.hn-light-theme .hn-kpis .stat small,
body.halnora-ui.hn-light-theme .hn-order-row small,
body.halnora-ui.hn-light-theme .hn-shift-row small,
body.halnora-ui.hn-light-theme .hn-activity-item small,
body.halnora-ui.hn-light-theme .hn-activity-item time{color:#526f83!important}
/* Sidebar footer and account links remain readable in light mode. */
body.halnora-ui.hn-light-theme .dispatch-sidebar a,
body.halnora-ui.hn-light-theme .dispatch-sidebar strong{opacity:1!important}

.invoice-search-counts{display:grid;gap:3px;text-align:right}.invoice-search-counts small{color:var(--muted,#64748b);font-weight:500}

/* v20.89 UI audit: scoped contrast, responsive and print corrections. */
body.halnora-ui .dispatch-shell>.dispatch-sidebar{min-height:0!important;height:100vh!important;height:100dvh!important;overflow-y:auto!important;overflow-x:hidden;overscroll-behavior:contain;padding-bottom:max(16px,env(safe-area-inset-bottom))}
body.halnora-ui .dispatch-sidebar> :not(.sidebar-spacer){flex-shrink:0}
body.halnora-ui .dispatch-sidebar .sidebar-spacer{min-height:12px}
body.halnora-ui .form-grid>*,body.halnora-ui .settings-public-link>*,body.halnora-ui .tracking-actions>*{min-width:0}
body.halnora-ui .form-grid input:not([type="checkbox"]):not([type="radio"]),body.halnora-ui .form-grid select,body.halnora-ui .form-grid textarea{min-width:0;max-width:100%;width:100%}
body.halnora-ui .settings-logo-preview img,body.halnora-ui .pod-image,body.halnora-ui .pod-signature-image{max-width:100%;height:auto}
body.halnora-ui .field-config input[type="text"]{min-width:0;max-width:100%;width:100%}
body.halnora-ui:not(.hn-light-theme) .btn:not(.primary):not(.danger):not(.warning){color:#dcebf5!important;background:#0b2c46!important;border-color:#8fb8d2!important}
body.halnora-ui:not(.hn-light-theme) .btn:not(.primary):not(.danger):not(.warning):hover{color:#fff!important;background:#104268!important}
body.halnora-ui:not(.hn-light-theme) :is(.detail-grid>div:not(.grand),.money-grid>div,.driver-charge-strip>div,.profile-summary-item,.payment-summary span){color:#17384f}

body.halnora-ui:not(.hn-light-theme) :is(.detail-grid>div:not(.grand),.money-grid>div,.driver-charge-strip>div,.profile-summary-item,.payment-summary span) :is(strong,b){color:#17384f!important}
body.halnora-ui.hn-light-theme .dispatch-main .panel :is(.health-card,.health-log){background:#f4f8fb!important;color:#17384f!important;border-color:#d3e0e8!important}
body.halnora-ui.hn-light-theme .dispatch-main .panel .health-card strong.health-ok{color:#176b42!important}
body.halnora-ui.hn-light-theme .dispatch-main .panel .health-card strong.health-warn{color:#855400!important}

body.halnora-ui.login-body .login-card{background:#fff!important;color:#17384f!important}
body.halnora-ui.login-body .login-card .muted{color:#526f83!important}
body.halnora-ui.login-body .login-card .btn.primary{background:#0675c4!important;border-color:#0675c4!important;color:#fff!important}

/* A document is intentionally white in either application theme. */
body.halnora-ui .invoice-document{background:#fff!important;color:#17384f!important}
body.halnora-ui .invoice-document :is(h1,h2,h3,.invoice-doc-number,.invoice-doc-meta,.invoice-doc-footer){color:#17384f!important}
body.halnora-ui .invoice-document .invoice-doc-table,body.halnora-ui .invoice-document .invoice-doc-table td{color:#17384f!important;background:#fff!important}
body.halnora-ui .invoice-document .invoice-doc-table th{color:#365a72!important;background:#edf4f8!important;border-color:#d3e0e8!important}
body.halnora-ui .invoice-document .btn:not(.primary):not(.danger):not(.warning){color:#29485e!important;background:#f3f7fa!important;border-color:#bfd0db!important}
body.halnora-ui .invoice-document .btn:not(.primary):not(.danger):not(.warning):hover{color:#17384f!important;background:#e8f1f7!important}

/* Light-theme controls retain their semantic/action colors, including table links. */
body.halnora-ui.hn-light-theme .btn.primary,
body.halnora-ui.hn-light-theme .dispatch-main table tbody td a.btn.primary{background:#0675c4!important;border-color:#0675c4!important;color:#fff!important}
body.halnora-ui.hn-light-theme .btn.danger,
body.halnora-ui.hn-light-theme .dispatch-main table tbody td a.btn.danger{background:#b23a3a!important;border-color:#b23a3a!important;color:#fff!important}
body.halnora-ui.hn-light-theme .btn.warning,
body.halnora-ui.hn-light-theme .dispatch-main table tbody td a.btn.warning{background:#fff3d9!important;border-color:#e7bf72!important;color:#754600!important}
body.halnora-ui.hn-light-theme .dispatch-main table tbody td a.btn:not(.primary):not(.danger):not(.warning){color:#29485e!important;background:#f3f7fa!important;border-color:#bfd0db!important}
body.halnora-ui.hn-light-theme .dispatch-main .panel table tbody tr td .btn:is(.primary,.danger,.warning) *{color:inherit!important}
body.halnora-ui.hn-light-theme .dispatch-main .panel table tbody tr td .invoice-status.paid{background:#187841!important;color:#fff!important}
body.halnora-ui.hn-light-theme .dispatch-main .panel table tbody tr td .invoice-status.awaiting-payment{background:#0675c4!important;color:#fff!important}
body.halnora-ui.hn-light-theme .dispatch-main .panel table tbody tr td .invoice-status.overdue{background:#b23a3a!important;color:#fff!important}
body.halnora-ui.hn-light-theme .btn.primary:hover{background:#0564a8!important}
body.halnora-ui.hn-light-theme .btn.danger:hover{background:#962e2e!important}
body.halnora-ui.hn-light-theme .btn.warning:hover{background:#ffebc2!important}
body.halnora-ui.hn-light-theme .hn-top-shell{background:#eef3f7!important}
body.halnora-ui.hn-light-theme .hn-panel-title span,
body.halnora-ui.hn-light-theme .hn-order-row span{color:#29485e!important}
body.halnora-ui.hn-light-theme .hn-kpis .stat .stat-icon{background:#0675c4!important;color:#fff!important}
body.halnora-ui :is(.hn-driver-dialog,.hn-driver-assign-dialog) .icon-btn{color:inherit}
body.halnora-ui.hn-light-theme .hn-driver-assign-dialog .hn-driver-avatar{color:#fff!important}
body.halnora-ui.hn-light-theme .hn-driver-assign-dialog .hn-driver-choice{color:#17384f!important;background:transparent}
body.halnora-ui.hn-light-theme .hn-driver-assign-dialog .hn-driver-choice:is(:hover,.current){background:#e7f2fa!important;border-color:#8cbcdc!important}
body.halnora-ui.hn-light-theme .hn-driver-assign-dialog :is(.hn-driver-choice-info small,.hn-driver-assign-head p,.hn-no-active-drivers){color:#526f83!important}
body.halnora-ui.hn-light-theme .hn-driver-assign-dialog .hn-driver-assign-head small{color:#056fae!important}
body.halnora-ui.hn-light-theme .hn-driver-detail-grid>div{background:#f4f8fb!important;color:#17384f!important;border-color:#d3e0e8!important}
body.halnora-ui.hn-light-theme .hn-driver-detail-grid :is(span,strong){color:#29485e!important}
body.halnora-ui.hn-light-theme .hn-driver-dialog-head small{color:#056fae!important}
body.halnora-ui.hn-light-theme :is(.hn-driver-dialog-head,.hn-driver-assign-head,.hn-driver-assign-foot){border-color:#d3e0e8!important}

/* Height is content-driven so the online-driver details can actually expand. */
@media screen and (min-width:901px){
  .halnora-ui .hn-right-stack{height:auto!important;grid-template-rows:auto auto!important}
  .halnora-ui .hn-shift{height:auto!important;min-height:102px!important;overflow:visible!important}
  .halnora-ui .hn-shift-list{max-height:300px;overflow-y:auto;overscroll-behavior:contain}
  .halnora-ui .hn-quick{height:auto!important;min-height:164px;overflow:visible!important}
}
@media screen and (min-width:901px) and (max-width:1300px){
  .halnora-ui .hn-command-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .halnora-ui .hn-right-stack{grid-column:1/-1!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:auto!important}
  .halnora-ui .hn-lower-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .halnora-ui .hn-lower-grid>:last-child{grid-column:1/-1!important}
}
@media screen and (min-width:901px) and (max-width:1100px){
  .halnora-ui .hn-command-grid{grid-template-columns:minmax(0,1fr)!important}
}
@media screen and (max-width:900px){
  body.halnora-ui:not(.hn-light-theme) .dispatch-main>.hero :is(h1,h2){color:#f2f8fc!important}
  body.halnora-ui:not(.hn-light-theme) .dispatch-main>.hero>div>p:not(.eyebrow){color:#9fb9cb!important}
  .halnora-ui .hn-command-grid,.halnora-ui .hn-lower-grid,.halnora-ui .hn-right-stack{min-width:0;grid-template-columns:minmax(0,1fr)!important}
  .halnora-ui .hn-right-stack,.halnora-ui .hn-lower-grid>:last-child{grid-column:auto!important}
  body.halnora-ui .dispatch-main>.hero,body.halnora-ui .invoice-actions,body.halnora-ui .hn-driver-dialog-actions{flex-wrap:wrap}
}
@media screen and (max-width:620px){
  body.halnora-ui.invoice-document-body{padding:12px}
  body.halnora-ui .invoice-doc-actions{flex-wrap:wrap}
  body.halnora-ui .invoice-doc-table{display:block;max-width:100%;overflow-x:auto}
  body.halnora-ui .invoice-doc-table :is(th,td){min-width:65px;overflow-wrap:anywhere}
  body.halnora-ui .invoice-doc-table :is(th,td):nth-child(2){min-width:130px}
  body.halnora-ui .invoice-doc-meta,body.halnora-ui .invoice-doc-footer{overflow-wrap:anywhere}
  body.halnora-ui .builder-card{min-width:0;overflow-x:auto}
  body.halnora-ui .hero .btn{white-space:normal}
}

/* These final print rules must beat both dark/light shell overrides. */
@media print{
  html:has(body.halnora-ui),body.halnora-ui:not(.driver-body):not(.login-body),body.halnora-ui.hn-light-theme:not(.driver-body):not(.login-body){background:#fff!important;color:#17384f!important;min-height:0!important;overflow:visible!important}
  body.halnora-ui .dispatch-shell,body.halnora-ui.hn-light-theme .dispatch-shell{display:block!important;background:#fff!important;min-height:0!important;height:auto!important}
  body.halnora-ui .dispatch-shell>.dispatch-main,body.halnora-ui.hn-light-theme .dispatch-shell>.dispatch-main{display:block!important;grid-column:auto!important;margin:0!important;padding:0!important;background:#fff!important;color:#17384f!important;min-height:0!important;width:100%!important;overflow:visible!important}
  body.halnora-ui .dispatch-main .panel,body.halnora-ui.hn-light-theme .dispatch-main .panel{background:#fff!important;color:#17384f!important;box-shadow:none!important;border-color:#ccd8e0!important;height:auto!important;overflow:visible!important}
  body.halnora-ui .dispatch-main .panel :is(h1,h2,h3,h4,p,small,strong,b,li,label,td,th,span,time,a),body.halnora-ui.hn-light-theme .dispatch-main .panel :is(h1,h2,h3,h4,p,small,strong,b,li,label,td,th,span,time,a){color:#17384f!important}
  body.halnora-ui .dispatch-main .panel :is(td,th),body.halnora-ui.hn-light-theme .dispatch-main .panel :is(td,th){background:#fff!important}
  body.halnora-ui .dispatch-sidebar,body.halnora-ui .mobile-dispatch-bar,body.halnora-ui .sidebar-backdrop,body.halnora-ui .hn-section-user,body.halnora-ui .btn,body.halnora-ui dialog{display:none!important}
  body.halnora-ui .invoice-document{max-width:none!important;padding:0!important;box-shadow:none!important;background:#fff!important;color:#17384f!important}
  body.halnora-ui .invoice-doc-table{display:table!important;width:100%!important;min-width:0!important;font-size:10pt;overflow:visible!important}
  body.halnora-ui .invoice-doc-table :is(th,td){min-width:0!important;overflow-wrap:anywhere}
  body.halnora-ui .invoice-document :is(header,.invoice-doc-meta,.invoice-doc-footer){break-inside:avoid}
  body.halnora-ui .invoice-document .invoice-status{background:#fff!important;color:#17384f!important;border:1px solid #ccd8e0!important}
  body.halnora-ui.hn-light-theme .dispatch-main .panel table tbody tr td .invoice-status:is(.paid,.awaiting-payment,.overdue){background:#fff!important;color:#17384f!important;border:1px solid #ccd8e0!important}
  body.halnora-ui.invoice-document-body{padding:0!important}
}

/* Supplied HalNora artwork: preserve its aspect ratio and original colors. */
.hn-brand-logo,.hn-login-logo,.hn-foundation-logo{object-fit:contain;max-width:100%;height:auto}
.hn-brand-logo{display:block;width:168px;max-height:84px}
.hn-brand-logo-light{display:none}
.hn-brand-logo-dark{display:block}
.hn-light-theme .hn-brand-logo-light{display:block}
.hn-light-theme .hn-brand-logo-dark{display:none}
body.halnora-ui .sidebar-brand.hn-brand-lockup{height:92px!important;min-height:92px;align-items:center}
body.halnora-ui .sidebar-logo-link{min-width:0;max-width:100%;justify-content:center}
body.halnora-ui .sidebar-brand img.hn-brand-logo{width:168px!important;max-width:100%!important;height:auto!important;max-height:80px!important;object-fit:contain!important}
body.halnora-ui .login-card .brand-center{flex-direction:column;gap:12px;text-align:center}
body.halnora-ui .login-card .hn-login-logo{display:block;width:240px;max-height:150px;object-fit:contain}
body.halnora-ui .hn-brand-mark{object-fit:contain}
.hn-platform-fallback{display:flex;align-items:center;gap:10px;min-width:0}
.hn-platform-fallback .hn-brand-logo{width:170px;max-height:70px}
@media(max-width:620px){.hn-brand-logo{max-width:160px}.hn-platform-fallback{flex-wrap:wrap}.hn-login-logo{max-width:100%}}
@media print{.hn-brand-logo-dark{display:none!important}.hn-brand-logo-light{display:block!important}.hn-brand-logo,.hn-login-logo{max-width:180px;max-height:80px}}
