@charset "UTF-8";
:root{color-scheme:light;--ink:#233139;--muted:#748087;--canvas:#f5f6f3;--line:#e2e6e1;--white:#fff;--amber:#efc15e;--amber-ink:#7b571d;--red:#b74731;--red-soft:#fdf0e9;--blue:#426f8d;--green:#3c7a66;--ease:cubic-bezier(.22,.8,.22,1);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:14px}
*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible{outline:3px solid #c29435;outline-offset:4px}a{color:inherit}svg{width:20px;height:20px;display:block;flex-shrink:0;stroke-width:1.7}[data-icon]{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}button{border:0;background:none}button,a{touch-action:manipulation}button{transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}button:active:not(:disabled){transform:translateY(1px)}.app-shell{display:flex;min-height:100vh}.sidebar{background:#202c32;color:#a9b5b9;width:224px;flex-shrink:0;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;padding:34px 18px 20px;z-index:10}.brand{display:flex;align-items:center;text-decoration:none;gap:11px;color:#f5f6f3;padding:0 10px;font-size:30px;font-weight:750;letter-spacing:-1.5px;line-height:1}.brand-mark{background:var(--amber);color:#263337;width:37px;height:39px;border-radius:10px}.brand-mark svg{width:27px;height:27px;stroke-width:2}.brand-dot{color:var(--amber)}.brand small{display:block;color:#a2adb2;font-size:8px;letter-spacing:1.5px;margin-top:9px;font-weight:600}.workspace{border:1px solid #ffffff17;display:flex;align-items:center;gap:10px;padding:13px 10px;border-radius:10px;margin:38px 0 30px}.workspace-icon{color:#c2cbcf}.workspace strong{display:block;font-size:12px;color:#edf0ef;font-weight:600}.workspace div>span{display:block;font-size:11px;margin-top:5px}.workspace-dot{width:6px;height:6px;background:#84a792;border-radius:100%;margin-left:auto}.nav-caption{font-size:9px;letter-spacing:1.3px;font-weight:700;padding:0 12px;margin-bottom:14px;color:#91a0a7}.nav-item{width:100%;display:flex;align-items:center;gap:10px;text-align:left;font-size:12px;font-weight:550;color:#b9c3c6;padding:13px 12px;border-radius:8px;margin-bottom:6px;min-height:44px;white-space:nowrap}.nav-item svg{width:17px;height:17px}.nav-item:hover{background:#ffffff08}.nav-item.active{color:#f3cd7b;background:#f6ca6720}.nav-count{font-size:10px;padding:3px 6px;background:#e9ba5426;color:#f3cd7b;border-radius:5px;margin-left:auto}.sidebar-bottom{margin-top:auto;padding-top:40px}.preview-note{padding:18px 12px 21px;background:#ffffff05;border:1px solid #ffffff0d;border-radius:12px}.preview-note>span{color:#efc779;margin-bottom:12px}.preview-note strong{display:block;color:#dae0df;font-size:12px;font-weight:550}.preview-note p{font-size:11px;line-height:1.75;color:#9eacb1;margin:9px 0 15px}.preview-note button{display:flex;align-items:center;gap:18px;padding:0;color:#e4c682;font-size:11px}.preview-note button svg{width:15px;height:15px}.employee-card{display:flex;align-items:center;gap:10px;width:100%;text-align:left;margin-top:21px;padding:14px 4px 0;border-top:1px solid #ffffff13;color:#dce3e4}.avatar{width:34px;height:34px;background:#ffffff0d;border:1px solid #ffffff17;border-radius:9px}.employee-card strong{font-size:12px;font-weight:550}.employee-card small{display:block;color:#94a4ab;font-size:10px;margin-top:4px}.employee-card>span:last-child{margin-left:auto;color:#8e9ba0}.employee-card>span:last-child svg{width:15px}.main-shell{margin-left:224px;width:calc(100% - 224px)}.topbar{height:72px;background:#fafbf8;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px;gap:10px}.breadcrumbs{display:flex;align-items:center;gap:12px;font-size:11px;color:#7d878b}.breadcrumbs>span:first-child{color:#8a9697}.breadcrumbs strong{font-weight:550;color:#48565d}.crumb-divider{color:#b9c0bd}.topbar-end{display:flex;gap:22px;align-items:center;font-size:11px}.clock{color:#738080;font-variant-numeric:tabular-nums}.demo-indicator{display:flex;gap:7px;align-items:center;color:#67746c}.demo-indicator i{width:6px;height:6px;border-radius:50%;background:#7b967f}.mobile-employee{display:none!important}main{padding:24px 34px 20px;max-width:1800px;margin:auto}.demo-banner{background:#eeefe6;border:1px solid #e2e5d7;color:#656951;display:flex;gap:9px;align-items:center;padding:9px 13px;border-radius:8px;font-size:11px;line-height:1.6}.demo-banner>span:first-child svg{width:16px;height:16px}.demo-banner strong{font-weight:650}.demo-banner button{margin-left:auto;white-space:nowrap;display:flex;align-items:center;gap:6px;font-size:11px;color:#636844;padding:3px}.demo-banner button svg{width:13px;height:13px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:32px 0 29px}.eyebrow{font-size:9px;letter-spacing:1.8px;color:#798777;font-weight:700;margin-bottom:10px}h1{font-size:32px;line-height:1.2;font-weight:660;letter-spacing:-1.15px;margin:0;display:flex;align-items:center;gap:12px}.title-dot{width:7px;height:7px;border-radius:50%;background:var(--amber);margin-top:6px}.page-heading p{color:#7e888b;font-size:12px;margin:10px 0 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:11px 16px;border:1px solid var(--line);background:#fff;border-radius:9px;font-size:12px;font-weight:620;white-space:nowrap;text-decoration:none}.button:hover{border-color:#b9c5bd;background:#fafbf8}.button.primary{background:var(--amber);border-color:var(--amber);color:#343528;box-shadow:0 3px 6px #9b7b1710}.button.primary:hover{background:#f5cd74;box-shadow:0 4px 14px #9b7b1723}.button.dark{background:var(--ink);color:#fff;border-color:var(--ink)}.button.dark:hover{background:#364b55}.button.success{background:#e4f0e8;color:#306751;border-color:#cddfd4}.button.danger{background:#fff5f0;border-color:#eed9cf;color:var(--red)}.button.urgent-active{border-color:#d2836a;background:#fcece2;color:#ae452d}.button svg{width:17px;height:17px}kbd{font-family:inherit;font-size:10px;border:1px solid #28352a20;line-height:18px;min-width:18px;text-align:center;border-radius:4px;font-weight:500;opacity:.6}.add-button kbd{margin-left:13px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:31px}.metric{background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px 18px;text-align:left;position:relative;overflow:hidden}.metric:hover{border-color:#c9d0c6;transform:translateY(-2px);box-shadow:0 5px 18px #1d352a05}.metric-label{display:flex;align-items:center;justify-content:space-between;gap:5px;font-size:11px;color:#657478;font-weight:550}.metric-icon{width:29px;height:29px;border-radius:8px;background:#f5f2e9;color:#a08747}.metric-icon svg{width:17px;height:17px}.metric-icon.blue{background:#edf2f6;color:var(--blue)}.metric-icon.red{background:#faeee8;color:var(--red)}.metric-icon.green{background:#edf4ef;color:var(--green)}.metric-value{display:flex;align-items:baseline;gap:9px;margin:8px 0 15px}.metric-value>strong{font-size:31px;font-weight:600;letter-spacing:-1.1px;font-variant-numeric:tabular-nums;line-height:1}.metric-value>span:not(.mini-gates){font-size:10px;color:#919a98}.metric-foot{display:flex;align-items:center;gap:6px;font-size:10px;color:#828b89}.metric-foot svg{width:13px;height:13px}.priority-foot{color:#a86343}.tiny-dot{display:inline-block;width:5px;height:5px;border-radius:50%}.amber{color:#997328}.tiny-dot.amber{background:#c29d50}.blue{color:var(--blue)}.tiny-dot.blue{background:#709bb1}.green{color:var(--green)}.mini-gates{display:flex;gap:3px;margin-left:auto;align-self:center;opacity:.8}.mini-gates i{height:20px;width:5px;border-radius:2px;background:#e7edf0}.mini-gates i.on{background:#91aebb}.board-toolbar{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.board-title{display:flex;align-items:center;gap:9px;margin-right:auto}.board-title h2{font-size:18px;margin:0;font-weight:650;letter-spacing:-.35px}.board-title>span{background:#e8ece5;padding:4px 7px;min-width:25px;text-align:center;border-radius:6px;font-size:10px;color:#6e7c70}.search-box{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:0 11px;height:39px;min-width:280px;flex:0 1 330px}.search-box>span{color:#8f9a97}.search-box svg{width:16px;height:16px}.search-box input{border:0;background:transparent;outline:none;width:100%;min-width:0;font-size:11px;color:var(--ink)}.search-box input::placeholder{color:#98a09c}.search-box:focus-within{outline:2px solid #ddbd72;outline-offset:1px}.search-box kbd{border-color:#d5dcd3;color:#96a095}.filters{display:flex;gap:3px;background:#eceee9;border-radius:8px;padding:3px}.filters button{display:flex;align-items:center;gap:5px;padding:8px 10px;border-radius:6px;font-size:10px;color:#7c8680;white-space:nowrap}.filters button svg{width:13px;height:13px}.filters button.selected{background:#fff;color:#374b40;box-shadow:0 1px 3px #14231110}.board-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:16px 1px 20px;font-size:10px;color:#8a938c}.board-meta>span{display:flex;align-items:center;gap:6px}.board-meta svg{width:13px;height:13px}.board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.column{min-width:0}.column-heading{display:flex;align-items:center;gap:8px}.column-icon{width:27px;height:27px;background:#ebece4;border-radius:7px}.column-icon svg{width:16px;height:16px}.column-icon.blue{background:#e6edf0}.column-icon.green{background:#e4ece4}.column-heading h3{font-weight:650;font-size:13px;margin:0}.column-count{font-size:10px;color:#7c887d;background:#e6ebe4;padding:3px 7px;border-radius:5px;min-width:23px;text-align:center}.column-description{font-size:10px;color:#8b958d;margin:9px 0 16px}.small-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid #dbe1d6;border-radius:7px;color:#7a8a7e;margin-left:auto}.small-icon:hover{background:#e7ece1}.small-icon svg{width:15px;height:15px}.column-live{width:6px;height:6px;border-radius:50%;background:#80a0af;box-shadow:0 0 0 4px #7395a010;margin-left:auto;margin-right:7px}.archive-icon{color:#7a9482;margin-left:auto;margin-right:4px}.archive-icon svg{width:17px;height:17px}.card-list{display:flex;flex-direction:column;gap:12px;min-height:120px}.trip-card{background:#fff;border:1px solid #e1e6df;border-radius:12px;box-shadow:0 2px 3px #2d443105;position:relative;overflow:hidden;transition:border-color .2s,box-shadow .2s,transform .2s;view-transition-class:trip;isolation:isolate}.trip-card:hover{border-color:#bbc9bb;box-shadow:0 6px 20px #2d44310c;transform:translateY(-2px)}.card-open{width:100%;text-align:left;padding:17px 16px 14px;display:block;position:relative}.card-head{display:flex;gap:7px;align-items:center;margin-bottom:13px}.queue-position{font-size:9px;color:#869080;border:1px solid #e4e8dd;border-radius:4px;padding:2px 4px;line-height:14px;min-width:20px;text-align:center;font-variant-numeric:tabular-nums}.plate{font-family:"Consolas","SFMono-Regular",monospace;font-size:18px;letter-spacing:-.5px;font-weight:600;line-height:1.3;color:#283a3b;overflow-wrap:anywhere;min-width:0}.card-arrow{margin-left:auto;color:#a9b2a8}.card-arrow svg{width:15px;height:15px}.route-line{display:flex;align-items:center;gap:6px;color:#737f78;font-size:11px;line-height:1.4;margin-bottom:12px}.route-line>span:first-child{color:#a0aba0}.route-line svg{width:13px;height:13px}.route-line .route-destination{color:#a1a99e}.route-line .route-arrow{color:#b2baae;flex-shrink:0}.card-times{display:flex;align-items:center;justify-content:space-between;gap:7px;font-size:10px;color:#8c978c}.arrival-time{display:flex;gap:5px;align-items:center}.arrival-time svg{width:12px;height:12px}.arrival-time strong{color:#5c6f61;font-weight:600;margin-right:3px}.elapsed{color:#8b947f;font-variant-numeric:tabular-nums;white-space:nowrap}.card-footer{display:flex;align-items:center;gap:8px;padding:9px 15px;border-top:1px solid #edf0e9;background:#fbfcf9;min-height:38px}.card-phone{display:inline-flex;align-items:center;gap:5px;text-decoration:none;font-size:10px;color:#798774;min-height:22px}.card-phone:hover{color:#344b35;text-decoration:underline}.card-phone svg{width:12px;height:12px}.card-phone.no-phone{color:#a0a79a}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 6px;border-radius:5px;font-size:9px;line-height:1.2;font-weight:600;white-space:nowrap;margin-left:auto}.status-badge svg{width:11px;height:11px}.status-badge.no-answer{background:#f7ece8;color:#a26850}.status-badge.priority{background:#f6dcd0;color:#ac482e}.status-badge.gate{background:#eaf0f5;color:#527991}.status-badge.done{background:#e9f1e8;color:#5c8062}.status-badge.waiting{color:#83927b;background:#eff2e9}.trip-card.is-urgent{border-color:#e3a88e;background:#fffaf6;box-shadow:0 2px 4px #a7472510}.trip-card.is-urgent:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#c85c38;z-index:2}.trip-card.is-urgent .card-footer{background:#fcf1e8;border-top-color:#f2ddcf}.urgent-ribbon{display:flex;align-items:center;gap:5px;color:#a4482f;font-size:9px;font-weight:700;letter-spacing:.7px;margin-bottom:12px}.urgent-ribbon .bolt-emblem{position:relative;background:#f5dacb;border:1px solid #edc5b0;border-radius:5px;width:19px;height:19px}.urgent-ribbon .bolt-emblem svg{width:13px;height:13px;fill:#b6533620}.urgent-ribbon .urgency-trails{display:flex;gap:3px;margin-left:auto;opacity:.4}.urgency-trails i{display:block;width:3px;height:9px;transform:skew(-22deg);background:#c66f4e}.urgent-ribbon .urgency-trails i:nth-child(2){opacity:.65}.urgent-ribbon .urgency-trails i:nth-child(3){opacity:.3}.trip-card.celebrate-urgent{animation:urgentReveal .65s var(--ease)}.trip-card.celebrate-urgent .bolt-emblem:after{content:"";position:absolute;inset:-3px;border:1px solid #cf7651;border-radius:8px;animation:beacon .8s ease-out 3;pointer-events:none}.trip-card.just-changed{animation:cardChanged .7s var(--ease)}.gate-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.gate-number{display:flex;flex-direction:column;align-items:center;background:#edf2f5;border:1px solid #e0e8ec;border-radius:8px;min-width:45px;padding:6px 8px;color:#4d758b;flex-shrink:0}.gate-number small{font-size:7px;letter-spacing:1px;font-weight:600;margin-bottom:2px}.gate-number strong{font-size:20px;font-weight:600;line-height:1.2;max-width:70px;overflow-wrap:anywhere}.gate-heading .card-head{margin-bottom:10px;flex-wrap:wrap}.gate-heading .plate{font-size:17px}.gate-heading .route-line{margin-bottom:14px}.gate-process{display:flex;align-items:center;gap:6px;margin-top:12px;font-size:10px;color:#7893a0}.process-bars{display:flex;align-items:center;gap:2px;height:10px}.process-bars i{display:block;width:3px;background:#80a0ad;border-radius:1px;height:5px}.process-bars i:nth-child(2){height:9px}.process-bars i:nth-child(3){height:7px}.trip-card:hover .process-bars i{animation:unloading 1.1s ease-in-out 2}.trip-card:hover .process-bars i:nth-child(2){animation-delay:.15s}.trip-card:hover .process-bars i:nth-child(3){animation-delay:.3s}.completed-line{display:flex;align-items:center;gap:6px;padding-top:11px;color:#6e8d75;font-size:10px}.completed-line svg{width:13px;height:13px}.trip-card.is-unloaded .card-head{margin-bottom:11px}.trip-card.is-unloaded .plate{color:#536d5b}.trip-card.is-unloaded{background:#fdfefd}.done-emblem{display:flex;align-items:center;justify-content:center;background:#e7f0e6;color:#67926a;border-radius:50%;width:23px;height:23px;margin-left:auto}.done-emblem svg{width:13px;height:13px}.empty-state{border:1px dashed #d7dfd1;border-radius:12px;padding:32px 16px;text-align:center;color:#889580;font-size:11px;line-height:1.8}.empty-state>span{display:inline-flex;margin-bottom:9px;color:#a3b299}.empty-state strong{display:block;color:#6f8065;font-size:12px;font-weight:550}.page-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:32px;padding-top:19px;border-top:1px solid var(--line);font-size:9px;color:#98a090}.page-footer>span{display:flex;align-items:center;gap:6px}.page-footer svg{width:12px;height:12px}.footer-version{padding-left:7px;border-left:1px solid #d9dfd0;color:#a1a997}.mobile-tabs{display:none}
/* Panels, forms and timeline */
dialog{border:0;padding:0;color:var(--ink);background:#fafbf8;box-shadow:-15px 0 65px #14271b20;max-height:100dvh;max-width:100vw;overflow:hidden}dialog::backdrop{background:#16241e55;backdrop-filter:blur(3px)}dialog[open]{animation:panelIn .32s var(--ease)}dialog.sheet{margin:0 0 0 auto;width:480px;height:100dvh;border-left:1px solid #ffffff60}dialog.modal{width:470px;border:1px solid #e8ecde;border-radius:17px;margin:auto;max-height:calc(100dvh - 36px);box-shadow:0 20px 80px #14271b30;animation:modalIn .24s var(--ease)}#dialog-content{height:100%;max-height:inherit;display:flex;flex-direction:column;overflow:auto;overscroll-behavior:contain}.dialog-header{padding:24px 26px 20px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;gap:10px;position:sticky;top:0;background:#fafbf8;z-index:2}.dialog-header .eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:8px}.dialog-header h2{margin:0;font-size:24px;font-weight:620;letter-spacing:-.7px;overflow-wrap:anywhere}.dialog-header .subtitle{font-size:11px;line-height:1.6;color:#859079;margin:6px 0 0}.dialog-header .icon-button{margin-left:auto}.icon-button{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:#eef1e8;border:1px solid #e0e7d9;border-radius:9px;color:#75856b;flex-shrink:0}.icon-button svg{width:17px;height:17px}.icon-button:hover{background:#e1e8d9}.dialog-body{padding:23px 26px 28px}.dialog-body h3{font-size:12px;margin:25px 0 15px;font-weight:650}.dialog-body p{font-size:12px;color:#788474;line-height:1.8}.status-strip{display:flex;align-items:center;gap:7px;padding:11px 13px;border-radius:9px;font-size:11px;background:#f0f1e7;color:#7d804c;margin-bottom:23px}.status-strip svg{width:16px;height:16px}.status-strip.gate{color:#4e7990;background:#e9eff3}.status-strip.unloaded{color:#5c865f;background:#e8f0e5}.status-strip .sub{margin-left:auto;opacity:.8;font-size:10px}.priority-callout{display:flex;gap:12px;align-items:center;background:#fbede3;color:#a64a30;padding:14px;border:1px solid #f0d3be;border-radius:10px;margin-bottom:20px}.priority-callout .callout-icon{width:35px;height:35px;display:flex;align-items:center;justify-content:center;border-radius:9px;background:#f5d8c7;flex-shrink:0}.priority-callout strong{font-size:12px;font-weight:650}.priority-callout p{margin:4px 0 0;color:#b0795f;font-size:10px;line-height:1.6}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 16px}.detail-label{font-size:10px;color:#8b9484;margin-bottom:7px;display:flex;align-items:center;gap:5px}.detail-label svg{width:12px;height:12px}.detail-value{font-size:12px;line-height:1.5;color:#455641;font-weight:550;overflow-wrap:anywhere}.detail-value a{color:#476845;text-underline-offset:3px}.dialog-section{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.action-grid>.full{grid-column:1/-1}.action-grid .button{min-height:46px;padding:10px;font-size:11px}.secondary-actions{display:flex;gap:8px;margin-top:12px}.secondary-actions .button{flex:1;font-size:11px}.delete-link{display:flex;align-items:center;gap:6px;color:#a56c58;margin-top:21px;padding:8px 0;font-size:10px}.delete-link svg{width:14px;height:14px}.archive-note{display:flex;align-items:flex-start;gap:8px;margin-top:20px;font-size:10px;color:#88917e;line-height:1.7}.archive-note svg{width:15px;height:15px;margin-top:2px}.route-journey{display:flex;align-items:center;gap:4px;margin:23px 0}.journey-step{flex:1;font-size:9px;color:#a2ab98;text-align:center}.journey-step>span{width:24px;height:24px;border-radius:50%;background:#e9eddf;display:flex;margin:0 auto 6px;align-items:center;justify-content:center}.journey-step svg{width:13px;height:13px}.journey-step.done>span{color:#557e55;background:#e2ecda}.journey-step.active{color:#506449}.journey-step.active>span{color:#456e47;background:#dcebd2;box-shadow:0 0 0 3px #f1f5e9}.journey-line{height:1px;background:#dce4d1;flex:.4;margin-top:-18px}.timeline{margin-top:8px}.timeline-item{position:relative;padding:0 0 22px 28px;border-left:1px solid #dde5d5;margin-left:8px;font-size:11px}.timeline-item:last-child{padding-bottom:2px;border-left-color:transparent}.timeline-dot{position:absolute;top:0;left:-10px;width:19px;height:19px;display:flex;align-items:center;justify-content:center;color:#728968;background:#edf2e5;border:3px solid #fafbf8;border-radius:50%}.timeline-dot svg{width:11px;height:11px}.timeline-item.urgent .timeline-dot{color:#ba593b;background:#f8e5d9}.timeline-item .event-time{font-size:9px;color:#949e88;font-variant-numeric:tabular-nums;margin-bottom:7px;display:flex;justify-content:space-between;gap:5px}.timeline-item .event-title{font-size:11px;color:#516349;line-height:1.5;font-weight:550;overflow-wrap:anywhere}.event-meta{font-size:9px;color:#95a08d;margin-top:5px}.event-details{display:block;font-size:10px;color:#899781;line-height:1.7;margin-top:6px}.timeline-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.timeline-title h3{margin:0}.text-button{font-size:10px;color:#6c7e5e;text-decoration:underline;text-underline-offset:4px;padding:5px 0}.field{display:block;margin-bottom:17px}.field>span{display:flex;justify-content:space-between;margin-bottom:8px;font-size:11px;font-weight:600;color:#526447}.field small{font-size:10px;font-weight:400;color:#98a08f}.field input{width:100%;height:44px;background:#fff;border:1px solid #dbe3d1;border-radius:8px;padding:11px 12px;color:#344b2f;outline:none;min-width:0;font-size:13px}.field input::placeholder{color:#a1aa95}.field input:focus{border-color:#b39555;box-shadow:0 0 0 3px #dfc68c25}.field input[aria-invalid="true"]{border-color:#c37e65}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-hint{font-size:10px;color:#8e9981;line-height:1.7;margin:8px 0 20px}.form-error{font-size:11px;color:var(--red);line-height:1.6;margin:10px 0 16px}.form-error:empty{display:none}.form-actions{display:flex;gap:10px;margin-top:23px}.form-actions .button{flex:1}.form-actions.arrival-actions{display:grid;grid-template-columns:1fr 1fr}.form-actions.arrival-actions .button{width:100%}.form-actions.arrival-actions .full{grid-column:1/-1}.gate-picker{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0 22px}.gate-choice{min-width:45px;height:42px;padding:0 9px;border:1px solid #dce4d6;border-radius:8px;background:#fff;position:relative;font-size:12px;color:#718168}.gate-choice.selected{border-color:#799975;background:#e8f1de;color:#416439}.gate-choice.busy:after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:#c1a267;bottom:5px;left:calc(50% - 2px)}.gate-help{font-size:10px;line-height:1.7;color:#8b957e}.duplicate-item{padding:12px;border:1px solid #e2e7d9;border-radius:9px;margin:9px 0;font-size:11px;color:#788b69;background:#fff}.duplicate-item strong{display:block;color:#50683f;margin-bottom:6px}.notice{background:#f7efde;border:1px solid #ebdcbc;border-radius:10px;padding:14px;color:#8b733f;font-size:12px;line-height:1.7;margin-bottom:20px}.role-badge{color:#769264;font-size:10px;background:#e8f1dd;padding:5px 8px;border-radius:6px;display:inline-block}.guide-list{padding-left:19px;font-size:12px;line-height:1.9;color:#71865e}.guide-list li{margin-bottom:14px}.guide-list strong{color:#4c6a3e}.journal-filter{margin-bottom:22px}.journal-filter input{width:100%;border:1px solid #dce5cf;background:#fff;border-radius:8px;padding:11px;font-size:12px;outline:none}.journal-filter input:focus{border-color:#b39555}.history-tabs{display:flex;gap:6px;margin:0 0 24px}.history-tabs button{border:1px solid #dce5cf;border-radius:7px;padding:8px 12px;font-size:11px;color:#7d8d6a}.history-tabs button.selected{background:#e7efde;border-color:#cbdac0;color:#4e6b3c}.toast-stack{position:fixed;bottom:24px;left:calc(50% + 112px);transform:translateX(-50%);z-index:100;pointer-events:none;width:max-content;max-width:calc(100vw - 32px)}.toast{display:flex;align-items:center;gap:10px;border-radius:11px;background:#263a32;color:#f0f5e9;font-size:12px;padding:13px 19px;box-shadow:0 9px 35px #24382630;animation:toastIn .3s var(--ease);margin-top:8px;line-height:1.5;overflow-wrap:anywhere}.toast svg{width:19px;height:19px;color:#b5d09d}.toast.urgent{background:#8d452e}.toast.urgent svg{color:#f6c98b}.toast.bad{background:#843e35}.toast.out{animation:toastOut .25s forwards}.storage-warning{color:#b0472f;font-size:12px}.sheet .toast{max-width:90vw}
@keyframes panelIn{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:translateX(0)}}@keyframes modalIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toastIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes toastOut{to{opacity:0;transform:translateY(8px)}}@keyframes beacon{from{transform:scale(.8);opacity:.7}to{transform:scale(1.65);opacity:0}}@keyframes urgentReveal{0%{box-shadow:0 0 0 0 #c56f4540}45%{box-shadow:0 0 0 6px #c56f4525}100%{box-shadow:0 0 0 0 #c56f4500}}@keyframes cardChanged{0%{box-shadow:0 0 0 4px #acbf8f60}100%{box-shadow:0 0 0 0 #acbf8f00}}@keyframes unloading{50%{transform:scaleY(.45)}}::view-transition-group(*){animation-duration:.38s;animation-timing-function:var(--ease)}::view-transition-old(root),::view-transition-new(root){animation:none}::view-transition-group(root){animation-duration:0s}::view-transition-old(.trip){animation-duration:.14s}::view-transition-new(.trip){animation-duration:.25s}
@media(min-width:1600px){.metrics{gap:20px}.board{gap:26px}.trip-card .plate{font-size:21px}.card-open{padding:19px}.card-footer{padding:10px 19px}.card-head{margin-bottom:15px}.route-line{font-size:12px}.card-times{font-size:11px}.card-phone{font-size:11px}.status-badge{font-size:10px}.sidebar{width:238px}.main-shell{margin-left:238px;width:calc(100% - 238px)}}
@media(max-width:1250px){.sidebar{width:196px;padding-left:13px;padding-right:13px}.main-shell{margin-left:196px;width:calc(100% - 196px)}.brand{font-size:27px;padding:0 5px}.nav-item{font-size:11px;gap:8px;padding:13px 8px}.nav-caption{font-size:8px}.nav-count{padding:2px 4px}.topbar{padding:0 24px}main{padding:22px 24px}.metric{padding:14px}.metric-value{gap:5px}.metric-value>span:not(.mini-gates){font-size:9px}.metric-value>strong{font-size:28px}.mini-gates{display:none}.metrics{gap:11px}.board{gap:13px}.card-open{padding:14px 12px}.plate{font-size:16px}.card-footer{padding:8px 11px;gap:5px;flex-wrap:wrap}.card-phone{font-size:9px}.gate-heading .plate{font-size:15px}.gate-number{min-width:39px;padding:5px}.card-times{font-size:9px}.route-line{font-size:10px}.column-heading{gap:6px}.column-heading h3{font-size:12px}.filters button{font-size:9px;padding:8px}.search-box{min-width:220px;flex-basis:290px}.toast-stack{left:calc(50% + 98px)}}
@media(max-width:1030px){.sidebar{width:76px;padding:27px 12px}.brand{padding:0;justify-content:center}.brand>span:last-child,.workspace,.nav-caption,.nav-item>*:not(:first-child),.preview-note,.employee-card>span:not(:first-child){display:none}.brand-mark{width:36px;height:37px}.sidebar nav{margin-top:35px}.nav-item{font-size:0;justify-content:center;padding:15px;min-height:49px}.nav-item svg{width:21px;height:21px}.employee-card{justify-content:center;padding:16px 0 0}.main-shell{margin-left:76px;width:calc(100% - 76px)}.toast-stack{left:calc(50% + 38px)}.board-toolbar{gap:10px}.board-title{min-width:55px}.filters{margin-left:auto}.page-heading{margin-top:28px}h1{font-size:29px}.metric-label{font-size:10px}.metric-icon{width:25px;height:25px}.metric-foot{font-size:9px}.clock{display:none}}
@media(max-width:800px){.sidebar{display:none}.main-shell{width:100%;margin:0}.topbar{height:58px;padding:0 18px}.breadcrumbs{font-size:11px}.breadcrumbs>span:not(:first-child),.breadcrumbs>.crumb-divider{display:none}.breadcrumbs strong{font-size:12px}.topbar-end{gap:12px}.mobile-employee{display:flex!important}.demo-indicator{font-size:10px}main{padding:16px 18px 20px}.demo-banner{font-size:10px;padding:9px 10px}.demo-banner button>span:last-child{display:none}.demo-banner button{min-width:28px;height:28px;justify-content:center}.demo-banner button svg{width:16px;height:16px}.page-heading{margin:24px 0 23px;gap:15px;flex-wrap:wrap}.page-heading p{font-size:11px}.eyebrow{font-size:8px}.page-heading h1{font-size:28px}.page-heading .add-button{font-size:11px;min-height:42px}.add-button kbd{display:none}.metrics{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:25px}.metric{padding:12px 10px}.metric-icon{display:none}.metric-label{font-size:10px;line-height:1.4;min-height:28px;align-items:flex-start}.metric-value{flex-direction:column;align-items:flex-start;margin:8px 0 0;gap:5px}.metric-value>strong{font-size:27px}.metric-value>span:not(.mini-gates){font-size:9px}.metric-foot{display:none}.board-toolbar{gap:12px}.board-title{display:none}.search-box{flex:1 1 100%;height:42px}.search-box input{font-size:12px}.search-box kbd{display:none}.filters{margin:0;background:#e9ede3}.filters button{font-size:11px;padding:9px 11px;min-height:35px}.filters button svg{width:14px;height:14px}.board-meta{font-size:9px;margin:11px 0 17px}.mobile-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #dfe5d7;margin-bottom:16px;gap:4px}.mobile-tabs button{font-size:12px;color:#819077;padding:12px 0;position:relative;min-height:44px}.mobile-tabs button[aria-selected=true]{color:#344b2b;font-weight:650}.mobile-tabs button[aria-selected=true]:after{content:"";position:absolute;bottom:-1px;height:2px;border-radius:2px;background:#718861;left:8px;right:8px}.mobile-tabs button>span{font-size:10px;background:#e7ecdf;border-radius:4px;padding:2px 5px;margin-left:4px}.board{display:block}.column{display:none}.board[data-tab=waiting] .waiting-column,.board[data-tab=gate] .gate-column,.board[data-tab=unloaded] .unloaded-column{display:block}.column-heading,.column-description{display:none}.card-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card-open{padding:17px 15px}.card-head .plate,.gate-heading .plate{font-size:19px}.route-line{font-size:11px}.card-footer{padding:9px 14px}.card-phone{font-size:10px}.card-times{font-size:10px}.status-badge{font-size:9px}.page-footer{font-size:9px;line-height:1.7;align-items:flex-start}.page-footer>span:last-child{display:none}.toast-stack{left:50%;bottom:18px}.gate-number{min-width:46px}.gate-number strong{font-size:22px}}
@media(max-width:500px){main{padding:12px 14px 20px}.topbar{padding:0 14px}.page-heading{margin:24px 0 20px}.page-heading h1{font-size:27px}.page-heading .add-button{width:100%;min-height:45px}.metrics{grid-template-columns:repeat(2,1fr);gap:9px;margin-bottom:22px}.metric{padding:13px 14px}.metric-label{min-height:0;font-size:10px}.metric-icon{display:flex;width:23px;height:23px}.metric-icon svg{width:14px;height:14px}.metric-value{flex-direction:row;align-items:baseline;margin:6px 0 0;gap:7px}.metric-value>strong{font-size:26px}.metric-value>span:not(.mini-gates){font-size:9px}.card-list{display:flex;gap:12px}.card-open{padding:17px 16px 15px}.card-head .plate,.gate-heading .plate{font-size:21px}.card-footer{padding:10px 16px}.card-phone{font-size:11px}.status-badge{font-size:10px}.route-line{font-size:12px}.card-times{font-size:11px}.card-head{margin-bottom:14px}.gate-heading .route-line{margin-bottom:16px}.board-meta>span:last-child{max-width:185px;line-height:1.4;text-align:right;font-size:8px}.board-meta{margin-bottom:9px}.demo-banner>span:nth-child(2){line-height:1.6}.demo-banner{align-items:flex-start}.demo-banner>span:first-child{margin-top:2px}.demo-banner button{margin-top:1px}.gate-process{font-size:11px}.completed-line{font-size:11px}dialog.sheet{width:100%;max-height:94dvh;height:auto;min-height:40dvh;margin:auto 0 0;border-radius:20px 20px 0 0;animation:modalIn .3s var(--ease)}dialog.modal{width:calc(100% - 20px);max-height:calc(100dvh - 24px);border-radius:15px}.dialog-header{padding:22px 20px 18px}.dialog-header h2{font-size:24px}.dialog-body{padding:20px 20px calc(23px + env(safe-area-inset-bottom))}.dialog-body .field input{font-size:16px;min-height:46px}.action-grid .button{font-size:12px;min-height:48px}.form-grid{grid-template-columns:1fr;gap:0}.details-grid{gap:19px 12px}.dialog-header .icon-button{width:39px;height:39px}.form-actions .button{min-height:46px}.gate-choice{min-width:45px;min-height:45px}.toast{font-size:11px;padding:12px 15px}.status-strip{font-size:11px}.page-footer{margin-top:24px}.trip-card:hover{transform:none}.filters button{min-height:38px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}::view-transition-group(*){animation-duration:0s!important}.trip-card:hover,.metric:hover{transform:none}}

/* Extra confirmation for implausibly fast unloading */
.fast-unload-warning{display:flex;align-items:flex-start;gap:11px;background:#fff0e8;border-color:#efc5ae;color:#9a422e}.fast-unload-warning>svg{width:22px;height:22px;flex:0 0 22px;margin-top:1px}.fast-unload-warning strong{display:block;color:#833523;margin-bottom:5px}.fast-unload-warning p{margin:0;color:#9a5b49;font-size:11px;line-height:1.65}.quick-unload-actions{display:grid;grid-template-columns:1fr 1.45fr}.quick-unload-actions .full{grid-column:1/-1}

/* Production status and always-visible journal access */
.topbar-end{gap:14px}.top-action{display:flex;align-items:center;gap:7px;border:1px solid #dce3d8;background:#fff;border-radius:8px;padding:8px 11px;color:#566a59;font-size:11px;font-weight:600;white-space:nowrap}.top-action:hover{background:#eff3eb;border-color:#c9d4c4}.top-action svg{width:15px;height:15px}.demo-indicator.offline{color:#a3533f}.demo-indicator.offline i{background:#ba5b42}
@media(max-width:800px){.topbar-end{gap:8px}.demo-indicator{display:none}.top-action{min-height:38px;padding:8px 10px}}
@media(max-width:500px){.top-action span:last-child{display:none}.top-action{width:39px;height:39px;padding:0;justify-content:center}}

/* iOS WebKit: keep the dialog itself out of the backdrop compositor layer. */
dialog::backdrop{background:rgba(22,36,30,.62);backdrop-filter:none;-webkit-backdrop-filter:none}
dialog[open]{opacity:1;visibility:visible}
#dialog-content{-webkit-overflow-scrolling:touch}
@media(max-width:500px){
  dialog.modal[open],dialog.sheet[open]{position:fixed;top:10px;right:10px;bottom:10px;left:10px;top:max(10px,env(safe-area-inset-top));bottom:max(10px,env(safe-area-inset-bottom));width:auto;height:auto;min-height:0;max-width:none;max-height:none;margin:0;background:#fafbf8;border:1px solid #e2e7dc;border-radius:16px;box-shadow:0 18px 60px rgba(13,29,21,.34);transform:none!important;animation:none!important;opacity:1!important;visibility:visible!important;z-index:2147483647}
  dialog.modal[open] #dialog-content,dialog.sheet[open] #dialog-content{height:100%;max-height:none;overflow-y:auto;background:#fafbf8}
}

/* V13: gate duration, occupied-gate warning and employee identity. */
.gate-duration{margin-top:4px;padding:10px 11px;border-radius:8px;background:#edf3f6;color:#57778a}.gate-duration .elapsed strong{font-size:13px;color:#3f6e87}.gate-conflict{display:flex;gap:13px;align-items:flex-start;padding:16px;border:1px solid #e9b69f;background:#fff1e9;border-radius:11px;color:#a64d34}.gate-conflict>svg{width:24px;height:24px;flex-shrink:0}.gate-conflict strong{font-size:13px}.gate-conflict p{margin:7px 0 0;color:#976b59}.text-button.full{width:100%;text-align:center;margin-top:14px}.employee-card strong{max-width:125px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:500px){.gate-conflict{padding:14px}.gate-conflict strong{font-size:12px}}

/* V14: shift report and configurable gate blocks. */
.top-action[hidden]{display:none!important}.field select{width:100%;height:44px;background:#fff;border:1px solid #dbe3d1;border-radius:8px;padding:9px 12px;color:#344b2f;outline:none;font-size:13px}.field select:focus{border-color:#b39555;box-shadow:0 0 0 3px #dfc68c25}.report-form{display:grid;grid-template-columns:1fr 1.25fr;gap:12px;align-items:end}.report-form .field{margin:0}.report-form>.button{height:44px;grid-column:1/-1}.report-result{margin-top:22px}.report-loading{text-align:center;padding:28px;color:#899682;font-size:11px}.report-total{display:grid;grid-template-columns:1fr auto;gap:5px 14px;align-items:center;padding:18px;border-radius:12px;background:#edf3e8;border:1px solid #dce8d5}.report-total>span{font-size:12px;color:#64755c;font-weight:600}.report-total>strong{grid-row:1/3;grid-column:2;font-size:38px;color:#385a3d;font-weight:650}.report-total>small{font-size:10px;color:#82917a}.report-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 20px}.report-breakdown>div{display:flex;justify-content:space-between;align-items:center;padding:10px 11px;border:1px solid #e0e7d9;border-radius:8px;background:#fff;font-size:10px;color:#72816b}.report-breakdown strong{font-size:16px;color:#465e43}.report-list{display:flex;flex-direction:column;gap:7px}.report-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid #e2e7dc;border-radius:8px;background:#fff}.report-row>span{min-width:0}.report-row strong{display:block;font-family:"Consolas","SFMono-Regular",monospace;font-size:12px;color:#405442;overflow-wrap:anywhere}.report-row small{display:block;font-size:9px;color:#8b9786;margin-top:4px}.report-row time{font-size:10px;color:#71806c;white-space:nowrap}.block-config-row{display:grid;grid-template-columns:90px 1fr 36px;gap:9px;align-items:end;padding:13px 0;border-bottom:1px solid #e5e9e0}.block-config-row:first-child{padding-top:0}.block-config-row .field{margin:0}.remove-block{margin-bottom:4px}.button.full{width:100%;margin-top:14px}.block-gate-picker{display:flex;flex-direction:column;gap:9px;margin:14px 0 21px}.gate-block-choice{padding:11px 12px 3px;border:1px solid #e0e6dc;border-radius:9px;background:#fff}.gate-block-choice.current{border-color:#b9cfaf;background:#f4f8ef}.gate-block-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:3px}.gate-block-title strong{font-size:11px;color:#4d6448}.gate-block-title span,.gate-block-empty{font-size:9px;color:#929c8e}.gate-block-choice .gate-picker{margin:9px 0 8px}
@media(max-width:700px){.report-form{grid-template-columns:1fr}.report-form>.button{grid-column:auto}.report-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}.block-config-row{grid-template-columns:72px 1fr 36px}}
@media(max-width:500px){.topbar-end{gap:6px}.report-total>strong{font-size:34px}.report-breakdown{grid-template-columns:1fr 1fr}.report-row{align-items:flex-start}.block-config-row{grid-template-columns:1fr 38px}.block-config-row .block-code{grid-column:1}.block-config-row .block-gates{grid-column:1}.block-config-row .remove-block{grid-column:2;grid-row:1/3;align-self:center}}
@media(max-width:800px){.metrics .metric{pointer-events:none;cursor:default}.metrics .metric:hover{transform:none;box-shadow:none;border-color:var(--line)}.mobile-tabs{background:#eef2e9;border:1px solid #d4ddce;border-radius:12px;padding:5px;box-shadow:inset 0 1px 2px #20371f0a,0 3px 12px #20371f0a}.mobile-tabs button{border-radius:8px;font-weight:600;color:#71806b}.mobile-tabs button[aria-selected=true]{background:#fff;color:#304b2c;box-shadow:0 2px 8px #273f2518}.mobile-tabs button[aria-selected=true]:after{display:none}.mobile-tabs button[aria-selected=true]>span{background:#dfe9d8;color:#405f3a}}
/* V17: elapsed-time heat gradient and administrator journal export. */
.trip-card.is-waiting,.trip-card.is-gate{background:linear-gradient(var(--age-bg,transparent),var(--age-bg,transparent)),#fff;border-color:var(--age-border,#e0e6dc);transition:background-color .5s ease,border-color .5s ease,box-shadow .3s ease}
.trip-card.is-waiting:after,.trip-card.is-gate:after{content:"";position:absolute;top:0;left:0;height:3px;width:calc(var(--age-level,0) * 100%);border-radius:11px 11px 3px 3px;background:linear-gradient(90deg,#e3bb62,#d85a3c);opacity:.82;pointer-events:none}
.trip-card.age-warm{box-shadow:0 3px 12px rgba(151,74,42,.08)}
.trip-card.age-critical{box-shadow:0 4px 18px rgba(159,51,35,.15)}
.trip-card.age-critical .elapsed{color:#a54634;font-weight:650}
.trip-card.age-critical .gate-duration{background:rgba(255,255,255,.52);color:#884b3b}
.trip-card.age-critical .gate-duration .elapsed strong{color:#9b3e30}
.trip-card.is-waiting .card-footer,.trip-card.is-gate .card-footer{background:rgba(250,251,248,.7)}
.journal-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:start}.journal-tools .journal-filter{margin:0}.journal-tools .button{height:40px;padding:8px 12px;white-space:nowrap}.journal-tools .button svg{width:15px;height:15px}.journal-export-note{font-size:9px;color:#8a9684;line-height:1.6;margin:8px 0 22px}
@media(max-width:500px){.journal-tools{grid-template-columns:1fr}.journal-tools .button{width:100%;justify-content:center}.journal-export-note{margin-top:9px}.trip-card.is-waiting:after,.trip-card.is-gate:after{height:4px}}

/* V17 heat steps */
.age-heat-1{--age-level:0.05;--age-bg:rgba(205,67,43,0.034);--age-border:rgba(181,60,38,0.093)}
.age-heat-2{--age-level:0.10;--age-bg:rgba(205,67,43,0.048);--age-border:rgba(181,60,38,0.118)}
.age-heat-3{--age-level:0.15;--age-bg:rgba(205,67,43,0.061);--age-border:rgba(181,60,38,0.140)}
.age-heat-4{--age-level:0.20;--age-bg:rgba(205,67,43,0.074);--age-border:rgba(181,60,38,0.162)}
.age-heat-5{--age-level:0.25;--age-bg:rgba(205,67,43,0.086);--age-border:rgba(181,60,38,0.182)}
.age-heat-6{--age-level:0.30;--age-bg:rgba(205,67,43,0.097);--age-border:rgba(181,60,38,0.202)}
.age-heat-7{--age-level:0.35;--age-bg:rgba(205,67,43,0.108);--age-border:rgba(181,60,38,0.221)}
.age-heat-8{--age-level:0.40;--age-bg:rgba(205,67,43,0.119);--age-border:rgba(181,60,38,0.239)}
.age-heat-9{--age-level:0.45;--age-bg:rgba(205,67,43,0.129);--age-border:rgba(181,60,38,0.257)}
.age-heat-10{--age-level:0.50;--age-bg:rgba(205,67,43,0.140);--age-border:rgba(181,60,38,0.275)}
.age-heat-11{--age-level:0.55;--age-bg:rgba(205,67,43,0.150);--age-border:rgba(181,60,38,0.293)}
.age-heat-12{--age-level:0.60;--age-bg:rgba(205,67,43,0.160);--age-border:rgba(181,60,38,0.310)}
.age-heat-13{--age-level:0.65;--age-bg:rgba(205,67,43,0.170);--age-border:rgba(181,60,38,0.327)}
.age-heat-14{--age-level:0.70;--age-bg:rgba(205,67,43,0.179);--age-border:rgba(181,60,38,0.344)}
.age-heat-15{--age-level:0.75;--age-bg:rgba(205,67,43,0.189);--age-border:rgba(181,60,38,0.360)}
.age-heat-16{--age-level:0.80;--age-bg:rgba(205,67,43,0.198);--age-border:rgba(181,60,38,0.376)}
.age-heat-17{--age-level:0.85;--age-bg:rgba(205,67,43,0.208);--age-border:rgba(181,60,38,0.393)}
.age-heat-18{--age-level:0.90;--age-bg:rgba(205,67,43,0.217);--age-border:rgba(181,60,38,0.409)}
.age-heat-19{--age-level:0.95;--age-bg:rgba(205,67,43,0.226);--age-border:rgba(181,60,38,0.424)}
.age-heat-20{--age-level:1.00;--age-bg:rgba(205,67,43,0.235);--age-border:rgba(181,60,38,0.440)}

/* V20: compact chronology, alerts and shift efficiency */
.compact-history{margin-top:20px;padding-top:16px}.compact-history h3{margin:0 0 13px}.compact-event{display:grid;grid-template-columns:85px 1fr;gap:11px;padding:9px 0;border-bottom:1px solid #e7ebe2;color:#52614d;font-size:10px;line-height:1.5}.compact-event time{font-size:9px;color:#829077;white-space:nowrap}.compact-event small{display:block;color:#919e8b;font-size:9px;margin-top:3px}.compact-empty{font-size:10px;color:#919e8b}.report-efficiency{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}.report-efficiency>div{padding:12px;border:1px solid #e0e7d9;border-radius:9px;background:#fff}.report-efficiency span{display:block;font-size:10px;color:#778770}.report-efficiency strong{display:block;margin-top:5px;font-size:17px;color:#3c5841}.alert-top-action.has-alerts{border-color:#ebc8bd;background:#fff2ed;color:#9f4534}.alert-top-action b{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;border-radius:9px;background:#b2523a;color:white;font-size:9px;padding:0 4px}.alert-top-action b:empty{display:none}.alert-item{padding:14px;border:1px solid #e6ded5;border-radius:10px;background:#fff;margin-bottom:10px}.alert-item>strong{display:block;color:#8e4331;font-size:12px}.alert-item>small{display:block;color:#83907e;font-size:10px;margin-top:6px;line-height:1.6}.alert-item .form-actions{margin-top:12px}.alert-item .button{font-size:10px;min-height:38px}.activity-list>.button{margin:0 0 16px}.activity-list .compact-event{grid-template-columns:85px 1fr}.journal-tools [aria-pressed="true"]{color:#9d4430;border-color:#e7bda9;background:#fff0e9}
@media(max-width:500px){.topbar-end{min-width:0;max-width:calc(100vw - 105px);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.topbar-end::-webkit-scrollbar{display:none}.topbar-end .top-action{flex:0 0 39px}.alert-top-action{position:relative}.alert-top-action>span{display:none}.alert-top-action b{position:absolute;right:-5px;top:-5px}.compact-event,.activity-list .compact-event{grid-template-columns:72px 1fr}.alert-item .form-actions{flex-direction:column}.alert-item .form-actions .button{width:100%}}

/* V21: visible cargo notes, deliberate gate resolution and mobile navigation. */
.field textarea{display:block;width:100%;min-height:76px;resize:vertical;background:#fff;border:1px solid #dbe3d1;border-radius:8px;padding:11px 12px;color:#344b2f;outline:none;font-size:13px;line-height:1.5}
.field textarea:focus{border-color:#b39555;box-shadow:0 0 0 3px #dfc68c25}
.cargo-note-card{display:flex;align-items:flex-start;gap:6px;margin:10px 0 3px;padding:8px 10px;border:1px solid #e5dbbd;border-radius:8px;background:#fbf6e7;color:#6a5831;font-size:11px;line-height:1.4}
.cargo-note-card svg{width:14px;height:14px;margin-top:1px}.cargo-note-card span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.cargo-note-detail{grid-column:1/-1;display:grid;gap:6px;padding:13px;border-radius:9px;background:#fbf6e7;border:1px solid #e5dbbd;color:#5a4d2f;font-size:12px;overflow-wrap:anywhere}
.cargo-note-detail strong{font-size:10px;letter-spacing:.03em}.gate-resolution-actions{display:grid;gap:9px;margin-top:18px}.gate-resolution-actions .button{width:100%;white-space:normal;text-align:center;line-height:1.4;min-height:48px}.conflict-fast{color:#a6412c;font-weight:700}.alert-context{margin:8px 0 0;color:#566a59;font-size:11px;line-height:1.5}
.mobile-menu-toggle,.mobile-drawer,.mobile-menu-backdrop{display:none}
@media(max-width:800px){
  .mobile-menu-toggle{display:flex;flex:0 0 40px;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #dce3d8;border-radius:9px;background:#fff;color:#405f4b}
  .mobile-menu-toggle svg{width:21px;height:21px}
  .topbar{justify-content:flex-start}.breadcrumbs{margin-right:auto}.topbar-end .top-action,.topbar-end .mobile-employee{display:none!important}.topbar-end{display:none!important}
  .mobile-menu-backdrop:not([hidden]){display:block;position:fixed;inset:0;background:#13251ba6;z-index:100}
  .mobile-drawer:not([hidden]){display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;width:min(330px,86vw);max-height:100dvh;padding:20px 16px calc(22px + env(safe-area-inset-bottom));background:#202c32;color:#eff2ee;z-index:101;overflow-y:auto;box-shadow:12px 0 35px #0e211b38;animation:drawerIn .23s ease-out}
  .mobile-drawer [hidden]{display:none!important}.mobile-drawer-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;padding:0 4px}.mobile-drawer-header strong{font-size:25px;letter-spacing:-.04em}.mobile-drawer-header .icon-button{color:#eff2ee;border:1px solid #ffffff29;width:38px;height:38px}
  .mobile-drawer-label{color:#91a7a5;font-size:10px;font-weight:700;letter-spacing:.11em;padding:16px 11px 8px}
  .mobile-drawer>button{display:flex;align-items:center;gap:12px;width:100%;min-height:47px;padding:12px;border-radius:9px;text-align:left;color:#edf2ed;font-size:13px;font-weight:560}
  .mobile-drawer>button:hover,.mobile-drawer>button:focus-visible{background:#ffffff16}.mobile-drawer>button svg{width:18px;height:18px;color:#f2c55e}.mobile-drawer>button b{margin-left:auto;min-width:19px;height:19px;padding:2px 5px;border-radius:10px;background:#ad4b37;text-align:center;font-size:10px}.mobile-drawer>button b:empty{display:none}
  body.menu-open{overflow:hidden}
}
@keyframes drawerIn{from{transform:translateX(-24px);opacity:.7}to{transform:translateX(0);opacity:1}}
@media(prefers-reduced-motion:reduce){.mobile-drawer:not([hidden]){animation:none}}
@media(max-width:500px){.dialog-body .field textarea{font-size:16px}}
.cargo-note-form{margin:18px 0 8px;padding:15px;border:1px solid #e5dbbd;border-radius:11px;background:#fbf8ee}
.cargo-note-form .field{margin:0}.cargo-note-form .field textarea{min-height:74px;background:#fff}
.cargo-note-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px}
.cargo-note-controls>span{color:#788276;font-size:10px;line-height:1.4}
.cargo-note-controls .button{min-height:38px;font-size:11px;white-space:nowrap}
.cargo-note-form .form-error:empty{display:none}
@media(max-width:500px){.cargo-note-controls{align-items:stretch;flex-direction:column}.cargo-note-controls .button{width:100%;justify-content:center}}
.completed-timeline{margin:0 0 20px;border:1px solid #dce5dc;border-radius:13px;background:#fff;overflow:hidden}
.completed-stage{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 15px;border-bottom:1px solid #e8ede6;font-size:12px;color:#60716a}
.completed-stage:last-child{border-bottom:0}
.completed-stage>span{display:flex;align-items:center;gap:9px;min-width:0}
.completed-stage svg{width:17px;height:17px;color:#78957c}
.completed-stage time{color:#344c3b;font-weight:650;text-align:right;font-variant-numeric:tabular-nums}
.completed-stage-final{background:#edf7ed;color:#466c4d}
.completed-stage-final time{color:#315f39}
@media(max-width:360px){.completed-stage{grid-template-columns:1fr;gap:5px}.completed-stage time{text-align:left;padding-left:26px}}
@media(max-width:800px){.board-section{overflow-anchor:none}.board{min-height:100dvh}}

.about-link{display:block;margin:11px 12px 0;padding:0;color:#aab6ad;font-size:10px;text-align:left}.about-link:hover{color:#e4c682}.dialog-credit{margin-top:18px;color:#9aa393;font-size:10px;letter-spacing:.02em}.dialog-body>.dialog-credit{text-align:right}.dialog-credit+.form-actions{margin-top:12px}
.migration-address{padding:14px 16px;margin:4px 0 14px;border:1px solid #e8d8ad;border-radius:10px;background:#fff9e9;color:#74551e;font-size:16px;font-weight:700;text-align:center;overflow-wrap:anywhere}.install-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;border-radius:9px;background:#edf0e8}.install-tabs button{min-height:42px;border-radius:7px;color:#71806b}.install-tabs button[aria-selected=true]{background:#fff;color:#344b2b;box-shadow:0 1px 4px #20371f18;font-weight:650}.install-illustration{width:100%;height:auto;max-height:125px;margin:16px 0 8px}.install-steps{padding-left:23px;color:#53635a;font-size:12px;line-height:1.75}.install-steps li{padding-left:4px;margin:7px 0}.dialog-body .notice{font-size:11px;padding:11px 13px;margin:14px 0 18px}.dialog-body .full{width:100%}@media(max-width:500px){.migration-address{font-size:15px}.dialog-body .form-actions{flex-direction:column}.dialog-body .form-actions .button{width:100%}}
