/* RODYVEN Executive 6.0. One design system for desktop and mobile.
   Authored interface components, not a raster screenshot overlay. */
:root{--sidebar:228px;--rail:370px;--navy:#102031;--navy-deep:#091826;--ink:#101f3b;--muted:#627693;--soft:#8b9cb6;--line:#e5ebf3;--paper:#fff;--canvas:#fafcfe;--blue:#1255eb;--blue-soft:#edf3ff;--gold:#d6b178;--shadow:0 5px 24px rgba(22,45,75,.045);--radius:12px}
body{background:var(--canvas);color:var(--ink);font-size:14px;line-height:1.45;font-family:'Segoe UI',-apple-system,BlinkMacSystemFont,Arial,sans-serif}
button,input,select,textarea{font-family:inherit}
button{transition:background .18s,border-color .18s,box-shadow .18s;color:inherit}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #adc6fb;outline-offset:3px}
.shell{margin-left:var(--sidebar)}
.sidebar{width:var(--sidebar);background:linear-gradient(130deg,#1b2d3d 0%,#0b1c2b 65%,#12293d 100%);padding:24px 12px 14px;color:#cad6e7;transform:none;z-index:80;overflow-y:auto;gap:0}
.brand{display:flex;gap:12px;padding:0 12px 27px;align-items:center}
.brand-emblem{width:40px;height:44px}
.brand-text{display:block;min-width:0}
.brand-name{font-size:21px;font-weight:600;letter-spacing:2.5px;color:#fbfcff;line-height:1.2}
.brand-tag{font-size:10px;letter-spacing:1.2px;line-height:1.2;margin-top:7px;white-space:nowrap;color:#b5c7d8}
.nav{gap:6px}
.nav-btn{min-height:46px;padding:11px 14px;gap:14px;border-radius:8px;border:1px solid transparent;font-size:13px;color:#c8d6e7;justify-content:flex-start}
.nav-btn>.nav-label,.nav-btn>.count{display:inline-flex}
.nav-btn .icon{width:21px;height:21px;opacity:1;stroke-width:1.5}
.nav-btn.active{background:linear-gradient(98deg,rgba(230,200,147,.30),rgba(52,74,99,.5) 45%,rgba(40,59,82,.38));border-color:#657484;box-shadow:inset 2px 0 0 #d8b87c,0 0 16px #d4bc7620;color:#fff}
.nav-btn.active .icon{color:#e7c88d;filter:drop-shadow(0 0 4px #ddbf8960)}
.nav-btn.nora-nav{background:rgba(151,170,193,.09);border-color:rgba(168,187,215,.08);margin-top:4px}
.nav-btn.nora-nav .icon{fill:#fce5b8;color:#fce5b8;filter:drop-shadow(0 0 5px #d4ab56a0)}
.nav-btn.nora-nav.active{border-color:#b69a68;background:linear-gradient(98deg,#bd96513b,#718cac15)}
.nav-btn .count{background:#344b6b;color:#edf4ff;min-width:24px;height:24px;align-items:center;justify-content:center;font-size:11px;padding:0 6px}
.sidebar-utility{padding-top:18px}
.sidebar-utility .nav-btn{min-height:40px;font-size:12px}
.sidebar-world{min-height:150px;flex:1;position:relative;margin:16px -12px 0;overflow:hidden}
.sidebar-world img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 24%;opacity:.95;mask-image:linear-gradient(transparent,black 20%,black 65%,transparent)}
.world-caption{position:absolute;bottom:19px;left:25px;right:16px;line-height:1.9;letter-spacing:3px;color:#d2deeb;font-size:10px;font-weight:400;text-shadow:0 1px 5px #081828}
.world-caption i{display:block;width:28px;height:2px;background:#e9c37f;margin-bottom:12px}
.profile-button{width:100%;border:0;border-top:1px solid #bccde822;background:transparent;padding:17px 10px 5px;text-align:left;gap:11px;margin-top:0}
.profile-copy{display:block;flex:1;min-width:0}
.profile-name{font-size:12px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.profile-sub{color:#b2c1d5;letter-spacing:.3px;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.profile-avatar{height:38px;width:38px;background:linear-gradient(145deg,#5f718a,#354e66);font-size:14px;color:#fff;flex-shrink:0}
.profile-button>.icon{width:14px;height:14px;color:#c3d2e3}
.topbar{min-height:76px;padding:13px 22px;gap:22px;position:sticky;top:0;background:#ffffffed;backdrop-filter:blur(16px);border-bottom:1px solid #e5ebf2;box-shadow:0 3px 14px #1b3c6120;z-index:35}
.top-title{min-width:108px;font-size:22px;letter-spacing:-.5px;font-weight:650}
.edition-badge{display:block;font-size:8px;letter-spacing:2px;font-weight:500;color:#9b825a;line-height:1;margin-top:6px}
.top-search{width:auto;flex:1;max-width:510px;margin:0 auto;min-width:180px}
.top-search input{padding:12px 58px 12px 41px;font-size:12px;border:1px solid #dfe6f3;border-radius:8px;background:linear-gradient(115deg,#f9fbff,#f7f9fc);height:42px}
.top-search>.icon{top:11px;width:19px;height:19px;color:#3b527f;left:13px}
.shortcut{top:9px;font-size:10px;color:#8797ad}
.top-actions{gap:12px}
.btn{font-size:12px;border-radius:7px;padding:9px 13px;min-height:40px;font-weight:600;box-shadow:0 1px 3px #28415c03}
.btn-gold{color:#242326;background:linear-gradient(125deg,#f1dfbb,#e0c395 45%,#cba05e);border-color:#cbad79;box-shadow:inset 0 1px 0 #fff8e6,0 3px 7px #99723810}
.btn-gold:hover{background:linear-gradient(125deg,#f9e9cb,#ecd3a9 45%,#d4af71);border-color:#b99152}
.btn-blue{background:#1b3557;color:#fff;border-color:#233f63}
.btn-blue:hover{background:#294969;color:#fff;border-color:#294969}
.btn .icon{width:18px;height:18px}
.topbar .btn-gold{min-width:144px}
.topbar .export-top{display:inline-flex;color:#1b438d;border-color:#c2cee4}
.topbar .notification-button{display:inline-flex;width:39px;height:39px;color:#233d66;margin-right:2px}
.notification-dot{background:#ef4250;color:#fff;font-size:10px;min-width:20px;height:20px;border:2px solid #fff;top:-1px;right:-1px;line-height:16px}
.date-block{display:block;font-size:11px;min-width:104px;border-color:#e2e8f4;padding-left:12px;color:#385172}
.date-block small{font-size:10px;color:#8d9db5}
.menu-only,.mobile-brand,.mobile-profile,.mobile-bottom{display:none}
.work-layout{padding:18px 18px 12px 22px;gap:18px;max-width:2100px;grid-template-columns:minmax(0,1fr) var(--rail);align-items:start}
#workspace{min-width:0}
.hero{display:flex;min-height:auto;margin:0 0 20px}
.hero.compact{padding:13px 0 6px}
.hero.compact h1{font-family:Georgia,'Times New Roman',serif;font-size:38px;line-height:1.15;font-weight:700;color:#111c32;letter-spacing:-1px;margin-top:9px}
.hero.compact p{font-size:14px;max-width:750px;color:#6c7d96;margin-top:9px}
.overline{color:#1257ef;font-size:10px;letter-spacing:2.8px;font-weight:650}
.dashboard-hero{position:relative;display:flex;align-items:center;min-height:153px;margin:0 0 14px;border-radius:10px;overflow:hidden;background:#fff}
.hero-copy{position:relative;z-index:2;padding:13px 0 17px;max-width:100%}
.dashboard-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(35px,2.9vw,52px);line-height:1.08;font-weight:700;color:#101626;letter-spacing:-1.5px;margin:9px 0 8px;white-space:nowrap}
.dashboard-hero p{font-size:clamp(12px,1.04vw,17px);color:#566e98;max-width:96%;line-height:1.5}
.hero-scenery{position:absolute;right:0;top:0;height:100%;width:31%;overflow:hidden;opacity:.82;mask-image:linear-gradient(90deg,transparent,black 27%)}
.hero-scenery img{width:100%;height:100%;object-fit:cover;object-position:center 69%}
.hero-slogan{display:none;position:absolute;right:15px;top:17px;font-size:9px;letter-spacing:1.5px;line-height:1.4;color:#223d65;text-shadow:0 1px 3px white;z-index:1}
.hero-slogan i{display:block;width:31px;height:2px;background:#cca153;margin-top:10px}
.metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}
.metric{padding:16px 12px 14px;display:flex;align-items:flex-start;gap:11px;border-radius:11px;border-color:#e7edf5;min-height:137px;box-shadow:0 4px 17px #24416308}
.metric-icon{width:43px;height:49px;background:#edf4ff;border-radius:9px;color:#0050ef;margin:0}
.metric-icon .icon{width:26px;height:26px;stroke-width:1.7}
.metric-icon.green{background:#edf9f2;color:#007a51}.metric-icon.rose{background:#fff3f3;color:#d7474a}.metric-icon.teal{background:#ecf9f5;color:#047764}
.metric-inner{min-width:0;flex:1}
.metric-label{font-size:11px;font-weight:400;color:#5d7196;display:flex;align-items:center;gap:4px;white-space:normal;line-height:1.35;margin-bottom:5px;min-height:16px}
.metric-value{font-size:clamp(23px,1.85vw,33px);line-height:1.25;letter-spacing:-1px;font-weight:700;color:#101b35;white-space:nowrap;font-variant-numeric:tabular-nums;margin-bottom:3px}
.metric-note{color:#64839b;font-size:9.5px;line-height:1.4;min-height:27px;margin-top:3px}
.metric .text-btn{font-size:10.5px;font-weight:400;margin-top:4px}
.help-btn{height:17px;width:17px;min-width:17px;font-size:10px;border:0;background:#edf1f8;color:#687faa;display:inline-grid;place-items:center;flex-shrink:0;line-height:1;border-radius:50%}
.card{border-color:#e6edf5;background:linear-gradient(160deg,#fff,#fff 82%,#fcfdff);border-radius:11px;box-shadow:var(--shadow)}
.card-head{padding:17px 16px 11px;gap:8px}
.card-head h2{font-size:16px;font-weight:650;letter-spacing:-.4px;gap:8px;line-height:1.25}
.card-head h2>.icon{width:22px;height:22px;color:#152648;stroke-width:1.7}
.card-head .text-btn{font-size:10.5px;font-weight:400;white-space:nowrap}
.card-pad{padding:22px}
.text-btn{color:#1455e8;font-size:11px;font-weight:500;min-height:24px}
.dashboard-jobs-head{flex-wrap:wrap;gap:10px;padding-top:15px;padding-bottom:13px}
.dashboard-jobs-head h2{font-family:Georgia,'Times New Roman',serif;font-size:23px;font-weight:700;white-space:nowrap}
.dashboard-jobs-head>.text-btn{margin-left:auto}
.dashboard-tabs{display:flex;gap:5px;align-items:center;overflow:auto;scrollbar-width:none}
.dashboard-tab{border:1px solid #ecf0f8;background:#f8fafe;border-radius:6px;font-size:10px;color:#7184a3;white-space:nowrap;padding:7px 8px;min-height:32px;font-weight:400}
.dashboard-tab.active{background:#fff;color:#182846;border-color:#a8bdf8;box-shadow:0 0 0 1px #d2e0ff20;font-weight:650}
.table-wrap{padding:0 14px 7px;overflow:auto;scrollbar-width:thin}
.data-table{font-size:12px;min-width:600px}
.data-table th{color:#62789e;background:#f5f8fc;font-weight:400;font-size:10.5px;padding:9px 8px}
.data-table td{padding:12px 8px;border-color:#e3eaf5;line-height:1.4}
.data-table .number{font-size:10.5px;color:#1454e4;white-space:nowrap}
.data-table .row-main{font-size:12px;font-weight:650;max-width:230px}
.data-table .row-sub{font-size:10.5px;color:#71839e}
.data-table .muted{font-size:11px}
.compact-table{min-width:0;table-layout:auto;font-size:10.5px}
.compact-table th{font-size:10px;padding:8px 6px}
.compact-table td{padding:10px 6px;height:44px}
.compact-table .row-main{font-size:11px;max-width:185px;letter-spacing:-.1px}
.compact-table .number{font-size:10px;font-weight:600}
.compact-table .job-customer{color:#5d739b;max-width:135px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.compact-table .cargo-col{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#5b6f90;font-size:10px}
.compact-table .job-amount{font-size:11px;color:#111f3e}
.compact-table .job-date{font-size:10px;color:#617496}
.row-open{color:#213d68;padding:4px;min-height:26px}
.row-open .icon{width:13px;height:13px}
.mobile-job-number,.mobile-job-date{display:none}
.status{font-size:10px;padding:4px 9px;line-height:1.3;font-weight:500;letter-spacing:-.1px}
.status::before{width:5px;height:5px}
.status.blue{color:#0659e6;background:#e7f1ff}.status.green{color:#067a55;background:#e7f8ef}.status.red{color:#c64558;background:#fff0f2}.status.amber{color:#9f661b;background:#fff1d9}
.card-foot{padding:9px 17px;font-size:9px;color:#7f91aa;background:#ffffffb0;flex-wrap:wrap}
.dashboard-bottom{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.05fr) minmax(0,.8fr);gap:12px;margin-top:16px}
.dashboard-bottom .card-head{padding:15px 14px 10px;flex-wrap:nowrap}
.dashboard-bottom .card-head h2{font-size:14px;white-space:nowrap;gap:6px}
.dashboard-bottom .card-head h2>.icon{width:19px;height:19px}
.dashboard-bottom .card-head .help-btn{display:none}
.dashboard-bottom .card-head .text-btn{font-size:10px}
.list-pad{padding:0 14px 8px}
.mail-row{grid-template-columns:35px minmax(0,1fr) auto;gap:8px;padding:12px 0;min-height:62px}
.mail-row>span:nth-child(2){min-width:0}
.initials{width:35px;height:35px;background:linear-gradient(135deg,#edf2ff,#d5e2ff);color:#224aaf;font-size:12px}
.mail-title{font-size:11.5px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.mail-subject,.mail-preview{font-size:10.5px;line-height:1.4;max-width:100%;color:#748ab0;margin-top:1px}
.mail-time{font-size:10px;color:#7185ad}
.unread-dot{width:6px;height:6px;margin-top:5px;background:#2f6ffa}
.badge-count{height:19px;min-width:19px;font-size:10px;background:#f14150}
.mini-finance{padding:1px 16px 12px}
.finance-total{font-size:28px;line-height:1.25;font-weight:700;letter-spacing:-.7px;color:#0e1933;white-space:nowrap}
.finance-trend{font-size:9px;color:#8397b6;min-height:23px;padding-top:4px}
.finance-trend.good{color:#0d8a62}
.chart-wrap{height:114px;position:relative;margin-top:7px}
.chart-grid{position:absolute;inset:0 0 21px;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}
.chart-grid span{border-top:1px solid #eef2f7;width:100%;font-size:8px;color:#8b9eb7;text-align:right;padding-right:0}
.finance-bars{position:relative;height:100%;display:flex;gap:10px;padding-right:37px;align-items:flex-end}
.bar-group{flex:1;min-width:0;height:100%;display:flex;flex-direction:column;justify-content:flex-end;text-align:center;gap:6px}
.bar-zone{height:calc(100% - 21px);display:flex;align-items:flex-end}
.finance-bar{width:100%;background:linear-gradient(#98c9ff,#d4e8ff);border-radius:2px 2px 0 0;transition:height .25s ease}
.finance-bar.latest{background:linear-gradient(#537dfe,#2666f9)}
.bar-group>span{color:#6e83ac;font-size:9px;height:15px;white-space:nowrap}
.chart-foot{font-size:8px;color:#8b9bb0;display:block;margin-top:2px}
.quick-actions{display:grid;gap:8px;padding:0 14px 15px}
.quick-actions button{display:flex;align-items:center;gap:9px;text-align:left;min-height:38px;padding:9px 8px;border:1px solid #e6ecf5;background:linear-gradient(140deg,#fff,#f5f8fd);border-radius:7px;font-size:10.5px;font-weight:600;white-space:nowrap}
.quick-actions button>.icon{width:19px;height:19px;color:#162e5b}
.quick-actions button:first-child>.icon:first-child{color:#b68844}
.quick-actions button>.icon:last-child{margin-left:auto;height:12px;width:12px}
.quick-actions button:hover{border-color:#a9bfea;background:#f6f9ff}
/* Nora is one component: rail on desktop, in the content flow on phones. */
.nora-rail{display:block;position:sticky;top:94px;bottom:auto;right:auto;width:auto;z-index:1;border:1px solid #d9e8f3;border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 4px 24px #2782ab10}
.nora-cover{height:347px;background:#122a3f;position:relative}
.nora-cover img{position:absolute;right:0;top:0;width:87%;height:100%;object-fit:cover;object-position:56% 29%;opacity:1}
.nora-cover::after{background:linear-gradient(90deg,#12283cef 0%,#213c54d9 23%,transparent 52%),linear-gradient(0deg,#fff 0%,#ffffff70 12%,transparent 33%)}
.nora-brand{top:22px;left:18px;gap:9px;align-items:flex-start;z-index:2}
.nora-wing{width:29px;height:35px;flex-shrink:0}
.nora-name{font-family:Georgia,'Times New Roman',serif;font-size:27px;letter-spacing:4px;line-height:1.1;font-weight:400}
.nora-caption{font-size:8px;letter-spacing:1.7px;line-height:1.45;color:#c7d8e8;margin-top:5px}
.nora-menu{position:absolute;z-index:3;right:13px;top:14px;color:#e1ecf7;background:#adc0d926;border:1px solid #c7d6ef33;border-radius:8px;height:28px;width:28px;letter-spacing:1px;font-size:10px}
.nora-signature{left:21px;top:127px;max-width:135px;color:#ecf3fa}
.nora-signature p{font-family:'Segoe Script','Brush Script MT','URW Chancery L',Georgia,cursive;font-style:italic;font-size:19px;line-height:1.25;font-weight:400;transform:rotate(-9deg)}
.nora-signature span{font-family:'Segoe Script','Brush Script MT','URW Chancery L',Georgia,cursive;font-size:42px;font-weight:400;line-height:1;transform:rotate(-12deg);margin:13px 0 0 9px}
.nora-greeting{position:relative;margin:-94px 20px 14px 17px;padding:14px 16px 13px;background:#fffffffa;border-radius:11px;border:1px solid #eff3f9;box-shadow:0 9px 23px #0d233a22;max-width:285px;z-index:3}
.nora-greeting h3{font-size:18px;font-weight:700;margin:0 0 5px;color:#101e3e;letter-spacing:-.4px;line-height:1.3}
.nora-greeting p{font-size:12px;color:#385174;line-height:1.5;margin:0}
.nora-greeting p>span{display:block;margin-top:2px}
.nora-body{padding:0 14px 10px;background:#fff}
.rail-section-heading{display:flex;justify-content:space-between;align-items:center;margin:11px 1px 8px;gap:5px}
.rail-section-heading>span{font-size:9px;letter-spacing:2px;color:#38557a;font-weight:650;display:flex;gap:5px;align-items:center}
.rail-section-heading>span>.icon{width:16px;height:16px;color:#bc944f}
.rail-section-heading>.text-btn{font-size:10px;font-weight:400;min-height:20px}
.priority-list{display:grid;gap:6px}
.priority-row{display:flex;align-items:center;gap:9px;width:100%;text-align:left;background:linear-gradient(115deg,#fff,#fcfdff);border:1px solid #e9edf5;border-radius:8px;padding:8px 8px;min-height:52px}
.priority-icon{width:33px;height:33px;display:grid;place-items:center;border-radius:7px;flex-shrink:0;background:#eff5ff;color:#1658d0}
.priority-icon .icon{width:21px;height:21px}
.priority-icon.rose{background:#fff0f1;color:#d44b53}.priority-icon.amber{background:#fff3e5;color:#a87028}
.priority-text{min-width:0;flex:1}
.priority-text strong{display:block;font-size:11.5px;font-weight:600;line-height:1.35}
.priority-text small{display:block;font-size:9.5px;color:#7c8fb1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
.priority-when{font-size:9px;color:#a3681e;white-space:nowrap}.priority-when.rose{color:#d62b43}
.priority-row>.icon{width:12px;height:12px;color:#294167}
.nora-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:12px 0 9px}
.nora-action{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:53px;padding:7px 3px;border-color:#e5ebf4;background:linear-gradient(140deg,#fff,#f6f8fc);border-radius:7px;text-align:center}
.nora-action>.icon{width:20px;height:20px;padding:0;background:none;border-radius:0;color:#446497}
.nora-action strong{font-size:9px;font-weight:500;margin:0}
.recommendation{min-height:51px;padding:8px;margin-bottom:6px;gap:8px;border-color:#e9edf5;box-shadow:none;background:linear-gradient(110deg,#fff,#f9fbfe)}
.recommendation-icon{display:grid;place-items:center;min-width:33px;height:33px;background:#f2f5fa;border-radius:7px;color:#40577e}
.recommendation-icon>.icon{width:21px;height:21px}
.recommendation strong{font-size:11px;font-weight:600;line-height:1.3;color:#142645}
.recommendation small{font-size:9.5px;line-height:1.4;margin-top:2px;color:#7e90ac}
.recommendation>.icon{width:12px;height:12px;color:#304b72}
.rail-chat{border-color:#acbfde;border-radius:9px;min-height:42px;margin-top:12px;padding:5px 6px;gap:8px}
.rail-chat>.icon{color:#233e65;width:24px;height:24px;fill:#233e651a}
.rail-chat input{font-size:12px;padding:5px 0}
.rail-chat button{background:linear-gradient(135deg,#24436b,#112337);border:1px solid #b79a67;box-shadow:inset 0 0 0 1px #e2c38420;width:31px;height:31px}
.rail-foot{font-size:8px;color:#8a9bb0;line-height:1.4}
.rail-empty{font-size:12px;color:#7186a2;padding:13px}
.nora-fab{display:none!important}
/* Global polish shared by forms, detail screens and all modules. */
.toolbar{margin-bottom:17px;gap:10px}.filter-group select,.filter-group input,.select-clean{padding:10px 12px;font-size:12px;min-height:40px;border-color:#dce6f1;border-radius:7px}
.tab{padding:11px 16px;font-size:12px;color:#6b7d97;min-height:43px}.tab.active{color:#213f69;border-color:#c4a366}
.summary-grid{gap:13px;grid-template-columns:repeat(3,minmax(0,1fr))}.summary{padding:18px;border-radius:11px;box-shadow:0 3px 15px #284a6405}.summary-label{font-size:12px}.summary-value{font-size:26px;color:#111f39}.summary-note{font-size:10.5px;line-height:1.5}
.vehicle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vehicle-top{background:linear-gradient(130deg,#eaf0f8,#fafbfd);padding:22px}.vehicle-top .icon{width:49px;height:49px;color:#314d70}.vehicle-plate{font-size:12px;border-left-color:#234d8e}
.info-note{font-size:12px;line-height:1.7;color:#637692;background:#f7faff;border-color:#e1e9f4}.info-note.warning{color:#89672c;background:#fffbf2;border-color:#ede1c8}
.kv{font-size:13px;line-height:1.6}.kv dt{color:#74859d}.kv dd{color:#152642;font-weight:500}
.task-title{font-size:13px}.task-meta{font-size:11px}.task-row{padding:14px 0}.task-toggle{width:24px;height:24px}
.activity-text{font-size:13px}.activity-time{font-size:11px}.tag-demo{font-size:8px;color:#8999af}
.demo-line{font-size:9px;color:#7e91aa;line-height:1.5;align-items:flex-start;padding-right:0;margin-top:15px}
#app-footer{padding:8px 22px 20px;font-size:9px;max-width:2100px;color:#7c90ac;gap:12px;flex-wrap:wrap}
.footer-brand{font-weight:650;color:#516fa5;letter-spacing:1.4px}.footer-brand span{font-weight:400;letter-spacing:.4px;margin-left:5px;color:#8195b2}
.dialog{border:1px solid #d8e2ed;border-radius:15px;width:min(820px,calc(100% - 36px));max-height:90dvh;box-shadow:0 28px 110px #0d264d45;background:#fff}
.dialog::backdrop{background:#10203390;backdrop-filter:blur(5px)}
.dialog-head{background:linear-gradient(110deg,#f9fbfe,#fff);border-bottom:1px solid #e5ebf3;padding:22px 25px;position:sticky;top:0;z-index:1}
.dialog-head h2{font-family:Georgia,'Times New Roman',serif;font-size:27px;color:#152540;line-height:1.2}.dialog-head .overline{color:#a08250;font-size:9px}
#dialog-body{padding:24px}.field{font-size:12px;line-height:1.5}.field input,.field select,.field textarea{border-radius:8px;min-height:44px;font-size:14px;border-color:#d8e2ef;padding:10px 12px;background:#fefeff}
.field .hint{font-size:10.5px;line-height:1.5;color:#7c8ea6}.detail-heading h3{font-size:20px}.detail-note{padding:18px;background:#f8fafd;color:#586d89;font-size:13px;line-height:1.8;border:1px solid #e5ebf4;border-radius:9px}
.draft-text{font-size:14px;min-height:285px;background:#fff;border-color:#d7e2f0}.form-actions{padding-top:19px;gap:10px}.form-actions .btn{min-height:42px}
.assistant-banner{background:linear-gradient(120deg,#f2f6fc,#fff);border-bottom:1px solid #e5ebf3;padding:24px;gap:20px}.assistant-banner img{width:98px;height:125px;object-position:50% 27%;border-radius:10px}.assistant-banner h2{font-family:Georgia,serif;font-size:29px}.assistant-banner p{font-size:13px;line-height:1.7;color:#6a7f9e}
.chat-answer{font-size:14px;background:#f8fbff;border-color:#e0e8f5;border-radius:10px;color:#324a6c;line-height:1.8}.chat-input input{font-size:14px;border-color:#d7e2f0}.toast{background:#142c46;border:1px solid #61799750;border-radius:9px;box-shadow:0 9px 30px #09264425;font-size:13px}.toast.error{background:#9d3947}
.login-screen{background:radial-gradient(circle at 80% 0,#1f435e,#081b2c);color:#152742}.login-card{border-color:#d1b17d;border-radius:18px;box-shadow:0 24px 95px #020f22a0}.login-logo{letter-spacing:4px;color:#967844}.login-card .btn{background:linear-gradient(115deg,#e8d1a7,#d3ac6c);color:#172239;border-color:#d3b179}
@media(min-width:1800px){:root{--sidebar:240px;--rail:392px}.work-layout{padding:20px 24px;gap:22px}.topbar{padding-left:24px;padding-right:24px}.hero-slogan{display:block}.dashboard-hero{min-height:167px}.dashboard-hero h1{font-size:53px}.metric{padding:19px 16px;min-height:143px}.metric-label{font-size:12px}.metric-value{font-size:34px}.metric-note{font-size:10px}.metric .text-btn{font-size:11px}.compact-table{font-size:12px}.compact-table .row-main{font-size:12px;max-width:230px}.compact-table .number{font-size:11px}.compact-table th{font-size:11px}.compact-table td{padding-top:12px;padding-bottom:12px}.nora-cover{height:372px}.nora-greeting{max-width:303px}.nora-greeting p{font-size:13px}.nora-greeting h3{font-size:19px}.priority-text strong,.recommendation strong{font-size:12px}.priority-text small,.recommendation small{font-size:10px}.priority-row{min-height:56px}.dashboard-bottom .card-head h2{font-size:16px}.mail-title{font-size:12px}.finance-total{font-size:31px}.quick-actions button{font-size:12px}.nora-rail{top:96px}.nav-btn{font-size:14px;min-height:48px}}
@media(min-width:1101px) and (max-width:1490px){:root{--sidebar:208px;--rail:320px}.work-layout{padding:16px;gap:14px}.topbar{padding:12px 16px;gap:13px}.top-search{max-width:390px}.top-title{font-size:21px;min-width:80px}.date-block{display:none}.topbar .btn-gold{min-width:131px}.top-actions{gap:8px}.brand{padding-left:7px;gap:9px}.brand-name{font-size:19px}.brand-emblem{width:33px}.brand-tag{font-size:9px}.dashboard-hero{min-height:143px}.dashboard-hero h1{font-size:37px;letter-spacing:-1.3px}.dashboard-hero p{font-size:13px}.hero-scenery{width:28%}.metric{padding:14px 9px;gap:8px;min-height:128px}.metric-icon{width:33px;height:40px}.metric-icon .icon{width:23px;height:23px}.metric-value{font-size:25px}.metric-label{font-size:10px}.metric-note{font-size:9px}.metric .text-btn{font-size:9px}.compact-table .cargo-col{display:none}.compact-table .job-customer{max-width:100px;font-size:10px}.compact-table .row-main{max-width:143px;font-size:10.5px}.compact-table th{font-size:9px}.compact-table td{padding-left:5px;padding-right:5px}.compact-table .number{font-size:9px}.compact-table .job-amount{font-size:10.5px}.compact-table .status{font-size:9px}.dashboard-jobs-head h2{font-size:22px}.dashboard-tabs{order:3;width:100%}.dashboard-jobs-head{gap:6px;padding-bottom:9px}.dashboard-tab{font-size:10px}.dashboard-bottom{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:12px}.dashboard-quick{grid-column:1/-1}.dashboard-quick .quick-actions{grid-template-columns:repeat(4,minmax(0,1fr));padding-bottom:14px}.dashboard-quick .card-head{padding-top:12px}.dashboard-quick .quick-actions button{font-size:10px}.nora-cover{height:327px}.nora-brand{left:14px;top:20px;gap:7px}.nora-name{font-size:25px}.nora-caption{font-size:7px}.nora-wing{width:25px}.nora-signature{left:16px;top:123px}.nora-signature p{font-size:17px}.nora-greeting{margin-top:-91px;margin-left:13px;margin-right:16px;max-width:259px;padding:12px 13px}.nora-greeting h3{font-size:16px}.nora-greeting p{font-size:11px}.nora-body{padding-left:11px;padding-right:11px}.priority-row{gap:7px;padding:7px 6px}.priority-icon{width:28px;height:31px}.priority-text strong{font-size:10.5px}.priority-text small{font-size:9px}.priority-when{font-size:8px}.nora-action strong{font-size:8.5px}.recommendation strong{font-size:10.5px}.recommendation small{font-size:9px}.rail-section-heading>span{font-size:8px;letter-spacing:1.8px}.rail-section-heading>.text-btn{font-size:9px}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.summary{padding:15px}.summary-value{font-size:23px}.summary-label{font-size:11px}}
/* Tablet keeps the dark navigation and the same photographic Nora panel. */
@media(min-width:761px) and (max-width:1100px){:root{--sidebar:72px;--rail:290px}.sidebar{width:72px;padding:21px 8px 12px}.brand{padding:0 6px 23px;justify-content:center}.brand-emblem{width:38px}.brand-text,.nav-btn>.nav-label,.nav-btn>.count,.profile-copy,.sidebar-world{display:none}.nav-btn{justify-content:center;padding:12px;min-height:46px}.sidebar-utility{margin-top:auto}.profile-button{justify-content:center;padding-left:0;padding-right:0;margin-top:20px}.profile-button>.icon{display:none}.profile-avatar{width:35px;height:35px}.topbar{padding:12px 16px;gap:12px}.top-title{font-size:19px;min-width:65px}.top-search{min-width:100px;max-width:310px}.topbar .export-top{display:none}.date-block{display:none}.work-layout{grid-template-columns:minmax(0,1fr);padding:16px;gap:16px}.nora-rail{position:relative;top:auto;width:100%;max-width:none;grid-row:auto;border-radius:12px;display:block}.work-layout:has(#workspace .dashboard-hero){display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px}body[data-view="dashboard"] #workspace{display:contents}.dashboard-hero{grid-column:1/-1;order:1;min-height:145px}.metrics{grid-column:1/-1;order:2;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:0}.dashboard-jobs{grid-column:1;order:3;align-self:start}.nora-rail{grid-column:2;grid-row:3/6;align-self:start}.dashboard-bottom{grid-column:1;order:4;grid-template-columns:1fr;margin-top:0}.demo-line{grid-column:1;order:5}.dashboard-jobs-head h2{font-size:23px}.dashboard-tabs{order:3;width:100%}.dashboard-jobs .table-wrap{overflow:auto}.compact-table{min-width:520px}.compact-table .cargo-col{display:none}.compact-table .job-customer{display:none}.dashboard-hero h1{font-size:42px}.dashboard-hero p{font-size:14px}.metric-value{font-size:26px}.metric-label{font-size:10px}.metric-icon{width:33px;height:39px}.metric{padding:13px 10px;gap:8px;min-height:129px}.metric-note{font-size:9px}.nora-cover{height:300px}.nora-brand{left:14px;top:18px}.nora-name{font-size:24px}.nora-caption{font-size:7px}.nora-signature{top:118px;left:16px}.nora-signature p{font-size:17px}.nora-greeting{margin-left:12px;max-width:260px;padding:12px;margin-top:-77px}.nora-greeting h3{font-size:16px}.nora-greeting p{font-size:11px}.nora-body{padding:0 11px 11px}.priority-text strong{font-size:10px}.priority-text small{font-size:9px}.priority-when{font-size:8px}.priority-icon{width:28px;height:29px}.priority-row{gap:6px;padding:7px 6px}.rail-section-heading>span{font-size:8px}.nora-actions{gap:4px}.nora-action strong{font-size:8px}.recommendation strong{font-size:10px}.recommendation small{font-size:9px}body:not([data-view="dashboard"]) .work-layout{grid-template-columns:minmax(0,1fr)}body:not([data-view="dashboard"]) .nora-rail{display:none}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.vehicle-grid{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr 1fr}.dashboard-bottom .mail-row{padding:13px 0}.dashboard-bottom .quick-actions{grid-template-columns:1fr 1fr}.finance-bars{gap:13px}.chart-wrap{height:120px}.sidebar .menu-only{display:none}}
/* Mobile: same identity; no hidden Nora and no miniaturized desktop screenshot. */
@media(max-width:760px){
 :root{--sidebar:0px;--rail:0px}
 body{background:#f5f9fc;font-size:14px}.shell{margin-left:0}.app{padding-bottom:74px}
 .sidebar{position:fixed;width:270px;max-width:85vw;transform:translateX(-105%);transition:transform .2s ease;padding:22px 12px 14px;z-index:100;height:100dvh;background:linear-gradient(130deg,#1b2d3d,#0a1d2d 65%,#16344c)}
 .sidebar.mobile-open{transform:translateX(0)}.sidebar .brand-text,.sidebar .nav-label,.sidebar .profile-copy,.sidebar .sidebar-world{display:block}.sidebar .nav-btn>.count{display:inline-flex}.sidebar .brand{padding:0 12px 25px;gap:12px;justify-content:flex-start}.sidebar .brand-name{font-size:22px}.sidebar .brand-tag{font-size:10px}.sidebar .brand-emblem{width:38px}.sidebar .nav-btn{justify-content:flex-start;gap:14px;min-height:43px;font-size:14px}.sidebar .sidebar-utility{padding-top:10px}.sidebar .sidebar-utility .nav-btn{min-height:40px}.sidebar .profile{gap:12px}.sidebar-world{min-height:100px}.world-caption{font-size:9px;bottom:11px}.mobile-shade{z-index:95;background:#081a2f9c;backdrop-filter:blur(3px)}
 .topbar{min-height:79px;padding:13px 15px;background:linear-gradient(115deg,#112b41,#0a1d2e 80%);backdrop-filter:none;color:white;border-bottom:1px solid #47638040;box-shadow:0 3px 15px #13293e18;gap:8px;z-index:70;position:sticky;top:0}
 .mobile-brand{display:flex;align-items:center;gap:9px;flex:1;min-width:0}.mobile-wing{width:33px;height:38px;flex-shrink:0}.mobile-brand>span{color:#f5f4ed;font-size:19px;letter-spacing:2.7px;line-height:1.2;font-weight:500}.mobile-brand small{font-size:9px;letter-spacing:1.6px;display:block;color:#bacad9;margin-top:4px}
 .top-title,.edition-badge,.top-search,.date-block,.top-actions .btn{display:none!important}.top-actions{gap:7px}.topbar .notification-button{display:inline-flex;width:29px;min-width:29px;height:33px;color:#e0e8f6;margin:0}.topbar .notification-button>.icon{width:23px;height:23px}.notification-dot{border-color:#142b3f;font-size:9px;height:18px;min-width:18px;line-height:14px;right:-2px;top:-3px}
 .mobile-profile{display:grid;place-items:center;border:1px solid #6b829a33;width:33px;height:33px;border-radius:50%;background:linear-gradient(145deg,#485e7c,#2c435e);color:#edf3fb;font-size:12px;margin-left:3px}
 .menu-only{display:inline-flex;min-width:29px;width:29px;height:34px;padding:0;color:#e7eff8;font-size:20px}.menu-only>.icon{width:25px;height:25px}
 .work-layout{display:flex;flex-direction:column;gap:13px;padding:0 12px 8px;max-width:none}
 #workspace{width:100%;min-width:0}
 body[data-view="dashboard"] #workspace{display:contents}
 .dashboard-hero{order:1;display:block;width:calc(100% + 24px);margin:0 -12px -6px;min-height:157px;border-radius:0;background:#fff;overflow:hidden}
 .hero-copy{padding:18px 16px 16px}.dashboard-hero .overline{font-size:8px;letter-spacing:2.5px;margin-bottom:6px}.dashboard-hero h1{font-size:34px;line-height:1.05;letter-spacing:-1.2px;max-width:320px;white-space:normal;font-weight:700;margin:0 0 9px;color:#0e1525}.dashboard-hero p{font-size:12px;line-height:1.45;max-width:335px;color:#455f86;margin:0}.hero-scenery{width:44%;height:100%;opacity:.74;top:0;right:0;mask-image:linear-gradient(90deg,transparent,black 36%)}.hero-scenery img{object-position:center 70%}.hero-slogan{display:none}
 .metrics{order:2;grid-template-columns:1fr 1fr;width:100%;gap:10px;margin:0}.metric{display:flex;gap:10px;padding:12px 11px;min-height:104px;align-items:flex-start;box-shadow:0 4px 16px #22456c08;border:1px solid #e7edf4;border-radius:11px;background:#fff}.metric-icon{width:33px;height:40px;border-radius:9px;margin:3px 0 0}.metric-icon .icon{width:24px;height:24px}.metric-inner{min-width:0;flex:1}.metric-label{font-size:10px;min-height:0;margin:0 0 5px;line-height:1.25;color:#435f8e;gap:3px}.metric-label .help-btn{width:14px;height:14px;min-width:14px;font-size:9px;display:none}.metric-value{font-size:23px;line-height:1.16;letter-spacing:-.8px;margin:0;font-weight:700}.metric-note{font-size:8.5px;min-height:0;margin-top:4px;line-height:1.4;color:#517389}.metric .text-btn{font-size:9px;margin-top:5px;line-height:1.1;min-height:17px}.metric .text-btn .icon{width:11px;height:11px}
 .dashboard-jobs{order:3;width:100%;overflow:hidden}.dashboard-jobs-head{padding:13px 13px 9px;gap:7px}.dashboard-jobs-head h2{font-size:20px;letter-spacing:-.45px;gap:7px}.dashboard-jobs-head h2>.icon{width:22px;height:22px}.dashboard-jobs-head>.text-btn{font-size:9px;margin-left:auto;font-weight:400}.dashboard-tabs{order:3;width:100%;gap:4px}.dashboard-tab{font-size:9px;padding:5px 6px;min-height:29px;flex:1;text-align:center}.dashboard-tab span{display:none}
 .card{border-radius:11px}.card-head{padding:15px 13px 10px}.card-head h2{font-size:16px}.card-head h2>.icon{width:20px;height:20px}.card-head .text-btn{font-size:10px}.card-foot{padding:8px 13px;font-size:8px;gap:3px}.dashboard-jobs .card-foot{display:none}
 .table-wrap{padding:0 10px 7px;overflow:auto}.data-table{min-width:550px}.jobs-table{min-width:0;width:100%;display:block;font-size:12px}.jobs-table thead{display:none}.jobs-table tbody{display:block}.jobs-table tr{display:grid;grid-template-columns:minmax(0,1fr) 75px 70px 10px;align-items:center;column-gap:5px;padding:10px 0;border-bottom:1px solid #e3eaf4;min-height:70px}.jobs-table tr:last-child{border-bottom:0}.jobs-table td{padding:0;border:0;background:transparent;height:auto}.jobs-table .job-number,.jobs-table .job-customer,.jobs-table .cargo-col,.jobs-table .job-date{display:none}.jobs-table .job-route{min-width:0;max-width:none}.jobs-table .job-route .row-main{font-size:11px;letter-spacing:-.2px;line-height:1.35;max-width:none;white-space:normal;overflow:visible;text-overflow:clip}.jobs-table .job-route .row-sub{font-size:10px;max-width:100%}.mobile-job-number{display:block;font-size:10px;line-height:1.3;color:#175ce7;font-weight:500;white-space:nowrap;margin-bottom:3px}.mobile-job-date{display:block;font-size:9px;color:#8192ab;line-height:1.2;margin-top:3px}.jobs-table .job-status{text-align:center}.jobs-table .job-status .status{font-size:8.5px;line-height:1.2;padding:5px 6px;gap:4px;white-space:normal;justify-content:center}.jobs-table .status::before{width:4px;height:4px}.jobs-table .job-amount{font-size:10.5px;letter-spacing:-.15px}.jobs-table .job-arrow{min-width:0}.jobs-table .row-open{min-height:35px;padding:0;width:10px}.jobs-table .row-open>.icon{width:10px;height:12px}.compact-table .mobile-extra-row{display:none}
 .nora-rail{order:4;display:block!important;position:relative;top:auto;right:auto;bottom:auto;width:100%;max-width:none;z-index:1;overflow:hidden;border-radius:12px;border-color:#dfe8ef;box-shadow:0 5px 22px #1d4e760e;margin:0}
 .nora-cover{height:238px;background:linear-gradient(115deg,#10263a,#243b51)}.nora-cover img{width:67%;height:100%;object-fit:cover;object-position:50% 25%;right:6%;opacity:1}.nora-cover::after{background:linear-gradient(90deg,#10283ce8,#163047bc 23%,transparent 49%),linear-gradient(0deg,#fff,transparent 13%)}
 .nora-brand{left:15px;top:20px;gap:8px}.nora-wing{width:26px;height:32px}.nora-name{font-size:24px;letter-spacing:4px}.nora-caption{font-size:6px;letter-spacing:1.3px;line-height:1.45;margin-top:4px}.nora-menu{top:12px;right:11px;width:25px;height:25px;font-size:9px}
 .nora-signature{top:116px;left:18px;max-width:113px}.nora-signature p{font-size:16px;line-height:1.35;transform:rotate(-8deg)}.nora-signature span{font-size:37px;margin-top:13px;margin-left:9px}
 .nora-greeting{position:absolute;top:85px;right:11px;left:auto;max-width:none;width:43%;margin:0;padding:12px 11px 11px;border-radius:10px;box-shadow:0 8px 20px #122b4233;background:#ffffffed;backdrop-filter:blur(6px)}.nora-greeting h3{font-size:13px;letter-spacing:-.3px;line-height:1.2;margin-bottom:6px}.nora-greeting p{font-size:10px;line-height:1.5;color:#314c74}.nora-greeting p>span{margin-top:5px}
 .nora-body{padding:0 12px 11px}.rail-section-heading{margin:11px 0 8px}.rail-section-heading>span{font-size:8.5px;letter-spacing:2px}.rail-section-heading>.text-btn{font-size:10px}.priority-row{padding:9px 7px;min-height:56px;gap:9px}.priority-icon{width:32px;height:34px}.priority-text strong{font-size:11px}.priority-text small{font-size:9.5px}.priority-when{font-size:9px}.priority-row>.icon{height:12px;width:12px}.priority-list{gap:6px}
 .nora-actions{grid-template-columns:repeat(4,minmax(0,1fr));margin:12px 0 11px;gap:6px}.nora-action{min-height:57px;padding:8px 3px;gap:5px}.nora-action strong{font-size:9px}.nora-action>.icon{width:21px;height:21px}.recommendation{min-height:55px;padding:8px}.recommendation strong{font-size:11px}.recommendation small{font-size:10px}.recommendation-icon{min-width:33px;height:33px}.rail-chat{margin-top:12px;min-height:44px}.rail-chat input{font-size:12px}.rail-chat button{width:32px;height:32px}.rail-foot{font-size:8px;line-height:1.4}
 .dashboard-bottom{order:5;width:100%;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:10px;margin:0}.dashboard-mail{grid-column:1/-1}.dashboard-financial,.dashboard-quick{grid-column:auto}.dashboard-bottom .card-head{padding:14px 12px 10px;gap:6px}.dashboard-bottom .card-head h2{font-size:13px;gap:5px;letter-spacing:-.4px}.dashboard-bottom .card-head h2>.icon{width:17px;height:17px}.dashboard-mail .card-head h2{font-size:16px}.dashboard-mail .list-pad{padding:0 13px 7px}.dashboard-bottom .mail-row{grid-template-columns:34px minmax(0,1fr) auto;padding:12px 0;min-height:65px;gap:9px}.dashboard-bottom .mail-title{font-size:12px}.dashboard-bottom .mail-subject,.dashboard-bottom .mail-preview{font-size:10.5px}.dashboard-bottom .mail-time{font-size:10px}.dashboard-mail .card-head .text-btn{font-size:11px}
 .mini-finance{padding:0 12px 10px}.finance-total{font-size:23px;letter-spacing:-.7px}.finance-trend{font-size:8px;min-height:27px}.chart-wrap{height:115px;margin-top:3px}.finance-bars{gap:5px;padding-right:16px}.chart-grid span{font-size:6.5px}.bar-group>span{font-size:7px}.chart-foot{font-size:7px;line-height:1.4;margin-top:4px}.quick-actions{gap:7px;padding:0 10px 12px;grid-template-columns:1fr}.quick-actions button{font-size:9px;min-height:36px;padding:8px 7px;gap:6px}.quick-actions button>.icon{width:17px;height:17px}.quick-actions button>.icon:last-child{width:9px;height:9px}.demo-line{order:6;font-size:8px;width:100%;margin:0;padding:0 2px;line-height:1.6}.demo-line>.icon{width:12px;height:12px}
 .hero.compact{padding:20px 2px 4px;margin-bottom:19px;display:block}.hero.compact .overline{font-size:8px;letter-spacing:2px}.hero.compact h1{font-size:31px;line-height:1.15;letter-spacing:-.75px;margin:8px 0}.hero.compact p{font-size:13px;line-height:1.6}.hero.compact .hero-aside{display:flex;margin-top:10px;padding:0}.toolbar{gap:9px;align-items:center}.filter-group{width:100%;gap:8px}.filter-group input{min-width:0;flex:1;width:0;font-size:13px;min-height:42px}.filter-group select{max-width:145px;font-size:12px;min-height:42px}.toolbar .two-btns{width:100%}.toolbar .two-btns .btn{flex:1;font-size:11px;min-height:42px}.btn{font-size:12px;min-height:42px;padding:10px 12px}.btn-small{min-height:34px;padding:7px 9px;font-size:11px}.tabs{margin-bottom:16px;width:100%;scrollbar-width:none;gap:2px}.tab{font-size:11px;padding:11px 11px;min-height:43px}.summary-grid{grid-template-columns:1fr;gap:9px}.summary{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:14px 15px;gap:2px 13px;border-radius:10px}.summary-label{grid-column:1;font-size:12px}.summary-value{grid-column:2;grid-row:1/3;align-self:center;font-size:25px}.summary-note{grid-column:1;font-size:10px}.vehicle-grid,.split,.detail-grid,.field-grid{grid-template-columns:1fr}.card-pad{padding:17px}.vehicle-top{padding:22px}.kv{font-size:12px}.task-title{font-size:12px}.task-meta{font-size:10px}.info-note{font-size:11px}.nora-main-actions{gap:7px}.nora-main-actions .btn{font-size:11px;padding:10px 11px;flex:auto}.assistant-banner{padding:18px;gap:15px;align-items:center}.assistant-banner img{width:85px;height:113px}.assistant-banner h2{font-size:23px}.assistant-banner p{font-size:11px;line-height:1.5}.chat-answer{padding:17px;font-size:13px}.chat-input{flex-wrap:nowrap;gap:8px}.chat-input input{font-size:13px;padding:11px;min-width:0}.chat-input .btn{width:auto;min-width:64px;padding:10px}
 body:not([data-view="dashboard"]) .nora-rail{display:none!important}body[data-view="nora"] #workspace .hero{margin-bottom:16px}
 #app-footer{padding:7px 14px 24px;font-size:8px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;line-height:1.5}.storage-indicator{flex-wrap:wrap}.footer-brand{font-size:8px}.footer-brand span{font-size:8px}
 .mobile-bottom{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;bottom:0;left:0;right:0;z-index:75;background:linear-gradient(115deg,#142d43,#0b1e2f);border-top:1px solid #48617870;box-shadow:0 -5px 18px #17364e12;padding:7px 9px max(8px,env(safe-area-inset-bottom));height:72px}
 .bottom-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:51px;padding:5px 2px;border:1px solid transparent;border-radius:14px;background:none;color:#b2c4d9;font-size:10px;line-height:1.2}.bottom-item>.icon{width:22px;height:22px;stroke-width:1.5}.bottom-item.active{background:linear-gradient(140deg,#d6c49d42,#47607c1a);border-color:#a78d5d55;box-shadow:0 0 14px #c7a9630d;color:#f2d18e}.bottom-item.active>.icon{color:#e6c182;filter:drop-shadow(0 0 5px #ebc68660)}
 .dialog{width:calc(100% - 20px);max-height:calc(100dvh - 26px);border-radius:14px;margin:auto;padding:0}.dialog-head{padding:17px 18px;align-items:flex-start}.dialog-head h2{font-size:23px;line-height:1.25}.dialog-head .icon-btn{height:35px;min-width:35px;flex-shrink:0}#dialog-body{padding:18px}.field input,.field select,.field textarea{font-size:16px;min-height:44px}.field{font-size:12px}.field .hint{font-size:11px}.detail-heading{gap:10px;align-items:flex-start;flex-direction:column}.detail-note{font-size:12px;line-height:1.7;padding:14px}.form-actions{gap:8px;justify-content:stretch;flex-wrap:wrap}.form-actions>.btn,.form-actions>button{flex:1;min-height:44px;font-size:12px}.draft-text{font-size:14px;min-height:230px}.toast{bottom:85px;font-size:12px;max-width:calc(100% - 26px);padding:13px 16px}.login-card{padding:25px}.login-card .field input{font-size:16px}
}
@media(max-width:360px){.mobile-brand>span{font-size:17px;letter-spacing:2px}.mobile-brand small{font-size:8px;letter-spacing:1.3px}.mobile-wing{width:29px}.topbar{padding-left:12px;padding-right:12px}.top-actions{gap:5px}.mobile-profile{display:none}.metric{gap:8px;padding:11px 9px}.metric-value{font-size:21px}.metric-icon{width:29px;height:36px}.metric-icon .icon{width:21px;height:21px}.metric-label{font-size:9px}.metric-note{font-size:8px}.metric .text-btn{font-size:8px}.dashboard-hero h1{font-size:31px;max-width:265px}.dashboard-hero p{font-size:11px;max-width:275px}.jobs-table tr{grid-template-columns:minmax(0,1fr) 65px 61px 8px;column-gap:4px}.jobs-table .job-amount{font-size:10px}.jobs-table .job-route .row-main{font-size:10px}.jobs-table .job-status .status{font-size:8px}.mobile-job-number{font-size:9px}.nora-greeting{padding:10px 9px;width:43%;top:94px}.nora-greeting h3{font-size:12px}.nora-greeting p{font-size:9px}.nora-cover img{right:4%;width:68%}.nora-signature p{font-size:15px}.nora-name{font-size:22px}.nora-caption{font-size:5.5px}.dashboard-jobs-head h2{font-size:18px}.dashboard-jobs-head>.text-btn{font-size:8px}.finance-total{font-size:21px}.dashboard-bottom .card-head h2{font-size:12px}.quick-actions button{font-size:8.5px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{.mobile-bottom,.sidebar,.topbar,.nora-rail,.nora-fab{display:none!important}.shell{margin-left:0}.work-layout{display:block}.dialog{border:0;box-shadow:none;position:static;width:100%;max-height:none}.dialog-head{position:static}}
/* Optical pass against the approved desktop and mobile compositions. */
.nora-cover img{mask-image:linear-gradient(90deg,transparent,black 23%,black)}
.nora-signature p,.nora-signature span{font-family:'Segoe Script','Brush Script MT','Z003','URW Chancery L',Georgia,cursive}
@media(min-width:1491px){.dashboard-hero{min-height:143px}.hero-scenery img{object-fit:fill;object-position:center}.metric{min-height:134px;padding-top:14px;padding-bottom:12px}.metric-note{min-height:17px}.dashboard-jobs-head{min-height:53px;padding-top:12px;padding-bottom:10px}.compact-table td{height:37px;padding-top:7px;padding-bottom:7px}.dashboard-jobs .card-foot{display:none}.dashboard-bottom .mail-row{padding-top:10px;padding-bottom:10px;min-height:63px}.dashboard-bottom .quick-actions button{min-height:36px}.dashboard-bottom .quick-actions{gap:7px}.nora-cover{height:330px}.nora-greeting{margin-top:-90px}.nora-body .rail-section-heading{margin-top:9px}.nora-action{min-height:49px}}
@media(max-width:760px){.hero-scenery img{object-fit:fill}.nora-cover img{width:69%;right:16%;object-position:50% 25%;mask-image:linear-gradient(90deg,transparent,black 22%,black 90%,transparent)}.nora-signature p{font-size:20px;max-width:112px}.nora-signature span{font-size:46px;margin-top:5px}.dashboard-hero h1{max-width:290px}.dashboard-jobs .jobs-table tr{min-height:62px;padding-top:8px;padding-bottom:8px}.metric-note{font-size:8px}.metric .text-btn{display:none}.metric{min-height:97px}.metric-value{margin-top:2px}.dashboard-jobs .card-foot{display:none}}
@media(max-width:760px){.nora-cover img{right:24%}.nora-signature{top:120px;max-width:132px}.nora-signature p{font-size:18px;max-width:none;white-space:nowrap;line-height:1.3}.nora-signature span{font-size:43px;margin-top:7px;line-height:1}}

/* Executive 6.1: additive operational views; approved dashboard, logo and Nora unchanged. */
.ops-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ops-summary .summary{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:17px;min-width:0}
.dispatch-toolbar .filter-group{flex-wrap:wrap;min-width:0;gap:8px}
.dispatch-toolbar select{max-width:300px;min-width:0}
.dispatch-date-label{font-size:10px;color:var(--muted);display:flex;flex-direction:column;gap:3px}
.dispatch-date-label input{width:150px;min-width:0;border:1px solid var(--line);border-radius:7px;padding:7px;color:var(--ink);background:var(--paper)}
.dispatch-board{display:grid;grid-template-columns:repeat(7,minmax(245px,1fr));gap:12px;overflow-x:auto;padding:2px 2px 14px;max-width:100%;overscroll-behavior-x:contain}
.dispatch-board.dispatch-single{grid-template-columns:minmax(0,1fr);overflow:visible}
.dispatch-day{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:#f2f5fa;align-self:start;overflow:hidden}
.dispatch-day-head{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--line);background:var(--paper)}
.dispatch-day-head h3{font-size:18px;margin-top:5px}.dispatch-day-head .overline{font-size:9px}
.dispatch-items{padding:10px;display:grid;gap:10px}.dispatch-empty{font-size:12px;line-height:1.8;color:var(--muted);padding:18px 8px}
.dispatch-job{display:flex;flex-direction:column;gap:7px;text-align:left;min-width:0;width:100%;border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:8px;padding:14px;background:var(--paper);cursor:pointer;overflow-wrap:anywhere}
.dispatch-job:hover{border-color:var(--blue);box-shadow:var(--shadow)}.dispatch-job>strong{font-size:14px;line-height:1.45}
.dispatch-job>span:not(.dispatch-card-foot){font-size:11px}.dispatch-job .dispatch-slot{font-weight:650;color:var(--blue)}
.dispatch-meta{display:flex;align-items:center;gap:7px;color:var(--muted)}.dispatch-meta .icon{width:14px;height:14px;flex-shrink:0}
.dispatch-card-foot{display:flex;justify-content:space-between;align-items:center;gap:6px;flex-wrap:wrap;margin-top:6px}.dispatch-card-foot small{color:var(--muted);font-size:10px}
.dispatch-alert{display:flex;align-items:center;gap:6px;color:#9c681b}.dispatch-alert .icon{width:13px;height:13px}
.dispatch-conflict{border-left-color:#b72e46}.dispatch-conflict .dispatch-alert{color:#a8263d}
.ops-issues{display:grid;gap:8px;margin-top:14px}.ops-issue{padding:11px 13px;border-radius:8px;border:1px solid;display:flex;align-items:flex-start;gap:8px;font-size:12px;line-height:1.65;overflow-wrap:anywhere}
.ops-issue>.icon{width:16px;height:16px;flex:0 0 auto;margin-top:2px}.ops-issue>span{flex:1;min-width:0}.ops-issue .text-btn{flex-shrink:0;font-size:11px}
.ops-error{background:#fff2f4;color:#9c263c;border-color:#f0c5cd}.ops-warning{background:#fff9ee;color:#865b15;border-color:#ecdfc4}
.ops-deadlines{display:grid;gap:10px;margin-top:20px}.ops-deadline{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:14px;border:1px solid;border-radius:8px}
.ops-deadline .task-title{min-width:140px}.ops-deadline-icon>.icon{width:22px;height:22px}.ops-deadline .btn{background:#fff}
.ops-vehicle-note{font-size:11px;color:var(--muted);padding:9px 0;line-height:1.6}.ops-documents{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.ops-documents .btn{max-width:100%;white-space:normal;overflow-wrap:anywhere}
#job-check:empty{display:none}.dialog .field-grid{align-items:start}
@media(max-width:760px){.ops-summary{gap:8px}.ops-summary .summary{padding:12px 9px}.ops-summary .summary-value{font-size:23px}.ops-summary .summary-label{font-size:10px}.ops-summary .summary-note{font-size:9px;line-height:1.5}.dispatch-toolbar{align-items:stretch;flex-direction:column}.dispatch-toolbar select{max-width:100%;width:100%}.dispatch-toolbar .filter-group{width:100%}.dispatch-toolbar .btn{font-size:11px;padding:8px 10px}.dispatch-date-label input{width:138px}.dispatch-board{grid-template-columns:repeat(7,minmax(235px,82vw));gap:9px}.dispatch-single{grid-template-columns:minmax(0,1fr)}.ops-issue{flex-wrap:wrap}.ops-issue .text-btn{margin-left:24px}.ops-deadline{gap:9px}.ops-deadline .task-title{flex-basis:75%}.ops-deadline .btn{font-size:11px}.ops-summary .summary-label{white-space:normal}.dispatch-board.dispatch-single .dispatch-job{max-width:100%}}

.dispatch-board-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.dispatch-board-controls .btn{font-size:11px}
