.mill-workspace{--mill-line:#dfe6df;--mill-muted:#637369;color:#182a20}.mill-page-heading{justify-content:space-between;align-items:center;gap:24px;margin:0 0 24px;display:flex}.mill-eyebrow{color:#607365;letter-spacing:1.8px;text-transform:uppercase;margin-bottom:8px;font-size:10px;font-weight:750;display:block}.mill-page-heading h1{font:700 clamp(26px,3vw,36px)/1.15 var(--font-display);letter-spacing:-1.2px;margin:0 0 10px}.mill-page-heading p{max-width:650px;color:var(--mill-muted);margin:0;font-size:14px}.mill-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.mill-workspace a{color:#175539;text-decoration:none}.mill-workspace a:hover{text-decoration:underline}.mill-workspace a.btn{color:#fff;text-decoration:none}.mill-workspace a.btn.secondary{color:#175539}.mill-journey{background:#eaf0e9;border:1px solid #dce5da;border-radius:12px;align-items:center;gap:4px;margin-bottom:26px;padding:5px;display:flex}.mill-journey a{color:#5e6d62;white-space:nowrap;border-radius:8px;flex:1;align-items:center;gap:10px;padding:12px 14px;font-size:12px;font-weight:650;display:flex}.mill-journey a.current{color:#175539;background:#fff;box-shadow:0 2px 5px #193b2010}.mill-journey a span{opacity:.65;font-size:10px}.mill-journey a b{color:#92a393;margin-inline-start:auto}.mill-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.mill-metric{border:1px solid var(--mill-line);background:#fff;border-radius:14px;padding:22px;position:relative}.mill-metric>span{color:#617369;margin-bottom:10px;font-size:12px;display:block}.mill-metric>strong{font:700 clamp(22px,2.8vw,30px)/1.2 var(--font-display);letter-spacing:-.6px;color:#174c32;font-variant-numeric:tabular-nums;display:block}.mill-metric small{color:#758077;margin-top:10px;font-size:11px;display:block}.mill-metric.warm{background:#fffaf0;border-color:#e9ddc5}.mill-panel,.mill-run{border:1px solid var(--mill-line);background:#fff;border-radius:14px;margin-bottom:22px;padding:24px;box-shadow:0 2px 6px #183c2410}.mill-panel-heading,.mill-run-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.mill-panel-heading h2,.mill-run h2{letter-spacing:-.35px;margin:0 0 5px;font-size:19px}.mill-panel-heading p,.mill-start-form p{color:var(--mill-muted);margin:0;font-size:12px}.mill-panel h3{margin:0 0 6px}.mill-run-heading{border-bottom:1px solid var(--mill-line);padding-bottom:18px}.mill-status{color:#536259;text-transform:capitalize;white-space:nowrap;background:#eef2ee;border-radius:20px;padding:5px 10px;font-size:11px;display:inline-flex}.mill-status.in_progress{color:#8a621a;background:#fff4d9}.mill-status.completed{color:#226037;background:#e6f3e9}.mill-status.cancelled{color:#9e4939;background:#f9eae6}.mill-run-layout{grid-template-columns:220px minmax(0,1fr);gap:28px;display:grid}.mill-step-list{margin:0;padding:0;list-style:none}.mill-step-list li{border-radius:10px;align-items:flex-start;gap:12px;padding:13px 10px;display:flex;position:relative}.mill-step-list li>span,.mill-step-number{color:#839085;border:1px solid #dce3dc;border-radius:50%;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:11px;display:grid}.mill-step-list li strong{color:#657169;font-size:12px;font-weight:600}.mill-step-list li small{color:#849086;margin-top:3px;font-size:10px;display:block}.mill-step-list li.current{background:#eaf3eb}.mill-step-list li.current strong{color:#174b2f}.mill-step-list li.current>span,.mill-step-list li.done>span{color:#fff;background:#175539;border-color:#175539}.mill-step-list li.done strong{color:#30593c}.mill-step-content{min-width:0;padding:8px 0 0}.mill-instruction{color:#617267;max-width:650px;margin:6px 0 24px;line-height:1.7}.mill-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.mill-field{color:#445c4d;flex-direction:column;gap:7px;min-width:0;margin-bottom:14px;font-size:12px;font-weight:600;display:flex}.mill-field input,.mill-field select,.mill-field textarea{color:#1a3022;background:#fff;border:1px solid #cfdad0;border-radius:8px;width:100%;min-width:0;padding:11px 12px;font:400 14px/1.4 inherit}.mill-field textarea{resize:vertical;min-height:76px}.mill-field input[type=color]{height:44px;padding:4px}.mill-field input[type=checkbox],.mill-inline-check input{accent-color:#175539;width:18px;height:18px}.mill-field input:disabled,.mill-field select:disabled{background:#f1f3f0}.mill-field b{color:#9d5a24}.mill-field.checkbox-field{border:1px solid #dfe7de;border-radius:9px;flex-direction:row-reverse;grid-column:1/-1;justify-content:flex-end;align-items:center;padding:14px}.mill-field.compact{width:170px;margin:0}.mill-form-footer{border-top:1px solid #e4eae2;justify-content:space-between;align-items:center;gap:20px;margin-top:24px;padding-top:20px;display:flex}.mill-form-footer>span{color:#6c7c70;max-width:330px;font-size:11px}.mill-notice{border:1px solid #d5e5d6;color:#30583c;white-space:normal;background:#edf5ee;border-inline-start:3px solid #467852;border-radius:8px;margin-bottom:18px;padding:13px 16px;font-size:13px}.mill-notice.is-error{color:#973e29;background:#fff2ed;border-color:#edc6b7}.mill-notice button{margin-inline-start:10px}.mill-loading{color:#657169;text-align:center;padding:40px}.mill-empty{text-align:center;color:#708074;padding:48px 20px}.mill-empty>span{color:#a9bdaa;font-size:32px}.mill-empty h3{color:#3e5d47;margin:14px 0 8px;font-size:16px}.mill-empty p{max-width:440px;margin:auto;font-size:13px;line-height:1.8}.mill-table-scroll{overflow-x:auto}.mill-workspace table{border-collapse:collapse;width:100%}.mill-workspace th{letter-spacing:.7px;color:#667a69;white-space:nowrap;background:#f4f7f2;padding:12px;font-size:10px}.mill-workspace td{border-bottom:1px solid #ecf0e9;padding:15px 12px;font-size:12px}.mill-workspace tbody tr:hover{background:#fafcf8}.mill-cell-note{color:#7c897e;margin-top:4px;font-size:10px;display:block}.mill-progress{background:#e9eee6;border-radius:5px;width:90px;height:5px;margin-bottom:5px;display:block;overflow:hidden}.mill-progress i{background:#5a8a5e;height:100%;display:block}.mill-pagination{color:#7b877b;align-items:center;gap:8px;margin-top:18px;font-size:11px;display:flex}.mill-pagination span{margin-inline-end:auto}.mill-start-form{align-items:center;gap:24px;display:flex}.mill-start-form>div{flex:1}.mill-start-form .mill-field{margin:0}.mill-help-strip{color:#617261;border:1px dashed #cbd9c9;border-radius:10px;flex-wrap:wrap;align-items:center;gap:14px;padding:16px 20px;font-size:12px;display:flex}.mill-help-strip strong{color:#33593d}.mill-help-strip a{margin-inline-start:auto;font-weight:600}.mill-weight-summary{background:#f4f7f1;border-radius:10px;gap:24px;margin-bottom:20px;padding:16px;display:flex}.mill-weight-summary span{color:#647762;font-size:11px}.mill-weight-summary b{color:#1c4a2c;margin-top:5px;font-size:16px;display:block}.mill-receipt-proof{background:#edf5e9;border:1px solid #cfe0c9;border-radius:10px;margin-bottom:18px;padding:18px}.mill-receipt-proof .mill-actions{font-size:11px}.mill-history{border-top:1px solid #e3e9df;margin-top:24px;padding-top:18px}.mill-history summary,.mill-profile-editor summary,.mill-editor-step summary{cursor:pointer;color:#49634d;font-size:12px;font-weight:600}.mill-history article{border-inline-start:2px solid #d4dfcf;margin:12px 0;padding:12px 16px}.mill-history small{color:#7a8879;display:block}.mill-history dl{grid-template-columns:1fr 1fr;gap:10px;display:grid}.mill-history dt{color:#718071;font-size:10px}.mill-history dd{overflow-wrap:anywhere;margin:0;font-size:12px}.mill-cancel{margin-top:24px}.mill-cancel form{margin-top:12px}.mill-tabs{border-bottom:1px solid #e1e8dd;gap:22px;margin:0 0 24px;display:flex;overflow-x:auto}.mill-tabs button{color:#6c7c6b;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:10px 0 15px;font:600 13px inherit}.mill-tabs button[aria-selected=true]{color:#195234;border-bottom-color:#195234}.mill-filters{align-items:flex-end;gap:18px;margin-bottom:12px;display:flex}.mill-filters .mill-field{flex:1}.mill-filters>button{margin-bottom:14px}.mill-positive{color:#2c7141}.mill-negative{color:#a25a35}.mill-setup-links{grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:24px;display:grid}.mill-setup-links a{background:#eaf0e6;border:1px solid #dce4d7;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:16px;font-size:11px;display:flex}.mill-editor-step{background:#fafcf8;border:1px solid #dfe7da;border-radius:10px;margin-top:18px;padding:20px}.mill-editor-step-top{align-items:center;gap:16px;display:flex}.mill-editor-step-top .mill-field{flex:1}.mill-editor-field{align-items:center;gap:14px;padding-top:12px;display:flex}.mill-editor-field .mill-field{flex:1}.mill-inline-check{align-items:center;gap:8px;margin:12px 0;font-size:12px;display:flex}.mill-insert-step{color:#487347;cursor:pointer;background:#fff;border:1px dashed #baceb7;border-radius:8px;width:100%;margin-top:18px;padding:10px;display:block}.mill-muted{color:#788777;font-size:12px}.mill-template-layout{grid-template-columns:minmax(250px,1fr) 1.1fr;gap:30px;display:grid}.mill-paper-preview{background:#fff;border:1px solid #dfe3d9;align-self:start;min-height:540px;padding:30px;box-shadow:0 8px 24px #22361915}.mill-paper-preview>small{letter-spacing:1px;color:#8d9887;font-size:9px}.mill-paper-head{border-bottom:3px solid var(--document-accent);margin-top:22px;padding-bottom:12px}.mill-paper-head strong{color:var(--document-accent);font-size:17px}.mill-paper-head p{color:#697365;margin:5px 0;font-size:11px}.mill-paper-head h2{color:var(--document-accent);margin-top:24px}.mill-paper-meta{justify-content:space-between;margin:20px 0;font-size:10px;display:flex}.mill-paper-table{background:var(--document-accent);color:#fff;justify-content:space-between;padding:12px;font-size:10px;display:flex}.mill-paper-signatures{gap:16px;margin:100px 0 20px;display:flex}.mill-paper-signatures span{text-align:center;border-top:1px solid #9ca493;flex:1;padding-top:8px;font-size:9px}.mill-paper-footer{white-space:pre-wrap;color:#697366;font-size:10px}.mill-profile-editor{border:1px solid #dce5d6;border-radius:10px;margin-bottom:24px;padding:16px}.mill-profile-editor form{margin-top:20px}.mill-workflow-gate{margin:4px;display:inline-block}.mill-check-dialog{border:0;border-radius:14px;width:min(1000px,94vw);max-height:90vh;padding:0}.mill-check-dialog::backdrop{background:#0e281b88}.mill-check-dialog .mill-run{text-align:start;white-space:normal;margin:0}.mill-home-grid{grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:22px;display:grid}.mill-hero{color:#fff;background:linear-gradient(120deg,#153d29,#245d3a);border-radius:14px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;padding:28px;display:flex}.mill-hero h2{color:#fff;letter-spacing:-.4px;margin:8px 0;font-size:24px}.mill-hero p{color:#c4d7c2;max-width:510px;margin:0;font-size:12px}.mill-hero .mill-eyebrow{color:#b0c8ae}.mill-hero .btn{white-space:nowrap;background:#e9c778;border-color:#e9c778;color:#24321e!important}.mill-task-row{border-bottom:1px solid #e8eee3;align-items:center;gap:14px;padding:16px 0;display:flex}.mill-task-row>span{color:#44713e;background:#edf2e8;border-radius:10px;padding:10px 13px;font-size:14px}.mill-task-row div{flex:1}.mill-task-row strong{font-size:12px;display:block}.mill-task-row small{color:#788473;font-size:11px}.mill-task-row a{font-size:12px;font-weight:600}@media (width>=1400px){.main:has(.mill-workspace){max-width:1600px}}@media (width<=1000px){.mill-page-heading{flex-direction:column;align-items:flex-start;gap:16px}.mill-run-layout{grid-template-columns:180px minmax(0,1fr);gap:18px}.mill-setup-links{grid-template-columns:repeat(3,1fr)}.mill-home-grid{grid-template-columns:1fr}}@media (width<=650px){.mill-panel,.mill-run{padding:16px}.mill-metrics{grid-template-columns:1fr;gap:10px}.mill-metric{padding:18px}.mill-journey{overflow-x:auto}.mill-journey a{padding:10px}.mill-journey a b{display:none}.mill-run-layout{grid-template-columns:1fr}.mill-step-list{gap:5px;padding-bottom:12px;display:flex;overflow-x:auto}.mill-step-list li{min-width:155px;padding:10px}.mill-form-grid{grid-template-columns:1fr;gap:4px}.mill-form-footer,.mill-panel-heading,.mill-run-heading{flex-wrap:wrap;align-items:flex-start}.mill-template-layout{grid-template-columns:1fr}.mill-editor-step-top,.mill-editor-field{flex-wrap:wrap}.mill-editor-step-top .mill-field{flex-basis:70%}.mill-start-form{flex-direction:column;align-items:stretch;gap:16px}.mill-filters{flex-wrap:wrap;gap:10px}.mill-filters .mill-field{flex-basis:40%}.mill-setup-links{grid-template-columns:1fr 1fr}.mill-weight-summary{flex-wrap:wrap;gap:16px}.mill-hero{flex-direction:column;align-items:flex-start;padding:24px}}@media print{.sidebar,.workspace-header,.mill-journey,.mill-page-heading .mill-actions{display:none}.main{padding:0}.mill-panel{box-shadow:none}}:root{--primary:#175539;--primary-dark:#11402b;--primary-darker:#0b2c1e;--primary-light:#1d6a48;--primary-soft:#e9f2ec;--accent:#eba63b;--accent-deep:#d18a1f;--accent-soft:#fdf3e0;--bg:#f4f6f2;--card:#fff;--text:#16211c;--text-secondary:#46554c;--muted:#79857c;--danger:#bd3f30;--danger-soft:#fbeae7;--success:#1f7a44;--success-soft:#e2f3e8;--info:#1f5e8d;--info-soft:#e5eff7;--warn:#9a6b14;--warn-soft:#fbf0d9;--border:#e4e9e2;--border-strong:#d5dcd4;--radius:14px;--radius-sm:10px;--shadow-sm:0 1px 2px #122a1d0d, 0 2px 8px #122a1d0a;--shadow-md:0 2px 6px #122a1d0f, 0 10px 32px #122a1d17;--shadow-lg:0 24px 64px #0b201647;--shadow-btn:0 1px 2px #11402b47, 0 4px 14px #17553938;--font-display:"Bricolage Grotesque", "Inter", -apple-system, sans-serif;--sidebar-w:244px;--ease:cubic-bezier(.25, .6, .3, 1)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:radial-gradient(1200px 480px at 85% -10%, #eba63b0d, transparent 60%), var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.55}::selection{background:var(--accent-soft)}.app-shell{min-height:100vh;display:flex}.main{flex:1;min-width:0;max-width:1280px;padding:30px 36px 56px}.sidebar{width:var(--sidebar-w);color:#fff;scrollbar-width:thin;scrollbar-color:#ffffff38 transparent;background:radial-gradient(600px 220px at 110% 0,#eba63b1a,#0000 60%),linear-gradient(178deg,#0f2b1e 0%,#0a2015 62%,#081a12 100%);flex-direction:column;flex-shrink:0;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.brand{border-bottom:1px solid #ffffff14;align-items:center;gap:11px;padding:20px 18px 16px;display:flex}.brand-mark{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-deep) 100%);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex;box-shadow:0 0 0 1px #ffffff24,0 6px 18px #eba63b59}.brand-name{font-family:var(--font-display);letter-spacing:-.3px;font-size:17px;font-weight:800;line-height:1.15}.brand-tag{color:#ffffff80;text-transform:uppercase;letter-spacing:1.6px;margin-top:1px;font-size:9.5px;font-weight:600}.sidebar nav{flex:1;padding:12px 12px 18px}.sidebar nav>a,.nav-section-body a{color:#ffffffb8;transition:background .16s var(--ease), color .16s var(--ease), transform .16s var(--ease);border-radius:9px;align-items:center;gap:10px;margin:1px 0;padding:8px 12px;font-size:13.5px;font-weight:500;text-decoration:none;display:flex;position:relative}.sidebar nav>a:hover,.nav-section-body a:hover{color:#fff;background:#ffffff0f;transform:translate(2px)}.sidebar nav>a.active,.nav-section-body a.active{color:#fff;background:linear-gradient(90deg,#ffffff21,#ffffff12);font-weight:600;box-shadow:inset 0 0 0 1px #ffffff1a}.sidebar nav>a.active:before,.nav-section-body a.active:before{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px;position:absolute;top:50%;left:4px;transform:translateY(-50%);box-shadow:0 0 8px #eba63be6}.nav-icon{text-align:center;opacity:.92;flex-shrink:0;width:20px;font-size:14px}.nav-section{margin:12px 0 2px}.nav-section-header{color:#ffffff61;text-transform:uppercase;letter-spacing:1.4px;cursor:pointer;text-align:left;width:100%;transition:color .16s var(--ease);background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 12px 6px;font-family:inherit;font-size:10px;font-weight:700;display:flex}.nav-section-header:hover{color:#ffffffb3}.nav-caret{flex-shrink:0;width:10px;font-size:7px}.nav-section-body a{padding-left:12px}.sidebar-footer{background:#ffffff0d;border:1px solid #ffffff14;border-radius:12px;align-items:center;gap:10px;margin:10px 12px 14px;padding:10px 12px;display:flex}.avatar{color:#fff;background:linear-gradient(135deg,#2e7d5b,#1d5c43);border:1px solid #ffffff38;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:12px;font-weight:700;display:flex}.sidebar-user{flex:1;min-width:0}.sidebar-user-name{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.sidebar-role{color:#ffffff7a;text-transform:capitalize;font-size:11px}.btn-logout{color:#ffffffd9;cursor:pointer;width:30px;height:30px;transition:background .16s var(--ease), color .16s var(--ease);background:#ffffff14;border:none;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;display:flex}.btn-logout:hover{background:var(--danger);color:#fff}h2{font-family:var(--font-display);letter-spacing:-.4px;text-wrap:balance;margin-top:0;font-weight:700}h3,h4{letter-spacing:-.2px}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px;display:flex}.toolbar h2{margin:0;font-size:25px}.page-sub{color:var(--muted);margin:3px 0 0;font-size:13.5px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:16px;padding:22px}.card h2{margin-bottom:14px;font-size:15.5px}.card h3{font-size:15px}.btn{background:linear-gradient(178deg, var(--primary-light) 0%, var(--primary) 92%);color:#fff;border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.1px;box-shadow:var(--shadow-btn), inset 0 1px 0 #ffffff29;transition:filter .15s var(--ease), box-shadow .15s var(--ease), transform 60ms;border:1px solid #ffffff14;align-items:center;gap:6px;padding:8px 17px;font-family:inherit;font-size:13.5px;font-weight:600;display:inline-flex}.btn:hover{filter:brightness(1.08);box-shadow:0 2px 4px #11402b4d,0 8px 22px #17553947,inset 0 1px #ffffff29}.btn:active{filter:brightness(.98);transform:translateY(1px)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:disabled{opacity:.5;cursor:not-allowed;filter:none}.btn.secondary{color:var(--text-secondary);border:1px solid var(--border-strong);box-shadow:var(--shadow-sm);background:#fff}.btn.secondary:hover{background:var(--primary-soft);color:var(--primary);border-color:var(--primary-light);filter:none;box-shadow:var(--shadow-sm)}.btn.btn-ghost,.btn-ghost{color:var(--primary);box-shadow:none;background:0 0;border:1px solid #0000}.btn.btn-ghost:hover,.btn-ghost:hover{background:var(--primary-soft);border-color:var(--border);filter:none;box-shadow:none}.btn.danger{color:var(--danger);box-shadow:var(--shadow-sm);background:#fff;border:1px solid #ecc3bd}.btn.danger:hover{background:var(--danger);color:#fff;border-color:var(--danger);filter:none}.btn.small,.btn-sm{border-radius:8px;padding:4px 11px;font-size:12px}table{border-collapse:collapse;width:100%;font-size:13.5px}th,td{text-align:left;border-bottom:1px solid var(--border);padding:10px 11px}th{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;white-space:nowrap;border-bottom:2px solid var(--border-strong);background:0 0;font-size:10.5px;font-weight:650}td{font-variant-numeric:tabular-nums}td:first-child{font-weight:500}tbody tr{transition:background .12s var(--ease)}tbody tr:hover{background:#f4f8f5}tbody tr:last-child td{border-bottom:none}td code{background:var(--primary-soft);color:var(--primary);border-radius:5px;padding:1px 6px;font-size:12px}.num{text-align:right;font-variant-numeric:tabular-nums}.table-scroll{overflow-x:auto}.card.table-scroll{padding:8px 18px 12px}.badge{background:var(--primary-soft);color:var(--primary);text-transform:capitalize;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:2.5px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.badge:before{content:"";opacity:.75;background:currentColor;border-radius:50%;flex-shrink:0;width:5px;height:5px}.badge.draft{color:#5c6660;background:#eef1ee}.badge.approved,.badge.received,.badge.active,.badge.awarded,.badge.returned,.badge.paid,.badge.completed,.badge.fulfilled,.badge.resolved,.badge.verified,.badge.answered,.badge.accepted,.badge.finalised,.badge.invoiced{background:var(--success-soft);color:var(--success)}.badge.cancelled,.badge.rejected,.badge.void,.badge.overdue,.badge.terminated,.badge.critical{background:var(--danger-soft);color:var(--danger)}.badge.on_hold,.badge.partially_received,.badge.pending,.badge.pending_second_approval,.badge.partially_returned,.badge.graded,.badge.partially_paid,.badge.under_review,.badge.revise_resubmit{background:var(--warn-soft);color:var(--warn)}.badge.sent,.badge.issued,.badge.submitted,.badge.in_progress,.badge.confirmed,.badge.open,.badge.in_use,.badge.quote,.badge.dispatched{background:var(--info-soft);color:var(--info)}.status-good{background:var(--success-soft);color:var(--success)}.status-damaged{background:var(--danger-soft);color:var(--danger)}form.grid,.grid{grid-template-columns:repeat(2,1fr);gap:13px;display:grid}@media (width<=600px){form.grid,.grid{grid-template-columns:1fr}}label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px;font-size:11px;font-weight:650;display:block}input,select,textarea{border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;color:var(--text);transition:border-color .15s var(--ease), box-shadow .15s var(--ease), background .15s var(--ease);background:#fcfdfc;padding:8px 12px;font-family:inherit;font-size:14px}input:hover,select:hover,textarea:hover{border-color:#becbc1}input:focus,select:focus,textarea:focus{border-color:var(--primary-light);background:#fff;outline:none;box-shadow:0 0 0 4px #1d6a481f}input::placeholder,textarea::placeholder{color:#a9b3ad}input[readonly]{background:var(--bg)}.field{margin-bottom:0}.field.full{grid-column:1/-1}.lines-table input,.lines-table select{padding:5px 8px;font-size:13px}.lines-table th{background:0 0}.muted{color:var(--muted);font-size:13px}.kpis,.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:13px;margin-bottom:22px;display:grid}.kpi{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:transform .18s var(--ease), box-shadow .18s var(--ease), border-color .18s var(--ease);padding:16px 16px 14px;position:relative;overflow:hidden}.kpi:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-2px)}.kpi:after{content:"";background:radial-gradient(circle, var(--primary-soft) 0%, transparent 70%);opacity:.9;pointer-events:none;border-radius:50%;width:96px;height:96px;position:absolute;top:-34px;right:-34px}.kpi .value{font-family:var(--font-display);letter-spacing:-.6px;color:var(--primary);font-variant-numeric:tabular-nums;z-index:1;font-size:24px;font-weight:800;line-height:1.2;position:relative}.kpi .label{color:var(--muted);text-transform:uppercase;letter-spacing:.7px;z-index:1;margin-top:5px;font-size:10.5px;font-weight:650;position:relative}.kpi .kpi-icon{z-index:1;background:var(--primary-soft);border:1px solid var(--border);border-radius:9px;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;display:flex;position:absolute;top:12px;right:12px}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background:#081a128c;justify-content:center;align-items:flex-start;padding:44px 16px;animation:.16s fadeIn;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{width:100%;max-width:560px;box-shadow:var(--shadow-lg);animation:slideUp .22s var(--ease);background:#fff;border-radius:16px;padding:26px}.modal h2{font-size:17px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}.search-bar{align-items:center;gap:8px;display:flex}.search-bar input{max-width:280px}.pagination{color:var(--muted);justify-content:center;align-items:center;gap:12px;padding:14px 0 0;font-size:13px;display:flex}.pagination button:disabled{opacity:.4;cursor:not-allowed}.progress-bar{vertical-align:middle;background:#e6ebe7;border-radius:5px;width:90px;height:7px;margin-right:6px;display:inline-block;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--primary-light), var(--primary));height:100%;transition:width .3s var(--ease);border-radius:5px}.mb-16{margin-bottom:16px}.mt-16{margin-top:16px}.text-danger{color:var(--danger)}.text-right{text-align:right}.flex-between{justify-content:space-between;align-items:center;display:flex}.empty-state{text-align:center;color:var(--muted);padding:44px 20px}.empty-state .empty-icon{opacity:.55;margin-bottom:10px;font-size:40px}.empty-state .empty-title{color:var(--text-secondary);font-size:15px;font-weight:600}.empty-state .empty-hint{max-width:420px;margin:6px auto 0;font-size:13px}.callout{border:1px solid #f0dcb2;border-left:4px solid var(--accent);color:inherit;box-shadow:var(--shadow-sm);transition:box-shadow .16s var(--ease), transform .16s var(--ease);background:linear-gradient(90deg,#fff8ec,#fff);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:14px 18px;text-decoration:none;display:flex}.callout:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.callout.danger{border-color:#ecc3bd;border-left-color:var(--danger);background:linear-gradient(90deg,#fdf3f1,#fff)}.hero-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:22px;display:flex}.hero-head h2{margin:0;font-size:27px}.hero-date{color:var(--muted);font-size:13px}.pipeline{align-items:flex-start;gap:13px;padding-bottom:12px;display:flex;overflow-x:auto}.pipeline-stage{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);min-width:208px;box-shadow:var(--shadow-sm);flex:1 0 208px;padding:13px}.pipeline-head{color:var(--text);align-items:center;gap:8px;font-size:13.5px;font-weight:700;text-decoration:none;display:flex}.pipeline-head:hover .pipeline-title{color:var(--primary)}.pipeline-count{background:linear-gradient(178deg, var(--primary-light), var(--primary));color:#fff;text-align:center;border-radius:999px;min-width:24px;padding:1px 8px;font-size:12.5px;font-weight:700;box-shadow:0 2px 6px #1755394d}.pipeline-arrow{color:var(--border-strong);margin-left:auto;font-size:16px}.pipeline-hint{margin:6px 0 10px;font-size:11px}.pipeline-cards{flex-direction:column;gap:6px;display:flex}.pipeline-card{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);transition:border-color .15s var(--ease), box-shadow .15s var(--ease), transform .12s var(--ease);background:#fafcfa;padding:9px 11px;font-size:13px;text-decoration:none;display:block}.pipeline-card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-sm);background:#fff;transform:translateY(-1px)}.pc-ref{font-weight:600}.pc-vendor{margin:2px 0;font-size:11px}.pc-amount{color:var(--primary);font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.login-shell{background:var(--bg);min-height:100vh;display:flex}.login-brand{color:#fff;background:radial-gradient(1100px 520px at -10% -20%,#eba63b4d,#0000 55%),radial-gradient(800px 480px at 110% 30%,#2e7d5b59,#0000 60%),linear-gradient(160deg,#123528 0%,#0a2417 58%,#081a12 100%);flex-direction:column;flex:1.1;gap:clamp(20px,4vh,44px);padding:52px 52px 0;display:flex;position:relative;overflow:hidden auto}.login-brand .brand{border:none;flex:none;padding:0}.login-brand-body{flex:none}.login-headline{font-family:var(--font-display);letter-spacing:-1.2px;text-wrap:balance;max-width:440px;font-size:clamp(28px,3.4vh,37px);font-weight:800;line-height:1.12}.login-headline .accent{color:var(--accent)}.login-points{flex-direction:column;gap:10px;margin:22px 0 0;padding:0;list-style:none;display:flex}.login-points li{color:#ffffffd1;align-items:flex-start;gap:10px;max-width:410px;font-size:14px;display:flex}.login-points .pt{color:var(--accent);font-weight:800}.login-stats{grid-template-columns:1fr 1fr;gap:10px;max-width:460px;margin:28px 0 0;padding:0;list-style:none;display:grid}.login-stats li{color:#ffffffe0;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:10px;align-items:center;gap:9px;padding:10px 12px;font-size:12.5px;font-weight:600;display:flex}.login-stat-icon{font-size:15px;line-height:1}.login-field-wrap{flex:1;min-height:90px;margin:0 -52px;position:relative}.login-field-motif{opacity:.9;pointer-events:none;width:100%;height:100%;position:absolute;bottom:0;left:0}.login-form-side{background:radial-gradient(700px 360px at 80% 0%, #eba63b12, transparent 60%), var(--bg);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;padding:40px 24px;display:flex}.login-card{width:100%;max-width:560px}.login-card .card{box-shadow:var(--shadow-md);border-radius:18px;padding:30px}.login-title{font-family:var(--font-display);margin-bottom:2px;font-size:21px}.uat-login-card h2{margin-bottom:3px;font-size:15px}.uat-login-hint{margin:0 0 14px;font-size:12px}.uat-login-list{gap:8px;display:grid}.uat-login-option{border:1px solid var(--border);width:100%;color:var(--text);text-align:left;cursor:pointer;transition:border-color .15s var(--ease), box-shadow .15s var(--ease), transform .15s var(--ease);background:#fff;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:11px 12px;display:grid}.uat-login-option:hover,.uat-login-option:focus-visible{border-color:var(--primary-light);box-shadow:var(--shadow-sm);outline:none;transform:translateY(-1px)}.uat-login-copy{gap:3px;min-width:0;display:grid}.uat-login-role{font-size:13px;font-weight:800}.uat-login-description{color:var(--muted);font-size:11px;line-height:1.35}.uat-login-credentials{min-width:112px;font:11px/1.25 var(--font-mono,monospace);color:var(--muted);gap:2px;display:grid}.uat-login-credentials strong{color:var(--primary)}.uat-login-note{color:var(--muted);margin:13px 0 0;font-size:10.5px;line-height:1.4}.uat-login-note code{font-size:10px}@media (width<=860px){.login-brand{display:none}}@media (height<=720px){.login-stats,.login-field-wrap{display:none}}@media (width<=520px){.login-form-side{justify-content:flex-start;padding:18px 12px}.login-card .card{padding:22px 18px}.uat-login-option{grid-template-columns:1fr;gap:7px}.uat-login-credentials{grid-template-columns:auto auto;justify-content:start;gap:10px}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border:2px solid var(--bg);background:#c6cfc9;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#a8b5ae}.topbar-mobile{display:none}[dir=rtl] .app-shell{flex-direction:row-reverse}[dir=rtl] .sidebar nav>a.active:before,[dir=rtl] .nav-section-body a.active:before{left:auto;right:4px}[dir=rtl] .nav-section-header,[dir=rtl] th,[dir=rtl] td,[dir=rtl] label{text-align:right}[dir=rtl] .text-right{text-align:left}[dir=rtl] .pipeline{flex-direction:row-reverse}[dir=rtl] .pipeline-arrow{margin-left:0;margin-right:auto;transform:scaleX(-1)}[dir=rtl] .callout{border-left:none;border-right:4px solid var(--accent)}[dir=rtl] .callout.danger{border-right-color:var(--danger)}@media (width<=800px){[dir=rtl] .app-shell{flex-direction:column}}.offline-banner{background:var(--warn-soft);color:var(--warn);box-shadow:var(--shadow-md);z-index:100;border:1px solid #e8cf9a;border-radius:999px;align-items:center;gap:8px;padding:8px 18px;font-size:13px;font-weight:600;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.offline-banner .dot{background:var(--warn);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.entity-picker{position:relative}.entity-picker__label{color:var(--text-secondary);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.entity-picker__control{align-items:center;display:flex;position:relative}.entity-picker__input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;color:var(--text);background:#fcfdfc;padding:9px 32px 9px 12px;font-family:inherit;font-size:14px}.entity-picker__input:focus{border-color:var(--primary-light);background:#fff;outline:none;box-shadow:0 0 0 4px #1d6a481f}.entity-picker__input:disabled{background:var(--bg);color:var(--muted)}.entity-picker__clear{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:5px;padding:2px 6px;font-size:18px;line-height:1;position:absolute;right:6px}.entity-picker__clear:hover{color:var(--danger);background:var(--danger-soft)}.entity-picker__menu{z-index:60;background:var(--card);border:1px solid var(--border);max-height:280px;box-shadow:var(--shadow-md);border-radius:12px;margin:0;padding:5px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.entity-picker__option{text-align:left;cursor:pointer;width:100%;color:var(--text);background:0 0;border:none;border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;font-family:inherit;font-size:14px;display:flex}.entity-picker__option.is-active{background:var(--primary-soft)}.entity-picker__option.is-muted{color:var(--muted);font-style:italic}.entity-picker__name{font-weight:500}.entity-picker__desc{color:var(--muted);font-size:12px}.entity-picker__status{color:var(--muted);text-align:center;padding:10px;font-size:13px}.crash-panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);max-width:560px;box-shadow:var(--shadow-sm);text-align:center;margin:64px auto;padding:32px}.crash-panel__icon{color:var(--warn);margin-bottom:12px;font-size:32px}.crash-panel__title{font-family:var(--font-display);color:var(--text);margin:0 0 8px;font-size:19px}.crash-panel__body{color:var(--text-secondary);margin:0 0 20px;font-size:14px;line-height:1.6}.crash-panel__actions{justify-content:center;gap:10px;margin-bottom:20px;display:flex}.crash-panel__detail{text-align:left;border-top:1px solid var(--border);padding-top:14px}.crash-panel__detail summary{cursor:pointer;color:var(--muted);font-size:12px;font-weight:600}.crash-panel__detail pre{background:var(--bg);border-radius:var(--radius-sm);color:var(--text-secondary);white-space:pre-wrap;word-break:break-word;margin-top:10px;padding:10px;font-size:11px;overflow-x:auto}.settings-subhead{color:var(--text-secondary);margin:20px 0 10px;font-size:13px;font-weight:600}.uppercase-input{text-transform:uppercase}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.kpi:hover,.callout:hover,.pipeline-card:hover,.sidebar nav>a:hover,.nav-section-body a:hover{transform:none}}.navigation-panel{flex-direction:column;flex:1;display:flex}.nav-search{color:#d5e4da;gap:7px;margin:18px 16px 0;font-size:12px;display:grid}.nav-search input{color:#fff;background:#183c2b;border-color:#527060;width:100%;min-width:0}.nav-search input::placeholder{color:#b5c8bc}.nav-search-hint{color:#d5e4da;margin:10px 16px 0;font-size:12px}.nav-section-body[hidden],.mobile-menu{display:none}.workspace-header{border-bottom:1px solid var(--border-strong);justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:18px;display:flex}.workspace-eyebrow{color:var(--text-secondary);margin-bottom:4px;font-size:12px;display:block}.workspace-header nav{text-transform:capitalize;font-size:14px}.workspace-role{background:var(--primary-soft);text-transform:capitalize;white-space:nowrap;border-radius:20px;padding:5px 10px;font-size:12px}.skip-link{z-index:100;color:var(--primary);background:#fff;padding:12px 20px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:12px}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}@media (width<=800px){.app-shell,[dir=rtl] .app-shell{flex-direction:column}.sidebar{width:100%;height:auto;position:relative;overflow:visible}.sidebar .brand{padding:14px 18px}.mobile-menu{justify-content:center;margin:10px 16px;display:flex}.sidebar .navigation-panel{display:none}.sidebar.is-open .navigation-panel{max-height:70vh;display:flex;overflow-y:auto}.main{padding:20px 16px 40px}.workspace-header{align-items:flex-start}.workspace-role{white-space:normal}}
