:root{--ink:#18211f;--muted:#68746f;--line:#e2e8e5;--paper:#fff;--canvas:#f4f7f6;--green:#0f766e;--green-dark:#0a5e58;--nav:#101b19;--orange:#df6635;--danger:#b64331;--shadow:0 5px 22px rgba(24,48,42,.055);--font-ui:"Aptos","Segoe UI Variable","Segoe UI","Trebuchet MS",sans-serif;--font-display:"Palatino Linotype","Book Antiqua",Cambria,serif}
*{box-sizing:border-box}html{font-size:15px}body{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--font-ui);font-feature-settings:"kern" 1,"liga" 1;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,select{transition:.16s ease}button{cursor:pointer}input,select,textarea{width:100%;border:1px solid #d8e0dd;background:#fff;border-radius:7px;padding:10px 11px;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:#4a9b8d;box-shadow:0 0 0 3px #0f766e15}textarea{resize:vertical;line-height:1.5}
.app-body{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:240px;z-index:20;display:flex;flex-direction:column;padding:24px 14px 16px;background:var(--nav);color:#e8f0ee}.brand{display:flex;align-items:center;gap:11px;padding:0 8px 22px;border-bottom:1px solid #273532}.brand-mark{width:36px;height:36px;display:grid;place-items:center;border-radius:9px;background:var(--orange);color:#fff;font-size:1.25rem;font-weight:900;box-shadow:inset 0 -3px 0 #ad4522}.brand>span:last-child,.brand strong,.brand small{display:block}.brand strong{font-size:1rem;letter-spacing:.02em}.brand small{margin-top:3px;color:#80908c;font-size:.6rem;text-transform:uppercase;letter-spacing:.12em}.company-switcher{margin:17px 4px 13px;padding:12px;border:1px solid #2a3835;border-radius:8px;background:#172522}.company-switcher small,.company-switcher strong,.company-switcher span{display:block}.company-switcher small{color:#84928e;font-size:.58rem;text-transform:uppercase;letter-spacing:.08em}.company-switcher strong{margin:6px 0 3px;font-size:.72rem}.company-switcher span{color:#7f8f8b;font-size:.62rem}.sidebar nav>p{margin:15px 10px 7px;color:#63716e;font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.16em}.sidebar nav a{min-height:40px;display:flex;align-items:center;gap:11px;margin:2px 0;padding:0 10px;border-radius:7px;color:#9eaba8;font-size:.77rem}.sidebar nav a:hover{color:#fff;background:#192925}.sidebar nav a.active{color:#fff;background:#1e3833;box-shadow:inset 3px 0 0 #31aa91}.sidebar nav a i{width:18px;color:#82908d;font-size:1rem;font-style:normal;text-align:center}.sidebar nav a.active i{color:#59c5ad}.sidebar nav a em{margin-left:auto;padding:3px 6px;border-radius:8px;background:#293a36;color:#8da09b;font-size:.5rem;font-style:normal}.sidebar-user{display:flex;align-items:center;gap:9px;margin-top:auto;padding:13px 6px 0;border-top:1px solid #273532}.avatar{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#dc994c;color:#17201e;font-size:.62rem;font-weight:900}.sidebar-user>span:nth-child(2){min-width:0}.sidebar-user strong,.sidebar-user small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user strong{font-size:.69rem}.sidebar-user small{margin-top:2px;color:#81918d;font-size:.56rem}.sidebar-user form{margin-left:auto}.sidebar-user button{border:0;background:transparent;color:#84938f;font-size:1.1rem}.app-main{min-height:100vh;margin-left:240px}.topbar{height:67px;position:sticky;top:0;z-index:12;display:flex;align-items:center;gap:18px;padding:0 28px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.page-context small,.page-context strong{display:block}.page-context small{color:#89948f;font-size:.56rem;text-transform:uppercase;letter-spacing:.11em}.page-context strong{margin-top:2px;font-size:.8rem}.top-date{margin-left:auto;color:#697570;font-size:.68rem}.top-help{padding-left:18px;border-left:1px solid var(--line);color:#0d7168;font-size:.68rem;font-weight:700}.mobile-toggle{display:none;border:0;background:transparent;font-size:1.25rem}.content{max-width:1460px;margin:0 auto;padding:28px 30px 48px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:23px}.eyebrow{margin:0 0 7px;color:var(--green);font-size:.58rem;font-weight:900;text-transform:uppercase;letter-spacing:.13em}.page-heading h1{margin:0 0 7px;font-family:Georgia,serif;font-size:1.85rem;font-weight:600;letter-spacing:-.02em}.page-heading>div>span{color:var(--muted);font-size:.78rem}.actions{display:flex;gap:8px}.button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:7px;padding:0 14px;font-size:.71rem;font-weight:750}.button.primary{border-color:var(--green);background:var(--green);color:#fff;box-shadow:0 4px 10px #0f766e20}.button.primary:hover{background:var(--green-dark)}.button.secondary{border-color:#d7dfdc;background:#fff;color:#45514d}.button.secondary:hover{border-color:#98aca6;background:#fafcfb}.button.wide{width:100%;min-height:44px}.button.small{min-height:34px;margin-top:12px}.text-button,.table-link{color:#0f766e;font-size:.69rem;font-weight:750}.card,.metric-card,.form-card{border:1px solid var(--line);border-radius:10px;background:var(--paper);box-shadow:var(--shadow)}.card{padding:18px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.metric-card{padding:17px}.metric-card>span{color:#697570;font-size:.66rem;font-weight:700}.metric-card>strong{display:block;margin:11px 0 9px;font-family:Georgia,serif;font-size:1.55rem}.metric-card>small{display:flex;align-items:center;gap:6px;color:#89938f;font-size:.58rem}.metric-card>small b{padding:3px 5px;border-radius:4px;background:#e7f6f0;color:#117760}.metric-card>small b.orange{background:#fff0e8;color:#bd5d31}.dashboard-columns{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,.85fr);gap:13px;margin-top:13px}.card-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.card-head h2{margin:0;font-size:.84rem}.card-head p{margin:4px 0 0;color:#88938f;font-size:.58rem}.card-head>a{color:#0f766e;font-size:.62rem;font-weight:750}.table-scroll{overflow:auto;margin:0 -18px -18px}table{width:100%;border-collapse:collapse;font-size:.66rem}th{padding:10px 15px;background:#fafbfb;color:#84908c;text-align:left;font-size:.55rem;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}td{padding:11px 15px;border-top:1px solid #edf0ef;color:#64706c;vertical-align:middle}td>strong,td>small{display:block}td>strong{color:#303c38;font-size:.68rem}td>small{margin-top:3px;color:#8d9794;font-size:.55rem}td code{padding:3px 5px;border-radius:4px;background:#f1f4f3;color:#48534f;font-size:.59rem}.badge{width:max-content;display:inline-block;padding:4px 7px;border-radius:10px;background:#edf1ef;color:#60706b;font-size:.55rem;font-weight:800;text-transform:capitalize}.badge.confirmed,.badge.processing{background:#e8f1f8;color:#39739b}.badge.ready,.badge.partial{background:#fff2db;color:#a76d18}.badge.delivered,.badge.paid,.badge.active,.badge.healthy{background:#e7f6ef;color:#23765d}.badge.cancelled,.badge.blocked,.badge.overdue,.badge.low{background:#fdebe7;color:#ad4d39}.badge.unpaid,.badge.inactive{background:#f2edf7;color:#755b98}.alert-list{margin:0 -5px}.alert-list>a{display:flex;align-items:center;gap:10px;padding:12px 5px;border-bottom:1px solid #edf0ef}.alert-list>a:last-child{border-bottom:0}.alert-icon{width:31px;height:31px;display:grid;place-items:center;border-radius:8px;background:#fff0e9;color:#bd5b34;font-size:.7rem;font-weight:900}.alert-list>a>span:nth-child(2){min-width:0}.alert-list strong,.alert-list small{display:block}.alert-list strong{font-size:.68rem}.alert-list small{margin-top:3px;color:#87928e;font-size:.56rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alert-list i{margin-left:auto;color:#7c8a86;font-size:1.1rem;font-style:normal}.empty-compact{padding:35px 10px;color:#7b8783;text-align:center;font-size:.7rem}
.toolbar{min-height:48px;display:flex;align-items:center;gap:8px;margin:-18px -18px 0;padding:9px 15px;border-bottom:1px solid var(--line)}.toolbar>span{margin-left:auto;color:#84908c;font-size:.6rem}.search-control{width:min(380px,50%);display:flex;align-items:center;gap:7px;padding:0 9px;border:1px solid #dbe2df;border-radius:7px;background:#f9fbfa;color:#82908c}.search-control input{height:33px;padding:0;border:0;background:transparent;box-shadow:none;font-size:.68rem}.filters>select{width:auto;min-width:145px;height:34px;padding:0 10px;font-size:.68rem}.row-actions{display:flex;align-items:center;gap:9px}.row-actions a,.row-actions button{border:0;background:transparent;padding:0;color:#0f766e;font-size:.62rem;font-weight:750}.row-actions button{color:#a44d3a}.row-actions form{margin:0}.stock-number{font-weight:750}.stock-number.low,.text-danger{color:var(--danger)}.empty-state{display:flex;flex-direction:column;align-items:center;gap:5px;padding:42px}.empty-state strong{color:#3b4743;font-size:.8rem}.empty-state span{color:#89938f;font-size:.65rem}.muted{color:#9ba4a1;font-size:.61rem}.status-form{display:flex;align-items:center;gap:5px}.status-form select{width:100px;height:30px;padding:0 6px;font-size:.58rem}.status-form button{height:29px;border:1px solid #bfd2cc;border-radius:5px;background:#eaf4f1;color:#126d64;font-size:.56rem;font-weight:800}
.form-card{overflow:hidden}.form-card>section{display:grid;grid-template-columns:190px 1fr;gap:28px;padding:24px;border-bottom:1px solid var(--line)}.section-heading{display:flex;align-items:flex-start;gap:10px}.section-heading>span{width:27px;height:27px;display:grid;place-items:center;border-radius:7px;background:#e8f4f1;color:#0e746a;font-size:.57rem;font-weight:900}.section-heading h2{margin:1px 0 4px;font-size:.78rem}.section-heading p{margin:0;color:#89938f;font-size:.57rem;line-height:1.45}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.form-grid.four{grid-template-columns:repeat(4,1fr)}.form-grid label,.modal label,.summary-box label{display:block;color:#52605b;font-size:.62rem;font-weight:700}.form-grid label b,.modal label b{color:#d0562d}.form-grid input,.form-grid select,.form-grid textarea,.modal input,.modal select,.modal textarea,.summary-box input{margin-top:7px;font-size:.7rem;font-weight:400}.form-grid .span-2{grid-column:span 2}.error{display:block;margin-top:5px;color:var(--danger);font-size:.55rem}.form-card>footer,.modal footer{display:flex;justify-content:flex-end;gap:8px;padding:15px 24px;background:#fafbfb}.form-error{margin:18px 0 0;padding:10px 12px;border:1px solid #f0c9c1;border-radius:7px;background:#fff2ef;color:#9f4030;font-size:.66rem}.form-error.full{margin:16px 24px 0}.line-items{border:1px solid var(--line);border-radius:8px;overflow:hidden}.line-head,.line-row{display:grid;grid-template-columns:minmax(220px,2.2fr) minmax(90px,.65fr) minmax(110px,.85fr) minmax(110px,.8fr) 34px;gap:8px;align-items:center;padding:9px 11px}.line-head{background:#f7f9f8;color:#82908c;font-size:.54rem;font-weight:800;text-transform:uppercase}.line-row{border-top:1px solid var(--line)}.line-row select,.line-row input{padding:8px;font-size:.65rem}.line-row output{font-size:.67rem;font-weight:800;text-align:right}.remove-line{width:28px;height:28px;border:0;border-radius:5px;background:#fff0ed;color:#b54e39}.order-summary-grid{display:grid;grid-template-columns:1.5fr .8fr;gap:22px}.order-summary-grid label{display:block;color:#52605b;font-size:.62rem;font-weight:700}.order-summary-grid textarea{margin-top:7px;font-size:.7rem;font-weight:400}.summary-box{padding:15px;border:1px solid var(--line);border-radius:8px;background:#fafcfb}.summary-box>label{display:grid;grid-template-columns:1fr 130px;align-items:center;gap:15px;margin-bottom:9px}.summary-box input{margin:0;padding:7px;font-size:.65rem}.summary-box dl{margin:13px 0 0;padding-top:11px;border-top:1px solid var(--line)}.summary-box dl>div{display:flex;justify-content:space-between;padding:5px 0;color:#697570;font-size:.63rem}.summary-box dl .grand{margin-top:6px;padding-top:11px;border-top:1px solid var(--line);color:#25312e;font-size:.75rem;font-weight:900}
.flash{display:flex;align-items:center;gap:8px;margin-bottom:14px;padding:10px 12px;border:1px solid #cbe6dc;border-radius:8px;background:#edfaf5;color:#176d58;font-size:.68rem}.flash.error{border-color:#f0c5bd;background:#fff0ed;color:#a64636}.flash>span{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#c8eadf;font-weight:900}.flash.error>span{background:#f3d0c8}.flash button{margin-left:auto;border:0;background:transparent;color:inherit;font-size:1rem}.not-found{min-height:calc(100vh - 125px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:50px}.not-found>span{color:#dfe8e5;font-family:Georgia,serif;font-size:5rem;font-weight:800}.not-found h1{margin:0 0 10px;font-family:Georgia,serif;font-size:2rem}.not-found>p:not(.eyebrow){max-width:560px;margin:0 0 22px;color:#697570;font-size:.78rem;line-height:1.7}
.retention-note{padding:7px 10px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#73807b;font-size:.62rem}.badge.audit-action{background:#e8f3f0;color:#176f65}.audit-changes{min-width:100px}.audit-changes summary{color:#0f766e;font-size:.61rem;font-weight:750;cursor:pointer}.audit-changes pre{width:min(420px,55vw);max-height:220px;overflow:auto;margin:7px 0 0;padding:10px;border:1px solid var(--line);border-radius:7px;background:#121d1b;color:#d5e4e0;font-size:.56rem;line-height:1.45;white-space:pre-wrap;word-break:break-word}
.modal{width:min(540px,calc(100% - 30px));max-height:90vh;padding:0;border:0;border-radius:11px;background:#fff;box-shadow:0 25px 80px #13221f4a}.modal::backdrop{background:#0e1917a8;backdrop-filter:blur(3px)}.modal header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--line)}.modal h2{margin:0;font-family:Georgia,serif;font-size:1.25rem}.modal header button{border:0;background:transparent;color:#7b8783;font-size:1.4rem}.modal-body{display:grid;gap:15px;padding:20px 22px}.notice{margin:0;padding:10px 12px;border-radius:7px;background:#edf6f4;color:#3f6860;font-size:.63rem;line-height:1.5}
.auth-body{min-height:100vh;background:#eef3f1}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(380px,.9fr) 1.1fr}.login-story{display:flex;flex-direction:column;padding:46px;background:#101b19;color:#eaf1ef}.login-brand{display:flex;align-items:center;gap:12px}.login-brand>span:last-child,.login-brand strong,.login-brand small{display:block}.login-brand strong{font-size:1.05rem}.login-brand small{margin-top:3px;color:#7f918c;font-size:.58rem;text-transform:uppercase;letter-spacing:.12em}.story-content{margin:auto 0;max-width:570px}.story-content>p{color:#63b7a5;font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.story-content h1{margin:16px 0 28px;font-family:Georgia,serif;font-size:2.4rem;font-weight:500;line-height:1.16}.story-content ul{display:grid;grid-template-columns:1fr 1fr;gap:13px 20px;margin:0;padding:0;list-style:none}.story-content li{display:flex;align-items:center;gap:8px;color:#a6b4b0;font-size:.7rem}.story-content li:before{content:"✓";width:19px;height:19px;display:grid;place-items:center;border-radius:50%;background:#1e3c35;color:#64c0aa;font-size:.57rem;font-weight:900}.login-story>small{color:#6f817c;font-size:.6rem}.login-panel{display:grid;place-items:center;padding:30px}.login-card{width:min(390px,100%);padding:35px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 18px 60px #1f393215}.login-card h2{margin:0 0 7px;font-family:Georgia,serif;font-size:1.8rem}.login-card>p:not(.eyebrow){margin:0 0 25px;color:#7b8783;font-size:.72rem}.login-card label{display:block;margin:16px 0;color:#53605c;font-size:.64rem;font-weight:750}.login-card input{margin-top:7px;min-height:43px}.demo-note{display:flex;flex-direction:column;gap:3px;margin-top:18px;padding:11px 12px;border-radius:7px;background:#f3f6f5;color:#687570;font-size:.59rem}.demo-note strong{color:#34413d}.demo-note small{color:#a15a43}
@media(max-width:1100px){.form-grid.four{grid-template-columns:repeat(2,1fr)}.metric-grid{grid-template-columns:repeat(2,1fr)}.login-story{padding:35px}.story-content h1{font-size:2rem}}
@media(max-width:800px){.sidebar{transform:translateX(-100%);transition:transform .2s ease}.sidebar.open{transform:translateX(0)}.app-main{margin-left:0}.topbar{height:60px;padding:0 15px}.mobile-toggle{display:block}.top-help{display:none}.content{padding:21px 15px 38px}.page-heading{align-items:flex-start;flex-direction:column}.page-heading .button{align-self:stretch}.actions{width:100%}.actions .button{flex:1}.dashboard-columns{grid-template-columns:1fr}.form-card>section{grid-template-columns:1fr;gap:18px}.line-items{overflow:auto}.line-head,.line-row{min-width:700px}.login-shell{grid-template-columns:1fr}.login-story{display:none}.login-panel{min-height:100vh}}
@media(max-width:520px){.metric-grid{grid-template-columns:1fr}.form-grid,.form-grid.four{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.toolbar{flex-wrap:wrap}.search-control{width:100%}.toolbar>span{margin-left:0}.order-summary-grid{grid-template-columns:1fr}.summary-box>label{grid-template-columns:1fr}.top-date{display:none}.page-context{margin-right:auto}.login-panel{padding:15px}.login-card{padding:25px 21px}.content{padding-left:10px;padding-right:10px}}

/* Professional interface refinement: readable enterprise density and stronger hierarchy. */
:root{
  --ink:#17221f;
  --muted:#64736e;
  --line:#dfe7e4;
  --paper:#ffffff;
  --canvas:#f3f7f5;
  --green:#08786d;
  --green-dark:#065e56;
  --nav:#0d1f1c;
  --orange:#e06b38;
  --danger:#b74634;
  --shadow:0 8px 28px rgba(18,45,38,.07);
  --shadow-hover:0 14px 38px rgba(18,45,38,.11)
}
html{font-size:16px}
body{font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font-size:14px}
input,select,textarea{min-height:42px;border-color:#d5dfdb;border-radius:9px;padding:10px 12px}
input:hover,select:hover,textarea:hover{border-color:#b9c9c4}
.sidebar{width:264px;padding:25px 16px 18px;background:linear-gradient(180deg,#0d1f1c 0%,#102824 100%);box-shadow:10px 0 32px rgba(8,29,24,.09)}
.app-main{margin-left:264px}
.brand{padding:0 9px 23px}
.brand-mark{width:40px;height:40px;border-radius:11px;font-size:1.3rem}
.brand strong{font-size:1.03rem}.brand small{font-size:.64rem}
.company-switcher{margin:18px 3px 16px;padding:14px;border-radius:10px;background:rgba(255,255,255,.035)}
.company-switcher small{font-size:.63rem}.company-switcher strong{font-size:.79rem}.company-switcher span{font-size:.68rem}
.sidebar nav>p{font-size:.6rem;margin-top:17px}
.sidebar nav a{min-height:44px;gap:12px;padding:0 11px;border-radius:9px;font-size:.79rem}
.sidebar nav a:hover{transform:translateX(2px)}
.sidebar nav a.active{background:linear-gradient(90deg,#1c4038 0%,#18352f 100%);box-shadow:inset 3px 0 0 #46c3a7,0 7px 18px rgba(0,0,0,.08)}
.sidebar nav a i{width:20px;font-size:1.05rem}
.sidebar-user{padding-top:15px}.avatar{width:36px;height:36px;font-size:.68rem}.sidebar-user strong{font-size:.75rem}.sidebar-user small{font-size:.62rem}
.topbar{height:72px;padding:0 32px;border-color:#e3e9e7;box-shadow:0 1px 0 rgba(30,54,48,.02)}
.page-context small{font-size:.62rem}.page-context strong{font-size:.86rem}.top-date,.top-help{font-size:.74rem}
.content{padding:32px 34px 52px}
.page-heading{margin-bottom:25px}.eyebrow{font-size:.64rem}.page-heading h1{font-size:2rem}.page-heading>div>span{font-size:.84rem}
.button{min-height:41px;border-radius:9px;padding:0 16px;font-size:.76rem;letter-spacing:.005em}
.button.primary{background:linear-gradient(180deg,#0a8276 0%,#087065 100%);box-shadow:0 7px 18px rgba(8,120,109,.18)}
.button.primary:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(8,120,109,.24)}
.button.secondary:hover{transform:translateY(-1px)}
.card,.metric-card,.form-card{border-radius:13px;box-shadow:var(--shadow)}
.metric-grid{gap:16px}.metric-card{position:relative;overflow:hidden;padding:20px 20px 18px;transition:transform .18s ease,box-shadow .18s ease}
.metric-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,#35b99c,#08786d);opacity:.9}
.metric-card:nth-child(3):before{background:linear-gradient(180deg,#f3a464,#dc6635)}
.metric-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}
.metric-card>span{font-size:.72rem}.metric-card>strong{font-size:1.7rem;margin:12px 0 10px}.metric-card>small{font-size:.64rem}
.dashboard-columns{gap:16px;margin-top:16px}.card{padding:21px}.card-head{margin-bottom:14px}.card-head h2{font-size:.94rem}.card-head p{font-size:.65rem}.card-head>a{font-size:.69rem}
.table-scroll{margin:0 -21px -21px}table{font-size:.73rem}th{padding:12px 17px;font-size:.61rem}td{padding:13px 17px}td>strong{font-size:.74rem}.table-link{font-size:.73rem}.badge{padding:5px 8px;font-size:.61rem}
.alert-list strong{font-size:.75rem}.alert-list small{font-size:.63rem}.alert-icon{width:34px;height:34px}
.toolbar{min-height:55px;margin:-21px -21px 0;padding:10px 17px}.toolbar>span{font-size:.67rem}.search-control input,.filters>select{font-size:.74rem}
.form-card>section{padding:28px}.section-heading h2{font-size:.86rem}.section-heading p{font-size:.64rem}.form-grid label,.modal label,.summary-box label{font-size:.69rem}
.form-grid input,.form-grid select,.form-grid textarea,.modal input,.modal select,.modal textarea,.summary-box input{font-size:.77rem}
.flash{padding:12px 14px;border-radius:10px;font-size:.74rem}
.auth-body{background:radial-gradient(circle at 75% 15%,rgba(49,170,145,.08),transparent 30%),#edf3f0}
.login-shell{grid-template-columns:minmax(440px,.92fr) minmax(520px,1.08fr)}
.login-story{position:relative;overflow:hidden;padding:54px;background:linear-gradient(145deg,#0a1c19 0%,#12312b 58%,#0f2723 100%)}
.login-story:after{content:"";position:absolute;right:-170px;bottom:-210px;width:430px;height:430px;border:1px solid rgba(91,197,173,.13);border-radius:50%;box-shadow:0 0 0 55px rgba(91,197,173,.035),0 0 0 110px rgba(91,197,173,.025);pointer-events:none}
.login-brand,.story-content,.login-story>small{position:relative;z-index:1}
.story-content>p{font-size:.72rem}.story-content h1{max-width:650px;font-size:2.65rem;line-height:1.13}.story-content li{font-size:.78rem}.login-story>small{font-size:.68rem}
.login-panel{padding:42px}.login-card{width:min(430px,100%);padding:40px;border-radius:16px;box-shadow:0 24px 70px rgba(20,57,48,.12)}
.login-card h2{font-size:2rem}.login-card>p:not(.eyebrow){font-size:.79rem}.login-card label{font-size:.71rem}.login-card input{min-height:46px}.demo-note{padding:13px 14px;border-radius:9px;font-size:.65rem}
@media(max-width:1100px){.sidebar{width:244px}.app-main{margin-left:244px}.login-shell{grid-template-columns:minmax(360px,.85fr) 1.15fr}.story-content h1{font-size:2.15rem}}
@media(max-width:800px){.sidebar{width:264px}.app-main{margin-left:0}.topbar{height:64px;padding:0 17px}.content{padding:24px 17px 40px}.login-shell{grid-template-columns:1fr}.login-panel{padding:24px}}
@media(max-width:520px){html{font-size:15px}.content{padding-left:12px;padding-right:12px}.login-card{padding:29px 23px}.page-heading h1{font-size:1.72rem}.metric-card{padding:18px}}

/* Phase 2: purchasing, finance and analytics modules. */
.module-card{margin-top:16px}
.metric-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}
.metric-grid.five .metric-card>strong{font-size:1.42rem;white-space:nowrap}
.badge.draft{background:#f0f2f1;color:#65726d}
.badge.approved,.badge.ordered{background:#e8f1f8;color:#39739b}
.badge.received{background:#e7f6ef;color:#23765d}
.badge.outflow{background:#fff0e8;color:#a65530}
.date-control{display:flex;align-items:center;gap:7px;color:#74817c;font-size:.65rem;font-weight:750;white-space:nowrap}
.date-control input{width:145px;height:34px;min-height:34px;padding:0 9px;font-size:.68rem}
.finance-modal{width:min(780px,calc(100% - 30px))}
.finance-modal .modal-body{display:block}
.finance-modal .form-grid{margin-top:17px}
[hidden]{display:none!important}
.report-actions{display:flex;gap:8px}
.report-filter-card{margin-bottom:16px;padding:0;overflow:hidden}
.report-filter-card .toolbar{margin:0;border:0}
.report-metrics{margin-bottom:16px}
.reports-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:16px;margin-bottom:16px}
.report-panel{min-width:0}
.ranking-list{display:grid;gap:2px}
.ranking-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid #edf1ef}
.ranking-row:last-child{border-bottom:0}
.rank{width:26px;height:26px;display:grid;place-items:center;border-radius:7px;background:#edf6f3;color:#08786d;font-size:.64rem;font-weight:900}
.ranking-row>div{min-width:0}.ranking-row strong,.ranking-row small{display:block}.ranking-row strong{font-size:.73rem}.ranking-row small{margin:3px 0 7px;color:#81908b;font-size:.61rem}.ranking-row>b{font-size:.69rem;white-space:nowrap}
.ranking-row progress{width:100%;height:5px;display:block;border:0;border-radius:10px;overflow:hidden;background:#eaf0ee}
.ranking-row progress::-webkit-progress-bar{background:#eaf0ee}.ranking-row progress::-webkit-progress-value{background:linear-gradient(90deg,#36b79b,#08786d)}.ranking-row progress::-moz-progress-bar{background:#08786d}
.compact-table{margin-bottom:-21px}
.export-strip{display:flex;align-items:center;gap:16px;margin-top:14px;padding:13px 16px;border:1px solid var(--line);border-radius:11px;background:#fff;color:#6c7a75;font-size:.67rem}
.export-strip span{margin-right:auto;font-weight:800;color:#34423e}.export-strip a{color:#08786d;font-weight:800}
@media(max-width:1250px){.metric-grid.five{grid-template-columns:repeat(3,1fr)}.reports-grid{grid-template-columns:1fr}}
@media(max-width:800px){.metric-grid.five{grid-template-columns:repeat(2,1fr)}.report-actions{width:100%}.report-actions .button{flex:1}.finance-modal .form-grid{grid-template-columns:1fr}.finance-modal .span-2{grid-column:auto}.export-strip{align-items:flex-start;flex-direction:column;gap:8px}.export-strip span{margin:0}.date-control{width:calc(50% - 4px)}.date-control input{width:100%}}
@media(max-width:520px){.metric-grid.five{grid-template-columns:1fr}.date-control{width:100%}.report-actions{flex-direction:column}.report-actions .button{width:100%}}

/* Phase 3: advanced procurement and accounts payable. */
.module-tabs{display:flex;align-items:center;gap:4px;margin:-7px 0 24px;padding:5px;border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:var(--shadow);overflow:auto}
.module-tabs a{flex:0 0 auto;padding:9px 13px;border-radius:7px;color:#687670;font-size:.69rem;font-weight:750;white-space:nowrap}
.module-tabs a:hover{background:#f1f6f4;color:#176f65}.module-tabs a.active{background:#e5f3ef;color:#076e64;box-shadow:inset 0 0 0 1px #cce7df}
.inline-link{color:#08786d;font-weight:800}.detail-actions{display:flex;align-items:center;gap:8px;margin:14px 0 20px}.detail-actions form{margin:0}.detail-actions .button.small{margin:0}
.badge.submitted,.badge.open{background:#e8f1f8;color:#39739b}.badge.selected,.badge.converted,.badge.posted{background:#e7f6ef;color:#23765d}.badge.rejected,.badge.closed{background:#f2edf7;color:#755b98}
.form-grid .span-4{grid-column:span 4}.button:disabled{cursor:not-allowed;opacity:.5;transform:none!important;box-shadow:none!important}
.split-panel{display:grid;grid-template-columns:minmax(300px,.7fr) minmax(560px,1.3fr);gap:16px}.split-panel>.card{min-width:0}
.panel-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:15px}.panel-title h2{margin:0;font-family:Georgia,serif;font-size:1.18rem}.panel-title>div>span{display:block;margin-top:4px;color:#7d8a85;font-size:.65rem}
.record-list{display:grid;gap:7px;margin:0 -7px}.record-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px;border:1px solid transparent;border-radius:9px}.record-row:hover{background:#f6f9f8}.record-row.active{border-color:#cfe5de;background:#edf7f4}.record-row strong,.record-row small{display:block}.record-row strong{font-size:.73rem}.record-row small{margin-top:3px;color:#81908b;font-size:.59rem}.record-meta{text-align:right}.record-meta b{font-size:.65rem}.record-meta small{font-size:.57rem}
.detail-panel .compact-table{margin-top:4px}.empty-state.tall{min-height:390px;justify-content:center}
.quote-entry input,.quantity-input{min-width:110px;min-height:36px;padding:7px 9px;font-size:.68rem}.quote-entry tfoot td{background:#f6faf8;color:#34433e;font-weight:800}
.readout{align-self:end;min-height:67px;display:flex;flex-direction:column;justify-content:center;padding:9px 13px;border:1px solid #cfe2dc;border-radius:9px;background:#edf7f4}.readout span{color:#63817a;font-size:.61rem;font-weight:750}.readout strong{margin-top:4px;color:#0a6d63;font-family:Georgia,serif;font-size:1.12rem}
.selection-card{margin-bottom:16px}.selection-card form{display:flex;align-items:flex-end;gap:10px}.selection-card label{flex:1;color:#52605b;font-size:.69rem;font-weight:700}.selection-card select{margin-top:7px}.input-like{min-height:42px;display:flex;align-items:center;margin-top:7px;padding:10px 12px;border:1px solid #d5dfdb;border-radius:9px;background:#f6f8f7;color:#67756f;font-weight:500}
@media(max-width:1150px){.split-panel{grid-template-columns:1fr}.record-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.module-tabs{margin-top:-3px}.record-list{grid-template-columns:1fr}.selection-card form{align-items:stretch;flex-direction:column}.form-grid .span-4{grid-column:span 2}}
@media(max-width:520px){.form-grid .span-4{grid-column:auto}.record-row{grid-template-columns:minmax(0,1fr) auto}.record-meta{display:none}.module-tabs a{padding:8px 10px}}

/* Phase 4: scalable navigation, pagination and general ledger reporting. */
.sidebar{overflow:hidden}
.sidebar nav{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:4px;scrollbar-width:thin;scrollbar-color:#39554f transparent}
.sidebar nav::-webkit-scrollbar{width:6px}.sidebar nav::-webkit-scrollbar-track{background:transparent}.sidebar nav::-webkit-scrollbar-thumb{border-radius:10px;background:#39554f}.sidebar nav::-webkit-scrollbar-thumb:hover{background:#4a6b63}
.sidebar-user{flex:0 0 auto;background:inherit}
.app-main{display:flex;flex-direction:column}.content{width:100%;flex:1}
.app-footer,.auth-footer{padding:17px 30px;border-top:1px solid var(--line);color:#7b8984;font-size:.66rem;text-align:center;background:rgba(255,255,255,.72)}
.auth-footer{position:fixed;right:0;bottom:0;left:0;z-index:3;background:rgba(255,255,255,.9);backdrop-filter:blur(8px)}
.smart-pagination{min-height:58px;display:flex;align-items:center;gap:16px;margin:21px -21px -21px;padding:11px 17px;border-top:1px solid var(--line);background:#fbfcfc;color:#77847f;font-size:.67rem}
.smart-pagination>span{margin-right:auto}.smart-pagination nav{display:flex;align-items:center;gap:4px}.smart-pagination nav i{padding:0 3px;color:#9aa5a1;font-style:normal}
.page-control{width:31px;height:31px;display:grid;place-items:center;border:1px solid #d9e2df;border-radius:7px;background:#fff;color:#53635e;font-weight:800}
.page-control:hover{border-color:#9dbab2;color:#08786d}.page-control.active{border-color:#08786d;background:#08786d;color:#fff}.page-control.disabled{pointer-events:none;opacity:.42}
.smart-pagination form{margin:0}.smart-pagination label{display:flex;align-items:center;gap:7px;font-weight:700}.smart-pagination select{width:70px;min-height:32px;height:32px;padding:0 8px;font-size:.67rem}
.badge.asset{background:#e8f1f8;color:#39739b}.badge.liability{background:#fff0e8;color:#a65530}.badge.equity{background:#f2edf7;color:#755b98}.badge.income{background:#e7f6ef;color:#23765d}.badge.expense{background:#fdebe7;color:#ad4d39}.badge.reversed{background:#fdebe7;color:#ad4d39}
.metric-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.statement-metrics{margin-bottom:16px}
.checkbox-label{display:flex!important;align-items:center;gap:9px;padding-top:25px}.checkbox-label input[type=checkbox]{width:17px;height:17px;min-height:17px;margin:0}
.journal-lines{display:grid;gap:8px}.journal-line{display:grid;grid-template-columns:minmax(200px,1.35fr) minmax(150px,.9fr) minmax(95px,.5fr) minmax(95px,.5fr) minmax(160px,1fr) 34px;gap:8px;align-items:center}.journal-line input,.journal-line select{min-height:38px;padding:8px 10px;font-size:.69rem}.journal-totals{display:flex;justify-content:flex-end;gap:24px;margin-top:16px;padding:14px;border:1px solid var(--line);border-radius:9px;background:#f8faf9;color:#65736e;font-size:.7rem}.journal-totals strong{margin-left:7px;color:#26332f}
.statement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.statement-card{min-width:0}.statement-lines h3{margin:19px 0 7px;padding-bottom:7px;border-bottom:1px solid var(--line);color:#71807b;font-size:.66rem;text-transform:uppercase;letter-spacing:.08em}.statement-lines>div{display:flex;justify-content:space-between;gap:20px;padding:8px 0;color:#53615c;font-size:.72rem}.statement-lines code{margin-right:7px}.statement-lines .subtotal{margin-top:5px;padding-top:11px;border-top:1px dashed #d7e0dd;color:#26332f}.statement-total{margin-top:16px!important;padding:14px!important;border-radius:9px;background:#edf7f4;color:#0a655d!important;font-size:.81rem!important}.compliance-note{margin:16px 0 0;padding:12px 14px;border:1px solid #eed9bd;border-radius:9px;background:#fff9ee;color:#856637;font-size:.66rem;line-height:1.55}
@media(max-width:1000px){.statement-grid{grid-template-columns:1fr}.journal-line{min-width:820px}.journal-lines{overflow-x:auto}.smart-pagination{flex-wrap:wrap}.smart-pagination>span{width:100%;margin:0}.smart-pagination form{margin-left:auto}}
@media(max-width:600px){.smart-pagination{justify-content:center}.smart-pagination>span{text-align:center}.smart-pagination form{width:100%;margin:0}.smart-pagination form label{justify-content:center}.metric-grid.two{grid-template-columns:1fr}.app-footer{padding:15px 12px}.journal-totals{align-items:flex-end;flex-direction:column;gap:7px}}

/* Phase 5: treasury, bank reconciliation and party subledgers. */
.metric-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.treasury-metrics,.ageing-metrics{margin:16px 0}.badge.cash{background:#e7f6ef;color:#23765d}.badge.bank{background:#e8f1f8;color:#39739b}.badge.mobile{background:#f2edf7;color:#755b98}.badge.matched{background:#e7f6ef;color:#23765d}.badge.exception{background:#fdebe7;color:#ad4d39}
.reconciliation-card{padding:21px}.reconciliation-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px}.reconciliation-summary>div,.reconciliation-summary>label{min-height:84px;display:flex;flex-direction:column;justify-content:center;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:#f8faf9}.reconciliation-summary span,.reconciliation-summary label{color:#6e7c77;font-size:.66rem;font-weight:750}.reconciliation-summary strong{display:block;margin-top:7px;font-family:Georgia,serif;font-size:1.35rem}.reconciliation-summary input{margin-top:7px;background:#fff}.select-all{display:flex;align-items:center;gap:7px;color:#5f6f69;font-size:.68rem;font-weight:750}.select-all input,.reconciliation-table input[type=checkbox]{width:17px;height:17px;min-height:17px;margin:0}.reconciliation-table{margin-bottom:18px}.reconciliation-note{display:block;margin-top:20px;color:#52605b;font-size:.69rem;font-weight:700}.reconciliation-note textarea{margin-top:7px}.reconciliation-card>footer{display:flex;justify-content:flex-end;gap:9px;margin:21px -21px -21px;padding:16px 21px;border-top:1px solid var(--line);background:#fbfcfc}
.ageing-metrics .metric-card>strong{font-size:1.28rem}.field-error{display:block;margin-top:5px;color:var(--danger);font-size:.61rem}.treasury-metrics .metric-card>small{min-height:20px}.treasury-metrics .metric-card>small b{font-weight:800}
@media(max-width:1050px){.metric-grid.three{grid-template-columns:1fr}.reconciliation-summary{grid-template-columns:1fr}.ageing-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ageing-metrics{grid-template-columns:1fr}.reconciliation-card{padding:16px}.reconciliation-card>footer{margin:16px -16px -16px;padding:14px 16px}.page-heading .actions{width:100%;flex-wrap:wrap}.page-heading .actions .button{flex:1}}

/* Premium 3D workspace redesign: shared across every DMS ERP window. */
:root{
  --ink:#14233a;
  --muted:#617089;
  --line:#d9e1ed;
  --paper:#fff;
  --canvas:#eef2f8;
  --green:#087f78;
  --green-dark:#075f5a;
  --nav:#11366d;
  --orange:#ef733b;
  --danger:#bd4934;
  --blue:#176ed1;
  --blue-dark:#104e9b;
  --cyan:#21b9c0;
  --lime:#99ce62;
  --purple:#a15abe;
  --shadow:8px 11px 22px rgba(34,49,79,.16),-5px -5px 14px rgba(255,255,255,.88);
  --shadow-hover:10px 15px 28px rgba(34,49,79,.2),-5px -5px 15px rgba(255,255,255,.92);
  --shadow-soft:0 14px 35px rgba(36,52,85,.13),inset 0 1px 0 rgba(255,255,255,.9);
  --inset:inset 3px 4px 8px rgba(40,54,86,.16),inset -3px -3px 7px rgba(255,255,255,.88)
}
.ui-3d{background:
  radial-gradient(circle at 78% 0%,rgba(185,203,238,.34),transparent 30%),
  radial-gradient(circle at 35% 90%,rgba(201,230,224,.32),transparent 33%),
  linear-gradient(135deg,#f8f9fc 0%,#eef1f7 52%,#f5f7fa 100%);
  color:var(--ink)
}
.ui-3d.app-body{background-attachment:fixed}
.ui-3d .sidebar{
  width:264px;padding:22px 15px 17px;border-right:1px solid rgba(255,255,255,.17);
  background:linear-gradient(145deg,#174984 0%,#12366e 46%,#0c2b5e 100%);
  box-shadow:8px 0 24px rgba(16,41,84,.24),inset -1px 0 0 rgba(255,255,255,.14);
  color:#f5f8ff
}
.ui-3d .sidebar:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:
  radial-gradient(circle at 12% 5%,rgba(57,150,244,.28),transparent 23%),
  linear-gradient(105deg,rgba(255,255,255,.07),transparent 28%,rgba(0,0,0,.05))}
.ui-3d .brand{margin:0 1px;padding:0 6px 22px;border-bottom-color:rgba(222,236,255,.16)}
.ui-3d .brand-mark{
  position:relative;width:43px;height:43px;border:1px solid rgba(255,255,255,.35);border-radius:12px;
  background:linear-gradient(145deg,#42c4f0 0%,#1f80e8 42%,#1255b5 100%);
  box-shadow:0 8px 13px rgba(2,19,55,.45),inset 0 2px 3px rgba(255,255,255,.74),inset 0 -5px 8px rgba(5,36,105,.28);
  text-shadow:0 2px 2px rgba(4,31,86,.55)
}
.ui-3d .brand strong{color:#fff;text-shadow:0 2px 3px rgba(4,24,60,.48)}
.ui-3d .brand small{color:#a8c0df}
.ui-3d .company-switcher{
  margin:18px 0 16px;padding:15px;border:1px solid rgba(166,200,239,.22);border-radius:13px;
  background:linear-gradient(145deg,rgba(10,40,91,.58),rgba(24,69,127,.44));
  box-shadow:inset 3px 4px 9px rgba(2,20,54,.42),inset -2px -2px 5px rgba(98,161,228,.14),0 4px 8px rgba(4,23,55,.18)
}
.ui-3d .company-switcher small{color:#9db6d5}.ui-3d .company-switcher strong{color:#fff;text-shadow:0 1px 2px #081f47}.ui-3d .company-switcher span{color:#a8bdd6}
.ui-3d .sidebar nav>p{color:#819fc5}
.ui-3d .sidebar nav{padding:2px 4px 8px 0;scrollbar-color:#4c79aa transparent}
.ui-3d .sidebar nav::-webkit-scrollbar-thumb{background:#4c79aa}
.ui-3d .sidebar nav a{margin:4px 0;border:1px solid transparent;border-radius:11px;color:#c4d2e5;text-shadow:0 1px 2px rgba(3,20,53,.5)}
.ui-3d .sidebar nav a:hover{border-color:rgba(148,196,242,.16);background:linear-gradient(145deg,rgba(37,91,151,.74),rgba(14,52,109,.74));color:#fff;box-shadow:0 5px 9px rgba(3,23,58,.24)}
.ui-3d .sidebar nav a.active{
  border-color:rgba(109,184,248,.3);background:linear-gradient(145deg,#1b579e,#0d326e);color:#fff;
  box-shadow:inset 3px 4px 8px rgba(2,19,52,.48),inset -2px -2px 5px rgba(89,157,226,.2),0 5px 10px rgba(2,19,53,.25)
}
.ui-3d .sidebar nav a.active:before{content:"";width:3px;align-self:stretch;margin-left:-11px;border-radius:0 5px 5px 0;background:#45d8cd;box-shadow:0 0 9px #45d8cd}
.ui-3d .sidebar nav a i{color:#6fd6dc;filter:drop-shadow(0 2px 2px rgba(0,14,47,.58))}
.ui-3d .sidebar nav a.nav-products i,.ui-3d .sidebar nav a.nav-reports i{color:#f19969}
.ui-3d .sidebar nav a.nav-customers i,.ui-3d .sidebar nav a.nav-finance i{color:#f4b66d}
.ui-3d .sidebar nav a.nav-orders i{color:#b8c9e2}.ui-3d .sidebar nav a.nav-inventory i{color:#6ce0a6}
.ui-3d .sidebar-user{border-top-color:rgba(215,232,253,.17);background:transparent}
.ui-3d .avatar{border:1px solid rgba(255,255,255,.42);background:linear-gradient(145deg,#9ba9bb,#536b8e);color:#fff;box-shadow:0 5px 10px rgba(2,18,49,.36),inset 0 2px 3px rgba(255,255,255,.52)}
.ui-3d .sidebar-user strong{color:#fff}.ui-3d .sidebar-user small{color:#a7bad3}.ui-3d .sidebar-user button{color:#b9cbe1}
.ui-3d .app-main{margin-left:264px}
.ui-3d .topbar{
  height:72px;margin:14px 18px 0;padding:0 25px;border:1px solid rgba(255,255,255,.86);border-radius:16px;
  background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(242,245,251,.94));
  box-shadow:var(--shadow-soft),inset 0 -1px 0 rgba(133,151,181,.14);backdrop-filter:blur(14px)
}
.ui-3d .page-context small{color:#74829a}.ui-3d .page-context strong{color:#15243b}.ui-3d .top-date{color:#51617a}.ui-3d .top-help{border-left-color:#d9e1ec;color:#075f67}
.ui-3d .content{max-width:1540px;padding:28px 34px 52px}
.ui-3d .page-heading{
  position:relative;align-items:center;margin-bottom:26px;padding:22px 25px;border:1px solid rgba(255,255,255,.94);border-radius:17px;
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(239,242,249,.98));box-shadow:var(--shadow)
}
.ui-3d .page-heading:after{content:"";position:absolute;right:22px;bottom:8px;left:22px;height:1px;background:linear-gradient(90deg,transparent,rgba(107,128,164,.18),transparent)}
.ui-3d .page-heading h1{color:#132136;text-shadow:0 2px 1px #fff}.ui-3d .eyebrow{color:#087f78}.ui-3d .page-heading>div>span{color:#5f6f87}
.ui-3d.route-dashboard .page-heading{padding:10px 2px 2px;border:0;background:transparent;box-shadow:none}
.ui-3d.route-dashboard .page-heading:after{display:none}
.ui-3d .button{
  position:relative;min-height:43px;border-radius:10px;letter-spacing:.01em;
  box-shadow:0 7px 12px rgba(39,57,91,.2),inset 0 2px 2px rgba(255,255,255,.75),inset 0 -3px 5px rgba(37,53,83,.12)
}
.ui-3d .button:active{transform:translateY(2px);box-shadow:inset 2px 3px 6px rgba(23,41,73,.25)}
.ui-3d .button.primary{border-color:#1365b8;background:linear-gradient(180deg,#2c96ee 0%,#1773ce 48%,#1159ac 100%);color:#fff;text-shadow:0 1px 2px rgba(4,34,82,.7);box-shadow:0 8px 14px rgba(18,82,157,.31),inset 0 2px 2px rgba(255,255,255,.65),inset 0 -4px 6px rgba(7,54,123,.28)}
.ui-3d .button.primary:hover{background:linear-gradient(180deg,#3aa7f5,#1473d1 55%,#0d56a8);box-shadow:0 11px 19px rgba(18,82,157,.37),inset 0 2px 2px rgba(255,255,255,.68);transform:translateY(-2px)}
.ui-3d .button.secondary{border-color:#c8d2e2;background:linear-gradient(145deg,#fff,#e8edf5);color:#294668;text-shadow:0 1px #fff}
.ui-3d .button.secondary:hover{border-color:#9fb4d0;background:linear-gradient(145deg,#fff,#dde7f3);color:#174b81;box-shadow:var(--shadow-hover);transform:translateY(-2px)}
.ui-3d .card,.ui-3d .metric-card,.ui-3d .form-card{
  border:1px solid rgba(255,255,255,.94);border-radius:17px;background:linear-gradient(145deg,#fff 0%,#f2f4f8 100%);
  box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.98)
}
.ui-3d .card{padding:20px}.ui-3d .metric-grid{gap:17px}.ui-3d .metric-card{position:relative;overflow:hidden;min-height:132px;padding:20px}
.ui-3d .metric-card:after{content:"";position:absolute;inset:0 0 auto;height:40%;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.42),transparent)}
.ui-3d .metric-card>span,.ui-3d .metric-card>strong,.ui-3d .metric-card>small{position:relative;z-index:1}
.ui-3d .metric-card>strong{color:#17335a;text-shadow:0 2px 1px rgba(255,255,255,.85),0 3px 3px rgba(37,58,91,.2)}
.ui-3d .metric-card>small b{border:1px solid rgba(255,255,255,.62);box-shadow:0 3px 5px rgba(26,52,79,.16),inset 0 1px 1px rgba(255,255,255,.9)}
.ui-3d .dashboard-metrics .metric-card{border-color:rgba(255,255,255,.48);box-shadow:9px 12px 20px rgba(32,47,78,.25),inset 0 2px 3px rgba(255,255,255,.72),inset 0 -5px 8px rgba(47,62,93,.13)}
.ui-3d .dashboard-metrics .metric-card>span{color:#17243c}.ui-3d .dashboard-metrics .metric-card>strong{color:#1657a3;font-size:1.7rem}
.ui-3d .dashboard-metrics .metric-sales{background:linear-gradient(135deg,#23c3c6,#27abbc)}
.ui-3d .dashboard-metrics .metric-orders{background:linear-gradient(135deg,#b4df82,#91cb63)}
.ui-3d .dashboard-metrics .metric-receivables{background:linear-gradient(135deg,#ffc357,#f4a12e)}
.ui-3d .dashboard-metrics .metric-stock{background:linear-gradient(135deg,#bd7ad0,#9d56bb)}
.ui-3d .dashboard-metrics .metric-card small{color:#24354d}.ui-3d .dashboard-metrics .metric-card small b{background:rgba(239,248,255,.82);color:#194e85}
.ui-3d .dashboard-columns{gap:18px;margin-top:18px}
.ui-3d .card-head h2{color:#15243a;font-size:.9rem}.ui-3d .card-head p{color:#697892}.ui-3d .card-head>a{color:#075f67;text-shadow:0 1px #fff}
.ui-3d .table-scroll{margin:0 -20px -20px;padding:0 10px 10px}
.ui-3d table{border-collapse:separate;border-spacing:0 9px}
.ui-3d th{padding:10px 14px;border:4px solid transparent;border-radius:999px;background:linear-gradient(180deg,#58bd83 0%,#2f9163 58%,#23744e 100%) padding-box;color:#fff;font-size:.58rem;text-shadow:0 1px 2px rgba(9,57,36,.75);box-shadow:0 6px 9px rgba(32,66,51,.22),inset 0 2px 2px rgba(255,255,255,.58),inset 0 -3px 4px rgba(13,79,50,.24)}
.ui-3d td{padding:12px 14px;border-top:1px solid #e1e6ee;border-bottom:1px solid #d7dee9;background:linear-gradient(180deg,#fff,#f0f2f7);color:#55647c;box-shadow:0 7px 10px -9px rgba(30,43,72,.75)}
.ui-3d td:first-child{border-left:1px solid #dce3ed;border-radius:13px 0 0 13px;box-shadow:-4px 7px 12px -8px rgba(30,43,72,.6)}
.ui-3d td:last-child{border-right:1px solid #d4dce8;border-radius:0 13px 13px 0;box-shadow:6px 7px 12px -8px rgba(30,43,72,.7)}
.ui-3d tbody tr:hover td{border-color:#afc2da;background:linear-gradient(180deg,#fff,#e9f1fb);color:#253d5e;transform:translateY(-1px)}
.ui-3d td>strong{color:#18273d}.ui-3d td code{border:1px solid #d9e2ec;background:linear-gradient(145deg,#edf2f6,#fff);color:#28415f;box-shadow:inset 1px 2px 3px rgba(44,62,91,.11)}
.ui-3d .toolbar{min-height:60px;margin:-20px -20px 2px;padding:10px 15px;border-bottom:0;border-radius:16px 16px 12px 12px;background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(229,234,243,.88));box-shadow:inset 0 -4px 8px rgba(51,67,98,.08)}
.ui-3d input,.ui-3d select,.ui-3d textarea,.ui-3d .input-like{
  border-color:#cbd5e3;border-radius:10px;background:linear-gradient(145deg,#f2f5f9,#fff);color:#233955;
  box-shadow:inset 2px 3px 6px rgba(43,59,88,.12),inset -2px -2px 4px rgba(255,255,255,.94)
}
.ui-3d input:focus,.ui-3d select:focus,.ui-3d textarea:focus{border-color:#438fca;box-shadow:inset 2px 3px 6px rgba(43,59,88,.1),0 0 0 3px rgba(36,133,206,.15)}
.ui-3d .search-control{border-color:#c6d2e1;background:linear-gradient(145deg,#e8edf5,#fff);box-shadow:var(--inset)}
.ui-3d .search-control input{background:transparent;box-shadow:none}
.ui-3d .badge{border:1px solid rgba(255,255,255,.8);border-radius:999px;padding:5px 9px;box-shadow:0 4px 7px rgba(40,55,84,.2),inset 0 1px 2px rgba(255,255,255,.85);text-shadow:0 1px rgba(255,255,255,.78)}
.ui-3d .badge.delivered,.ui-3d .badge.paid,.ui-3d .badge.active,.ui-3d .badge.healthy,.ui-3d .badge.received,.ui-3d .badge.posted,.ui-3d .badge.matched{background:linear-gradient(180deg,#99eca9,#39b964);color:#155f37}
.ui-3d .badge.confirmed,.ui-3d .badge.processing,.ui-3d .badge.submitted,.ui-3d .badge.open,.ui-3d .badge.bank{background:linear-gradient(180deg,#d9edff,#9bcdf3);color:#215d93}
.ui-3d .badge.ready,.ui-3d .badge.partial{background:linear-gradient(180deg,#ffe7a7,#f4b849);color:#805515}
.ui-3d .badge.cancelled,.ui-3d .badge.blocked,.ui-3d .badge.overdue,.ui-3d .badge.low,.ui-3d .badge.exception{background:linear-gradient(180deg,#ffb28f,#ef6945);color:#8d2816;text-shadow:0 1px rgba(255,255,255,.45)}
.ui-3d .module-tabs{margin:-8px 0 25px;padding:7px;border:1px solid #cbd7e7;border-radius:14px;background:linear-gradient(145deg,#eef2f7,#fff);box-shadow:var(--shadow)}
.ui-3d .module-tabs a{border:1px solid transparent;border-radius:9px;color:#52647d}
.ui-3d .module-tabs a:hover{background:linear-gradient(145deg,#fff,#dfe8f4);color:#185a9d;box-shadow:0 5px 9px rgba(39,57,89,.15)}
.ui-3d .module-tabs a.active{border-color:#2a77bd;background:linear-gradient(180deg,#318cdb,#1763ad);color:#fff;box-shadow:inset 0 2px 2px rgba(255,255,255,.5),inset 0 -3px 5px rgba(5,50,101,.27),0 6px 10px rgba(24,80,140,.28);text-shadow:0 1px 2px #0a417b}
.ui-3d .form-card{background:linear-gradient(145deg,#f9fbfd,#e9eef5)}
.ui-3d .form-card>section{margin:14px;border:1px solid #e7ebf2;border-radius:14px;background:linear-gradient(145deg,#fff,#f0f3f8);box-shadow:6px 8px 15px rgba(42,57,86,.11),-4px -4px 10px rgba(255,255,255,.92)}
.ui-3d .section-heading>span{border:1px solid #a8d2e7;background:linear-gradient(145deg,#b9f1e6,#45bda9);color:#075f5a;box-shadow:0 5px 8px rgba(20,79,87,.18),inset 0 1px 2px #fff}
.ui-3d .form-card>footer,.ui-3d .modal footer{border-top:1px solid #dce3ed;background:linear-gradient(180deg,#f4f6fa,#e7ecf3)}
.ui-3d .summary-box,.ui-3d .readout,.ui-3d .reconciliation-summary>div,.ui-3d .reconciliation-summary>label,.ui-3d .journal-totals{
  border-color:#cdd9e7;background:linear-gradient(145deg,#e9f0f7,#fff);box-shadow:var(--inset)
}
.ui-3d .record-row{border-radius:12px}.ui-3d .record-row:hover{background:linear-gradient(145deg,#fff,#e8eef6);box-shadow:0 6px 10px rgba(43,59,89,.12)}
.ui-3d .record-row.active{border-color:#62a8ca;background:linear-gradient(145deg,#dff4f3,#edf6ff);box-shadow:inset 2px 3px 5px rgba(37,76,104,.13)}
.ui-3d .smart-pagination{margin:22px -20px -20px;padding:13px 18px;border-top-color:#d7dfeb;border-radius:0 0 16px 16px;background:linear-gradient(180deg,#f4f6fa,#e8edf4)}
.ui-3d .page-control{border-color:#c4cfdf;border-radius:9px;background:linear-gradient(145deg,#fff,#e4e9f1);color:#34506e;box-shadow:0 4px 7px rgba(42,57,87,.15),inset 0 1px 1px #fff}
.ui-3d .page-control:hover{border-color:#63a0ce;color:#175e9d;transform:translateY(-1px)}
.ui-3d .page-control.active{border-color:#216db1;background:linear-gradient(180deg,#3597e4,#1768b6);color:#fff;text-shadow:0 1px 2px #0b4781;box-shadow:0 6px 9px rgba(23,89,154,.3),inset 0 2px 2px rgba(255,255,255,.5)}
.ui-3d .modal{border:1px solid rgba(255,255,255,.9);border-radius:18px;background:linear-gradient(145deg,#fff,#eef2f7);box-shadow:20px 26px 65px rgba(13,28,61,.42),inset 0 1px 0 #fff}
.ui-3d .modal::backdrop{background:rgba(10,24,54,.68);backdrop-filter:blur(5px)}
.ui-3d .modal header{border-bottom-color:#d9e1ec;background:linear-gradient(145deg,#fff,#e9eef5)}
.ui-3d .notice{border:1px solid #b9dfe0;border-radius:10px;background:linear-gradient(145deg,#daf2ef,#effafa);box-shadow:inset 2px 3px 5px rgba(36,90,91,.1)}
.ui-3d .flash{border-radius:12px;box-shadow:0 8px 15px rgba(32,76,68,.13),inset 0 1px 1px #fff}
.ui-3d .app-footer,.ui-3d .auth-footer{border-top-color:rgba(177,190,210,.5);background:rgba(241,244,249,.78);color:#68768b;text-shadow:0 1px #fff}

/* Dashboard: colour-led executive view from the approved reference. */
.ui-3d.route-dashboard .recent-orders{padding-bottom:18px}
.ui-3d.route-dashboard .recent-orders .table-scroll{padding:0 8px 8px}
.ui-3d.route-dashboard .recent-orders table{border-spacing:0 7px}
.ui-3d.route-dashboard .recent-orders th{border:0;background:transparent;color:#263650;text-shadow:none;box-shadow:none}
.ui-3d.route-dashboard .recent-orders tbody tr:nth-child(4n+1) td{border-color:#1769bc;background:linear-gradient(180deg,#2a91ea,#1471cf);color:#eef7ff}
.ui-3d.route-dashboard .recent-orders tbody tr:nth-child(4n+2) td{border-color:#159b9e;background:linear-gradient(180deg,#38c6c3,#1ca6ab);color:#123e4d}
.ui-3d.route-dashboard .recent-orders tbody tr:nth-child(4n+3) td{border-color:#80bd43;background:linear-gradient(180deg,#b5dc75,#91ca4f);color:#254225}
.ui-3d.route-dashboard .recent-orders tbody tr:nth-child(4n+4) td{border-color:#e3972b;background:linear-gradient(180deg,#ffc25a,#f0a52d);color:#4d361b}
.ui-3d.route-dashboard .recent-orders tbody td{box-shadow:0 7px 10px rgba(39,56,87,.23),inset 0 1px 1px rgba(255,255,255,.45)}
.ui-3d.route-dashboard .recent-orders tbody tr:first-child .table-link,.ui-3d.route-dashboard .recent-orders tbody tr:first-child td strong{color:#fff}
.ui-3d.route-dashboard .stock-alerts{border-color:#dc4f2f;background:linear-gradient(145deg,#f4653e,#de442a);color:#fff;box-shadow:10px 13px 22px rgba(126,47,29,.29),inset 0 2px 2px rgba(255,255,255,.4),inset 0 -6px 9px rgba(119,28,18,.14)}
.ui-3d.route-dashboard .stock-alerts .card-head h2,.ui-3d.route-dashboard .stock-alerts .card-head p,.ui-3d.route-dashboard .stock-alerts .card-head a,.ui-3d.route-dashboard .stock-alerts .empty-compact{color:#fff;text-shadow:0 1px 2px rgba(93,27,17,.48)}
.ui-3d.route-dashboard .stock-alerts .alert-list>a{border-color:rgba(255,255,255,.2);color:#fff}.ui-3d.route-dashboard .stock-alerts .alert-list small{color:#ffe2d8}.ui-3d.route-dashboard .stock-alerts .alert-icon{background:linear-gradient(145deg,#fff,#ffd3c6);box-shadow:0 5px 8px rgba(104,30,18,.25)}

/* Inventory: raised pill headings and individual stock records. */
.ui-3d.route-inventory .page-heading .eyebrow{font-size:.75rem}.ui-3d.route-inventory .page-heading h1{font-size:2.15rem}
.ui-3d .inventory-card{padding:20px}.ui-3d .inventory-table{border-spacing:0 12px}
.ui-3d .inventory-table th{font-size:.61rem}.ui-3d .inventory-table td{padding-top:13px;padding-bottom:13px}

/* Sign-in and utility screens use the same premium material system. */
.ui-3d.auth-body{background:radial-gradient(circle at 77% 18%,rgba(74,151,225,.25),transparent 25%),linear-gradient(135deg,#e9eef7,#f8f9fc)}
.ui-3d .login-story{position:relative;overflow:hidden;background:linear-gradient(145deg,#174b8b,#0d2f68 54%,#092553);box-shadow:12px 0 30px rgba(14,39,78,.2)}
.ui-3d .login-story:after{content:"";position:absolute;width:420px;height:420px;right:-190px;bottom:-190px;border:70px solid rgba(64,189,213,.11);border-radius:50%}
.ui-3d .login-story .brand-mark{flex:0 0 43px}.ui-3d .login-brand strong{color:#fff}.ui-3d .login-brand small{color:#a8c0df}
.ui-3d .story-content>p{color:#67e3d7}.ui-3d .story-content h1{position:relative;z-index:1;color:#fff;text-shadow:0 3px 4px rgba(4,25,61,.45)}.ui-3d .story-content li{color:#c6d6e9}.ui-3d .story-content li:before{background:linear-gradient(145deg,#56dbce,#138d8b);color:#fff;box-shadow:0 4px 8px rgba(4,34,72,.35)}
.ui-3d .login-card{border:1px solid rgba(255,255,255,.94);border-radius:20px;background:linear-gradient(145deg,#fff,#edf1f7);box-shadow:14px 18px 35px rgba(39,55,87,.2),-7px -7px 18px rgba(255,255,255,.9)}
.ui-3d .demo-note{border:1px solid #d0d9e6;border-radius:11px;background:linear-gradient(145deg,#e9eef5,#fff);box-shadow:var(--inset)}
.ui-3d .not-found{border:1px solid #fff;border-radius:19px;background:linear-gradient(145deg,#fff,#edf1f7);box-shadow:var(--shadow)}

@media(max-width:1100px){
  .ui-3d .dashboard-metrics{grid-template-columns:repeat(2,1fr)}
  .ui-3d .dashboard-columns{grid-template-columns:1fr}
}
@media(max-width:800px){
  .ui-3d .sidebar{width:276px;transform:translateX(-110%);box-shadow:12px 0 34px rgba(8,30,70,.38)}
  .ui-3d .sidebar.open{transform:translateX(0)}
  .ui-3d .app-main{margin-left:0}
  .ui-3d .topbar{height:62px;margin:8px 9px 0;padding:0 14px;border-radius:13px}
  .ui-3d .mobile-toggle{width:34px;height:34px;display:grid;place-items:center;border:1px solid #c7d3e2;border-radius:9px;background:linear-gradient(145deg,#fff,#e1e8f1);color:#28527f;box-shadow:0 4px 7px rgba(40,57,88,.17)}
  .ui-3d .content{padding:21px 14px 38px}
  .ui-3d .page-heading{align-items:flex-start;padding:19px}
  .ui-3d .form-card>section{margin:10px;padding:19px}
  .ui-3d table{min-width:720px}
  .ui-3d .dashboard-columns table{min-width:620px}
}
@media(max-width:520px){
  .ui-3d .dashboard-metrics{grid-template-columns:1fr}
  .ui-3d .metric-card{min-height:122px}
  .ui-3d .page-heading h1{font-size:1.65rem}
  .ui-3d .card{padding:16px}.ui-3d .toolbar{margin:-16px -16px 2px}.ui-3d .table-scroll{margin:0 -16px -16px}
  .ui-3d .smart-pagination{margin:18px -16px -16px}
  .ui-3d .login-card{padding:27px 21px}
}
@media(prefers-reduced-motion:reduce){
  .ui-3d *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}

/* Phase 6: customer returns, traceability and warehouse transfers. */
.return-metrics{margin:0 0 18px}.return-entry{width:100%;margin:0;padding:0 10px 10px}.return-entry table{min-width:1050px}.return-entry input,.return-entry select{min-width:125px}.return-entry td:first-child{min-width:220px}
.transfer-lines{display:grid;gap:9px;width:100%}.transfer-line{display:grid;grid-template-columns:minmax(260px,2fr) minmax(105px,.55fr) minmax(140px,.75fr) minmax(145px,.75fr) 36px;gap:9px;align-items:center;padding:10px;border:1px solid #d9e1ec;border-radius:12px;background:linear-gradient(145deg,#fff,#edf1f6);box-shadow:0 6px 11px rgba(38,55,86,.11),inset 0 1px 0 #fff}.transfer-line-head{padding:8px 11px;border:0;background:linear-gradient(180deg,#59bd84,#2f8f61);color:#fff;font-size:.61rem;font-weight:850;text-transform:uppercase;text-shadow:0 1px 2px rgba(8,57,35,.65);box-shadow:0 6px 10px rgba(32,67,51,.2),inset 0 2px 2px rgba(255,255,255,.45)}.transfer-line input,.transfer-line select{min-height:40px;font-size:.68rem}.transfer-line .remove-line{border-radius:9px;box-shadow:0 4px 7px rgba(102,42,30,.18),inset 0 1px 1px #fff}.badge.saleable{background:linear-gradient(180deg,#99eca9,#39b964);color:#155f37}.badge.damaged,.badge.expired{background:linear-gradient(180deg,#ffb28f,#ef6945);color:#8d2816}
@media(max-width:900px){.transfer-lines{overflow-x:auto}.transfer-line{min-width:850px}.return-metrics{grid-template-columns:1fr}}

/* Phase 7: bin locations, cycle counts and physical inventory. */
.count-metrics{margin:0 0 18px}.count-metrics .metric-card>strong{font-size:1.38rem}.button.danger{border-color:#d8735a;background:linear-gradient(180deg,#fff5f1,#ffd9cf);color:#9b3825;box-shadow:0 5px 9px rgba(132,48,31,.14)}
.check-field{display:flex!important;align-items:center;gap:11px;min-height:48px;margin-top:20px;padding:9px 11px;border:1px solid #d9e1ec;border-radius:10px;background:linear-gradient(145deg,#fff,#edf2f7)}.check-field input{width:18px;height:18px;margin:0!important}.check-field span,.check-field strong,.check-field small{display:block}.check-field small{margin-top:3px;color:#7d8999;font-weight:400}
.count-candidates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.count-candidates .notice{grid-column:1/-1;margin:0 0 4px}.count-candidate{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid #d7e0eb;border-radius:11px;background:linear-gradient(145deg,#fff,#edf2f7);box-shadow:0 5px 9px rgba(39,55,86,.1),inset 0 1px 0 #fff}.count-candidate[hidden]{display:none}.count-candidate input{width:18px;height:18px;flex:0 0 auto}.count-candidate span,.count-candidate strong,.count-candidate small{display:block}.count-candidate strong{color:#26364d;font-size:.72rem}.count-candidate small{margin-top:4px;color:#718096;font-size:.62rem}.count-candidate code{padding:2px 4px;border-radius:4px;background:#e5ebf0}
.count-heading .badge{margin:auto 0}.count-action-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.count-action-bar>div:first-child strong,.count-action-bar>div:first-child span{display:block}.count-action-bar>div:first-child strong{color:#23344b;font-size:.78rem}.count-action-bar>div:first-child span{margin-top:4px;color:#738198;font-size:.65rem}.count-action-bar form{margin:0}.count-error{margin:0 0 16px}
.count-sheet{margin-bottom:0}.count-sheet>section{display:block;margin:10px!important;padding:19px!important}.count-sheet .section-heading{margin-bottom:14px}.count-table{margin:0!important;padding:0!important;border:1px solid #d7e0eb;border-radius:12px}.count-table table{min-width:980px}.count-table select,.count-table input{min-width:125px;min-height:38px;font-size:.67rem}.count-table td:nth-child(4) input{width:130px}.count-table td:last-child input{min-width:180px}.count-table output{font-weight:850}.blind-value{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef1f5;color:#6d7888;font-size:.61rem;font-weight:800}.badge.counting{background:linear-gradient(180deg,#ffe7a7,#f4b849);color:#805515}
.ui-3d .count-candidate:has(input:checked){border-color:#62b997;background:linear-gradient(145deg,#f7fffb,#dff6eb);box-shadow:0 6px 11px rgba(32,103,73,.17),inset 0 1px 0 #fff}.ui-3d .count-action-bar{border-color:#cbd7e7;background:linear-gradient(145deg,#fff,#edf2f8)}
@media(max-width:1000px){.count-candidates{grid-template-columns:1fr}.count-action-bar{align-items:flex-start;flex-direction:column}.count-action-bar .actions{width:100%;flex-wrap:wrap}}
@media(max-width:600px){.count-metrics{grid-template-columns:1fr}.count-action-bar .actions,.count-action-bar form,.count-action-bar .button{width:100%}.check-field{margin-top:0}}

/* Phases 8–10: traceability, logistics and distribution network. */
.badge.expiring_soon,.badge.near_expiry,.badge.quarantine,.badge.maintenance,.badge.failed,.badge.blocked{background:linear-gradient(180deg,#ffd19f,#f18349);color:#843517}.badge.expired,.badge.cancelled{background:linear-gradient(180deg,#ffb6ab,#e95d52);color:#7c211b}.badge.safe,.badge.normal,.badge.registered,.badge.available,.badge.completed,.badge.converted,.badge.active,.badge.delivered,.badge.settled{background:linear-gradient(180deg,#b9efcf,#52bd82);color:#155f42}.badge.on_trip,.badge.dispatched,.badge.submitted{background:linear-gradient(180deg,#a9d7ff,#3c92da);color:#174f81}.badge.scheduled,.badge.approved{background:linear-gradient(180deg,#ead2ff,#a866d4);color:#5d287a}.badge.product,.badge.lot,.badge.serial{background:linear-gradient(180deg,#cce9ff,#69abe2);color:#194f7a}
.scan-surface{max-width:920px;margin:0 auto}.scan-surface>form{display:grid;grid-template-columns:1fr auto;gap:13px;align-items:end;padding:25px;border-radius:16px;background:linear-gradient(145deg,#173f7a,#0d2d62);box-shadow:0 13px 23px rgba(22,48,88,.28),inset 0 2px 2px rgba(255,255,255,.24)}.scan-surface>form label{color:#dceeff}.scan-surface>form input{margin-top:8px;background:#fff;font-size:1rem}.scan-results{display:grid;gap:10px;margin-top:20px}.scan-results article{display:flex;align-items:center;gap:15px;padding:15px;border:1px solid #d6e1ee;border-radius:13px;background:linear-gradient(145deg,#fff,#eaf1f7);box-shadow:0 7px 12px rgba(37,55,88,.12),inset 0 1px #fff}.scan-results strong,.scan-results small{display:block}.scan-results small{margin-top:4px;color:#708096}
.barcode-label{width:360px;margin:70px auto 20px;padding:28px;text-align:center;border:2px solid #172e50;border-radius:13px;background:#fff;color:#0e1f36}.barcode-label h1{margin:8px 0;font-size:1.35rem}.barcode-label>strong,.barcode-label>span{display:block;margin-top:9px}.barcode-bars{height:82px;margin:18px 0;background:repeating-linear-gradient(90deg,#0c1727 0 2px,transparent 2px 4px,#0c1727 4px 8px,transparent 8px 11px,#0c1727 11px 12px,transparent 12px 16px)}.print-toolbar,.print-controls{display:flex;justify-content:center;gap:10px;margin:20px}
.logistics-metrics{margin-bottom:18px}.logistics-resources,.distribution-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.resource-list,.network-list{display:grid;gap:8px;margin-top:14px}.resource-list>a,.network-list>a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #d6e0eb;border-radius:11px;background:linear-gradient(145deg,#fff,#edf2f7);box-shadow:0 5px 9px rgba(37,55,88,.1),inset 0 1px #fff;color:#26364e;text-decoration:none}.resource-list strong,.resource-list small,.network-list strong,.network-list small{display:block}.resource-list small,.network-list small{margin-top:3px;color:#758399}.network-mark,.stop-sequence{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:11px;background:linear-gradient(145deg,#55c9a0,#178464);color:#fff;font-weight:900;box-shadow:0 6px 9px rgba(25,105,78,.23),inset 0 2px 2px rgba(255,255,255,.4)}
.run-order-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.run-order-picker label{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #d5e0eb;border-radius:11px;background:linear-gradient(145deg,#fff,#edf2f7);box-shadow:0 5px 9px rgba(37,55,88,.09),inset 0 1px #fff}.run-order-picker label[hidden]{display:none}.run-order-picker input{width:18px;height:18px}.run-order-picker strong,.run-order-picker small{display:block}.run-order-picker small{margin-top:4px;color:#758399}.run-order-picker .notice{grid-column:1/-1}
.run-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-bottom:17px;padding:0;overflow:hidden}.run-summary article{padding:19px;border-right:1px solid #d9e1eb}.run-summary article:last-child{border:0}.run-summary small,.run-summary strong,.run-summary span{display:block}.run-summary small{color:#78879a;text-transform:uppercase}.run-summary strong{margin:7px 0;color:#1f334d;font-size:.92rem}.run-summary span{color:#718096;font-size:.65rem}.delivery-stops{display:grid;gap:13px}.delivery-stop{padding:0;overflow:hidden}.delivery-stop>header{display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;padding:17px}.delivery-stop header>div:nth-child(2)>*{display:block}.delivery-stop header small{margin-top:4px;color:#758399}.stop-actions{display:flex;align-items:center;gap:9px}.stop-actions a{font-size:.63rem;font-weight:800}.pod-record,.stop-panel{padding:13px 18px;border-top:1px solid #d9e2ed;background:#f4faf7}.pod-record{display:flex;justify-content:space-between;color:#277358}.stop-panel summary{cursor:pointer;color:#1d6f61;font-weight:800}.stop-panel form{margin-top:13px}.failure-panel{background:#fff5f1}.failure-panel summary{color:#9a432f}.settlement-card{margin-top:18px}.inline-form{display:flex;align-items:end;gap:10px}.inline-form label{min-width:160px}.inline-form input{margin-top:5px}
.distribution-tabs{margin-bottom:18px}.order-network-list>a>span:last-child{text-align:right}.price-lines,.dealer-order-lines{display:grid;gap:9px}.price-line,.dealer-order-line{display:grid;grid-template-columns:minmax(260px,1.7fr) minmax(130px,.65fr) minmax(130px,.65fr) 38px;gap:9px;align-items:center;padding:10px;border:1px solid #d6e0eb;border-radius:11px;background:linear-gradient(145deg,#fff,#edf2f7);box-shadow:0 5px 9px rgba(37,55,88,.09),inset 0 1px #fff}.dealer-order-line{grid-template-columns:minmax(260px,1.7fr) minmax(120px,.55fr) minmax(120px,.65fr) minmax(120px,.65fr) 38px}.price-line-head,.dealer-order-line.line-head{border-color:#236fc0;background:linear-gradient(180deg,#3795e1,#1b68b4);color:#fff;font-size:.62rem;font-weight:850;text-transform:uppercase;text-shadow:0 1px 2px #164d83}.dealer-order-line output{font-weight:800}.dealer-order-total{margin-top:15px;padding:14px;text-align:right;color:#64758b}.dealer-order-total strong{margin-left:12px;color:#1c3451;font-size:1.15rem}.workflow-buttons{display:flex;gap:6px;flex-wrap:wrap}.workflow-buttons form{margin:0}.workflow-buttons button{padding:6px 8px;border:1px solid #9ec9d7;border-radius:7px;background:#e9f6f4;color:#13695f;font-size:.59rem;font-weight:800}.workflow-buttons .danger-link{border-color:#e7b5aa;background:#fff0ec;color:#9c3c29}
.print-sheet{max-width:900px;margin:25px auto;padding:45px;border:1px solid #d5dce6;background:#fff;box-shadow:0 15px 35px rgba(27,42,70,.17)}.print-head,.print-address{display:flex;justify-content:space-between;gap:30px}.print-head{padding-bottom:25px;border-bottom:3px solid #155e9d}.print-head>div:last-child{text-align:right}.print-head p{margin:0;color:#1b6cae;font-weight:850;text-transform:uppercase}.print-head h1{margin:5px 0}.print-brand{display:flex;align-items:center;gap:12px}.print-brand>span{display:grid;place-items:center;width:45px;height:45px;border-radius:11px;background:#176db8;color:#fff;font-size:1.4rem;font-weight:900}.print-brand strong,.print-brand small,.print-address strong,.print-address span,.print-address small{display:block}.print-address{padding:24px 0}.print-address>div:last-child{text-align:right}.print-sheet table{min-width:0}.print-totals{width:330px;margin:25px 0 25px auto}.print-totals span{display:flex;justify-content:space-between;padding:8px}.print-totals .grand{border-top:2px solid #243854;font-size:1rem}.print-sheet>footer{display:flex;justify-content:space-between;margin-top:70px}.print-sheet>footer div{width:200px;text-align:center}.print-sheet>footer i{display:block;margin-top:35px;border-top:1px solid #526176}.receipt-amount{margin:35px 0;padding:35px;text-align:center;border-radius:14px;background:#edf6ff}.receipt-amount small,.receipt-amount strong,.receipt-amount span{display:block}.receipt-amount strong{margin:10px;font-size:2rem;color:#145d9b}
@media(max-width:1050px){.logistics-resources,.distribution-columns{grid-template-columns:1fr}.run-summary{grid-template-columns:repeat(2,1fr)}.run-order-picker{grid-template-columns:1fr}.price-lines,.dealer-order-lines{overflow-x:auto}.price-line{min-width:750px}.dealer-order-line{min-width:900px}}
@media(max-width:650px){.scan-surface>form{grid-template-columns:1fr}.run-summary{grid-template-columns:1fr}.run-summary article{border-right:0;border-bottom:1px solid #d9e1eb}.delivery-stop>header{grid-template-columns:auto 1fr}.stop-actions{grid-column:1/-1}.inline-form{align-items:stretch;flex-direction:column}.inline-form label,.inline-form .button{width:100%}.print-sheet{padding:22px}.print-head,.print-address{flex-direction:column}.print-head>div:last-child,.print-address>div:last-child{text-align:left}}
@media print{.sidebar,.topbar,.app-footer,.print-controls,.print-toolbar{display:none!important}.app-main{margin:0!important}.content{padding:0!important}.print-sheet,.barcode-label{margin:0 auto;border-color:#333;box-shadow:none}.print-sheet{max-width:none}.print-sheet table{min-width:0!important}.print-sheet .table-scroll{overflow:visible}}

/* Phases 11–13: CRM, HR/payroll and advanced analytics. */
.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid .full{grid-column:1/-1}.form-grid .span-two{grid-column:span 2}.crm-columns,.hr-columns,.ticket-layout,.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}.ticket-layout{grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr)}.analytics-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.pipeline-list{display:grid;gap:9px}.pipeline-list>a{position:relative;display:flex;justify-content:space-between;gap:12px;padding:13px 13px 18px;border:1px solid #d7e1ed;border-radius:11px;background:linear-gradient(145deg,#fff,#edf2f7);box-shadow:0 5px 9px rgba(37,55,88,.1),inset 0 1px #fff;color:#253850}.pipeline-list strong,.pipeline-list small,.pipeline-list b{display:block}.pipeline-list small{margin-top:4px;color:#728198;font-size:.61rem}.pipeline-list>a>span:last-of-type{text-align:right}.pipeline-list em{display:inline-block;margin-top:4px;color:#1b7590;font-size:.6rem;font-style:normal;font-weight:850}.pipeline-list i{position:absolute;right:12px;bottom:7px;left:12px;height:4px;border-radius:99px;background:linear-gradient(90deg,#35b9ad var(--progress),#dce6ed var(--progress))}.mini-progress,.achievement{width:95px;height:7px;margin-bottom:4px;border-radius:99px;background:#dfe7ed;overflow:hidden}.mini-progress i,.achievement i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#36c5ae,#197fc0)}.achievement.danger i{background:linear-gradient(90deg,#f2a542,#e65e43)}
.badge.urgent,.badge.high,.badge.action,.badge.rejected,.badge.absent,.badge.terminated{background:linear-gradient(180deg,#ffb08f,#ec6245);color:#812b18}.badge.medium,.badge.pending,.badge.late,.badge.submitted{background:linear-gradient(180deg,#ffe2a0,#eeb145);color:#765016}.badge.qualified,.badge.won,.badge.present,.badge.approved,.badge.paid,.badge.resolved{background:linear-gradient(180deg,#b9efd0,#4dba80);color:#145d40}.badge.contacted,.badge.assigned,.badge.in_progress,.badge.half_day{background:linear-gradient(180deg,#b7ddff,#4a98d8);color:#164f80}.badge.prospecting,.badge.qualification,.badge.proposal,.badge.negotiation,.badge.waiting_customer,.badge.leave{background:linear-gradient(180deg,#e5d0ff,#9c65d0);color:#552879}.badge.lost,.badge.closed{background:linear-gradient(180deg,#d9dee7,#929cac);color:#394858}
.inline-action{margin:0}.inline-action button{padding:6px 9px;border:1px solid #99d1c3;border-radius:7px;background:#e8f7f2;color:#176a58;font-size:.59rem;font-weight:850}.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.detail-grid>div{padding:12px;border:1px solid #d9e2ec;border-radius:10px;background:#f5f8fb}.detail-grid dt{color:#7b899b;font-size:.58rem;text-transform:uppercase}.detail-grid dd{margin:5px 0 0;color:#233850;font-size:.7rem;font-weight:800}.ticket-description{padding:15px;border-radius:11px;background:#f1f5f8}.ticket-description p,.notice p{margin:7px 0 0;line-height:1.6}.ticket-update{margin:0}.ticket-update>section{display:block}.ticket-update .form-grid{grid-template-columns:1fr}.ticket-timeline{margin-top:18px}.ticket-timeline>article{display:flex;gap:13px;padding:14px 4px;border-top:1px solid #e2e8ef}.ticket-timeline>article>i{width:12px;height:12px;margin-top:3px;border:3px solid #fff;border-radius:50%;background:#25a98d;box-shadow:0 0 0 2px #8bd6c3}.ticket-timeline strong,.ticket-timeline small{display:block}.ticket-timeline small{margin-top:3px;color:#7d8998;font-size:.59rem}.ticket-timeline p{margin:7px 0 0;color:#526274;font-size:.68rem}.ticket-heading .actions{align-items:center}.ticket-preview{margin-top:18px}
.people-list{display:grid;gap:8px}.people-list>a{display:flex;align-items:center;gap:11px;padding:11px;border:1px solid #d8e1eb;border-radius:11px;background:linear-gradient(145deg,#fff,#edf2f7);color:#26374d}.people-list>a>span:nth-child(2){min-width:0;flex:1}.people-list strong,.people-list small{display:block}.people-list small{margin-top:3px;color:#7c8999;font-size:.59rem}.people-list>a>span:last-child{text-align:right}.avatar.mini{width:34px;height:34px;flex:0 0 auto;background:linear-gradient(145deg,#65cab2,#258b75);color:#fff;box-shadow:0 5px 8px rgba(26,99,78,.2)}.payroll-preview{margin-top:18px}.attendance-sheet>section{display:block}.attendance-tools{display:flex;align-items:end;gap:12px;margin-bottom:15px}.attendance-tools label{min-width:190px;color:#52605b;font-size:.65rem;font-weight:750}.attendance-tools input,.attendance-tools select{margin-top:6px}.attendance-tools>span{margin-left:auto;color:#788697;font-size:.65rem}.attendance-table input,.attendance-table select{min-width:120px;padding:8px;font-size:.65rem}.attendance-table input[name*="notes"]{min-width:190px}.score-ring{--score:0;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle,#fff 53%,transparent 55%),conic-gradient(#28a783 calc(var(--score)*1%),#dfe8e5 0);color:#1a755d;font-size:.68rem;font-weight:900}
.payroll-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}.payroll-summary article{padding:17px;border:1px solid #d4dfeb;border-radius:13px;background:linear-gradient(145deg,#fff,#eaf0f6);box-shadow:0 8px 14px rgba(38,55,86,.13),inset 0 1px #fff}.payroll-summary span,.payroll-summary strong{display:block}.payroll-summary span{color:#78879a;font-size:.62rem}.payroll-summary strong{margin-top:8px;color:#1c3856;font-family:Georgia,serif;font-size:1.05rem}.payroll-lines input{min-width:110px;padding:8px;font-size:.65rem}.payroll-lines footer{display:flex;justify-content:flex-end;padding:15px 0 0}.payroll-workflow{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:18px}.payroll-workflow>div:first-child strong,.payroll-workflow>div:first-child span{display:block}.payroll-workflow>div:first-child span{margin-top:3px;color:#7a8797;font-size:.6rem}.payroll-workflow form{margin:0}
.date-filter{display:flex;align-items:end;gap:8px}.date-filter label{color:#667487;font-size:.6rem;font-weight:750}.date-filter input{display:block;margin-top:5px;min-width:140px}.analytics-metrics{margin-bottom:18px}.analytics-grid{grid-template-columns:minmax(0,1.5fr) minmax(300px,.65fr)}.revenue-chart{min-height:325px}.bar-chart{height:225px;display:flex;align-items:end;gap:12px;padding:24px 8px 30px;border-bottom:1px solid #dce4ed}.bar-chart>div{position:relative;display:flex;align-items:end;justify-content:center;gap:3px;height:100%;flex:1}.bar-chart span{width:min(20px,35%);min-height:3px;border-radius:7px 7px 2px 2px;box-shadow:inset 1px 1px rgba(255,255,255,.55)}.bar-sales{background:linear-gradient(180deg,#36bfc7,#1977be)}.bar-cash{background:linear-gradient(180deg,#a8dc71,#54a652)}.bar-chart small{position:absolute;top:calc(100% + 8px);font-size:.52rem;white-space:nowrap}.chart-legend{display:flex;justify-content:center;gap:18px;padding-top:14px;color:#738195;font-size:.58rem}.chart-legend span{display:flex;align-items:center;gap:5px}.chart-legend i{width:9px;height:9px;border-radius:3px}.chart-legend .sales{background:#258fc2}.chart-legend .cash{background:#65ae58}.donut-wrap{display:grid;place-items:center;gap:18px;padding:22px 5px}.donut{--healthy:100;width:150px;height:150px;display:grid;place-content:center;border-radius:50%;background:radial-gradient(circle,#f8fafc 54%,transparent 56%),conic-gradient(#38bd8d calc(var(--healthy)*1%),#ee764b 0);box-shadow:inset 0 1px 4px rgba(25,52,78,.18),0 10px 18px rgba(26,54,87,.12);text-align:center}.donut strong,.donut span{display:block}.donut strong{font-size:.8rem}.donut span{margin-top:3px;color:#758399;font-size:.55rem}.donut-wrap>div:last-child strong,.donut-wrap>div:last-child span{display:block;text-align:center}.donut-wrap>div:last-child span{margin-top:4px;color:#758399;font-size:.6rem}.ranking-list>div{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #e5eaf0}.ranking-list>div:last-child{border:0}.ranking-list>div>b{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:linear-gradient(145deg,#51b7cf,#2468b8);color:#fff}.ranking-list span strong,.ranking-list span small{display:block}.ranking-list span small{margin-top:3px;color:#7a8798;font-size:.57rem}.ranking-list>div>strong{white-space:nowrap}.crm-insight dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}.crm-insight dl>div{padding:13px;border:1px solid #d8e2ed;border-radius:10px;background:#f3f7fa}.crm-insight dt{color:#778698;font-size:.57rem}.crm-insight dd{margin:7px 0 0;color:#1d3e5d;font-family:Georgia,serif;font-size:.94rem;font-weight:700}.analytics-toolbar{flex-wrap:wrap}.abc-class{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;color:#fff;font-size:.8rem;font-weight:900;box-shadow:0 5px 8px rgba(31,52,78,.18)}.abc-class.class-a{background:linear-gradient(145deg,#40c194,#147657)}.abc-class.class-b{background:linear-gradient(145deg,#43a9e5,#2866ae)}.abc-class.class-c{background:linear-gradient(145deg,#f4b653,#da7234)}
@media(max-width:1150px){.analytics-grid.three{grid-template-columns:1fr 1fr}.analytics-grid.three>*:last-child{grid-column:1/-1}.detail-grid{grid-template-columns:repeat(2,1fr)}.payroll-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.crm-columns,.hr-columns,.ticket-layout,.analytics-grid,.analytics-grid.three{grid-template-columns:1fr}.analytics-grid.three>*:last-child{grid-column:auto}.form-grid.three{grid-template-columns:repeat(2,1fr)}.date-filter{width:100%;flex-wrap:wrap}.date-filter label{flex:1}.date-filter input{width:100%}.attendance-tools{align-items:stretch;flex-direction:column}.attendance-tools>span{margin-left:0}.payroll-workflow{align-items:flex-start;flex-direction:column}.payroll-workflow .actions{flex-wrap:wrap}}
@media(max-width:560px){.form-grid.three{grid-template-columns:1fr}.form-grid .span-two{grid-column:auto}.detail-grid,.payroll-summary{grid-template-columns:1fr}.bar-chart{gap:6px}.ticket-heading .actions{align-items:stretch;flex-direction:column}}

/* Phase 11–13 UI maintenance: premium typography, report contrast and branded confirmations. */
.page-heading h1,.metric-card>strong,.not-found>span,.not-found h1,.modal h2,.story-content h1,.login-card h2,.panel-title h2,.readout strong,.reconciliation-summary strong,.payroll-summary strong,.crm-insight dd{font-family:var(--font-display);font-kerning:normal}
.brand strong,.page-context strong,.card-head h2,.section-heading h2,.panel-title h2{letter-spacing:.01em}
.reports-grid .report-panel .ranking-row{grid-template-columns:30px minmax(0,1fr) minmax(112px,auto)}
.reports-grid .report-panel .ranking-row>b{width:auto;height:auto;min-width:112px;display:block;padding:8px 10px;border:1px solid #9dc9df;border-radius:10px;background:linear-gradient(145deg,#f4fbff,#d9edf8);color:#173a5a!important;box-shadow:0 4px 8px rgba(34,83,116,.13),inset 0 1px 1px #fff;font-size:.7rem;font-weight:850;line-height:1.15;text-align:right;text-shadow:none!important;overflow:visible}
body.sweet-alert-open{overflow:hidden}
.sweet-alert{width:min(470px,calc(100% - 28px));max-width:470px;margin:auto;padding:0;border:0;background:transparent;color:#20334c;overflow:visible}
.sweet-alert::backdrop{background:rgba(8,24,48,.67);backdrop-filter:blur(5px)}
.sweet-alert.fallback-open{position:fixed;inset:0;z-index:1000;display:grid;width:100%;max-width:none;height:100%;place-items:center;background:rgba(8,24,48,.67)}
.sweet-alert-card{position:relative;padding:34px 34px 29px;border:1px solid rgba(255,255,255,.98);border-radius:23px;background:linear-gradient(145deg,#fff 0%,#f4f7fb 56%,#e5ebf4 100%);box-shadow:18px 24px 58px rgba(5,21,48,.38),-7px -7px 20px rgba(255,255,255,.92),inset 0 2px 2px #fff;text-align:center;animation:sweet-alert-pop .22s cubic-bezier(.2,.9,.25,1.15)}
.sweet-alert-card:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at 20% 0,rgba(83,199,218,.14),transparent 34%)}
.sweet-alert-icon{position:relative;width:66px;height:66px;display:grid;place-items:center;margin:0 auto 17px;border:1px solid #dfac59;border-radius:50%;background:linear-gradient(145deg,#fff6cf,#f5b94c);color:#9a5d08;box-shadow:0 10px 18px rgba(177,116,22,.23),inset 0 3px 3px rgba(255,255,255,.82);font-family:var(--font-display);font-size:2rem;font-weight:900}
.sweet-alert-icon:after{content:"";position:absolute;inset:-7px;border:1px solid rgba(225,171,73,.3);border-radius:inherit}
.sweet-alert.is-danger .sweet-alert-icon{border-color:#df7d68;background:linear-gradient(145deg,#fff0eb,#ed785b);color:#852d1b;box-shadow:0 10px 18px rgba(174,72,45,.24),inset 0 3px 3px rgba(255,255,255,.72)}
.sweet-alert-kicker{position:relative;margin:0 0 7px;color:#18847c;font-size:.58rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.sweet-alert.is-danger .sweet-alert-kicker{color:#ad4934}
.sweet-alert h2{position:relative;margin:0;color:#162d47;font-family:var(--font-display);font-size:1.55rem;line-height:1.2}
.sweet-alert-message{position:relative;max-width:355px;margin:12px auto 0;color:#68778a;font-size:.76rem;line-height:1.65}
.sweet-alert-actions{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:25px}
.sweet-alert-actions .button{min-height:44px;border-radius:11px;font-size:.72rem;box-shadow:0 6px 11px rgba(30,55,84,.16),inset 0 1px 1px rgba(255,255,255,.7)}
.sweet-alert-actions .primary{border-color:#157c73;background:linear-gradient(180deg,#26a798,#08736d);color:#fff}
.sweet-alert.is-danger .sweet-alert-actions .primary{border-color:#b94d35;background:linear-gradient(180deg,#ed805f,#b9452f)}
.sweet-alert-actions .secondary{border-color:#c9d4e1;background:linear-gradient(145deg,#fff,#e7edf4);color:#43566d}
@keyframes sweet-alert-pop{from{opacity:0;transform:translateY(14px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:520px){.reports-grid .report-panel .ranking-row{grid-template-columns:28px minmax(0,1fr)}.reports-grid .report-panel .ranking-row>b{grid-column:2;min-width:0;width:max-content;margin-top:3px;text-align:left}.sweet-alert-card{padding:29px 21px 23px}.sweet-alert-actions{grid-template-columns:1fr}.sweet-alert-actions .primary{grid-row:1}.sweet-alert-actions .secondary{grid-row:2}}

/* Phase 17–19: customer/dealer portal, integration hub and statutory workspace. */
.portal-shell{min-height:100vh;background:linear-gradient(180deg,#eef5f7 0,#f8fafc 42%,#edf2f7 100%);color:#21354b}
.portal-header{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:22px;padding:14px clamp(16px,3vw,42px);border-bottom:1px solid #d5e2e7;background:rgba(250,253,254,.95);box-shadow:0 8px 24px rgba(24,61,82,.09);backdrop-filter:blur(14px)}
.portal-brand{display:flex;align-items:center;gap:10px;min-width:max-content;color:#15394c;text-decoration:none}.portal-brand .brand-mark{width:38px;height:38px}.portal-brand strong{display:block;font-family:var(--font-display);font-size:.9rem}.portal-brand small{display:block;margin-top:2px;color:#748793;font-size:.54rem}
.portal-nav{display:flex;align-items:center;gap:5px;flex:1;overflow-x:auto;scrollbar-width:thin}.portal-nav a{padding:9px 11px;border:1px solid transparent;border-radius:9px;color:#536779;font-size:.63rem;font-weight:750;text-decoration:none;white-space:nowrap}.portal-nav a:hover,.portal-nav a.active{border-color:#aad4cf;background:linear-gradient(145deg,#e8faf5,#d5efe9);color:#116a61;box-shadow:inset 0 1px #fff}
.portal-user{display:flex;align-items:center;gap:10px;min-width:max-content}.portal-user>span strong,.portal-user>span small{display:block;text-align:right}.portal-user>span strong{font-size:.65rem}.portal-user>span small{margin-top:2px;color:#7a8997;font-size:.53rem}
.portal-content{width:min(1440px,calc(100% - 32px));margin:0 auto;padding:28px 0 50px}.portal-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}.portal-page-head h1{margin:2px 0 0;font-family:var(--font-display);font-size:1.55rem;color:#183b51}.portal-page-head p{margin:5px 0 0;color:#778997;font-size:.67rem;line-height:1.55}.portal-metrics{margin-bottom:18px}
.portal-shell .card{border-color:#d5e1e8}.portal-shell .metric-card{background:linear-gradient(145deg,#fff,#eef5f7)}.portal-shell .app-footer{width:min(1440px,calc(100% - 32px));margin:0 auto 22px}
.token-reveal{margin:0 0 18px;padding:15px 17px;border:1px solid #9ad5c6;border-radius:12px;background:linear-gradient(145deg,#f2fff9,#ddf6ed);box-shadow:0 7px 14px rgba(21,112,87,.09)}.token-reveal strong{display:block;color:#166a54;font-size:.7rem}.token-reveal code{display:block;margin-top:8px;padding:10px;border:1px dashed #8bc5b5;border-radius:8px;background:#fff;color:#1d3c46;font-family:Consolas,Monaco,monospace;font-size:.72rem;overflow-wrap:anywhere;user-select:all}.token-reveal small{display:block;margin-top:6px;color:#678179;font-size:.57rem}
.inline-workflow{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.inline-workflow form{margin:0}.table-actions{display:flex;align-items:center;gap:6px;justify-content:flex-end;flex-wrap:wrap}.table-actions form{margin:0}.table-actions .button,.inline-workflow .button{min-height:31px;padding:7px 10px;font-size:.57rem}
.scope-fieldset{margin:0;padding:15px;border:1px solid #d6e0e9;border-radius:11px;background:#f8fafc}.scope-fieldset legend{padding:0 6px;color:#425a70;font-size:.62rem;font-weight:850}.check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.check-field{display:flex;align-items:flex-start;gap:7px;padding:9px;border:1px solid #dfe6ed;border-radius:9px;background:#fff;color:#42566a;font-size:.6rem}.check-field input{width:auto;margin-top:1px}
.compliance-note,.statutory-disclaimer{margin:0 0 18px;padding:13px 15px;border:1px solid #e5c979;border-radius:11px;background:linear-gradient(145deg,#fffdf2,#fff6d8);color:#66551d;font-size:.64rem;line-height:1.6}.statutory-disclaimer strong{color:#5b4610}
.statutory-document{max-width:980px;margin:0 auto}.document-letterhead{display:flex;justify-content:space-between;gap:24px;padding-bottom:17px;margin-bottom:19px;border-bottom:2px solid #244e66}.document-letterhead h1,.document-letterhead h2,.document-letterhead p{margin:0}.document-letterhead h1{font-family:var(--font-display);font-size:1.45rem;color:#173b51}.document-letterhead h2{font-size:.82rem;color:#3b5b70}.document-letterhead p{margin-top:5px;color:#6b7e8c;font-size:.61rem;line-height:1.45}.document-note{margin-top:18px;padding:12px;border:1px solid #dae4ea;border-radius:9px;background:#f7fafc;color:#687b89;font-size:.61rem;line-height:1.55}
.print-sheet{width:min(920px,calc(100% - 32px));margin:24px auto;padding:35px;border:1px solid #d7e0e7;border-radius:14px;background:#fff;box-shadow:0 16px 36px rgba(19,50,70,.12)}.print-controls{display:flex;justify-content:flex-end;gap:8px;margin:18px auto;width:min(920px,calc(100% - 32px))}.print-head{display:flex;justify-content:space-between;gap:20px;padding-bottom:16px;border-bottom:2px solid #244e66}.print-brand strong{display:block;font-family:var(--font-display);font-size:1.25rem}.print-brand span,.print-address{color:#657988;font-size:.63rem;line-height:1.5}.print-totals{display:grid;justify-content:end;gap:7px;margin-top:18px}.print-totals>div{display:grid;grid-template-columns:140px 130px;gap:15px;text-align:right}.print-totals .grand{padding-top:8px;border-top:1px solid #cad6df;font-weight:900;color:#173b51}
.badge.submitted,.badge.queued,.badge.initiated,.badge.pending{background:#fff1c8;color:#815b0d}.badge.in_review{background:#e4f1ff;color:#245f9c}.badge.issued{background:#e0f7ee;color:#166b51}.badge.deposited,.badge.paid,.badge.sent{background:#dff5e7;color:#176b3f}.badge.locked,.badge.revoked,.badge.cancelled,.badge.failed{background:#fae4e0;color:#9d3f2e}.badge.customer{background:#e5f1ff;color:#2b6396}.badge.dealer{background:#ede8ff;color:#634ba2}
@media(max-width:1050px){.portal-header{align-items:flex-start;flex-wrap:wrap}.portal-nav{order:3;width:100%}.portal-user{margin-left:auto}.check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.portal-content{width:min(100% - 20px,1440px);padding-top:18px}.portal-header{padding:12px}.portal-user>span{display:none}.portal-page-head,.document-letterhead,.print-head{align-items:flex-start;flex-direction:column}.check-grid{grid-template-columns:1fr}.table-actions{justify-content:flex-start}.print-sheet{width:calc(100% - 18px);margin:9px;padding:18px}.print-controls{width:calc(100% - 18px)}}
@media print{body{background:#fff!important}.no-print,.portal-header,.sidebar,.topbar,.app-footer{display:none!important}.portal-content,.content,.statutory-document,.print-sheet{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;background:#fff!important}.statutory-document .card{border:0!important;box-shadow:none!important}.table-scroll{overflow:visible!important}a{color:inherit!important;text-decoration:none!important}}
.login-note{margin:14px 0 0!important;color:#6f7f8a!important;font-size:.61rem!important;text-align:center}.login-note a{color:#157b70;font-weight:850;text-decoration:none}.login-note a:hover{text-decoration:underline}

/* Phase 20-22 Build 5: guided identity, provider and production controls. */
.identity-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.identity-actions.compact{grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.identity-choice{display:block;min-height:180px;padding:20px;text-decoration:none;color:inherit;transition:transform .18s ease,box-shadow .18s ease}.identity-choice:hover{transform:translateY(-3px)}.identity-choice h3{margin:13px 0 7px;font-family:var(--font-display);color:#173b51}.identity-choice p{margin:0 0 12px;color:#6c7f8d;font-size:.66rem;line-height:1.55}.identity-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:12px;background:linear-gradient(145deg,#e7f8f3,#ccebe3);color:#116b61;font-weight:900;font-size:.72rem;box-shadow:inset 0 1px #fff}.wizard-shell{display:grid;gap:14px}.wizard-section{display:grid;grid-template-columns:46px minmax(0,1fr);gap:16px;align-items:start}.wizard-section>div:last-child{min-width:0}.wizard-number{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;background:linear-gradient(180deg,#269e90,#0c746d);color:#fff;font-family:var(--font-display);font-weight:900;box-shadow:0 8px 16px rgba(16,111,102,.18)}.wizard-section h2{margin:3px 0 16px}.wizard-preview{margin-top:15px;padding:13px 15px;border:1px dashed #9bc9c1;border-radius:10px;background:#f2fbf8}.wizard-preview span,.wizard-preview strong{display:block}.wizard-preview span{font-size:.58rem;color:#718780;text-transform:uppercase;letter-spacing:.08em}.wizard-preview strong{margin-top:4px;color:#175d55}.toggle-row{display:flex!important;gap:10px!important;align-items:flex-start!important;padding:13px 14px;border:1px solid #d6e5e2;border-radius:10px;background:#f9fcfb}.toggle-row input{width:auto!important;margin-top:3px}.toggle-row span strong,.toggle-row span small{display:block}.toggle-row span small{margin-top:4px;color:#70827d;font-size:.6rem;line-height:1.5}.provider-panels{margin-top:18px}.provider-panel{padding:18px;border:1px solid #d8e3e8;border-radius:12px;background:linear-gradient(145deg,#fff,#f7fafb)}.provider-panel h3{margin:0 0 12px}.help-text{color:#6f808c;font-size:.63rem;line-height:1.55}.health-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.health-card span,.health-card strong{display:block}.health-card strong{margin:9px 0 6px;font-family:var(--font-display)}.health-healthy{color:#15705f}.health-warning{color:#9a6b12}.health-critical{color:#a33f2f}.health-unknown{color:#647486}.button-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.button-row form{margin:0}.form-success{margin:12px 0;padding:12px 14px;border:1px solid #9bcfbd;border-radius:9px;background:#eaf9f2;color:#145f4c;font-size:.65rem;line-height:1.5}.payment-action-card{margin-bottom:18px}.compact-form{align-items:end}.inline-form{display:inline-flex;margin:0}.page-heading .actions,.page-head .actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
@media(max-width:1100px){.identity-actions,.identity-actions.compact,.health-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.identity-actions,.identity-actions.compact,.health-grid{grid-template-columns:1fr}.wizard-section{grid-template-columns:1fr}.wizard-number{width:36px;height:36px}.page-heading .actions,.page-head .actions{width:100%}.page-heading .actions .button,.page-head .actions .button{flex:1}}
