@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{--bg:#f4f5f2;--paper:#fff;--paper-2:#fafbf9;--ink:#20251f;--sub:#656d64;--muted:#8d958b;--line:#e5e8e2;--green:#43816b;--green-bg:#eaf4ef;--amber:#a96d00;--amber-bg:#fff3d9;--red:#b55249;--red-bg:#f9ecea;--shadow:0 10px 30px #24311e0b;font-family:'DM Sans',Arial,sans-serif;color:var(--ink)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);font-size:13px}button,input{font:inherit}button{color:inherit;cursor:pointer}.skip{position:absolute;left:-9999px;top:8px;background:white;padding:10px;z-index:50}.skip:focus{left:8px}.shell{min-height:100vh;display:grid;grid-template-columns:246px minmax(0,1fr)}
.sidebar{background:#fff;border-right:1px solid var(--line);height:100vh;position:sticky;top:0;display:flex;flex-direction:column;padding:23px 14px 10px;z-index:20}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);padding:0 10px 25px}.brand img{width:34px;height:34px;object-fit:contain}.brand b{font:800 16px Manrope,sans-serif;display:block}.brand small{font-size:8px;letter-spacing:.18em;color:var(--muted);font-weight:700}.company{border:1px solid var(--line);border-radius:11px;padding:9px;display:flex;align-items:center;gap:9px;margin-bottom:24px}.company-mark{width:32px;height:32px;border-radius:9px;background:var(--flow-brand-soft);color:#4d3b10;display:grid;place-items:center;font:800 17px Manrope}.company b,.company small,.user b,.user small,.help b,.help small{display:block}.company b{font-size:11px}.company small,.user small,.help small{font-size:9px;color:var(--muted);margin-top:2px}.chev{margin-left:auto;color:#9ba097;font-size:16px}.nav-caption{font-size:9px;letter-spacing:.13em;color:#999f96;font-weight:700;padding:0 11px;margin:0 0 7px}.nav-caption.second{margin-top:25px}.nav{border:0;background:transparent;display:flex;align-items:center;gap:10px;padding:10px 11px;border-radius:8px;text-align:left;color:#60685f;width:100%;font-size:12px;margin:2px 0}.nav>span{width:18px;color:#767e74;text-align:center;font-size:15px}.nav:hover{background:#f6f7f5}.nav.active{background:var(--flow-brand-soft);color:#4d3b10;font-weight:700}.nav.active>span{color:#8b6200}.count{font-style:normal;margin-left:auto;background:white;border-radius:10px;padding:2px 7px;color:#8b6200;font-size:10px}.sidebar-bottom{margin-top:auto}.help{display:flex;align-items:center;gap:9px;background:#f8f9f7;border:1px solid var(--line);padding:10px;border-radius:10px;margin:0 1px 12px}.help>span{width:24px;height:24px;border-radius:50%;background:#e7eee8;color:#4c755e;display:grid;place-items:center;font-weight:700}.help b{font-size:10px}.user{width:100%;border:0;border-top:1px solid var(--line);background:#fff;padding:11px 4px 2px;display:flex;align-items:center;gap:9px;text-align:left}.user b{font-size:10px}.avatar,.top-user{width:31px;height:31px;border-radius:50%;background:#e8ece7;color:#526752;display:grid;place-items:center;font-size:10px;font-weight:700;flex:none}
.workspace{min-width:0}.topbar{height:62px;background:#ffffffd9;backdrop-filter:blur(10px);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 30px;gap:14px;position:sticky;top:0;z-index:10}.crumb{font-size:11px;color:var(--muted)}.crumb span{margin:0 8px;color:#c6cbc4}.crumb b{color:var(--ink);font-weight:600}.top-actions{margin-left:auto;display:flex;align-items:center;gap:17px}.state-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--flow-brand);margin-right:5px}.bell{border:0;background:none;color:#70776e;font-size:18px;position:relative}.bell em{position:absolute;right:-4px;top:-2px;width:13px;height:13px;background:#d66e5e;color:white;border-radius:50%;font:8px/13px Arial}.top-user{width:29px;height:29px}.hamb{display:none;border:0;background:none}.page{max-width:1460px;margin:0 auto;padding:27px 30px 40px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-bottom:21px}.eyebrow{font-size:9px;text-transform:uppercase;font-weight:700;letter-spacing:.15em;color:#9a700a;margin-bottom:5px}.page h1{font:700 24px/1.2 Manrope,sans-serif;letter-spacing:-.035em;margin:0}.intro{color:var(--sub);font-size:11px;margin:6px 0 0}.actions{display:flex;gap:8px;align-items:center}.btn{border:1px solid var(--line);background:#fff;border-radius:8px;padding:9px 12px;font-size:10px;font-weight:600;white-space:nowrap}.btn:hover{border-color:#d2c08b}.btn.primary{background:var(--flow-brand);border-color:var(--flow-brand);color:#332500}.btn.primary:hover{filter:brightness(.97)}.btn.ghost{background:transparent}.grid{display:grid;gap:15px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:17px}.card{background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.stat{padding:15px 16px}.stat-top{display:flex;justify-content:space-between;color:var(--sub);font-size:10px}.stat-icon{width:28px;height:28px;background:#f5f6f3;border-radius:8px;display:grid;place-items:center;color:#717c6f}.stat strong{display:block;font:700 24px Manrope;margin:10px 0 3px;letter-spacing:-.04em}.stat small{font-size:9px;color:var(--muted)}.stat small b{color:var(--green)}.columns{grid-template-columns:minmax(0,1.65fr) minmax(260px,.8fr)}.card-head{display:flex;align-items:center;justify-content:space-between;padding:16px 17px 12px}.card-head h2{font:700 13px Manrope;margin:0}.card-head p{font-size:9px;color:var(--muted);margin:4px 0 0}.text-btn{border:0;background:none;color:#8a650b;font-size:10px;font-weight:600}.order-row{padding:14px 17px;border-top:1px solid #eff1ed;display:grid;grid-template-columns:minmax(130px,1.4fr) minmax(145px,1.2fr) minmax(80px,.8fr) auto;align-items:center;gap:12px}.order-id{font-size:10px;font-weight:700}.order-id small{display:block;font-weight:400;color:var(--muted);margin-top:4px}.product-count{font-size:10px;color:var(--sub)}.progress{display:flex;align-items:center;gap:7px}.progress-track{height:5px;background:#edf0ec;border-radius:8px;flex:1;overflow:hidden}.progress-track i{display:block;height:100%;background:var(--green);border-radius:8px}.progress small{font-size:9px;color:var(--sub);white-space:nowrap}.tag{display:inline-flex;align-items:center;gap:5px;border-radius:15px;padding:5px 8px;font-size:9px;font-weight:600;white-space:nowrap}.tag.green{background:var(--green-bg);color:#42735f}.tag.amber{background:var(--amber-bg);color:#926200}.tag.red{background:var(--red-bg);color:#a95149}.tag.gray{background:#f0f2ef;color:#6a726a}.dot{height:6px;width:6px;border-radius:50%;background:currentColor}.station-list{padding:0 17px 10px}.station{display:flex;gap:10px;align-items:center;padding:11px 0;border-top:1px solid #eff1ed}.station-icon{height:29px;width:29px;display:grid;place-items:center;border-radius:8px;background:#f5f6f3;font-size:13px;color:#64705f}.station-info{min-width:0;flex:1}.station-info b{font-size:10px;display:block}.station-info small{font-size:9px;color:var(--muted)}.station-num{font:700 12px Manrope}.alert-list{padding:0 17px 15px}.alert{display:flex;gap:9px;padding:10px 0;border-top:1px solid #eff1ed}.alert .warning{color:#b27612;font-size:13px}.alert b{font-size:10px;display:block}.alert small{font-size:9px;color:var(--muted)}.section-title{font:700 13px Manrope;margin:20px 0 10px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:720px}.table th{text-align:left;padding:11px 14px;font-size:9px;color:#818981;font-weight:600;border-bottom:1px solid var(--line);background:#fafbf9}.table td{padding:13px 14px;border-bottom:1px solid #eff1ed;font-size:10px}.table tr:last-child td{border:0}.table .muted{color:var(--muted)}.filterbar{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.search{border:1px solid var(--line);background:white;border-radius:8px;padding:8px 10px;min-width:230px;font-size:10px}.select{border:1px solid var(--line);background:white;border-radius:8px;padding:8px 10px;font-size:10px;color:var(--sub)}
.two-col{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr)}.upload-zone{margin:0 17px 17px;border:1px dashed #d4b967;border-radius:10px;background:#fffcf3;text-align:center;padding:23px 15px}.upload-icon{font-size:22px;color:#aa7c0a}.upload-zone h3{font:700 12px Manrope;margin:8px 0 4px}.upload-zone p{font-size:9px;color:var(--sub);margin:0 0 13px}.upload-zone input{display:none}.file-label{display:inline-block}.extraction{padding:0 17px 16px}.extraction h3{font:700 12px Manrope;margin:4px 0 11px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.field label{font-size:8px;color:var(--muted);display:block;margin-bottom:4px}.field input{width:100%;border:1px solid var(--line);border-radius:6px;padding:8px;font-size:10px;color:var(--ink);background:#fff}.notice{margin:12px 17px;padding:10px;border-radius:8px;background:#fff8e8;color:#775c1c;font-size:9px;line-height:1.5}.map-list{padding:0 17px 17px}.map-row{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 0;border-top:1px solid #eff1ed}.map-num{font:700 10px Manrope;color:#989f96}.map-row b{font-size:10px;display:block}.map-row small{font-size:8px;color:var(--muted)}.confidence{font-size:8px;border-radius:10px;padding:4px 7px;background:var(--green-bg);color:#477760}.confidence.review{background:var(--amber-bg);color:#946a11}.stepper{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin:16px 0 18px}.step{position:relative;text-align:center;padding:11px 4px 9px;background:#fff;border:1px solid var(--line);border-radius:9px;color:var(--sub)}.step b{display:block;font:700 9px Manrope;margin-top:5px}.step small{font-size:8px;color:var(--muted)}.step em{font-style:normal;display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#f1f3ef;font-size:9px}.step.done em{background:var(--green-bg);color:var(--green)}.step.current{border-color:#e6c56b;background:#fffaf0}.step.current em{background:var(--flow-brand-soft);color:#775400}.checklist{padding:0 17px 16px}.check-row{display:flex;align-items:center;gap:10px;padding:11px 0;border-top:1px solid #eff1ed}.check-row input{accent-color:#43816b;width:15px;height:15px}.check-row b{font-size:10px}.check-row small{font-size:8px;color:var(--muted);display:block;margin-top:3px}.check-row .right{margin-left:auto}.order-detail-head{display:flex;align-items:center;gap:12px}.back{border:1px solid var(--line);background:#fff;border-radius:8px;width:34px;height:34px;font-size:16px}.detail-grid{grid-template-columns:minmax(0,1.4fr) minmax(270px,.7fr)}.position{padding:14px 17px;border-top:1px solid #eff1ed;display:flex;align-items:center;gap:12px}.position b{font-size:10px;display:block}.position small{font-size:9px;color:var(--muted)}.pos-number{width:30px;height:30px;border-radius:8px;background:#f5f6f3;display:grid;place-items:center;font:700 10px Manrope;flex:none}.position .right{margin-left:auto;text-align:right}.position .right strong{display:block;font-size:10px}.detail-data{padding:4px 17px 16px}.data-item{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #eff1ed;font-size:9px}.data-item span{color:var(--muted)}.block-message{padding:13px;border:1px solid #f1d6d1;background:#fff7f5;border-radius:9px;color:#954b42;font-size:10px;line-height:1.5;margin:14px 0}.block-message b{display:block;margin-bottom:4px}.timeline{padding:0 17px 15px}.event{display:flex;gap:9px;padding:8px 0;border-top:1px solid #eff1ed;font-size:9px}.event i{width:7px;height:7px;background:#c7a34b;border-radius:50%;margin-top:4px;flex:none}.event small{display:block;color:var(--muted);margin-top:3px}.empty{padding:30px;color:var(--muted);text-align:center;font-size:11px}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%,20px);background:#243126;color:#fff;padding:10px 15px;border-radius:9px;opacity:0;transition:.2s;z-index:99;font-size:10px;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}.overlay{display:none;position:fixed;inset:0;background:#17201875;z-index:60;align-items:center;justify-content:center;padding:20px}.overlay.open{display:flex}.dialog{position:relative;width:min(520px,100%);background:#fff;border-radius:14px;padding:22px;box-shadow:0 20px 60px #0003}.dialog h2{font:700 16px Manrope;margin:0 0 8px}.dialog p{font-size:11px;color:var(--sub);line-height:1.6}.dialog .x{position:absolute;right:14px;top:10px;border:0;background:none;font-size:22px;color:var(--muted)}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.mobile-nav-scrim{display:none}
@media(max-width:1050px){.stats{grid-template-columns:repeat(2,1fr)}.columns,.two-col,.detail-grid{grid-template-columns:1fr}.stepper{grid-template-columns:repeat(4,1fr)}.sidebar{width:246px;position:fixed;left:-260px;transition:left .2s;box-shadow:8px 0 30px #0001}.sidebar.open{left:0}.hamb{display:block}.shell{display:block}.workspace{min-height:100vh}.mobile-nav-scrim.show{display:block;position:fixed;inset:0;background:#1115;z-index:15}}
@media(max-width:650px){.topbar{padding:0 15px;height:56px}.page{padding:21px 14px 30px}.page h1{font-size:21px}.page-head{align-items:flex-start}.actions{width:100%}.page-head{flex-direction:column}.stats{gap:9px}.stat{padding:12px}.stat strong{font-size:21px}.order-row{grid-template-columns:1fr auto;gap:6px}.order-row .progress{grid-column:1/-1}.order-row .products{grid-column:1}.table{min-width:670px}.card-head{padding:14px}.intro{font-size:10px}.stepper{grid-template-columns:repeat(4,1fr)}.crumb{font-size:9px}.top-actions{gap:10px}.field-grid{grid-template-columns:1fr 1fr}}
/* PDF intake upload control */
.upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;width:calc(100% - 34px);min-height:196px;margin:0 17px 17px;padding:22px 18px;border:1.5px dashed #d6c184;border-radius:11px;background:linear-gradient(180deg,#fffdf7,#fffaf0);text-align:center;transition:background .16s,border-color .16s,box-shadow .16s}
.upload-zone.dragover{border-color:var(--flow-brand);background:#fff4d7;box-shadow:0 0 0 3px #f8b00424}
.upload-zone .upload-icon{width:38px;height:38px;border-radius:12px;background:var(--flow-brand-soft);display:grid;place-items:center;font-size:21px;color:#8b6200;margin-bottom:10px}
.upload-zone h3{font:700 13px Manrope;margin:0 0 5px}
.upload-zone p{font-size:10px;color:var(--sub);margin:0}
.upload-actions{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:14px}
.file-label{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:36px;overflow:hidden}
.upload-zone .file-label .file-input{display:block!important;position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.file-label:has(.file-input:focus-visible){outline:3px solid var(--flow-focus);outline-offset:3px}
.upload-zone .upload-status{max-width:100%;margin-top:11px;color:var(--muted);font-size:9px;overflow-wrap:anywhere}
.clear-file[hidden]{display:none}
/* Make every work-order table row a clear pointer target. */
tr.order-selectable{cursor:pointer;transition:background-color .14s ease}
tr.order-selectable:hover{background:#fffaf0}
tr.order-selectable:active{background:var(--flow-brand-soft)}
.order-link{border:0;background:none;padding:0;color:#8b6200;font-weight:700;font-size:10px;text-align:left;text-decoration:underline;text-decoration-color:#d8c48b;text-underline-offset:3px;cursor:pointer}
.order-link:hover{color:#614400;text-decoration-color:currentColor}
.order-link:focus-visible{outline:3px solid var(--flow-focus);outline-offset:3px;border-radius:2px}

.field input:disabled{background:#f5f6f3;color:#8a9089}.field small{display:block;margin-top:4px;font-size:8px;line-height:1.4;color:var(--muted);overflow-wrap:anywhere}.map-row>div{min-width:0}.map-row small{display:block;line-height:1.45;margin-top:3px;overflow-wrap:anywhere}.parser-warning{background:#fff1ec;color:#8a4034}.equipment-checks{margin:5px 0 16px;border-top:1px solid #eff1ed}.equipment-heading{padding:11px 0 7px}.equipment-heading b{font-size:10px;display:block}.equipment-heading small{font-size:8px;color:var(--muted)}.equipment-row{align-items:flex-start;padding:10px 0}.equipment-row input{flex:none;margin-top:2px}.equipment-row span:not(.right){min-width:0;flex:1}.equipment-row .right{margin-left:auto;white-space:nowrap;font-size:9px}.equipment-row small{overflow-wrap:anywhere}.equipment-empty{font-size:9px;color:var(--muted);padding:8px 0}.btn:disabled{opacity:.5;cursor:not-allowed}
.order-flow{margin:0 0 15px;overflow:hidden}.order-flow .card-head{align-items:center}.flow-overall{font:700 10px Manrope;color:var(--sub);white-space:nowrap}.order-flow-steps{list-style:none;display:grid;grid-template-columns:repeat(7,minmax(100px,1fr));gap:0;margin:0;padding:6px 17px 20px;overflow-x:auto}.order-flow-step{position:relative;display:flex;min-width:100px;flex-direction:column;align-items:center;text-align:center;padding:0 8px;color:var(--muted)}.order-flow-step:not(:last-child)::after{content:"";position:absolute;top:12px;left:calc(50% + 13px);right:calc(-50% + 13px);height:2px;background:#e7e9e4}.order-flow-step.done:not(:last-child)::after{background:var(--green)}.flow-node{z-index:1;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #d9ddd6;color:var(--muted);font:700 10px Manrope}.order-flow-step.done{color:var(--green)}.order-flow-step.done .flow-node{background:var(--green);border-color:var(--green);color:#fff}.order-flow-step.current{color:var(--ink)}.order-flow-step.current .flow-node{background:var(--flow-brand-soft);border:2px solid var(--flow-brand);color:#775400}.order-flow-step b{font:700 9px Manrope;line-height:1.35;margin-top:8px}.order-flow-step small{font-size:8px;color:var(--muted);margin-top:4px;white-space:nowrap}.order-flow-step.current small{color:var(--sub)}
@media(max-width:650px){.order-flow .card-head{align-items:flex-start;flex-direction:column;gap:6px}.order-flow-steps{grid-template-columns:repeat(7,112px);padding-left:12px;padding-right:12px}.flow-overall{font-size:9px}}
