:root{--ink:#17212b;--muted:#6d7783;--line:#e8ecef;--paper:#fff;--ground:#f6f8f8;--nav:#10272b;--nav-soft:#1d3d3e;--teal:#008d7b;--teal-dark:#007565;--mint:#e2f5ee;--orange:#ef7f44;--blue:#4179cc;--red:#d65959;--shadow:0 10px 30px rgba(26,44,47,.08)}*{box-sizing:border-box}body{margin:0;background:var(--ground);color:var(--ink);font:14px 'DM Sans',sans-serif}.shell{min-height:100vh;display:grid;grid-template-columns:252px 1fr}.sidebar{position:fixed;top:0;bottom:0;width:252px;background:var(--nav);color:#d9e5e5;padding:22px 13px;display:flex;flex-direction:column}.brand{height:37px;display:flex;align-items:center;gap:10px;font:800 22px Manrope,sans-serif;letter-spacing:-1.2px;color:white;padding:0 12px}.brand-mark{display:grid;place-items:center;background:#55d9c3;width:27px;height:27px;border-radius:8px;color:#10272b;font:800 17px Manrope}.company-switcher{margin:25px 5px 19px;padding:11px 9px;display:flex;gap:9px;align-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08);border-radius:9px;color:white}.company-switcher span:nth-child(2){display:grid;gap:2px;flex:1}.company-switcher b{font-size:12px}.company-switcher small,.sidebar-foot small{font-size:10px;color:#9bb3b4}.company-dot{width:26px;height:26px;border-radius:50%;background:#ecb45b;border:5px solid #fff1c7}.chevron{font-size:16px;color:#a9c1c1}.nav-label{font-size:9px;font-weight:700;letter-spacing:1.4px;color:#759596;margin:14px 12px 6px}.nav-item{border:0;background:transparent;color:#bdd0d0;width:100%;padding:9px 11px;border-radius:7px;display:flex;align-items:center;gap:11px;font:600 13px 'DM Sans';text-align:left;cursor:pointer}.nav-item span{width:15px;text-align:center;font-size:16px;color:#adc5c5}.nav-item:hover,.nav-item.active{background:var(--nav-soft);color:#fff}.nav-item.active span{color:#65dcc9}.nav-item i{font:700 10px 'DM Sans';font-style:normal;background:#ec6c50;color:#fff;border-radius:10px;padding:2px 6px;margin-left:auto}.sidebar-foot{display:flex;align-items:center;gap:8px;margin-top:auto;padding:13px 7px 0;border-top:1px solid #2b4649}.sidebar-foot span{display:grid;gap:2px;flex:1}.sidebar-foot b{font-size:12px;color:white}.sidebar-foot button{color:#abc0c0;background:transparent;border:0;font-size:19px}.avatar{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#c67a61;color:#fff;font-size:10px;font-weight:700}main{grid-column:2;min-width:0}.topbar{height:90px;background:#fff;border-bottom:1px solid var(--line);padding:19px 38px;display:flex;align-items:center;justify-content:space-between}.crumb{display:grid;gap:3px}.crumb>span{font-size:9px;color:#8c959b;font-weight:700;letter-spacing:1.2px}.crumb h1{font:700 21px Manrope,sans-serif;letter-spacing:-.7px;margin:0}.crumb h1 span{color:#f4bc49;font-size:17px}.top-actions{display:flex;align-items:center;gap:9px}.icon-btn,.help-btn{height:34px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#53626a;font:600 12px 'DM Sans';padding:0 10px;cursor:pointer}.icon-btn{font-size:20px;width:35px;padding:0}.notification{position:relative}.notification b{position:absolute;width:6px;height:6px;border-radius:50%;background:#f06d56;right:7px;top:7px}.primary-btn{height:37px;background:var(--teal);color:#fff;border:0;border-radius:7px;padding:0 13px;font:700 12px 'DM Sans';box-shadow:0 3px 7px #008d7b33;cursor:pointer}.primary-btn:hover{background:var(--teal-dark)}.primary-btn span{margin-left:8px;opacity:.8}.mobile-menu{display:none}.app-content{padding:28px 38px 42px;max-width:1600px;margin:auto}.page-subtitle{color:var(--muted);margin:4px 0 0}.section-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:21px}.section-head h2{font:800 22px Manrope;margin:0;letter-spacing:-.7px}.section-head p{margin:5px 0 0;color:var(--muted)}.date-pill{padding:8px 11px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#637079;font-size:12px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:22px}.metric{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:17px 18px;min-height:117px;position:relative}.metric .metric-title{color:#748089;font-weight:600;font-size:12px}.metric strong{display:block;font:800 24px Manrope;margin:13px 0 6px;letter-spacing:-1px}.metric small{color:#748089}.metric small.up{color:#159373}.metric .metric-icon{position:absolute;right:17px;top:16px;width:31px;height:31px;border-radius:8px;display:grid;place-items:center;font-size:16px}.metric:nth-child(1) .metric-icon{color:#008d7b;background:#e0f4ef}.metric:nth-child(2) .metric-icon{color:#437acc;background:#e7f0fd}.metric:nth-child(3) .metric-icon{color:#d85f58;background:#fbe8e8}.metric:nth-child(4) .metric-icon{color:#dc932c;background:#fff1d7}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.58fr) minmax(300px,.92fr);gap:19px}.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:19px;box-shadow:0 1px 2px rgba(15,30,35,.015)}.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.card-head h3{font:700 14px Manrope;margin:0;letter-spacing:-.2px}.card-head a{font-size:11px;color:var(--teal);font-weight:700;cursor:pointer}.chart-filter{border:1px solid var(--line);border-radius:6px;background:#fff;font:600 11px 'DM Sans';color:#657078;padding:6px}.chart-legend{display:flex;gap:16px;color:#69757c;font-size:11px}.chart-legend span:before{content:'';display:inline-block;height:8px;width:8px;border-radius:50%;margin-right:5px;background:var(--teal)}.chart-legend span+span:before{background:#b8ded9}.chart{height:206px;position:relative;margin:4px 2px 0;border-bottom:1px solid #e8edee;background:repeating-linear-gradient(to bottom,transparent 0,transparent 50px,#eef1f1 51px)}.bars{position:absolute;inset:20px 8px 0;display:flex;align-items:flex-end;justify-content:space-around}.bar-group{height:100%;display:flex;align-items:flex-end;gap:4px;position:relative;width:26px}.bar-group:after{content:attr(data-month);position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);font-size:10px;color:#7d888e}.bar{width:10px;border-radius:4px 4px 0 0;background:var(--teal)}.bar.light{background:#bde1dc}.bar-tip{position:absolute;right:-33px;bottom:64%;background:#18373a;color:#fff;border-radius:5px;padding:6px 8px;font-size:10px;white-space:nowrap;display:none}.bar-group:hover .bar-tip{display:block}.list{padding:0;margin:0;list-style:none}.list li{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #f0f2f2}.list li:last-child{border:0}.person-avatar{height:31px;width:31px;display:grid;place-items:center;border-radius:50%;font-weight:700;font-size:10px;background:#e9edfa;color:#6670aa}.person{display:grid;gap:2px;flex:1}.person b{font-size:12px}.person small{font-size:10px;color:#818b92}.amount{font-size:12px;font-weight:700;text-align:right}.amount small{display:block;font-weight:500;color:#d35f5d;font-size:10px;margin-top:3px}.progress-wrap{display:grid;grid-template-columns:124px 1fr;gap:18px;align-items:center}.donut{width:116px;height:116px;border-radius:50%;background:conic-gradient(var(--teal) 0 43%,#63cbbd 43% 68%,#f5bd57 68% 85%,#e7edef 85%);display:grid;place-items:center}.donut:after{content:'₹8.4L\A Total due';white-space:pre;text-align:center;line-height:1.5;background:#fff;width:80px;height:80px;border-radius:50%;display:grid;place-items:center;font:700 12px Manrope;color:#45525a}.progress-list{font-size:11px;color:#5f6c73}.progress-list p{margin:0 0 9px;display:flex;justify-content:space-between}.progress-list i{width:7px;height:7px;display:inline-block;border-radius:50%;background:var(--teal);margin-right:5px}.progress-list p:nth-child(2) i{background:#63cbbd}.progress-list p:nth-child(3) i{background:#f5bd57}.progress-list p:nth-child(4) i{background:#e7edef}.action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.action{border:1px solid var(--line);border-radius:8px;background:#fff;text-align:left;padding:12px 10px;cursor:pointer;color:#36434a}.action:hover{border-color:#9ed7cd;background:#f8fcfb}.action span{display:block;font-size:18px;color:var(--teal);margin-bottom:8px}.action b{font-size:11px}.action small{display:block;color:#7e888e;font-size:9px;margin-top:2px}.table-card{padding:0;overflow:hidden}.table-toolbar{padding:17px 19px 13px;display:flex;justify-content:space-between;gap:14px;align-items:center}.table-toolbar h3{margin:0;font:700 15px Manrope}.search{border:1px solid var(--line);border-radius:7px;padding:8px 10px;width:215px;font:12px 'DM Sans';outline:none}.search:focus{border-color:#71c4b7}table{border-collapse:collapse;width:100%;font-size:12px}thead{background:#f8fafa;color:#79848a;font-size:10px;letter-spacing:.3px;text-transform:uppercase}th{text-align:left;padding:11px 19px;font-weight:700}td{padding:13px 19px;border-top:1px solid #eef1f1}td b{font-size:12px}.status{display:inline-block;padding:4px 8px;border-radius:10px;font-size:10px;font-weight:700}.status.paid,.status.active{color:#107b69;background:#def4ed}.status.partial,.status.due{color:#a5640d;background:#fff2d8}.status.overdue,.status.low{color:#b64141;background:#fbe7e7}.status.draft{color:#63717a;background:#edf0f1}.more{border:0;background:transparent;color:#94a0a4;font-size:18px;cursor:pointer}.table-footer{padding:13px 19px;border-top:1px solid var(--line);color:#7b858b;font-size:11px;display:flex;justify-content:space-between}.pagination{display:flex;gap:4px}.pagination button{border:1px solid var(--line);background:#fff;border-radius:4px;width:25px;height:23px;font-size:10px}.pagination button.active{background:var(--teal);color:white;border-color:var(--teal)}.toolbar-actions{display:flex;gap:8px;align-items:center}.secondary-btn{height:35px;border:1px solid #cfd8d9;border-radius:7px;background:white;color:#516067;padding:0 11px;font:700 12px 'DM Sans';cursor:pointer}.secondary-btn:hover{background:#f4f8f8}.split-layout{display:grid;grid-template-columns:1fr 310px;gap:20px}.side-summary{display:grid;gap:14px;align-content:start}.summary-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px}.summary-card h4{font:700 13px Manrope;margin:0 0 13px}.summary-stat{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f0f2f2;font-size:12px;color:#667179}.summary-stat:last-child{border:0}.summary-stat b{color:#243239}.stock-row{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px 0;border-bottom:1px solid #f1f3f3}.stock-row:last-child{border:0}.stock-row b{font-size:12px}.stock-row small{color:#7c878d;font-size:10px}.stock-bar{grid-column:1/-1;background:#eef1f1;height:5px;border-radius:4px;overflow:hidden}.stock-bar span{display:block;background:#f2aa45;height:100%;border-radius:5px}.report-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.report-tile{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px;min-height:147px;cursor:pointer}.report-tile:hover{border-color:#83cabd;box-shadow:var(--shadow)}.report-tile .report-icon{height:36px;width:36px;display:grid;place-items:center;border-radius:9px;background:#e5f5f0;color:var(--teal);font-size:19px;margin-bottom:15px}.report-tile h3{margin:0 0 4px;font:700 14px Manrope}.report-tile p{color:#748087;font-size:11px;margin:0;line-height:1.5}.empty{padding:48px 20px;text-align:center;color:#7c878c}.empty div{font-size:31px;color:#9ccfc5;margin-bottom:9px}.modal-backdrop{position:fixed;inset:0;background:#0d242799;z-index:5;display:grid;place-items:center;padding:20px}.modal{background:#fff;width:min(830px,100%);max-height:92vh;overflow:auto;border-radius:12px;box-shadow:0 25px 70px #06171966}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:19px 22px;border-bottom:1px solid var(--line)}.modal-head h2{margin:0;font:700 18px Manrope}.modal-head p{margin:4px 0 0;color:#748087;font-size:11px}.close{border:0;background:#f3f6f6;color:#607077;border-radius:50%;width:28px;height:28px;font-size:17px;cursor:pointer}.modal-body{padding:21px 22px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.form-field{display:grid;gap:6px}.form-field.full{grid-column:1/-1}.form-field label{font-size:11px;font-weight:700;color:#5d6970}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #dfe5e5;border-radius:6px;padding:9px 10px;font:12px 'DM Sans';color:#26343a;background:white;outline:none}.form-field input:focus,.form-field select:focus{border-color:#42ae9e}.items-editor{border:1px solid var(--line);border-radius:8px;margin-top:18px;overflow:hidden}.items-editor table th,.items-editor table td{padding:9px 10px}.items-editor input,.items-editor select{width:100%;border:1px solid #dfe5e5;border-radius:5px;padding:7px;font:11px 'DM Sans'}.items-editor .remove-line{border:0;background:transparent;color:#d36e66;font-size:15px;cursor:pointer}.add-line{margin:10px;border:0;background:transparent;color:var(--teal);font:700 11px 'DM Sans';cursor:pointer}.invoice-totals{margin-left:auto;width:270px;padding-top:12px}.invoice-totals p{display:flex;justify-content:space-between;margin:7px 0;color:#6f797f;font-size:12px}.invoice-totals p.total{border-top:1px solid var(--line);padding-top:11px;color:#23323a;font-size:14px;font-weight:700}.modal-foot{padding:14px 22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.modal-foot small{color:#778389}.form-error{color:#c44d4d;font-size:11px;margin:6px 0 0}.toast{position:fixed;right:24px;bottom:24px;background:#17393a;color:#fff;border-radius:8px;padding:12px 16px;font-size:12px;box-shadow:var(--shadow);transform:translateY(100px);opacity:0;transition:.25s;z-index:10}.toast.show{transform:translateY(0);opacity:1}@media(max-width:1050px){.metrics{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.report-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.shell{grid-template-columns:1fr}.sidebar{transform:translateX(-100%);z-index:4;transition:.2s}.sidebar.open{transform:translateX(0)}main{grid-column:1}.topbar{padding:15px 18px;height:75px}.app-content{padding:20px 18px}.mobile-menu{display:inline;border:0;background:transparent;font-size:22px;margin-right:8px}.top-actions .icon-btn,.top-actions .help-btn{display:none}.metrics,.report-grid{grid-template-columns:1fr}.split-layout{grid-template-columns:1fr}.table-card{overflow:auto}.form-grid{grid-template-columns:1fr}.top-actions .primary-btn{padding:0 9px}.crumb h1{font-size:17px}}
/* Read-only, bounded audit register */
.audit-metric{font:inherit;text-align:left;color:inherit;border:1px solid transparent;cursor:pointer;width:100%}
.audit-metric:hover,.audit-metric:focus-visible,.audit-metric.selected{border-color:var(--primary,#0f766e);outline:none;box-shadow:0 0 0 3px rgba(15,118,110,.12)}
.audit-filter-bar{display:grid;grid-template-columns:minmax(220px,2fr) minmax(140px,1fr) minmax(145px,1fr) minmax(145px,1fr) auto auto;gap:12px;align-items:end;padding:18px}
.audit-filter-bar label{display:grid;gap:6px;font-size:.78rem;font-weight:700;color:var(--muted,#64748b)}
.audit-filter-bar input,.audit-filter-bar select{width:100%;min-height:42px}
.audit-register td small{display:block;margin-top:4px;color:var(--muted,#64748b)}
.audit-scope-note{margin:14px 2px;color:var(--muted,#64748b);font-size:.86rem}
@media(max-width:900px){.audit-filter-bar{grid-template-columns:1fr 1fr}.audit-filter-bar label:first-child{grid-column:1/-1}}
@media(max-width:560px){.audit-filter-bar{grid-template-columns:1fr}.audit-filter-bar label:first-child{grid-column:auto}.audit-register .table-wrap{overflow:auto}}
.pos2-parameter-settings{margin-top:8px;padding:18px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(145deg,color-mix(in srgb,var(--paper,#fff) 94%,var(--teal) 6%),var(--paper,#fff))}.pos2-parameter-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.pos2-parameter-heading h4{margin:0 0 5px;font-size:16px}.pos2-parameter-heading small{color:var(--muted);line-height:1.45}.pos2-parameter-heading>span{padding:5px 9px;border-radius:999px;background:color-mix(in srgb,var(--teal) 14%,transparent);color:var(--teal);font-size:11px;font-weight:900;letter-spacing:.08em}.pos2-payment-method-settings{min-width:0;margin:0;padding:0;border:0}.pos2-payment-method-settings legend{margin-bottom:8px;font-weight:700}.pos2-payment-method-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.pos2-payment-method-options label{display:flex;min-height:42px;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--ground);font-size:12px;font-weight:700;cursor:pointer}.pos2-payment-method-options input{width:17px;height:17px;accent-color:var(--teal)}
@media(max-width:760px){.pos2-parameter-settings{padding:14px}.pos2-payment-method-options{grid-template-columns:repeat(2,minmax(0,1fr))}.pos2-payment-method-options label:last-child{grid-column:1/-1}.pos2-parameter-settings>.form-grid{grid-template-columns:1fr}}

/* Longitudinal EHR */
.ehr-layout{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:20px;align-items:start}.ehr-patient-panel{position:sticky;top:18px;padding:18px}.ehr-patient-panel .emr-patient-list{margin-top:14px;max-height:70vh;overflow:auto}.ehr-patient-panel .emr-patient-list article.active{outline:2px solid var(--accent,#16806a);background:var(--surface-soft,#f3faf8)}.ehr-record{min-width:0}.ehr-metrics{margin:18px 0}.ehr-timeline{display:grid;gap:16px}.ehr-encounter-card{padding:20px}.ehr-encounter-card>header,.ehr-encounter-card>footer{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.ehr-encounter-card header span,.ehr-encounter-card footer{color:var(--text-muted,#667);font-size:.82rem}.ehr-encounter-card h3{margin:5px 0 0}.ehr-encounter-grid,.ehr-note-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.ehr-encounter-grid>div,.ehr-note-grid>p{margin:0;padding:12px;border-radius:12px;background:var(--surface-soft,#f7f9f8);min-width:0}.ehr-encounter-card details{margin:10px 0 16px}.ehr-encounter-card summary{cursor:pointer;font-weight:700}.ehr-encounter-card footer{align-items:center;border-top:1px solid var(--border,#dfe6e3);padding-top:14px}@media(max-width:820px){.ehr-layout{grid-template-columns:1fr}.ehr-patient-panel{position:static}.ehr-encounter-grid,.ehr-note-grid{grid-template-columns:1fr}.ehr-encounter-card>header,.ehr-encounter-card>footer{flex-direction:column}.ehr-record,.ehr-encounter-card{max-width:100%;overflow:hidden}}
.hospital-operations-tabs{display:flex;gap:8px;overflow-x:auto;margin:18px 0;padding-bottom:4px}.hospital-operations-tabs button{white-space:nowrap;border:1px solid var(--line,#d9e1e8);background:var(--surface,#fff);border-radius:999px;padding:9px 14px;color:inherit;cursor:pointer}.hospital-operations-tabs button.active{background:#123f52;color:#fff;border-color:#123f52}.hospital-operations-register{overflow:auto}.hospital-operations-register table{min-width:760px}.hospital-split-register{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.6fr);gap:22px}.hospital-split-register>div{overflow:auto}.hospital-operations-register a{color:#087a74;font-weight:700}.hospital-operations-metrics .metric{min-width:0}@media(max-width:980px){.hospital-split-register{grid-template-columns:1fr}.hospital-operations-tabs{margin-inline:-4px}}
/* Client Admin organization hierarchy mapper */
.organization-metrics button.metric{cursor:pointer;font:inherit;text-align:left}.organization-metrics button.metric .card-action{color:var(--primary,#4f46e5);display:block;font-size:11px;font-weight:800;margin-top:8px}
.organization-hero{align-items:center;display:flex;justify-content:space-between;gap:24px}.organization-hero .eyebrow,.organization-node-dialog .eyebrow{display:block;font-size:11px;font-weight:800;letter-spacing:.13em;margin-bottom:8px;opacity:.75}.organization-hero-actions{align-items:flex-end;display:flex;flex-direction:column;gap:14px}.organization-metrics{margin:20px 0}.organization-grid-card,.organization-chart-card{margin-top:20px}.organization-grid-card .table-toolbar{gap:18px}.organization-grid-card .toolbar-actions{flex-wrap:wrap}.organization-grid{min-width:960px}.organization-tree-cell{align-items:center;display:flex;gap:10px;padding-inline-start:calc(var(--org-depth) * 24px)}.organization-tree-cell small{display:block;margin-top:3px}.organization-tree-line,.organization-root-mark{color:var(--primary,#4f46e5);font-weight:800}.organization-type-badge{border:1px solid color-mix(in srgb,currentColor 25%,transparent);border-radius:999px;display:inline-flex;font-size:11px;font-weight:800;padding:5px 9px;text-transform:uppercase;white-space:nowrap}.organization-type-badge.type-company,.organization-chart-node.type-company{color:#4338ca}.organization-type-badge.type-legal_entity,.organization-chart-node.type-legal_entity{color:#7c3aed}.organization-type-badge.type-business_unit,.organization-chart-node.type-business_unit{color:#0369a1}.organization-type-badge.type-branch,.organization-type-badge.type-location,.organization-chart-node.type-branch,.organization-chart-node.type-location{color:#047857}.organization-type-badge.type-warehouse,.organization-type-badge.type-distribution_centre,.organization-chart-node.type-warehouse,.organization-chart-node.type-distribution_centre{color:#b45309}.organization-type-badge.type-zone,.organization-type-badge.type-rack,.organization-type-badge.type-shelf,.organization-type-badge.type-bin,.organization-chart-node.type-zone,.organization-chart-node.type-rack,.organization-chart-node.type-shelf,.organization-chart-node.type-bin{color:#9f1239}.organization-type-badge.type-store,.organization-type-badge.type-counter,.organization-type-badge.type-pos_terminal,.organization-chart-node.type-store,.organization-chart-node.type-counter,.organization-chart-node.type-pos_terminal{color:#0f766e}.organization-row-actions{white-space:nowrap}.organization-row-actions .text-btn{margin-left:6px}.organization-row-focus{animation:organization-focus 1.8s ease}@keyframes organization-focus{0%,100%{background:transparent}20%,75%{background:color-mix(in srgb,var(--primary,#4f46e5) 13%,transparent)}}.organization-limit-note{background:#fffbeb;border-radius:10px;color:#92400e;margin:12px 0 0;padding:10px 14px}.organization-chart{overflow:auto;padding:28px 12px 12px}.organization-chart ol{display:flex;justify-content:center;list-style:none;margin:0;padding:30px 0 0;position:relative}.organization-chart>ol{padding-top:0}.organization-chart li{padding:30px 8px 0;position:relative;text-align:center}.organization-chart>ol>li{padding-top:0}.organization-chart li::before,.organization-chart li::after{border-top:1px solid var(--border,#dbe3ef);content:"";height:30px;position:absolute;right:50%;top:0;width:50%}.organization-chart li::after{border-left:1px solid var(--border,#dbe3ef);left:50%;right:auto}.organization-chart li:only-child::before,.organization-chart li:only-child::after{display:none}.organization-chart li:first-child::before,.organization-chart li:last-child::after{border:0}.organization-chart li:last-child::before{border-right:1px solid var(--border,#dbe3ef);border-radius:0 8px 0 0}.organization-chart li:first-child::after{border-radius:8px 0 0}.organization-chart ol ol::before{border-left:1px solid var(--border,#dbe3ef);content:"";height:30px;left:50%;position:absolute;top:0}.organization-chart-node{background:var(--surface,#fff);border:1px solid color-mix(in srgb,currentColor 28%,var(--border,#dbe3ef));border-radius:12px;box-shadow:0 4px 16px rgba(15,23,42,.06);color:var(--text,#172033);display:inline-flex;flex-direction:column;min-width:148px;padding:10px 12px;text-align:left}.organization-chart-node:hover,.organization-chart-node:focus-visible{box-shadow:0 8px 24px rgba(15,23,42,.12);transform:translateY(-2px)}.organization-chart-node small{color:currentColor;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.organization-chart-node b{color:var(--text,#172033);font-size:13px;margin-top:4px}.organization-chart-node span{color:var(--muted,#64748b);font-size:10px;margin-top:3px}.organization-controls-layout{display:grid;gap:20px;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);margin-top:20px}.organization-defaults-grid{align-items:end;display:grid;gap:12px;grid-template-columns:repeat(4,minmax(130px,1fr)) auto}.organization-defaults-grid label{display:grid;font-size:12px;font-weight:700;gap:6px}.organization-node-dialog{border:0;border-radius:18px;box-shadow:0 24px 80px rgba(15,23,42,.28);max-width:680px;padding:0;width:calc(100% - 32px)}.organization-node-dialog::backdrop{background:rgba(15,23,42,.58);backdrop-filter:blur(3px)}.organization-node-dialog form{padding:24px}.organization-node-dialog .dialog-head,.organization-node-dialog .dialog-actions{align-items:center;display:flex;justify-content:space-between}.organization-node-dialog .dialog-head{border-bottom:1px solid var(--border,#e2e8f0);margin-bottom:20px;padding-bottom:16px}.organization-node-dialog .dialog-actions{border-top:1px solid var(--border,#e2e8f0);justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px}.organization-node-dialog .form-grid{display:grid;gap:16px;grid-template-columns:1fr 1fr}.organization-node-dialog label{display:grid;font-size:12px;font-weight:700;gap:7px}.organization-node-dialog .span-two{grid-column:1/-1}.organization-node-dialog .icon-btn{font-size:22px}@media(max-width:900px){.organization-hero{align-items:flex-start;flex-direction:column}.organization-hero-actions{align-items:flex-start}.organization-controls-layout,.organization-defaults-grid{grid-template-columns:1fr 1fr}.organization-defaults-grid button{grid-column:1/-1}.organization-chart{padding-inline:0}.organization-chart-node{min-width:126px}}@media(max-width:600px){.organization-node-dialog .form-grid,.organization-controls-layout,.organization-defaults-grid{grid-template-columns:1fr}.organization-node-dialog .span-two{grid-column:auto}.organization-grid-card .table-toolbar{align-items:stretch;flex-direction:column}.organization-grid-card .toolbar-actions{align-items:stretch;display:grid;grid-template-columns:1fr auto}}
.payment-device-hero{align-items:center;display:flex;justify-content:space-between;gap:24px}.payment-device-hero .eyebrow{display:block;font-size:11px;font-weight:800;letter-spacing:.13em;margin-bottom:8px;opacity:.75}.payment-device-metrics{margin:20px 0}.payment-device-table{min-width:1050px}.payment-device-table td small{display:block;margin-top:4px}.payment-device-mode{background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;color:#047857;display:inline-block;font-size:10px;font-weight:800;padding:4px 7px}.payment-device-actions{display:flex;gap:7px;white-space:nowrap}.payment-device-prerequisite{align-items:center;background:#fffbeb;border-color:#fde68a;display:flex;justify-content:space-between;margin-bottom:20px}.payment-device-dialog{max-width:760px}.payment-device-modes{border:1px solid var(--line,#e2e8f0);border-radius:9px;display:flex!important;flex-direction:row!important;gap:16px!important;padding:10px 12px}.payment-device-modes legend{font-size:12px;font-weight:700;padding:0 4px}.payment-device-modes label{align-items:center;display:flex!important;flex-direction:row;gap:5px!important}.payment-device-note{background:#f0fdfa;border:1px solid #99f6e4;border-radius:10px;color:#115e59;display:grid;gap:4px;margin-top:16px;padding:12px 14px}.payment-device-note span{font-size:12px;line-height:1.5}@media(max-width:700px){.payment-device-hero,.payment-device-prerequisite{align-items:flex-start;flex-direction:column}.payment-device-hero .primary-btn,.payment-device-prerequisite .secondary-btn{width:100%}.payment-device-actions{align-items:stretch;flex-direction:column}}
.payment-partner-hero{align-items:center;display:flex;justify-content:space-between;gap:24px}.payment-partner-hero .eyebrow{display:block;font-size:11px;font-weight:800;letter-spacing:.13em;margin-bottom:8px;opacity:.75}.payment-partner-metrics{margin:20px 0}.payment-partner-catalogue{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:20px}.payment-partner-card{background:var(--surface,#fff);border:1px solid var(--border,#dbe3ef);border-radius:14px;display:grid;gap:10px;padding:16px}.payment-partner-card.mapped{border-color:#86efac;background:color-mix(in srgb,#ecfdf5 60%,var(--surface,#fff))}.payment-partner-card>div{align-items:center;display:flex;gap:10px}.payment-partner-card>div span{align-items:center;background:#eef2ff;border-radius:10px;color:#4338ca;display:flex;font-weight:900;height:32px;justify-content:center;width:32px}.payment-partner-card.mapped>div span{background:#dcfce7;color:#15803d}.payment-partner-card h3,.payment-partner-card p{margin:0}.payment-partner-card p{color:var(--muted,#64748b);font-size:12px;line-height:1.45;min-height:52px}.payment-partner-card small{color:#047857;font-weight:700}.payment-partner-card button{justify-self:start}.payment-partner-disclaimer{align-items:flex-start;background:#fffbeb;border-color:#fde68a;color:#854d0e;display:flex;gap:12px;margin-bottom:20px}.payment-partner-disclaimer span{font-size:12px;line-height:1.5}.payment-partner-table{min-width:1050px}.payment-partner-table td small{display:block;margin-top:4px}.payment-partner-dialog{max-width:780px}.payment-partner-recurring{align-items:center!important;display:flex!important;flex-direction:row;gap:8px!important;padding-top:24px}.payment-partner-recurring input{height:18px;width:18px}@media(max-width:1000px){.payment-partner-catalogue{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.payment-partner-hero,.payment-partner-disclaimer{align-items:flex-start;flex-direction:column}.payment-partner-hero .primary-btn{width:100%}.payment-partner-catalogue{grid-template-columns:1fr}.payment-partner-card p{min-height:0}}
.payment-partner-load-error{align-items:center;background:#fff7ed;border-color:#fdba74;display:flex;justify-content:space-between;gap:20px}.payment-partner-load-error h3{color:#9a3412;margin:0 0 6px}@media(max-width:700px){.payment-partner-load-error{align-items:stretch;flex-direction:column}}
.platform-user-hero{align-items:center;display:flex;justify-content:space-between;gap:24px}.platform-user-metrics{margin:20px 0}.platform-user-create{margin-bottom:20px}.platform-user-create>summary{align-items:center;cursor:pointer;display:flex;justify-content:space-between}.platform-user-create>summary small{display:block;margin-top:4px}.platform-user-create form{align-items:end;display:grid;gap:14px;grid-template-columns:1fr 1fr 1.2fr 1fr 1fr auto;margin-top:20px}.platform-user-create label{display:grid;font-size:12px;font-weight:700;gap:6px}.platform-user-filters{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.platform-user-table{min-width:1180px}.platform-user-table td>small,.platform-user-table td>b+small{display:block;margin-top:5px}.platform-user-name{background:transparent;border:0;font:inherit;font-weight:800;max-width:220px;padding:0}.platform-user-name:not([readonly]){border-bottom:1px dashed var(--border,#cbd5e1)}.platform-user-actions{align-items:center;display:flex;gap:8px}.platform-user-actions details{position:relative}.platform-user-actions summary{border:1px solid var(--border,#cbd5e1);border-radius:8px;cursor:pointer;font-weight:800;list-style:none;padding:7px 10px}.platform-user-actions details>div{background:var(--surface,#fff);border:1px solid var(--border,#cbd5e1);border-radius:10px;box-shadow:0 12px 32px rgba(15,23,42,.16);display:grid;min-width:190px;padding:6px;position:absolute;right:0;top:calc(100% + 5px);z-index:10}.platform-user-actions details button{background:transparent;border:0;border-radius:7px;color:inherit;cursor:pointer;padding:9px;text-align:left}.platform-user-actions details button:hover{background:var(--hover,#f1f5f9)}.platform-user-actions details button.danger{color:#b42318}@media(max-width:900px){.platform-user-hero{align-items:flex-start;flex-direction:column}.platform-user-create form{grid-template-columns:1fr 1fr}.platform-user-filters{align-items:stretch;display:grid;grid-template-columns:1fr 1fr}.platform-user-filters .search{grid-column:1/-1}}@media(max-width:600px){.platform-user-create form,.platform-user-filters{grid-template-columns:1fr}.platform-user-filters .search{grid-column:auto}.platform-user-hero .primary-btn{width:100%}}
.error-dialog-backdrop{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:20px;background:#07111dcc;backdrop-filter:blur(4px)}.error-dialog{display:grid;width:min(520px,100%);grid-template-columns:auto minmax(0,1fr);gap:15px;padding:24px;border:1px solid #fecaca;border-radius:14px;background:#fff;color:#17212b;box-shadow:0 28px 80px #02061780}.error-dialog-icon{display:grid;width:46px;height:46px;place-items:center;border-radius:50%;background:#fee2e2;color:#b91c1c;font:900 25px Manrope,sans-serif}.error-dialog span{color:#b91c1c;font-size:10px;font-weight:900;letter-spacing:1.2px}.error-dialog h2{margin:3px 0 8px;font:800 19px Manrope,sans-serif}.error-dialog p{margin:0;color:#374151;font-size:14px;line-height:1.5;overflow-wrap:anywhere}.error-dialog small{display:block;margin-top:13px;color:#6b7280}.error-dialog-close{grid-column:2;justify-self:end;min-width:100px;background:#b91c1c}.error-dialog-close:hover{background:#991b1b}.error-dialog-close:focus-visible{outline:3px solid #fca5a5;outline-offset:3px}@media(max-width:520px){.error-dialog{grid-template-columns:1fr}.error-dialog-icon{width:40px;height:40px}.error-dialog-close{grid-column:1;width:100%}}
.error-dialog{display:block;width:min(560px,95vw);overflow:hidden;padding:0;border:1px solid #33445f;border-radius:13px;background:#101a2d;color:#dce5f2;box-shadow:0 24px 70px #000b}.error-dialog-head{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 19px;border-bottom:1px solid #2a3952;background:#101a2d}.error-dialog-head span{color:#53a8ff;font-size:10px;font-weight:900;letter-spacing:1px}.error-dialog h2{margin:2px 0 0;color:#f3f7fd;font-size:19px;font-weight:800}.error-dialog-head>button{display:grid;width:40px;height:40px;place-items:center;border:0;border-radius:8px;background:#1b2a40;color:#dce5f2;font-size:26px;cursor:pointer}.error-dialog-body{padding:20px}.error-dialog p{margin:0;color:#cbd5e1;font-size:14px;line-height:1.55;overflow-wrap:anywhere}.error-dialog-head>button:hover,.error-dialog-head>button:focus-visible{outline:2px solid #409cf2;outline-offset:2px}.error-dialog-close:focus-visible{outline:2px solid #409cf2;outline-offset:2px}@media(max-width:520px){.error-dialog{grid-template-columns:initial}.error-dialog-body{padding:16px}}
.error-dialog-head>button.error-dialog-close{grid-column:auto;justify-self:auto;min-width:0}
.error-dialog-backdrop{place-items:start end;padding:20px;background:transparent;backdrop-filter:none;pointer-events:none}.error-dialog-backdrop .error-dialog{pointer-events:auto}.field-error-highlight{border-color:#dc2626!important;outline:3px solid #fecaca!important;outline-offset:2px!important;background:#fff7f7!important}.form-field-has-error>label,.form-field-has-error label:first-child{color:#b91c1c!important}.form-field-has-error>label:after{content:' · Check this field';font-size:11px;font-weight:700;color:#b91c1c}@media(max-width:760px){.error-dialog-backdrop{padding:12px}.error-dialog-backdrop .error-dialog{width:min(560px,calc(100vw - 24px))}}
/* Stock summary full-page view */
.table-toolbar-actions{display:flex;align-items:center;gap:9px}.full-page-toggle{white-space:nowrap}.full-page-toggle span{font-size:16px;vertical-align:-1px;margin-right:4px}.table-card.is-full-page{position:fixed;inset:12px;z-index:1000;overflow:auto;max-width:none;width:auto;box-shadow:0 0 0 100vmax rgba(16,39,43,.58),0 16px 48px rgba(16,39,43,.22);border-radius:12px}.table-card.is-full-page .table-toolbar{position:sticky;top:0;background:#fff;z-index:2;border-bottom:1px solid var(--line);padding:18px 22px}.table-card.is-full-page table{min-width:900px}.table-card.is-full-page th,.table-card.is-full-page td{padding-left:22px;padding-right:22px}body.stock-summary-full-page{overflow:hidden}@media(max-width:640px){.table-toolbar-actions{gap:6px}.table-card.is-full-page{inset:6px}.table-card.is-full-page .table-toolbar{align-items:flex-start;flex-wrap:wrap}.table-card.is-full-page .table-toolbar-actions{width:100%}.table-card.is-full-page .search{flex:1;min-width:120px}}
.product-table-row>td{white-space:nowrap;vertical-align:middle}.product-details-cell b{display:inline}.product-row-meta{margin-left:6px;color:#849097;font-size:.82em}.product-actions-cell{white-space:nowrap}.product-actions-cell .product-detail-action{display:inline-flex;height:31px;margin:0 0 0 6px;align-items:center;white-space:nowrap}.product-actions-cell .product-detail-action:first-child{margin-left:0}.product-actions-cell [data-product-edit]{border-color:#8bcfc4;background:#e2f5ee;color:#006b5d}.product-actions-cell [data-product-edit]:hover{border-color:#45ad9d;background:#ccece4;color:#005b50}.product-actions-cell [data-product-edit]:focus-visible{outline:3px solid #8bd7ca;outline-offset:2px}
.product-industry-cell{min-width:10rem}.product-industry-table-details{position:relative}.product-industry-table-details summary{cursor:pointer;color:var(--primary,#2563eb);font-weight:600;list-style-position:inside}.product-industry-table-details>div{display:grid;gap:10px;min-width:18rem;padding:10px;margin-top:6px;border:1px solid #dce3e8;border-radius:8px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.12);white-space:normal}.product-industry-table-details section{display:grid;grid-template-columns:repeat(2,minmax(7rem,1fr));gap:6px 12px}.product-industry-table-details section>b{grid-column:1/-1}.product-industry-table-details span{display:flex;flex-direction:column}.product-industry-table-details small{color:#6b7280}
#stock-summary-card table{table-layout:fixed;width:100%}#stock-summary-card th:first-child,#stock-summary-card td:first-child{width:12.5%;max-width:12.5rem}#stock-summary-card .product-details-cell{overflow:hidden;text-overflow:ellipsis}

.stock-summary-chart{margin:0 18px 18px;padding:16px 16px 13px;border:1px solid var(--line);border-radius:10px;background:linear-gradient(180deg,#fbfdfd 0%,#f6faf9 100%)}
.stock-summary-chart-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;color:#56656c;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.45px}
.stock-summary-chart-head .link-btn,.stock-summary-chart-empty .link-btn{border:0;background:transparent;color:var(--teal);font:700 11px 'DM Sans';cursor:pointer;text-transform:none;letter-spacing:0}
.stock-summary-chart-bars{height:230px;display:grid;grid-template-columns:repeat(8,minmax(60px,1fr));gap:10px;align-items:stretch;overflow-x:auto;padding:5px 2px 0}
.stock-summary-column{min-width:60px;height:100%;padding:0;border:0;background:transparent;color:#34434a;display:grid;grid-template-rows:23px 1fr 30px 18px;gap:3px;align-items:end;cursor:pointer;text-align:center;border-radius:7px;outline:none}
.stock-summary-column-value{align-self:center;font-size:10px;font-weight:700;color:#5c6c72;white-space:nowrap}
.stock-summary-column-track{height:100%;min-height:110px;display:flex;align-items:flex-end;justify-content:center;border-bottom:1px solid #dce6e4;background:repeating-linear-gradient(to bottom,transparent 0,transparent 39px,#e9efee 40px)}
.stock-summary-column-track i{display:block;width:min(40px,62%);height:var(--stock-bar-height);min-height:4px;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,#3bc0aa 0%,var(--teal) 100%);box-shadow:0 5px 12px rgba(0,141,123,.18);transition:height .2s ease,filter .2s ease}
.stock-summary-column-label{align-self:start;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:700}
.stock-summary-column small{align-self:start;color:var(--teal);font-size:9px;opacity:0;transition:opacity .15s ease}
.stock-summary-column:hover{background:#eef8f5}.stock-summary-column:hover i{filter:saturate(1.2) brightness(.96)}.stock-summary-column:hover small,.stock-summary-column:focus-visible small{opacity:1}
.stock-summary-column:focus-visible{box-shadow:0 0 0 3px rgba(0,141,123,.22);background:#eef8f5}
.stock-summary-chart-empty{min-height:150px;display:grid;place-items:center;align-content:center;gap:8px;color:var(--muted)}
.stock-summary-chart-empty p{margin:0}.stock-summary-table-wrap{overflow-x:auto}
@media(max-width:760px){.stock-summary-chart{margin:0 12px 14px}.stock-summary-chart-bars{grid-template-columns:repeat(8,76px)}.stock-summary-column small{opacity:1}}
/* Receipt preview actions use distinct, high-contrast colors for quick counter use. */
.invoice-direct-print-btn,.invoice-payment-qr-btn,.invoice-preview-back{border:0;color:#fff}.invoice-direct-print-btn{background:#087f5b;box-shadow:0 3px 7px rgba(8,127,91,.24)}.invoice-direct-print-btn:hover{background:#056b4d}.invoice-payment-qr-btn{background:#2563eb;box-shadow:0 3px 7px rgba(37,99,235,.24)}.invoice-payment-qr-btn:hover{background:#1d4ed8}.invoice-preview-back{background:#475569;box-shadow:0 3px 7px rgba(71,85,105,.2)}.invoice-preview-back:hover{background:#334155}.invoice-direct-print-btn:focus-visible,.invoice-payment-qr-btn:focus-visible,.invoice-preview-back:focus-visible{outline:3px solid #f4bc49;outline-offset:2px}
/* Unknown scanned products use a second, non-destructive layer over the active transaction. */
.online-product-draft-backdrop{z-index:12}.online-product-draft-modal{width:min(920px,100%)}
.product-gst-rate output{display:flex;min-height:42px;align-items:center;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#f4f7f6;color:#173b37;font-weight:800}.product-gst-rate small{display:block;margin-top:6px;color:var(--muted)}
body.pricing-sheet-full-window{overflow:hidden}.smart-pricing-sheet.is-full-page{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;overflow:hidden;max-width:none;width:auto;box-shadow:none;border-radius:0}.smart-pricing-sheet.is-full-page .smart-sheet-toolbar{position:sticky;top:0;background:#fff;z-index:2;flex-wrap:wrap}.smart-pricing-sheet.is-full-page .smart-sheet-wrap{flex:1;min-height:0;overflow:auto}.smart-pricing-sheet.is-full-page .smart-sheet-footer{flex-shrink:0;background:#fff}.smart-sheet-title h3{display:flex;align-items:center;gap:9px}.pricing-sheet-full-window{width:30px;height:30px;padding:0;font-size:17px;line-height:1}
@media(max-width:640px){.smart-pricing-sheet.is-full-page .smart-sheet-toolbar{align-items:flex-start}}
.entity-lookup-search{display:grid;gap:7px;position:relative}.entity-lookup-search-input{width:100%}.entity-lookup-results{background:var(--surface,#fff);border:1px solid var(--border,#dbe3ef);border-radius:10px;box-shadow:0 14px 34px rgba(15,23,42,.16);display:grid;left:0;max-height:260px;overflow:auto;padding:5px;position:absolute;right:0;top:42px;z-index:40}.entity-lookup-results[hidden]{display:none}.entity-lookup-results button{background:transparent;border:0;border-radius:7px;color:inherit;cursor:pointer;font:inherit;padding:9px 10px;text-align:left}.entity-lookup-results button:hover,.entity-lookup-results button:focus-visible{background:var(--hover,#f1f5f9);outline:none}.entity-lookup-results p{color:var(--muted,#64748b);font-size:12px;margin:0;padding:10px}.entity-lookup-search>select{width:100%}
.product-register-title{border-inline-start:4px solid var(--teal);padding-inline-start:12px}
.modal:has(.product-edit-form){width:min(1180px,calc(100vw - 32px));max-height:96vh}.product-edit-form .modal-body{padding:14px 20px}.product-edit-form .form-grid{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:12px;row-gap:9px}.product-edit-impact{display:flex;align-items:center;gap:8px;margin-bottom:9px;padding:8px 12px;border:1px solid #b8ddd6;border-radius:8px;background:#f3fbf8;color:#31514e}.product-edit-impact.history{border-color:#f0d395;background:#fff9eb;color:#684f1d}.product-edit-impact b{flex:none;font:700 12px Manrope}.product-edit-impact span{font-size:11px;line-height:1.35}.product-edit-section{grid-column:1/-1;display:flex;align-items:baseline;gap:8px;margin-top:2px;padding:7px 10px;border:1px solid #c9d9ef;border-left:4px solid #4179cc;border-radius:7px;background:#e7f0fd}.product-edit-section:first-child{margin-top:0}.product-edit-section h3{flex:none;margin:0;color:#264f88;font:800 13px Manrope;letter-spacing:.01em}.product-edit-section small,.product-edit-form .form-field>small{font-size:10px;line-height:1.3;color:#65767a}.product-edit-section small{color:#536b8b}.product-edit-section.product-industry-heading{border-color:#b9cdea;border-left-color:#315f9f;background:#dce9fa}.product-edit-section.product-industry-heading h3{color:#204574}.product-edit-section.product-industry-heading small{color:#4a6282}.product-edit-form :is(input,select):disabled,.product-edit-form input[readonly]{background:#f3f5f5;color:#647177;cursor:not-allowed}.product-field-lock{display:block;margin-top:0;color:#956b18!important;font-size:9px!important;line-height:1.25!important}.product-edit-form .barcode-master-field{gap:4px}.product-edit-form .barcode-device-help{margin:0}.product-edit-form .product-lookup-status{padding:7px 10px}.product-edit-form .product-barcode-list{margin-top:5px;padding:9px 11px}.product-edit-form .product-barcode-empty{margin:5px 0 0}.product-edit-form .product-warranty-fields{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:12px;padding:9px 11px}.product-edit-form .product-warranty-fields legend{grid-column:1/-1}.product-edit-form .product-warranty-fields .ws-help{margin:0;font-size:10px}.product-edit-form .product-warranty-fields .ws-settings{grid-column:1/-1}@media(max-width:1050px){.product-edit-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-edit-impact,.product-edit-section{align-items:flex-start;flex-direction:column;gap:2px}}@media(max-width:760px){.modal:has(.product-edit-form){width:calc(100vw - 16px);max-height:98vh}.product-edit-form .modal-body{padding:12px}.product-edit-form .form-grid{grid-template-columns:1fr;row-gap:9px}.product-edit-section{margin-top:2px;padding:7px 9px}.product-edit-impact{margin-bottom:8px}.product-edit-form .product-warranty-fields{grid-template-columns:1fr}}
.product-edit-form .form-field{align-content:start;grid-template-columns:minmax(0,1fr);gap:5px}.product-edit-form .product-floating-field{position:relative;padding-top:7px}.product-edit-form .product-floating-field>label{position:absolute;z-index:2;top:0;left:12px;width:auto;max-width:calc(100% - 24px);margin:0;padding:0 7px;background:#fff;color:#c65312;font-size:11px;font-weight:800;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-edit-form .product-floating-field>:is(input,select,textarea,output,.barcode-master-entry){grid-column:1;width:100%;border-color:#edc8b3;border-radius:8px}.product-edit-form .product-floating-field>:is(input,select){min-height:44px;padding-top:11px}.product-edit-form .product-floating-field textarea{padding-top:14px}.product-edit-form .product-floating-field:focus-within>label{color:#a83f06}.product-edit-form .product-floating-field:focus-within>:is(input,select,textarea,.barcode-master-entry){border-color:#d97842;box-shadow:0 0 0 2px rgba(217,120,66,.12)}.product-edit-form .product-floating-label{position:relative;display:grid;align-items:stretch;gap:5px;padding-top:7px;text-align:left}.product-edit-form .product-floating-label>span:first-child{position:absolute;z-index:2;top:0;left:12px;width:auto;max-width:calc(100% - 24px);padding:0 7px;background:#fff;color:#c65312;font-size:11px;font-weight:800;line-height:1.35}.product-edit-form .product-floating-label>:is(input,select,textarea){min-height:44px;border-color:#edc8b3;border-radius:8px;padding-top:11px}.product-edit-form .product-floating-label:focus-within>span:first-child{color:#a83f06}
.modal:has(.product-edit-form)>.modal-head{border-bottom-color:#000;background:#111827}.modal:has(.product-edit-form)>.modal-head h2{color:#fff}.modal:has(.product-edit-form)>.modal-head p{color:#cbd5e1}.modal:has(.product-edit-form)>.modal-head .close{background:#263244;color:#fff}.modal:has(.product-edit-form)>.modal-head .close:hover{background:#37465b}.product-edit-form .product-barcode-list-head{margin:-9px -11px 7px;padding:7px 10px;border-bottom:1px solid #c9d9ef;border-radius:9px 9px 0 0;background:#e7f0fd}.product-edit-form .product-barcode-list-head b{color:#264f88}.product-edit-form .barcode-device-help>summary{padding:5px 8px;border-radius:6px;background:#e7f0fd;color:#264f88}.product-edit-form .product-warranty-fields>legend{padding:5px 9px;border:1px solid #c9d9ef;border-radius:6px;background:#e7f0fd;color:#264f88;font-weight:800}
.multi-uom-filter-help{font-size:11px}.multi-uom-filter-row th{padding:7px 8px 9px;background:#f8fafa}.multi-uom-filter-row input{width:100%;min-width:92px;height:32px;border:1px solid var(--line);border-radius:6px;background:#fff;padding:0 8px;color:var(--ink);font:600 10px 'DM Sans';text-transform:none;outline:none}.multi-uom-filter-row input:focus{border-color:var(--teal);box-shadow:0 0 0 2px color-mix(in srgb,var(--teal) 17%,transparent)}
.alternate-unit-group-summary{display:grid;gap:4px;margin-top:2px;padding:8px 10px;border:1px solid #d8e9e5;border-radius:6px;background:#f4faf8;color:#536963;font-size:10px;line-height:1.45}.alternate-unit-group-summary b,.alternate-unit-group-summary span{display:block}.alternate-unit-group-summary b{color:#176b5f;font-size:11px}
.distribution-metric{appearance:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.distribution-metric:hover,.distribution-metric:focus-visible,.distribution-route-row:hover,.distribution-route-row:focus-visible,.distribution-delivery-stage:hover,.distribution-delivery-stage:focus-visible{border-color:#68bfb2;box-shadow:0 8px 22px rgba(0,109,94,.10);outline:3px solid rgba(0,141,123,.14);outline-offset:2px}.distribution-metric .dashboard-drill-hint{color:var(--teal);display:block;font-size:10px;font-weight:800;margin-top:6px}.distribution-chart-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);gap:19px;margin-bottom:22px}.distribution-chart-card{min-width:0}.distribution-chart-legend{display:flex;gap:13px;font-size:10px;color:var(--muted)}.distribution-chart-legend span::before{background:var(--teal);border-radius:50%;content:"";display:inline-block;height:7px;margin-right:5px;width:7px}.distribution-chart-legend span+span::before{background:#f2ae54}.distribution-route-chart{display:grid;gap:7px}.distribution-route-row{align-items:center;background:#fff;border:1px solid transparent;border-radius:8px;color:inherit;cursor:pointer;display:grid;font:inherit;gap:10px;grid-template-columns:minmax(135px,.8fr) minmax(150px,1.3fr) 44px 62px;padding:8px;text-align:left}.distribution-route-copy{display:grid;gap:3px;min-width:0}.distribution-route-copy b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.distribution-route-copy small{color:var(--muted);font-size:10px}.distribution-route-bars{display:grid;gap:4px}.distribution-route-bars i{background:linear-gradient(90deg,var(--teal) var(--distribution-bar),#edf1f1 var(--distribution-bar));border-radius:99px;display:block;height:7px}.distribution-route-bars i.productive{background:linear-gradient(90deg,#f2ae54 var(--distribution-bar),#edf1f1 var(--distribution-bar))}.distribution-route-row>strong{font:800 13px Manrope}.distribution-route-row>em,.distribution-delivery-stage>em{color:var(--teal);font-size:9px;font-style:normal;font-weight:800}.distribution-delivery-chart{align-items:end;display:grid;gap:9px;grid-template-columns:repeat(5,minmax(54px,1fr));min-height:220px}.distribution-delivery-stage{align-items:center;background:#fff;border:1px solid transparent;border-radius:9px;color:inherit;cursor:pointer;display:flex;flex-direction:column;font:inherit;height:100%;justify-content:flex-end;padding:8px 5px;text-align:center}.delivery-stage-bar{align-items:flex-end;background:linear-gradient(to top,#f3f6f6,#fafcfc);border-radius:7px;display:flex;height:105px;overflow:hidden;width:30px}.delivery-stage-bar i{background:linear-gradient(180deg,#59c7b7,var(--teal));border-radius:7px 7px 2px 2px;height:var(--delivery-height);width:100%}.distribution-delivery-stage>strong{font:800 18px Manrope;margin-top:7px}.distribution-delivery-stage>b{font-size:10px;margin-top:2px}.distribution-delivery-stage>small{color:var(--muted);font-size:9px;margin:3px 0 5px}.distribution-chart-empty{align-items:center;color:var(--muted);display:flex;flex-direction:column;justify-content:center;min-height:210px;text-align:center}.distribution-chart-empty span{color:var(--teal);font-size:28px}.distribution-chart-empty b{color:var(--ink);margin:8px 0 3px}.distribution-drill-toolbar{padding:0 0 14px}.distribution-drill-table{min-width:690px}@media(max-width:1050px){.distribution-chart-grid{grid-template-columns:1fr}}@media(max-width:760px){.distribution-route-row{grid-template-columns:1fr 42px}.distribution-route-bars{grid-column:1/-1;grid-row:2}.distribution-route-row>em{display:none}.distribution-delivery-chart{gap:3px}.distribution-delivery-stage{padding-inline:2px}.delivery-stage-bar{width:22px}.distribution-delivery-stage>small{display:none}}
.route-evaluation-card{margin-top:18px}.route-evaluation-filters{align-items:end;background:#f7faf9;border:1px solid var(--line);border-radius:10px;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(150px,1fr)) auto;margin:14px 0;padding:12px}.route-evaluation-filters label{color:var(--muted);display:grid;font-size:10px;font-weight:800;gap:5px;text-transform:uppercase}.route-evaluation-filters input,.route-evaluation-filters select{background:#fff;border:1px solid var(--line);border-radius:7px;color:var(--ink);min-height:38px;padding:7px}.route-evaluation-metrics{grid-template-columns:repeat(4,1fr)}.route-evaluation-metric{appearance:none;color:inherit;cursor:pointer;font:inherit;text-align:left}.route-evaluation-metric:hover,.route-evaluation-metric:focus-visible{border-color:#68bfb2;outline:3px solid rgba(0,141,123,.14);outline-offset:2px}.route-evaluation-layout{display:grid;gap:18px;grid-template-columns:minmax(0,1.65fr) minmax(220px,.35fr);margin-top:16px}.route-evidence-map{background:linear-gradient(135deg,#f5fbfa,#edf5f3);border:1px solid #dbe8e5;border-radius:12px;display:block;max-height:420px;width:100%}.route-evidence-map>rect{fill:#f7fbfa}.route-map-planned{fill:none;stroke:#008f7a;stroke-width:3}.route-map-actual{fill:none;stroke:#ee9d35;stroke-dasharray:8 5;stroke-width:3}.route-map-geofence{fill:rgba(0,143,122,.08);stroke:rgba(0,143,122,.25)}.route-map-pin{fill:#008f7a;stroke:#fff;stroke-width:3}.route-map-pin.complete{fill:#24774d}.route-map-pin.skipped{fill:#c75b4a}.route-map-actual-pin{fill:#ee9d35;stroke:#fff;stroke-width:2}.route-evidence-map text{fill:#263936;font:700 10px Manrope}.route-evidence-map a:focus circle.route-map-pin{stroke:#1b2523;stroke-width:5}.route-map-legend{display:flex;gap:16px;margin:0 0 8px}.route-map-legend span{color:var(--muted);font-size:10px}.route-map-legend span::before{background:#008f7a;border-radius:50%;content:"";display:inline-block;height:8px;margin-right:5px;width:8px}.route-map-legend span:nth-child(2)::before{background:#ee9d35}.route-map-legend span:nth-child(3)::before{background:rgba(0,143,122,.15);border:1px solid rgba(0,143,122,.35)}.route-map-empty{align-items:center;background:#f7faf9;border:1px dashed var(--line);border-radius:12px;display:flex;flex-direction:column;justify-content:center;min-height:270px;padding:20px;text-align:center}.route-map-empty span{color:var(--teal);font-size:32px}.route-map-empty small{color:var(--muted);max-width:420px}.route-evaluation-facts{display:grid;gap:8px}.route-evaluation-facts article{background:#f7faf9;border:1px solid var(--line);border-radius:9px;display:grid;gap:3px;padding:10px}.route-evaluation-facts span{color:var(--muted);font-size:10px}.route-evaluation-facts b{font-size:14px}.route-evaluation-table{margin-top:18px;max-height:520px}.route-evaluation-table table{min-width:940px}.route-evaluation-table td small{color:var(--muted);display:block;font-size:9px;margin-top:3px}@media(max-width:1050px){.route-evaluation-layout{grid-template-columns:1fr}.route-evaluation-facts{grid-template-columns:repeat(4,1fr)}}@media(max-width:760px){.route-evaluation-filters{grid-template-columns:1fr}.route-evaluation-metrics{grid-template-columns:repeat(2,1fr)}.route-evaluation-facts{grid-template-columns:repeat(2,1fr)}}
.route-optimization-card{margin-top:18px}.route-optimization-facts{grid-template-columns:repeat(6,1fr);margin:14px 0}.route-optimization-card table{min-width:620px}@media(max-width:1050px){.route-optimization-facts{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.route-optimization-facts{grid-template-columns:repeat(2,1fr)}}
.pos-receipt-output-setting{padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--ground)}.pos-printer-settings{display:grid;gap:9px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.pos-printer-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.pos-printer-title>span{color:var(--teal);font-size:10px;font-weight:800}.pos-printer-picker{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.pos-printer-picker select{min-width:0}.pos-printer-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.pos-printer-download{display:inline-flex;text-decoration:none}.pos-printer-manual-toggle{justify-self:start;padding:0;border:0;background:none;color:var(--teal);font:700 12px inherit;cursor:pointer}.pos-printer-manual-toggle:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.pos-printer-manual{display:grid;gap:6px}.pos-printer-auto{display:flex;align-items:center;gap:8px;font-weight:700}.pos-printer-auto input{width:18px;height:18px;flex:none}@media(max-width:640px){.pos-printer-picker{grid-template-columns:1fr}.pos-printer-picker button{width:100%}.pos-printer-actions{align-items:stretch;flex-direction:column}.pos-printer-download{justify-content:center}}
.purchase-bill-book{display:grid;gap:18px}.purchase-book-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:24px 26px;border-radius:20px;color:#fff;background:linear-gradient(125deg,#102b46 0%,#174f68 58%,#1b776c 100%);box-shadow:0 16px 35px rgba(16,43,70,.18)}.purchase-book-hero h2{margin:5px 0 6px;font-size:30px}.purchase-book-hero p{max-width:680px;margin:0;color:#d8edf0}.purchase-book-hero .module-browser-eyebrow{color:#8de3cf}.purchase-book-hero .secondary-btn{color:#fff;border-color:rgba(255,255,255,.34);background:rgba(255,255,255,.1)}.purchase-book-hero .primary-btn{background:#f39a35;border-color:#f39a35;color:#17283a}.purchase-book-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.purchase-book-metrics article{display:grid;gap:5px;padding:17px 19px;border:1px solid #dce5eb;border-radius:15px;background:#fff;box-shadow:0 7px 18px rgba(27,55,76,.06)}.purchase-book-metrics span{color:#617181;font-size:12px;font-weight:750;text-transform:uppercase;letter-spacing:.05em}.purchase-book-metrics strong{font-size:23px;color:#17354d}.purchase-book-metrics small{color:#71808c}.purchase-book-metrics article.is-alert{border-color:#f1b9a8;background:#fff8f5}.purchase-book-metrics article.is-alert strong,.purchase-book-overdue{color:#ba3c28!important}.purchase-book-toolbar{display:grid;grid-template-columns:minmax(240px,2fr) repeat(3,minmax(135px,1fr)) auto;align-items:end;gap:12px;padding:16px 18px;border-bottom:1px solid #e1e7eb;background:#f8fafb}.purchase-book-toolbar label{display:grid;gap:6px}.purchase-book-toolbar label>span{font-size:11px;font-weight:800;letter-spacing:.045em;text-transform:uppercase;color:#5e6d78}.purchase-book-toolbar input,.purchase-book-toolbar select{width:100%;min-height:40px;border:1px solid #cbd6dd;border-radius:9px;background:#fff;padding:8px 10px;color:#203746}.purchase-book-scroll{overflow:auto}.purchase-book-register table{min-width:1280px}.purchase-book-register th{white-space:nowrap;background:#173b57;color:#fff}.purchase-book-register td{vertical-align:top}.purchase-book-register td small{display:block;margin-top:4px;color:#75848f}.purchase-book-reference{display:grid;gap:3px;padding:0;border:0;background:none;text-align:left;color:#165b78;cursor:pointer}.purchase-book-reference:hover b{text-decoration:underline}.purchase-book-note{display:flex;gap:12px;align-items:flex-start;padding:13px 16px;border-left:4px solid #2a8f7a;border-radius:8px;background:#edf8f5;color:#355b57}.purchase-book-note b{white-space:nowrap}.purchase-book-note span{font-size:13px}@media(max-width:1000px){.purchase-book-hero{align-items:flex-start;flex-direction:column}.purchase-book-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-book-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-book-search{grid-column:1/-1}}@media(max-width:620px){.purchase-book-metrics,.purchase-book-toolbar{grid-template-columns:1fr}.purchase-book-hero{padding:20px}.purchase-book-hero .toolbar-actions{display:grid;width:100%}.purchase-book-search{grid-column:auto}}

/* Business Parameters uses restrained section tints to make each settings group easy to scan. */
#app[data-view="business-parameters"] .split-layout>div>.card:first-child{background:#f8fbff;border-color:#d8e6f7}
#app[data-view="business-parameters"] :is(.desktop-ui-variant-setting,#desktop-sync-parameter,#pos2-parameter-settings,#negative-stock-parameter,.invoice-branding-master){border-width:1px;border-style:solid}
#app[data-view="business-parameters"] .desktop-ui-variant-setting{background:#f7f5ff;border-color:#ddd6fe}
#app[data-view="business-parameters"] #desktop-sync-parameter{background:#f2f8ff;border-color:#cfe1f7}
#app[data-view="business-parameters"] #pos2-parameter-settings{background:#f1fbf8;border-color:#c9e9df}
#app[data-view="business-parameters"] #negative-stock-parameter{background:#fff9ed;border-color:#f3dfb2}
#app[data-view="business-parameters"] .invoice-branding-master{background:#fff7f7;border-color:#f1d3d8}
#app[data-view="business-parameters"] #accounting-round-off-card{background:#f4f8ff;border-color:#d4e1f4}
#app[data-view="business-parameters"] #parameter-history-card{background:#faf7ff;border-color:#e2d8f2}
#app[data-view="business-parameters"] .language-policy-card{background:#f2fbf6;border-color:#cce8d6}
#app[data-view="business-parameters"] .split-layout>div>.card:nth-last-child(2){background:#fffaf0;border-color:#f0dfb9}
#app[data-view="business-parameters"] .split-layout>div>.card:last-child{background:#fff6f4;border-color:#efd5ce}
#app[data-view="business-parameters"] .side-summary .summary-card:first-child{background:#f3f8ff;border-color:#d3e1f2}
#app[data-view="business-parameters"] .side-summary .summary-card:last-child{background:#f1faf6;border-color:#cfe7da}
#app[data-view="business-parameters"] :is(input,select,textarea,.desktop-ui-variant-options>label,.pos2-payment-method-options label){background-color:#fff}

.process-flow-hero {
  margin-bottom: 18px;
}

.erp-lifecycle { padding: 22px; overflow: hidden; }
.erp-lifecycle ol { display: grid; grid-template-columns: repeat(8, minmax(120px, 1fr)); gap: 0; margin: 22px 0 0; padding: 0; list-style: none; overflow-x: auto; }
.erp-lifecycle li { position: relative; min-width: 120px; padding: 0 18px 8px 0; }
.erp-lifecycle li:not(:last-child)::after { content: ''; position: absolute; top: 17px; left: 40px; right: 8px; height: 2px; background: linear-gradient(90deg, var(--primary), var(--border)); }
.erp-lifecycle li span { position: relative; z-index: 1; display: grid; place-items: center; width: 36px; height: 36px; margin-bottom: 10px; border-radius: 50%; background: var(--primary); color: #fff; font-size: 11px; font-weight: 800; }
.erp-lifecycle li b, .erp-lifecycle li small { display: block; }
.erp-lifecycle li small { margin-top: 4px; color: var(--muted); line-height: 1.4; }
.erp-lifecycle li a { display: block; color: inherit; text-decoration: none; }
.erp-lifecycle li a:hover b, .erp-lifecycle li a:focus-visible b { color: var(--primary); }
.erp-lifecycle li a:focus-visible { border-radius: 8px; outline: 2px solid var(--primary); outline-offset: 4px; }

.process-flow-directory { display: flex; align-items: end; justify-content: space-between; gap: 16px; margin: 30px 2px 14px; }
.process-flow-directory h2, .process-flow-directory p { margin: 0; }
.process-flow-directory p { margin-top: 5px; color: var(--muted); }
.process-flow-directory > span { flex: 0 0 auto; color: var(--primary); font-weight: 800; }

.implementation-directory { margin-bottom: 36px; }
.implementation-package-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 16px; }
.implementation-package-tabs.single { grid-template-columns: minmax(280px, 560px); }
.implementation-package-tabs button { --package-accent: #2563eb; position: relative; display: grid; gap: 5px; min-height: 104px; padding: 17px; border: 1px solid color-mix(in srgb, var(--package-accent) 34%, var(--border)); border-radius: 14px; outline: 1px solid color-mix(in srgb, var(--package-accent) 10%, transparent); outline-offset: 2px; background: color-mix(in srgb, var(--package-accent) 3%, var(--surface)); color: var(--ink); text-align: left; font: inherit; cursor: pointer; }
.implementation-package-tabs button[data-implementation-package="pro"] { --package-accent: #7c3aed; }
.implementation-package-tabs button[data-implementation-package="enterprise"] { --package-accent: #b45309; }
.implementation-package-tabs button:hover, .implementation-package-tabs button:focus-visible, .implementation-package-tabs button[aria-selected="true"] { border-color: color-mix(in srgb, var(--package-accent) 62%, var(--border)); background: color-mix(in srgb, var(--package-accent) 8%, var(--surface)); outline-color: color-mix(in srgb, var(--package-accent) 28%, transparent); box-shadow: 0 8px 22px color-mix(in srgb, var(--package-accent) 13%, transparent); }
.implementation-package-tabs span { color: var(--package-accent); font-size: 16px; font-weight: 900; }
.implementation-package-tabs small { padding-right: 68px; color: var(--muted); line-height: 1.45; }
.implementation-package-tabs em { position: absolute; top: 12px; right: 12px; padding: 4px 7px; border-radius: 999px; background: var(--package-accent); color: #fff; font-size: 9px; font-style: normal; font-weight: 800; }
.implementation-package-page[hidden] { display: none; }
.implementation-package-summary { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin: 4px 2px 12px; }
.implementation-package-summary span { color: var(--primary); font-size: 10px; font-weight: 900; letter-spacing: .1em; }
.implementation-package-summary h3 { margin: 4px 0; }
.implementation-package-summary p { margin: 0; color: var(--muted); }
.implementation-package-summary strong { flex: 0 0 auto; color: var(--primary); }
.implementation-module-tabs { display: flex; gap: 8px; margin-bottom: 14px; padding: 5px; overflow-x: auto; border: 1px solid var(--border); border-radius: 14px; background: color-mix(in srgb, var(--surface) 90%, var(--border)); scrollbar-width: thin; }
.implementation-module-tabs button, .implementation-section-tabs button { --tab-accent: #2563eb; flex: 0 0 auto; border: 0; border-radius: 9px; background: transparent; color: var(--muted); font: inherit; font-size: 12px; font-weight: 800; cursor: pointer; }
.implementation-module-tabs button:nth-child(6n + 2), .implementation-section-tabs button:nth-child(6n + 2), .implementation-chart li:nth-child(6n + 2) { --tab-accent: #0f766e; }
.implementation-module-tabs button:nth-child(6n + 3), .implementation-section-tabs button:nth-child(6n + 3), .implementation-chart li:nth-child(6n + 3) { --tab-accent: #b45309; }
.implementation-module-tabs button:nth-child(6n + 4), .implementation-section-tabs button:nth-child(6n + 4), .implementation-chart li:nth-child(6n + 4) { --tab-accent: #7c3aed; }
.implementation-module-tabs button:nth-child(6n + 5), .implementation-section-tabs button:nth-child(6n + 5), .implementation-chart li:nth-child(6n + 5) { --tab-accent: #be123c; }
.implementation-module-tabs button:nth-child(6n + 6), .implementation-section-tabs button:nth-child(6n + 6), .implementation-chart li:nth-child(6n + 6) { --tab-accent: #0e7490; }
.implementation-module-tabs button[data-implementation-module="sales"], .implementation-module-tabs button[data-implementation-module="pos"], .implementation-module-tabs button[data-implementation-module="crm"] { --tab-accent: #be123c; }
.implementation-module-tabs button[data-implementation-module="purchase"], .implementation-module-tabs button[data-implementation-module="suppliers"] { --tab-accent: #b45309; }
.implementation-module-tabs button[data-implementation-module="inventory"], .implementation-module-tabs button[data-implementation-module="manufacturing"] { --tab-accent: #0f766e; }
.implementation-module-tabs button[data-implementation-module="finance"], .implementation-module-tabs button[data-implementation-module="banking"] { --tab-accent: #7c3aed; }
.implementation-module-tabs button[data-implementation-module="service"] { --tab-accent: #15803d; }
.implementation-module-tabs button[data-implementation-module="reports"] { --tab-accent: #0e7490; }
.implementation-module-tabs button[data-implementation-module="settings"] { --tab-accent: #4338ca; }
.implementation-module-tabs button { padding: 11px 14px; border: 1px solid color-mix(in srgb, var(--tab-accent) 30%, var(--border)); background: color-mix(in srgb, var(--tab-accent) 4%, var(--surface)); }
.implementation-module-tabs button:hover, .implementation-module-tabs button:focus-visible, .implementation-section-tabs button:hover, .implementation-section-tabs button:focus-visible { background: color-mix(in srgb, var(--tab-accent) 8%, transparent); color: var(--tab-accent); outline: 2px solid color-mix(in srgb, var(--tab-accent) 48%, transparent); outline-offset: -2px; }
.implementation-module-tabs button[aria-selected="true"], .implementation-section-tabs button[aria-selected="true"] { background: var(--tab-accent); color: #fff; box-shadow: 0 5px 14px color-mix(in srgb, var(--tab-accent) 28%, transparent); }
.implementation-module-page { padding: 22px; scroll-margin-top: 105px; }
.implementation-module-page[hidden], .implementation-section[hidden] { display: none; }
.implementation-module-page > header { display: flex; align-items: start; justify-content: space-between; gap: 18px; }
.implementation-module-page > header span { color: var(--primary); font-size: 10px; font-weight: 800; letter-spacing: .1em; }
.implementation-module-page > header h3 { margin: 5px 0 4px; font-size: 21px; }
.implementation-module-page > header p { max-width: 760px; margin: 0; color: var(--muted); line-height: 1.5; }
.implementation-module-page > header em { flex: 0 0 auto; color: var(--primary); font-size: 11px; font-style: normal; font-weight: 800; }
.implementation-chart { display: grid; grid-template-columns: repeat(6, minmax(112px, 1fr)); gap: 22px; margin: 24px 0; padding: 0; overflow-x: auto; list-style: none; }
.implementation-chart li { --tab-accent: #2563eb; position: relative; min-width: 112px; }
.implementation-chart li:not(:last-child)::after { content: '→'; position: absolute; top: 19px; right: -17px; color: var(--primary); font-size: 18px; font-weight: 900; }
.implementation-chart button { display: grid; grid-template-columns: 38px minmax(0, 1fr); align-items: center; gap: 9px; width: 100%; min-height: 58px; padding: 10px; border: 1px solid color-mix(in srgb, var(--tab-accent) 30%, var(--border)); border-radius: 12px; outline: 1px solid color-mix(in srgb, var(--tab-accent) 9%, transparent); outline-offset: 2px; background: color-mix(in srgb, var(--tab-accent) 3%, var(--surface)); color: var(--ink); text-align: left; font: inherit; cursor: pointer; }
.implementation-chart button:hover, .implementation-chart button:focus-visible, .implementation-chart button[aria-selected="true"] { border-color: color-mix(in srgb, var(--tab-accent) 58%, var(--border)); background: color-mix(in srgb, var(--tab-accent) 7%, var(--surface)); outline-color: color-mix(in srgb, var(--tab-accent) 24%, transparent); box-shadow: 0 5px 14px color-mix(in srgb, var(--tab-accent) 14%, transparent); }
.implementation-chart button > span { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; background: color-mix(in srgb, var(--tab-accent) 14%, var(--surface)); color: var(--tab-accent); font-size: 10px; font-weight: 900; }
.implementation-chart button[aria-selected="true"] > span { background: var(--tab-accent); color: #fff; }
.implementation-chart b { font-size: 11px; overflow-wrap: anywhere; }
.implementation-section-tabs { display: flex; gap: 7px; margin-bottom: 14px; padding-bottom: 2px; overflow-x: auto; }
.implementation-section-tabs button { padding: 9px 12px; border: 1px solid color-mix(in srgb, var(--tab-accent) 32%, var(--border)); outline: 1px solid color-mix(in srgb, var(--tab-accent) 8%, transparent); outline-offset: 1px; background: color-mix(in srgb, var(--tab-accent) 4%, var(--surface)); }
.implementation-section-pages .implementation-section { max-width: 760px; }
.implementation-section-pages .cycle-category-head { min-height: 0; }
.implementation-section-pages .cycle-process-category li { grid-template-columns: 24px minmax(0, 1fr) auto; align-items: center; }
.implementation-section-pages .cycle-process-category li .secondary-btn, .implementation-section-pages .cycle-process-category li > em { grid-column: 3; grid-row: 1; margin-top: 0; }

.package-flow-directory { margin-bottom: 30px; }
.package-flow-selectors { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-bottom: 16px; }
.package-flow-selector { position: relative; display: grid; gap: 5px; min-height: 128px; padding: 18px; border: 1px solid var(--border); border-radius: 16px; background: var(--surface); color: var(--ink); text-decoration: none; box-shadow: 0 6px 20px color-mix(in srgb, var(--ink) 5%, transparent); transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.package-flow-selector:hover, .package-flow-selector:focus-visible { border-color: color-mix(in srgb, var(--primary) 55%, var(--border)); box-shadow: 0 12px 26px color-mix(in srgb, var(--ink) 10%, transparent); outline: none; transform: translateY(-2px); }
.package-flow-selector.current { border-color: color-mix(in srgb, var(--primary) 52%, var(--border)); background: color-mix(in srgb, var(--primary) 5%, var(--surface)); }
.package-flow-selector > span { color: var(--primary); font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.package-flow-selector > b { font-size: 16px; }
.package-flow-selector > small { color: var(--muted); line-height: 1.45; }
.package-flow-selector > em { position: absolute; top: 14px; right: 14px; padding: 4px 8px; border-radius: 999px; background: color-mix(in srgb, var(--primary) 12%, transparent); color: var(--primary); font-size: 10px; font-style: normal; font-weight: 800; }
.package-process-flow { scroll-margin-top: 105px; }
.package-process-flow > summary i { color: var(--primary); }
.package-flow-intent { display: grid; grid-template-columns: auto 1fr; gap: 4px 10px; margin-top: 20px; padding: 16px 18px; border-radius: 13px; background: color-mix(in srgb, var(--primary) 6%, var(--surface)); }
.package-flow-intent > span { color: var(--primary); font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.package-flow-intent > b { font-size: 13px; }
.package-flow-intent > p { grid-column: 1 / -1; margin: 4px 0 0; color: var(--muted); line-height: 1.5; }
.addon-flow-directory { margin-top: 36px; }
.addon-flow-selectors { grid-template-columns: minmax(280px, 1fr) minmax(0, 2fr); }
.addon-flow-selector { border-left: 4px solid var(--orange); }
.addon-flow-selector > span, .addon-process-flow > summary i, .addon-flow-intent > span { color: #b45309; }
.addon-flow-selector.current { border-color: color-mix(in srgb, var(--orange) 65%, var(--border)); background: color-mix(in srgb, var(--orange) 6%, var(--surface)); }
.addon-flow-selector > em { background: color-mix(in srgb, var(--orange) 14%, transparent); color: #9a4a08; }
.addon-flow-intent { background: color-mix(in srgb, var(--orange) 7%, var(--surface)); }

.process-detail-flow { margin-bottom: 14px; padding: 0; overflow: hidden; border-color: color-mix(in srgb, var(--primary) 22%, var(--border)); }
.process-detail-flow > summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 18px; cursor: pointer; list-style: none; border-left: 4px solid var(--primary); background: linear-gradient(110deg, color-mix(in srgb, var(--primary) 12%, var(--surface)), color-mix(in srgb, var(--primary) 3%, var(--surface)) 62%, var(--surface)); }
.process-detail-flow > summary::-webkit-details-marker { display: none; }
.process-detail-flow > summary::after { content: '+'; order: 3; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 10px; background: color-mix(in srgb, var(--primary) 10%, transparent); color: var(--primary); font-size: 20px; font-weight: 800; }
.process-detail-flow[open] > summary::after { content: '−'; }
.process-detail-flow > summary > span { display: grid; gap: 4px; }
.process-detail-flow > summary i { justify-self: start; padding: 4px 8px; border-radius: 999px; background: color-mix(in srgb, var(--primary) 14%, var(--surface)); color: var(--primary); font-size: 10px; font-style: normal; font-weight: 800; letter-spacing: .1em; }
.process-detail-flow > summary b { color: var(--ink); font-size: 17px; }
.process-detail-flow > summary small { color: var(--muted); line-height: 1.45; }
.process-detail-flow > summary > em { margin-left: auto; padding: 5px 9px; border-radius: 999px; background: color-mix(in srgb, var(--primary) 10%, var(--surface)); color: var(--primary); font-size: 12px; font-style: normal; font-weight: 800; }
.process-detail-flow[open] > summary { border-bottom: 1px solid color-mix(in srgb, var(--primary) 22%, var(--border)); background: linear-gradient(110deg, color-mix(in srgb, var(--primary) 16%, var(--surface)), color-mix(in srgb, var(--primary) 5%, var(--surface)) 62%, var(--surface)); }
.process-detail-body { padding: 0 18px 18px; }
.cycle-process-detail { scroll-margin-top: 105px; }
.cycle-process-body { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; padding-top: 22px; }
.cycle-process-category { min-width: 0; overflow: hidden; border: 1px solid var(--border); border-radius: 14px; background: var(--surface); }
.cycle-category-head { display: flex; gap: 10px; min-height: 92px; padding: 16px; border-bottom: 1px solid var(--border); background: color-mix(in srgb, var(--primary) 5%, var(--surface)); }
.cycle-category-head > span { display: grid; flex: 0 0 28px; place-items: center; width: 28px; height: 28px; border-radius: 9px; background: var(--primary); color: #fff; font-size: 11px; font-weight: 800; }
.cycle-category-head h4, .cycle-category-head p { margin: 0; }
.cycle-category-head p { margin-top: 4px; color: var(--muted); font-size: 12px; line-height: 1.4; }
.cycle-process-category ol { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.cycle-process-category li { display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 9px; align-items: start; padding: 14px; border-bottom: 1px solid var(--border); }
.cycle-process-category li:last-child { border-bottom: 0; }
.cycle-process-category li > span { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: color-mix(in srgb, var(--primary) 10%, var(--surface)); color: var(--primary); font-size: 10px; font-weight: 800; }
.cycle-process-category li b, .cycle-process-category li small { display: block; }
.cycle-process-category li small { margin-top: 4px; color: var(--muted); line-height: 1.4; }
.cycle-process-category li .secondary-btn, .cycle-process-category li > em { grid-column: 2; justify-self: start; margin-top: 2px; }
.cycle-process-category li > em { color: var(--muted); font-size: 11px; font-style: normal; font-weight: 700; }
.cycle-process-category li.unavailable { opacity: .65; }

.process-role-rule {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin-bottom: 18px;
  padding: 0;
  overflow: hidden;
}

.process-role-rule > div {
  padding: 18px 20px;
}

.process-role-rule > div + div {
  border-left: 1px solid var(--border);
}

.process-role-rule b {
  display: block;
  margin-bottom: 6px;
  color: var(--ink);
}

.process-role-rule p,
.process-flow-boundaries p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}

.process-flow-card {
  padding: 22px;
}

.process-flow-track {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
  list-style: none;
  margin: 18px 0 0;
  padding: 0;
}

.process-flow-step {
  --step-accent: #2563eb;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-height: 174px;
  padding: 16px;
  border: 1px solid color-mix(in srgb, var(--step-accent) 24%, var(--border));
  border-radius: 14px;
  outline: 1px solid color-mix(in srgb, var(--step-accent) 12%, transparent);
  outline-offset: 2px;
  background: var(--surface);
  box-shadow: 0 6px 18px color-mix(in srgb, var(--ink) 7%, transparent);
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.process-flow-step:nth-child(4n + 2) { --step-accent: #0f766e; }
.process-flow-step:nth-child(4n + 3) { --step-accent: #b45309; }
.process-flow-step:nth-child(4n + 4) { --step-accent: #7c3aed; }

.process-flow-step::before {
  content: '';
  position: absolute;
  inset: 0 0 auto;
  height: 4px;
  border-radius: 14px 14px 0 0;
  background: var(--step-accent);
}

.process-flow-step:hover {
  border-color: color-mix(in srgb, var(--step-accent) 52%, var(--border));
  box-shadow: 0 14px 30px color-mix(in srgb, var(--step-accent) 15%, transparent);
  transform: translateY(-2px);
}
.process-flow-step.process-flow-return-target,
.cycle-process-category li.process-flow-return-target {
  outline: 3px solid color-mix(in srgb, var(--primary) 72%, white);
  outline-offset: 4px;
  animation: process-flow-return-pulse .9s ease-in-out 2;
}
@keyframes process-flow-return-pulse { 50% { box-shadow: 0 0 0 8px color-mix(in srgb, var(--primary) 18%, transparent); } }
@media (prefers-reduced-motion: reduce) { .process-flow-step.process-flow-return-target, .cycle-process-category li.process-flow-return-target { animation: none; } }

.process-flow-step.unavailable { background: color-mix(in srgb, var(--surface) 82%, var(--border)); opacity: .72; }

.process-flow-step:not(:nth-child(4n))::after {
  content: '→';
  position: absolute;
  right: -20px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--primary);
  font-size: 20px;
  font-weight: 800;
}

.process-flow-number {
  display: grid;
  place-items: center;
  flex: 0 0 32px;
  height: 32px;
  border-radius: 10px;
  background: var(--step-accent);
  color: #fff;
  font-weight: 800;
}

.process-flow-card-head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid color-mix(in srgb, var(--step-accent) 18%, var(--border));
}

.process-flow-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex: 1;
  min-width: 0;
  width: 100%;
}

.process-flow-role {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--step-accent);
}

.process-flow-copy h3 {
  margin: 0 0 6px;
  font-size: 15px;
}

.process-flow-copy p {
  margin: 0 0 8px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.process-flow-copy strong {
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--ink);
  font-size: 13px;
}

.process-flow-copy strong > span {
  display: grid;
  place-items: center;
  flex: 0 0 22px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: color-mix(in srgb, var(--step-accent) 13%, transparent);
  color: var(--step-accent);
  font-size: 11px;
}

.process-step-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  margin-top: auto;
  padding-top: 12px;
  border-top: 1px solid color-mix(in srgb, var(--step-accent) 16%, var(--border));
}

.process-step-footer .secondary-btn {
  flex: 0 0 auto;
  min-height: 38px;
  padding: 8px 10px;
  border-color: color-mix(in srgb, var(--step-accent) 42%, var(--border));
  background: color-mix(in srgb, var(--step-accent) 7%, var(--surface));
  color: var(--step-accent);
  white-space: nowrap;
}

.process-step-footer .secondary-btn:hover,
.process-step-footer .secondary-btn:focus-visible {
  border-color: var(--step-accent);
  background: color-mix(in srgb, var(--step-accent) 13%, var(--surface));
}

.process-step-unavailable { color: var(--muted); font-size: 12px; font-weight: 700; }
.process-flow-track.compact .process-flow-step { min-height: 164px; }

.process-flow-boundaries {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 18px;
}

.process-flow-boundaries .card {
  padding: 18px;
}

.process-detail-flow .process-flow-boundaries article { padding: 18px; border: 1px solid var(--border); border-radius: 14px; background: var(--surface); }

.process-flow-boundaries h3 {
  margin: 10px 0 6px;
}

.process-boundary {
  display: inline-flex;
  padding: 5px 9px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.process-boundary.blocked {
  background: #fee2e2;
  color: #991b1b;
}

.process-boundary.excluded {
  background: #fef3c7;
  color: #92400e;
}

@media (max-width: 1100px) {
  .implementation-chart { grid-template-columns: repeat(6, minmax(130px, 1fr)); }
  .package-flow-selectors { grid-template-columns: 1fr; }
  .package-flow-selector { min-height: 0; }

  .process-flow-track {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .cycle-process-body { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  .process-flow-step::after {
    display: none;
  }
}

@media (max-width: 720px) {
  .implementation-package-tabs { grid-template-columns: 1fr; }
  .implementation-package-tabs button { min-height: 0; }
  .implementation-package-summary { align-items: flex-start; flex-direction: column; }
  .implementation-module-page { padding: 16px; }
  .implementation-module-page > header { display: grid; }
  .implementation-chart { margin: 18px 0; }
  .implementation-section-pages .cycle-process-category li { grid-template-columns: 24px minmax(0, 1fr); }
  .implementation-section-pages .cycle-process-category li .secondary-btn, .implementation-section-pages .cycle-process-category li > em { grid-column: 2; grid-row: auto; justify-self: start; }
  .process-role-rule,
  .process-flow-boundaries,
  .cycle-process-body {
    grid-template-columns: 1fr;
  }

  .process-flow-track { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  .process-role-rule > div + div {
    border-left: 0;
    border-top: 1px solid var(--border);
  }

  .process-detail-flow > summary { align-items: flex-start; padding: 18px; }
  .process-detail-flow > summary > em { display: none; }
  .process-detail-body { padding: 0 16px 16px; }
  .process-flow-directory { align-items: flex-start; flex-direction: column; }
  .process-step-footer { align-items: stretch; flex-direction: column; }
  .process-step-footer .secondary-btn { width: 100%; }
}

@media (max-width: 520px) {
  .process-flow-track { grid-template-columns: 1fr; gap: 14px; }
  .process-flow-step { min-height: 0; }
}

.dashboard-period {
  display: grid;
  justify-items: end;
  gap: 8px;
}

.dashboard-period .date-pill {
  display: flex;
  align-items: center;
  gap: 8px;
}

.dashboard-refresh-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 8px;
  border: 1px solid #f2c17a;
  border-radius: 7px;
  background: #fff1d9;
  color: #8a4b08;
  font: 700 11px 'DM Sans';
  cursor: pointer;
}
.dashboard-refresh-btn:hover, .dashboard-refresh-btn:focus-visible { background: #ffe4b8; outline: 2px solid #e9a642; outline-offset: 1px; }
.dashboard-refresh-btn:disabled { opacity: .65; cursor: wait; }
.dashboard-refresh-btn.has-newer-data { border-color: #e9a642; box-shadow: 0 0 0 2px rgb(233 166 66 / 22%); }
.dashboard-refresh-btn.has-newer-data::after { content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--orange); }
.dashboard-period .date-pill select {
  border: 0;
  background: transparent;
  color: #314248;
  font: 700 12px 'DM Sans';
  outline: none;
  cursor: pointer;
}

.dashboard-period .date-pill b {
  padding-left: 8px;
  border-left: 1px solid var(--line);
  font-size: 11px;
  white-space: nowrap;
}

.custom-date-range {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  padding: 10px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
}

.custom-date-range label {
  display: grid;
  gap: 4px;
  color: var(--muted);
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
}

.custom-date-range input {
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 7px 8px;
  color: var(--ink);
  font: 11px 'DM Sans';
}

.custom-date-range .primary-btn { height: 32px; }
.donut.dynamic::after { content: attr(data-total) '\A Period due'; }
.empty-inline {
  justify-content: center !important;
  color: var(--muted);
  font-size: 11px !important;
  padding: 28px 10px !important;
}
.dashboard-heading { gap: 16px; }
.dashboard-drill-card {
  cursor: pointer;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
.dashboard-drill-card:hover,
.dashboard-drill-card:focus-visible {
  border-color: color-mix(in srgb, var(--teal) 58%, var(--line));
  box-shadow: 0 8px 22px rgba(15, 74, 70, .12);
  outline: none;
  transform: translateY(-1px);
}
.dashboard-drill-card:focus-visible { box-shadow: 0 0 0 3px color-mix(in srgb, var(--teal) 22%, transparent), 0 8px 22px rgba(15, 74, 70, .12); }
.dashboard-drill-hint { position: absolute; right: 14px; bottom: 9px; color: var(--teal-dark); font-size: 10px; font-weight: 800; }
.dashboard-chart-drill { transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease; }
.sales-performance-controls { display: flex; align-items: center; gap: 8px; }
.sales-performance-controls label { color: var(--muted); font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.sales-performance-controls select { min-height: 34px; padding: 6px 30px 6px 10px; border: 1px solid var(--line); border-radius: 9px; background: var(--surface); color: var(--ink); font: 800 11px 'DM Sans'; cursor: pointer; }
.sales-performance-controls select:focus-visible { outline: 2px solid var(--teal); outline-offset: 2px; }
.sales-performance-controls select:disabled { cursor: wait; opacity: .65; }
.dashboard-chart-drill .chart { margin-bottom: 22px; }
.dashboard-chart-drill:hover,
.dashboard-chart-drill:focus-within { border-color: color-mix(in srgb, var(--teal) 58%, var(--line)); box-shadow: 0 8px 22px rgba(15, 74, 70, .12); transform: translateY(-1px); }
.dashboard-chart-drill:focus-within { box-shadow: 0 0 0 3px color-mix(in srgb, var(--teal) 22%, transparent), 0 8px 22px rgba(15, 74, 70, .12); }
.dashboard-chart-drill-hint { border: 0; background: transparent; padding: 3px 0; color: var(--teal-dark); font: 800 10px 'DM Sans'; white-space: nowrap; cursor: pointer; }
.dashboard-chart-drill .bar-group { border: 0; background: transparent; padding: 0; color: inherit; font: inherit; cursor: pointer; }
.dashboard-chart-drill .bar-group::after { white-space: nowrap; }
.dashboard-chart-drill .bar-group:focus-visible { outline: 2px solid var(--teal); outline-offset: 4px; border-radius: 3px; }
.dashboard-aging-card .progress-list { display: grid; gap: 3px; }
.dashboard-aging-card .progress-list button { width: 100%; border: 0; border-radius: 6px; background: transparent; padding: 5px 7px; display: flex; justify-content: space-between; color: inherit; font: inherit; cursor: pointer; }
.dashboard-aging-card .progress-list button:hover { background: var(--mint); color: var(--teal-dark); }
.dashboard-aging-card .progress-list button:focus-visible { outline: 2px solid var(--teal); outline-offset: 1px; }
.dashboard-aging-card .progress-list button:nth-child(2) i { background: #63cbbd; }
.dashboard-aging-card .progress-list button:nth-child(3) i { background: #f5bd57; }
.dashboard-aging-card .progress-list button:nth-child(4) i { background: #e7edef; }
.dashboard-drill-page-head .toolbar-actions { align-items: center; flex-wrap: wrap; }
.dashboard-drill-page-head .date-pill { display: inline-flex; align-items: center; gap: 7px; }
.dashboard-drill-page-head .dashboard-home-btn { border-color: var(--teal); background: var(--teal); color: #fff; box-shadow: 0 3px 7px rgba(0, 141, 123, .2); }
.dashboard-drill-page-head .dashboard-home-btn:hover { border-color: var(--teal-dark); background: var(--teal-dark); }
.dashboard-drill-page-head .dashboard-home-btn:focus-visible { outline: 3px solid color-mix(in srgb, var(--teal) 28%, transparent); outline-offset: 2px; }
.dashboard-drill-page { overflow: hidden; }
.dashboard-drill-summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; color: var(--muted); font-size: 11px; }
.dashboard-drill-summary b { color: var(--text); font-size: 13px; }
.dashboard-drill-table { max-height: 68vh; overflow: auto; border: 1px solid #cfd4d8; border-radius: 2px; background: #fff; }
.dashboard-drill-table thead { position: sticky; top: 0; z-index: 1; }
.dashboard-drill-table table { border-collapse: collapse; }
.dashboard-drill-table tbody tr { height: 31px; background: #fff; transition: background-color .1s ease; }
.dashboard-drill-table tbody tr:nth-child(even),
.dashboard-drill-table tbody tr:nth-child(even) > td { background: #eef6ff; }
.dashboard-drill-table tbody tr:hover,
.dashboard-drill-table tbody tr:hover > td { background: #e2f0fc; }
.dashboard-drill-table tbody tr.selected,
.dashboard-drill-table tbody tr.selected > td { background: #cfe5fa; }
.dashboard-drill-table tbody td { height: 31px; padding: 4px 10px; border-bottom: 1px solid #d5d9dc; color: #111; font-size: 12px; white-space: nowrap; }
.dashboard-drill-table .dashboard-line-control { width: 36px; min-width: 36px; padding: 3px 6px; text-align: center; }
.dashboard-line-control input { width: 18px; height: 18px; margin: 0; accent-color: var(--teal); vertical-align: middle; cursor: pointer; }
.dashboard-line-arrow { width: 24px; height: 24px; border: 0; background: transparent; color: #4a5054; font-size: 21px; line-height: 1; cursor: pointer; }
.dashboard-line-arrow:hover,
.dashboard-line-arrow:focus-visible { color: var(--teal-dark); outline: none; }
.dashboard-drill-limit { margin: 12px 2px 0; }
.dashboard-filter-row th { padding: 7px 8px 9px; background: #f8fafa; }
.dashboard-filter-row input { width: 100%; min-width: 92px; height: 32px; border: 1px solid var(--line); border-radius: 6px; background: #fff; padding: 0 8px; color: var(--ink); font: 600 10px 'DM Sans'; text-transform: none; outline: none; }
.dashboard-filter-row input:focus { border-color: var(--teal); box-shadow: 0 0 0 2px color-mix(in srgb, var(--teal) 17%, transparent); }
.dashboard-filter-row input.invalid { border-color: var(--red); background: #fff5f5; }
.dashboard-line-link { border: 0; background: transparent; padding: 0; color: var(--teal-dark); font: 800 12px 'DM Sans'; cursor: pointer; }
.dashboard-line-link:hover,
.dashboard-line-link:focus-visible { text-decoration: underline; outline: none; }
.dashboard-grid .bar-group { min-width: 18px; }
.dashboard-grid .bar { width: 14px; }

/* Compact density shared by every dashboard and module overview. */
.app-content.space-saver-dashboard {
  padding-top: 18px;
  padding-bottom: 28px;
}

.space-saver-dashboard .section-head {
  margin-bottom: 14px;
}

.space-saver-dashboard .section-head h2 {
  font-size: 20px;
}

.space-saver-dashboard .module-hero {
  gap: 14px;
  margin-bottom: 13px;
  padding: 16px 18px;
}

.space-saver-dashboard .module-hero h2 {
  font-size: 20px;
}

.space-saver-dashboard .module-hero p {
  line-height: 1.45;
}

.space-saver-dashboard .metrics {
  gap: 10px;
  margin-bottom: 14px;
}

.space-saver-dashboard .metric {
  min-height: 84px;
  padding: 12px 14px;
}

.space-saver-dashboard .metric strong {
  margin: 7px 0 2px;
  font-size: 21px;
}

.space-saver-dashboard .metric .metric-icon {
  top: 11px;
  right: 11px;
  width: 27px;
  height: 27px;
  font-size: 13px;
}

.space-saver-dashboard .dashboard-grid {
  gap: 12px;
}

.space-saver-dashboard .card:not(.table-card),
.space-saver-dashboard .summary-card {
  padding: 14px;
}

.space-saver-dashboard .card-head {
  margin-bottom: 10px;
}

.space-saver-dashboard .chart {
  height: 172px;
}

.space-saver-dashboard .action {
  padding: 9px;
}

.space-saver-dashboard .action span {
  margin-bottom: 5px;
}

.space-saver-dashboard .module-browser {
  gap: 9px;
  padding-bottom: 10px;
}

.space-saver-dashboard .module-browser-group > header {
  min-height: 56px;
  padding: 10px;
}

.space-saver-dashboard .module-browser-item {
  min-height: 43px;
  padding: 7px 8px;
}

.empty.compact { padding: 24px 10px; }

@media (max-width: 760px) {
  .dashboard-heading { display: grid; }
  .dashboard-period { justify-items: start; width: 100%; }
  .dashboard-period .date-pill { width: 100%; flex-wrap: wrap; }
  .dashboard-period .date-pill b { margin-left: auto; }
  .dashboard-chart-drill .card-head { align-items: flex-start; }
  .sales-performance-controls { flex-wrap: wrap; justify-content: flex-end; }
  .custom-date-range { width: 100%; flex-wrap: wrap; }
  .custom-date-range label { flex: 1; min-width: 120px; }
  .custom-date-range input { width: 100%; }
  .app-content.space-saver-dashboard { padding-top: 14px; }
}

/* Landing dashboard: raised KPI cards share the Smart Pricing 3D language. */
.dashboard-impact-metrics { gap: 12px; margin-bottom: 16px; padding: 2px 1px 7px; }
.dashboard-role-switcher{display:flex;gap:10px;margin:0 0 16px;padding:6px;border:1px solid #dce6ed;border-radius:16px;background:#f5f8fa;overflow-x:auto}.dashboard-role-switcher button{min-width:190px;padding:11px 14px;border:1px solid transparent;border-radius:12px;background:transparent;color:#526376;text-align:left;cursor:pointer}.dashboard-role-switcher button b,.dashboard-role-switcher button small{display:block}.dashboard-role-switcher button small{margin-top:3px;font-size:11px;line-height:1.35}.dashboard-role-switcher button.active{border-color:#87cfc5;background:#fff;color:#123c38;box-shadow:0 5px 14px rgba(24,90,82,.09)}.dashboard-role-switcher button:focus-visible{outline:3px solid rgba(20,145,132,.28);outline-offset:2px}
.owner-dashboard-tabs{display:flex;align-items:flex-end;gap:3px;margin:0 0 16px;padding:0 12px;border-bottom:1px solid var(--line,#dce6ed);overflow-x:auto}.owner-dashboard-tabs button{position:relative;flex:0 0 auto;margin-bottom:-1px;padding:11px 16px;border:1px solid transparent;border-bottom-color:var(--line,#dce6ed);border-radius:11px 11px 0 0;background:#eef3f6;color:var(--muted,#60718a);font-size:11px;font-weight:800;cursor:pointer}.owner-dashboard-tabs button:hover{background:#f8fbfc;color:var(--teal-dark,#007565)}.owner-dashboard-tabs button.active{border-color:var(--line,#dce6ed);border-bottom-color:#fff;background:#fff;color:var(--teal-dark,#007565);box-shadow:0 -4px 12px rgba(24,90,82,.06)}.owner-dashboard-tabs button:focus-visible{z-index:1;outline:3px solid rgba(20,145,132,.25);outline-offset:2px}.owner-category-panel{min-height:280px}.owner-category-heading{display:flex;align-items:flex-end;justify-content:space-between;margin:2px 0 14px}.owner-category-heading span{display:block;margin-bottom:5px;color:var(--teal-dark,#007565);font-size:9px;font-weight:900;letter-spacing:.14em}.owner-category-heading h3{margin:0;color:var(--ink,#17212b);font-size:18px}.owner-category-heading p{margin:4px 0 0;color:var(--muted,#60718a);font-size:11px}.owner-category-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.owner-category-metrics .owner-metric-warning{--impact:#d98a0b;--impact-bright:#ffc95a;--impact-dark:#9d5d00}.owner-category-metrics .owner-metric-danger{--impact:#d34d4d;--impact-bright:#ff8989;--impact-dark:#9b2525}
.owner-dashboard-tabs{overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.owner-dashboard-tabs::-webkit-scrollbar{display:none}
@media(max-width:900px){.owner-category-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.owner-dashboard-tabs{padding-left:4px}.owner-dashboard-tabs button{padding:10px 12px}.owner-category-metrics{grid-template-columns:1fr}.owner-category-heading p{max-width:34rem}}
.space-saver-dashboard .dashboard-impact-metrics .metric {
  --impact: #2879df; --impact-bright: #67aeff; --impact-dark: #1456b4;
  isolation: isolate; min-width: 0; min-height: 118px; padding: 14px; overflow: visible;
  border: 1px solid rgba(205,216,229,.78); border-radius: 20px;
  background: linear-gradient(145deg,rgba(255,255,255,.98),rgba(241,246,252,.94));
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.95),inset -1px -1px 0 rgba(205,216,229,.2),0 5px 0 rgba(202,212,225,.58),0 18px 34px rgba(54,72,98,.14);
  transition: transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.dashboard-impact-metrics .metric:before {
  content: ''; position: absolute; z-index: -1; inset: 1px 1px auto auto; width: 64%; height: 70%;
  border-radius: 0 23px 0 70%; background: linear-gradient(225deg,rgba(218,229,242,.35),transparent 70%); pointer-events: none;
}
.dashboard-impact-metrics .metric:after {
  content: ''; position: absolute; z-index: -2; right: 16px; bottom: -8px; left: 16px; height: 16px;
  border-radius: 50%; background: rgba(43,57,79,.14); filter: blur(12px); pointer-events: none;
}
.dashboard-impact-metrics .metric:nth-child(2) { --impact: #744edd; --impact-bright: #ab8bff; --impact-dark: #4e2cae; }
.dashboard-impact-metrics .metric:nth-child(3) { --impact: #ee9d16; --impact-bright: #ffc952; --impact-dark: #bd6d06; }
.dashboard-impact-metrics .metric:nth-child(4) { --impact: #db3d8d; --impact-bright: #ff82bb; --impact-dark: #ad1e67; }
.space-saver-dashboard .dashboard-impact-metrics .metric .metric-icon {
  top: 13px; left: 13px; right: auto; width: 44px; height: 44px; box-sizing: border-box;
  border: 3px solid rgba(255,255,255,.76); border-radius: 15px;
  background: linear-gradient(145deg,var(--impact-bright),var(--impact) 53%,var(--impact-dark)); color: #fff;
  font: 800 18px/1 Manrope,sans-serif;
  box-shadow: inset 2px 2px 5px rgba(255,255,255,.48),inset -4px -5px 8px rgba(43,30,81,.18),0 5px 0 var(--impact-dark),0 12px 20px color-mix(in srgb,var(--impact) 34%,transparent);
  text-shadow: 0 2px 1px rgba(32,28,55,.2);
}
.dashboard-impact-metrics .metric .metric-icon:after {
  content: ''; position: absolute; inset: 4px 6px auto; height: 36%; border-radius: 10px;
  background: linear-gradient(rgba(255,255,255,.42),rgba(255,255,255,0)); pointer-events: none;
}
.dashboard-impact-metrics .metric .metric-title {
  display: block; min-height: 30px; margin-left: 55px; color: #172238;
  font-size: 11px; font-weight: 800; line-height: 1.35; overflow-wrap: anywhere;
}
.space-saver-dashboard .dashboard-impact-metrics .metric strong {
  max-width: calc(100% - 72px); margin: 11px auto 3px; overflow: hidden; color: #101828;
  font-size: clamp(18px,1.7vw,21px); line-height: 1.05; text-align: center; text-overflow: ellipsis; white-space: nowrap;
  letter-spacing: -.035em; text-shadow: 0 1px 0 #fff;
}
.dashboard-impact-metrics .metric small { color: #60718a; font-size: 9px; line-height: 1.35; overflow-wrap: anywhere; }
.dashboard-impact-metrics .metric small.up { color: #118264; }
.dashboard-impact-metrics .dashboard-drill-hint {
  display: grid; place-items: center; right: 12px; bottom: 11px; width: 28px; height: 28px; overflow: hidden;
  border: 1px solid rgba(219,226,235,.92); border-radius: 50%; background: rgba(255,255,255,.9);
  color: var(--impact-dark); font-size: 0; box-shadow: 0 5px 12px rgba(54,72,98,.1),inset 0 1px 0 #fff;
}
.dashboard-impact-metrics .dashboard-drill-hint:after { content: '↗'; font-size: 15px; }
@media (hover:hover) and (pointer:fine) {
  .dashboard-impact-metrics .dashboard-drill-card:hover {
    transform: translateY(-3px); border-color: color-mix(in srgb,var(--impact) 28%,#d5dde7);
    box-shadow: inset 1px 1px 0 rgba(255,255,255,.95),inset -1px -1px 0 rgba(205,216,229,.18),0 7px 0 rgba(202,212,225,.54),0 23px 40px rgba(54,72,98,.18);
  }
}
.dashboard-impact-metrics .dashboard-drill-card:focus-visible {
  transform: translateY(-2px); border-color: var(--impact); outline: none;
  box-shadow: 0 0 0 3px color-mix(in srgb,var(--impact) 20%,transparent),0 6px 0 rgba(202,212,225,.54),0 20px 36px rgba(54,72,98,.17);
}
@media (max-width: 760px) {
  .dashboard-impact-metrics { gap: 11px; }
  .space-saver-dashboard .dashboard-impact-metrics .metric { min-height: 106px; padding: 12px 13px; border-radius: 18px; }
  .dashboard-impact-metrics .metric .metric-title { min-height: 27px; }
  .space-saver-dashboard .dashboard-impact-metrics .metric strong { margin-top: 8px; }
}
@media (hover:none),(pointer:coarse) { .space-saver-dashboard .dashboard-impact-metrics .metric { transition: none; } }
@media (prefers-reduced-motion: reduce) {
  .space-saver-dashboard .dashboard-impact-metrics .metric { transition: none; }
  .dashboard-impact-metrics .dashboard-drill-card:hover,.dashboard-impact-metrics .dashboard-drill-card:focus-visible { transform: none; }
}
.platform-onboarding-form:has([data-create-edition][value="LITE"]:checked) [data-create-feature-choice="INVENTORY.MULTI_UOM"] { display: none; }

/* Every dashboard summary remains inspectable; module-specific drill-downs can replace this shared evidence view. */
[data-dashboard-inspect]{position:relative;cursor:pointer}
[data-dashboard-inspect]:focus-visible{outline:3px solid color-mix(in srgb,var(--teal,#008d7b) 46%,#fff);outline-offset:3px}
[data-dashboard-inspect] .dashboard-inspect-hint{display:block;margin-top:8px;color:var(--teal,#008d7b);font-size:9px;font-weight:800;letter-spacing:.02em}
.dashboard-inspection-modal .modal{width:min(1100px,calc(100vw - 32px))}
.dashboard-inspection-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}
.dashboard-inspection-toolbar .search{width:min(380px,60%)}
.dashboard-inspection-table{max-height:58vh;overflow:auto;border:1px solid var(--line,#dfe6e2);border-radius:10px;background:#fff}
.dashboard-inspection-table table{width:100%;border-collapse:collapse}
.dashboard-inspection-table th{position:sticky;top:0;z-index:1;background:#f3f7f5}
.dashboard-inspection-table th,.dashboard-inspection-table td{padding:10px 12px;border-bottom:1px solid var(--line,#dfe6e2);text-align:left;white-space:nowrap}
.dashboard-inspection-table td{font-size:11px}.dashboard-inspection-table tr:last-child td{border-bottom:0}
.dashboard-inspection-limit{margin:10px 0 0}
@media(max-width:650px){.dashboard-inspection-toolbar{align-items:stretch;flex-direction:column}.dashboard-inspection-toolbar .search{width:100%}}

/* Purchase control tower */
.purchase-dashboard-head{align-items:flex-end}.purchase-dashboard-head .module-browser-eyebrow{display:block;margin-bottom:7px;color:var(--teal-dark);font-size:10px;font-weight:900;letter-spacing:.14em}.purchase-kpi{cursor:pointer}.purchase-kpi-alert{border-color:#f0b4a5!important}.purchase-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:16px;margin-bottom:16px}.purchase-flow-card{grid-column:1}.purchase-supplier-card{grid-column:2}.purchase-actions-card{grid-column:1/-1}.purchase-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.purchase-stage{position:relative;display:grid;grid-template-columns:30px 1fr;gap:8px;min-width:0;border:1px solid var(--line);border-radius:13px;padding:12px;background:linear-gradient(145deg,#fff,#f5f9fb);color:var(--text);text-align:left;cursor:pointer}.purchase-stage>span{display:grid;width:28px;height:28px;place-items:center;border-radius:9px;background:var(--mint);color:var(--teal-dark);font-weight:900}.purchase-stage div{min-width:0}.purchase-stage b,.purchase-stage small,.purchase-stage strong,.purchase-stage u{display:block}.purchase-stage small{margin-top:2px;color:var(--muted);font-size:9px}.purchase-stage strong{grid-column:1/-1;margin-top:5px;font-size:15px}.purchase-stage i{grid-column:1/-1;height:5px;overflow:hidden;border-radius:99px;background:#e6edef}.purchase-stage i em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal),#5bc8b8)}.purchase-stage u{grid-column:1/-1;color:var(--teal-dark);font-size:9px;font-weight:800;text-decoration:none}.purchase-stage:hover,.purchase-stage:focus-visible{border-color:var(--teal);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 16%,transparent)}.purchase-supplier-list{display:grid;gap:8px}.purchase-supplier{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:9px;width:100%;border:0;border-bottom:1px solid var(--line);padding:8px 0;background:transparent;color:var(--text);text-align:left;cursor:pointer}.purchase-supplier>span{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;background:#edf4ff;color:#2960a8;font-size:10px;font-weight:900}.purchase-supplier small{display:block;margin-top:2px;color:var(--muted);font-size:9px}.purchase-supplier strong{font-size:11px}.purchase-actions-card .action-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.purchase-activity td:first-child small{display:block;color:var(--muted);font-size:9px}.purchase-loading{min-height:220px;display:grid;place-items:center}
/* Keep procurement text readable against every selectable workspace theme. */
.purchase-stage,.purchase-supplier{color:var(--ink,#17212b)}
.purchase-activity{background:var(--paper,#fff);color:var(--ink,#17212b)}
.purchase-activity :is(.table-toolbar h3,tbody td,tbody td b){color:var(--ink,#17212b)}
.purchase-activity :is(.page-subtitle,td:first-child small){color:var(--muted,#6d7783)}
.purchase-activity .link-btn{color:var(--teal-dark,#007565)}
.purchase-activity .link-btn:hover,.purchase-activity .link-btn:focus-visible{color:var(--ink,#17212b);text-decoration:underline}
@media(max-width:1000px){.purchase-dashboard-grid{grid-template-columns:1fr}.purchase-flow-card,.purchase-supplier-card{grid-column:auto}.purchase-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-actions-card .action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.purchase-dashboard-head,.purchase-dashboard-head .toolbar-actions{display:grid;width:100%}.purchase-flow{grid-template-columns:1fr}.purchase-actions-card .action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-activity{overflow:auto}.purchase-activity table{min-width:720px}}
/* Territory mapping register */
.territory-mapping-head{align-items:flex-end}.territory-mapping-head .module-browser-eyebrow{display:block;margin-bottom:8px;color:var(--primary,#0f766e);font-size:11px;font-weight:800;letter-spacing:.12em}.territory-mapping-card{padding:0;overflow:hidden}.territory-mapping-toolbar{padding:20px 22px;border-bottom:1px solid var(--border,#e5e7eb)}.territory-mapping-toolbar .toolbar-actions{display:flex;gap:10px;align-items:center}.territory-mapping-toolbar select{min-width:135px}.territory-mapping-table-wrap{max-width:100%;overflow:auto}.territory-mapping-table{min-width:1500px}.territory-mapping-table th{position:sticky;top:0;z-index:1;white-space:nowrap;background:var(--surface,#fff)}.territory-mapping-table td{vertical-align:middle}.territory-mapping-table td:first-child,.territory-mapping-table th:first-child{position:sticky;left:0;z-index:2;background:var(--surface,#fff);box-shadow:8px 0 14px -14px #111827}.territory-brand-list{display:flex;max-width:240px;flex-wrap:wrap;gap:5px}.territory-brand-list span{padding:4px 8px;border-radius:999px;background:#eef7f5;color:#12665d;font-size:12px;font-weight:700}.territory-customer-count{min-width:40px;border:1px solid #b8ded8;border-radius:999px;padding:5px 10px;background:#f2fbf9;color:#0f766e;font-weight:800;cursor:pointer}.territory-row-actions{position:relative}.territory-row-actions summary{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--border,#e5e7eb);border-radius:9px;cursor:pointer;list-style:none;font-size:20px}.territory-row-actions summary::-webkit-details-marker{display:none}.territory-row-actions>div{position:absolute;right:0;z-index:4;min-width:145px;padding:6px;border:1px solid var(--border,#e5e7eb);border-radius:10px;background:var(--surface,#fff);box-shadow:0 12px 30px #1118271f}.territory-row-actions button{display:block;width:100%;border:0;padding:9px 10px;background:transparent;text-align:left;cursor:pointer}.territory-row-actions button:hover{background:#f3f6f8}.territory-filter-empty{margin:0;padding:30px;text-align:center;color:var(--muted,#667085)}.territory-mapping-modal{width:min(820px,calc(100vw - 24px))}.territory-mapping-modal select[multiple]{min-height:120px}.territory-visit-days{display:flex;flex-wrap:wrap;gap:10px;border:0;padding:0}.territory-visit-days legend{margin-bottom:8px;font-weight:700}.territory-visit-days label{display:flex;align-items:center;gap:5px;border:1px solid var(--border,#d9dee7);border-radius:8px;padding:8px 10px;background:var(--surface,#fff)}
@media(max-width:760px){.territory-mapping-head{align-items:stretch}.territory-mapping-head .primary-btn{width:100%}.territory-mapping-toolbar,.territory-mapping-toolbar .toolbar-actions{align-items:stretch;flex-direction:column}.territory-mapping-toolbar .search,.territory-mapping-toolbar select{width:100%}.territory-mapping-table{min-width:1350px}.territory-mapping-modal .modal-body{padding-inline:16px}}

/* Product barcode aliases */
.product-barcode-list{margin-top:14px;padding:14px;border:1px solid var(--line,#e1e7e5);border-radius:10px;background:#f8fbfa}.product-barcode-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.product-barcode-list-head>div{display:grid;gap:3px}.product-barcode-list-head small,.product-barcode-empty{color:var(--muted,#6d7783);font-size:11px}.product-barcode-empty{margin:12px 0 0}.product-barcode-row{display:grid;grid-template-columns:minmax(0,1fr) 120px auto;gap:8px;margin-top:10px}.product-barcode-row input,.product-barcode-row select{min-width:0}.product-barcode-row .secondary-btn{height:auto;min-height:37px}@media(max-width:650px){.product-barcode-list-head{align-items:stretch;flex-direction:column}.product-barcode-row{grid-template-columns:1fr}.product-barcode-row .secondary-btn{width:100%}}

.salesperson-workspace{padding-bottom:78px}.salesperson-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 28px;margin-bottom:18px;border-radius:18px;color:#fff;background:linear-gradient(125deg,#123f43,#1f766b);box-shadow:0 16px 34px #123f4330}.salesperson-hero span{font-size:11px;font-weight:800;letter-spacing:.14em;color:#94e6d5}.salesperson-hero h2{margin:4px 0;font-size:27px}.salesperson-hero p{margin:0;color:#d9f4ef}.salesperson-hero-actions{display:flex;gap:10px}.salesperson-hero .secondary-btn{color:#fff;border-color:#ffffff55;background:#ffffff10}.salesperson-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.salesperson-kpis .metric{width:100%;text-align:left;border:1px solid var(--border,#dce4e6);cursor:pointer}.salesperson-kpis .metric:focus-visible,.salesperson-customer-card button:focus-visible{outline:3px solid #33a997;outline-offset:2px}.salesperson-route{margin-top:18px}.salesperson-customer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.salesperson-customer-card{padding:18px;border:1px solid #dfe8e8;border-radius:15px;background:#fff}.salesperson-customer-head{display:flex;align-items:center;gap:11px}.salesperson-customer-head>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;font-weight:800;color:#17685d;background:#dff5ef}.salesperson-customer-head div{min-width:0;flex:1}.salesperson-customer-head h3{margin:0;font-size:15px}.salesperson-customer-head small{color:#718086}.salesperson-customer-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.salesperson-customer-facts p{margin:0;padding:10px;border-radius:10px;background:#f6f9f9}.salesperson-customer-facts span,.salesperson-customer-facts b{display:block}.salesperson-customer-facts span{font-size:10px;color:#7a898d}.salesperson-customer-facts b{margin-top:3px;font-size:12px}.salesperson-customer-actions{display:flex;flex-wrap:wrap;gap:7px}.salesperson-customer-actions a{text-decoration:none}.salesperson-bottom-nav{position:sticky;bottom:12px;z-index:8;display:none;grid-template-columns:repeat(5,1fr);max-width:560px;margin:20px auto 0;padding:7px;border:1px solid #d5e2e2;border-radius:18px;background:#fff;box-shadow:0 12px 35px #173c3c30}.salesperson-bottom-nav button{display:grid;gap:2px;place-items:center;padding:8px;border:0;border-radius:11px;color:#617174;background:transparent}.salesperson-bottom-nav button.active{color:#17685d;background:#e4f5f1}.salesperson-bottom-nav span{font-size:10px}.salesperson-permissions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 14px}.salesperson-permissions legend{margin-bottom:9px;font-weight:700}.salesperson-permissions label{padding:9px;border-radius:8px;background:#f5f8f8}.salesperson-profile-modal{width:min(760px,calc(100vw - 28px))}
@media(max-width:980px){.salesperson-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.salesperson-customer-grid{grid-template-columns:1fr}.salesperson-bottom-nav{display:grid}}
@media(max-width:600px){.salesperson-hero{align-items:flex-start;flex-direction:column;padding:20px}.salesperson-hero-actions{width:100%}.salesperson-hero-actions button{flex:1}.salesperson-kpis{grid-template-columns:1fr 1fr}.salesperson-customer-facts{grid-template-columns:1fr}.salesperson-customer-actions>*{flex:1}.salesperson-permissions{grid-template-columns:1fr}}

.gst-period-bar {
  display: flex;
  align-items: flex-end;
  gap: 12px;
  margin-bottom: 18px;
  padding: 13px 16px;
}
.gst-period-bar > div { display: grid; gap: 5px; }
.gst-period-bar label { color: var(--muted); font-size: 10px; font-weight: 700; }
.gst-period-bar input { border: 1px solid var(--line); border-radius: 6px; padding: 8px; font: 12px 'DM Sans'; }
.gst-period-bar .status { margin-left: auto; margin-bottom: 7px; }
.gst-readiness { display: grid; grid-template-columns: minmax(230px,.7fr) 1.3fr; gap: 20px; padding: 16px 18px; margin: 0 0 18px; border-radius: 9px; border: 1px solid; }
.gst-readiness.ready { background: #edf9f5; border-color: #bce5d9; }
.gst-readiness.needs-action { background: #fff8ea; border-color: #efd9a6; }
.gst-readiness b { font: 700 14px Manrope; }
.gst-readiness p { margin: 4px 0 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.gst-readiness ul { margin: 0; padding-left: 18px; color: #6a5933; font-size: 11px; line-height: 1.7; }
.gst-readiness.ready ul { color: #397363; }
.gst-grid { grid-template-columns: minmax(0,1.7fr) minmax(260px,.65fr); margin-bottom: 18px; }
.gst-section { margin-top: 18px; }
.gst-section select { min-width: 118px; }
.gst-section table { min-width: 760px; }
.gst-section { overflow-x: auto; }
.gst-grid .table-card { overflow-x: auto; }
@media (max-width: 900px) {
  .gst-readiness, .gst-grid { grid-template-columns: 1fr; }
  .gst-period-bar { flex-wrap: wrap; }
  .gst-period-bar .status { margin-left: 0; }
}

.service-status{display:inline-flex;align-items:center;width:max-content;padding:5px 9px;border-radius:999px;background:#eef2f4;color:#5a6671;font-size:10px;font-weight:800;letter-spacing:.03em;white-space:nowrap}
.service-new,.service-diagnosing{background:#edf5ff;color:#24679b}.service-awaiting-approval{background:#fff5d9;color:#8a6200}.service-approved,.service-ready-for-delivery,.service-invoiced,.service-delivered,.service-closed,.service-active{background:#e7f7ef;color:#16704c}.service-in-progress,.service-quality-check{background:#eeeaff;color:#5943a5}.service-cancelled,.service-rejected,.service-expired{background:#fff0f0;color:#a64444}
.service-table td small{display:block;color:#81909a;margin-top:4px}.service-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.service-tech>strong{display:block;font:800 30px Manrope,sans-serif;margin:8px 0}.service-tech>small{color:#74808a}.service-tech>button{display:flex;flex-direction:column;gap:5px;width:100%;margin-top:12px;padding:12px;border:1px solid #e3e9ea;border-radius:10px;background:#fbfcfc;text-align:left;cursor:pointer}.service-tech>button:hover{border-color:#65baa9;background:#f0faf7}.service-tech>button span{font-size:11px;color:#6d7982}
.module-settings-list{padding:0;overflow:hidden}.module-settings-list article{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;border-bottom:1px solid #edf0f1}.module-settings-list article:last-child{border-bottom:0}.module-settings-list article>div:first-child{display:flex;align-items:center;gap:14px}.module-settings-list h3{margin:0 0 4px;font:700 14px Manrope,sans-serif}.module-settings-list p{margin:0;color:#77828b;font-size:11px}.module-symbol{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#eaf7f4;color:#14715f;font-size:18px}.module-setting-control{display:flex;align-items:center;gap:12px}.module-setting-control small{min-width:82px;color:#8b949a;text-align:right}
.module-disable-btn{border-color:#efc6c6;background:#fff0f0;color:#ad3f3f}.module-disable-btn:hover{border-color:#e9aaaa;background:#fde3e3;color:#962f2f}
.module-setting-children{padding:0 0 8px 54px;background:#f8fbfb;border-bottom:1px solid #edf0f1}.module-setting-children-label{padding:12px 20px 4px;color:#6f8585;font-size:10px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}.module-settings-list .module-setting-child{margin:0 14px;padding:14px 16px;border:1px solid #e2ecea;border-bottom:0;background:#fff}.module-settings-list .module-setting-child:last-child{border-bottom:1px solid #e2ecea;border-radius:0 0 8px 8px}.module-settings-list .module-setting-child:first-of-type{border-radius:8px 8px 0 0}.module-setting-child .module-symbol{width:30px;height:30px;font-size:14px}.module-setting-control button:disabled{cursor:not-allowed;opacity:.5}
.addon-access-head{margin-top:28px}.module-access-eyebrow{display:block;margin-bottom:5px;color:#b45309;font-size:10px;font-weight:800;letter-spacing:1px}.addon-settings-list{border-color:#f0d8bd}.addon-settings-list .module-symbol{background:#fff2df;color:#b45309}
.hospital-hero{background:linear-gradient(125deg,#fff 0%,#f3fafc 58%,#e0f2f4 100%)}.hospital-module-links .module-link{position:relative;min-height:165px}.hospital-module-links .module-link em{position:absolute;right:14px;top:14px;font-style:normal}.hospital-module-links .module-link:disabled{cursor:not-allowed;opacity:.62;transform:none;box-shadow:none}.hospital-capability-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.hospital-capability-grid article{padding:20px}.hospital-capability-grid article>span{color:#168073;font:800 11px Manrope,sans-serif;letter-spacing:1px}.hospital-capability-grid h3{margin:12px 0 7px;font:700 14px Manrope,sans-serif}.hospital-capability-grid p,.hospital-boundary p{margin:0;color:var(--muted);font-size:11px;line-height:1.55}.hospital-boundary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px}.hospital-boundary h3{margin:0 0 5px;font:700 14px Manrope,sans-serif}
.organization-hero{background:linear-gradient(125deg,#fff 0%,#f4fbf9 62%,#e5f5f1 100%)}.organization-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px}.organization-branch{margin-bottom:16px;padding:0;overflow:hidden}.organization-branch-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid var(--line);background:#fbfdfd}.organization-branch-head span{color:var(--teal);font-size:9px;font-weight:800;letter-spacing:1px}.organization-branch-head h3{margin:4px 0;font:700 15px Manrope,sans-serif}.organization-branch-head p,.organization-branch-head>b{margin:0;color:var(--muted);font-size:10px}.organization-child-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.organization-child-grid>div{padding:17px;border-right:1px solid var(--line)}.organization-child-grid>div:last-child{border-right:0}.organization-child-grid h4{margin:0 0 12px;font:800 10px Manrope,sans-serif;letter-spacing:.7px;text-transform:uppercase}.organization-child-grid p{display:flex;gap:8px;margin:6px 0;font-size:10px}.organization-child-grid p b{min-width:58px;color:var(--teal)}.organization-child-grid form,.organization-side-form{display:grid;gap:7px;margin-top:14px}.organization-child-grid input,.organization-child-grid select,.organization-side-form input,.organization-side-form select{min-width:0;padding:8px;border:1px solid var(--line);border-radius:6px;font-size:10px}.organization-side-form label{display:grid;gap:5px;color:var(--muted);font-size:10px}.organization-loading{padding:24px}
.client-admin-workspace-controls{margin-bottom:20px}.client-admin-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.client-admin-control{min-width:0;min-height:62px;padding:11px 13px;border:1px solid var(--line);border-radius:9px;background:#f8fbfa;color:var(--ink);display:flex;align-items:center;gap:11px;text-align:left}.client-admin-control>span:nth-child(2){display:grid;gap:3px;min-width:0;flex:1}.client-admin-control b{font:700 12px 'DM Sans',sans-serif}.client-admin-control small{color:var(--muted);font-size:9px}.client-admin-control-icon,.client-admin-control .sidebar-sync-icon{flex:0 0 30px;width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:var(--mint);color:var(--teal);font-size:16px;font-weight:800}.client-admin-control select{min-width:150px;max-width:46%;border:1px solid #d9e2e1;border-radius:7px;background:#fff;color:var(--ink);padding:8px;font:700 11px 'DM Sans',sans-serif;cursor:pointer}.client-admin-sync-button{font:inherit;cursor:pointer}.client-admin-sync-button:hover:not(:disabled){border-color:#9ed7cd;background:#f1f9f7}.client-admin-sync-button:disabled{cursor:not-allowed;opacity:.55}.client-admin-sync-button.syncing .sidebar-sync-icon{animation:sidebar-sync-pulse .8s ease-in-out infinite alternate}.client-admin-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.client-role-builder{margin-bottom:20px}.client-role-basics{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(320px,1.3fr);gap:14px;margin-bottom:18px}.client-role-basics label{display:grid;gap:6px;color:var(--muted);font-size:10px}.client-role-basics input{min-width:0;padding:9px 10px;border:1px solid var(--line);border-radius:7px;font:12px 'DM Sans',sans-serif}.role-page-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-height:440px;overflow:auto;padding:2px}.role-page-group{min-width:0;margin:0;padding:12px;border:1px solid var(--line);border-radius:9px}.role-page-group legend{padding:0 5px;font:700 11px Manrope,sans-serif}.role-page-group legend button{border:0;background:transparent;color:var(--teal);font:700 9px 'DM Sans',sans-serif;cursor:pointer}.role-page-group>div{display:grid;gap:7px}.role-page-group label{display:flex;align-items:flex-start;gap:8px;padding:7px;border-radius:6px;cursor:pointer}.role-page-group label:hover{background:#f4faf8}.role-page-group input{margin-top:2px;accent-color:var(--teal)}.role-page-group span{display:grid;gap:2px;min-width:0}.role-page-group b{font-size:10px}.role-page-group small{color:var(--muted);font-size:8px;overflow-wrap:anywhere}.client-role-actions{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:16px}.client-role-actions small{color:var(--muted);font-size:10px}.client-admin-grid{margin-top:20px}.client-role-list{margin-top:14px}.client-role-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.client-role-list article:last-child{border-bottom:0}.client-role-list article div{display:grid;gap:3px}.client-role-list article b{font-size:11px}.client-role-list article small{color:var(--muted);font-size:9px}.client-role-list article>span{white-space:nowrap;color:var(--teal);font-size:10px;font-weight:700}
.service-modal{width:min(1050px,94vw);max-height:92vh;overflow:auto}.service-job-detail{display:grid;gap:18px}.service-job-hero{display:flex;justify-content:space-between;align-items:flex-start;padding:16px;border:1px solid #e4eaeb;border-radius:12px;background:#fafcfc}.service-job-hero h3{margin:6px 0;font-size:16px}.service-job-hero p{margin:0;color:#76828a;font-size:11px}.service-action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.service-action-grid form{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid #e2e8e9;border-radius:12px;background:#fff}.service-action-grid h4{margin:0 0 2px;font-size:12px}.service-action-grid input,.service-action-grid select{min-width:0}.service-estimate-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border-radius:12px;background:#f3f8f7;border:1px solid #dceae7}.service-estimate-card h3{margin:3px 0}.service-estimate-card small{color:#708078}.service-event{display:grid;grid-template-columns:auto 1fr;gap:3px 8px;padding:9px 0;border-bottom:1px solid #edf0f1;font-size:11px}.service-event>b{text-transform:capitalize}.service-event>span{color:#627078}.service-event>small{grid-column:1/-1;color:#929ca2}.service-completion-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.loading-card{min-height:180px;display:grid;place-items:center;color:#7c878f}
.service-action-grid label{margin:2px 0 -3px;color:#6c7880;font-size:10px;font-weight:700}.service-tax-input{display:flex;align-items:stretch;border:1px solid #dbe2e4;border-radius:8px;overflow:hidden;background:#fff}.service-tax-input>span{display:flex;align-items:center;padding:0 9px;background:#edf5f3;color:#176b5d;font-size:10px;font-weight:800;white-space:nowrap}.service-tax-input>input{width:100%;border:0!important;border-radius:0!important}.service-tax-help{color:#839098;font-size:9px;line-height:1.35}.service-recovery-note{padding:8px;border-radius:7px;background:#fff5d9;color:#775800;font-size:9px;line-height:1.4}
.service-modal-head-actions{display:flex;align-items:center;gap:8px}.service-edit-more{margin-top:16px;border:1px solid #e1e8e8;border-radius:10px;background:#fafcfc}.service-edit-more summary{padding:13px 15px;color:#276e63;font-size:12px;font-weight:800;cursor:pointer}.service-edit-more[open] summary{border-bottom:1px solid #e1e8e8}.service-edit-more .form-grid{padding:15px}.service-edit-more+.service-recovery-note{margin-top:14px;font-size:10px}
@media(max-width:900px){.service-action-grid{grid-template-columns:1fr 1fr}.module-settings-list article{align-items:flex-start}.module-setting-control{flex-direction:column;align-items:flex-end}.hospital-capability-grid{grid-template-columns:1fr 1fr}.organization-layout{grid-template-columns:1fr}.organization-child-grid{grid-template-columns:1fr}.organization-child-grid>div{border-right:0;border-bottom:1px solid var(--line)}.role-page-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.service-action-grid{grid-template-columns:1fr}.service-estimate-card,.module-settings-list article{flex-direction:column;align-items:stretch}.module-setting-control{flex-direction:row;align-items:center}.service-job-hero{gap:12px}.module-setting-children{padding-left:12px}.hospital-capability-grid{grid-template-columns:1fr}.hospital-boundary,.organization-branch-head{align-items:flex-start;flex-direction:column}.client-admin-control-grid,.client-admin-metrics,.client-role-basics,.role-page-picker{grid-template-columns:1fr}.client-admin-control{align-items:flex-start;flex-wrap:wrap}.client-admin-control select{max-width:none;width:100%}.client-role-actions{align-items:stretch;flex-direction:column}.client-role-actions .primary-btn{width:100%}}

.role-matrix-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) minmax(180px,.4fr) auto auto;gap:14px;align-items:end;margin-bottom:18px}.role-matrix-toolbar label{display:grid;gap:6px;color:var(--muted);font-size:10px}.role-matrix-toolbar input[type="search"],.role-matrix-toolbar select{min-width:0;padding:10px 11px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:12px 'DM Sans',sans-serif}.role-matrix-toolbar .role-matrix-check{display:flex;align-items:center;gap:8px;min-height:38px;color:var(--ink);font-weight:700}.role-matrix-toolbar>strong{padding-bottom:10px;color:var(--teal);font-size:11px;white-space:nowrap}.role-matrix-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.role-matrix-card{min-width:0;border:1px solid var(--line);border-radius:12px;background:var(--card,#fff);box-shadow:0 8px 24px rgba(28,68,64,.05);overflow:hidden}.role-matrix-card>header{display:flex;justify-content:space-between;gap:12px;padding:16px;border-bottom:1px solid var(--line)}.role-matrix-card>header>div{min-width:0}.role-matrix-card>header span{color:var(--teal);font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.role-matrix-card h3{margin:4px 0;font-size:15px}.role-matrix-card header p{margin:0;color:var(--muted);font-size:10px;line-height:1.45}.role-matrix-card .status{flex:none;align-self:flex-start}.role-matrix-summary{display:flex;align-items:baseline;gap:8px;padding:12px 16px;background:#f7fbfa}.role-matrix-summary strong{font-size:22px;color:var(--teal)}.role-matrix-summary span{color:var(--muted);font-size:9px}.role-matrix-groups{display:grid;gap:12px;padding:14px 16px;max-height:310px;overflow:auto}.role-matrix-groups section>b{display:block;margin-bottom:7px;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.role-matrix-groups section>div{display:flex;flex-wrap:wrap;gap:6px}.role-matrix-groups section span{padding:5px 7px;border-radius:999px;background:var(--mint);color:var(--teal);font-size:8px;font-weight:700}.role-matrix-groups section span.unavailable{background:#f2f3f3;color:#8a9694;text-decoration:line-through}.role-matrix-card>footer{padding:10px 16px;border-top:1px solid var(--line);background:#fbfcfc}.role-matrix-card code{color:var(--muted);font-size:8px}.role-matrix-empty{padding:28px;text-align:center;color:var(--muted)}@media(max-width:1100px){.role-matrix-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.role-matrix-toolbar{grid-template-columns:1fr 1fr}}@media(max-width:650px){.role-matrix-grid,.role-matrix-toolbar{grid-template-columns:1fr}.role-matrix-toolbar>strong{padding:0}.role-matrix-card>header{flex-direction:column}}
.pharmacy-hero{background:linear-gradient(135deg,#effbf5,#f7fffb);border-color:#bfe6d2}.pharmacy-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px}.pharmacy-layout>div{display:grid;gap:20px}.pharmacy-layout aside{display:grid;align-content:start;gap:16px}.pharmacy-metrics{margin:20px 0}.pharmacy-line-fields{display:grid;grid-template-columns:repeat(2,minmax(90px,1fr));gap:6px;margin-top:8px;padding:8px;border:1px solid #bfe6d2;border-radius:8px;background:#f3fbf7}.pharmacy-line-fields b,.pharmacy-line-fields small{grid-column:1/-1;font-size:11px;color:#27765a}.pharmacy-line-fields input,.pharmacy-line-fields select{min-width:0;padding:7px;font-size:12px}.pharmacy-product-heading{padding:12px;border-radius:10px;background:#effbf5;border:1px solid #bfe6d2}.pharmacy-product-heading small{display:block;margin-top:5px;color:#507064}
@media(max-width:900px){.pharmacy-layout{grid-template-columns:1fr}.pharmacy-line-fields{grid-template-columns:1fr}}

.wa-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;border-radius:18px;background:linear-gradient(135deg,#0d3d36,#176354);color:#fff;box-shadow:0 16px 40px #113c3420}.wa-hero h2{margin:5px 0 7px;font:800 28px Manrope,sans-serif}.wa-hero p{margin:0;color:#d8f2eb}.wa-logo{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#25d366;color:#07382a;font-size:22px;font-weight:800}.wa-statuses{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.wa-pill{padding:7px 11px;border-radius:999px;background:#ffffff18;border:1px solid #ffffff38;font-size:12px;font-weight:700}.wa-pill.ok{background:#d9fbe9;color:#095d3c;border-color:#93e8bc}.wa-pill.off{background:#fff0e4;color:#9d3f12;border-color:#f3bd9a}.wa-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.wa-tabs button{border:1px solid #d7e1df;background:#fff;border-radius:9px;padding:10px 14px;color:#38504d;font-weight:700;cursor:pointer}.wa-tabs button.active{background:#123d3b;color:#fff;border-color:#123d3b}.wa-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:20px}.wa-card{padding:22px}.wa-card+.wa-card{margin-top:18px}.wa-switch-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 0;border-bottom:1px solid #edf1f0}.wa-switch-row:last-child{border:0}.wa-switch-row p{margin:4px 0 0;color:#71817e;font-size:13px}.wa-switch{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:#39524e}.wa-switch input{width:19px;height:19px;accent-color:#118b64}.wa-security-note{padding:13px;border-radius:10px;background:#eef9f5;color:#286154;font-size:13px;line-height:1.45}.wa-danger-note{background:#fff4eb;color:#924315}.wa-table td{vertical-align:top}.wa-row-actions{display:flex;flex-wrap:wrap;gap:7px;min-width:150px}.wa-template-preview{max-width:380px;color:#63716f;line-height:1.45}.wa-code{font:600 12px ui-monospace,monospace;color:#276b5e}.wa-empty{padding:30px;text-align:center;color:#71817e}.wa-audit-detail{max-width:450px;white-space:normal;word-break:break-word}.wa-compose-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.wa-compose-fields .full{grid-column:1/-1}.wa-platform{border:1px solid #f1c9a7;background:#fffaf5}.wa-meter{height:8px;border-radius:10px;background:#e6eeec;overflow:hidden;margin-top:8px}.wa-meter span{display:block;height:100%;background:#25aa76}.wa-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.wa-credential-state{font-size:12px;color:#12805b;font-weight:700}.wa-message-preview{padding:10px 12px;border-radius:10px;background:#e9f8ef;max-width:400px;color:#24443d}.wa-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.wa-form-grid .full{grid-column:1/-1}@media(max-width:900px){.wa-grid{grid-template-columns:1fr}.wa-hero{align-items:flex-start;flex-direction:column}.wa-statuses{justify-content:flex-start}.wa-form-grid,.wa-compose-fields{grid-template-columns:1fr}.wa-form-grid .full,.wa-compose-fields .full{grid-column:auto}}
.wa-delete-btn{color:#b42318;border-color:#f1b8b2}.wa-delete-btn:hover{background:#fff1f0}
.wa-consent-choice{display:flex;align-items:center;gap:8px}.wa-consent-choice button{min-width:64px}

.pricing-guide{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px;background:linear-gradient(120deg,#f3fbf8,#fff)}
.pricing-guide b{font:700 14px Manrope,sans-serif}.pricing-guide p{margin:5px 0 0;color:#6d7783;font-size:12px}.pricing-guide>span{color:#007565;background:#e2f5ee;border-radius:18px;padding:8px 13px;font-size:11px;font-weight:700;white-space:nowrap}
.price-scope{margin-top:5px;color:#007565;font-size:10px}.table-card td small{display:block;margin-top:4px;color:#7b858b}.pricing-more{margin-top:18px;border:1px solid #e2e8e8;border-radius:8px;background:#fafcfc}.pricing-more summary{cursor:pointer;padding:12px 14px;color:#526168;font-size:11px;font-weight:700}.pricing-more .form-grid{padding:4px 14px 15px}.pricing-warning{margin-top:15px;padding:11px 13px;border-radius:7px;background:#fff7e7;color:#755724;font-size:11px;line-height:1.55}.line-price-source{display:block;margin-top:4px;color:#688078;font-size:9px;line-height:1.25}.items-editor td:first-child{vertical-align:top}
@media(max-width:760px){.pricing-guide{align-items:flex-start;flex-direction:column}.pricing-guide>span{white-space:normal}.pricing-more .form-grid{grid-template-columns:1fr}}
.price-structure-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.price-structure-grid>div{border:1px solid var(--line,#dfe6e2);border-radius:12px;padding:14px;background:var(--surface-soft,#f7faf8)}.price-structure-grid b{display:block;margin-bottom:7px}.price-structure-grid p{margin:0;color:var(--muted,#66736d);line-height:1.6;font-size:.88rem}@media(max-width:1000px){.price-structure-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.price-structure-grid{grid-template-columns:1fr}#pricing-master-actions .card-head>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:7px}#pricing-master-actions .secondary-btn{margin:0}}

/* Smart Pricing keeps spreadsheet speed while retaining governed price revisions. */
.smart-pricing-head{align-items:flex-end;margin-bottom:18px}.smart-pricing-head h2{margin:6px 0 5px;font-size:25px;letter-spacing:-.035em}.smart-pricing-head p{max-width:720px}.pricing-eyebrow{display:flex;align-items:center;gap:9px}.pricing-eyebrow span{font-size:10px;font-weight:800;letter-spacing:.13em;color:#087765}.pricing-eyebrow em{font-style:normal;font-size:10px;font-weight:750;color:#41534d;background:#eaf5f1;border:1px solid #d2e9e1;border-radius:999px;padding:4px 8px}.smart-pricing-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.smart-pricing-summary .pricing-impact-card{position:relative;overflow:hidden;background:linear-gradient(145deg,#fff,#f7fbf9);border:1px solid #dde9e4;border-radius:14px;padding:15px 16px;box-shadow:0 8px 22px rgba(27,67,54,.04);color:inherit;text-align:left;font:inherit;cursor:pointer}.smart-pricing-summary .pricing-impact-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:#14a27d}.smart-pricing-summary span,.smart-pricing-summary small{display:block;color:#6b7b75;font-size:10px}.smart-pricing-summary strong{display:block;margin:5px 0 3px;font:750 22px Manrope,sans-serif;color:#17382e}.smart-pricing-sheet{padding:0!important;overflow:hidden;border-color:#d4e4de!important;box-shadow:0 12px 34px rgba(23,56,46,.08)!important}.smart-sheet-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:18px 20px 15px;background:linear-gradient(110deg,#f7fcfa,#fff)}.smart-sheet-title{display:flex;gap:11px;align-items:center}.sheet-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#0b806c;color:#fff;font-size:18px;box-shadow:0 7px 15px rgba(11,128,108,.2)}.smart-sheet-title h3{margin:0;font-size:15px}.smart-sheet-title p{margin:4px 0 0;color:#718079;font-size:11px}.smart-sheet-controls{display:flex;gap:10px;align-items:flex-end}.smart-sheet-controls label{display:grid;gap:5px;color:#607169;font-size:9px;font-weight:750;text-transform:uppercase;letter-spacing:.06em}.smart-sheet-controls select,.smart-sheet-controls input{height:34px;min-width:180px;border:1px solid #cfded8;border-radius:8px;background:#fff;padding:0 10px;color:#263b34;font:600 11px Manrope,sans-serif}.smart-sheet-help{display:flex;align-items:center;gap:15px;min-height:36px;padding:0 20px;border-top:1px solid #e7efec;border-bottom:1px solid #dce7e3;background:#fbfdfc;color:#687972;font-size:9px}.smart-sheet-help span{display:flex;align-items:center;gap:5px}.smart-sheet-help b{margin-left:auto;color:#47645a}.sheet-legend{width:9px;height:9px;border-radius:2px;border:1px solid #b9cbc5}.sheet-legend.saved{background:#fff}.sheet-legend.inherited{background:#eef7ff;border-color:#c5deef}.sheet-legend.changed{background:#fff3c4;border-color:#e6c961}.smart-sheet-wrap{overflow:auto;max-height:58vh;background:#fff}.smart-sheet-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;font-size:11px}.smart-sheet-table th,.smart-sheet-table td{border-right:1px solid #e2eae7;border-bottom:1px solid #e2eae7;padding:0;background:#fff;white-space:nowrap}.smart-sheet-table thead th{position:sticky;top:0;z-index:3;height:47px;padding:0 10px;background:#f3f7f5;color:#41544d;text-align:center;font-size:10px;font-weight:800}.smart-sheet-table thead th:first-child{left:0;z-index:5;text-align:left;min-width:230px}.smart-sheet-table thead small{display:block;margin-top:2px;color:#839089;font-size:8px;font-weight:600}.smart-sheet-table tbody th{position:sticky;left:0;z-index:2;min-width:230px;padding:9px 12px;background:#fbfdfc;text-align:left}.smart-sheet-table tbody th b,.smart-sheet-table tbody th small{display:block;max-width:210px;overflow:hidden;text-overflow:ellipsis}.smart-sheet-table tbody th b{color:#253d35;font-size:10px}.smart-sheet-table tbody th small{margin-top:3px;color:#81908a;font-size:8px;font-weight:600}.pricing-number-cell{min-width:118px}.pricing-cell-input{display:block;width:100%;height:46px;box-sizing:border-box;border:2px solid transparent;border-radius:0;background:#fff;padding:0 11px;text-align:right;color:#183a30;font:700 11px Manrope,sans-serif;outline:none}.pricing-cell-input:hover{background:#f8fcfa}.pricing-cell-input:focus{position:relative;z-index:1;border-color:#168b73;background:#fff;box-shadow:inset 0 0 0 1px #168b73}.pricing-cell-input.inherited{background:#f1f8fd;color:#40677b}.pricing-cell-input.changed{background:#fff4c9;color:#493b09;border-color:#e5c55c}.base-price .pricing-cell-input{font-weight:800}.floor-price .pricing-cell-input{color:#8a5c13}.pricing-row-action{width:42px;text-align:center}.pricing-row-action .more{margin:0}.smart-sheet-table tr[hidden]{display:none}.smart-sheet-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:64px;padding:10px 20px;background:#f8fbfa;border-top:1px solid #dce7e3}.smart-sheet-footer>div:first-child{display:grid;gap:3px}.smart-sheet-footer strong{color:#24463a;font-size:11px}.smart-sheet-footer span{color:#77877f;font-size:9px}.pricing-setup-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.smart-pricing-history{padding:0!important;overflow:hidden}.smart-pricing-history>summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:17px 19px;list-style:none}.smart-pricing-history>summary::-webkit-details-marker{display:none}.smart-pricing-history>summary span:first-child{display:grid;gap:4px}.smart-pricing-history>summary small{color:#74837c;font-size:10px;font-weight:500}.smart-pricing-history>summary span:last-child{color:#087765;font-size:10px;font-weight:750}.smart-pricing-history[open]>summary{border-bottom:1px solid #e1e9e6}.smart-pricing-history .table-card{border:0;border-radius:0;box-shadow:none;margin:0;overflow:auto}.smart-pricing-history .secondary-btn{padding:6px 9px}
.pricing-text-cell{min-width:120px;padding:0 10px!important;color:#33463f;font-weight:650}.pricing-comparison-cell{min-width:126px;background:#f8fbfa!important;text-align:right}.pricing-comparison-cell output{display:block;padding:0 11px;color:#455952;font:700 11px/46px Manrope,sans-serif}.pricing-additional-mrp{min-width:104px;text-align:center}.pricing-additional-mrp input{width:17px;height:17px;accent-color:#168b73}.smart-sheet-table .pricing-old-heading{background:#5b2495;color:#fff}.smart-sheet-table .pricing-old-heading small{color:#eadcff}.pricing-old-heading+th.pricing-old-heading{border-left-color:#7441a8}.pricing-comparison-cell[data-pricing-compare^="old-"]{background:#fbf7ff!important}.pricing-comparison-cell[data-pricing-compare^="old-"] output{color:#65407e}.pricing-comparison-cell[data-pricing-compare="distributor-margin"]{background:#fffbea!important}.pricing-comparison-cell[data-pricing-compare="distributor-margin"] output{color:#735b13}.pricing-comparison-cell[data-pricing-compare="inclusive"],.pricing-comparison-cell[data-pricing-compare="retail-margin"]{background:#f2fbf5!important}
@media(max-width:1050px){.smart-pricing-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.smart-sheet-toolbar{align-items:flex-start;flex-direction:column}.smart-sheet-controls{width:100%}.smart-sheet-controls label{flex:1}.smart-sheet-controls select,.smart-sheet-controls input{width:100%;min-width:0}.smart-sheet-help b{display:none}}
@media(max-width:650px){.smart-pricing-head{align-items:flex-start}.smart-pricing-head .primary-btn{width:100%}.smart-pricing-summary{grid-template-columns:1fr 1fr}.smart-pricing-summary .pricing-impact-card{padding:12px}.smart-sheet-controls{display:grid;grid-template-columns:1fr}.smart-sheet-help{overflow:auto;padding:8px 14px}.smart-sheet-help span{flex:none}.smart-sheet-footer{align-items:flex-start;flex-direction:column}.smart-sheet-footer>div:last-child{display:grid;grid-template-columns:1fr 1fr;width:100%}.pricing-setup-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}}

/* Raised, tactile overview cards inspired by the dashboard's 3D tile language. */
.smart-pricing-summary{gap:16px;margin-bottom:22px;padding:4px 1px 9px}
.smart-pricing-summary .pricing-impact-card{--impact:#2879df;--impact-bright:#67aeff;--impact-dark:#1456b4;isolation:isolate;display:grid;grid-template-columns:62px minmax(0,1fr);align-items:start;min-height:148px;box-sizing:border-box;padding:18px 17px 17px;overflow:visible;border:1px solid rgba(205,216,229,.78);border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(241,246,252,.94));box-shadow:inset 1px 1px 0 rgba(255,255,255,.95),inset -1px -1px 0 rgba(205,216,229,.2),0 5px 0 rgba(202,212,225,.58),0 18px 34px rgba(54,72,98,.14);transition:transform .18s ease,box-shadow .18s ease}
.smart-pricing-summary .pricing-impact-card:before{z-index:-1;inset:1px 1px auto auto;width:64%;height:70%;border-radius:0 23px 0 70%;background:linear-gradient(225deg,rgba(218,229,242,.35),transparent 70%);pointer-events:none}
.smart-pricing-summary .pricing-impact-card:after{content:"";position:absolute;z-index:-2;right:18px;bottom:-10px;left:18px;height:20px;border-radius:50%;background:rgba(43,57,79,.14);filter:blur(12px);pointer-events:none}
.smart-pricing-summary .pricing-impact-violet{--impact:#744edd;--impact-bright:#ab8bff;--impact-dark:#4e2cae}
.smart-pricing-summary .pricing-impact-amber{--impact:#ee9d16;--impact-bright:#ffc952;--impact-dark:#bd6d06}
.smart-pricing-summary .pricing-impact-rose{--impact:#db3d8d;--impact-bright:#ff82bb;--impact-dark:#ad1e67}
.smart-pricing-summary .pricing-impact-icon{position:relative;display:grid;width:54px;height:54px;box-sizing:border-box;place-items:center;border:3px solid rgba(255,255,255,.76);border-radius:18px;background:linear-gradient(145deg,var(--impact-bright),var(--impact) 53%,var(--impact-dark));color:#fff;box-shadow:inset 2px 2px 5px rgba(255,255,255,.48),inset -4px -5px 8px rgba(43,30,81,.18),0 5px 0 var(--impact-dark),0 12px 20px color-mix(in srgb,var(--impact) 34%,transparent)}
.smart-pricing-summary .pricing-impact-icon:after{content:"";position:absolute;inset:4px 6px auto;height:38%;border-radius:12px;background:linear-gradient(rgba(255,255,255,.42),rgba(255,255,255,0));pointer-events:none}
.smart-pricing-summary .pricing-impact-icon svg{position:relative;z-index:1;width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 1px rgba(32,28,55,.2))}
.smart-pricing-summary .pricing-impact-copy{min-width:0;padding:2px 0 0 13px}
.smart-pricing-summary .pricing-impact-copy>span{overflow:hidden;color:#172238;font-size:12px;font-weight:800;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
.smart-pricing-summary .pricing-impact-copy>strong{margin:21px 0 4px;color:#101828;font:800 24px/1.05 Manrope,sans-serif;letter-spacing:-.035em;text-shadow:0 1px 0 #fff}
.smart-pricing-summary .pricing-impact-copy>small{overflow:hidden;color:#60718a;font-size:10px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.smart-pricing-summary .pricing-impact-card:focus-visible{outline:3px solid color-mix(in srgb,var(--impact) 52%,#fff);outline-offset:3px;transform:translateY(-2px)}
.pricing-drilldown-modal .modal{width:min(1040px,calc(100vw - 32px))}.pricing-drilldown-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.pricing-drilldown-toolbar .search{width:min(360px,60%)}.pricing-drilldown-table{max-height:56vh;overflow:auto;border:1px solid var(--line,#dfe6e2);border-radius:10px}.pricing-drilldown-table table{width:100%;border-collapse:collapse}.pricing-drilldown-table th{position:sticky;top:0;z-index:1;background:#f3f7f5}.pricing-drilldown-table th,.pricing-drilldown-table td{padding:10px 12px;border-bottom:1px solid var(--line,#dfe6e2);text-align:left;white-space:nowrap}.pricing-drilldown-table td{font-size:11px}.pricing-drilldown-table tr:last-child td{border-bottom:0}.pricing-drilldown-limit{margin:10px 0 0}
@media(max-width:1050px){.smart-pricing-summary .pricing-impact-card{min-height:142px}}
@media(max-width:650px){.smart-pricing-summary{gap:13px}.smart-pricing-summary .pricing-impact-card{grid-template-columns:52px minmax(0,1fr);min-height:132px;padding:15px;border-radius:20px}.smart-pricing-summary .pricing-impact-icon{width:46px;height:46px;border-radius:15px}.smart-pricing-summary .pricing-impact-icon svg{width:23px;height:23px}.smart-pricing-summary .pricing-impact-copy{padding-left:10px}.smart-pricing-summary .pricing-impact-copy>strong{margin-top:17px}}
@media(max-width:470px){.smart-pricing-summary{grid-template-columns:1fr}.smart-pricing-summary .pricing-impact-card{min-height:124px}.smart-pricing-summary .pricing-impact-copy>span,.smart-pricing-summary .pricing-impact-copy>small{overflow:visible;text-overflow:clip;white-space:normal}}
@media(hover:hover) and (pointer:fine){.smart-pricing-summary .pricing-impact-card:hover{transform:translateY(-3px);box-shadow:inset 1px 1px 0 rgba(255,255,255,.95),inset -1px -1px 0 rgba(205,216,229,.18),0 7px 0 rgba(202,212,225,.54),0 23px 40px rgba(54,72,98,.18)}}
@media(hover:none),(pointer:coarse){.smart-pricing-summary .pricing-impact-card{transition:none}}
@media(prefers-reduced-motion:reduce){.smart-pricing-summary .pricing-impact-card{transition:none}.smart-pricing-summary .pricing-impact-card:hover{transform:none}}

/* New price rule: labels render on the field border from the first paint. */
#price-rule-form{--price-rule-input-border:color-mix(in srgb,var(--line,#d8e0e3) 78%,#6b7780);--price-rule-input-text:var(--ink,#26343a);--price-rule-input-muted:var(--muted,#637079);--price-rule-input-focus:var(--teal,#008d7b);--price-rule-input-label:color-mix(in srgb,var(--orange,#ef7f44) 78%,#7a3518);--price-rule-input-surface:var(--paper,#fff)}
.modal:has(#price-rule-form) .modal-head>div:first-child{flex:1}
.price-rule-help-trigger{display:grid;place-items:center;width:38px;height:38px;margin-left:auto;margin-right:10px;border:2px solid color-mix(in srgb,var(--teal) 76%,#fff);border-radius:50%;background:var(--teal);color:#fff;font:800 17px Manrope,sans-serif;box-shadow:0 5px 13px color-mix(in srgb,var(--teal) 28%,transparent);cursor:pointer}
.price-rule-help-trigger:hover,.price-rule-help-trigger:focus-visible{border-color:#fff;background:var(--teal-dark);outline:none;box-shadow:0 0 0 4px color-mix(in srgb,var(--teal) 20%,transparent),0 5px 13px color-mix(in srgb,var(--teal) 28%,transparent)}
.price-rule-help-page{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:20px;background:#0d2427b3}
.price-rule-help-page>section{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;width:min(900px,100%);max-height:92vh;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff;color:#0a0a0a;box-shadow:0 28px 80px #06171966}
.price-rule-help-page header,.price-rule-help-page footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 20px;border-bottom:1px solid var(--line)}
.price-rule-help-page header>div{display:flex;align-items:center;gap:12px}.price-rule-help-page header>div>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--teal);color:#fff;font:800 17px Manrope,sans-serif}.price-rule-help-page h2{margin:0;color:#050505;font:750 18px Manrope,sans-serif}.price-rule-help-page header p{margin:3px 0 0;color:#171717;font-size:11px}.price-rule-help-page .close{color:#050505}.price-rule-help-intro{padding:14px 30px;border-bottom:1px solid var(--line);background:#f7faf9}.price-rule-help-intro b{color:#050505;font-size:12px}.price-rule-help-intro p{margin:4px 0 0;color:#111;font-size:11px;line-height:1.55}.price-rule-help-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;overflow:auto;padding:8px 20px}.price-rule-help-content article{padding:12px 10px;border-bottom:1px solid var(--line)}.price-rule-help-content article:nth-child(odd){border-right:1px solid var(--line)}.price-rule-help-content b{color:#050505;font-size:11px}.price-rule-help-content p{margin:4px 0 0;color:#000;font-size:10px;line-height:1.5}.price-rule-help-page footer{justify-content:flex-end;border-top:1px solid var(--line);border-bottom:0}
.price-rule-help-page.price-rule-help-inline{position:static;display:block;padding:0;background:transparent}.price-rule-help-inline>section{width:100%;max-height:none;overflow:visible;box-shadow:0 12px 34px rgb(15 23 42 / .08)}.price-rule-help-inline .price-rule-help-content{overflow:visible}.price-rule-help-inline header,.price-rule-help-inline footer{background:#fff}
#price-rule-form .price-rule-floating-field{position:relative;display:block;padding-top:4px}
#price-rule-form .price-rule-floating-field>label{position:absolute;z-index:1;top:0;left:12px;margin:0;padding:0 4px;background:var(--price-rule-input-surface);color:var(--price-rule-input-label);font-size:11px;font-weight:700;line-height:1.1;pointer-events:none}
#price-rule-form .price-rule-floating-field>input,#price-rule-form .price-rule-floating-field>select,#price-rule-form .price-rule-floating-field>textarea{min-height:51px;border:1px solid var(--price-rule-input-border);border-radius:13px;padding:15px 16px 6px;background:var(--price-rule-input-surface);color:var(--price-rule-input-text);font:500 13px/1.3 'DM Sans',sans-serif;box-shadow:0 1px 2px rgb(15 23 42 / .025);transition:border-color .16s ease,box-shadow .16s ease}
#price-rule-form .price-rule-floating-field>textarea{min-height:76px;resize:vertical}
#price-rule-form .price-rule-floating-field>input:focus,#price-rule-form .price-rule-floating-field>select:focus,#price-rule-form .price-rule-floating-field>textarea:focus{border-color:var(--price-rule-input-focus);box-shadow:0 0 0 4px color-mix(in srgb,var(--price-rule-input-focus) 16%,transparent)}
#price-rule-form .price-rule-floating-field:focus-within>label{color:var(--price-rule-input-label)}
@media(max-width:650px){.price-rule-help-content{grid-template-columns:1fr}.price-rule-help-content article:nth-child(odd){border-right:0}}
.price-rule-page-shell{width:100%;margin:0}.price-rule-page-card{width:100%;max-height:none;overflow:visible;border:1px solid color-mix(in srgb,var(--line,#d8e0e3) 68%,#607078);border-radius:14px;box-shadow:0 12px 34px color-mix(in srgb,var(--ink) 8%,transparent)}.price-rule-page-card .modal-head{padding:16px 20px;background:var(--paper);border-radius:14px 14px 0 0}.price-rule-page-card .modal-body{padding:20px}.price-rule-page-card #price-rule-form>.modal-body>.form-grid{gap:12px 14px}.price-rule-page-card .modal-foot{padding:12px 20px;background:var(--paper);border-radius:0 0 14px 14px}
@media(max-width:760px){.price-rule-page-card .modal-head{padding:14px 16px}.price-rule-page-card .modal-body{padding:16px}.price-rule-page-card .modal-foot{padding:12px 16px;align-items:flex-start;gap:10px;flex-direction:column}.price-rule-page-card .modal-foot>div{display:grid;grid-template-columns:1fr 1fr;width:100%}}
.performance-route-only{display:none!important}

/* Full-screen Price sheet fills the viewport and keeps its help legend on one line. */
.smart-pricing-sheet.is-full-page{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;height:100dvh;max-height:100dvh;overflow:hidden;border-radius:0!important;box-shadow:none!important}.smart-pricing-sheet.is-full-page .smart-sheet-toolbar{flex:0 0 auto}.smart-pricing-sheet.is-full-page .smart-sheet-help{flex:0 0 auto;flex-wrap:nowrap;white-space:nowrap;overflow-x:auto}.smart-pricing-sheet.is-full-page .smart-sheet-help b{display:block;white-space:nowrap}.smart-pricing-sheet.is-full-page .smart-sheet-wrap{flex:1 1 auto;min-height:0;max-height:none;overflow:auto}.smart-pricing-sheet.is-full-page .smart-sheet-footer{flex:0 0 auto}body.pricing-sheet-full-window{overflow:hidden}

/* Keep the active product row easy to track across the wide pricing sheet. */
.smart-sheet-table tbody tr:hover>th,.smart-sheet-table tbody tr:hover>td{background-color:#eaf5f1!important}
.smart-sheet-table tbody tr:focus-within>th,.smart-sheet-table tbody tr:focus-within>td{background-color:#e1f2ec!important;box-shadow:inset 0 1px #84c7b2,inset 0 -1px #84c7b2}
.smart-sheet-table tbody tr:focus-within>th{box-shadow:inset 3px 0 #168b73,inset 0 1px #84c7b2,inset 0 -1px #84c7b2}
.smart-sheet-table tbody tr:hover .pricing-cell-input:not(:focus),.smart-sheet-table tbody tr:focus-within .pricing-cell-input:not(:focus){background-color:transparent}
.smart-sheet-table tbody tr:hover .pricing-cell-input.inherited:not(:focus),.smart-sheet-table tbody tr:focus-within .pricing-cell-input.inherited:not(:focus){background-color:#e6f2f8}
.smart-sheet-table tbody tr:hover .pricing-cell-input.changed:not(:focus),.smart-sheet-table tbody tr:focus-within .pricing-cell-input.changed:not(:focus){background-color:#fff0b3}

/* Full-window mode presents only the price sheet and keeps it above app chrome. */
body.pricing-sheet-full-window #app>*:not(.smart-pricing-sheet){display:none!important}
body.pricing-sheet-full-window #app>.smart-pricing-sheet{display:flex!important}
.smart-pricing-sheet.is-full-page{z-index:2147483000!important;background:#fff!important}
body.pricing-sheet-full-window #app{position:relative;z-index:2147483000}
.smart-pricing-sheet.is-full-page .smart-sheet-toolbar{background:#fff}
.smart-pricing-sheet.is-full-page .smart-sheet-wrap{background:#fff}
.smart-pricing-sheet.is-full-page .smart-sheet-footer{background:#f8fbfa}

/* Keep the Price sheet data lines about 60% shorter for a denser view. */
.smart-sheet-table tbody th{padding:1px 4px}
.smart-sheet-table tbody th small{margin-top:0}
.pricing-cell-input{height:14px;padding:0;line-height:normal}
.pricing-comparison-cell output{padding:0;line-height:normal}
.smart-sheet-footer #pricing-sheet-save.is-saving{display:inline-flex;align-items:center;gap:8px;opacity:1;background:#006e60;cursor:wait}
.smart-sheet-footer #pricing-sheet-save.is-saving:before{content:"";width:12px;height:12px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:pricing-save-spin .75s linear infinite}
@keyframes pricing-save-spin{to{transform:rotate(360deg)}}
.smart-sheet-table thead th.pricing-row-number{left:0;z-index:6;width:32px;min-width:32px;max-width:32px;padding:0 3px;text-align:center}
.smart-sheet-table thead th:nth-child(2){position:sticky;left:32px;z-index:5;width:var(--price-col-product,160px);min-width:var(--price-col-product,160px);max-width:var(--price-col-product,160px);text-align:left}
.smart-sheet-table tbody td.pricing-row-number{position:sticky;left:0;z-index:3;width:32px;min-width:32px;max-width:32px;padding:0 3px;background:#f3f7f5;text-align:center;color:#61726b;font-weight:700}
.smart-sheet-table tbody th{left:32px;width:var(--price-col-product,160px);min-width:var(--price-col-product,160px);max-width:var(--price-col-product,160px)}

/* Visually group the wide price sheet without changing its data contract. */
.smart-sheet-table thead th[data-header-group]{color:#fff;border-right-color:rgba(255,255,255,.2);box-shadow:inset 0 -3px rgba(0,0,0,.13)}
.smart-sheet-table thead th[data-header-group] small{color:rgba(255,255,255,.78)}
.smart-sheet-table thead th[data-header-group="identity"]{background:#087466}
.smart-sheet-table thead th[data-header-group="cost"]{background:#8a5a12}
.smart-sheet-table thead th[data-header-group="selling"]{background:#17649c}
.smart-sheet-table thead th[data-header-group="customer"]{background:#6541a5}
.smart-sheet-table thead th[data-header-group="guardrail"]{background:#a34c16}
.smart-sheet-table thead th[data-header-group="history"]{background:#5b2495}
.smart-sheet-table thead th[data-header-group="action"]{background:#46565f}
.smart-sheet-table thead th[data-header-group="identity"] .pricing-column-resize-handle:after{background:rgba(255,255,255,.58)}
.smart-sheet-table thead th[data-header-group="identity"] .pricing-column-resize-handle:hover:after,.smart-sheet-table thead th[data-header-group="identity"] .pricing-column-resize-handle:focus-visible:after{background:#fff}

/* Friendly, semantic colors for the price-sheet toolbar. */
.smart-sheet-controls label:has(> #pricing-sheet-book){color:#087466}.smart-sheet-controls label:has(> #pricing-sheet-filter){color:#6541a5}.smart-sheet-controls .sheet-search{color:#17649c}
#pricing-sheet-book{border-color:#7fcbbb;background:#eefaf6;color:#075f54;box-shadow:inset 0 0 0 1px rgba(8,116,102,.05)}
#pricing-sheet-search{border-color:#91bee0;background:#f2f8fd;color:#174f76;box-shadow:inset 0 0 0 1px rgba(23,100,156,.04)}
#pricing-sheet-search::placeholder{color:#6f8fa5}
#pricing-sheet-search-clear{background:#e7f1f8;color:#17649c}
#pricing-sheet-search-clear:hover,#pricing-sheet-search-clear:focus-visible{background:#cfe5f4;color:#0f4f7c}
#pricing-sheet-filter{border-color:#b7a3df;background:#f7f3fd;color:#55388c;box-shadow:inset 0 0 0 1px rgba(101,65,165,.04)}
.pricing-sheet-row-count{min-width:auto;padding:8px 11px;border:1px solid #d3ded9;border-radius:999px;background:#f3f7f5;color:#40564e;text-align:center}
#pricing-sheet-import{border-color:#8dbce0;background:#eef7fd;color:#155b8e}
#pricing-sheet-export{border-color:#82cbb1;background:#eefaf5;color:#087054}
#pricing-sheet-reset-columns{border-color:#e2bd7d;background:#fff8ea;color:#85520b}
#pricing-sheet-full-page{border-color:#a69cdd;background:#f3f1fd;color:#4f4294}
#pricing-sheet-import:hover,#pricing-sheet-import:focus-visible{border-color:#17649c;background:#dceefa;color:#104d75}
#pricing-sheet-export:hover,#pricing-sheet-export:focus-visible{border-color:#087054;background:#daf2e8;color:#065941}
#pricing-sheet-reset-columns:hover,#pricing-sheet-reset-columns:focus-visible{border-color:#b87713;background:#ffedc9;color:#704205}
#pricing-sheet-full-page:hover,#pricing-sheet-full-page:focus-visible,#pricing-sheet-full-page[aria-pressed="true"]{border-color:#5f50ad;background:#e4e0fa;color:#44368e}
.smart-sheet-controls select:focus,.smart-sheet-controls input:focus{outline:3px solid rgba(23,100,156,.14);outline-offset:1px}

/* Customer-ready price sheet controls and safeguards. */
.smart-sheet-controls{flex-wrap:wrap;justify-content:flex-end}.smart-sheet-controls .sheet-search{min-width:230px}.pricing-search-control{position:relative}.pricing-search-control input{width:100%;padding-right:30px}.pricing-search-control button{position:absolute;top:50%;right:5px;width:24px;height:24px;padding:0;transform:translateY(-50%);border:0;border-radius:6px;background:transparent;color:#65766f;font-size:17px;cursor:pointer}.pricing-search-control button:hover,.pricing-search-control button:focus-visible{background:#e8f3ef;color:#087765;outline:none}.pricing-sheet-row-count{align-self:center;min-width:88px;color:#526760;font-size:10px;font-weight:750;white-space:nowrap}.pricing-sheet-tools{display:flex;align-items:center;gap:6px}.pricing-sheet-tools .secondary-btn{min-height:34px;padding:7px 10px;white-space:nowrap}.sheet-legend.calculated{background:#effaf3;border-color:#bfe0ca}.sheet-legend.history{background:#f5ecff;border-color:#d4b9ed}.pricing-cell-input.is-invalid{border-color:#c83737!important;background:#fff0f0!important;color:#8c1f1f!important;box-shadow:inset 0 0 0 1px #c83737!important}.smart-sheet-table tbody th{min-height:32px;padding:4px 6px}.smart-sheet-table tbody th b,.smart-sheet-table tbody th small{max-width:calc(var(--price-col-product,160px) - 12px)}.pricing-text-cell{width:82px;min-width:82px;max-width:82px;padding:0 6px!important;overflow:hidden;text-overflow:ellipsis}.smart-sheet-table thead th:nth-child(3),.smart-sheet-table tbody tr>*:nth-child(3){width:var(--price-col-code,82px);min-width:var(--price-col-code,82px);max-width:var(--price-col-code,82px)}.smart-sheet-table thead th:nth-child(4),.smart-sheet-table tbody tr>*:nth-child(4){width:var(--price-col-brand,82px);min-width:var(--price-col-brand,82px);max-width:var(--price-col-brand,82px)}.smart-sheet-table thead th:nth-child(5),.smart-sheet-table tbody tr>*:nth-child(5){width:var(--price-col-category,82px);min-width:var(--price-col-category,82px);max-width:var(--price-col-category,82px)}.pricing-number-cell{width:84px;min-width:84px;max-width:84px}.pricing-comparison-cell{width:88px;min-width:88px;max-width:88px}.pricing-additional-mrp{width:72px;min-width:72px;max-width:72px}.pricing-cell-input{height:32px;padding:0 6px;line-height:32px;font-size:10px}.pricing-comparison-cell output{min-height:32px;padding:0 6px;line-height:32px;font-size:10px}.smart-sheet-table tbody td.pricing-row-number{padding:0 3px}.smart-sheet-table tbody tr{height:33px}.smart-sheet-table thead th{height:66px;padding:4px 5px;line-height:1.18;white-space:normal;vertical-align:middle;font-size:9px}.smart-sheet-table thead small{margin-top:4px;line-height:1.15}.smart-sheet-table thead th[title]{cursor:help}.pricing-column-resize-handle{position:absolute;top:0;right:-4px;z-index:8;width:9px;height:100%;cursor:col-resize;touch-action:none}.pricing-column-resize-handle:after{content:"";position:absolute;top:9px;bottom:9px;left:4px;width:1px;background:#b8c8c2;transition:background .12s,width .12s}.pricing-column-resize-handle:hover:after,.pricing-column-resize-handle:focus-visible:after{width:2px;background:#168b73}.pricing-column-resize-handle:focus-visible{outline:2px solid #168b73;outline-offset:-2px}.smart-sheet-table.is-resizing-column{cursor:col-resize;user-select:none}.smart-sheet-table.is-resizing-column .pricing-column-resize-handle:after{background:#168b73}.smart-pricing-sheet.is-full-page .smart-sheet-controls{max-width:none}.smart-pricing-sheet.is-full-page .smart-sheet-toolbar{align-items:center}.smart-pricing-sheet.is-full-page .smart-sheet-wrap{scrollbar-gutter:stable}.smart-pricing-sheet.is-full-page #pricing-sheet-full-page{border-color:#168b73;color:#087765}
@media(max-width:1250px){.smart-sheet-toolbar{align-items:flex-start;flex-direction:column}.smart-sheet-controls{width:100%;justify-content:flex-start}.pricing-sheet-tools{width:100%}}
@media(max-width:700px){.smart-sheet-controls{display:grid;grid-template-columns:1fr 1fr}.smart-sheet-controls .sheet-search,.pricing-sheet-tools,.pricing-sheet-row-count{grid-column:1/-1}.pricing-sheet-tools{display:grid;grid-template-columns:repeat(2,1fr)}.pricing-sheet-tools .secondary-btn{width:100%}.smart-sheet-help{align-items:flex-start;flex-wrap:nowrap;overflow-x:auto;padding:8px 14px}.smart-sheet-help span{flex:none}.pricing-column-resize-handle{display:none}}

/* Keep the complete Price sheet command bar on one continuous row. */
.smart-sheet-toolbar{align-items:center;flex-direction:row;flex-wrap:nowrap;gap:12px;overflow-x:auto;overflow-y:hidden;padding:12px 14px;scrollbar-width:thin}
.smart-sheet-title{flex:0 0 260px;min-width:260px}.smart-sheet-title p{max-width:215px;line-height:1.3}
.smart-sheet-controls{display:flex;flex:1 0 auto;flex-wrap:nowrap;align-items:flex-end;justify-content:flex-start;gap:7px;min-width:max-content}
.smart-sheet-controls label{flex:0 0 auto}.smart-sheet-controls select,.smart-sheet-controls input{min-width:0}
#pricing-sheet-book{width:145px}#pricing-sheet-search{width:160px}#pricing-sheet-filter{width:125px}
.smart-sheet-controls .sheet-search{min-width:160px}.pricing-sheet-row-count{flex:0 0 auto;min-width:82px;padding:8px 9px}
.pricing-sheet-tools{display:flex;flex:0 0 auto;width:auto;gap:5px}.pricing-sheet-tools .secondary-btn{width:auto;min-height:34px;padding:7px 8px;font-size:10px}
@media(max-width:1250px){.smart-sheet-toolbar{align-items:center;flex-direction:row}.smart-sheet-controls{width:auto;justify-content:flex-start}.pricing-sheet-tools{width:auto}}
@media(max-width:700px){.smart-sheet-toolbar{align-items:center;flex-direction:row;padding:10px 12px}.smart-sheet-title{flex-basis:230px;min-width:230px}.smart-sheet-controls{display:flex;width:auto}.smart-sheet-controls .sheet-search,.pricing-sheet-tools,.pricing-sheet-row-count{grid-column:auto}.pricing-sheet-tools{display:flex;width:auto}.pricing-sheet-tools .secondary-btn{width:auto}.smart-sheet-help{align-items:flex-start;flex-wrap:nowrap;overflow-x:auto;padding:8px 14px}.smart-sheet-help span{flex:none}.pricing-column-resize-handle{display:none}}

/* Customer pricing setup process */
.pricing-flow-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:20px;padding:24px 26px;border:1px solid #cfe4dc;border-radius:20px;background:linear-gradient(120deg,#ecfaf5,#fff 68%);box-shadow:0 10px 28px rgba(23,89,70,.07)}
.pricing-flow-hero span,.pricing-flow-example>span,.pricing-flow-fallback>span{color:#087765;font-size:10px;font-weight:800;letter-spacing:.13em}
.pricing-flow-hero h2{margin:6px 0 5px;color:#17382e;font-size:25px;letter-spacing:-.035em}
.pricing-flow-hero p{max-width:720px;margin:0;color:#62746d;line-height:1.55}
.pricing-flow-timeline{display:grid;gap:14px;margin:0 0 20px;padding:0;list-style:none;counter-reset:pricing-flow}
.pricing-flow-step{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px;align-items:start;padding:20px 22px;border:1px solid #dce8e3;border-radius:16px;background:#fff;box-shadow:0 7px 20px rgba(35,61,52,.05)}
.pricing-flow-step:not(:last-child):after{content:"↓";position:absolute;bottom:-20px;left:37px;z-index:2;display:grid;width:24px;height:24px;place-items:center;border-radius:50%;background:#0b806c;color:#fff;font-size:13px;font-weight:800}
.pricing-flow-number{display:grid;width:44px;height:44px;place-items:center;border-radius:13px;background:#e8f6f1;color:#087765;font-weight:800}
.pricing-flow-step>div>small{color:#72827b;font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.pricing-flow-step h3{margin:4px 0 12px;color:#203b32;font-size:16px}
.pricing-flow-step p{margin:11px 0 0;color:#697b74;font-size:12px}
.pricing-flow-links{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.pricing-flow-route{display:flex;align-items:center;gap:12px;min-height:36px;padding:7px 10px;border:1px solid #cfe0d9;border-radius:9px;background:#f8fcfa;color:#24463a;font:700 11px Manrope,sans-serif;cursor:pointer}
.pricing-flow-route small{color:#087765;font-size:9px;font-weight:800}
.pricing-flow-route:hover,.pricing-flow-route:focus-visible{border-color:#168b73;background:#eef9f5;outline:none;box-shadow:0 0 0 3px rgba(22,139,115,.12)}
.pricing-flow-arrow{color:#7b8c85;font-weight:800}
.pricing-resolution-card{padding:22px!important}
.pricing-resolution-chain{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:center;margin-top:18px}
.pricing-resolution-chain>div{min-height:92px;padding:15px;border:1px solid #dce7e3;border-radius:13px;background:#f8fbfa}
.pricing-resolution-chain small,.pricing-resolution-chain b,.pricing-resolution-chain span{display:block}
.pricing-resolution-chain small{color:#74837d;font-size:9px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.pricing-resolution-chain b{margin:7px 0 4px;color:#203b32;font-size:12px}
.pricing-resolution-chain span{color:#667770;font-size:10px;line-height:1.4}
.pricing-resolution-chain>i{color:#0b806c;font-style:normal;font-weight:900}
.pricing-resolution-chain .pricing-resolution-result{border-color:#90cfba;background:#eaf8f2}
.pricing-flow-bottom{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pricing-flow-example h3,.pricing-flow-fallback h3{margin:6px 0 15px}
.pricing-flow-example dl{margin:0}
.pricing-flow-example dl>div{display:flex;justify-content:space-between;gap:18px;padding:8px 0;border-bottom:1px solid #e6ece9}
.pricing-flow-example dt{color:#6c7c76}.pricing-flow-example dd{margin:0;color:#263f36;font-weight:750;text-align:right}
.pricing-flow-example .pricing-example-result{margin-top:5px;padding:12px;border:0;border-radius:10px;background:#eaf8f2;color:#087765}
.pricing-flow-example .pricing-example-result dd{color:#087765;font-size:18px}
.pricing-flow-fallback ul{display:grid;gap:12px;margin:0;padding-left:19px;color:#5e7069;line-height:1.55}
@media(max-width:900px){.pricing-resolution-chain{grid-template-columns:1fr}.pricing-resolution-chain>i{transform:rotate(90deg);justify-self:center}.pricing-flow-bottom{grid-template-columns:1fr}}
@media(max-width:650px){.pricing-flow-hero{align-items:flex-start;flex-direction:column;padding:20px}.pricing-flow-hero .secondary-btn{width:100%}.pricing-flow-step{grid-template-columns:42px minmax(0,1fr);padding:16px}.pricing-flow-number{width:38px;height:38px}.pricing-flow-step:not(:last-child):after{left:24px}.pricing-flow-links{align-items:stretch;flex-direction:column}.pricing-flow-route{justify-content:space-between;width:100%;box-sizing:border-box}.pricing-flow-arrow{display:none}}

/* Price book field guide */
.price-help-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:18px;padding:26px 28px;border:1px solid #c8e3da;border-radius:20px;background:linear-gradient(118deg,#e9f8f3 0%,#f8fcfa 58%,#eef4ff 100%);box-shadow:0 10px 28px rgba(23,89,70,.07)}
.price-help-hero>div{max-width:790px}.price-help-hero span,.price-help-example>div>span{color:#087765;font-size:10px;font-weight:850;letter-spacing:.13em}.price-help-hero h2{margin:6px 0;color:#17382e;font-size:26px;letter-spacing:-.035em}.price-help-hero p{margin:0;color:#5f736b;line-height:1.58}.price-help-hero .primary-btn{flex:0 0 auto}
.price-help-notes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.price-help-notes article{display:flex;gap:12px;min-height:118px;padding:17px;border:1px solid #dce8e3;border-radius:15px;background:#fff;box-shadow:0 5px 16px rgba(35,61,52,.045)}.price-help-notes article>span{display:grid;flex:0 0 30px;width:30px;height:30px;place-items:center;border-radius:9px;background:#e7f5f0;color:#087765;font-size:12px;font-weight:850}.price-help-notes b{display:block;margin:4px 0 7px;color:#24453a;font-size:12px}.price-help-notes p{margin:0;color:#687a73;font-size:11px;line-height:1.52}
.price-help-example{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px;padding:21px 22px!important}.price-help-example h3{margin:5px 0}.price-help-example p{max-width:600px;margin:0;color:#62746d;line-height:1.5}.price-help-flow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.price-help-flow b{padding:8px 10px;border:1px solid #cfe2da;border-radius:9px;background:#f4faf7;color:#284c40;font-size:10px;white-space:nowrap}.price-help-flow i{color:#0b806c;font-style:normal;font-weight:850}
.price-help-table{margin-bottom:18px;overflow:hidden}.price-help-table .card-head{padding:18px 20px;border-bottom:1px solid #e2eae7}.price-help-table .card-head h3{margin:0 0 3px}.price-help-table-wrap{overflow-x:auto}.price-help-table table{min-width:820px}.price-help-table thead th{position:sticky;top:0;background:#eef6f3;color:#34574b;font-size:10px;letter-spacing:.045em;text-transform:uppercase}.price-help-table tbody th{min-width:170px;text-align:left}.price-help-table tbody th b,.price-help-table tbody th small{display:block}.price-help-table tbody th small{margin-top:4px;color:#7a8b85;font-size:9px;font-weight:750;text-transform:uppercase}.price-help-table tbody td{color:#52675f;font-size:11px;line-height:1.5}.price-help-table tbody td:nth-child(3){min-width:390px}.price-help-table tbody td:last-child{min-width:200px}.price-help-table code{display:inline-block;padding:4px 7px;border:1px solid #d9e5e0;border-radius:6px;background:#f7faf9;color:#315548;font:700 10px/1.4 Manrope,sans-serif}.price-help-number{width:44px;color:#087765!important;font-weight:850;text-align:center}
.price-help-selection{padding:21px 22px!important}.price-help-selection h3{margin:0 0 6px}.price-help-selection p{margin:0;color:#60736b;line-height:1.55}.price-help-selection>div{display:flex;align-items:center;gap:9px;margin-top:16px;overflow-x:auto}.price-help-selection span{flex:0 0 auto;padding:8px 11px;border-radius:9px;background:#eef7f4;color:#275044;font-size:10px;font-weight:800}.price-help-selection i{color:#0b806c;font-style:normal;font-weight:900}
@media(max-width:1000px){.price-help-notes{grid-template-columns:repeat(2,minmax(0,1fr))}.price-help-example{align-items:flex-start;flex-direction:column}.price-help-flow{justify-content:flex-start}}
@media(max-width:650px){.price-help-hero{align-items:flex-start;flex-direction:column;padding:20px}.price-help-hero .primary-btn{width:100%}.price-help-notes{grid-template-columns:1fr}.price-help-notes article{min-height:0}.price-help-selection>div{padding-bottom:5px}}

.pricing-sheet-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px;border-top:1px solid #dfe9e5;background:#f8fbfa;color:#61736c;font-size:11px}.pricing-sheet-pagination>div{display:flex;align-items:center;gap:10px}.pricing-sheet-pagination .secondary-btn{min-height:32px;padding:6px 11px}.pricing-sheet-pagination button:disabled{cursor:not-allowed;opacity:.45}
@media(max-width:650px){.pricing-sheet-pagination{align-items:stretch;flex-direction:column}.pricing-sheet-pagination>div{justify-content:space-between}}

.bank-architecture{overflow:auto;background:linear-gradient(135deg,#f7fbfb,#eef7f5);border-color:#cfe4df}
.bank-brand-head{align-items:center;gap:20px}
.bank-brand-lockup{display:flex;align-items:center;gap:14px;min-width:0}
.hdfc-brand-mark{width:42px;height:42px;flex:0 0 auto}
.bank-brand-name{display:block;margin-bottom:3px;color:#004c8f;font-size:11px;font-weight:800;letter-spacing:.12em}
.bank-brand-lockup h2{margin:0}
.bank-brand-lockup p{margin:5px 0 0}
.bank-architecture>div{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:340px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;line-height:1.35}
.bank-architecture b{font-family:inherit;font-size:16px;color:var(--text,#17302d)}
.bank-architecture span{white-space:pre;color:#456a64}
.bank-architecture em{margin-left:8px;padding:2px 8px;border-radius:999px;background:#d9f3e9;color:#176b50;font-family:inherit;font-size:11px;font-style:normal}
.bank-architecture small{margin-left:8px;color:#7b8d89}
.bank-metrics .metric{width:100%;text-align:left;border:1px solid var(--border,#dce5e3);background:var(--card,#fff);cursor:pointer}
.bank-metrics .metric:focus-visible{outline:3px solid #46a995;outline-offset:2px}
.bank-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:18px;margin:18px 0}
.bank-grid .card{margin:0}
.bank-grid hr{border:0;border-top:1px solid var(--border,#dce5e3);margin:24px 0}
.bank-grid form>.primary-btn,.bank-grid form>.secondary-btn{margin-top:14px}
.bank-preview{margin-top:16px;padding:14px;border:1px solid #cfe4df;border-radius:12px;background:#f7fbfb}
.bank-preview .status{float:right}
.bank-preview p{margin:8px 0 12px;color:#647773}
#bank-exceptions input{min-width:180px;margin:0 8px 6px 0}
.bank-phase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.bank-inline-form{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(220px,1.2fr) minmax(100px,.45fr) auto;gap:12px;align-items:end}
.bank-inline-form .form-error{grid-column:1/-1}
.bank-inline-form>.primary-btn{margin:0 0 1px}
#bank-capabilities{margin:18px 0}
@media(max-width:900px){.bank-grid{grid-template-columns:1fr}.bank-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.bank-inline-form{grid-template-columns:1fr 1fr}.bank-inline-form>.primary-btn{margin-top:14px}}
@media(max-width:560px){.bank-metrics{grid-template-columns:1fr}.bank-architecture{padding:16px}.bank-grid{gap:12px}.bank-inline-form{grid-template-columns:1fr}}
@media(max-width:560px){.bank-brand-head{align-items:flex-start;flex-direction:column}.bank-brand-lockup{align-items:flex-start}.hdfc-brand-mark{width:36px;height:36px}}

.ui-language-control {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 36px;
  padding: 0 9px;
  border: 1px solid #d9e2e1;
  border-radius: 9px;
  background: #fff;
  color: #315b5a;
}

.ui-language-control span {
  font-size: 14px;
  font-weight: 800;
}

.ui-language-control select {
  max-width: 148px;
  border: 0;
  outline: 0;
  background: transparent;
  color: #183b3c;
  font: 700 11px "DM Sans", "Noto Sans Devanagari", "Noto Sans Tamil", "Noto Sans Telugu", "Noto Sans Kannada", "Noto Sans Malayalam", sans-serif;
  cursor: pointer;
}

.sidebar-bottom .ui-language-control {
  width: 100%;
  min-height: 38px;
  margin-top: 10px;
  padding: 0 10px;
  border-color: var(--sidebar-panel-border);
  border-radius: 7px;
  background: var(--sidebar-panel);
  color: var(--sidebar-strong);
}

.sidebar-bottom .ui-language-control span {
  width: 20px;
  text-align: center;
  color: var(--sidebar-accent);
}

.sidebar-bottom .ui-language-control select {
  flex: 1;
  min-width: 0;
  max-width: none;
  color: inherit;
}

.sidebar-bottom .ui-language-control option {
  background: var(--nav);
  color: var(--sidebar-strong);
}

.account-space-control {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 36px;
  padding: 0 9px;
  border: 1px solid #d9e2e1;
  border-radius: 9px;
  background: #fff;
  color: #315b5a;
  transition: background-color .18s ease, border-color .18s ease, color .18s ease;
}

.account-space-control span {
  font-size: 14px;
  font-weight: 800;
}

.account-space-control select {
  max-width: 150px;
  border: 0;
  outline: 0;
  background: transparent;
  color: inherit;
  font: 700 11px "DM Sans", sans-serif;
  cursor: pointer;
}

.account-space-control.test-account {
  border-color: #efbd69;
  background: #fff4df;
  color: #925600;
}

.language-policy-card {
  margin-top: 20px;
  border-top: 3px solid #36a895;
}

.language-choice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.language-policy-note {
  margin: 14px 0 0;
  padding: 12px 14px;
  border-radius: 10px;
  background: #edf9f5;
  color: #34615b;
  font-size: 12px;
  line-height: 1.55;
}

html[lang="hi"] body,
html[lang="ta"] body,
html[lang="te"] body,
html[lang="kn"] body,
html[lang="ml"] body {
  font-family: "DM Sans", "Noto Sans Devanagari", "Noto Sans Tamil", "Noto Sans Telugu", "Noto Sans Kannada", "Noto Sans Malayalam", "Segoe UI", sans-serif;
}

@media (max-width: 780px) {
  .ui-language-control span { display: none; }
  .ui-language-control select { max-width: 92px; }
  .account-space-control span { display: none; }
  .account-space-control select { max-width: 102px; }
  .language-choice-grid { grid-template-columns: 1fr; }
}

[hidden] {
  display: none !important;
}

/* Supplier Master register pilot: dense on desktop, cards on small screens. */
.supplier-master-page { display: grid; gap: 14px; }
.supplier-master-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
}
.supplier-master-heading h2 { margin: 3px 0 4px; font: 800 24px Manrope, sans-serif; }
.supplier-master-heading p { margin: 0; color: var(--muted); }
.supplier-master-summary { display: flex; gap: 8px; flex-wrap: wrap; }
.supplier-master-summary span {
  padding: 7px 10px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--surface, #fff);
  color: var(--muted);
  font-size: 11px;
}
.supplier-master-summary b { color: var(--ink); }
.supplier-command-bar {
  display: flex;
  align-items: center;
  gap: 7px;
  min-height: 49px;
  padding: 6px 8px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: var(--surface, #fff);
}
.supplier-command-bar button { box-shadow: none; }
.supplier-command-bar button:disabled { cursor: not-allowed; opacity: .45; }
.supplier-master-register { min-width: 0; }
.supplier-register-toolbar {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) minmax(260px, 420px) 180px;
  align-items: end;
  gap: 14px;
  padding: 13px 15px;
  border-bottom: 1px solid var(--line);
}
.supplier-register-toolbar h3 { margin: 0 0 3px; font: 700 15px Manrope, sans-serif; }
.supplier-register-toolbar small { color: var(--muted); }
.supplier-register-search,
.supplier-register-sort { display: grid; gap: 4px; color: var(--muted); font-size: 10px; font-weight: 700; }
.supplier-register-search .search { width: 100%; min-height: 36px; }
.supplier-register-sort select {
  min-height: 36px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  color: var(--ink);
  padding: 0 9px;
  font: 12px 'DM Sans';
}
.supplier-register-scroll { overflow: auto; }
.supplier-master-register table { min-width: 1120px; }
.supplier-master-register thead { position: sticky; top: 0; z-index: 1; }
.supplier-master-register th,
.supplier-master-register td { padding: 10px 12px; white-space: nowrap; }
.supplier-master-register tbody tr { cursor: pointer; }
.supplier-master-register tbody tr:hover,
.supplier-master-register tbody tr.selected { background: #f0faf7; }
.supplier-master-register tbody tr:focus-visible { outline: 2px solid var(--teal); outline-offset: -2px; }
.supplier-select-cell { width: 38px; text-align: center; }
.supplier-select-cell input { width: 16px; height: 16px; accent-color: var(--teal); }
.supplier-name-cell { display: flex; align-items: center; gap: 8px; }
.supplier-name-cell > span:last-child { display: grid; gap: 2px; }
.supplier-name-cell small { color: var(--muted); font-size: 10px; }
.supplier-row-action .secondary-btn { height: 31px; }
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

@media (max-width: 980px) {
  .supplier-register-toolbar { grid-template-columns: 1fr 1fr; }
  .supplier-register-toolbar > div { grid-column: 1 / -1; }
}

@media (max-width: 760px) {
  .supplier-master-heading { align-items: flex-start; flex-direction: column; }
  .supplier-master-summary { width: 100%; }
  .supplier-master-summary span { flex: 1; text-align: center; }
  .supplier-command-bar {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .supplier-command-bar button { min-height: 44px; height: auto; }
  .supplier-register-toolbar { grid-template-columns: 1fr; align-items: stretch; }
  .supplier-register-toolbar > div { grid-column: auto; }
  .supplier-register-search .search,
  .supplier-register-sort select { min-height: 44px; }
  .supplier-master-register.table-card { overflow: visible; border: 0; background: transparent; box-shadow: none; }
  .supplier-register-scroll { overflow: visible; }
  .supplier-master-register table,
  .supplier-master-register tbody,
  .supplier-master-register tr,
  .supplier-master-register td { display: block; width: 100%; min-width: 0; }
  .supplier-master-register thead { display: none; }
  .supplier-master-register tbody { display: grid; gap: 12px; margin-top: 12px; }
  .supplier-master-register tr.supplier-register-row {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    padding: 15px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: var(--surface, #fff);
    box-shadow: 0 4px 15px rgba(25, 63, 62, .05);
  }
  .supplier-master-register td { padding: 0; border: 0; white-space: normal; overflow-wrap: anywhere; }
  .supplier-master-register td::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 4px;
    color: var(--muted);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .45px;
    text-transform: uppercase;
  }
  .supplier-master-register .supplier-select-cell { position: absolute; top: 14px; right: 14px; width: auto; }
  .supplier-master-register .supplier-select-cell::before,
  .supplier-master-register .supplier-name-cell::before,
  .supplier-master-register .supplier-row-action::before { display: none; }
  .supplier-master-register .supplier-name-cell { grid-column: 1 / -1; padding-right: 36px; }
  .supplier-master-register .supplier-row-action { grid-column: 1 / -1; }
  .supplier-master-register .supplier-row-action button { width: 100%; min-height: 44px; }
}

.sidebar .brand {
  width: 100%;
  border: 0;
  background: transparent;
  text-align: left;
  cursor: pointer;
}

.sidebar .brand:focus-visible {
  outline: 2px solid #65dcc9;
  outline-offset: 3px;
  border-radius: 8px;
}

/* Super Admin ERP architecture */
.platform-architecture-tabs{display:flex;gap:8px;margin-bottom:18px;padding:6px;background:#eef3f4;border:1px solid #d9e3e5;border-radius:12px;width:max-content;max-width:100%}
.platform-architecture-tabs button{border:0;background:transparent;color:#52666a;padding:9px 14px;border-radius:8px;font-weight:700;cursor:pointer}
.platform-architecture-tabs button.active{background:#fff;color:#0b766e;box-shadow:0 1px 5px rgba(20,52,55,.12)}
.platform-architecture-hero{margin-bottom:18px}
.platform-architecture-hero.future{background:linear-gradient(135deg,#f5f7ff,#eef7f5)}
.architecture-toolbar{display:flex;align-items:center;gap:16px;margin:18px 0;padding:14px 16px}
.architecture-toolbar .search{flex:1;min-width:220px}
.architecture-toolbar span{color:#607276;font-size:13px;white-space:nowrap}
.architecture-module-list{display:grid;gap:14px}
.architecture-module{--architecture-accent:#087f6f;--architecture-soft:#e6f5f1;padding:0;overflow:hidden;border-color:color-mix(in srgb,var(--architecture-accent) 32%,#dfe7e8);border-top:3px solid var(--architecture-accent);box-shadow:0 4px 14px color-mix(in srgb,var(--architecture-accent) 8%,transparent)}
.architecture-module:nth-child(2){--architecture-accent:#4f46a5;--architecture-soft:#eeedff}
.architecture-module:nth-child(3){--architecture-accent:#287a45;--architecture-soft:#ebf7ee}
.architecture-module:nth-child(4){--architecture-accent:#9a5b12;--architecture-soft:#fff3df}
.architecture-module:nth-child(5){--architecture-accent:#2563a6;--architecture-soft:#eaf2fc}
.architecture-module:nth-child(6){--architecture-accent:#9b3f76;--architecture-soft:#fbeaf4}
.architecture-module:nth-child(7){--architecture-accent:#a84716;--architecture-soft:#fff0e7}
.architecture-module:nth-child(8){--architecture-accent:#0f7185;--architecture-soft:#e6f6f9}
.architecture-module:nth-child(9){--architecture-accent:#a63b3b;--architecture-soft:#fcecec}
.architecture-module:nth-child(10){--architecture-accent:#6d45a3;--architecture-soft:#f3edfb}
.architecture-module:nth-child(11){--architecture-accent:#475c78;--architecture-soft:#edf2f7}
.architecture-module:nth-child(12){--architecture-accent:#9e3f5f;--architecture-soft:#fbeaf0}
.architecture-module:nth-child(13){--architecture-accent:#63751e;--architecture-soft:#f4f7e4}
.architecture-module:nth-child(14){--architecture-accent:#315a8a;--architecture-soft:#e9f1fa}
.architecture-module>summary{display:grid;grid-template-columns:42px 1fr auto 28px;align-items:center;gap:12px;padding:18px;cursor:pointer;list-style:none;background:linear-gradient(90deg,var(--architecture-soft),#fff 72%)}
.architecture-module>summary::-webkit-details-marker{display:none}
.architecture-module>summary::after{content:'+';display:grid;place-items:center;width:28px;height:28px;border:1px solid color-mix(in srgb,var(--architecture-accent) 35%,transparent);border-radius:50%;background:#fff;color:var(--architecture-accent);font-size:18px;font-weight:700;line-height:1}
.architecture-module[open]>summary::after{content:'\2212'}
.architecture-module>summary:hover{background:var(--architecture-soft)}
.architecture-module>summary b{display:block;font-size:16px;color:#19393d}
.architecture-module>summary small{display:block;margin-top:4px;color:#66787b}
.architecture-module>summary em{font-style:normal;color:var(--architecture-accent);font-size:12px;font-weight:700}
.architecture-module-order,.architecture-page-order{display:grid;place-items:center;background:var(--architecture-soft);color:var(--architecture-accent);border-radius:9px;font-weight:800}
.architecture-module-order{width:38px;height:38px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--architecture-accent) 22%,transparent)}
.architecture-submodule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 18px 18px;border-top:1px solid color-mix(in srgb,var(--architecture-accent) 18%,#e6eded);background:color-mix(in srgb,var(--architecture-soft) 38%,#fff)}
.architecture-submodule{padding-top:16px;min-width:0}
.architecture-submodule h4{margin:0 0 10px;color:var(--architecture-accent)}
.architecture-page-list{display:grid;gap:8px}
.architecture-page{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;text-align:left;width:100%;padding:11px;border:1px solid #dfe8e9;border-radius:10px;background:#fff;color:inherit;cursor:pointer}
.architecture-page:hover,.architecture-page:focus-visible{border-color:var(--architecture-accent);background:var(--architecture-soft);box-shadow:0 2px 8px rgba(20,70,70,.08);outline:none}
.architecture-page-order{width:25px;height:25px;font-size:11px}
.architecture-page b,.architecture-page small,.architecture-page code{display:block}
.architecture-page b{font-size:13px;color:#203f43}
.architecture-page code{margin-top:2px;color:var(--architecture-accent);font-size:10px}
.architecture-page small{margin-top:4px;color:#697b7e;line-height:1.35}
.architecture-page em{font-style:normal;color:var(--architecture-accent)}
.future-module-rule{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:18px 0}
.future-module-rule h3,.future-module-rule p{margin:0}
.future-module-rule p{margin-top:5px;color:#627579;max-width:900px}
.future-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.future-module-card header{display:flex;gap:12px}
.future-module-card header>span{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:10px;background:#eef1fb;color:#495a9a;font-weight:800}
.future-module-card h3,.future-module-card header p{margin:0}
.future-module-card header p{margin-top:5px;color:#66787b}
.future-dependency{display:grid;gap:4px;margin:15px 0;padding:11px;border-radius:9px;background:#f5f8f8;font-size:12px}
.future-dependency b{color:#385256}.future-dependency span{color:#67797c}
.future-module-card h4{margin:14px 0 8px}
.future-module-card ol{columns:2;margin:0;padding-left:22px;color:#52676a}
.future-module-card li{break-inside:avoid;margin:0 0 7px;padding-left:2px}
.future-module-card footer{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:14px;border-top:1px solid #e5ebec}
.future-module-card footer small{color:#77878a}
@media (max-width:900px){.architecture-submodule-grid,.future-module-grid{grid-template-columns:1fr}.future-module-rule{align-items:flex-start;flex-direction:column}}
@media (max-width:600px){.architecture-module>summary{grid-template-columns:38px 1fr 28px}.architecture-module>summary em{grid-column:2}.architecture-module>summary::after{grid-column:3;grid-row:1 / span 2}.architecture-toolbar{align-items:stretch;flex-direction:column}.future-module-card ol{columns:1}}

#app:focus-visible {
  outline: 2px solid var(--teal);
  outline-offset: -4px;
}

#main-nav {
  min-height: 0;
  padding: 0 2px 14px;
}

.lite-sidebar {
  display: grid;
  gap: 9px;
}

.lite-sidebar-heading {
  margin-bottom: 2px;
  font-size: 11px;
  line-height: 1.35;
}

.lite-sidebar-section {
  --lite-section-color: var(--sidebar-accent, #65dcc9);
  display: grid;
  gap: 1px;
  padding: 0 0 7px;
  border-bottom: 1px solid color-mix(in srgb, var(--sidebar-border, #355658) 72%, transparent);
}

.lite-sidebar-section[data-lite-section="home"] { --lite-section-color: #60a5fa; }
.lite-sidebar-section[data-lite-section="billing"] { --lite-section-color: #2dd4bf; }
.lite-sidebar-section[data-lite-section="purchasing"] { --lite-section-color: #f59e0b; }
.lite-sidebar-section[data-lite-section="stock"] { --lite-section-color: #a3e635; }
.lite-sidebar-section[data-lite-section="parties"] { --lite-section-color: #c084fc; }
.lite-sidebar-section[data-lite-section="money"] { --lite-section-color: #fb7185; }
.lite-sidebar-section[data-lite-section="reports"] { --lite-section-color: #38bdf8; }
.lite-sidebar-section[data-lite-section="setup"] { --lite-section-color: #a8b3c7; }

.lite-sidebar-section:last-child {
  border-bottom: 0;
}

.lite-sidebar-section h2 {
  margin: 0 6px 4px;
  border: 1px solid color-mix(in srgb, var(--lite-section-color) 38%, transparent);
  border-radius: 6px;
  background: color-mix(in srgb, var(--lite-section-color) 14%, transparent);
  box-shadow: 0 3px 0 color-mix(in srgb, var(--lite-section-color) 45%, #07191c), 0 6px 10px rgba(0, 0, 0, .32);
  overflow: hidden;
  transition: transform 160ms ease, box-shadow 160ms ease;
}

.lite-sidebar-toggle {
  display: grid;
  grid-template-columns: 16px auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 34px;
  padding: 5px 8px;
  border: 0;
  background: linear-gradient(180deg, color-mix(in srgb, var(--lite-section-color) 24%, rgba(255, 255, 255, .08)), color-mix(in srgb, var(--lite-section-color) 10%, rgba(0, 0, 0, .16)));
  color: var(--sidebar-strong, #fff);
  font: 700 12px/1.2 "DM Sans", sans-serif;
  letter-spacing: 1px;
  text-align: left;
  text-transform: uppercase;
  cursor: pointer;
}

.lite-sidebar-toggle:hover {
  background: color-mix(in srgb, var(--lite-section-color) 12%, transparent);
}

.lite-sidebar-section h2:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 0 color-mix(in srgb, var(--lite-section-color) 48%, #07191c), 0 8px 13px rgba(0, 0, 0, .36);
}

.lite-sidebar-section h2:active {
  transform: translateY(2px);
  box-shadow: 0 1px 0 color-mix(in srgb, var(--lite-section-color) 42%, #07191c), 0 3px 5px rgba(0, 0, 0, .28);
}

.lite-sidebar-toggle:focus-visible {
  outline: 2px solid var(--lite-section-color);
  outline-offset: -2px;
}

.lite-sidebar-toggle .lite-section-icon {
  display: grid;
  place-items: center;
  width: 16px;
  color: var(--lite-section-color);
  font-size: 12px;
}

.lite-toggle-plus {
  min-width: 12px;
  color: var(--lite-section-color);
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  text-align: center;
}

.lite-toggle-arrow {
  color: var(--sidebar-muted, #a8b3c7);
  font-size: 18px;
  line-height: 1;
  transition: transform 1s ease;
}

.lite-sidebar-section.open .lite-toggle-arrow {
  transform: rotate(90deg);
}

.lite-sidebar-pages {
  display: grid;
  gap: 1px;
  width: calc(100% - 24px);
  margin-left: 24px;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition: max-height 1s ease, opacity 700ms ease, transform 1s ease, visibility 0s linear 1s;
}

.lite-sidebar-section.open .lite-sidebar-pages {
  max-height: 480px;
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition-delay: 0s;
}

@media (prefers-reduced-motion: reduce) {
  .lite-toggle-arrow,
  .lite-sidebar-pages {
    transition-duration: 1ms;
  }
}

.lite-sidebar-section .nav-item:hover,
.lite-sidebar-section .nav-item.active {
  background: color-mix(in srgb, var(--lite-section-color) 16%, var(--nav-soft));
}

.lite-sidebar-section .nav-item.active::before {
  background: var(--lite-section-color);
  box-shadow: 0 0 12px color-mix(in srgb, var(--lite-section-color) 55%, transparent);
}

.lite-sidebar-section .nav-item {
  min-height: 31px;
  padding-block: 6px;
  padding-left: 24px;
  font-size: 11px;
}

.lite-sidebar-section .nav-item .lite-page-plus {
  width: 12px;
  flex: 0 0 12px;
  color: var(--lite-section-color);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
}

.lite-sidebar-section .nav-item.active::before {
  left: 10px;
}

.summary-card:focus-visible {
  outline: 2px solid var(--teal);
  outline-offset: 3px;
}

.crumb {
  display: flex;
  align-items: center;
  gap: 9px;
}

.crumb-leading {
  display: flex;
  align-items: center;
  gap: 5px;
}

.crumb-copy {
  display: grid;
  gap: 3px;
}

.page-title-row {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.page-next-action {
  max-width: min(38vw, 330px);
  min-height: 27px;
  padding: 4px 10px;
  overflow: hidden;
  border: 1px solid #a9d9d1;
  border-radius: 7px;
  background: #eff9f6;
  color: #007565;
  font: 700 11px/1.2 'DM Sans', sans-serif;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
}

.page-next-action:hover { border-color: #008d7b; background: #e2f5ee; }
.page-next-action:focus-visible { outline: 2px solid #008d7b; outline-offset: 2px; }

.section-head-flow {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.section-head-next-action {
  flex: 0 0 auto;
  max-width: min(32vw, 330px);
}

.page-local-title-row {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.page-local-next-action-bar {
  display: flex;
  justify-content: flex-start;
  margin-bottom: 14px;
}

@media (max-width: 760px) {
  .page-title-row { align-items: flex-start; flex-direction: column; gap: 4px; }
  .page-next-action { max-width: 68vw; min-height: 23px; padding-block: 3px; }
  .section-head-flow { align-items: flex-start; flex-direction: column; gap: 8px; }
  .section-head-next-action { max-width: 100%; }
  .page-local-title-row { align-items: flex-start; flex-direction: column; gap: 8px; }
}

.crumb-copy > span {
  color: #8c959b;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.2px;
}

.page-back-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 54px;
  height: 27px;
  padding: 0 9px;
  border: 1px solid #008d7b;
  border-radius: 7px;
  background: #008d7b;
  color: #fff;
  font: 800 11px/1 'DM Sans', sans-serif;
  cursor: pointer;
}

.page-back-btn:disabled { opacity: .48; cursor: default; }

.page-back-btn:hover {
  border-color: #007565;
  background: #007565;
  color: #fff;
}

.page-back-btn[hidden] {
  display: none;
}

.header-fullscreen-btn {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid #c8d5d2;
  border-radius: 7px;
  background: #fff;
  color: #17675c;
  cursor: pointer;
}

.header-fullscreen-btn:hover,
.header-fullscreen-btn:focus-visible {
  border-color: #008d7b;
  color: #007565;
}

.header-fullscreen-btn[hidden] { display: none; }
.header-fullscreen-btn svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.header-fullscreen-btn .fullscreen-exit-icon { display: none; }
.header-fullscreen-btn.active { border-color: #008d7b; background: #e9f7f4; color: #007565; }
.header-fullscreen-btn.active .fullscreen-enter-icon { display: none; }
.header-fullscreen-btn.active .fullscreen-exit-icon { display: block; }

.nav-group {
  margin: 1px 0;
}

.nav-module {
  min-height: 34px;
  padding-block: 6px;
}

.nav-module b {
  flex: 1;
  min-width: 0;
  font: 700 13px 'DM Sans', sans-serif;
}

.nav-module em {
  margin-left: auto;
  color: #789899;
  font-size: 13px;
  font-style: normal;
  transition: transform .18s ease;
}

.nav-group.open > .nav-module em {
  transform: rotate(180deg);
}

.nav-children {
  display: none;
  position: relative;
  margin: 1px 0 5px 19px;
  padding: 1px 0 3px 13px;
}

.nav-children::before {
  content: '';
  position: absolute;
  inset: 0 auto 0 0;
  width: 1px;
  background: #355658;
}

.nav-group.open > .nav-children {
  display: block;
}

.nav-children .nav-item {
  min-height: 31px;
  padding: 6px 9px;
  color: #91abad;
  font-size: 11px;
  font-weight: 600;
}

.nav-children .nav-item:hover,
.nav-children .nav-item.active {
  background: var(--nav-soft);
  color: var(--sidebar-strong);
}

#main-nav button:focus-visible {
  outline: 2px solid #65dcc9;
  outline-offset: -2px;
  box-shadow: inset 0 0 0 1px #10272b;
}

.nav-item.module-active {
  background: rgba(85, 217, 195, .08);
  color: #fff;
}

.nav-item.module-active > span {
  color: #65dcc9;
}

.nav-children .nav-item.active::before {
  left: -14px;
  top: 8px;
  bottom: 8px;
}

.nav-subgroup {
  margin: 3px 0 2px;
}

.nav-subgroup-toggle {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 30px;
  padding: 5px 8px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #87a4a5;
  font: 700 10px 'DM Sans', sans-serif;
  letter-spacing: .5px;
  text-align: left;
  text-transform: uppercase;
  cursor: pointer;
}

.nav-subgroup-toggle:hover {
  background: var(--nav-soft);
  color: var(--sidebar-strong);
}

.nav-subgroup-toggle span {
  width: 17px;
  color: #55bdae;
  font-size: 9px;
}

.nav-subgroup-toggle em {
  margin-left: auto;
  font-style: normal;
  transition: transform .18s ease;
}

.nav-subgroup.open > .nav-subgroup-toggle em {
  transform: rotate(180deg);
}

.nav-subchildren {
  display: none;
  margin-left: 8px;
  padding-left: 8px;
  border-left: 1px dashed #3a5b5c;
}

.nav-subgroup.open > .nav-subchildren {
  display: block;
}

.nav-subchildren .nav-item {
  min-height: 29px;
  padding-left: 8px;
  font-size: 10px;
}

.module-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 20px;
  align-items: center;
  margin-bottom: 22px;
  padding: 24px;
  border: 1px solid #dce9e7;
  border-radius: 12px;
  background: linear-gradient(125deg, #fff 0%, #f4fbf9 72%, #e3f5f0 100%);
}

.module-hero h2 {
  margin: 0 0 6px;
  font: 800 24px Manrope, sans-serif;
  letter-spacing: -.7px;
}

.module-hero p {
  max-width: 720px;
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}

.module-links {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 22px;
}

.module-link {
  min-height: 118px;
  padding: 17px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: var(--ink);
  text-align: left;
  cursor: pointer;
}

.module-link:hover {
  border-color: #82cabd;
  box-shadow: var(--shadow);
  transform: translateY(-1px);
}

.module-link > span {
  display: grid;
  place-items: center;
  width: 31px;
  height: 31px;
  margin-bottom: 11px;
  border-radius: 8px;
  background: var(--mint);
  color: var(--teal);
  font-size: 16px;
}

.module-link b,
.module-link small {
  display: block;
}

.module-link b {
  margin-bottom: 4px;
  font: 700 12px Manrope, sans-serif;
}

.module-link small {
  color: var(--muted);
  font-size: 10px;
  line-height: 1.45;
}

.module-browser-hero {
  margin-bottom: 16px;
}

/* Forms must remain above the responsive header, global Find, and theme menus. */
#modal-root .modal-backdrop { z-index: 90; }

/* Grid children with wide registers must shrink before their own scroll area engages. */
.split-layout > * { min-width: 0; }

.module-browser-eyebrow {
  display: block;
  margin-bottom: 6px;
  color: var(--teal);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1.1px;
}

.module-browser {
  display: grid;
  grid-template-columns: repeat(5, minmax(180px, 1fr));
  gap: 12px;
  align-items: start;
  overflow-x: auto;
  padding: 2px 2px 18px;
}

.module-browser-group {
  min-width: 180px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--surface, #fff);
  box-shadow: 0 5px 18px rgba(25, 63, 62, .05);
}

.module-browser-group > header {
  display: flex;
  gap: 9px;
  align-items: center;
  min-height: 66px;
  padding: 13px;
  border-bottom: 1px solid var(--line);
  background: linear-gradient(135deg, #f8fcfb, #eef8f5);
}

.module-browser-group > header > span {
  display: grid;
  flex: 0 0 30px;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 8px;
  background: var(--mint);
  color: var(--teal);
  font-size: 14px;
  font-weight: 800;
}

.module-browser-group h3,
.module-browser-group p {
  margin: 0;
}

.module-browser-group h3 {
  color: var(--ink);
  font: 800 12px Manrope, sans-serif;
}

.module-browser-group p {
  margin-top: 2px;
  color: var(--muted);
  font-size: 9px;
  line-height: 1.35;
}

.module-browser-items {
  display: grid;
  padding: 5px;
}

.platform-saas-browser {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 9px;
}

.platform-saas-hero {
  margin-bottom: 12px;
  padding: 17px 20px;
  border-color: #c9d9f2;
  background: linear-gradient(125deg, #fff 0%, #f3f7ff 70%, #e4edff 100%);
}

.platform-saas-hero h2 {
  font-size: 20px;
}

.platform-saas-hero p {
  line-height: 1.45;
}

.platform-admin-metrics.platform-saas-metrics {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px;
  margin-bottom: 12px;
}

.platform-saas-metrics .metric {
  min-height: 84px;
  padding: 12px 14px;
}

.platform-saas-metrics .metric strong {
  margin: 7px 0 2px;
  font-size: 21px;
}

.platform-saas-metrics .metric-icon {
  top: 11px;
  right: 11px;
  width: 27px;
  height: 27px;
  font-size: 13px;
}

.platform-saas-link {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  min-width: 0;
  min-height: 72px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--surface, #fff);
  color: var(--ink);
  text-align: left;
  cursor: pointer;
  box-shadow: 0 3px 12px rgba(25, 63, 62, .04);
}

.platform-saas-link:hover,
.platform-saas-link:focus-visible {
  border-color: #9bcfc5;
  background: #f5fbf9;
  outline: none;
}

.platform-saas-link-icon {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 7px;
  background: var(--mint);
  color: var(--teal);
  font-size: 13px;
  font-weight: 800;
}

.platform-saas-link-copy,
.platform-saas-link-copy b,
.platform-saas-link-copy small {
  display: block;
  min-width: 0;
}

.platform-saas-link-copy b {
  margin-bottom: 3px;
  font: 800 11px Manrope, sans-serif;
}

.platform-saas-link-copy small {
  display: -webkit-box;
  overflow: hidden;
  color: var(--muted);
  font-size: 9px;
  line-height: 1.3;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.platform-saas-link em {
  color: var(--teal);
  font-size: 13px;
  font-style: normal;
}

.platform-master-table,
.platform-catalogue-block {
  margin-bottom: 18px;
}
.global-catalogue-master{margin-bottom:18px}.global-catalogue-assurance{display:flex;gap:12px;align-items:flex-start;margin:0 18px 14px;padding:12px 14px;border-radius:12px;background:#edf8f5;color:#174f47}.global-catalogue-assurance b{white-space:nowrap}.global-catalogue-import-result{padding:0 18px 14px}.global-catalogue-preview{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:12px;border:1px solid #dbe7e3;border-radius:12px}.global-catalogue-preview ul{width:100%;margin:0;padding-left:22px;color:#9b2c2c}.platform-catalogue-pack-note{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:10px 14px;border-radius:12px;background:#f4f8f7}.platform-catalogue-pack-note small{color:#60716d}.platform-catalogue-update-modal{width:min(980px,calc(100vw - 32px))}.platform-catalogue-update-modal .modal-body{display:grid;gap:16px}.platform-catalogue-update-modal .table-wrap{max-height:360px}.catalogue-update-counts{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.catalogue-update-counts>*{padding:8px 12px;border-radius:999px;background:var(--surface-muted,#f3f6f4)}.catalogue-update-counts b{background:#e2f0d9;color:#183c35}.catalogue-update-confirm{display:flex!important;align-items:flex-start;gap:9px;margin:14px 0}.catalogue-update-confirm input{width:auto!important;margin-top:3px}.catalogue-update-complete{display:grid;gap:7px;padding:16px;border:1px solid #b9dbc5;border-radius:12px;background:#f1faf4}.catalogue-update-complete b{color:#17653a}

.platform-chip-grid,
.platform-parameter-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.platform-chip-grid article {
  display: grid;
  gap: 5px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #f9fbfc;
}

.platform-chip-grid small {
  color: var(--muted);
}

.platform-parameter-grid .module-link {
  min-height: 145px;
}

.platform-boundary-note {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 20px;
}

.platform-boundary-note h3,
.platform-boundary-note p {
  margin: 0;
}

.platform-boundary-note p {
  margin-top: 5px;
  color: var(--muted);
}

.module-browser-item {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: space-between;
  min-height: 51px;
  padding: 9px 8px;
  border: 0;
  border-bottom: 1px solid color-mix(in srgb, var(--line) 68%, transparent);
  border-radius: 7px;
  background: transparent;
  color: var(--ink);
  text-align: left;
  cursor: pointer;
}

.module-browser-item:last-child {
  border-bottom-color: transparent;
}

.module-browser-item:hover,
.module-browser-item:focus-visible {
  background: var(--mint);
  outline: none;
}

.module-browser-item span,
.module-browser-item b,
.module-browser-item small {
  display: block;
  min-width: 0;
}

.module-browser-item b {
  font-size: 10px;
  line-height: 1.3;
}

.module-browser-item small {
  overflow: hidden;
  margin-top: 3px;
  color: var(--muted);
  font-size: 9px;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.module-browser-item em {
  color: var(--teal);
  font-size: 13px;
  font-style: normal;
}

.party-group-code {
  display: inline-flex;
  min-width: 36px;
  justify-content: center;
  padding: 4px 8px;
  border: 1px solid #bfe2da;
  border-radius: 11px;
  background: #edf9f5;
  color: #087867;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .6px;
}

@media (max-width: 1050px) {
  .module-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .module-browser { grid-template-columns: repeat(3, minmax(190px, 1fr)); }
  .platform-saas-browser { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .platform-admin-metrics.platform-saas-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .platform-chip-grid,
  .platform-parameter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 761px) {
  .party-directory.table-card { overflow-x: auto; }
  .party-directory table { min-width: 1120px; }
  .party-directory th,
  .party-directory td { white-space: nowrap; }
}

@media (max-width: 760px) {
  .module-hero { grid-template-columns: 1fr; }
  .module-links { grid-template-columns: 1fr; }
  .module-browser { grid-template-columns: 1fr; overflow-x: visible; }
  .platform-saas-browser { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .platform-saas-link { grid-template-columns: 26px minmax(0, 1fr); min-height: 62px; padding: 8px; }
  .platform-saas-link em { display: none; }
  .platform-chip-grid,
  .platform-parameter-grid { grid-template-columns: 1fr; }
  .platform-boundary-note { align-items: flex-start; flex-direction: column; }

  .party-page .toolbar-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .party-page .toolbar-actions button {
    width: 100%;
    min-height: 44px;
    height: auto;
    padding: 9px 8px;
    white-space: normal;
  }

  .party-page .metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .party-page .metric {
    min-height: 105px;
    padding: 14px;
  }

  .party-page .metric strong { font-size: 19px; }
  .party-page .metric .metric-icon { display: none; }

  .party-directory.table-card {
    overflow: visible;
    border: 0;
    background: transparent;
    box-shadow: none;
  }

  .party-directory .table-toolbar {
    align-items: stretch;
    flex-direction: column;
    padding: 15px;
    border: 1px solid var(--line);
    border-radius: 11px;
    background: var(--surface, #fff);
  }

  .party-directory .search {
    width: 100%;
    min-height: 44px;
  }

  .party-directory table,
  .party-directory tbody,
  .party-directory tr,
  .party-directory td { display: block; width: 100%; }
  .party-directory thead { display: none; }
  .party-directory tbody { display: grid; gap: 12px; margin-top: 12px; }

  .party-directory tr {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px 12px;
    padding: 15px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: var(--surface, #fff);
    box-shadow: 0 4px 15px rgba(25, 63, 62, .05);
  }

  .party-directory td {
    min-width: 0;
    padding: 0;
    border: 0;
    overflow-wrap: anywhere;
  }

  .party-directory td::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 4px;
    color: var(--muted);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .45px;
    text-transform: uppercase;
  }

  .party-directory td:first-child {
    grid-column: 1 / -1;
    padding-right: 36px;
  }

  .party-directory td:first-child::before,
  .party-directory td:last-child::before { display: none; }
  .party-directory td:last-child { position: absolute; top: 9px; right: 8px; width: auto; }
  .party-directory .more { width: 38px; height: 38px; border-radius: 50%; background: var(--ground); }

  .contact-modal {
    align-self: end;
    display: flex;
    flex-direction: column;
    max-height: 96dvh;
    overflow: hidden;
    border-radius: 16px 16px 0 0;
  }

  .contact-backdrop { place-items: end center; padding: 4dvh 0 0; }
  .contact-modal form { display: flex; min-height: 0; flex: 1; flex-direction: column; }
  .contact-modal .modal-head,
  .contact-modal .modal-body { padding: 16px; }
  .contact-modal .modal-head { flex: 0 0 auto; align-items: flex-start; }
  .contact-modal .modal-head > div { min-width: 0; padding-right: 8px; }
  .contact-modal .modal-head p { line-height: 1.4; }
  .contact-modal .modal-body { min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
  .contact-modal .modal-foot { align-items: stretch; flex-direction: column; gap: 10px; padding: 13px 16px; }
  .contact-modal .modal-foot > div { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .contact-modal .modal-foot button { min-height: 44px; }

  .items-editor {
    overflow: visible;
    border: 0;
  }

  .items-editor table,
  .items-editor tbody,
  .items-editor .line-row,
  .items-editor .line-row > td { display: block; width: 100%; }
  .items-editor thead { display: none; }
  .items-editor tbody { display: grid; gap: 12px; }

  .items-editor .line-row {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 11px;
    background: var(--surface, #fff);
  }

  .items-editor .line-row > td {
    min-width: 0;
    padding: 0;
    border: 0;
  }

  .items-editor .line-row > td:first-child {
    grid-column: 1 / -1;
    padding-right: 32px;
  }

  .items-editor .line-row > td:nth-child(2)::before { content: 'Quantity'; }
  .items-editor .line-row > td:nth-child(3)::before { content: 'Rate'; }
  .items-editor .line-row > td:nth-child(4)::before { content: 'Discount %'; }
  .items-editor .line-row > td:nth-child(5)::before { content: 'GST %'; }
  .items-editor .line-row > td:nth-child(6)::before { content: 'Amount'; }
  .items-editor .line-row > td:nth-child(n+2):nth-child(-n+6)::before {
    display: block;
    margin-bottom: 5px;
    color: var(--muted);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .4px;
    text-transform: uppercase;
  }

  .items-editor .line-row :is(input, select) {
    min-height: 44px;
    font-size: 16px;
  }

  .items-editor .line-row > td:last-child {
    position: absolute;
    top: 8px;
    right: 8px;
    width: auto;
  }

  .items-editor .remove-line {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: var(--ground);
  }

  .items-editor .add-line {
    width: 100%;
    min-height: 44px;
    margin: 10px 0 0;
    border: 1px dashed color-mix(in srgb, var(--teal) 45%, var(--line));
    border-radius: 9px;
  }
}

@media (max-width: 430px) {
  .platform-admin-metrics.platform-saas-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .platform-saas-metrics .metric { min-height: 78px; padding: 10px; }
  .platform-saas-metrics .metric-icon { display: none; }
  .platform-saas-browser { grid-template-columns: 1fr; }
}

.customer-route-assignment { grid-column: 1 / -1; border: 1px solid var(--line); border-radius: 9px; background: var(--ground); overflow: hidden; }
.customer-route-assignment summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 14px; cursor: pointer; list-style: none; user-select: none; }
.customer-route-assignment summary::-webkit-details-marker { display: none; }
.customer-route-assignment summary span { display: grid; gap: 3px; }
.customer-route-assignment summary b { color: var(--ink); font-size: 12px; }
.customer-route-assignment summary small { color: var(--muted); font-size: 10px; }
.customer-route-assignment summary::after { content: '+'; display: grid; place-items: center; width: 26px; height: 26px; flex: 0 0 26px; border-radius: 50%; background: var(--surface, #fff); color: var(--teal); font-size: 20px; font-weight: 700; line-height: 1; }
.customer-route-assignment[open] summary::after { content: '−'; }
.customer-route-assignment[open] summary { border-bottom: 1px solid var(--line); }
.customer-route-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; padding: 14px; background: var(--surface, #fff); }

@media (max-width: 620px) {
  .customer-route-fields { grid-template-columns: 1fr; }
}

@media (max-height: 520px) and (orientation: landscape) {
  #modal-root .contact-backdrop { place-items: center; padding: 8px; }

  #modal-root .contact-modal {
    display: flex;
    flex-direction: column;
    max-height: calc(100dvh - 16px);
    overflow: hidden;
  }

  #modal-root .contact-modal form {
    display: flex;
    min-height: 0;
    flex: 1;
    flex-direction: column;
  }

  #modal-root .contact-modal .modal-head { flex: 0 0 auto; padding: 12px 16px; }
  #modal-root .contact-modal .modal-body {
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 12px 16px;
  }
  #modal-root .contact-modal .modal-foot { flex: 0 0 auto; padding: 10px 16px; }
}

.platform-admin-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.platform-summary-donut { display: block; margin-bottom: 18px; overflow: hidden; background: linear-gradient(135deg, color-mix(in srgb, var(--teal) 5%, var(--surface)) 0%, var(--surface) 54%, color-mix(in srgb, #f0b04a 7%, var(--surface)) 100%); }
.platform-summary-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.platform-summary-heading h3 { margin: 0; font-size: 18px; }
.platform-summary-heading p { margin: 5px 0 0; color: var(--muted); font-size: 12px; }
.platform-summary-body { display: grid; grid-template-columns: minmax(260px, .8fr) minmax(360px, 1.2fr); align-items: center; gap: 28px; min-height: 230px; }
.platform-donut-stage { min-width: 0; perspective: 700px; }
.platform-donut-stage svg { display: block; width: min(100%, 330px); margin: 0 auto; overflow: visible; filter: drop-shadow(0 15px 12px rgb(17 66 60 / .14)); transform: rotateX(9deg); transform-origin: center; }
.platform-donut-floor { fill: rgb(10 61 56 / .1); filter: blur(5px); }
.platform-donut-depth { pointer-events: none; opacity: .88; }
.platform-donut-segment { cursor: pointer; transition: filter .18s ease, stroke-width .18s ease; }
.platform-donut-segment:hover,
.platform-donut-segment:focus-visible { filter: brightness(1.1) drop-shadow(0 0 4px rgb(255 255 255 / .85)); stroke-width: 34; outline: none; }
.platform-donut-centre text { fill: var(--ink); text-anchor: middle; font-family: 'DM Sans', sans-serif; font-size: 30px; font-weight: 800; }
.platform-donut-centre text + text { fill: var(--muted); font-size: 9px; font-weight: 800; letter-spacing: .16em; }
.platform-donut-legend { display: grid; gap: 9px; }
.platform-donut-legend button { display: grid; grid-template-columns: 12px minmax(0, 1fr) auto auto; align-items: center; gap: 12px; min-height: 58px; border: 1px solid var(--line); border-radius: 12px; background: color-mix(in srgb, var(--platform-summary-color) 5%, var(--surface)); padding: 10px 13px; color: var(--ink); text-align: left; cursor: pointer; transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease; }
.platform-donut-legend button:hover { border-color: var(--platform-summary-color); box-shadow: 0 7px 18px rgb(30 64 60 / .09); transform: translateY(-1px); }
.platform-donut-legend button:focus-visible { outline: 3px solid color-mix(in srgb, var(--platform-summary-color) 38%, #fff); outline-offset: 2px; }
.platform-summary-swatch { width: 10px; height: 28px; border-radius: 999px; background: var(--platform-summary-color); box-shadow: inset -2px -3px 0 rgb(0 0 0 / .16); }
.platform-donut-legend span:nth-child(2),
.platform-donut-legend b,
.platform-donut-legend small { display: block; }
.platform-donut-legend b { font-size: 12px; }
.platform-donut-legend small { margin-top: 3px; color: var(--muted); font-size: 10px; }
.platform-donut-legend strong { font-size: 24px; line-height: 1; }
.platform-donut-legend em { color: var(--teal); font-size: 10px; font-style: normal; font-weight: 800; white-space: nowrap; }
.platform-admin-register { margin-bottom: 18px; }
.platform-admin-table { min-width: 1080px; }
.platform-admin-table th { white-space: nowrap; }
.platform-admin-table td { vertical-align: middle; }
.platform-admin-table :is(select, input[type="date"]) { width: 100%; min-width: 132px; height: 38px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); padding: 0 9px; color: var(--text); }
.platform-admin-table td > small,
.platform-tenant-name small { display: block; margin-top: 4px; color: var(--muted); font-size: 11px; }
.platform-admin-table td > .status { display: block; width: fit-content; margin-top: 6px; }
.platform-register-controls { display: flex; align-items: center; gap: 10px; margin-left: auto; }
.platform-register-controls > b { color: var(--muted); font-size: 11px; white-space: nowrap; }
.platform-register-filter-help { margin: 0; padding: 10px 14px; border-top: 1px solid var(--line); color: var(--muted); font-size: 11px; }
.platform-register-filter-row th { padding: 7px 8px 9px; background: #f8fafa; }
.platform-register-filter-row input { width: 100%; min-width: 92px; height: 32px; border: 1px solid var(--line); border-radius: 6px; background: #fff; padding: 0 8px; color: var(--ink); font: 600 10px 'DM Sans'; text-transform: none; outline: none; }
.platform-register-filter-row input:focus { border-color: var(--teal); box-shadow: 0 0 0 2px color-mix(in srgb, var(--teal) 17%, transparent); }
.platform-register-filter-row input.invalid { border-color: var(--red); background: #fff5f5; }
.platform-tenant-actions { display: grid; gap: 7px; min-width: 104px; }
.platform-tenant-actions .secondary-btn { width: 100%; white-space: nowrap; }
.platform-locked-help { border: 1px solid color-mix(in srgb, var(--teal) 22%, var(--line)); border-radius: 8px; background: color-mix(in srgb, var(--teal) 5%, var(--surface)); padding: 9px 11px; color: var(--muted); font-size: 11px; line-height: 1.45; }
.platform-tenant-edit-modal { width: min(720px, 100%); }
.platform-user-password-modal { width: min(520px, 100%); }
.platform-module-row td { padding: 0 14px 12px; background: color-mix(in srgb, var(--surface) 86%, var(--background)); }
.platform-module-row details { border-top: 1px dashed var(--line); }
.platform-module-row summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 4px; cursor: pointer; color: var(--muted); font-size: 12px; }
.platform-module-row summary::marker { color: var(--teal); }
.platform-module-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; padding: 2px 0 12px; }
.platform-module-action { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 56px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); padding: 9px 10px; color: var(--text); text-align: left; }
.platform-module-action:hover { border-color: var(--teal); background: color-mix(in srgb, var(--teal) 5%, var(--surface)); }
.platform-module-action span { min-width: 0; }
.platform-module-action b,
.platform-module-action small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.platform-module-action small { margin-top: 3px; color: var(--muted); font-size: 10px; }
.platform-module-action em { flex: 0 0 auto; }
.platform-create-panel { margin-top: 18px; padding: 0; overflow: hidden; border-color: #d8e3f7; box-shadow: 0 18px 48px -34px rgba(30, 64, 175, .55); }
.platform-create-panel > summary { display: flex; align-items: center; gap: 14px; padding: 18px 20px; cursor: pointer; list-style: none; background: linear-gradient(135deg, #f7faff, #eef4ff); }
.platform-create-panel > summary::-webkit-details-marker { display: none; }
.platform-create-panel > summary b,
.platform-create-panel > summary small { display: block; }
.platform-create-panel > summary small { margin-top: 4px; color: var(--muted); }
.platform-create-summary-icon { display: grid; flex: 0 0 42px; width: 42px; height: 42px; place-items: center; border-radius: 12px; background: #1f5eff; color: #fff; font-size: 24px; box-shadow: 0 8px 18px -10px rgba(31, 94, 255, .8); }
.platform-create-summary-copy { flex: 1 1 auto; }
.platform-create-summary-status { display: inline-flex; align-items: center; gap: 7px; color: #25603b; font-size: 11px; font-weight: 800; }
.platform-create-summary-status i { width: 8px; height: 8px; border-radius: 50%; background: #22c55e; box-shadow: 0 0 0 4px rgba(34, 197, 94, .12); }
.platform-create-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; border-top: 1px solid #dbe6f8; padding: 20px; background: #f5f8fe; }
.tenant-onboarding-flow { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(6, minmax(110px, 1fr)); gap: 0; overflow-x: auto; margin: 0; padding: 0 0 4px; list-style: none; }
.tenant-onboarding-flow li { position: relative; display: grid; grid-template-columns: 28px 1fr; grid-template-rows: auto auto; column-gap: 8px; min-width: 110px; padding: 4px 10px 4px 0; color: var(--muted); }
.tenant-onboarding-flow li:not(:last-child)::after { content: ''; position: absolute; top: 17px; right: 4px; left: 34px; height: 2px; background: #d5dfed; }
.tenant-onboarding-flow li > span { z-index: 1; display: grid; grid-row: 1 / 3; width: 28px; height: 28px; place-items: center; border: 2px solid #d5dfed; border-radius: 50%; background: #fff; color: #6b7a90; font-size: 10px; font-weight: 900; }
.tenant-onboarding-flow li.current > span { border-color: #1f5eff; background: #1f5eff; color: #fff; }
.tenant-onboarding-flow b { align-self: end; color: var(--text); font-size: 11px; }
.tenant-onboarding-flow small { overflow: hidden; font-size: 9px; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.platform-create-grid label { display: grid; gap: 6px; color: var(--muted); font-size: 11px; font-weight: 700; }
.platform-label-row { display: flex; align-items: center; gap: 6px; width: fit-content; color: inherit; }
.platform-create-grid label.platform-label-optional > .platform-label-row { color: #a16207; }
.platform-create-grid label.platform-label-optional .platform-label-help { border-color: #e0ad45; background: #fff7d6; color: #8a5700; }
.platform-label-help { position: relative; display: inline-grid; place-items: center; width: 17px; height: 17px; border: 1px solid color-mix(in srgb, var(--teal) 45%, var(--line)); border-radius: 50%; background: color-mix(in srgb, var(--teal) 7%, var(--surface)); color: var(--teal-dark); font: 800 10px/1 'DM Sans'; cursor: help; outline: none; }
.platform-label-help::after { content: attr(data-tooltip); position: absolute; z-index: 20; top: calc(100% + 7px); left: 50%; width: max-content; max-width: min(260px, 75vw); padding: 8px 10px; border: 1px solid #d9e5e3; border-radius: 8px; background: #17393a; color: #fff; box-shadow: 0 8px 22px rgba(15, 39, 40, .2); font: 500 11px/1.4 'DM Sans'; white-space: normal; opacity: 0; pointer-events: none; transform: translate(-50%, -3px); transition: opacity .14s ease, transform .14s ease; }
.platform-label-help:hover::after,
.platform-label-help:focus-visible::after { opacity: 1; transform: translate(-50%, 0); }
.platform-label-help:focus-visible { box-shadow: 0 0 0 3px color-mix(in srgb, var(--teal) 22%, transparent); }
.platform-create-grid :is(input, select) { width: 100%; height: 44px; border: 1px solid #d7dfed; border-radius: 9px; background: var(--surface); padding: 0 12px; color: var(--text); transition: border-color .15s ease, box-shadow .15s ease; }
.platform-create-grid :is(input, select):focus { border-color: #4f7cff; outline: 0; box-shadow: 0 0 0 3px rgba(31, 94, 255, .12); }
.platform-create-action { display: flex; align-items: end; }
.platform-create-entitlements { grid-column: 1 / -1; }
.platform-create-section { min-width: 0; padding: 18px; border: 1px solid #dfe7f4; border-radius: 13px; background: var(--surface); box-shadow: 0 10px 26px -25px rgba(23, 52, 105, .65); }
.platform-create-section-heading { display: flex; align-items: flex-start; gap: 11px; margin-bottom: 16px; }
.platform-create-section-heading > span { display: grid; flex: 0 0 28px; width: 28px; height: 28px; place-items: center; border-radius: 9px; background: #e9f0ff; color: #1f5eff; font-size: 12px; font-weight: 900; }
.platform-create-section-heading > div { flex: 1 1 auto; }
.platform-create-section-heading h3 { margin: 0; color: var(--text); font-size: 15px; }
.platform-create-section-heading p { margin: 4px 0 0; color: var(--muted); font-size: 11px; line-height: 1.45; }
.platform-create-section-heading > strong { align-self: center; padding: 6px 9px; border-radius: 999px; background: #eaf8ef; color: #247443; font-size: 10px; white-space: nowrap; }
.platform-create-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.platform-create-fields-three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.platform-create-identity { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1fr) 220px; gap: 0 20px; }
.platform-create-identity .platform-create-section-heading { grid-column: 1 / -1; }
.platform-workspace-preview { display: flex; flex-direction: column; justify-content: center; min-width: 0; padding: 16px; border: 1px dashed #a9bfe9; border-radius: 11px; background: linear-gradient(145deg, #f8fbff, #eef4ff); }
.platform-workspace-preview span { color: #60708d; font-size: 10px; font-weight: 800; letter-spacing: .5px; text-transform: uppercase; }
.platform-workspace-preview b { overflow: hidden; margin: 8px 0 4px; color: #1f5eff; font-size: 17px; text-overflow: ellipsis; white-space: nowrap; }
.platform-workspace-preview small { color: var(--muted); font-size: 10px; line-height: 1.45; }
.platform-create-configuration,
.platform-create-admin { grid-column: 1 / -1; }
.platform-create-desktop { grid-column: 1 / -1; }
.platform-desktop-onboarding-choice { display: flex !important; align-items: flex-start; gap: 12px !important; padding: 14px; border: 1px solid #bfd2f5; border-radius: 11px; background: #f5f9ff; color: var(--text) !important; cursor: pointer; }
.platform-desktop-onboarding-choice input { flex: 0 0 auto; width: 18px !important; height: 18px !important; margin-top: 2px; accent-color: #1f5eff; }
.platform-desktop-onboarding-choice b,
.platform-desktop-onboarding-choice small { display: block; }
.platform-desktop-onboarding-choice small { margin-top: 5px; color: var(--muted); font-weight: 500; line-height: 1.5; }
.platform-password-guidance { margin: 12px 0 0; padding: 9px 11px; border-radius: 8px; background: #fff8e6; color: #8a5b0a; font-size: 10px; line-height: 1.45; }
.platform-create-modules { margin: 0; }
.platform-create-footer { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 18px 20px; border: 1px solid #c9dafb; border-radius: 13px; background: linear-gradient(135deg, #edf4ff, #f8fbff); }
.platform-create-footer b,
.platform-create-footer small { display: block; }
.platform-create-footer small { max-width: 720px; margin-top: 4px; color: var(--muted); font-size: 11px; line-height: 1.45; }
.platform-create-footer .primary-btn { min-height: 44px; padding-inline: 20px; white-space: nowrap; }
.platform-create-entitlements > h3,
.platform-entitlement-heading h3 { margin: 0 0 10px; }
.platform-entitlement-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.platform-entitlement-heading span { color: var(--muted); font-size: 12px; }
.platform-edition-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.platform-edition-choice { position: relative; display: block !important; }
.platform-edition-choice input { position: absolute; width: 1px !important; height: 1px !important; opacity: 0; }
.platform-edition-choice span { display: block; min-height: 92px; padding: 14px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); cursor: pointer; }
.platform-edition-choice input:checked + span { border-color: var(--teal); box-shadow: inset 0 0 0 1px var(--teal); background: var(--teal-soft); }
.platform-edition-choice b,
.platform-edition-choice small,
.platform-create-toggle b,
.platform-create-toggle small { display: block; }
.platform-edition-choice small,
.platform-create-toggle small { margin-top: 4px; color: var(--muted); font-size: 11px; font-weight: 500; }
.platform-create-toggle-grid,
.platform-feature-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.platform-create-toggle { display: flex !important; align-items: flex-start; gap: 8px; padding: 9px; border: 1px solid var(--line); border-radius: 9px; background: var(--surface); color: var(--text) !important; transition: background-color .16s ease, border-color .16s ease, box-shadow .16s ease; }
.platform-create-toggle input { width: 16px !important; height: 16px !important; margin-top: 2px; accent-color: #15803d; }
.platform-create-features .platform-create-toggle { min-height: 58px; padding: 11px 12px; align-items: center; cursor: pointer; box-shadow: 0 1px 2px rgba(15, 30, 35, .04); }
.platform-create-features .platform-create-toggle:hover { border-color: #86c99a; background: #f0fdf4; }
.platform-create-features .platform-create-toggle:focus-within { outline: 3px solid rgba(34, 197, 94, .2); outline-offset: 1px; }
.platform-create-toggle:has(input[data-create-feature]:is(:checked, [data-predefined="true"])) { border-color: #16a34a; background: #dcfce7; box-shadow: inset 0 0 0 1px #16a34a; }
.platform-create-toggle:has(input[data-create-feature]:is(:checked, [data-predefined="true"])):hover { background: #bbf7d0; }
.platform-create-toggle:has(input[data-create-feature]:is(:checked, [data-predefined="true"])) b { color: #14532d; }
.platform-create-toggle:has(input[data-create-feature]:is(:checked, [data-predefined="true"])) small { color: #166534; }
.platform-create-features,
.platform-functionality-panel { margin-top: 12px; }
.platform-create-features > summary,
.platform-functionality-panel > summary { padding: 10px 0; color: var(--teal); cursor: pointer; font-weight: 700; }
.platform-feature-grid { padding: 4px 0 12px; }
.platform-feature-action { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 58px; padding: 9px 10px; border: 1px solid var(--line); border-radius: 9px; background: var(--surface); color: var(--text); text-align: left; cursor: pointer; }
.platform-feature-action.enabled { border-color: color-mix(in srgb, var(--teal) 45%, var(--line)); background: var(--teal-soft); }
.platform-feature-action:disabled { cursor: not-allowed; opacity: .55; }
.platform-feature-action span,
.platform-feature-action b,
.platform-feature-action small { display: block; }
.platform-feature-action small { margin-top: 3px; color: var(--muted); font-size: 10px; }
.platform-feature-action em { flex: 0 0 auto; }

@media (max-width: 1180px) {
  .platform-module-grid,
  .platform-feature-grid,
  .platform-create-toggle-grid,
  .platform-edition-grid,
  .platform-create-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .platform-create-fields-three { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 680px) {
  .platform-admin-metrics,
  .platform-module-grid,
  .platform-feature-grid,
  .platform-create-toggle-grid,
  .platform-edition-grid,
  .platform-create-grid { grid-template-columns: 1fr; }
  .platform-summary-donut { display: block; }
  .platform-summary-heading { align-items: stretch; flex-direction: column; }
  .platform-summary-heading .status { width: fit-content; }
  .platform-summary-body { grid-template-columns: 1fr; gap: 4px; }
  .platform-donut-stage svg { width: min(100%, 280px); }
  .platform-donut-legend button { grid-template-columns: 10px minmax(0, 1fr) auto; }
  .platform-donut-legend em { grid-column: 2 / -1; }
  .platform-create-panel > summary { align-items: flex-start; flex-wrap: wrap; }
  .platform-admin-register .table-toolbar { align-items: stretch; flex-direction: column; }
  .platform-register-controls { align-items: stretch; flex-direction: column; margin-left: 0; }
  .platform-register-controls .search { width: 100%; }
  .platform-create-summary-copy { min-width: calc(100% - 60px); }
  .platform-create-summary-status { margin-left: 56px; }
  .platform-create-panel > summary .primary-btn { margin-left: auto; }
  .platform-create-fields,
  .platform-create-fields-three,
  .platform-create-identity { grid-template-columns: 1fr; }
  .platform-workspace-preview { margin-top: 14px; }
  .platform-create-section-heading { flex-wrap: wrap; }
  .platform-create-section-heading > strong { margin-left: 39px; }
  .platform-create-footer { align-items: stretch; flex-direction: column; }
  .platform-create-footer .primary-btn { width: 100%; }
}

/* Sidebar appearance themes live in this always-served navigation stylesheet. */
:root {
  --sidebar-strong: #ffffff;
  --sidebar-text: #bdd0d0;
  --sidebar-muted: #9bb3b4;
  --sidebar-border: #2e4c4d;
  --sidebar-panel: rgba(255, 255, 255, 0.08);
  --sidebar-panel-border: rgba(255, 255, 255, 0.1);
  --sidebar-accent: #55d9c3;
  --sidebar-accent-deep: #1c6260;
}

html[data-sidebar-theme="midnight"] {
  --nav: #121a2b;
  --nav-soft: #25314a;
  --sidebar-strong: #ffffff;
  --sidebar-text: #c6d0e3;
  --sidebar-muted: #93a1bd;
  --sidebar-border: #34415c;
  --sidebar-panel: rgba(135, 157, 198, 0.11);
  --sidebar-panel-border: rgba(173, 192, 228, 0.14);
  --sidebar-accent: #78a8ff;
  --sidebar-accent-deep: #355fba;
}

html[data-sidebar-theme="forest"] {
  --nav: #163127;
  --nav-soft: #284c3d;
  --sidebar-strong: #fffef8;
  --sidebar-text: #c7dbd0;
  --sidebar-muted: #9bb9a8;
  --sidebar-border: #375848;
  --sidebar-panel: rgba(225, 242, 231, 0.09);
  --sidebar-panel-border: rgba(225, 242, 231, 0.13);
  --sidebar-accent: #79d79e;
  --sidebar-accent-deep: #2c8150;
}

html[data-sidebar-theme="light"] {
  --nav: #f7f1e7;
  --nav-soft: #e9dfcf;
  --sidebar-strong: #273534;
  --sidebar-text: #4f6461;
  --sidebar-muted: #748480;
  --sidebar-border: #d7cbb9;
  --sidebar-panel: rgba(255, 255, 255, 0.54);
  --sidebar-panel-border: rgba(76, 98, 93, 0.17);
  --sidebar-accent: #168f7d;
  --sidebar-accent-deep: #8bc8bb;
}

/* Keep the product wordmark distinct from the pale sand navigation surface. */
html[data-sidebar-theme="light"] .sidebar .brand {
  color: #075e54;
}

/* Matches the light lavender visual system used by the Kola HRMS workspace. */
html[data-sidebar-theme="hrms"] {
  --ink: #1c0a3d;
  --muted: #685b7c;
  --line: #d9d2e5;
  --paper: #ffffff;
  --ground: #f6f4fa;
  --nav: #eeeaf4;
  --nav-soft: #ddd6eb;
  --teal: #5b18ee;
  --teal-dark: #4610c7;
  --mint: #eee8ff;
  --blue: #0567f4;
  --shadow: 0 4px 12px rgba(31, 13, 65, .08);
  --sidebar-strong: #1c0a3d;
  --sidebar-text: #49395f;
  --sidebar-muted: #74678a;
  --sidebar-border: #d9d2e5;
  --sidebar-panel: rgba(255, 255, 255, .8);
  --sidebar-panel-border: #d9d2e5;
  --sidebar-accent: #5b18ee;
  --sidebar-accent-deep: #0567f4;
}

/* Recreates the royal-blue and pale-blue design used on localhost:3000/login. */
html[data-sidebar-theme="hrms-blue"] {
  --ink: #020617;
  --muted: #64748b;
  --line: #dbeafe;
  --paper: #ffffff;
  --ground: #eef4ff;
  --nav: #07285f;
  --nav-soft: #0d46a4;
  --teal: #1f5eff;
  --teal-dark: #174fe0;
  --mint: #dbeafe;
  --blue: #1f5eff;
  --shadow: 0 12px 30px -18px rgba(30, 64, 175, .42);
  --sidebar-strong: #ffffff;
  --sidebar-text: #dbeafe;
  --sidebar-muted: #bfdbfe;
  --sidebar-border: #2563eb;
  --sidebar-panel: rgba(255, 255, 255, .11);
  --sidebar-panel-border: rgba(255, 255, 255, .2);
  --sidebar-accent: #93c5fd;
  --sidebar-accent-deep: #22d3ee;
}

/* Royal Blue Buttons reuses the HRMS blue palette with tactile sidebar navigation. */
html[data-sidebar-theme="hrms-blue-buttons"] {
  --ink: #020617;
  --muted: #64748b;
  --line: #dbeafe;
  --paper: #ffffff;
  --ground: #eef4ff;
  --nav: #07285f;
  --nav-soft: #0d46a4;
  --teal: #1f5eff;
  --teal-dark: #174fe0;
  --mint: #dbeafe;
  --blue: #1f5eff;
  --shadow: 0 12px 30px -18px rgba(30, 64, 175, .42);
  --sidebar-strong: #ffffff;
  --sidebar-text: #ffffff;
  --sidebar-muted: #ffffff;
  --sidebar-border: #2563eb;
  --sidebar-panel: rgba(255, 255, 255, .11);
  --sidebar-panel-border: rgba(255, 255, 255, .2);
  --sidebar-accent: #93c5fd;
  --sidebar-accent-deep: #22d3ee;
}

/* Enterprise Calm reduces glare and visual noise for long, data-heavy work sessions. */
html[data-sidebar-theme="enterprise-calm"] {
  color-scheme: light;
  --ink: #26332f;
  --muted: #66736e;
  --line: #d8dfdc;
  --paper: #fbfcfa;
  --ground: #f2f5f2;
  --nav: #263d38;
  --nav-soft: #345049;
  --teal: #287b69;
  --teal-dark: #206555;
  --mint: #e2efe9;
  --blue: #416f8f;
  --red: #b85050;
  --shadow: 0 3px 12px rgba(35, 55, 48, .07);
  --sidebar-strong: #f7fbf8;
  --sidebar-text: #dce7e2;
  --sidebar-muted: #a9bdb5;
  --sidebar-border: #345049;
  --sidebar-panel: rgba(255, 255, 255, .07);
  --sidebar-panel-border: rgba(255, 255, 255, .12);
  --sidebar-accent: #91c9b7;
  --sidebar-accent-deep: #5b9f8b;
}

/* ERP LN-inspired workspace: high-contrast black navigation with compact controls. */
html[data-sidebar-theme="erp-ln"] {
  --ink: #25282b;
  --muted: #62676c;
  --line: #cfd3d6;
  --paper: #ffffff;
  --ground: #eceeef;
  --nav: #1c1c1e;
  --nav-soft: #2c2c2e;
  --teal: #c83232;
  --teal-dark: #a72424;
  --mint: #f7e7e7;
  --blue: #477694;
  --red: #c83232;
  --shadow: 0 1px 3px rgba(22, 27, 31, .12);
  --sidebar-strong: #ffffff;
  --sidebar-text: #ffffff;
  --sidebar-muted: #e0e0e0;
  --sidebar-border: #101011;
  --sidebar-panel: rgba(255, 255, 255, .08);
  --sidebar-panel-border: rgba(255, 255, 255, .18);
  --sidebar-accent: #ef5a5a;
  --sidebar-accent-deep: #c83232;
}

/* Infor LN Enterprise: dark technical navigation, red command bar, dense white workspace. */
html[data-sidebar-theme="infor-ln"] {
  --ink: #2c2c2e;
  --muted: #6e6e73;
  --line: #d8d8dc;
  --paper: #ffffff;
  --ground: #ffffff;
  --nav: #1c1c1e;
  --nav-soft: #2c2c2e;
  --teal: #e31b23;
  --teal-dark: #b71c1c;
  --mint: #fbe9ea;
  --orange: #e65100;
  --blue: #1976d2;
  --red: #d32f2f;
  --shadow: 0 1px 3px rgba(0, 0, 0, .14);
  --sidebar-strong: #ffffff;
  --sidebar-text: #ffffff;
  --sidebar-muted: #d1d1d6;
  --sidebar-border: #0d0d0e;
  --sidebar-panel: #2c2c2e;
  --sidebar-panel-border: #3a3a3c;
  --sidebar-accent: #1976d2;
  --sidebar-accent-deep: #0d47a1;
}

/* Ledger Night adapts the supplied compact billing-sidebar reference to Kola ERP. */
html[data-sidebar-theme^="ledger-night"] {
  --ink: #17212b;
  --muted: #6d7783;
  --line: #e8ecef;
  --paper: #ffffff;
  --ground: #f6f8f8;
  --nav: #0f1021;
  --nav-soft: #202342;
  --teal: #6e7cf6;
  --teal-dark: #9aa5ff;
  --mint: #eef0ff;
  --blue: #6e7cf6;
  --red: #ff6874;
  --shadow: 0 10px 30px rgba(26, 44, 47, .08);
  --sidebar-strong: #ffffff;
  --sidebar-text: #ffffff;
  --sidebar-muted: #c7cbe0;
  --sidebar-border: #252842;
  --sidebar-panel: rgba(255, 255, 255, .055);
  --sidebar-panel-border: rgba(255, 255, 255, .1);
  --sidebar-accent: #7684ff;
  --sidebar-accent-deep: #4b5bd7;
}

/* Ledger Mono keeps Ledger Night's layout while removing colour and visual depth. */
html[data-sidebar-theme="ledger-mono"] {
  --ink: #202020;
  --muted: #666666;
  --line: #dedede;
  --paper: #ffffff;
  --ground: #f5f5f5;
  --nav: #151515;
  --nav-soft: #2b2b2b;
  --teal: #333333;
  --teal-dark: #1f1f1f;
  --mint: #eeeeee;
  --blue: #4a4a4a;
  --red: #4a4a4a;
  --shadow: none;
  --sidebar-strong: #ffffff;
  --sidebar-text: #f2f2f2;
  --sidebar-muted: #bdbdbd;
  --sidebar-border: #2c2c2c;
  --sidebar-panel: #202020;
  --sidebar-panel-border: #383838;
  --sidebar-accent: #ffffff;
  --sidebar-accent-deep: #ffffff;
}

.sidebar {
  color: var(--sidebar-text);
  border-right-color: var(--sidebar-border);
  transition: background-color 180ms ease, color 180ms ease, border-color 180ms ease;
}

.sidebar::after {
  background: linear-gradient(var(--sidebar-accent), var(--sidebar-accent-deep) 50%, transparent);
}

.sidebar .brand,
.sidebar .company-switcher,
.sidebar .sidebar-foot b {
  color: var(--sidebar-strong);
}

.sidebar .company-switcher {
  background: var(--sidebar-panel);
  border-color: var(--sidebar-panel-border);
}

.sidebar #financial-year-name {
  font-size: 12px;
  line-height: 1.35;
}

.sidebar .company-switcher small,
.sidebar .sidebar-foot small,
.sidebar .sidebar-theme-copy small,
.sidebar .nav-label {
  color: var(--sidebar-muted);
}

.sidebar .nav-item,
.sidebar .nav-item span,
.sidebar .sidebar-foot button {
  color: var(--sidebar-text);
}

.sidebar .nav-item:hover,
.sidebar .nav-item.active,
.sidebar .nav-item.module-active {
  color: var(--sidebar-strong);
}

.sidebar .nav-item.active span,
.sidebar .nav-item.module-active > span {
  color: var(--sidebar-accent);
}

.sidebar .nav-item.active::before {
  background: var(--sidebar-accent);
  box-shadow: 0 0 12px color-mix(in srgb, var(--sidebar-accent) 55%, transparent);
}

.sidebar-bottom {
  margin-top: auto;
}

.sidebar-sync-button {
  width: 100%;
  margin: 10px 0 0;
  padding: 10px 11px;
  border: 1px solid color-mix(in srgb, var(--sidebar-accent, #55d9c3) 38%, transparent);
  border-radius: 8px;
  background: color-mix(in srgb, var(--sidebar-accent, #55d9c3) 12%, transparent);
  color: var(--sidebar-text, #d9e5e5);
  display: flex;
  align-items: center;
  gap: 10px;
  text-align: left;
  cursor: pointer;
}

.sidebar-sync-button[hidden] { display: none; }
.sidebar-sync-button:hover:not(:disabled) { background: color-mix(in srgb, var(--sidebar-accent, #55d9c3) 21%, transparent); }
.sidebar-sync-button:disabled { cursor: not-allowed; opacity: .55; }
.sidebar-sync-button > span:not(.sidebar-sync-icon) { display: grid; gap: 2px; }
.sidebar-sync-button b { color: inherit; font: 700 12px 'DM Sans', sans-serif; }
.sidebar-sync-button small { color: inherit; font-size: 9px; opacity: .72; }
.sidebar-sync-icon { width: 25px; height: 25px; border-radius: 7px; display: grid; place-items: center; background: color-mix(in srgb, var(--sidebar-accent, #55d9c3) 20%, transparent); color: var(--sidebar-accent, #55d9c3); font-size: 17px; }
.sidebar-sync-button.syncing .sidebar-sync-icon { animation: sidebar-sync-pulse .8s ease-in-out infinite alternate; }
@keyframes sidebar-sync-pulse { to { transform: rotate(180deg); } }

.create-theme-stack {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 7px;
}

.create-theme-stack > .quick-create,
.create-theme-stack #quick-add {
  width: auto;
}

.create-theme-stack #quick-add {
  background: #2563eb;
  box-shadow: 0 3px 7px rgba(37, 99, 235, .28);
}

.create-theme-stack #quick-add:hover,
.create-theme-stack #quick-add:focus-visible {
  background: #1d4ed8;
}

.create-theme-stack .sidebar-theme-control {
  align-self: flex-end;
  padding: 2px 4px;
}

.create-theme-stack .sidebar-theme-options button {
  width: 20px;
  height: 20px;
}

.create-theme-stack .sidebar-theme-options .theme-more-toggle {
  width: 24px;
}

.create-theme-stack .theme-swatch {
  width: 13px;
  height: 13px;
}

.sidebar-theme-control {
  position: relative;
  display: flex;
  align-items: center;
  padding: 5px 6px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 2px 8px rgba(23, 33, 43, 0.07);
}

.sidebar-theme-control[hidden] {
  display: none;
}

.sidebar-theme-options {
  display: flex;
  align-items: center;
  gap: 4px;
}

.sidebar-theme-options button {
  position: relative;
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
}

.sidebar-theme-options button:hover {
  background: #f1f4f4;
}

.sidebar-theme-options button[data-selected="true"] {
  background: #eef3f2;
  box-shadow: inset 0 0 0 2px #687b79;
}

.sidebar-theme-options button:focus-visible {
  outline: 2px solid #168f7d;
  outline-offset: 2px;
}

.sidebar-theme-options .theme-more-toggle {
  width: 28px;
  border-radius: 12px;
  color: #425452;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: -2px;
}

.sidebar-theme-options .theme-more-toggle[aria-expanded="true"] {
  background: #e8eeee;
}

.theme-more-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 80;
  display: grid;
  min-width: 150px;
  gap: 3px;
  padding: 7px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 14px 35px rgba(15, 35, 38, .18);
}

.theme-more-menu[hidden] {
  display: none;
}

.theme-more-menu button {
  display: flex;
  align-items: center;
  gap: 9px;
  width: 100%;
  padding: 7px 9px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--ink);
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}

.theme-more-menu button:hover,
.theme-more-menu button[data-selected="true"] {
  background: #eef3f2;
}

.theme-more-menu button:focus-visible {
  outline: 2px solid #168f7d;
  outline-offset: -1px;
}

.theme-swatch {
  width: 16px;
  height: 16px;
  border: 2px solid #fff;
  border-radius: 50%;
  box-shadow: 0 0 0 1px rgba(10, 24, 25, 0.24);
}

.theme-swatch.teal { background: #10272b; }
.theme-swatch.midnight { background: #5267c8; }
.theme-swatch.forest { background: #287554; }
.theme-swatch.light { background: #f0dcc0; }
.theme-swatch.hrms { background: linear-gradient(135deg, #eeeaf4 0 46%, #5b18ee 47% 72%, #0567f4 73%); }
.theme-swatch.hrms-blue { background: linear-gradient(135deg, #07285f 0 43%, #1f5eff 44% 70%, #eef4ff 71%); }
.theme-swatch.hrms-blue-buttons { background: linear-gradient(135deg, #07285f 0 38%, #ffffff 39% 57%, #1f5eff 58% 78%, #eef4ff 79%); }
.theme-swatch.enterprise-calm { background: linear-gradient(135deg, #263d38 0 46%, #91c9b7 47% 68%, #f2f5f2 69%); }
.theme-swatch.ledger-night { background: linear-gradient(135deg, #0f1021 0 52%, #202342 53% 76%, #e63946 77%); }
.theme-swatch.ledger-night-plain { background: linear-gradient(135deg, #0f1021 0 64%, #c7cbe0 65% 72%, #202342 73%); }
.theme-swatch.ledger-mono { background: #202020; }
.theme-swatch.erp-ln { background: linear-gradient(135deg, #090a0b 0 50%, #c83232 51% 70%, #eceeef 71%); }
.theme-swatch.infor-ln { background: linear-gradient(135deg, #1c1c1e 0 46%, #e31b23 47% 69%, #ffffff 70%); }

html[data-sidebar-theme="enterprise-calm"] body,
html[data-sidebar-theme="enterprise-calm"] button,
html[data-sidebar-theme="enterprise-calm"] input,
html[data-sidebar-theme="enterprise-calm"] select,
html[data-sidebar-theme="enterprise-calm"] textarea {
  font-family: "DM Sans", "Segoe UI", sans-serif;
}

html[data-sidebar-theme="enterprise-calm"] body {
  background: var(--ground);
  color: var(--ink);
}

html[data-sidebar-theme="enterprise-calm"] .topbar {
  background: #f8faf8;
  border-bottom-color: var(--line);
  box-shadow: 0 1px 0 rgba(39, 65, 56, .03);
}

html[data-sidebar-theme="enterprise-calm"] .sidebar {
  background: var(--nav);
  border-right-color: var(--sidebar-border);
}

html[data-sidebar-theme="enterprise-calm"] .sidebar .nav-item:hover,
html[data-sidebar-theme="enterprise-calm"] .sidebar .nav-item.active,
html[data-sidebar-theme="enterprise-calm"] .sidebar .nav-item.module-active {
  background: var(--nav-soft);
}

html[data-sidebar-theme="enterprise-calm"] .sidebar #main-nav :is(.nav-item, .nav-subgroup-toggle) {
  font-family: "DM Sans", "Segoe UI", sans-serif;
  line-height: 1.25;
}

html[data-sidebar-theme="enterprise-calm"] .sidebar .nav-module b {
  font-weight: 600;
}

html[data-sidebar-theme="enterprise-calm"] .sidebar .nav-item.active b,
html[data-sidebar-theme="enterprise-calm"] .sidebar .nav-item.module-active b {
  font-weight: 700;
}

html[data-sidebar-theme="enterprise-calm"] :is(.card, .metric, .summary-card, .report-tile, .modal, .date-pill) {
  background: var(--paper);
  border-color: var(--line);
  box-shadow: var(--shadow);
}

html[data-sidebar-theme="enterprise-calm"] :is(.search, .form-field input, .form-field select, .form-field textarea) {
  border-color: #cfd8d4;
  background: #fdfefd;
}

html[data-sidebar-theme="enterprise-calm"] :is(.search, .form-field input, .form-field select, .form-field textarea):focus {
  border-color: var(--teal);
  box-shadow: 0 0 0 3px rgba(40, 123, 105, .14);
}

html[data-sidebar-theme="enterprise-calm"] thead {
  background: #edf2ef;
  color: #596862;
}

html[data-sidebar-theme="enterprise-calm"] th,
html[data-sidebar-theme="enterprise-calm"] td {
  border-color: #e1e6e3;
}

html[data-sidebar-theme="enterprise-calm"] :is(#main-nav button, .sidebar-theme-options button):focus-visible {
  outline: 2px solid var(--sidebar-accent);
  outline-offset: 2px;
}

html[data-sidebar-theme="hrms"] body,
html[data-sidebar-theme="hrms"] button,
html[data-sidebar-theme="hrms"] input,
html[data-sidebar-theme="hrms"] select,
html[data-sidebar-theme="hrms"] textarea {
  font-family: "Nunito Sans", "DM Sans", sans-serif;
}

html[data-sidebar-theme="hrms"] :is(h1, h2, h3, h4, h5, h6),
html[data-sidebar-theme="hrms"] .brand,
html[data-sidebar-theme="hrms"] .metric strong,
html[data-sidebar-theme="hrms"] .section-head h2,
html[data-sidebar-theme="hrms"] .card-head h3,
html[data-sidebar-theme="hrms"] .table-toolbar h3,
html[data-sidebar-theme="hrms"] .summary-card h4,
html[data-sidebar-theme="hrms"] .report-tile h3,
html[data-sidebar-theme="hrms"] .modal-head h2 {
  font-family: Poly, Georgia, serif;
  letter-spacing: 0;
}

html[data-sidebar-theme="hrms"] .topbar {
  background: rgba(255, 255, 255, .94);
  border-bottom-color: var(--line);
}

html[data-sidebar-theme="hrms"] .sidebar {
  border-right-color: var(--sidebar-border);
}

html[data-sidebar-theme="hrms"] .sidebar::after {
  background: linear-gradient(var(--sidebar-accent), var(--sidebar-accent-deep) 50%, transparent);
}

html[data-sidebar-theme="hrms"] .brand-mark {
  background: var(--teal);
  color: #ffffff;
}

html[data-sidebar-theme="hrms"] :is(.card, .metric, .summary-card, .report-tile, .date-pill, .sidebar-theme-control) {
  border-color: var(--line);
  box-shadow: var(--shadow);
}

html[data-sidebar-theme="hrms"] :is(.primary-btn, .pagination button.active) {
  border-color: var(--teal);
  background: var(--teal);
}

html[data-sidebar-theme="hrms"] :is(.primary-btn, .pagination button.active):hover {
  background: var(--teal-dark);
}

html[data-sidebar-theme="hrms"] .sidebar .nav-item:hover,
html[data-sidebar-theme="hrms"] .sidebar .nav-item.active,
html[data-sidebar-theme="hrms"] .sidebar .nav-item.module-active {
  background: var(--nav-soft);
  color: var(--sidebar-strong);
}

html[data-sidebar-theme="hrms"] .sidebar-theme-options button[data-selected="true"] {
  background: #eee8ff;
  box-shadow: inset 0 0 0 2px var(--teal);
}

html[data-sidebar-theme="hrms"] .sidebar-theme-options button:focus-visible {
  outline-color: var(--teal);
}

html[data-sidebar-theme="hrms-blue"] body,
html[data-sidebar-theme="hrms-blue"] button,
html[data-sidebar-theme="hrms-blue"] input,
html[data-sidebar-theme="hrms-blue"] select,
html[data-sidebar-theme="hrms-blue"] textarea {
  font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
}

html[data-sidebar-theme="hrms-blue"] .sidebar {
  background: linear-gradient(145deg, #07285f, #0d46a4 58%, #1f63f2);
  border-right-color: var(--sidebar-border);
}

html[data-sidebar-theme="hrms-blue"] .sidebar::after {
  background: linear-gradient(#93c5fd, #22d3ee 52%, transparent);
}

html[data-sidebar-theme="hrms-blue"] .brand-mark {
  background: #1f5eff;
  color: #ffffff;
  box-shadow: 0 8px 18px rgba(2, 6, 23, .28);
}

html[data-sidebar-theme="hrms-blue"] .topbar {
  background: rgba(255, 255, 255, .96);
  border-bottom-color: var(--line);
}

html[data-sidebar-theme="hrms-blue"] :is(.card, .metric, .summary-card, .report-tile, .date-pill, .sidebar-theme-control, .modal) {
  border-color: #dbeafe;
  box-shadow: var(--shadow);
}

html[data-sidebar-theme="hrms-blue"] :is(.primary-btn, .pagination button.active) {
  border-color: #1f5eff;
  background: #1f5eff;
  box-shadow: 0 8px 18px rgba(37, 99, 235, .2);
}

html[data-sidebar-theme="hrms-blue"] :is(.primary-btn, .pagination button.active):hover {
  background: #174fe0;
}

html[data-sidebar-theme="hrms-blue"] :is(.form-field input, .form-field select, .form-field textarea, .search):focus {
  border-color: #3b82f6;
  box-shadow: 0 0 0 4px #dbeafe;
}

html[data-sidebar-theme="hrms-blue"] .sidebar-theme-options button[data-selected="true"] {
  background: #dbeafe;
  box-shadow: inset 0 0 0 2px #1f5eff;
}

html[data-sidebar-theme="hrms-blue"] .sidebar-theme-options button:focus-visible {
  outline-color: #1f5eff;
}

html[data-sidebar-theme="hrms-blue-buttons"] body,
html[data-sidebar-theme="hrms-blue-buttons"] button,
html[data-sidebar-theme="hrms-blue-buttons"] input,
html[data-sidebar-theme="hrms-blue-buttons"] select,
html[data-sidebar-theme="hrms-blue-buttons"] textarea {
  font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
}

html[data-sidebar-theme="hrms-blue-buttons"] .sidebar {
  background: linear-gradient(145deg, #07285f, #0d46a4 58%, #1f63f2);
  border-right-color: var(--sidebar-border);
}

html[data-sidebar-theme="hrms-blue-buttons"] .sidebar::after {
  background: linear-gradient(#93c5fd, #22d3ee 52%, transparent);
}

html[data-sidebar-theme="hrms-blue-buttons"] .brand-mark {
  background: #1f5eff;
  color: #ffffff;
  box-shadow: 0 8px 18px rgba(2, 6, 23, .28);
}

html[data-sidebar-theme="hrms-blue-buttons"] .topbar {
  background: rgba(255, 255, 255, .96);
  border-bottom-color: var(--line);
}

html[data-sidebar-theme="hrms-blue-buttons"] :is(.card, .metric, .summary-card, .report-tile, .date-pill, .sidebar-theme-control, .modal) {
  border-color: #dbeafe;
  box-shadow: var(--shadow);
}

html[data-sidebar-theme="hrms-blue-buttons"] :is(.primary-btn, .pagination button.active) {
  border-color: #1f5eff;
  background: #1f5eff;
  box-shadow: 0 8px 18px rgba(37, 99, 235, .2);
}

html[data-sidebar-theme="hrms-blue-buttons"] :is(.primary-btn, .pagination button.active):hover {
  background: #174fe0;
}

html[data-sidebar-theme="hrms-blue-buttons"] :is(.form-field input, .form-field select, .form-field textarea, .search):focus {
  border-color: #3b82f6;
  box-shadow: 0 0 0 4px #dbeafe;
}

html[data-sidebar-theme="hrms-blue-buttons"] #main-nav {
  padding-inline: 4px;
}

html[data-sidebar-theme="hrms-blue-buttons"] .nav-group {
  margin: 6px 0;
}

html[data-sidebar-theme="hrms-blue-buttons"] .nav-module {
  min-height: 34px;
  padding-block: 6px;
}

html[data-sidebar-theme="hrms-blue-buttons"] .nav-children .nav-item {
  min-height: 29px;
  padding-block: 5px;
}

html[data-sidebar-theme="hrms-blue-buttons"] .nav-subgroup-toggle {
  min-height: 28px;
  padding-block: 4px;
}

html[data-sidebar-theme="hrms-blue-buttons"] .nav-subchildren .nav-item {
  min-height: 27px;
  padding-block: 4px;
}

html[data-sidebar-theme="hrms-blue-buttons"] .sidebar :is(.nav-item, .nav-subgroup-toggle) {
  margin: 3px 0;
  border: 1px solid rgba(191, 219, 254, .16);
  border-radius: 9px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .1), rgba(255, 255, 255, .055));
  color: #ffffff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 1px 2px rgba(2, 18, 54, .12);
  transition: background-color 150ms ease, border-color 150ms ease, box-shadow 150ms ease;
}

html[data-sidebar-theme="hrms-blue-buttons"] .sidebar :is(.nav-item, .nav-subgroup-toggle):hover {
  border-color: rgba(219, 234, 254, .38);
  background: rgba(147, 197, 253, .18);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12), 0 2px 5px rgba(2, 18, 54, .16);
}

html[data-sidebar-theme="hrms-blue-buttons"] .sidebar .nav-item.active,
html[data-sidebar-theme="hrms-blue-buttons"] .sidebar .nav-item.module-active {
  border-color: #93c5fd;
  background: linear-gradient(135deg, #2563eb, #174fe0);
  color: #ffffff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .24), 0 3px 8px rgba(2, 18, 54, .24);
}

html[data-sidebar-theme="hrms-blue-buttons"] .sidebar .nav-item.active span,
html[data-sidebar-theme="hrms-blue-buttons"] .sidebar .nav-item.module-active > span {
  color: #ffffff;
}

html[data-sidebar-theme="hrms-blue-buttons"] .sidebar :is(.nav-module em, .nav-subgroup-toggle em) {
  color: #ffffff;
}

html[data-sidebar-theme="hrms-blue-buttons"] .sidebar .nav-item.module-active em {
  color: #ffffff;
}

html[data-sidebar-theme="hrms-blue-buttons"] .nav-children {
  margin: 5px 0 9px 10px;
  padding: 2px 0 2px 10px;
}

html[data-sidebar-theme="hrms-blue-buttons"] .nav-children::before {
  background: rgba(191, 219, 254, .34);
}

html[data-sidebar-theme="hrms-blue-buttons"] .nav-subchildren {
  margin-left: 5px;
  padding-left: 7px;
  border-left-color: rgba(191, 219, 254, .32);
}

html[data-sidebar-theme="hrms-blue-buttons"] .sidebar-theme-options button[data-selected="true"] {
  background: #dbeafe;
  box-shadow: inset 0 0 0 2px #1f5eff;
}

html[data-sidebar-theme="hrms-blue-buttons"] .sidebar-theme-options button:focus-visible,
html[data-sidebar-theme="hrms-blue-buttons"] #main-nav button:focus-visible {
  outline-color: #93c5fd;
}

html[data-sidebar-theme="erp-ln"] body,
html[data-sidebar-theme="erp-ln"] button,
html[data-sidebar-theme="erp-ln"] input,
html[data-sidebar-theme="erp-ln"] select,
html[data-sidebar-theme="erp-ln"] textarea {
  font-family: "Source Sans Pro", "Source Sans 3", "Segoe UI", Arial, sans-serif;
}

html[data-sidebar-theme="erp-ln"] .sidebar {
  background: #1c1c1e;
  border-right-color: #101011;
}

html[data-sidebar-theme="erp-ln"] .sidebar :is(.nav-item, .nav-subgroup-toggle),
html[data-sidebar-theme="erp-ln"] .sidebar .nav-children .nav-item {
  color: #ffffff;
  font-family: "Source Sans Pro", "Source Sans 3", "Segoe UI", Arial, sans-serif;
}

html[data-sidebar-theme="erp-ln"] .sidebar :is(.nav-label, .company-switcher small, .sidebar-foot small, .nav-module em, .nav-subgroup-toggle em) {
  color: #e0e0e0;
}

html[data-sidebar-theme="erp-ln"] .sidebar::after {
  width: 3px;
  background: linear-gradient(#ef5a5a, #c83232 55%, transparent);
}

html[data-sidebar-theme="erp-ln"] .brand-mark {
  border-radius: 2px;
  background: #c83232;
  color: #fff;
}

html[data-sidebar-theme="erp-ln"] .topbar {
  height: 78px;
  border-bottom-color: #c3c7ca;
  background: #f7f8f8;
  box-shadow: inset 0 -1px #fff;
}

html[data-sidebar-theme="erp-ln"] .app-content {
  padding-top: 22px;
}

html[data-sidebar-theme="erp-ln"] :is(.card, .metric, .summary-card, .report-tile, .date-pill, .modal) {
  border-color: #cfd3d6;
  border-radius: 3px;
  box-shadow: var(--shadow);
}

html[data-sidebar-theme="erp-ln"] :is(.primary-btn, .secondary-btn, .icon-btn, .help-btn, .search, .form-field input, .form-field select, .form-field textarea) {
  border-radius: 2px;
}

html[data-sidebar-theme="erp-ln"] :is(.primary-btn, .pagination button.active) {
  border-color: #b52a2a;
  background: #c83232;
  box-shadow: none;
}

html[data-sidebar-theme="erp-ln"] :is(.primary-btn, .pagination button.active):hover {
  background: #a72424;
}

html[data-sidebar-theme="erp-ln"] .sidebar :is(.nav-item, .nav-subgroup-toggle) {
  border-radius: 2px;
}

html[data-sidebar-theme="erp-ln"] .sidebar .nav-item:hover,
html[data-sidebar-theme="erp-ln"] .sidebar .nav-item.active,
html[data-sidebar-theme="erp-ln"] .sidebar .nav-item.module-active {
  background: #26282a;
  color: #fff;
}

html[data-sidebar-theme="erp-ln"] .nav-children::before {
  background: #5c5f62;
}

html[data-sidebar-theme="erp-ln"] thead {
  background: #e2e5e7;
  color: #4c5257;
}

html[data-sidebar-theme="erp-ln"] th,
html[data-sidebar-theme="erp-ln"] td {
  padding: 9px 14px;
}

html[data-sidebar-theme="erp-ln"] .metric {
  min-height: 104px;
  padding: 14px 16px;
}

html[data-sidebar-theme="erp-ln"] :is(.form-field input, .form-field select, .form-field textarea, .search):focus {
  border-color: #c83232;
  box-shadow: 0 0 0 2px #f4cccc;
}

html[data-sidebar-theme="erp-ln"] .sidebar-theme-options button[data-selected="true"] {
  background: #f7e7e7;
  box-shadow: inset 0 0 0 2px #c83232;
}

html[data-sidebar-theme="erp-ln"] :is(#main-nav button, .sidebar-theme-options button):focus-visible {
  outline-color: #ff7676;
}

html[data-sidebar-theme="infor-ln"] body,
html[data-sidebar-theme="infor-ln"] button,
html[data-sidebar-theme="infor-ln"] input,
html[data-sidebar-theme="infor-ln"] select,
html[data-sidebar-theme="infor-ln"] textarea {
  font-family: "Segoe UI", Roboto, "Helvetica Neue", Arial, system-ui, sans-serif;
}

html[data-sidebar-theme="infor-ln"] .sidebar {
  padding: 15px 10px 12px;
  background: #1c1c1e;
  border-right: 1px solid #0d0d0e;
  box-shadow: 2px 0 7px rgba(0, 0, 0, .18);
}

html[data-sidebar-theme="infor-ln"] .sidebar::after {
  width: 0;
  background: transparent;
}

html[data-sidebar-theme="infor-ln"] .brand {
  height: 38px;
  padding: 0 8px;
  font: 600 21px/1 "Segoe UI", Roboto, Arial, sans-serif;
  letter-spacing: 0;
  text-transform: uppercase;
}

html[data-sidebar-theme="infor-ln"] .brand-mark {
  width: 32px;
  height: 32px;
  border-radius: 4px;
  background: #e31b23;
  color: #fff;
  font: 700 18px/1 "Segoe UI", sans-serif;
}

html[data-sidebar-theme="infor-ln"] .company-switcher {
  margin: 15px 4px 12px;
  padding: 9px;
  border-color: #3a3a3c;
  border-radius: 3px;
  background: #2c2c2e;
}

html[data-sidebar-theme="infor-ln"] .company-dot {
  border-color: #4b4b4f;
  border-radius: 3px;
  background: #e65100;
}

html[data-sidebar-theme="infor-ln"] #main-nav {
  scrollbar-color: #636366 #1c1c1e;
}

html[data-sidebar-theme="infor-ln"] .nav-label {
  margin: 10px 10px 5px;
  color: #a9a9af;
  font-size: 10px;
  letter-spacing: .8px;
}

html[data-sidebar-theme="infor-ln"] .sidebar :is(.nav-item, .nav-subgroup-toggle) {
  min-height: 33px;
  padding: 7px 10px;
  border-radius: 2px;
  color: #fff;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.25;
}

html[data-sidebar-theme="infor-ln"] .sidebar #main-nav :is(.nav-item, .nav-subgroup-toggle),
html[data-sidebar-theme="infor-ln"] .sidebar #main-nav :is(.nav-item, .nav-subgroup-toggle) :is(b, strong) {
  font-family: "Segoe UI", Roboto, "Helvetica Neue", Arial, system-ui, sans-serif !important;
  font-weight: 400 !important;
  font-synthesis: none;
}

html[data-sidebar-theme="infor-ln"] .sidebar :is(.nav-item, .nav-subgroup-toggle):hover,
html[data-sidebar-theme="infor-ln"] .sidebar .nav-item.active,
html[data-sidebar-theme="infor-ln"] .sidebar .nav-item.module-active {
  background: #2c2c2e;
  color: #fff;
}

html[data-sidebar-theme="infor-ln"] .sidebar .nav-item.active::before {
  top: auto;
  right: 8px;
  bottom: 0;
  left: 8px;
  width: auto;
  height: 2px;
  border-radius: 0;
  background: #1976d2;
  box-shadow: none;
}

html[data-sidebar-theme="infor-ln"] .sidebar .nav-item.active span,
html[data-sidebar-theme="infor-ln"] .sidebar .nav-item.module-active > span {
  color: #fff;
}

html[data-sidebar-theme="infor-ln"] .nav-children::before,
html[data-sidebar-theme="infor-ln"] .nav-subchildren {
  border-left-color: #4a4a4e;
}

html[data-sidebar-theme="infor-ln"] .sidebar-foot {
  padding-top: 9px;
  border-top-color: #3a3a3c;
}

html[data-sidebar-theme="infor-ln"] .avatar {
  border-radius: 3px;
  background: #e31b23;
}

html[data-sidebar-theme="infor-ln"] .topbar {
  min-height: 72px;
  height: 72px;
  padding: 12px 24px;
  border-bottom: 1px solid #b71c1c;
  background: #e31b23;
  color: #fff;
  box-shadow: none;
}

html[data-sidebar-theme="infor-ln"] #page-kicker,
html[data-sidebar-theme="infor-ln"] .topbar .crumb h1,
html[data-sidebar-theme="infor-ln"] .topbar .crumb h1 span,
html[data-sidebar-theme="infor-ln"] .topbar .account-space-control > span,
html[data-sidebar-theme="infor-ln"] .topbar .ui-language-control > span {
  color: #fff;
}

html[data-sidebar-theme="infor-ln"] #page-kicker {
  opacity: .82;
}

html[data-sidebar-theme="infor-ln"] .topbar :is(.icon-btn, .help-btn, .secondary-btn, .mobile-menu, .sidebar-visibility-toggle) {
  border-color: rgba(255, 255, 255, .48);
  border-radius: 2px;
  background: transparent;
  color: #fff;
  box-shadow: none;
}

html[data-sidebar-theme="infor-ln"] .topbar :is(.icon-btn, .help-btn, .secondary-btn, .mobile-menu, .sidebar-visibility-toggle):hover {
  background: rgba(0, 0, 0, .12);
}

html[data-sidebar-theme="infor-ln"] .topbar .primary-btn {
  border: 1px solid #fff;
  border-radius: 2px;
  background: #fff;
  color: #b71c1c;
  box-shadow: none;
}

html[data-sidebar-theme="infor-ln"] .topbar .primary-btn:hover {
  background: #f4f4f6;
}

html[data-sidebar-theme="infor-ln"] .topbar :is(.erp-page-search, .account-space-control, .ui-language-control, .sidebar-theme-control) {
  border-color: rgba(255, 255, 255, .65);
  border-radius: 2px;
  background: #fff;
  color: #3a3a3c;
}

html[data-sidebar-theme="infor-ln"] .topbar .erp-page-search input,
html[data-sidebar-theme="infor-ln"] .topbar :is(.account-space-control, .ui-language-control) select {
  color: #2c2c2e;
}

html[data-sidebar-theme="infor-ln"] .app-content {
  max-width: none;
  padding: 18px 24px 34px;
  background: #fff;
}

html[data-sidebar-theme="infor-ln"] :is(.section-head, .card-head, .table-toolbar) h2,
html[data-sidebar-theme="infor-ln"] :is(.card-head, .table-toolbar) h3 {
  font-weight: 400;
}

html[data-sidebar-theme="infor-ln"] :is(.card, .metric, .summary-card, .report-tile, .date-pill, .modal, .module-hero, .module-column) {
  border-color: #d8d8dc;
  border-radius: 4px;
  background: #fff;
  box-shadow: var(--shadow);
}

html[data-sidebar-theme="infor-ln"] :is(.card-head, .table-toolbar) {
  margin: -16px -16px 12px;
  padding: 12px 16px;
  border-bottom: 1px solid #dedee2;
  background: #f4f4f6;
}

html[data-sidebar-theme="infor-ln"] .table-card .table-toolbar {
  margin: 0;
}

html[data-sidebar-theme="infor-ln"] :is(.card, .summary-card) {
  padding: 16px;
}

html[data-sidebar-theme="infor-ln"] .metric {
  min-height: 94px;
  padding: 13px 15px;
}

html[data-sidebar-theme="infor-ln"] .metric strong {
  margin: 9px 0 3px;
  font-size: 22px;
}

html[data-sidebar-theme="infor-ln"] :is(.primary-btn, .secondary-btn, .icon-btn, .help-btn, .search, .form-field input, .form-field select, .form-field textarea, .date-pill, .status) {
  border-radius: 2px;
}

html[data-sidebar-theme="infor-ln"] :is(.primary-btn, .pagination button.active) {
  border-color: #d32f2f;
  background: #e31b23;
  box-shadow: none;
}

html[data-sidebar-theme="infor-ln"] :is(.primary-btn, .pagination button.active):hover {
  background: #b71c1c;
}

html[data-sidebar-theme="infor-ln"] thead {
  background: #f4f4f6;
  color: #3a3a3c;
}

html[data-sidebar-theme="infor-ln"] th,
html[data-sidebar-theme="infor-ln"] td {
  padding: 8px 12px;
}

html[data-sidebar-theme="infor-ln"] .table-footer {
  min-height: 34px;
  padding: 8px 12px;
  border-top-color: #d8d8dc;
  background: #fafafa;
  color: #6e6e73;
}

html[data-sidebar-theme="infor-ln"] :is(.status.paid, .status.active) {
  color: #1b5e20;
  background: #e8f5e9;
}

html[data-sidebar-theme="infor-ln"] :is(.form-field input, .form-field select, .form-field textarea, .search):focus {
  border-color: #1976d2;
  box-shadow: 0 0 0 2px rgba(25, 118, 210, .16);
}

html[data-sidebar-theme="infor-ln"] .action span,
html[data-sidebar-theme="infor-ln"] .report-icon {
  color: #2e7d32;
}

html[data-sidebar-theme="infor-ln"] .action:nth-child(2n) span {
  color: #e65100;
}

html[data-sidebar-theme="infor-ln"] .sidebar-theme-options button[data-selected="true"] {
  background: #fbe9ea;
  box-shadow: inset 0 0 0 2px #e31b23;
}

html[data-sidebar-theme="infor-ln"] :is(#main-nav button, .sidebar-theme-options button):focus-visible {
  outline-color: #42a5f5;
}

html[data-sidebar-theme^="ledger-night"] body,
html[data-sidebar-theme^="ledger-night"] button,
html[data-sidebar-theme^="ledger-night"] input,
html[data-sidebar-theme^="ledger-night"] select,
html[data-sidebar-theme^="ledger-night"] textarea {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

html[data-sidebar-theme^="ledger-night"] .sidebar {
  width: 280px;
  padding: 12px 10px;
  background: #0f1021;
}

html[data-sidebar-theme^="ledger-night"] .sidebar::after {
  display: none;
}

html[data-sidebar-theme^="ledger-night"] .sidebar .brand {
  min-height: 44px;
  padding-inline: 10px;
}

html[data-sidebar-theme^="ledger-night"] .sidebar .company-switcher {
  margin: 12px 4px 10px;
  border-color: #292c49;
  border-radius: 6px;
  background: #171933;
}

html[data-sidebar-theme^="ledger-night"] #main-nav {
  padding-inline: 0;
}

html[data-sidebar-theme^="ledger-night"] .nav-group {
  margin: 0;
}

html[data-sidebar-theme^="ledger-night"] .sidebar :is(.nav-item, .nav-subgroup-toggle) {
  min-height: 46px;
  padding: 12px 14px;
  border-radius: 4px;
  color: #ffffff;
  font-size: 14px;
  font-weight: 500;
  transition: background-color .15s ease, color .15s ease;
}

html[data-sidebar-theme^="ledger-night"] .sidebar :is(.nav-item, .nav-subgroup-toggle):hover {
  background: #171933;
}

html[data-sidebar-theme^="ledger-night"] .sidebar .nav-item.active,
html[data-sidebar-theme^="ledger-night"] .sidebar .nav-item.module-active {
  background: #202342;
  color: #ffffff;
}

html[data-sidebar-theme^="ledger-night"] .sidebar .nav-item.active::before {
  display: none;
}

html[data-sidebar-theme^="ledger-night"] .sidebar .nav-item.active span,
html[data-sidebar-theme^="ledger-night"] .sidebar .nav-item.module-active > span {
  color: #ffffff;
}

html[data-sidebar-theme^="ledger-night"] .nav-children {
  margin: 0;
  padding: 0 0 2px 36px;
}

html[data-sidebar-theme^="ledger-night"] .nav-children::before,
html[data-sidebar-theme^="ledger-night"] .nav-subchildren {
  border-color: #303451;
}

html[data-sidebar-theme^="ledger-night"] .nav-children .nav-item {
  min-height: 42px;
  padding: 10px 14px;
  font-size: 13px;
}

html[data-sidebar-theme^="ledger-night"] .sidebar :is(.nav-module em, .nav-subgroup-toggle em) {
  color: #ffffff;
}

html[data-sidebar-theme^="ledger-night"] .sidebar .nav-item i {
  background: #e63946;
}

html[data-sidebar-theme^="ledger-night"] :is(#main-nav button, .sidebar-theme-options button):focus-visible {
  outline: 2px solid #9aa5ff;
  outline-offset: -2px;
}

@media (min-width: 761px) {
  html[data-sidebar-theme^="ledger-night"] .shell { grid-template-columns: 280px 1fr; }
}

/* Ledger Night Plain keeps Ledger Night everywhere except for a neutral, flat Lite sidebar. */
html[data-sidebar-theme="ledger-night-plain"] .lite-sidebar-section {
  --lite-section-color: #c7cbe0;
}

html[data-sidebar-theme="ledger-night-plain"] .lite-sidebar-section h2,
html[data-sidebar-theme="ledger-night-plain"] .lite-sidebar-section h2:hover,
html[data-sidebar-theme="ledger-night-plain"] .lite-sidebar-section h2:active {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  transform: none;
}

html[data-sidebar-theme="ledger-night-plain"] .lite-sidebar-toggle,
html[data-sidebar-theme="ledger-night-plain"] .lite-sidebar-toggle:hover {
  background: transparent;
}

html[data-sidebar-theme="ledger-night-plain"] .lite-sidebar-toggle:hover {
  color: #ffffff;
}

html[data-sidebar-theme="ledger-night-plain"] .lite-toggle-plus,
html[data-sidebar-theme="ledger-night-plain"] .lite-page-plus {
  display: none;
}

html[data-sidebar-theme="ledger-night-plain"] .lite-sidebar-section .nav-item:hover,
html[data-sidebar-theme="ledger-night-plain"] .lite-sidebar-section .nav-item.active {
  background: #202342;
}

html[data-sidebar-theme="ledger-night-plain"] .lite-sidebar-pages {
  width: calc(100% - 18px);
  margin-left: 18px;
}

html[data-sidebar-theme="ledger-mono"] body,
html[data-sidebar-theme="ledger-mono"] button,
html[data-sidebar-theme="ledger-mono"] input,
html[data-sidebar-theme="ledger-mono"] select,
html[data-sidebar-theme="ledger-mono"] textarea {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

html[data-sidebar-theme="ledger-mono"] .sidebar {
  width: 280px;
  padding: 12px 10px;
  background: #151515;
}

html[data-sidebar-theme="ledger-mono"] .sidebar,
html[data-sidebar-theme="ledger-mono"] .sidebar * {
  background-image: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

html[data-sidebar-theme="ledger-mono"] .sidebar::after,
html[data-sidebar-theme="ledger-mono"] .sidebar .nav-item.active::before {
  display: none;
}

html[data-sidebar-theme="ledger-mono"] .sidebar .brand {
  min-height: 44px;
  padding-inline: 10px;
}

html[data-sidebar-theme="ledger-mono"] .sidebar .company-switcher {
  margin: 12px 4px 10px;
  border-color: #383838;
  border-radius: 4px;
  background: #202020;
}

html[data-sidebar-theme="ledger-mono"] #main-nav {
  padding-inline: 0;
}

html[data-sidebar-theme="ledger-mono"] .nav-group {
  margin: 0;
}

html[data-sidebar-theme="ledger-mono"] .sidebar :is(.nav-item, .nav-subgroup-toggle) {
  min-height: 46px;
  padding: 12px 14px;
  border-radius: 0;
  color: #f2f2f2;
  font-size: 14px;
  font-weight: 500;
  transition: background-color .15s ease, color .15s ease;
}

html[data-sidebar-theme="ledger-mono"] .sidebar :is(.nav-item, .nav-subgroup-toggle):hover {
  background: #222222;
}

html[data-sidebar-theme="ledger-mono"] .sidebar .nav-item.active,
html[data-sidebar-theme="ledger-mono"] .sidebar .nav-item.module-active {
  background: #2b2b2b;
  color: #ffffff;
}

html[data-sidebar-theme="ledger-mono"] .sidebar .nav-item.active span,
html[data-sidebar-theme="ledger-mono"] .sidebar .nav-item.module-active > span,
html[data-sidebar-theme="ledger-mono"] .sidebar :is(.nav-module em, .nav-subgroup-toggle em) {
  color: #ffffff;
}

html[data-sidebar-theme="ledger-mono"] .nav-children {
  margin: 0;
  padding: 0 0 2px 36px;
}

html[data-sidebar-theme="ledger-mono"] .nav-children::before,
html[data-sidebar-theme="ledger-mono"] .nav-subchildren {
  border-color: #3a3a3a;
}

html[data-sidebar-theme="ledger-mono"] .nav-children .nav-item {
  min-height: 42px;
  padding: 10px 14px;
  font-size: 13px;
}

html[data-sidebar-theme="ledger-mono"] .sidebar .nav-item i {
  background: #606060;
  color: #ffffff;
}

html[data-sidebar-theme="ledger-mono"] :is(.primary-btn, .pagination button.active) {
  border-color: #333333;
  background: #333333;
  box-shadow: none;
}

html[data-sidebar-theme="ledger-mono"] :is(.card, .metric, .summary-card, .report-tile, .modal, .date-pill, .sidebar-theme-control) {
  box-shadow: none;
}

html[data-sidebar-theme="ledger-mono"] :is(.brand-mark, .company-dot, .avatar, .metric-icon, .action span, .report-icon, .status) {
  filter: grayscale(1);
}

html[data-sidebar-theme="ledger-mono"] :is(#main-nav button, .sidebar-theme-options button):focus-visible {
  outline: 2px solid #ffffff;
  outline-offset: -2px;
}

@media (min-width: 761px) {
  html[data-sidebar-theme="ledger-mono"] .shell { grid-template-columns: 280px 1fr; }
}

@media (max-width: 760px) {
  html[data-sidebar-theme="infor-ln"] .topbar {
    min-height: 75px;
    height: auto;
    padding: 12px 16px;
  }

  html[data-sidebar-theme="infor-ln"] .app-content {
    padding: 16px;
  }
}

.quick-create {
  position: relative;
}

.quick-create-menu {
  position: absolute;
  z-index: 40;
  top: calc(100% + 10px);
  right: 0;
  width: min(440px, calc(100vw - 28px));
  max-height: min(690px, calc(100vh - 105px));
  overflow: auto;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--paper);
  color: var(--ink);
  box-shadow: 0 22px 55px rgba(15, 35, 37, .2);
}

.quick-create-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 1px 2px 11px;
  border-bottom: 1px solid var(--line);
}

.quick-create-heading > div {
  display: grid;
  gap: 2px;
}

.quick-create-heading b {
  font: 700 14px Manrope, sans-serif;
}

.quick-create-heading small,
.quick-create-title,
.quick-create-learning,
.quick-create-empty {
  color: var(--muted);
  font-size: 10px;
}

.quick-create-edit {
  padding: 5px 10px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  color: var(--teal-dark);
  font: 700 11px 'DM Sans', sans-serif;
  cursor: pointer;
}

.quick-create-title {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin: 12px 2px 7px;
  font-weight: 700;
  letter-spacing: .55px;
  text-transform: uppercase;
}

.quick-create-title span {
  color: var(--teal);
  font-size: 9px;
  letter-spacing: 0;
  text-transform: none;
}

.quick-create-search-add {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 24px;
  padding: 3px 7px;
  border: 1px solid var(--teal);
  border-radius: 6px;
  background: #fff;
  color: var(--teal-dark);
  font: 700 10px 'DM Sans', sans-serif;
  letter-spacing: 0;
  text-transform: none;
  cursor: pointer;
}

.quick-create-search-add:hover,
.quick-create-search-add:focus-visible {
  background: var(--mint);
  outline: 2px solid color-mix(in srgb, var(--teal) 28%, transparent);
}

.quick-create-shortcuts-title strong {
  color: var(--ink);
  font: 800 11px Manrope, sans-serif;
  letter-spacing: .55px;
}

.quick-create-primary,
.quick-create-more,
.quick-create-library {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}

.quick-create-more,
.quick-create-library {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* Automatic page suggestions stay intentionally quiet: the page name is the
   only information a user needs to choose one. */
.quick-create-more .quick-create-shortcut > [data-quick-create] {
  min-height: 32px;
  align-content: center;
  padding: 6px 9px;
}

.quick-create-more .quick-create-shortcut [data-quick-create] > span,
.quick-create-more .quick-create-shortcut [data-quick-create] > small,
.quick-create-more .quick-create-remove,
.quick-create-more .quick-create-shortcut > i,
.quick-create-more-title > span {
  display: none !important;
}

.quick-create-more .quick-create-shortcut [data-quick-create] > b {
  margin-top: 0;
  font-size: 10px;
}

.quick-create-shortcut {
  position: relative;
  min-width: 0;
}

.quick-create-shortcut > [data-quick-create],
.quick-create-library > button {
  display: grid;
  align-content: start;
  width: 100%;
  min-height: 84px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  text-align: left;
  cursor: pointer;
}

.quick-create-shortcut > [data-quick-create]:hover,
.quick-create-shortcut > [data-quick-create]:focus-visible,
.quick-create-library > button:hover,
.quick-create-library > button:focus-visible {
  border-color: #80c7bb;
  background: #f5fbf9;
  outline: 0;
}

.quick-create-shortcut [data-quick-create] > span,
.quick-create-library > button > span {
  color: var(--teal);
  font-size: 17px;
  line-height: 1;
}

.quick-create-shortcut [data-quick-create] > b,
.quick-create-library > button > b {
  margin-top: 8px;
  overflow: hidden;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.quick-create-shortcut [data-quick-create] > small,
.quick-create-library > button > small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 9px;
  line-height: 1.35;
}

.quick-create-remove {
  position: absolute;
  z-index: 1;
  top: 5px;
  right: 5px;
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  padding: 0;
  border: 1px solid #f1caca;
  border-radius: 50%;
  background: #fff5f5;
  color: #b64040;
  font-size: 16px;
  cursor: pointer;
}

.quick-create-menu:not(.editing) .quick-create-remove {
  display: none;
}

.quick-create-shortcut > i {
  position: absolute;
  right: 6px;
  bottom: 6px;
  padding: 2px 5px;
  border-radius: 8px;
  background: var(--mint);
  color: var(--teal-dark);
  font: 700 8px 'DM Sans', sans-serif;
  font-style: normal;
}

.quick-create-empty {
  grid-column: 1 / -1;
  margin: 2px;
  padding: 14px;
  border: 1px dashed var(--line);
  border-radius: 8px;
  text-align: center;
}

.quick-create-learning {
  margin: 10px 2px 2px;
  line-height: 1.45;
}

.quick-create-learning button {
  margin-left: 4px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--teal-dark);
  font: inherit;
  font-weight: 700;
  text-decoration: underline;
  cursor: pointer;
}

.quick-create-page-finder {
  margin: 0 2px 10px;
}

.quick-create-page-finder input {
  width: 100%;
  margin-bottom: 8px;
  padding: 9px 10px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  color: var(--ink);
  font: 12px 'DM Sans', sans-serif;
  outline: none;
}

.quick-create-page-finder input:focus {
  border-color: var(--teal);
  box-shadow: 0 0 0 3px var(--mint);
}

.quick-create-page-results {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.quick-create-page-results > button {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 2px 7px;
  align-items: center;
  padding: 9px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  color: var(--ink);
  text-align: left;
  cursor: pointer;
}

.quick-create-page-results > button:hover,
.quick-create-page-results > button:focus-visible {
  border-color: var(--teal);
  background: var(--mint);
  outline: 0;
}

.quick-create-page-results > button span {
  grid-row: 1 / 3;
  color: var(--teal);
}

.quick-create-page-results > button b {
  overflow: hidden;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.quick-create-page-results > button small {
  color: var(--muted);
  font-size: 9px;
}

html[data-sidebar-theme="erp-ln"] .quick-create-menu,
html[data-sidebar-theme="erp-ln"] :is(.quick-create-edit, .quick-create-shortcut > [data-quick-create], .quick-create-library > button) {
  border-radius: 2px;
}

html[data-sidebar-theme="erp-ln"] .quick-create-shortcut > [data-quick-create]:hover,
html[data-sidebar-theme="erp-ln"] .quick-create-library > button:hover {
  border-color: #c83232;
  background: #fff8f8;
}

.workspace-result-modal {
  box-sizing: border-box; width: min(460px, calc(100vw - 32px)); max-height: calc(100dvh - 32px);
  overflow: auto; margin: auto; padding: 28px; border: 1px solid #bbdfcd; border-radius: 18px;
  background: #fff; color: #172b25; box-shadow: 0 24px 70px #0f172a33;
}
.workspace-result-modal::backdrop { background: #0f172a70; }
.workspace-result-icon { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: #dcfce7; color: #15803d; font-size: 26px; margin-bottom: 14px; }
.workspace-result-modal h2 { font-size: 20px; line-height: 1.3; margin: 0 0 10px; }
.workspace-result-modal p { font-size: 13px; line-height: 1.6; }
.workspace-result-modal dl { padding: 12px 0; margin: 12px 0; border-block: 1px solid #e1ebe6; }
.workspace-result-modal dl div { display: grid; grid-template-columns: 100px 1fr; gap: 10px; margin: 8px 0; font-size: 13px; }
.workspace-result-modal dt { color: #5d6f65; }
.workspace-result-modal dd { margin: 0; font-weight: 600; overflow-wrap: anywhere; }
.workspace-result-modal label { display: grid; gap: 6px; font-size: 12px; }
.workspace-result-modal input { width: 100%; min-width: 0; box-sizing: border-box; padding: 10px; border: 1px solid #d3dfd8; border-radius: 8px; }
.workspace-onboarding-result { display: grid; gap: 7px; margin: 14px 0; padding: 0; list-style: none; }
.workspace-onboarding-result li { display: flex; align-items: center; gap: 9px; padding: 8px 10px; border: 1px solid #e1e9e5; border-radius: 9px; background: #fafcfb; }
.workspace-onboarding-result li > span { display: grid; flex: 0 0 24px; width: 24px; height: 24px; place-items: center; border-radius: 50%; background: #e9eef1; color: #66756d; font-weight: 900; }
.workspace-onboarding-result li.complete > span { background: #dcfce7; color: #15803d; }
.workspace-onboarding-result li.attention > span { background: #fff4d6; color: #a16207; }
.workspace-onboarding-result b,
.workspace-onboarding-result small { display: block; }
.workspace-onboarding-result b { font-size: 12px; }
.workspace-onboarding-result small { margin-top: 2px; color: var(--muted); font-size: 10px; }
.workspace-desktop-ready { margin: 14px 0; padding: 13px; border: 1px solid #bfd2f5; border-radius: 11px; background: #f5f9ff; }
.workspace-desktop-ready > b { font-size: 13px; }
.workspace-desktop-ready p { margin: 5px 0 10px; color: var(--muted); }
.workspace-desktop-ready > div { display: flex; align-items: center; gap: 8px; }
.workspace-desktop-ready code { flex: 1 1 auto; overflow-wrap: anywhere; padding: 9px; border: 1px dashed #91aee4; border-radius: 7px; background: #fff; color: #173b7a; font-size: 11px; }
.workspace-desktop-ready > small { display: block; margin-top: 8px; color: #8a5b0a; font-size: 10px; }
.workspace-result-note { color: #607469; }
.workspace-result-warning { padding: 10px; border: 1px solid #f0cf78; border-radius: 8px; background: #fff8e6; color: #8a5b0a; }
.workspace-result-modal > button { width: 100%; margin-top: 8px; }
.workspace-create-error { grid-column: 1 / -1; margin: 0; }
.sidebar .sidebar-foot {
  margin-top: 0;
  border-top-color: var(--sidebar-border);
}

@media (prefers-reduced-motion: reduce) {
  .sidebar { transition: none; }
}

@media (max-width: 760px) {
  .sidebar-theme-control { padding: 4px; }
  .sidebar-theme-options { gap: 2px; }
  .sidebar-theme-options button { width: 21px; height: 21px; }
  .theme-swatch { width: 14px; height: 14px; }
  .quick-create-menu { position: fixed; top: 68px; right: 12px; left: 12px; width: auto; max-height: calc(100dvh - 82px); }
  .quick-create-primary { grid-template-columns: 1fr; }
}

/* Keep Customer/Supplier AMD actions visible when the page header is narrow. */
.section-head .toolbar-actions,
.module-browser-hero .toolbar-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
}

@media (max-width: 980px) {
  .section-head,
  .module-browser-hero {
    flex-direction: column;
    gap: 14px;
  }

  .section-head .toolbar-actions,
  .module-browser-hero .toolbar-actions {
    width: 100%;
    justify-content: flex-start;
  }
}

.sidebar-visibility-toggle {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  color: #53626a;
  cursor: pointer;
}

.sidebar-visibility-toggle:hover {
  border-color: #9ed7cd;
  background: #f4f8f8;
  color: var(--teal-dark);
}

.sidebar-visibility-toggle:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--teal) 24%, transparent);
  outline-offset: 2px;
}

.sidebar-visibility-toggle svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

@media (min-width: 761px) {
  .shell {
    transition: grid-template-columns .2s ease;
  }

  .sidebar {
    transition: width .2s ease, transform .2s ease, opacity .15s ease;
  }

  html[data-sidebar-hidden="true"] .shell {
    grid-template-columns: 0 1fr;
  }

  html[data-sidebar-hidden="true"] .sidebar {
    transform: translateX(-100%);
    opacity: 0;
    pointer-events: none;
  }
}

@media (max-width: 760px) {
  .sidebar-visibility-toggle {
    display: none;
  }

}

@media (prefers-reduced-motion: reduce) {
  .shell,
  .sidebar {
    transition: none;
  }
}

/* A compact history icon opens recent pages vertically on hover, focus or click. */
.recent-pages-menu {
  position: relative;
}

.recent-pages-trigger {
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  color: #53626a;
  display: inline-grid;
  place-items: center;
  cursor: pointer;
}

.recent-pages-trigger svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

.recent-pages-trigger:hover,
.recent-pages-menu.open .recent-pages-trigger {
  border-color: #9ed7cd;
  background: #f4f8f8;
  color: var(--teal-dark);
}

.recent-pages-trigger:focus-visible,
.recent-page-item:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--teal) 24%, transparent);
  outline-offset: 2px;
}

.recent-pages-popover {
  position: absolute;
  top: calc(100% + 9px);
  left: 0;
  width: 240px;
  max-height: min(520px, calc(100vh - 110px));
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 16px 38px rgba(20, 42, 45, .16);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-5px);
  pointer-events: none;
  z-index: 8;
  transition: opacity .14s ease, transform .14s ease, visibility .14s;
}

.recent-pages-menu:hover .recent-pages-popover,
.recent-pages-menu:focus-within .recent-pages-popover,
.recent-pages-menu.open .recent-pages-popover {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}

.recent-pages-head {
  padding: 2px 4px 11px;
  border-bottom: 1px solid var(--line);
}

.recent-pages-head span {
  color: #8a969b;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1.25px;
}

.recent-pages-head h2 {
  margin: 3px 0 0;
  color: #26363c;
  font: 700 15px Manrope, sans-serif;
}

.recent-pages-tabs {
  margin-top: 10px;
  padding: 3px;
  border-radius: 8px;
  background: #f2f6f5;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3px;
}

.recent-pages-tabs button {
  padding: 6px 8px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #718086;
  font: 700 10px Manrope, sans-serif;
  cursor: pointer;
}

.recent-pages-tabs button.active {
  background: #fff;
  color: var(--teal-dark);
  box-shadow: 0 1px 4px rgba(20, 42, 45, .12);
}

.recent-pages-tabs button:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--teal) 35%, transparent);
  outline-offset: 1px;
}

.recent-pages-list {
  min-height: 0;
  padding: 8px 0 0;
  display: grid;
  align-content: start;
  gap: 4px;
  overflow-y: auto;
}

.recent-page-item {
  width: 100%;
  padding: 10px 11px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: transparent;
  color: #34444b;
  display: grid;
  gap: 3px;
  text-align: left;
  cursor: pointer;
}

.recent-page-item span {
  overflow: hidden;
  font-size: 12px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.recent-page-item small {
  color: #8a959a;
  font-size: 9px;
}

.recent-page-item:hover {
  border-color: #d8ebe7;
  background: #f7fbfa;
}

.recent-page-item.active {
  border-color: #cbe8e2;
  background: #eaf7f3;
  color: var(--teal-dark);
}

.recent-pages-empty {
  margin: 8px 6px;
  color: #879298;
  font-size: 11px;
  line-height: 1.55;
}

@media (max-width: 760px) {
  .recent-pages-popover {
    position: fixed;
    top: 72px;
    left: 10px;
    width: min(280px, calc(100vw - 20px));
    max-height: calc(100vh - 84px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .recent-pages-popover {
    transition: none;
  }
}

/* Persistent workspace footer and discoverable billing shortcuts. */
main {
  display: flex;
  min-height: 100vh;
  flex-direction: column;
}

.workspace-tabs {
  min-height: 42px;
  display: flex;
  align-items: end;
  gap: 4px;
  overflow-x: auto;
  padding: 7px 38px 0;
  background: #f2f5f5;
  border-bottom: 1px solid var(--line);
  scrollbar-width: thin;
}

.workspace-tabs[hidden] { display: none; }
.workspace-tab { flex: 0 1 210px; min-width: 112px; max-width: 210px; display: flex; align-items: center; border: 1px solid #dce3e3; border-bottom: 0; border-radius: 8px 8px 0 0; background: #e8eeee; color: #5c696f; }
.workspace-tab.active { background: var(--paper); color: var(--ink); box-shadow: 0 -2px 8px rgba(26,44,47,.04); }
.workspace-tab-open { min-width: 0; flex: 1; height: 34px; display: flex; align-items: center; gap: 7px; padding: 0 4px 0 12px; border: 0; background: transparent; color: inherit; font: 700 11px 'DM Sans'; cursor: pointer; }
.workspace-tab-open span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.workspace-tab-open i { color: var(--orange); font-size: 8px; font-style: normal; }
.workspace-tab-close { flex: none; width: 28px; height: 28px; border: 0; border-radius: 50%; background: transparent; color: #7d898e; font-size: 17px; cursor: pointer; }
.workspace-tab-close:hover { background: #dbe3e3; color: #243239; }
.workspace-tab.active .workspace-tab-close:hover { background: #edf1f1; }
.workspace-tab-open:focus-visible,.workspace-tab-close:focus-visible { outline: 2px solid var(--teal); outline-offset: -2px; }

.app-content {
  width: 100%;
  flex: 1 0 auto;
}

@media(max-width:760px){.workspace-tabs{padding-left:18px;padding-right:18px}.workspace-tab{flex-basis:170px}}

.workspace-footer {
  position: sticky;
  z-index: 3;
  bottom: 0;
  display: flex;
  min-height: 42px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 6px 38px;
  border-top: 1px solid var(--line);
  background: color-mix(in srgb, var(--paper) 94%, transparent);
  box-shadow: 0 -8px 24px rgba(22, 43, 45, .05);
  backdrop-filter: blur(12px);
}

.workspace-footer[hidden] {
  display: none;
}

.workspace-footer-context {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 8px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

.workspace-footer-context span:last-child {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.workspace-footer-status {
  width: 7px;
  height: 7px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: var(--teal);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--teal) 14%, transparent);
}

.workspace-footer-shortcuts {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 5px;
  flex-wrap: wrap;
}

.workspace-footer-shortcuts button {
  display: inline-flex;
  height: 28px;
  align-items: center;
  gap: 4px;
  padding: 0 7px;
  border: 1px solid transparent;
  border-radius: 6px;
  background: transparent;
  color: var(--muted);
  font: 600 10px 'DM Sans', sans-serif;
  cursor: pointer;
}

.workspace-footer-shortcuts button:hover,
.workspace-footer-shortcuts button[aria-expanded="true"] {
  border-color: var(--line);
  background: var(--ground);
  color: var(--ink);
}

.workspace-footer-shortcuts button:disabled {
  cursor: default;
  opacity: .45;
}

.workspace-footer-shortcuts kbd,
.workspace-shortcut-panel kbd {
  min-width: 20px;
  padding: 2px 5px;
  border: 1px solid #ccd5d6;
  border-bottom-width: 2px;
  border-radius: 4px;
  background: var(--paper);
  color: var(--ink);
  font: 700 9px 'DM Sans', sans-serif;
  text-align: center;
  box-shadow: none;
}

.footer-key-set,
.shortcut-key-set {
  display: inline-flex;
  align-items: center;
  gap: 3px;
}

.shortcut-key-set {
  min-width: 116px;
  flex-wrap: wrap;
}

.shortcut-key-set i {
  color: var(--muted);
  font-size: 9px;
  font-style: normal;
}

.workspace-footer kbd[data-key-tone="f2"],
.workspace-shortcut-panel kbd[data-key-tone="f2"] { border-color: #7dd3fc; background: #e0f2fe; color: #075985; }
.workspace-footer kbd[data-key-tone="f5"],
.workspace-shortcut-panel kbd[data-key-tone="f5"] { border-color: #fbbf24; background: #fef3c7; color: #92400e; }
.workspace-footer kbd[data-key-tone="f6"],
.workspace-shortcut-panel kbd[data-key-tone="f6"] { border-color: #67e8f9; background: #cffafe; color: #155e75; }
.workspace-footer kbd[data-key-tone="f7"],
.workspace-shortcut-panel kbd[data-key-tone="f7"] { border-color: #86efac; background: #dcfce7; color: #166534; }
.workspace-footer kbd[data-key-tone="f8"],
.workspace-shortcut-panel kbd[data-key-tone="f8"] { border-color: #6ee7b7; background: #d1fae5; color: #047857; }
.workspace-footer kbd[data-key-tone="f9"],
.workspace-shortcut-panel kbd[data-key-tone="f9"] { border-color: #c4b5fd; background: #ede9fe; color: #6d28d9; }
.workspace-footer kbd[data-key-tone="create"],
.workspace-shortcut-panel kbd[data-key-tone="create"] { border-color: #93c5fd; background: #dbeafe; color: #1d4ed8; }
.workspace-footer kbd[data-key-tone="find"],
.workspace-shortcut-panel kbd[data-key-tone="find"] { border-color: #fdba74; background: #ffedd5; color: #9a3412; }
.workspace-footer kbd[data-key-tone="navigation"],
.workspace-shortcut-panel kbd[data-key-tone="navigation"] { border-color: #cbd5e1; background: #f1f5f9; color: #475569; }

.workspace-footer-shortcuts b {
  margin-left: 2px;
  font: inherit;
}

.workspace-shortcut-panel {
  position: absolute;
  right: 38px;
  bottom: calc(100% + 8px);
  width: min(410px, calc(100vw - 48px));
  max-height: min(560px, calc(100vh - 140px));
  overflow: auto;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--paper);
  box-shadow: 0 18px 50px rgba(17, 41, 44, .18);
}

.workspace-shortcut-panel[hidden] {
  display: none;
}

.workspace-shortcut-panel > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 5px 6px 10px;
  border-bottom: 1px solid var(--line);
}

.workspace-shortcut-panel > header div {
  display: grid;
  gap: 2px;
}

.workspace-shortcut-panel > header strong {
  color: var(--ink);
  font: 700 12px Manrope, sans-serif;
}

.workspace-shortcut-panel > header small {
  color: var(--muted);
  font-size: 9px;
}

.workspace-shortcut-panel > header > button {
  width: 26px;
  height: 26px;
  border: 0;
  border-radius: 50%;
  background: var(--ground);
  color: var(--muted);
  cursor: pointer;
}

.workspace-shortcut-actions {
  display: grid;
  gap: 3px;
  padding-top: 7px;
}

.workspace-shortcut-actions button {
  display: grid;
  min-height: 36px;
  grid-template-columns: minmax(116px, auto) auto minmax(0, 1fr);
  align-items: center;
  gap: 7px;
  padding: 7px 8px;
  border: 1px solid transparent;
  border-radius: 7px;
  background: transparent;
  color: var(--ink);
  text-align: left;
  cursor: pointer;
}

.workspace-shortcut-actions button:hover,
.workspace-shortcut-actions button:focus-visible {
  border-color: color-mix(in srgb, var(--teal) 24%, var(--line));
  background: color-mix(in srgb, var(--teal) 7%, var(--paper));
  outline: none;
}

.workspace-shortcut-actions button:disabled {
  opacity: .48;
  cursor: not-allowed;
}

.workspace-shortcut-actions button:disabled:hover {
  border-color: transparent;
  background: transparent;
}

.workspace-shortcut-actions button b {
  overflow: hidden;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.workspace-shortcut-actions .shortcut-action-separator {
  color: var(--muted);
  font-size: 10px;
}

.workspace-shortcut-actions button kbd {
  min-width: 76px;
  color: var(--teal-dark);
}

@media (max-width: 760px) {
  .workspace-footer {
    position: static;
    padding: 9px 18px max(9px, env(safe-area-inset-bottom));
  }

  .workspace-footer-shortcuts button:not(.workspace-shortcuts-toggle) {
    display: none;
  }

  .workspace-shortcut-panel {
    right: 12px;
    bottom: calc(100% + 6px);
    width: calc(100vw - 24px);
    max-height: min(520px, 70vh);
    overflow: auto;
  }
}

/* Purchase module landing page: high-contrast black workspace. */
main:has(> #app[data-view="purchase"]) {
  background: #000;
}

#app[data-view="purchase"] {
  min-height: calc(100vh - 90px);
  background: #000;
  color: #fff;
}

#app[data-view="purchase"] .module-browser-hero {
  border-color: #292929;
  background: #000;
  box-shadow: none;
}

#app[data-view="purchase"] .module-browser-hero h2,
#app[data-view="purchase"] .module-browser-group h3,
#app[data-view="purchase"] .module-browser-item {
  color: #fff;
}

#app[data-view="purchase"] .module-browser-hero p,
#app[data-view="purchase"] .module-browser-group p,
#app[data-view="purchase"] .module-browser-item small {
  color: #a9a9a9;
}

#app[data-view="purchase"] .module-browser-group {
  border-color: #292929;
  background: #080808;
  box-shadow: 0 10px 24px rgba(0, 0, 0, .34);
}

#app[data-view="purchase"] .module-browser-group > header {
  border-bottom-color: #292929;
  background: #111;
}

#app[data-view="purchase"] .module-browser-group > header > span {
  background: #1d1d1d;
  color: #70e6d3;
}

#app[data-view="purchase"] .module-browser-item {
  border-bottom-color: #242424;
}

#app[data-view="purchase"] .module-browser-item:hover,
#app[data-view="purchase"] .module-browser-item:focus-visible {
  background: #181818;
  box-shadow: inset 3px 0 #55d9c3;
}

#app[data-view="purchase"] .module-browser-eyebrow,
#app[data-view="purchase"] .module-browser-item em {
  color: #70e6d3;
}

@media (max-width: 760px) {
  #app[data-view="purchase"] {
    min-height: calc(100vh - 75px);
  }
}
/* Hospital EMR */
.emr-workspace,.emr-chart{display:grid;gap:18px;min-width:0;max-width:100%}.emr-head{align-items:flex-end}.emr-metrics .metric{appearance:none;text-align:left;cursor:pointer;width:100%;font:inherit}.emr-metrics .metric:hover,.emr-metrics .metric:focus-visible{border-color:#55a58e;box-shadow:0 0 0 3px rgba(43,139,112,.12)}.emr-home-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);gap:18px;min-width:0}.emr-queue,.emr-patients{min-width:0}.emr-queue-list,.emr-patient-list{display:grid;gap:8px;margin-top:14px}.emr-queue-item{display:grid;grid-template-columns:46px minmax(180px,1fr) minmax(110px,.35fr) auto;gap:12px;align-items:center;width:100%;border:1px solid #e5ece9;background:#fff;border-radius:12px;padding:11px 12px;text-align:left;color:inherit;cursor:pointer}.emr-queue-item:hover,.emr-queue-item:focus-visible{border-color:#4d9c85;background:#f7fcfa}.emr-queue-item span{min-width:0}.emr-queue-item b,.emr-queue-item small,.emr-patient-list b,.emr-patient-list small{display:block}.emr-queue-item small,.emr-patient-list small{color:#697872;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.emr-token,.emr-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#e4f4ef;color:#176c57;font-weight:800}.emr-patient-list article{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #edf1ef}.emr-search{display:flex;gap:8px;margin:14px 0}.emr-search input{min-width:0;flex:1}.emr-patient-banner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;min-width:0;padding:18px 20px;border:1px solid #dce8e4;border-radius:16px;background:linear-gradient(135deg,#f8fcfb,#edf8f4)}.emr-patient-banner>div{min-width:0}.emr-patient-banner .emr-avatar{width:52px;height:52px;border-radius:16px;font-size:18px}.emr-patient-banner h2{margin:3px 0;font-size:22px;overflow-wrap:anywhere}.emr-patient-banner p,.emr-patient-banner span{margin:0;color:#64736d;font-size:13px;overflow-wrap:anywhere}.emr-chart-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start;min-width:0}.emr-note-form{display:grid;gap:14px;min-width:0}.emr-note-form>fieldset{border:0;padding:0;margin:0;display:grid;gap:14px;min-width:0}.emr-chart-section{min-width:0;max-width:100%;border:1px solid #e1e9e6;background:#fff;border-radius:15px;padding:16px}.emr-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.emr-section-head h3{margin:0}.emr-section-head small{display:block;color:#6d7b76;margin-top:3px}.emr-vitals-grid{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:10px}.emr-vitals-grid label,.emr-repeat-row label{display:grid;gap:5px;min-width:0;color:#63716c;font-size:12px;font-weight:700}.emr-vitals-grid input,.emr-repeat-row input{width:100%;min-width:0}.emr-notes-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-width:0}.emr-notes-grid label{display:grid;gap:6px;min-width:0;font-weight:700}.emr-notes-grid textarea{width:100%;min-width:0;resize:vertical;min-height:105px}.emr-repeat-list{display:grid;gap:8px;min-width:0}.emr-repeat-row{display:flex;gap:8px;align-items:flex-end;min-width:0;padding:10px;border-radius:11px;background:#f7faf9}.emr-repeat-row label{flex:1}.emr-row-remove{width:36px;height:36px;border:0;border-radius:9px;background:#fff0f0;color:#a23c3c;font-size:20px;cursor:pointer}.emr-chart-actions{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;background:linear-gradient(transparent,#f4f7f6 22%)}.emr-history{position:sticky;top:16px;min-width:0;border:1px solid #e1e9e6;background:#fff;border-radius:15px;padding:15px;max-height:calc(100vh - 150px);overflow:auto}.emr-history-item{display:grid;gap:4px;width:100%;text-align:left;border:0;border-left:3px solid transparent;background:transparent;padding:11px;color:inherit;cursor:pointer}.emr-history-item+ .emr-history-item{border-top:1px solid #edf1ef}.emr-history-item.active{border-left-color:#238468;background:#f1faf7}.emr-history-item span,.emr-history-item small{color:#6b7974;font-size:12px}.emr-history-item b{font-size:13px}.emr-form-error{color:#b83b3b}.emr-note-form fieldset:disabled .emr-chart-section{background:#fafcfb}.emr-note-form fieldset:disabled input,.emr-note-form fieldset:disabled textarea,.emr-note-form fieldset:disabled select{color:#43504c;opacity:1}
.emr-charge-table{overflow:auto}.emr-charge-table table{width:100%;border-collapse:collapse}.emr-charge-table th,.emr-charge-table td{padding:10px 8px;border-bottom:1px solid #e8efec;text-align:right;white-space:nowrap}.emr-charge-table th:first-child,.emr-charge-table td:first-child{text-align:left;white-space:normal;min-width:180px}.emr-charge-table small{display:block;color:#697872;margin-top:3px}.emr-billing-total,.emr-billing-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px}.emr-billing-total strong{font-size:22px;color:#176c57}.emr-billing-actions small{color:#697872;text-align:right}.emr-invoice-note{margin-top:14px;padding:12px;border-radius:10px;background:#eef8f4;color:#315e51;font-size:13px;line-height:1.5}
@media(max-width:1050px){.emr-home-grid,.emr-chart-layout{grid-template-columns:1fr}.emr-history{position:static;max-height:none}.emr-vitals-grid{grid-template-columns:repeat(2,minmax(110px,1fr))}}
@media(max-width:680px){#app[data-view="hospital-emr"]{min-width:0;overflow-x:clip}.emr-head{align-items:stretch}.emr-home-grid{display:block}.emr-patients{margin-top:14px}.emr-queue-item{grid-template-columns:38px minmax(0,1fr) auto}.emr-queue-item>span:nth-child(3){display:none}.emr-patient-banner{grid-template-columns:auto minmax(0,1fr)}.emr-patient-banner>.status{grid-column:1/-1;justify-self:start}.emr-notes-grid,.emr-vitals-grid{grid-template-columns:minmax(0,1fr)}.emr-repeat-row{display:grid;grid-template-columns:minmax(0,1fr)}.emr-row-remove{justify-self:end}.emr-chart-actions{flex-wrap:wrap}.emr-chart-actions .primary-btn{flex:1}.emr-search{flex-wrap:wrap}.emr-search input{flex-basis:100%}.emr-charge-table{max-width:100%;overscroll-behavior-inline:contain}.emr-billing-total,.emr-billing-actions{align-items:flex-start;flex-direction:column}.emr-billing-actions small{text-align:left}}

/* Governed Global Product Catalogue industry-code creation */
.global-industry-code-form{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(150px,1fr) minmax(170px,1fr) minmax(180px,1fr) auto;gap:12px;align-items:end;margin:0 18px 18px;padding:16px;border:1px solid #dbe7e3;border-radius:14px;background:var(--surface-muted,#f7faf9)}.global-industry-code-form>div,.global-industry-code-form label{display:grid;gap:5px}.global-industry-code-form>div span{font-size:12px;color:#60716d}.global-industry-code-form input,.global-industry-code-form select{width:100%}.global-industry-code-form .form-error{grid-column:1/-1;margin:0}@media(max-width:1050px){.global-industry-code-form{grid-template-columns:1fr 1fr}.global-industry-code-form>div{grid-column:1/-1}}@media(max-width:640px){.global-catalogue-assurance{display:grid}.global-industry-code-form{grid-template-columns:1fr}.global-industry-code-form>div{grid-column:auto}}

.invoice-modal { width: min(900px, 100%); }
.invoice-paper { width: min(1120px, 100%); min-width: 0; margin: 0 auto; padding: 30px 34px; background: #fff; }

/* Invoice viewing is a workspace page beside the application sidebar, not a popup. */
.modal-backdrop:has(.invoice-modal) {
  inset: 90px 0 0 252px;
  display: block;
  overflow: auto;
  padding: 24px 38px 38px;
  background: var(--ground);
}
.modal-backdrop:has(.invoice-modal) .invoice-modal {
  width: 100%;
  max-height: none;
  overflow: visible;
  border: 1px solid var(--line);
  border-radius: 12px;
  box-shadow: 0 8px 30px rgba(26,44,47,.09);
}
.modal-backdrop:has(.invoice-modal) .invoice-modal > .modal-head {
  position: sticky;
  top: -24px;
  z-index: 8;
  border-radius: 12px 12px 0 0;
  background: rgba(255,255,255,.97);
  box-shadow: 0 5px 18px rgba(26,44,47,.06);
  backdrop-filter: blur(8px);
}
.modal-backdrop:has(.invoice-modal) .invoice-modal > .modal-foot {
  position: sticky;
  bottom: -38px;
  z-index: 8;
  gap: 16px;
  border-radius: 0 0 12px 12px;
  background: rgba(255,255,255,.98);
  box-shadow: 0 -7px 22px rgba(26,44,47,.07);
  backdrop-filter: blur(8px);
}
.modal-backdrop:has(.invoice-modal) .invoice-modal > .modal-foot > div {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: flex-end;
  gap: 8px;
}
#app:has(> .invoice-preview-page) { max-width: none; padding: 24px 38px 42px; }
.invoice-preview-page.invoice-modal {
  width: 100%;
  min-width: 0;
  max-height: none;
  overflow: visible;
  border: 1px solid var(--line);
  border-radius: 12px;
  box-shadow: 0 8px 30px rgba(26,44,47,.09);
}
.invoice-preview-page > .modal-head {
  border-radius: 12px 12px 0 0;
  background: #fff;
}
.invoice-preview-page > .modal-foot {
  position: sticky;
  bottom: 0;
  z-index: 8;
  gap: 16px;
  border-radius: 0 0 12px 12px;
  background: rgba(255,255,255,.98);
  box-shadow: 0 -7px 22px rgba(26,44,47,.07);
  backdrop-filter: blur(8px);
}
.invoice-preview-page > .modal-foot > div { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: flex-end; gap: 8px; }
.invoice-company { display: flex; justify-content: space-between; gap: 30px; padding-bottom: 20px; border-bottom: 2px solid #17212b; }
.invoice-company > div:last-child { text-align: right; }
.invoice-company h2 { margin: 0 0 6px; font: 800 23px Manrope, sans-serif; }
.invoice-company p { margin: 3px 0; color: #5e6a72; font-size: 11px; }
.invoice-company b { font: 800 18px Manrope, sans-serif; }
.invoice-party { display: grid; gap: 4px; padding: 18px 0; }
.invoice-party small { font-size: 9px; letter-spacing: 1px; color: #7d878d; }
.invoice-party b { font: 700 14px Manrope, sans-serif; }
.invoice-party span { font-size: 11px; color: #657179; }
.invoice-summary { width: 320px; margin: 18px 0 0 auto; }
.invoice-summary p { display: flex; justify-content: space-between; margin: 0; padding: 7px 3px; border-bottom: 1px solid #edf0f1; color: #5d6970; font-size: 12px; }
.invoice-summary .grand { font-size: 15px; color: #17212b; border-top: 2px solid #17212b; border-bottom: 2px solid #17212b; margin-top: 5px; }
.invoice-note { margin-top: 28px; padding-top: 12px; border-top: 1px solid #e8ecef; color: #778188; font-size: 10px; text-align: center; }
.invoice-signature { margin: 34px 0 0 auto; width: 210px; padding-top: 26px; border-top: 1px solid #9fa9ad; display: grid; gap: 4px; text-align: center; font-size: 10px; color: #69757c; }
.invoice-signature b { color: #26343a; }
.invoice-whatsapp-template { display: inline-grid; gap: 3px; min-width: 220px; margin: 0 4px; text-align: left; vertical-align: middle; }
.invoice-whatsapp-template span { color: #667085; font-size: 9px; font-weight: 700; }
.invoice-whatsapp-template select { min-height: 34px; max-width: 310px; padding: 6px 28px 6px 9px; border: 1px solid #d0d5dd; border-radius: 7px; background: #fff; font-size: 10px; }
.invoice-whatsapp-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.invoice-whatsapp-choice { display: inline-flex; align-items: center; gap: 6px; }
.invoice-whatsapp-choice label { display: inline-flex; align-items: center; gap: 4px; color: #344054; font-size: 9px; white-space: nowrap; }
.invoice-whatsapp-choice input { margin: 0; }
.invoice-whatsapp-default { padding: 2px 7px; border: 1px solid #d0d5dd; border-radius: 999px; background: #fff; color: #344054; font-size: 9px; font-weight: 700; cursor: pointer; }
.invoice-whatsapp-default:disabled { cursor: not-allowed; opacity: .5; }
.invoice-delivery-choice { display: grid; gap: 10px; margin-top: 14px; padding: 12px; border: 1px solid #d7e4df; border-radius: 10px; background: #f8fbfa; }
.invoice-delivery-heading, .invoice-delivery-heading > span { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.invoice-delivery-heading label { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; }
.invoice-delivery-heading button { min-height: 28px; padding: 4px 10px; }
.invoice-delivery-fields { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 10px; }
.invoice-delivery-fields label { display: grid; gap: 4px; color: #475467; font-size: 10px; font-weight: 700; }
.invoice-delivery-fields select { width: 100%; min-width: 0; }
.invoice-delivery-choice > small { color: #667085; line-height: 1.4; }
.branded-invoice-modal { width: min(980px, 100%); }
.invoice-print-chooser { position: fixed; inset: 0; z-index: 1200; display: grid; place-items: center; padding: 20px; background: rgba(15,31,28,.58); backdrop-filter: blur(3px); }
.invoice-print-chooser > section { width: min(680px,100%); overflow: hidden; border: 1px solid #d8e3df; border-radius: 16px; background: #fff; box-shadow: 0 24px 70px rgba(11,35,29,.28); }
.invoice-format-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; padding: 18px 22px 10px; }
.invoice-format-option { position: relative; cursor: pointer; }
.invoice-format-option input { position: absolute; opacity: 0; pointer-events: none; }
.invoice-format-option span { display: grid; min-height: 82px; align-content: center; gap: 4px; padding: 14px 16px; border: 1px solid #d8e3df; border-radius: 12px; background: #fff; transition: .15s ease; }
.invoice-format-option b { color: #203b34; font-size: 13px; }
.invoice-format-option small { color: #73817d; line-height: 1.35; }
.invoice-format-option em { width: max-content; padding: 2px 7px; border-radius: 999px; color: #315f51; background: #e4f2ed; font-size: 9px; font-style: normal; font-weight: 700; }
.invoice-format-option input:checked + span { border-color: #3e8a74; background: #f2faf7; box-shadow: 0 0 0 2px rgba(62,138,116,.15); }
.invoice-format-option input:focus-visible + span { outline: 2px solid #246b59; outline-offset: 2px; }
.invoice-save-default { display: flex; align-items: center; gap: 9px; margin: 8px 22px 18px; color: #42514d; font-size: 12px; font-weight: 650; }
.invoice-print-chooser .form-error { min-height: 0; padding: 0 22px; }
.invoice-print-chooser .modal-foot { border-radius: 0; }
.branded-invoice { --invoice-ink:#26345e; --invoice-gold:#d6b24c; --invoice-green:#A9D18E; position: relative; min-height: 1120px; margin: 0 auto; padding: 34px 38px 24px; border: 2px solid var(--invoice-gold); color: var(--invoice-ink); font-family: "DM Sans", sans-serif; }
.invoice-corner { position: absolute; width: 26px; height: 26px; pointer-events: none; }
.invoice-corner::before,.invoice-corner::after { content:""; position:absolute; border-color:var(--invoice-gold); }
.invoice-corner::before { inset: 0; border-top: 2px solid var(--invoice-gold); border-left: 2px solid var(--invoice-gold); border-radius: 10px 0 0; }
.invoice-corner::after { inset: 7px; border-top: 1px solid var(--invoice-gold); border-left: 1px solid var(--invoice-gold); border-radius: 6px 0 0; }
.invoice-corner.top-left { top: 8px; left: 8px; }
.invoice-corner.top-right { top: 8px; right: 8px; transform: rotate(90deg); }
.invoice-corner.bottom-right { right: 8px; bottom: 8px; transform: rotate(180deg); }
.invoice-corner.bottom-left { left: 8px; bottom: 8px; transform: rotate(270deg); }
.branded-invoice-head { display: grid; grid-template-columns: 138px minmax(0,1fr) 200px; gap: 22px; align-items: start; min-height: 180px; padding: 12px 8px 24px; border-bottom: 1px solid var(--invoice-gold); }
.invoice-logo-box { display: grid; place-items: center; width: 138px; height: 138px; overflow: hidden; border-radius: 10px; background: #f8f5ea; color: var(--invoice-ink); font: 800 34px Manrope,sans-serif; }
.invoice-logo-box img { width: 100%; height: 100%; object-fit: contain; background: #fff; }
.invoice-business h2 { margin: 4px 0 4px; color: var(--invoice-ink); font: 800 27px/1.12 Manrope,sans-serif; letter-spacing: .4px; text-transform: uppercase; }
.invoice-business p { margin: 5px 0; color: #4d5876; font-size: 11px; line-height: 1.45; }
.invoice-business .invoice-tagline { margin-bottom: 16px; color: var(--invoice-ink); font-size: 13px; }
.invoice-title { display: grid; justify-items: end; gap: 9px; padding-top: 8px; text-align: right; }
.invoice-title b { font: 800 20px Manrope,sans-serif; }
.invoice-title span { padding: 5px 10px; border: 1px solid #7d8499; border-radius: 2px; color: #71788c; font-size: 9px; letter-spacing: .7px; }
.branded-invoice-meta { display: flex; gap: 56px; padding: 18px 8px; border-bottom: 1px solid var(--invoice-gold); }
.branded-invoice-meta div { display: grid; gap: 5px; }
.branded-invoice-meta small,.branded-bill-to small { font-size: 10px; font-weight: 700; }
.branded-invoice-meta b { font-size: 12px; }
.branded-bill-to { display: grid; gap: 4px; min-height: 106px; padding: 24px 8px 18px; }
.branded-bill-to b { font: 700 16px Manrope,sans-serif; text-transform: uppercase; }
.branded-bill-to span { color: #4d5876; font-size: 11px; line-height: 1.4; }
.branded-item-table { width: 100%; border-collapse: collapse; color: var(--invoice-ink); }
.branded-item-table th { padding: 11px 8px; border: 0; background: var(--invoice-green); font-size: 10px; text-align: right; }
.branded-item-table th:nth-child(2) { text-align: left; }
.branded-item-table td { padding: 12px 8px; border: 0; border-bottom: 1px solid #edf0e9; color: #344160; font-size: 10px; text-align: right; vertical-align: top; }
.branded-item-table td:nth-child(2) { width: 31%; text-align: left; }
.branded-item-table tbody tr { height: 46px; }
.branded-item-table tfoot td { padding-block: 12px; border: 0; background: var(--invoice-green); font-size: 11px; }
.branded-invoice-bottom { display: grid; grid-template-columns: 1.08fr .92fr; gap: 34px; padding: 28px 8px 0; }
.invoice-payment-block h4 { margin: 0 0 10px; font-size: 12px; }
.invoice-payment-block dl { display: grid; grid-template-columns: 90px 1fr; gap: 6px 10px; margin: 0; font-size: 10px; }
.invoice-payment-block dt { font-weight: 700; }
.invoice-payment-block dd { margin: 0; color: #58637d; overflow-wrap: anywhere; }
.invoice-qr-row { display: flex; gap: 14px; align-items: center; margin-top: 24px; }
.invoice-qr-row img,.invoice-qr-empty { width: 102px; height: 102px; padding: 6px; border: 1px solid var(--invoice-gold); border-radius: 8px; object-fit: contain; }
.invoice-qr-empty { display: grid; place-items: center; color: #98a0b0; font-weight: 800; }
.invoice-qr-row > div:last-child { display: grid; gap: 5px; }
.invoice-qr-row b { font-size: 13px; }
.invoice-qr-row span { color: #59647d; font-size: 10px; }
.invoice-total-lines { padding-top: 3px; border-top: 1px solid var(--invoice-gold); }
.invoice-total-lines p { display: flex; justify-content: space-between; margin: 0; padding: 7px 2px; border-bottom: 1px solid #e4e1d8; color: #59647d; font-size: 10px; }
.invoice-total-lines .grand { color: var(--invoice-ink); font-size: 14px; }
.invoice-amount-words { display: grid; gap: 6px; margin-top: 18px; }
.invoice-amount-words b { font-size: 11px; }
.invoice-amount-words span { color: #59647d; font-size: 10px; line-height: 1.45; }
.invoice-signature-panel { display: grid; justify-items: center; min-height: 130px; margin-top: 22px; padding: 15px; border: 1px solid var(--invoice-gold); border-radius: 12px; text-align: center; }
.invoice-signature-panel img { width: 130px; height: 64px; object-fit: contain; }
.invoice-signature-panel .signature-line { width: 130px; height: 58px; border-bottom: 1px solid #b3b7c1; }
.invoice-signature-panel b { margin-top: 5px; font-size: 10px; }
.invoice-signature-panel span { margin-top: 4px; color: #59647d; font-size: 10px; text-transform: uppercase; }
.invoice-document-footer { margin-top: 22px; padding-top: 8px; border-top: 1px solid #eee9dc; color: #8a8fa0; font-size: 8px; text-align: center; }
.invoice-branding-master { margin-top: 8px; padding: 16px; border: 1px solid #dfe7e4; border-radius: 12px; background: #f8fbfa; }
.invoice-branding-title { display: flex; justify-content: space-between; align-items: start; gap: 12px; margin-bottom: 15px; }
.invoice-branding-title h4 { margin: 0 0 4px; font: 750 13px Manrope,sans-serif; }
.invoice-branding-title span { padding: 4px 8px; border-radius: 999px; color: #136f60; background: #e1f3ed; font-size: 8px; font-weight: 700; }
.invoice-asset-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin-top: 15px; }
.invoice-asset-field { display: grid; gap: 7px; padding: 11px; border: 1px solid #dfe7e4; border-radius: 9px; background: #fff; }
.invoice-asset-field > label:first-child { font-size: 9px; font-weight: 700; }
.invoice-asset-preview,.invoice-asset-empty { width: 100%; height: 90px; border-radius: 6px; object-fit: contain; background: #f4f6f5; }
.invoice-asset-empty { display: grid; place-items: center; color: #8b9692; font-size: 9px; }
.invoice-clear-choice { display: flex; gap: 6px; align-items: center; color: #69746f; font-size: 9px; }
.invoice-master-note { margin: 10px 0 0; color: #7a8581; font-size: 9px; }
.automation-strip { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; padding: 10px 12px; border: 1px solid #bfe5da; border-radius: 8px; background: #effaf6; color: #45635d; font-size: 11px; }
.automation-strip b { padding: 4px 8px; border-radius: 10px; background: #daf3eb; color: #087864; font-size: 10px; text-transform: uppercase; letter-spacing: .5px; }
.barcode-label { width: 64mm; min-height: 34mm; margin: 0 auto; padding: 4mm; display: grid; justify-items: center; align-content: center; gap: 2px; border: 1px dashed #aeb8bc; background: #fff; color: #111; text-align: center; }
.barcode-label b { max-width: 100%; overflow: hidden; font: 700 12px Manrope, sans-serif; white-space: nowrap; text-overflow: ellipsis; }
.barcode-label small { font-size: 9px; color: #40494d; }
.barcode-label img { display: block; width: 58mm; height: 22mm; object-fit: contain; }
.barcode-label span { font: 600 9px monospace; letter-spacing: 1px; }
.barcode-action { padding: 4px 8px; }

.document-entry-modal { --entry-color: #008d7b; --entry-deep: #05695d; --entry-soft: #e8f8f3; --entry-line: #9bd3c8; position: relative; width: min(1180px, 100%); max-height: min(94vh, 980px); transition: width .18s ease; }
.app-content:has(> .document-entry-page) { max-width: none; padding: 20px 24px 34px; }
.document-entry-page.document-entry-modal { width: 100%; max-height: none; overflow: visible; border: 1px solid #dce5e3; border-radius: 14px; background: #fff; box-shadow: 0 10px 34px rgba(25,52,47,.08); }
.document-entry-page.purchase-entry-modal { min-height: 100%; }
body:has(#app[data-view="purchase-entry"]) { height: 100dvh; overflow: hidden; background: #dff2f7; }
body:has(#app[data-view="purchase-entry"]) .shell { width: 100%; height: 100dvh; min-height: 0; grid-template-columns: 1fr; }
body:has(#app[data-view="purchase-entry"]) .sidebar, body:has(#app[data-view="purchase-entry"]) .topbar, body:has(#app[data-view="purchase-entry"]) .workspace-tabs { display: none; }
body:has(#app[data-view="purchase-entry"]) main { display: flex; height: 100dvh; min-width: 0; min-height: 0; grid-column: 1; flex-direction: column; overflow: hidden; }
#app[data-view="purchase-entry"] { width: 100%; min-height: 0; max-width: none; flex: 1 1 0; padding: 0; overflow: auto; overscroll-behavior: contain; }
#app[data-view="purchase-entry"] > .document-entry-page { min-height: 100%; border: 0; border-radius: 0; box-shadow: none; }
#app[data-view="purchase-entry"] .purchase-entry-modal > #document-form > .modal-body { border-radius: 0; }
.document-entry-page .document-entry-head { border-radius: 14px 14px 0 0; }
.document-page-back { align-self: flex-start; height: 34px; padding: 0 12px; border: 1px solid color-mix(in srgb, var(--entry-color) 28%, #d7dfdd); border-radius: 7px; color: var(--entry-deep); background: rgba(255,255,255,.82); font: 700 10px "DM Sans", sans-serif; cursor: pointer; white-space: nowrap; }
.document-page-back:hover { border-color: var(--entry-color); background: #fff; }
.sales-entry-modal .document-page-back { border-color: color-mix(in srgb, var(--sale-mode-color) 28%, #d7dfdd); color: var(--sale-mode-deep); }
.document-entry-page .modal-foot { border-radius: 0 0 14px 14px; }
.sales-entry-modal { --sale-mode-color: #008d7b; --sale-mode-deep: #05695d; --sale-mode-soft: #e8f8f3; --sale-mode-line: #9bd3c8; }
.purchase-entry-modal { --entry-color: #b66a19; --entry-deep: #7b4612; --entry-soft: #fff7e9; --entry-line: #e8c48d; --purchase-label-color: #111; }
.purchase-entry-page.purchase-entry-modal > #document-form > .modal-body { border-radius: 14px 14px 0 0; }
.purchase-entry-modal .modal-head { position: relative; overflow: hidden; border-bottom-color: var(--entry-line); background: linear-gradient(105deg, var(--entry-soft), #fff 64%); }
.purchase-entry-modal .modal-head::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 5px; background: var(--entry-color); }
.purchase-entry-modal .modal-head h2 { color: var(--entry-deep); }
.purchase-entry-modal .modal-head p { color: #765f48; }
.purchase-entry-modal .modal-head .close { color: var(--entry-deep); background: #fff8ed; }
.purchase-entry-modal .automation-strip { border-color: #ecd3ad; color: #765b3c; background: #fff9ef; }
.purchase-entry-modal .automation-strip b { color: #8a4e11; background: #ffedcf; }
.purchase-entry-modal .modal-foot .primary-btn { background: #995714; }
.sales-entry-modal[data-sale-entry-mode="advanced"] { --sale-mode-color: #5267c8; --sale-mode-deep: #344797; --sale-mode-soft: #eef0ff; --sale-mode-line: #b8c1ef; }
.sales-entry-modal .modal-head { position: relative; overflow: hidden; border-bottom-color: var(--sale-mode-line); background: linear-gradient(105deg, var(--sale-mode-soft), #fff 64%); transition: background .18s ease, border-color .18s ease; }
.sales-entry-modal .modal-head::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 5px; background: var(--sale-mode-color); }
.sales-entry-modal .modal-head h2 { color: var(--sale-mode-deep); }
.sales-entry-modal .modal-head p { color: color-mix(in srgb, var(--sale-mode-deep) 70%, #66737a); }
.sales-entry-modal .modal-head .close { color: var(--sale-mode-deep); background: color-mix(in srgb, var(--sale-mode-soft) 72%, #fff); }
.sales-entry-modal.advanced-sale-mode { width: min(1180px, 100%); }
.sale-entry-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-bottom: 12px; padding: 5px; border: 1px solid #dfe8e7; border-radius: 10px; background: #f4f8f7; }
.sale-entry-tabs button { position: relative; display: grid; grid-template-columns: 30px 1fr; grid-template-rows: auto auto; gap: 1px 9px; align-items: center; min-height: 52px; padding: 8px 12px; border: 1px solid transparent; border-radius: 8px; color: #637078; background: transparent; text-align: left; cursor: pointer; }
.sale-entry-tabs button > span { grid-row: 1 / 3; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 8px; color: #60716e; background: #e4ecea; font-size: 14px; }
.sale-entry-tabs button b { color: #35443f; font: 700 12px Manrope, sans-serif; }
.sale-entry-tabs button small { color: #7c8986; font-size: 9px; }
.sale-entry-tabs button[aria-selected="true"] { border-color: #9bd3c8; background: #fff; box-shadow: 0 2px 8px rgba(23, 68, 61, .08); }
.sale-entry-tabs button[aria-selected="true"] > span { color: #fff; background: var(--teal); }
.sale-entry-tabs button[data-sale-entry-tab="easy"] > span { color: #087665; background: #ddf3ec; }
.sale-entry-tabs button[data-sale-entry-tab="advanced"] > span { color: #4558b2; background: #e6e9fb; }
.sale-entry-tabs button[data-sale-entry-tab="easy"][aria-selected="true"] { border-color: #87cbbb; box-shadow: 0 3px 10px rgba(0, 141, 123, .13); }
.sale-entry-tabs button[data-sale-entry-tab="easy"][aria-selected="true"] > span { color: #fff; background: #008d7b; }
.sale-entry-tabs button[data-sale-entry-tab="advanced"][aria-selected="true"] { border-color: #aab5ec; box-shadow: 0 3px 10px rgba(82, 103, 200, .16); }
.sale-entry-tabs button[data-sale-entry-tab="advanced"][aria-selected="true"] > span { color: #fff; background: #5267c8; }
.sale-entry-tabs button[data-sale-entry-tab="easy"][aria-selected="true"] b { color: #05695d; }
.sale-entry-tabs button[data-sale-entry-tab="advanced"][aria-selected="true"] b { color: #344797; }
.sale-entry-tabs button:focus-visible { outline: 2px solid var(--teal); outline-offset: 2px; }
.sale-entry-mode-note { display: flex; align-items: center; gap: 9px; margin-bottom: 12px; padding: 9px 12px; border-left: 3px solid #70cbbb; border-radius: 0 7px 7px 0; background: #f4fbf8; color: #61716c; font-size: 10px; }
.sale-entry-mode-note b { color: #167563; }
.sale-entry-mode-note[hidden], .advanced-sale-tools[hidden] { display: none; }
.advanced-sale-tools { margin-bottom: 12px; padding: 12px; border: 1px solid #cedfdd; border-radius: 10px; background: linear-gradient(135deg, #f7fbfa, #f0f7f6); }
.advanced-sale-toolbar { display: grid; grid-template-columns: 1.05fr 1fr 1fr; gap: 10px; }
.advanced-tool-field { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 5px; align-items: end; }
.advanced-barcode-field { grid-template-columns: minmax(0, 1fr) auto auto; }
.advanced-tool-field label { grid-column: 1 / -1; color: #596964; font-size: 9px; font-weight: 700; letter-spacing: .35px; text-transform: uppercase; }
.advanced-tool-field input, .advanced-tool-field select { min-width: 0; width: 100%; height: 34px; padding: 7px 9px; border: 1px solid #d7e2e0; border-radius: 6px; color: #283934; background: #fff; font: 11px "DM Sans", sans-serif; outline: none; }
.advanced-tool-field input:focus, .advanced-tool-field select:focus { border-color: #56b9a8; box-shadow: 0 0 0 2px rgba(0, 141, 123, .1); }
.advanced-tool-field .secondary-btn { height: 34px; }
.barcode-entry-row { display: flex; gap: 8px; margin-bottom: 6px; }
.barcode-device-help { grid-column: 1 / -1; margin: 1px 0 13px; color: #66756f; font-size: 10px; line-height: 1.45; }
.barcode-device-help summary { width: max-content; max-width: 100%; color: var(--teal); font-weight: 700; cursor: pointer; }
.barcode-device-help ul { margin: 7px 0 0; padding: 8px 10px 8px 26px; border: 1px solid var(--line); border-radius: 7px; background: #f8fbfa; }
.barcode-device-help li + li { margin-top: 4px; }
.barcode-master-field .barcode-device-help { margin-bottom: 0; }
.barcode-master-entry { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 6px; }
.barcode-master-entry .secondary-btn { height: auto; min-height: 34px; white-space: nowrap; }
.barcode-phone-button.connected { border-color: #16a34a; background: #dcfce7; color: #166534; }
.product-lookup-status { display: grid; gap: 3px; margin-top: 2px; padding: 9px 11px; border: 1px solid #d7e2e0; border-radius: 7px; background: #f8fbfa; }
.product-lookup-status b { color: #344740; font-size: 11px; }
.product-lookup-status small { color: #687972; font-size: 10px; line-height: 1.45; }
.product-lookup-status[data-state="loading"] { border-color: #bfdbfe; background: #eff6ff; }
.product-lookup-status[data-state="found"] { border-color: #bbdfcd; background: #f0fdf4; }
.product-lookup-status[data-state="missing"], .product-lookup-status[data-state="error"] { border-color: #f0d39e; background: #fffbeb; }
.product-lookup-status a { color: var(--teal); font-weight: 700; }
.gstin-lookup-field { order: -1; }
.gstin-lookup-entry { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px; }
.gstin-lookup-entry input { font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.gstin-lookup-entry .secondary-btn { height: auto; min-height: 34px; white-space: nowrap; }
.barcode-scanner-dialog { width: min(760px, calc(100vw - 28px)); max-height: calc(100dvh - 28px); padding: 0; border: 0; border-radius: 12px; background: #fff; color: var(--ink); box-shadow: 0 28px 80px #071d1866; }
.barcode-scanner-dialog::backdrop { background: #0d242799; }
.global-scanner-float { position: fixed; inset: 78px 18px auto auto; z-index: 80; width: min(390px, calc(100vw - 28px)); max-height: calc(100dvh - 96px); margin: 0; overflow: auto; border: 1px solid #cfe1dc; box-shadow: 0 18px 52px #071d1840; }
.global-scanner-float .modal-head { padding: 14px 16px; }
.global-scanner-float .modal-body { padding: 14px 16px; }
.global-scanner-float .pos-scanner-pair-body { grid-template-columns: 132px minmax(0, 1fr); gap: 14px; }
.global-scanner-float .pos-scanner-qr img { width: 132px; height: 132px; }
.global-scanner-live-preview { position: relative; grid-column: 1 / -1; min-height: 190px; margin: 0; overflow: hidden; border-radius: 10px; background: #102722; color: #e9fff8; }
.global-scanner-live-preview > img { display: block; width: 100%; height: 190px; object-fit: cover; }
.global-scanner-live-preview > img[hidden] { display: none; }
.global-scanner-live-preview > div { display: grid; min-height: 190px; place-content: center; gap: 4px; padding: 20px; text-align: center; }
.global-scanner-live-preview > div[hidden] { display: none; }
.global-scanner-live-preview small { color: #b1d2c8; }
.global-scanner-live-preview figcaption { position: absolute; right: 8px; bottom: 8px; padding: 4px 7px; border-radius: 999px; background: #071511b8; color: #d9fff3; font-size: 9px; font-weight: 700; }
.global-scanner-float .modal-foot { padding: 11px 16px; }
@media (max-width: 620px) { .global-scanner-float { inset: 64px 10px auto 10px; width: auto; } .global-scanner-float .pos-scanner-pair-body { grid-template-columns: 112px minmax(0, 1fr); } .global-scanner-float .pos-scanner-qr img { width: 112px; height: 112px; } }
.advanced-sale-insights { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin-top: 11px; overflow: hidden; border: 1px solid #dbe5e3; border-radius: 8px; background: #dbe5e3; }
.advanced-sale-insights span { min-width: 0; padding: 8px 10px; background: rgba(255, 255, 255, .9); }
.advanced-sale-insights small { display: block; margin-bottom: 3px; color: #84918d; font-size: 8px; font-weight: 700; letter-spacing: .3px; text-transform: uppercase; }
.advanced-sale-insights b { display: block; overflow: hidden; color: #35443f; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.advanced-sale-insights b[data-state="warning"] { color: #a55c16; }
.advanced-sale-mode .automation-strip { margin-bottom: 10px; padding-block: 8px; }
.advanced-sale-mode #document-form > .modal-body > .form-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.advanced-sale-mode #document-form > .modal-body > .form-grid .form-field.full { grid-column: span 2; }
.advanced-sale-mode .items-editor { margin-top: 12px; }
.advanced-sale-mode .items-editor thead { color: #4657a5; background: #f0f2ff; }
.advanced-sale-mode .items-editor table th, .advanced-sale-mode .items-editor table td { padding: 7px 8px; }
.advanced-sale-mode .invoice-totals { width: 320px; }

.document-entry-modal .modal-body { padding: 18px 20px 22px; background: #f5f8f7; }
.document-entry-modal .modal-foot { position: sticky; bottom: 0; z-index: 5; border-top: 1px solid #dce5e3; background: rgba(255,255,255,.97); box-shadow: 0 -8px 22px rgba(31,54,49,.06); backdrop-filter: blur(8px); }
.document-autosave-status { display: inline-flex; align-items: center; gap: 6px; color: #3e625a; }
.document-autosave-status::before { content: "●"; color: #2f8a6a; font-size: 9px; }
.document-autosave-status[data-state="saving"]::before { color: #ba7418; }
.document-autosave-status[data-state="error"] { color: #a2372f; }
.document-autosave-status[data-state="error"]::before { color: #c13e35; }
.document-post-preview .modal { width: min(920px, calc(100vw - 28px)); max-height: calc(100dvh - 28px); overflow: hidden; }
.document-post-preview .modal-body { display: grid; gap: 16px; overflow: auto; }
.document-preview-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.document-preview-facts span { min-width: 0; padding: 12px; border: 1px solid #d9e5e2; border-radius: 9px; background: #f7faf9; }
.document-preview-facts small, .document-preview-facts b { display: block; overflow: hidden; text-overflow: ellipsis; }
.document-preview-facts small { margin-bottom: 4px; color: #668079; }
.document-preview-lines { overflow: auto; border: 1px solid #d9e5e2; border-radius: 10px; }
.document-preview-lines table { width: 100%; min-width: 680px; border-collapse: collapse; }
.document-preview-lines th, .document-preview-lines td { padding: 10px 12px; border-bottom: 1px solid #e5ecea; text-align: right; }
.document-preview-lines th:first-child, .document-preview-lines td:first-child { text-align: left; }
.document-preview-lines td small { display: block; color: #70857f; }
.document-preview-totals { display: flex; align-items: center; justify-content: flex-end; gap: 20px; padding: 13px 16px; border-radius: 10px; background: #edf5f2; }
.document-preview-totals span { display: grid; gap: 3px; color: #5f7770; }
.document-preview-totals strong { color: #123a63; font-size: 21px; }
.document-entry-head { min-height: 76px; }
.document-entry-head > .toolbar-actions { align-self: flex-start; flex-wrap: wrap; justify-content: flex-end; }
.document-kind-badge { display: inline-flex; align-items: center; min-height: 20px; margin-bottom: 4px; padding: 2px 8px; border: 1px solid color-mix(in srgb, var(--entry-color) 36%, #fff); border-radius: 999px; color: var(--entry-deep); background: color-mix(in srgb, var(--entry-soft) 82%, #fff); font-size: 8px; font-weight: 800; letter-spacing: 1px; }
.sales-entry-modal .document-kind-badge { border-color: #99d2c7; color: #05695d; background: #e2f6f0; }
.document-entry-progress { display: flex; align-items: center; justify-content: center; gap: 8px; margin: 0 0 14px; color: #71807c; font-size: 10px; font-weight: 700; }
.document-entry-progress span { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.document-entry-progress b { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; color: #fff; background: var(--entry-color); font-size: 9px; }
.sales-entry-modal .document-entry-progress b { background: var(--sale-mode-color); }
.document-entry-progress i { width: 42px; height: 1px; background: #ccd7d4; }
.invoice-entry-section { margin-top: 12px; overflow: hidden; border: 1px solid #dce5e3; border-radius: 12px; background: #fff; box-shadow: 0 2px 8px rgba(30,58,51,.035); }
.invoice-entry-section-head { display: flex; align-items: center; gap: 10px; min-height: 56px; padding: 10px 14px; border-bottom: 1px solid #0d3155; background: linear-gradient(100deg, #123a63, #1f6094); }
.sales-entry-modal .invoice-entry-section-head { border-bottom-color: #0d3155; background: linear-gradient(100deg, #123a63, #1f6094); }
.section-number { display: grid; flex: 0 0 auto; place-items: center; width: 28px; height: 28px; border: 1px solid rgba(255,255,255,.32); border-radius: 8px; color: #fff; background: rgba(255,255,255,.14); font: 800 11px Manrope, sans-serif; }
.sales-entry-modal .section-number { background: rgba(255,255,255,.14); }
.invoice-entry-section-head > div { min-width: 0; }
.invoice-entry-section-head h3 { margin: 0; color: #fff; font: 750 13px Manrope, sans-serif; }
.invoice-entry-section-head p { margin: 2px 0 0; color: #d6e5e1; font-size: 9px; }
.section-status { margin-left: auto; padding: 4px 8px; border: 1px solid rgba(255,255,255,.22); border-radius: 999px; color: #fff; background: rgba(255,255,255,.12); font-size: 8px; font-weight: 700; white-space: nowrap; }
.sales-entry-modal .section-status { color: #fff; background: rgba(255,255,255,.12); }
.purchase-line-details-toggle { display: inline-flex; align-items: center; gap: 5px; min-height: 28px; padding: 4px 9px; border: 1px solid var(--entry-line); border-radius: 7px; color: var(--entry-deep); background: #fff; font: 700 9px Manrope, sans-serif; white-space: nowrap; cursor: pointer; }
.purchase-line-details-toggle:hover { background: var(--entry-soft); }
.purchase-line-details-toggle:focus-visible { outline: 3px solid color-mix(in srgb, var(--entry-color) 32%, #fff); outline-offset: 2px; }
.purchase-line-details-toggle[aria-pressed="false"] span:first-child { opacity: .45; }
.purchase-hide-line-details .line-product-meta, .purchase-hide-line-details .line-price-source { display: none !important; }
.document-header-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; padding: 14px; }
.document-header-grid .party-field { grid-column: span 2; }
.document-header-grid .purchase-invoice-note { grid-column: span 2; }
.document-header-grid .purchase-invoice-note textarea { width: 100%; resize: vertical; }
.purchase-entry-modal .document-header-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.purchase-entry-modal .document-header-grid > .form-field:not(.purchase-invoice-note) { grid-column: span 1; }
.purchase-entry-modal .document-header-grid .form-field { min-width: 0; align-content: start; }
.purchase-entry-modal .document-header-grid .form-field > label, .purchase-entry-modal .purchase-fast-control > label { min-height: 18px; display: flex; align-items: end; margin: 0; line-height: 1.25; }
.purchase-entry-modal .document-header-grid .form-field > :is(input,select,textarea), .purchase-entry-modal .purchase-fast-control :is(input,select) { width: 100%; min-width: 0; height: 38px; min-height: 38px; }
.purchase-entry-modal .document-header-grid .purchase-invoice-note textarea { height: 38px; min-height: 38px; resize: vertical; }
.sales-entry-modal .invoice-header-section { border-color: #ead8c8; background: #fffaf5; }
.sales-entry-modal .document-header-grid { gap: 16px 10px; padding: 17px 12px 12px; background: linear-gradient(135deg, #fffaf5, #f7faf9); }
.sales-entry-modal .document-header-grid .form-field { position: relative; min-width: 0; align-content: start; gap: 0; }
.sales-entry-modal .document-header-grid .place-of-supply-field, .sales-entry-modal .document-header-grid .address-field { grid-column: span 2; }
.sales-entry-modal .document-header-grid .form-field > label { position: absolute; z-index: 1; top: 0; left: 50%; width: auto; max-width: calc(100% - 18px); padding: 0 6px; overflow: hidden; background: #fffaf5; line-height: 14px; text-align: center; text-overflow: ellipsis; transform: translate(-50%, -50%); white-space: nowrap; }
.sales-entry-modal .document-header-grid .form-field > label { color: #c65911; }
.sales-entry-modal .document-header-grid .form-field > :is(input, select, textarea) { min-width: 0; max-width: 100%; min-height: 38px; border-color: #e4c9b4; background: #fff; box-shadow: 0 1px 2px rgba(112, 70, 34, .04); }
.sales-entry-modal .document-header-grid .form-field > :is(input, select, textarea):focus { border-color: #c65911; box-shadow: 0 0 0 3px rgba(198, 89, 17, .11); }
.sales-entry-modal .document-header-grid .party-field > small { position: absolute; right: 7px; bottom: -13px; left: 7px; overflow: hidden; color: #64736f; font-size: 8px; line-height: 11px; text-overflow: ellipsis; white-space: nowrap; }
.document-entry-modal .form-field small { line-height: 1.35; }
.document-entry-modal .automation-strip { margin: 10px 0 12px; }
.document-entry-modal .sale-entry-tabs { margin-bottom: 10px; }
.invoice-lines-section .advanced-sale-tools, .purchase-entry-tools { margin: 12px 12px 0; }
.purchase-entry-tools { padding: 12px; border: 1px solid #ecd8b9; border-radius: 10px; background: linear-gradient(135deg, #fffdf9, #fff7e9); }
.purchase-entry-tools .advanced-sale-toolbar { grid-template-columns: 1.1fr 1fr .85fr; }
.purchase-entry-tools .advanced-tool-field:has(#purchase-pair-scanner) { display: none; }
.purchase-tool-message { display: grid; align-content: center; min-height: 54px; padding: 8px 10px; border-left: 3px solid #d89448; border-radius: 0 7px 7px 0; background: rgba(255,255,255,.78); }
.purchase-tool-message b { color: #7b4612; font-size: 10px; }
.purchase-tool-message small { margin-top: 3px; color: #86705a; font-size: 8px; line-height: 1.35; }
.document-entry-insights { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin-top: 11px; overflow: hidden; border: 1px solid #dbe5e3; border-radius: 8px; background: #dbe5e3; }
.document-entry-insights span { min-width: 0; padding: 8px 10px; background: rgba(255,255,255,.92); }
.document-entry-insights small { display: block; margin-bottom: 3px; color: #84918d; font-size: 8px; font-weight: 700; letter-spacing: .3px; text-transform: uppercase; }
.document-entry-insights b { display: block; overflow: hidden; color: #35443f; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.document-entry-insights b[data-state="warning"] { color: #a55c16; }
.document-items-editor { margin-top: 12px; border: 0; border-radius: 0; }
.document-items-editor table { min-width: 900px; }
.purchase-entry-modal .document-items-editor table { width: 100%; min-width: 1340px; table-layout: fixed; }
.purchase-entry-modal .document-items-editor tbody { counter-reset: purchase-line-number; }
.purchase-entry-modal .document-items-editor tbody .line-row { counter-increment: purchase-line-number; }
.purchase-entry-modal .document-items-editor thead tr::before, .purchase-entry-modal .document-items-editor tbody .line-row::before { display: table-cell; width: 40px; min-width: 40px; box-sizing: border-box; padding: 9px 4px; text-align: center; vertical-align: top; }
.purchase-entry-modal .document-items-editor thead tr::before { content: "NO."; color: inherit; font-weight: 800; }
.purchase-entry-modal .document-items-editor tbody .line-row::before { content: counter(purchase-line-number); color: #6f7e79; font-weight: 750; }
.purchase-entry-modal .document-items-editor .line-hsn-head { width: 68px; }
.purchase-entry-modal .document-items-editor .line-qty-head { width: 58px; }
.purchase-entry-modal .document-items-editor .line-uom-head { width: 92px; }
.purchase-entry-modal .document-items-editor .line-alternate-uom-head { width: 108px; }
.purchase-entry-modal .document-items-editor .line-rate-head { width: 82px; }
.purchase-entry-modal .document-items-editor .line-discount-head { width: 64px; }
.purchase-entry-modal .document-items-editor .line-gst-head { width: 58px; }
.purchase-entry-modal .document-items-editor .line-mrp-head { width: 58px; }
.purchase-entry-modal .document-items-editor .line-batch-selling-price-head { width: 92px; }
.purchase-entry-modal .document-items-editor .line-additional-barcode-head { width: 132px; }
.purchase-entry-modal .document-items-editor .line-amount-head { width: 104px; }
.purchase-entry-modal .document-items-editor .line-batch-details-head { width: 360px; }
.purchase-batch-column-control { display: flex; position: sticky; z-index: 4; left: 0; width: max-content; align-items: center; gap: 7px; padding: 6px 8px; border: 1px solid #aebfcb; border-bottom: 0; border-radius: 6px 6px 0 0; color: #123a63; background: #edf4fc; }
.purchase-batch-column-control b { font-size: 12px; }
.purchase-batch-column-control button { display: inline-flex; min-width: 62px; height: 27px; min-height: 27px; align-items: center; justify-content: center; gap: 4px; padding: 2px 7px; border: 1px solid #6f8faa; border-radius: 5px; color: #fff; background: #175a92; font-size: 11px; font-weight: 800; cursor: pointer; }
.purchase-batch-column-control button:hover, .purchase-batch-column-control button:focus-visible { outline: 2px solid #175a92; outline-offset: 1px; background: #0f4775; }
.purchase-batch-eye { position: relative; line-height: 1; }
.purchase-batch-column-control button[aria-pressed="false"] .purchase-batch-eye::after { content: ""; position: absolute; top: 50%; left: 50%; width: 18px; height: 2px; border-radius: 2px; background: #ffcf70; box-shadow: 0 1px 0 rgba(0,0,0,.3); transform: translate(-50%,-50%) rotate(-42deg); }
.purchase-entry-modal #document-form.purchase-batch-details-hidden :is(.line-batch-details-head, .line-batch-details-cell) { display: none; }
.purchase-entry-modal .document-items-editor .line-remove-head { width: 38px; }
.purchase-entry-modal .line-hsn-cell, .purchase-entry-modal .line-uom-cell, .purchase-entry-modal .line-alternate-uom-cell, .purchase-entry-modal .line-mrp-cell, .purchase-entry-modal .line-batch-selling-price-cell, .purchase-entry-modal .line-additional-barcode-cell, .purchase-entry-modal .line-amount-cell { min-width: 0; }
.purchase-entry-modal .line-hsn-code { display: block; overflow: hidden; padding-top: 7px; color: #45534f; font-size: 10px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.purchase-entry-modal .line-uom-cell .line-uom, .purchase-entry-modal .line-uom-detail .line-alternate-uom { width: 100%; min-width: 0; }
.purchase-entry-modal .line-mrp, .purchase-entry-modal .line-batch-selling-price, .purchase-entry-modal .line-additional-barcode { width: 100%; min-width: 0; }
.document-items-editor thead { color: #52615d; background: #f1f5f4; }
.purchase-entry-modal .document-items-editor thead { color: #754b1f; background: #fff8ed; }
.document-items-editor table th, .document-items-editor table td { padding: 9px 8px; vertical-align: top; }
.document-items-editor tbody tr:hover { background: #fbfdfc; }
.line-product-meta, .line-price-source, .line-taxable-note { display: block; margin-top: 4px; line-height: 1.25; }
.line-product-meta:empty, .line-price-source:empty { display: none; }
.line-product-meta { color: #73817d; font-size: 8px; }
.line-price-source { color: #27816f; font-size: 8px; font-weight: 600; }
.purchase-entry-modal .line-price-source { color: #9a601d; }
.line-uom-cell { min-width: 150px; }
.line-uom-cell .line-uom { width: 100%; min-width: 135px; }
.line-uom-cell .line-uom-product-master { color: #3f5650; background: #f5f8f7; opacity: 1; cursor: pointer; }
.line-alternate-uom-cell { min-width: 160px; }
.line-uom-detail { display: grid; gap: 3px; color: #526a64; font-size: 9px; line-height: 1.3; }
.line-uom-detail .line-alternate-uom { width: 100%; min-width: 145px; }
.line-uom-detail small, .line-uom-empty { color: #788984; font-size: 8px; line-height: 1.25; }
.line-amount-cell { min-width: 96px; }
.line-amount-cell .line-amount { display: block; color: #21312d; font-size: 11px; white-space: nowrap; }
.line-taxable-note { color: #8a9692; font-size: 8px; white-space: nowrap; }
.document-items-editor .add-line { margin: 10px 12px 12px; }
.invoice-total-section { overflow: visible; }
.document-total-layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 16px; align-items: start; padding: 14px; }
.document-posting-card { min-height: 170px; padding: 14px; border: 1px solid #e1e8e6; border-radius: 10px; background: #fbfdfc; }
.document-posting-card > label { display: block; margin-bottom: 6px; color: #596762; font-size: 9px; font-weight: 700; letter-spacing: .3px; text-transform: uppercase; }
.document-posting-card textarea { width: 100%; resize: vertical; }
.posting-result-list { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 12px; }
.posting-result-list span { padding: 6px 8px; border-radius: 7px; color: #42665e; background: #eaf7f3; font-size: 9px; font-weight: 600; }
.purchase-entry-modal .posting-result-list span { color: #765025; background: #fff2de; }
.document-total-layout .invoice-totals { width: auto; margin: 0; padding: 14px 16px; border: 1px solid #cedbd7; border-radius: 10px; background: #fff; box-shadow: 0 5px 18px rgba(30,58,51,.07); }
.invoice-total-title { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 5px; padding-bottom: 9px; border-bottom: 1px solid #e3e9e7; }
.invoice-total-title span { color: #263632; font: 750 12px Manrope, sans-serif; }
.invoice-total-title small { color: #83908c; font-size: 8px; }
.document-total-layout .invoice-totals p { padding: 7px 1px; }
.document-total-layout .invoice-totals .total { margin-top: 7px; padding: 12px 10px; border: 0; border-radius: 8px; color: #fff; background: var(--entry-deep); }
.sales-entry-modal .document-total-layout .invoice-totals .total { background: var(--sale-mode-deep); }
.total-helper { display: block; margin-top: 9px; color: #82908c; font-size: 8px; line-height: 1.4; }

/* Alternate purchase entry workspace inspired by dense enterprise invoice screens. */
.purchase-layout-switcher { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 14px; padding: 9px 10px 9px 13px; border: 1px solid #ead7bb; border-radius: 11px; background: linear-gradient(100deg, #fffaf2, #fff); }
.purchase-layout-switcher > div:first-child { display: grid; gap: 2px; min-width: 190px; }
.purchase-layout-switcher > div:first-child b { color: #68431d; font: 750 11px Manrope, sans-serif; }
.purchase-layout-switcher > div:first-child small { color: #87735d; font-size: 9px; }
.purchase-layout-tabs { display: grid; grid-template-columns: repeat(3, minmax(145px, 1fr)); gap: 6px; }
.purchase-layout-tabs button { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: auto auto; gap: 1px; align-items: center; min-height: 44px; padding: 6px 9px; border: 1px solid transparent; border-radius: 8px; color: #756756; background: transparent; text-align: left; cursor: pointer; }
.purchase-layout-tabs button > span { grid-row: 1 / 3; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 7px; color: #8a571f; background: #f8e7cc; }
.purchase-layout-tabs button b { color: #4d4134; font-size: 10px; }
.purchase-layout-tabs button small { color: #8b8074; font-size: 8px; white-space: nowrap; }
.purchase-layout-tabs button[aria-selected="true"] { border-color: #d7ac70; background: #fff; box-shadow: 0 2px 8px rgba(112, 67, 18, .11); }
.purchase-layout-tabs button[aria-selected="true"] > span { color: #fff; background: #a6611a; }
.purchase-layout-tabs button:focus-visible { outline: 2px solid #c17a2c; outline-offset: 2px; }
.purchase-erp-chrome, .purchase-counter-chrome, .purchase-counter-summary { display: none; }
.purchase-fast-entry { margin: 12px; padding: 11px; border: 1px solid #e4c999; border-radius: 10px; background: linear-gradient(120deg, #fffaf1, #fff); }
.purchase-fast-entry-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 9px; }
.purchase-fast-entry-head > div { display: grid; gap: 2px; }
.purchase-fast-entry-head b { color: #68451f; font-size: 11px; }
.purchase-fast-entry-head small { color: #8a755d; font-size: 8px; }
.purchase-fast-entry-head > span { display: flex; align-items: center; gap: 5px; color: #806b53; font-size: 8px; white-space: nowrap; }
.purchase-fast-entry-head kbd { padding: 2px 5px; border: 1px solid #d6c2a2; border-bottom-width: 2px; border-radius: 4px; color: #6c4a25; background: #fff; font: 700 8px "DM Sans", sans-serif; }
.purchase-fast-entry-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; align-items: end; }
.purchase-fast-control { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 5px; align-items: end; min-width: 0; }
.purchase-fast-control label { grid-column: 1 / -1; color: #685947; font-size: 12.8px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.purchase-fast-control input, .purchase-fast-control select { min-width: 0; width: 100%; height: 34px; border: 1px solid #d9cdbb; border-radius: 6px; background: #fff; font-size: 10px; }
.purchase-fast-control button { min-height: 34px; padding: 7px 10px; white-space: nowrap; }
.purchase-fast-product { grid-column: 1 / -1; grid-template-columns: minmax(240px, 1fr) auto; }
.purchase-fast-product label { grid-column: 1 / -1; }
.purchase-fast-combobox { position: relative; min-width: 0; }
.purchase-fast-combobox > input { width: 100%; }
.purchase-fast-combobox > select { position: absolute; z-index: 30; top: calc(100% + 3px); left: 0; width: 100%; min-height: 34px; box-shadow: 0 10px 24px rgba(39, 50, 46, .18); }
.purchase-source-combobox { position: relative; min-width: 0; grid-column: 1 / -1; }
.purchase-source-combobox > input[type="search"] { width: 100%; }
.purchase-source-results { position: absolute; z-index: 35; top: calc(100% + 3px); left: 0; width: 100%; max-height: 220px; padding: 4px; overflow-y: auto; border: 1px solid #c4d3de; border-radius: 6px; background: #fff; box-shadow: 0 12px 28px rgba(29, 51, 66, .2); }
.purchase-source-results[hidden] { display: none; }
.purchase-source-results button { display: grid; width: 100%; min-height: 36px; height: auto; gap: 2px; padding: 6px 8px; border: 0; border-radius: 4px; color: #294d66; background: transparent; text-align: left; cursor: pointer; }
.purchase-source-results button:hover, .purchase-source-results button:focus-visible { outline: none; background: #eaf4fb; }
.purchase-source-results button b { font-size: 9px; }
.purchase-source-results button small { color: #637d90; font-size: 8px; }
.purchase-source-results p { margin: 0; padding: 8px; color: #637d90; font-size: 9px; }
.purchase-entry-modal .invoice-header-section { position: relative; z-index: 20; overflow: visible; }
.purchase-entry-modal .invoice-lines-section { position: relative; z-index: 1; }
.purchase-old-invoice-control .purchase-source-combobox { overflow: visible; }
.purchase-old-invoice-heading { display: flex; align-items: center; justify-content: space-between; gap: 6px; min-width: 0; }
.purchase-old-invoice-heading > label { min-height: 0; margin: 0; }
.purchase-old-invoice-actions { display: flex; flex: 0 0 auto; gap: 3px; }
.purchase-old-invoice-actions button { min-height: 22px; height: 22px; padding: 2px 7px; border-radius: 3px; font-size: 8px; line-height: 1; white-space: nowrap; }
.purchase-entry-modal .purchase-old-invoice-actions button { color: var(--purchase-label-color); }
.purchase-old-invoice-actions button:disabled { cursor: not-allowed; color: var(--purchase-label-color); background: #f3f3f3; opacity: 1; }
.purchase-old-invoice-results { z-index: 100; right: 0; left: auto; width: min(680px, calc(100vw - 48px)); max-height: 280px; }
.purchase-old-invoice-result-head, .purchase-old-invoice-results button { grid-template-columns: minmax(145px, 1.25fr) minmax(130px, 1fr) 92px 90px; align-items: center; column-gap: 10px; }
.purchase-old-invoice-result-head { display: grid; position: sticky; z-index: 1; top: -4px; padding: 7px 8px; border-bottom: 1px solid #d9e3ea; color: #536d7e; background: #f4f8fb; font-size: 8px; font-weight: 800; text-transform: uppercase; }
.purchase-old-invoice-results button { display: grid; }
.purchase-old-invoice-results button > :is(b,span,small,strong) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.purchase-old-invoice-results button span { color: #294d66; font-size: 9px; }
.purchase-old-invoice-results button strong { color: #294d66; font-size: 9px; text-align: right; }
.purchase-old-invoice-preview { width: min(860px, calc(100vw - 32px)); max-height: min(720px, calc(100vh - 32px)); padding: 0; overflow: hidden; border: 1px solid #b9cad5; border-radius: 10px; background: #fff; box-shadow: 0 24px 70px rgba(23, 45, 58, .28); }
.purchase-old-invoice-preview::backdrop { background: rgba(23, 45, 58, .38); }
.purchase-old-invoice-preview-head, .purchase-old-invoice-preview-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 14px; }
.purchase-old-invoice-preview-head { border-bottom: 1px solid #dbe4ea; color: #24465c; background: #f2f7fa; }
.purchase-old-invoice-preview-head > div { display: grid; gap: 2px; }
.purchase-old-invoice-preview-head b { font-size: 13px; }
.purchase-old-invoice-preview-head small { color: #637d90; font-size: 9px; }
.purchase-old-invoice-preview-head > button { border: 0; color: #456579; background: transparent; font-size: 22px; cursor: pointer; }
.purchase-old-invoice-preview-body { max-height: min(560px, calc(100vh - 180px)); padding: 12px 14px; overflow: auto; }
.purchase-old-invoice-preview-scroll table { width: 100%; border-collapse: collapse; }
.purchase-old-invoice-preview-scroll th, .purchase-old-invoice-preview-scroll td { padding: 8px 9px; border-bottom: 1px solid #e6edf1; text-align: left; white-space: nowrap; }
.purchase-old-invoice-preview-scroll th { position: sticky; top: 0; color: #496679; background: #f6f9fb; font-size: 9px; text-transform: uppercase; }
.purchase-old-invoice-preview-scroll td { color: #2c4758; font-size: 10px; }
.purchase-old-invoice-preview-scroll td:first-child { min-width: 210px; white-space: normal; }
.purchase-old-invoice-preview-scroll td:first-child > :is(b,small) { display: block; }
.purchase-old-invoice-preview-scroll td:first-child small { margin-top: 2px; color: #718694; }
.purchase-old-invoice-preview-foot { justify-content: flex-end; border-top: 1px solid #dbe4ea; background: #fafcfd; }
.purchase-old-invoice-preview-empty { margin: 0; padding: 22px; color: #637d90; text-align: center; }
.purchase-total-check { grid-template-columns: minmax(0, 1fr); }
.purchase-total-check output { min-height: 18px; color: #7e7468; font-size: 8px; }
.purchase-total-check output[data-state="empty"] { display: none; }
.purchase-total-check output[data-state="match"] { color: #087665; font-weight: 800; }
.purchase-total-check output[data-state="warning"] { color: #b45309; font-weight: 800; }
.purchase-recent-items { display: flex; align-items: center; gap: 6px; margin-top: 9px; padding-top: 8px; overflow-x: auto; border-top: 1px solid #eadfcd; scrollbar-width: thin; }
.purchase-recent-items > span { flex: 0 0 auto; color: #806f5c; font-size: 8px; font-weight: 700; }
.purchase-recent-items button { flex: 0 0 auto; display: grid; gap: 1px; max-width: 190px; padding: 5px 8px; border: 1px solid #e2d2ba; border-radius: 7px; color: #5d4a35; background: #fff; text-align: left; cursor: pointer; }
.purchase-recent-items button:hover, .purchase-recent-items button:focus-visible { border-color: #c78a43; outline: none; background: #fff8ec; }
.purchase-recent-items button b, .purchase-recent-items button small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.purchase-recent-items button b { font-size: 8px; }
.purchase-recent-items button small { color: #90785c; font-size: 7px; }

.purchase-entry-modal[data-purchase-layout="erp-grid"] { --entry-color: #2075bd; --entry-deep: #164f7d; --entry-soft: #eaf4fb; --entry-line: #9fc7e5; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .modal-head { border-bottom-color: #a7c9e1; background: linear-gradient(105deg, #edf6fc, #fff 64%); }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .modal-head p { color: #557187; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .modal-foot .primary-btn { background: #1465a3; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .modal-body { padding: 10px 12px 18px; background: #fff; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-layout-switcher { margin-bottom: 8px; border-color: #cddce7; background: #f7fafc; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-layout-switcher > div:first-child b { color: #284e69; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-layout-switcher > div:first-child small { color: #637d90; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-layout-tabs button > span { color: #246a9e; background: #e2eff8; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-layout-tabs button[aria-selected="true"] { border-color: #8bb8d8; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-layout-tabs button[aria-selected="true"] > span { color: #fff; background: #2475af; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .document-entry-progress { display: none; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-erp-chrome { display: block; margin: 0 -12px; border-block: 1px solid #cdd9e1; background: #fff; }
.purchase-erp-commandbar { display: flex; align-items: center; gap: 3px; min-height: 39px; padding: 4px 9px; border-bottom: 1px solid #d8e1e7; background: #fafcfd; }
.purchase-erp-commandbar button { display: inline-flex; align-items: center; gap: 5px; min-height: 29px; padding: 4px 8px; border: 1px solid transparent; border-radius: 4px; color: #334c5e; background: transparent; font: 700 9px "DM Sans", sans-serif; cursor: pointer; }
.purchase-erp-commandbar button:hover, .purchase-erp-commandbar button:focus-visible { border-color: #a9c5d8; outline: none; background: #eaf4fa; }
.purchase-erp-commandbar i { width: 1px; height: 22px; margin: 0 5px; background: #c8d4dc; }
.purchase-erp-commandbar > b { padding: 0 7px; color: #40586a; font-size: 9px; }
.purchase-erp-status { display: grid; grid-template-columns: 1fr 1.4fr 1fr 1fr; gap: 22px; min-height: 52px; padding: 8px 14px; }
.purchase-erp-status span { display: grid; grid-template-columns: auto minmax(70px, 1fr); align-items: center; gap: 8px; }
.purchase-erp-status small { color: #526675; font-size: 9px; }
.purchase-erp-status b { min-height: 27px; padding: 6px 8px; border: 1px solid #bfcbd3; color: #1d3342; background: #fff; font-size: 10px; font-weight: 600; }
.purchase-erp-sections { display: flex; gap: 2px; padding: 0 8px; border-top: 1px solid #e0e7eb; }
.purchase-erp-sections button { min-height: 34px; padding: 7px 11px 6px; border: 0; border-bottom: 2px solid transparent; color: #526778; background: transparent; font: 650 10px "DM Sans", sans-serif; cursor: pointer; }
.purchase-erp-sections button:hover, .purchase-erp-sections button:focus-visible, .purchase-erp-sections button.active { border-bottom-color: #1674bb; outline: none; color: #075e9e; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .invoice-entry-section { margin: 0 -12px; border-width: 0 0 1px; border-radius: 0; box-shadow: none; scroll-margin-top: 88px; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .invoice-entry-section-head { min-height: 36px; padding: 7px 14px; border-bottom-color: #d7e1e7; background: #f7f9fa; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .section-number { width: 22px; height: 22px; border-radius: 4px; background: #2b78ad; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .invoice-entry-section-head h3 { color: #183e59; font-size: 11px; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .invoice-entry-section-head p { display: none; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .section-status { border-radius: 3px; color: #32617f; background: #e8f2f8; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .document-header-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px 12px; padding: 12px 14px 18px; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .document-header-grid .form-field { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 4px; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .document-header-grid .form-field label { margin: 0; text-align: left; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .document-header-grid .form-field small { grid-column: auto; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .document-items-editor { margin: 0; overflow-x: auto; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-fast-entry { margin: 0; border-width: 0 0 1px; border-color: #d7e1e7; border-radius: 0; background: #f8fbfd; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-fast-entry-head b { color: #1d5277; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-fast-entry-head small, .purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-fast-entry-head > span { color: #637d90; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-fast-entry-head kbd { border-color: #b8cedd; color: #285f84; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-fast-control input, .purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-fast-control select { border-color: #c4d3de; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-recent-items { border-top-color: #d7e3ea; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-recent-items button { border-color: #ccdae3; color: #31586f; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-recent-items button:hover, .purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-recent-items button:focus-visible { border-color: #5596c1; background: #eef7fc; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .document-items-editor thead { color: #173e5b; background: #f3f7fa; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .document-items-editor table th { text-decoration: underline; text-underline-offset: 2px; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .document-items-editor table th, .purchase-entry-modal[data-purchase-layout="erp-grid"] .document-items-editor table td { padding: 7px 8px; border-right: 1px solid #edf1f4; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .document-items-editor .add-line { color: #155f94; background: #eef6fb; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .document-total-layout { grid-template-columns: minmax(0, 1fr) 320px; padding: 12px 14px; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .document-total-layout.purchase-total-only { grid-template-columns: 320px; justify-content: end; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .posting-result-list span { color: #245d7f; background: #eaf4fa; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .document-total-layout .invoice-totals .total { background: #145a88; }

/* Keyboard-first counter sheet using the same compact register language as Retail POS Classic Register. */
.purchase-entry-modal[data-purchase-layout="counter-grid"] { --classic-blue: #0878a7; --classic-line: #8eb8c8; --classic-pale: #e9f7fb; --counter-canvas: #071722; --counter-panel: #0d2636; --counter-head-a: #17445d; --counter-head-b: #0b2b3e; --counter-text: #f5fbff; --counter-muted: #d4e5ee; --counter-input-line: #66899b; --purchase-label-color: #111; --entry-color: var(--classic-blue); --entry-deep: #8edcff; --entry-soft: var(--classic-pale); --entry-line: var(--classic-line); background: var(--counter-canvas); }
.purchase-entry-modal[data-purchase-layout="counter-grid"][data-counter-theme="orange"] { --classic-blue: #d77a28; --classic-line: #886443; --classic-pale: #fff1df; --counter-canvas: #1d130b; --counter-panel: #2b1c10; --counter-head-a: #5a371a; --counter-head-b: #34200f; --counter-text: #fff8f0; --counter-muted: #f1d8c0; --counter-input-line: #9d795a; --entry-deep: #ffc184; }
.purchase-entry-modal[data-purchase-layout="counter-grid"][data-counter-theme="blue"] { --classic-blue: #1595c9; --classic-line: #4f7488; --classic-pale: #e9f7fb; --counter-canvas: #071722; --counter-panel: #0d2636; --counter-head-a: #17445d; --counter-head-b: #0b2b3e; --counter-text: #f5fbff; --counter-muted: #d4e5ee; --counter-input-line: #66899b; --entry-deep: #8edcff; }
.purchase-entry-modal[data-purchase-layout="counter-grid"][data-counter-theme="emerald"] { --classic-blue: #22a982; --classic-line: #477e70; --classic-pale: #e8f7f1; --counter-canvas: #071b17; --counter-panel: #0c2b23; --counter-head-a: #185443; --counter-head-b: #0b3329; --counter-text: #f3fff9; --counter-muted: #cfebe1; --counter-input-line: #5e9182; --entry-deep: #91e6cb; }
.purchase-entry-modal[data-purchase-layout="counter-grid"][data-counter-theme="slate"] { --classic-blue: #73899d; --classic-line: #607382; --classic-pale: #f0f4f7; --counter-canvas: #10171d; --counter-panel: #1a252e; --counter-head-a: #344654; --counter-head-b: #222f39; --counter-text: #f6f9fb; --counter-muted: #d6e0e7; --counter-input-line: #748592; --entry-deep: #cad8e2; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .modal-head { border-bottom-color: var(--classic-line); background: linear-gradient(#f7fcfe, #dff2f7); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .modal-body { padding: 6px 8px; background: var(--counter-canvas); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-layout-switcher { display: none; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-entry-progress, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-erp-chrome { display: none; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-chrome { display: block; margin: 0; border: 1px solid var(--classic-line); background: var(--counter-panel); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid { gap: 8px; padding: 4px 6px; border-top: 1px solid var(--classic-line); background: var(--counter-panel); }
.purchase-counter-title { display: flex; align-items: center; gap: 5px; min-height: 42px; padding: 5px 7px; overflow-x: auto; color: #173e4c; background: linear-gradient(#d5edf4, #b8dce7); white-space: nowrap; scrollbar-width: thin; }
.purchase-counter-title > strong { flex: 0 0 auto; color: #075f85; font: 800 13px Manrope, sans-serif; letter-spacing: .035em; white-space: nowrap; }
.purchase-counter-commands { display: flex; flex: 0 0 auto; justify-content: center; gap: 3px; flex-wrap: nowrap; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title > .purchase-layout-tabs { display: flex; width: auto; flex: 0 0 auto; align-items: center; flex-wrap: nowrap; gap: 3px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title > .purchase-layout-tabs button { display: inline-flex; width: auto; min-height: 30px; height: 30px; grid-template-columns: none; grid-template-rows: none; gap: 4px; padding: 4px 7px; font-size: 11px; white-space: nowrap; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title > .purchase-layout-tabs button > span { display: grid; width: 18px; height: 18px; grid-row: auto; border-radius: 2px; font-size: 12px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title > .purchase-layout-tabs button b { font-size: 11px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title > .purchase-layout-tabs button small, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title > .purchase-layout-tabs button[aria-selected="true"]::after { display: none; }
.purchase-counter-title button { min-height: 30px; height: 30px; padding: 4px 7px; border: 1px solid #78a9ba; border-radius: 2px; color: #17475a; background: #f7fcfe; font: 700 11px "DM Sans", sans-serif; cursor: pointer; }
.purchase-counter-title button:hover, .purchase-counter-title button:focus-visible { border-color: var(--classic-blue); outline: 2px solid #fff; outline-offset: 1px; background: #e9f7fb; }
.purchase-counter-commands button[data-counter-command="fullscreen"] { display: inline-flex; align-items: center; gap: 3px; }
.purchase-counter-commands button[data-counter-command="fullscreen"].active { border-color: var(--classic-blue); color: #fff; background: var(--classic-blue); box-shadow: 0 0 0 1px #fff inset; }
.purchase-counter-commands button[data-counter-command="fullscreen"][hidden] { display: none; }
.purchase-counter-title kbd { font: inherit; }
.purchase-counter-title > span { flex: 0 0 auto; margin-left: auto; padding: 6px 8px; border: 1px solid #78a9ba; border-radius: 2px; color: #315b67; background: rgba(255,255,255,.55); font-size: 11px; white-space: nowrap; }
.purchase-counter-title > span b { color: #075f85; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title > span { border-color: var(--classic-line); background: rgba(0,0,0,.24); }
.purchase-counter-themes { display: flex; min-width: max-content; flex: 0 0 auto; align-items: center; justify-content: flex-end; gap: 4px; flex-wrap: nowrap; }
.purchase-counter-themes > b { margin-right: 2px; color: var(--counter-muted); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.purchase-counter-themes button { display: inline-flex; min-height: 28px; height: 28px; align-items: center; gap: 5px; padding: 4px 8px; border: 1px solid var(--classic-line); border-radius: 14px; color: var(--counter-muted); background: rgba(0,0,0,.24); font-size: 10px; font-weight: 750; cursor: pointer; }
.purchase-counter-themes button i { width: 10px; height: 10px; border-radius: 50%; background: var(--theme-dot); box-shadow: 0 0 0 1px color-mix(in srgb, var(--theme-dot) 72%, #000); }
.purchase-counter-themes button[data-counter-theme="orange"] { --theme-dot: #d9751e; }
.purchase-counter-themes button[data-counter-theme="blue"] { --theme-dot: #0878a7; }
.purchase-counter-themes button[data-counter-theme="emerald"] { --theme-dot: #168168; }
.purchase-counter-themes button[data-counter-theme="slate"] { --theme-dot: #5b6d7c; }
.purchase-counter-themes button[aria-checked="true"] { border-color: var(--classic-blue); color: #fff; background: var(--classic-blue); box-shadow: 0 0 0 1px #fff inset; }
.purchase-counter-themes button[aria-checked="true"] i { box-shadow: 0 0 0 1px rgba(255,255,255,.9); }
.purchase-counter-themes button:focus-visible { outline: 2px solid #fff; outline-offset: 1px; box-shadow: 0 0 0 3px var(--classic-blue); }
.purchase-counter-context { display: none; }
.purchase-counter-context span { display: grid; gap: 2px; padding: 7px 10px; border-right: 1px solid var(--classic-line); }
.purchase-counter-context span:last-child { border-right: 0; }
.purchase-counter-context small { color: #507785; font-size: 7px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.purchase-counter-context b { overflow: hidden; color: #173e4c; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-entry-section { min-height: 0; margin: 0; border: 1px solid var(--classic-line); border-radius: 0; background: #edf9fc; box-shadow: none; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-entry-section-head { min-height: 31px; padding: 5px 9px; border-bottom: 1px solid var(--classic-line); background: linear-gradient(#d5edf4, #c4e4ed); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-entry-section-head h3 { color: #173e4c; font-size: 9px; letter-spacing: .055em; text-transform: uppercase; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-entry-section-head p, .purchase-entry-modal[data-purchase-layout="counter-grid"] .section-number { display: none; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-lines-section > .invoice-entry-section-head, .purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-lines-section > .purchase-fast-entry { display: none; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .section-status { padding: 3px 6px; border-radius: 1px; color: var(--counter-text); background: rgba(0,0,0,.24); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .invoice-entry-section-head { display: none; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px 10px; padding: 6px 8px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid .form-field { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 3px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid .form-field label { margin: 0; color: #315b67; font-size: 12.8px; line-height: 1.1; text-align: left; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid input, .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid select { width: 100%; min-height: 24px; height: 24px; padding: 2px 5px; border-color: #a8c8d3; border-radius: 1px; color: #183f4d; background: #fff; font-size: 9px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-old-invoice-actions button { min-height: 20px; height: 20px; padding: 1px 6px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid .purchase-invoice-note textarea { width: 100%; min-height: 26px; height: 26px; padding: 4px 6px; border-color: #a8c8d3; border-radius: 1px; resize: none; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid .form-field small { display: none; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-entry { margin: 0; padding: 7px 8px; border-width: 0 0 1px; border-color: var(--classic-line); border-radius: 0; background: #eef9fc; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-entry-head, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-product { display: none; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-entry-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px 10px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid .purchase-invoice-note { display: grid; grid-column: span 2; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 3px; min-width: 0; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid .purchase-invoice-note label { min-height: 18px; margin: 0; font-size: 11.2px; line-height: 1.1; white-space: nowrap; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid .purchase-invoice-note textarea { width: 100%; min-height: 26px; height: 26px; padding: 4px 6px; border-color: var(--counter-input-line); border-radius: 1px; resize: none; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid .purchase-fast-control { grid-template-columns: minmax(0, 1fr); gap: 3px; align-items: start; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid .purchase-source-combobox { grid-column: auto; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid .purchase-fast-control label { grid-column: auto; min-height: 18px; color: #315b67; font-size: 11.2px; white-space: nowrap; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid input, .purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid select { height: 26px; padding: 2px 5px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid button { min-height: 26px; height: 26px; padding: 3px 8px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid .purchase-total-check { grid-template-columns: minmax(0, 1fr); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid .purchase-total-check output { min-height: 0; margin: 0; white-space: nowrap; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-entry-head b { color: #075f85; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-entry-head small { color: #507785; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-entry-head > span { display: none; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-control label { color: #315b67; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-control input, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-control select { border-color: #a8c8d3; border-radius: 1px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-lines-section { overflow: hidden; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor { height: 100%; margin: 0; overflow: auto; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor { scrollbar-color: #3f78a8 #dce7ef; scrollbar-width: auto; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor::-webkit-scrollbar { width: 13px; height: 16px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor::-webkit-scrollbar-track { border-top: 1px solid #aebfcb; background: #dce7ef; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor::-webkit-scrollbar-thumb { border: 3px solid #dce7ef; border-radius: 999px; background: #3f78a8; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor::-webkit-scrollbar-thumb:hover { background: #245f91; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor table { min-width: 900px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor thead { position: sticky; top: 0; z-index: 1; color: #173e4c; background: linear-gradient(#d5edf4, #b8dce7); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor th { padding: 5px 6px; border-right: 1px solid #78a9ba; border-bottom: 1px solid #568fa4; font-size: 9px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor td { padding: 3px 5px; border-right: 1px solid var(--classic-line); border-bottom: 1px solid var(--classic-line); color: var(--counter-text); background: rgba(255,255,255,.06); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor input, .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor select { min-height: 25px; border-radius: 1px; font-size: 10px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-product-picker { width: 100%; min-width: 0; max-width: 100%; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-product-search, .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-qty, .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-rate, .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-discount, .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-gst, .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-mrp, .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-additional-barcode { width: 100%; min-width: 0; padding-inline: 5px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-uom-detail { gap: 2px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-uom-detail > span, .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-uom-detail > small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .remove-line { width: 28px; min-width: 28px; height: 28px; padding: 0; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .add-line { margin: 4px 6px; padding: 5px 8px; color: #075f85; background: #e9f7fb; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .pharmacy-line-fields { border-color: var(--classic-line); background: rgba(255,255,255,.06); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .line-product-meta, .purchase-entry-modal[data-purchase-layout="counter-grid"] .line-taxable-note, .purchase-entry-modal[data-purchase-layout="counter-grid"] .line-uom-detail, .purchase-entry-modal[data-purchase-layout="counter-grid"] .line-uom-detail small { color: var(--counter-muted); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .line-price-source { color: #7dd3fc; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .line-product-meta, .purchase-entry-modal[data-purchase-layout="counter-grid"] .line-price-source { display: none !important; margin: 0; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] [data-purchase-line-details-toggle] { display: none; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .line-amount-cell .line-amount { color: var(--counter-text); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.4fr); margin: 0; border: 1px solid var(--classic-line); background: #edf9fc; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary > div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2px 12px; align-content: start; align-items: center; padding: 4px 8px; }
.purchase-counter-summary > div + div { border-left: 1px solid var(--classic-line); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary > div:last-child { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.purchase-counter-summary h4 { grid-column: 1 / -1; margin: -4px -8px 1px; padding: 3px 7px; color: #245968; background: linear-gradient(#d5edf4, #c4e4ed); font-size: 14px; letter-spacing: .05em; text-align: center; }
.purchase-counter-summary p { display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: 2px; margin: 0; padding: 2px 0; border-bottom: 0; color: #315b67; font-size: 16px; text-align: center; }
.purchase-counter-summary p b { color: #123f4e; font-variant-numeric: tabular-nums; }
.purchase-counter-summary small { display: none; }
.purchase-counter-summary .net { margin: 0; padding: 3px 5px; border-top: 0; color: #fff; background: var(--classic-blue); font-weight: 800; }
.purchase-counter-summary .net b { color: #fff; font-size: 20px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-total-section > .invoice-entry-section-head { display: none; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-total-section .invoice-totals { display: none; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-total-section .document-total-layout { grid-template-columns: 1fr; padding: 3px 6px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-total-section .document-posting-card { display: grid; grid-template-columns: auto minmax(220px, 1fr) auto; gap: 6px; align-items: center; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-total-section .document-posting-card { border-color: var(--classic-line); background: rgba(255,255,255,.06); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-total-section textarea { min-height: 26px; height: 26px; padding: 4px 6px; resize: none; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .posting-result-list { display: flex; gap: 8px; white-space: nowrap; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .modal-body > .form-error:empty { display: none; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] > #document-form > .modal-foot { display: none; }
.purchase-entry-modal .document-total-layout.purchase-total-only { grid-template-columns: 340px; justify-content: end; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-total-section .document-total-layout.purchase-total-only { grid-template-columns: 1fr; justify-content: stretch; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .modal-head, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title, .purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-entry-section-head, .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor thead, .purchase-counter-summary h4 { background: linear-gradient(var(--counter-head-a), var(--counter-head-b)); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .modal-body { background: var(--counter-canvas); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-chrome, .purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-entry-section, .purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-entry, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary { background: var(--counter-panel); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title > strong, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title > span, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title > span b, .purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-entry-section-head h3, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-context b, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary h4, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary p b { color: var(--counter-text); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid .form-field label, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-control label, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-context small, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary p { color: var(--counter-muted); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid input, .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid select, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-control input, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-control select { border-color: var(--counter-input-line); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-total-check output { color: var(--counter-muted); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-total-check output[data-state="match"] { color: #6ee7c5; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-total-check output[data-state="warning"] { color: #fdba74; }
.purchase-entry-modal #document-form .modal-body label { color: var(--purchase-label-color); }
.purchase-entry-modal[data-purchase-layout] .document-items-editor thead { color: #fff; background: #123a63; }
.purchase-entry-modal .document-items-editor thead th { text-align: center; vertical-align: middle; }
.purchase-entry-modal .document-items-editor .required-column-mark { color: #ffdf6b; font-weight: 900; }
.purchase-entry-modal .document-items-editor :is(input,select).purchase-required-error,
.purchase-entry-modal .document-items-editor td.purchase-required-error { outline: 2px solid #c62828 !important; outline-offset: -2px; background-color: #fff1f0 !important; }
.purchase-entry-modal .document-items-editor tbody .line-row > td:not(:first-child) { text-align: center; vertical-align: middle; }
.purchase-entry-modal .document-items-editor tbody .line-row > td:not(:first-child) :is(input, select, output) { text-align: center; }
.purchase-entry-modal .document-items-editor tbody .line-row > td:not(:first-child) select { text-align-last: center; }
.purchase-entry-modal .document-items-editor :is(.line-amount, .line-taxable-note, .line-hsn-code, .line-uom-detail) { text-align: center; }
.purchase-entry-modal[data-purchase-layout] .document-items-editor th { border-color: #31597e; }

/* Windows desktop treatment for the keyboard-first purchase counter sheet. */
.purchase-entry-modal[data-purchase-layout="counter-grid"] { --win-accent: #0f6cbd; --win-accent-hover: #115ea3; --win-accent-soft: #e6f2fb; --win-border: #c9c9c9; --win-border-soft: #e5e5e5; --win-canvas: #e9e9e9; --win-surface: #ffffff; --win-toolbar: #f5f5f5; --win-text: #1b1b1b; --win-muted: #5d5d5d; --classic-blue: var(--win-accent); --classic-line: var(--win-border); --counter-canvas: var(--win-canvas); --counter-panel: var(--win-surface); --counter-text: var(--win-text); --counter-muted: var(--win-muted); --counter-input-line: #8a8a8a; --purchase-label-color: #111; color: var(--win-text); background: var(--win-canvas); font-family: "Segoe UI Variable", "Segoe UI", sans-serif; }
.purchase-entry-modal[data-purchase-layout="counter-grid"][data-counter-theme="orange"] { --win-accent: #ca5010; --win-accent-hover: #a74109; --win-accent-soft: #fff0e5; --classic-blue: var(--win-accent); --classic-line: var(--win-border); --counter-canvas: var(--win-canvas); --counter-panel: var(--win-surface); --counter-text: var(--win-text); --counter-muted: var(--win-muted); --counter-input-line: #8a8a8a; }
.purchase-entry-modal[data-purchase-layout="counter-grid"][data-counter-theme="blue"] { --win-accent: #0f6cbd; --win-accent-hover: #115ea3; --win-accent-soft: #e6f2fb; --classic-blue: var(--win-accent); --classic-line: var(--win-border); --counter-canvas: var(--win-canvas); --counter-panel: var(--win-surface); --counter-text: var(--win-text); --counter-muted: var(--win-muted); --counter-input-line: #8a8a8a; }
.purchase-entry-modal[data-purchase-layout="counter-grid"][data-counter-theme="emerald"] { --win-accent: #107c6c; --win-accent-hover: #0b6458; --win-accent-soft: #e4f4f1; --classic-blue: var(--win-accent); --classic-line: var(--win-border); --counter-canvas: var(--win-canvas); --counter-panel: var(--win-surface); --counter-text: var(--win-text); --counter-muted: var(--win-muted); --counter-input-line: #8a8a8a; }
.purchase-entry-modal[data-purchase-layout="counter-grid"][data-counter-theme="slate"] { --win-accent: #4f5f73; --win-accent-hover: #3d4a5a; --win-accent-soft: #edf1f5; --classic-blue: var(--win-accent); --classic-line: var(--win-border); --counter-canvas: var(--win-canvas); --counter-panel: var(--win-surface); --counter-text: var(--win-text); --counter-muted: var(--win-muted); --counter-input-line: #8a8a8a; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .modal-body { gap: 6px; padding: 8px; background: var(--win-canvas); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-chrome { overflow: hidden; border: 1px solid #b7b7b7; border-radius: 8px; background: var(--win-surface); box-shadow: 0 1px 2px rgba(0,0,0,.08); }
.purchase-counter-windowbar { display: flex; min-height: 34px; align-items: center; justify-content: space-between; gap: 12px; padding-left: 10px; border-bottom: 1px solid var(--win-accent-hover); color: #fff; background: var(--win-accent); user-select: none; }
.purchase-counter-window-title, .purchase-counter-window-actions { display: flex; min-width: 0; align-items: center; }
.purchase-counter-window-title { gap: 8px; }
.purchase-counter-window-title strong { overflow: hidden; font-size: 12px; font-weight: 600; letter-spacing: .01em; text-overflow: ellipsis; white-space: nowrap; }
.purchase-counter-window-title > span:last-child { padding-left: 8px; border-left: 1px solid rgba(255,255,255,.42); color: rgba(255,255,255,.88); font-size: 11px; }
.purchase-counter-app-icon { display: grid; width: 20px; height: 20px; place-items: center; border-radius: 4px; color: var(--win-accent); background: #fff; font-size: 11px; font-weight: 700; }
.purchase-counter-window-actions { align-self: stretch; }
.purchase-counter-draft-state { margin-right: 10px; color: rgba(255,255,255,.92); font-size: 11px; }
.purchase-counter-draft-state::first-letter { color: #ffe08a; }
.purchase-counter-window-actions button { display: grid; width: 44px; min-width: 44px; height: 100%; min-height: 32px; place-items: center; border: 0; border-radius: 0; color: #fff; background: transparent; font: 400 17px/1 "Segoe UI", sans-serif; cursor: pointer; }
.purchase-counter-window-actions button:hover, .purchase-counter-window-actions button:focus-visible { outline: 0; background: rgba(255,255,255,.16); }
.purchase-counter-window-actions button[data-counter-command="cancel"]:hover, .purchase-counter-window-actions button[data-counter-command="cancel"]:focus-visible { color: #fff; background: #c42b1c; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title { display: flex; min-height: 46px; align-items: center; gap: 8px; padding: 6px 8px; overflow-x: auto; border-bottom: 1px solid var(--win-border); color: var(--win-text); background: var(--win-toolbar); white-space: nowrap; scrollbar-width: thin; }
.purchase-counter-view-switcher { flex: 0 0 auto; padding-right: 8px; border-right: 1px solid var(--win-border); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-view-switcher .purchase-layout-tabs { display: flex; width: auto; gap: 2px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-view-switcher .purchase-layout-tabs button { display: inline-flex; width: auto; min-height: 30px; height: 30px; grid-template-columns: none; grid-template-rows: none; align-items: center; gap: 4px; padding: 4px 8px; border-color: transparent; border-radius: 4px; color: #313131; background: transparent; font: 600 11px "Segoe UI", sans-serif; white-space: nowrap; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-view-switcher .purchase-layout-tabs button:hover { background: #e8e8e8; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-view-switcher .purchase-layout-tabs button[aria-selected="true"] { color: var(--win-accent); background: var(--win-accent-soft); box-shadow: inset 0 -2px var(--win-accent); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-view-switcher .purchase-layout-tabs button > span { display: grid; width: 18px; height: 18px; grid-row: auto; place-items: center; border-radius: 3px; color: inherit; background: transparent; font-size: 12px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-view-switcher .purchase-layout-tabs button b { color: inherit; font-size: 11px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-view-switcher .purchase-layout-tabs button small, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-view-switcher .purchase-layout-tabs button[aria-selected="true"]::after { display: none; }
.purchase-counter-commands { gap: 2px; }
.purchase-counter-title .purchase-counter-commands button { display: inline-flex; min-height: 32px; height: 32px; align-items: center; gap: 5px; padding: 4px 9px; border: 1px solid transparent; border-radius: 4px; color: #242424; background: transparent; font: 600 11px "Segoe UI", sans-serif; }
.purchase-counter-title .purchase-counter-commands button:hover, .purchase-counter-title .purchase-counter-commands button:focus-visible { border-color: #d0d0d0; outline: 2px solid var(--win-accent); outline-offset: -2px; background: #fff; }
.purchase-counter-title .purchase-counter-commands button.purchase-counter-post { border-color: var(--win-accent); color: #fff; background: var(--win-accent); }
.purchase-counter-title .purchase-counter-commands button.purchase-counter-post:hover, .purchase-counter-title .purchase-counter-commands button.purchase-counter-post:focus-visible { border-color: var(--win-accent-hover); background: var(--win-accent-hover); }
.purchase-counter-title kbd { padding: 1px 4px; border: 1px solid #b5b5b5; border-bottom-width: 2px; border-radius: 3px; color: #424242; background: #fff; font: 600 9px "Segoe UI", sans-serif; }
.purchase-counter-title .purchase-counter-post kbd { border-color: rgba(255,255,255,.55); color: #fff; background: rgba(255,255,255,.12); }
.purchase-counter-shortcuts { display: inline-flex; margin-left: auto; align-items: center; gap: 2px; }
.purchase-counter-shortcuts button { display: inline-flex; min-width: 54px; height: 28px; align-items: center; justify-content: center; gap: 4px; padding: 3px 7px; border: 1px solid transparent; border-radius: 4px; color: var(--win-text); background: transparent; font: 600 10px "Segoe UI", sans-serif; }
.purchase-counter-shortcuts button span { color: var(--win-accent); font-size: 14px; line-height: 1; }
.purchase-counter-shortcuts button:hover, .purchase-counter-shortcuts button:focus-visible { border-color: var(--win-border); outline: 2px solid var(--win-accent); outline-offset: -2px; background: #fff; }
.purchase-counter-shortcuts button[data-counter-route="pos3"] { border-color: #18794e; color: #fff; background: #218a5b; box-shadow: 0 1px 2px rgba(13,78,48,.2); }
.purchase-counter-shortcuts button[data-counter-route="pos3"] span { color: #fff; }
.purchase-counter-shortcuts button[data-counter-route="pos3"]:hover, .purchase-counter-shortcuts button[data-counter-route="pos3"]:focus-visible { border-color: #0f6640; outline-color: #0f6640; color: #fff; background: #18794e; }
.purchase-counter-shortcuts button[data-purchase-quick-access] { min-width: 88px; border-color: #b8c9df; color: #123a63; background: #edf4fc; }
.purchase-counter-shortcuts button[data-purchase-quick-access] span { color: #175a92; }
.purchase-counter-shortcuts button[data-purchase-quick-access]:hover, .purchase-counter-shortcuts button[data-purchase-quick-access]:focus-visible { border-color: #175a92; outline-color: #175a92; background: #fff; }
.purchase-quick-access-modal { display: flex; width: min(1120px, calc(100vw - 28px)); height: auto; max-height: min(95vh, 940px); flex-direction: column; overflow: hidden; border: 1px solid #8eb5d6; border-radius: 14px; box-shadow: 0 22px 55px rgba(12,51,83,.28); }
.purchase-quick-access-modal > .modal-head, .purchase-quick-access-modal > .purchase-quick-access-bar, .purchase-quick-access-modal > .modal-foot { flex: 0 0 auto; }
.purchase-quick-access-modal .modal-head { border-bottom-color: #095a9f; color: #fff; background: #0f6cbd; }
.purchase-quick-access-modal .modal-head h2, .purchase-quick-access-modal .modal-head p { color: #fff; }
.purchase-quick-access-modal .modal-head .close { border-color: rgba(255,255,255,.72); color: #fff; background: #175a92; }
.purchase-quick-access-modal .modal-head .close:hover, .purchase-quick-access-modal .modal-head .close:focus-visible { border-color: #0f4775; outline: 3px solid rgba(23,90,146,.18); color: #fff; background: #0f4775; }
.purchase-quick-access-modal .modal-foot .secondary-btn { border-color: #175a92; color: #fff; background: #175a92; }
.purchase-quick-access-modal .modal-foot .secondary-btn:hover, .purchase-quick-access-modal .modal-foot .secondary-btn:focus-visible { border-color: #0f4775; outline: 3px solid rgba(23,90,146,.18); color: #fff; background: #0f4775; }
.purchase-quick-access-bar { display: flex; flex: 0 0 auto; min-height: 48px; align-items: stretch; gap: 0; overflow-x: auto; border-bottom: 1px solid #b9ccdc; background: #fff; box-shadow: 0 3px 9px rgba(12,51,83,.08); scrollbar-width: thin; }
.purchase-quick-access-bar button { display: inline-flex; min-width: 190px; align-items: center; justify-content: center; gap: 8px; padding: 10px 18px; border: 0; border-right: 1px solid #d7e2eb; border-bottom: 3px solid transparent; color: #41596d; background: #fff; font: 700 12px "Segoe UI",sans-serif; cursor: pointer; white-space: nowrap; }
.purchase-quick-access-bar button span { color: #175a92; font-size: 16px; }
.purchase-quick-access-bar button:hover, .purchase-quick-access-bar button:focus-visible { outline: 0; color: #0f4775; background: #edf4fc; }
.purchase-quick-access-bar button.active { border-bottom-color: #0f6cbd; color: #0f4775; background: #e8f2fb; }
.purchase-quick-access-modal .modal-body { min-height: 0; max-height: calc(min(95vh, 940px) - 190px); flex: 0 1 auto; padding: 14px; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; background: linear-gradient(145deg,#edf4fa,#f8fafc); scrollbar-color: #6d9bc2 #e3edf5; scrollbar-width: thin; }
.purchase-quick-access-modal .modal-body::-webkit-scrollbar { width: 10px; }
.purchase-quick-access-modal .modal-body::-webkit-scrollbar-track { background: #e3edf5; }
.purchase-quick-access-modal .modal-body::-webkit-scrollbar-thumb { border: 2px solid #e3edf5; border-radius: 999px; background: #6d9bc2; }
.purchase-quick-access-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.purchase-quick-access-group { --quick-tone: #175a92; --quick-soft: #e8f1fa; min-width: 0; overflow: hidden; border: 1px solid #d2dfeb; border-radius: 12px; background: #fff; box-shadow: 0 5px 16px rgba(31,71,103,.07); }
.purchase-quick-access-group[data-quick-group="workflow"] { grid-column: 1 / -1; }
.purchase-quick-access-group[data-quick-group="masters"] { --quick-tone: #18704d; --quick-soft: #e7f5ee; }
.purchase-quick-access-group[data-quick-group="setup"] { --quick-tone: #9a5b11; --quick-soft: #fff1dc; }
.purchase-quick-access-group header { display: flex; min-height: 64px; align-items: center; gap: 11px; padding: 12px 14px; border-bottom: 1px solid #dce6ef; background: linear-gradient(100deg,var(--quick-soft),#fff); }
.purchase-quick-access-group header > span { display: grid; width: 36px; height: 36px; flex: 0 0 36px; place-items: center; border-radius: 9px; color: #fff; background: var(--quick-tone); font-size: 18px; box-shadow: 0 3px 8px color-mix(in srgb,var(--quick-tone) 28%,transparent); }
.purchase-quick-access-group h3 { margin: 0; color: var(--quick-tone); font-size: 15px; }
.purchase-quick-access-group p { margin: 3px 0 0; color: #5e7080; font-size: 11px; line-height: 1.35; }
.purchase-quick-access-items { display: grid; gap: 6px; padding: 8px; }
.purchase-quick-access-group[data-quick-group="workflow"] .purchase-quick-access-items { grid-template-columns: repeat(3,minmax(0,1fr)); }
.purchase-quick-access-group button { display: grid; min-width: 0; min-height: 58px; grid-template-columns: 34px minmax(0,1fr) 20px; align-items: center; gap: 9px; padding: 8px 9px; border: 1px solid #e1e8ee; border-radius: 9px; color: #273847; background: #fbfcfd; text-align: left; cursor: pointer; transition: border-color .15s ease,box-shadow .15s ease,transform .15s ease,background .15s ease; }
.purchase-quick-access-group button:hover, .purchase-quick-access-group button:focus-visible { border-color: var(--quick-tone); outline: 0; background: #fff; box-shadow: 0 6px 15px color-mix(in srgb,var(--quick-tone) 15%,transparent); transform: translateY(-1px); }
.purchase-quick-access-group button > span:first-child { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 8px; color: var(--quick-tone); background: var(--quick-soft); font-size: 16px; }
.purchase-quick-access-copy { display: grid; min-width: 0; gap: 2px; }
.purchase-quick-access-group button b { color: #213547; font-size: 12px; line-height: 1.25; }
.purchase-quick-access-group button small { color: #667786; font-size: 10px; line-height: 1.3; white-space: normal; }
.purchase-quick-access-group button em { display: grid; width: 20px; height: 20px; place-items: center; border-radius: 50%; color: var(--quick-tone); background: var(--quick-soft); font-size: 18px; font-style: normal; line-height: 1; }
@media (max-width: 780px) { .purchase-quick-access-grid { grid-template-columns: 1fr; } .purchase-quick-access-group[data-quick-group="workflow"] { grid-column: auto; } .purchase-quick-access-group[data-quick-group="workflow"] .purchase-quick-access-items { grid-template-columns: repeat(2,minmax(0,1fr)); } .purchase-quick-access-modal { width: min(94vw,620px); height: auto; max-height: 94dvh; } .purchase-quick-access-modal .modal-body { max-height: calc(94dvh - 190px); } }
@media (max-width: 520px) { .purchase-quick-access-modal .modal-body { padding: 10px; } .purchase-quick-access-group[data-quick-group="workflow"] .purchase-quick-access-items { grid-template-columns: 1fr; } .purchase-quick-access-group button { min-height: 54px; } }
.purchase-counter-themes { margin-left: 0; gap: 2px; }
.purchase-counter-themes > b { margin-right: 4px; color: var(--win-muted); font: 600 10px "Segoe UI", sans-serif; letter-spacing: 0; text-transform: none; }
.purchase-counter-themes button { width: 25px; min-width: 25px; height: 25px; min-height: 25px; justify-content: center; padding: 0; border: 1px solid transparent; border-radius: 4px; color: var(--win-text); background: transparent; }
.purchase-counter-themes button span { display: none; }
.purchase-counter-themes button i { width: 11px; height: 11px; }
.purchase-counter-themes button:hover { border-color: var(--win-border); background: #fff; }
.purchase-counter-themes button[aria-checked="true"] { border-color: var(--win-accent); color: var(--win-text); background: var(--win-accent-soft); box-shadow: none; }
.purchase-counter-themes button:focus-visible { outline: 2px solid var(--win-accent); outline-offset: 1px; box-shadow: none; }
.purchase-counter-title > .purchase-counter-payment-status { display: inline-flex; margin-left: 0; align-items: center; gap: 5px; padding: 5px 8px; border: 1px solid #e1b31d; border-radius: 999px; color: #5d4a00; background: #fff7d6; font-size: 10px; }
.purchase-counter-payment-status > i { width: 6px; height: 6px; border-radius: 50%; background: #d29200; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title > .purchase-counter-payment-status { border-color: #e1b31d; color: #5d4a00; background: #fff7d6; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title > .purchase-counter-payment-status b { color: #5d4a00; }
.purchase-counter-context { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 0; background: #fafafa; }
.purchase-counter-context span { display: flex; min-width: 0; align-items: center; gap: 7px; padding: 5px 9px; border-right: 1px solid var(--win-border-soft); }
.purchase-counter-context small { color: var(--win-muted); font-size: 9px; font-weight: 600; letter-spacing: 0; text-transform: none; }
.purchase-counter-context b { color: var(--win-text); font-size: 10px; font-weight: 600; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-entry-section, .purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary { border-color: var(--win-border); border-radius: 6px; color: var(--win-text); background: var(--win-surface); box-shadow: 0 1px 1px rgba(0,0,0,.04); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid { gap: 7px 10px; padding: 8px 10px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid .form-field label, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-control label { color: #323130; font-size: 11px; font-weight: 600; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid input, .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid select, .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid .purchase-invoice-note textarea, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-control input, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-control select { min-height: 28px; height: 28px; padding: 3px 7px; border: 1px solid #8a8a8a; border-radius: 3px; color: var(--win-text); background: #fff; font: 400 11px "Segoe UI", sans-serif; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] :is(input,select,textarea,button):focus-visible { outline: 2px solid var(--win-accent); outline-offset: 1px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor { border-radius: 5px; background: var(--win-surface); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor thead { color: #fff; background: var(--win-accent-hover); box-shadow: 0 1px 0 #7a7a7a; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor th { padding: 6px; border-color: rgba(255,255,255,.28); color: #fff; background: var(--win-accent-hover); font: 600 10px "Segoe UI", sans-serif; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor td { border-color: #dedede; color: var(--win-text); background: #fff; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor tbody tr:nth-child(even) td { background: #fafafa; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor tbody tr:focus-within td { background: var(--win-accent-soft); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor input, .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor select { border-color: #a6a6a6; border-radius: 3px; color: #1b1b1b; background: #fff; font-family: "Segoe UI", sans-serif; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .remove-line { border-radius: 3px; color: #a4262c; background: transparent; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .remove-line:hover { color: #fff; background: #c42b1c; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .add-line { border: 1px solid var(--win-border); border-radius: 4px; color: var(--win-accent); background: #fff; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .line-amount-cell .line-amount { color: var(--win-text); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary { overflow: hidden; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary > div + div { border-left-color: var(--win-border); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary h4 { color: #323130; background: #f3f3f3; font: 600 11px "Segoe UI", sans-serif; letter-spacing: .02em; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary p { color: var(--win-muted); font-size: 13px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary p b { color: var(--win-text); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary .net { border-radius: 4px; color: #fff; background: var(--win-accent); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary .net b { color: #fff; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-total-section .document-posting-card { border-color: var(--win-border); color: var(--win-text); background: var(--win-surface); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .posting-result-list span { color: #315b49; background: #eef8f3; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-total-check output { color: var(--win-muted); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-total-check output[data-state="match"] { color: #0f6b4b; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-total-check output[data-state="warning"] { color: #9d4b00; }

@media (min-width: 981px) {
  .purchase-entry-modal .document-header-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(145px, .68fr);
    grid-template-areas:
      "supplier posting-date invoice-number supplier-date"
      "po-reference source payment due-date"
      "place note old-invoice total";
  }
  .purchase-entry-modal .document-header-grid > .form-field.party-field { grid-area: supplier; }
  .purchase-entry-modal .document-header-grid > .form-field.supplier-invoice-number-field { grid-area: invoice-number; }
  .purchase-entry-modal .document-header-grid > .form-field.po-grn-reference-field { grid-area: po-reference; }
  .purchase-entry-modal .document-header-grid > .form-field.posting-date-field { grid-area: posting-date; }
  .purchase-entry-modal .document-header-grid > .form-field.payment-terms-field { grid-area: payment; }
  .purchase-entry-modal .document-header-grid > .form-field.place-of-supply-field { grid-area: place; }
  .purchase-entry-modal .document-header-grid > .form-field.purchase-source-control { grid-area: source; }
  .purchase-entry-modal .document-header-grid > .form-field.supplier-invoice-date-field { grid-area: supplier-date; }
  .purchase-entry-modal .document-header-grid > .form-field.purchase-invoice-note { grid-area: note; }
  .purchase-entry-modal .document-header-grid > .form-field.purchase-old-invoice-control { grid-area: old-invoice; }
  .purchase-entry-modal .document-header-grid > .form-field.purchase-total-check { grid-area: total; }
  .purchase-entry-modal .document-header-grid > .form-field.due-date-field { grid-area: due-date; }
  body:has(#app[data-view="purchase-entry"] .purchase-entry-modal[data-purchase-layout="counter-grid"]) #app[data-view="purchase-entry"] { overflow: hidden; }
  #app[data-view="purchase-entry"] > .purchase-entry-modal[data-purchase-layout="counter-grid"] { height: 100%; min-height: 0; overflow: hidden; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] > #document-form { height: 100%; min-height: 0; overflow: hidden; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .modal-body { display: grid; height: 100%; min-height: 0; grid-template-rows: auto auto minmax(110px, 1fr) auto auto auto; gap: 4px; overflow: hidden; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] > #document-form.purchase-header-hidden > .modal-body { grid-template-rows: auto minmax(110px, 1fr) auto auto auto; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor table { min-width: 1720px; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor thead tr::before, .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor tbody .line-row::before { width: 34px; min-width: 34px; padding-inline: 2px; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-item-head { width: 15%; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-hsn-head { width: 62px; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-qty-head { width: 52px; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-uom-head { width: 82px; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-alternate-uom-head { width: 92px; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-rate-head { width: 76px; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-discount-head { width: 56px; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-gst-head { width: 50px; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-mrp-head { width: 56px; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-batch-selling-price-head { width: 82px; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-additional-barcode-head { width: 112px; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-amount-head { width: 94px; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor .line-remove-head { width: 34px; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor th { padding-inline: 4px; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor td { height: 29px; padding: 2px 3px; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor input, .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor select { min-height: 23px; height: 23px; padding-block: 1px; padding-inline: 3px; font-size: 9px; line-height: normal; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .line-hsn-code { padding-top: 5px; font-size: 9px; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .line-uom-detail > span, .purchase-entry-modal[data-purchase-layout="counter-grid"] .line-uom-detail > small { display: none; }
}
.purchase-counter-calculator { width: min(360px, calc(100vw - 32px)); padding: 0; border: 1px solid #568fa4; border-radius: 7px; box-shadow: 0 18px 60px rgba(23,62,76,.26); }
.purchase-counter-calculator::backdrop { background: rgba(23,62,76,.34); }
.purchase-counter-calculator > div { display: grid; grid-template-columns: 1fr 80px 1fr; gap: 9px; padding: 12px; }
.purchase-counter-calculator > div > div { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; margin: -12px -12px 2px; padding: 9px 11px; color: #fff; background: #0878a7; }
.purchase-counter-calculator > div > div button { border: 0; color: #fff; background: transparent; font-size: 18px; cursor: pointer; }
.purchase-counter-calculator label { display: grid; gap: 4px; color: #315b67; font-size: 8px; }
.purchase-counter-calculator input, .purchase-counter-calculator select { width: 100%; height: 34px; }
.purchase-counter-calculator output { grid-column: 1 / -1; padding: 9px; border: 1px solid #a8c8d3; color: #075f85; background: #edf9fc; font: 800 18px Manrope, sans-serif; text-align: right; }
.purchase-counter-calculator small { grid-column: 1 / -1; color: #507785; font-size: 8px; }

/* Give each purchase layout a calm, recognizable workspace without using status colours. */
.purchase-layout-tabs button { position: relative; border-color: var(--layout-border); background: var(--layout-soft); transition: border-color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease; }
.purchase-layout-tabs button[data-purchase-layout-tab="standard"] { --layout-accent: #a45f16; --layout-soft: #fff6e7; --layout-border: #ecd0a3; }
.purchase-layout-tabs button[data-purchase-layout-tab="erp-grid"] { --layout-accent: #5364a2; --layout-soft: #f1f3fc; --layout-border: #cbd1ec; }
.purchase-layout-tabs button[data-purchase-layout-tab="counter-grid"] { --layout-accent: #0f6cbd; --layout-soft: #e6f2fb; --layout-border: #8eb5d6; }
.purchase-layout-tabs button > span, .purchase-entry-modal[data-purchase-layout] .purchase-layout-tabs button > span { color: var(--layout-accent); background: color-mix(in srgb, var(--layout-soft) 55%, var(--layout-border)); }
.purchase-layout-tabs button:hover { border-color: var(--layout-accent); background: color-mix(in srgb, var(--layout-soft) 82%, #fff); transform: translateY(-1px); }
.purchase-layout-tabs button[aria-selected="true"], .purchase-entry-modal[data-purchase-layout] .purchase-layout-tabs button[aria-selected="true"] { border-color: var(--layout-accent); background: #fff; box-shadow: 0 0 0 2px color-mix(in srgb, var(--layout-accent) 20%, transparent), 0 4px 12px rgba(41,55,65,.1); }
.purchase-layout-tabs button[aria-selected="true"]::after { content: none; display: none; }
.purchase-layout-tabs button[aria-selected="true"] > span, .purchase-entry-modal[data-purchase-layout] .purchase-layout-tabs button[aria-selected="true"] > span { color: #fff; background: var(--layout-accent); }
.purchase-layout-tabs button[aria-selected="true"] b { color: var(--layout-accent); }
.purchase-layout-tabs button:focus-visible { outline: 3px solid color-mix(in srgb, var(--layout-accent) 35%, #fff); outline-offset: 2px; }
.purchase-entry-modal[data-purchase-layout="standard"] .modal-body { background: #fffaf2; }
.purchase-entry-modal[data-purchase-layout="standard"] .purchase-layout-switcher { border-color: #ead2ae; background: #fff8ec; }
.purchase-entry-modal[data-purchase-layout="standard"] .invoice-entry-section { border-color: #eadcc8; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .modal-body { background: #f4f9fc; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-layout-switcher { border-color: #c6ddea; background: #edf6fb; }
.purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-erp-chrome, .purchase-entry-modal[data-purchase-layout="erp-grid"] .invoice-entry-section { background: #fff; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .modal-body { background: var(--counter-canvas); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-layout-switcher { border-color: var(--classic-line); background: var(--counter-panel); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-entry-section { background: var(--counter-panel); }

@media (max-width: 980px) {
  .advanced-sale-toolbar { grid-template-columns: 1fr 1fr; }
  .advanced-barcode-field { grid-column: 1 / -1; }
  .advanced-sale-mode #document-form > .modal-body > .form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .advanced-sale-insights { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .document-header-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sales-entry-modal .document-header-grid .party-field { grid-column: 1 / -1; }
  .purchase-entry-tools .advanced-sale-toolbar { grid-template-columns: 1fr 1fr; }
  .purchase-tool-message { grid-column: 1 / -1; }
  .document-total-layout { grid-template-columns: 1fr 300px; }
  .purchase-layout-switcher { align-items: stretch; flex-direction: column; }
  .purchase-fast-entry-grid { grid-template-columns: 1fr 1fr; }
  .purchase-total-check { grid-column: 1 / -1; }
  .purchase-old-invoice-control { grid-column: 1 / -1; }
  .purchase-entry-modal[data-purchase-layout="erp-grid"] .document-header-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-entry-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid .purchase-invoice-note { grid-column: 1 / -1; }
  .purchase-entry-modal .document-header-grid > .form-field { grid-column: span 1; }
  .purchase-entry-modal .document-header-grid > .party-field, .purchase-entry-modal .document-header-grid > .purchase-invoice-note { grid-column: 1 / -1; }
  .purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-erp-status { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px 18px; }
  .purchase-counter-commands, .purchase-counter-themes { justify-content: flex-start; }
}

@media (max-width: 640px) {
  .purchase-old-invoice-actions button { min-height: 24px; height: 24px; }
  .purchase-old-invoice-result-head, .purchase-old-invoice-results button { grid-template-columns: minmax(120px, 1fr) minmax(110px, 1fr); }
  .purchase-old-invoice-result-head > :nth-child(n+3), .purchase-old-invoice-results button > :nth-child(n+3) { display: none; }
}

@media (max-width: 760px) {
  .purchase-entry-modal .document-total-layout.purchase-total-only { grid-template-columns: 1fr; justify-content: stretch; }
  #app:has(> .invoice-preview-page) { padding: 12px 12px 24px; }
  .invoice-preview-page > .modal-foot { align-items: stretch; flex-direction: column; }
  .invoice-preview-page > .modal-foot > div { justify-content: flex-start; }
  .invoice-preview-page > .modal-foot button { flex: 1 1 auto; }
  .modal-backdrop:has(.invoice-modal) { inset: 75px 0 0; padding: 12px 12px 24px; }
  .modal-backdrop:has(.invoice-modal) .invoice-modal > .modal-head { top: -12px; }
  .modal-backdrop:has(.invoice-modal) .invoice-modal > .modal-foot { bottom: -24px; align-items: stretch; flex-direction: column; }
  .modal-backdrop:has(.invoice-modal) .invoice-modal > .modal-foot > div { justify-content: flex-start; }
  .modal-backdrop:has(.invoice-modal) .invoice-modal > .modal-foot button { flex: 1 1 auto; }
  .invoice-paper { max-width: 100%; padding: 22px 18px; overflow-x: auto; overscroll-behavior-inline: contain; }
  .invoice-paper > table { min-width: 560px; }
  .invoice-company { flex-direction: column; gap: 14px; }
  .invoice-company > div:last-child { text-align: left; }
  .invoice-summary { width: 100%; max-width: 320px; }
}

@media (max-width: 620px) {
  .invoice-delivery-fields { grid-template-columns: 1fr; }
  .invoice-format-grid { grid-template-columns: 1fr; max-height: 58vh; overflow: auto; }
  .invoice-print-chooser { padding: 8px; }
  .branded-invoice { min-height: 0; padding: 22px 18px; }
  .branded-invoice-head { grid-template-columns: 80px 1fr; gap: 12px; }
  .invoice-logo-box { width: 80px; height: 80px; }
  .invoice-title { grid-column: 1 / -1; justify-items: start; text-align: left; }
  .branded-invoice-meta { flex-wrap: wrap; gap: 18px 32px; }
  .branded-invoice-bottom,.invoice-asset-grid { grid-template-columns: 1fr; }
  .sale-entry-tabs, .advanced-sale-toolbar, .advanced-sale-insights { grid-template-columns: 1fr; }
  .advanced-barcode-field { grid-column: auto; }
  .advanced-barcode-field { grid-template-columns: minmax(0, 1fr) auto; }
  .advanced-barcode-field .barcode-phone-button { grid-column: 1 / -1; }
  .barcode-master-entry { grid-template-columns: 1fr 1fr; }
  .barcode-master-entry > input { grid-column: 1 / -1; }
  .gstin-lookup-entry { grid-template-columns: 1fr; }
  .advanced-sale-mode #document-form > .modal-body > .form-grid { grid-template-columns: 1fr; }
  .advanced-sale-mode #document-form > .modal-body > .form-grid .form-field.full { grid-column: auto; }
  .document-entry-progress i { width: 12px; }
  .document-entry-progress span { font-size: 0; }
  .document-header-grid, .purchase-entry-tools .advanced-sale-toolbar, .document-entry-insights, .document-total-layout { grid-template-columns: 1fr; }
  .document-header-grid .party-field { grid-column: auto; }
  .sales-entry-modal .document-header-grid .place-of-supply-field, .sales-entry-modal .document-header-grid .address-field { grid-column: auto; }
  .section-status { display: none; }
  .app-content:has(> .document-entry-page) { padding: 12px; }
  .document-entry-page .document-entry-head { align-items: flex-start; gap: 12px; }
  .document-entry-head > .toolbar-actions { flex-shrink: 0; }
  .document-page-back { padding-inline: 9px; font-size: 0; }
  .document-page-back::first-letter { font-size: 14px; }
  .purchase-layout-tabs { grid-template-columns: 1fr 1fr; }
  .purchase-layout-tabs button { min-width: 0; }
  .purchase-layout-switcher > div:first-child { min-width: 0; }
  .purchase-erp-commandbar button span, .purchase-erp-commandbar > b { display: none; }
  .purchase-erp-commandbar i { margin-left: auto; }
  .purchase-entry-modal[data-purchase-layout="erp-grid"] .purchase-erp-status, .purchase-entry-modal[data-purchase-layout="erp-grid"] .document-header-grid { grid-template-columns: 1fr; }
  .purchase-entry-modal[data-purchase-layout="erp-grid"] .document-header-grid .party-field { grid-column: auto; }
  .purchase-entry-modal[data-purchase-layout="erp-grid"] .document-header-grid .form-field { grid-template-columns: 1fr; }
  .purchase-entry-modal[data-purchase-layout="erp-grid"] .document-header-grid .form-field label { text-align: left; }
  .purchase-entry-modal[data-purchase-layout="erp-grid"] .document-header-grid .form-field small { grid-column: auto; }
  .purchase-entry-modal[data-purchase-layout="erp-grid"] .document-total-layout { grid-template-columns: 1fr; }
  .purchase-fast-entry-head { align-items: flex-start; flex-direction: column; }
  .purchase-fast-entry-grid, .purchase-fast-product { grid-template-columns: 1fr; }
  .purchase-fast-product { grid-column: auto; }
  .purchase-fast-product label { grid-column: auto; }
  .purchase-fast-control { grid-template-columns: 1fr; }
  .purchase-fast-control label { grid-column: auto; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid .purchase-fast-control, .purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid .purchase-total-check { grid-template-columns: 1fr; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-fast-entry-grid { grid-template-columns: 1fr; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .invoice-header-section > .purchase-fast-entry-grid .purchase-invoice-note { grid-column: auto; }
  .purchase-total-check { grid-column: auto; }
  .purchase-layout-tabs { grid-template-columns: 1fr; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title > .purchase-layout-tabs { grid-template-columns: none; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid, .purchase-counter-context, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary { grid-template-columns: 1fr; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary > div, .purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-summary > div:last-child { display: block; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid .form-field { grid-template-columns: 1fr; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid .form-field label { text-align: left; }
  .purchase-entry-modal[data-purchase-layout="counter-grid"] .document-header-grid .form-field small { grid-column: auto; }
  .purchase-counter-context span { border-right: 0; border-bottom: 1px solid var(--classic-line); }
  .purchase-counter-context span:last-child { border-bottom: 0; }
  .purchase-counter-summary > div + div { border-top: 1px solid var(--classic-line); border-left: 0; }
  .purchase-counter-calculator > div { grid-template-columns: 1fr; }
  .purchase-counter-calculator > div > div, .purchase-counter-calculator output, .purchase-counter-calculator small { grid-column: auto; }
}

@media print {
  @page { size: A4; margin: 7mm; }
  body { background: #fff; }
  body > .shell, body > #toast, body > #auth-root { display: none !important; }
  body > .shell:has(.invoice-preview-page) { display: block !important; min-height: 0; }
  body > .shell:has(.invoice-preview-page) .sidebar,
  body > .shell:has(.invoice-preview-page) .topbar { display: none !important; }
  body > .shell:has(.invoice-preview-page) main { display: block; }
  body > .shell:has(.invoice-preview-page) #app { max-width: none; margin: 0; padding: 0; }
  #modal-root { display: block !important; }
  .modal-backdrop, .modal-backdrop:has(.invoice-modal) { position: static; inset: auto; overflow: visible; background: #fff; padding: 0; display: block; }
  .invoice-modal { width: 100%; max-height: none; box-shadow: none; border-radius: 0; }
  .invoice-preview-page.invoice-modal { width: 100%; border: 0; box-shadow: none; border-radius: 0; }
  .modal-backdrop:has(.invoice-modal) .invoice-modal { width: 100%; border: 0; box-shadow: none; border-radius: 0; }
  .modal-backdrop:has(.invoice-modal) .invoice-modal > .modal-head,
  .modal-backdrop:has(.invoice-modal) .invoice-modal > .modal-foot { position: static; box-shadow: none; backdrop-filter: none; }
  .invoice-paper { padding: 12mm; }
  .invoice-paper.branded-invoice { box-sizing: border-box; width: 196mm; min-height: 281mm; margin: 0; padding: 9mm 10mm 7mm; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
  .branded-invoice-head { grid-template-columns: 31mm 1fr 43mm; min-height: 40mm; gap: 5mm; }
  .invoice-logo-box { width: 31mm; height: 31mm; }
  .branded-item-table tr,.branded-invoice-bottom,.invoice-signature-panel { break-inside: avoid; }
  .barcode-print { padding: 0; }
  .barcode-label { border: 0; margin: 0; page-break-inside: avoid; }
  .no-print { display: none !important; }
}

/* Shared sales-entry experiences and customer repeat-order tools. */
.invoice-experience-tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin:0 0 8px; padding:5px; border:1px solid #dfe8e7; border-radius:12px; background:#f4f8f7; }
.invoice-experience-tabs button { display:grid; grid-template-columns:30px 1fr; grid-template-rows:auto auto; gap:1px 8px; align-items:center; min-width:0; min-height:54px; padding:8px 10px; border:1px solid transparent; border-radius:9px; color:#637078; background:transparent; text-align:left; cursor:pointer; }
.invoice-experience-tabs button > span { grid-row:1/3; display:grid; place-items:center; width:30px; height:30px; border-radius:8px; color:#45645e; background:#e2ece9; }
.invoice-experience-tabs button b { overflow:hidden; color:#35443f; font:700 11px Manrope,sans-serif; text-overflow:ellipsis; white-space:nowrap; }
.invoice-experience-tabs button small { overflow:hidden; color:#7c8986; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }
.invoice-experience-tabs button[aria-selected="true"] { border-color:#87cbbb; background:#fff; box-shadow:0 3px 10px rgba(0,141,123,.13); }
.invoice-experience-tabs button[aria-selected="true"] > span { color:#fff; background:var(--teal); }
.invoice-experience-tabs button:focus-visible { outline:2px solid var(--teal); outline-offset:2px; }
.invoice-default-choice { display:flex; gap:7px; align-items:center; margin:0 0 12px; color:#60706c; font-size:10px; }
.invoice-default-choice input { accent-color:var(--teal); }
.sales-entry-overview { display:grid; gap:6px; margin:0 0 12px; }
.sales-entry-overview-line { min-width:0; }
.sales-entry-overview-primary { display:grid; grid-template-columns:max-content minmax(0,1fr); gap:12px; align-items:center; }
.sales-entry-overview-primary .document-entry-progress { margin:0; }
.sales-entry-overview-primary .sales-entry-tabs-home { min-width:0; }
.sales-entry-overview-primary .invoice-experience-tabs { grid-template-columns:repeat(5,minmax(0,1fr)); gap:4px; margin:0; padding:4px; }
.sales-entry-overview-primary .invoice-experience-tabs button { grid-template-columns:26px minmax(0,1fr); min-height:46px; padding:6px 7px; gap:1px 6px; }
.sales-entry-overview-primary .invoice-experience-tabs button > span { width:26px; height:26px; }
.sales-entry-overview-secondary { display:grid; grid-template-columns:max-content minmax(260px,1fr) minmax(330px,1.1fr); gap:6px; align-items:stretch; }
.sales-entry-overview-secondary .invoice-default-choice,
.sales-entry-overview-secondary .sale-entry-mode-note,
.sales-entry-overview-secondary .automation-strip { min-width:0; min-height:34px; margin:0; padding:6px 9px; }
.sales-entry-overview-secondary .invoice-default-choice { border:1px solid #dfe8e7; border-radius:7px; background:#f8fbfa; white-space:nowrap; }
.sales-entry-overview-secondary .sale-entry-mode-note span,
.sales-entry-overview-secondary .automation-strip span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.quick-sale-mode .invoice-header-section .form-field:has([name="promotionCode"]),
.quick-sale-mode .invoice-header-section .form-field:has([name="transporter"]),
.quick-sale-mode .invoice-header-section .form-field:has([name="vehicleNo"]),
.quick-sale-mode .invoice-header-section .form-field:has([name="billingAddress"]),
.quick-sale-mode .invoice-header-section .form-field:has([name="shippingAddress"]) { display:none; }
.professional-sale-mode .invoice-entry-section { border-color:#d8e0ef; box-shadow:0 3px 16px rgba(41,65,109,.05); }
.professional-sale-mode .document-kind-badge { color:#344797; background:#e8ecfb; }
.customer-reorder-panel { margin:14px 0; padding:16px; border:1px solid #dbe7e4; border-radius:14px; background:linear-gradient(145deg,#fbfefd,#f4f9f7); }
.customer-reorder-head { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; }
.customer-reorder-head h3 { margin:4px 0 2px; font:800 15px Manrope,sans-serif; }
.customer-reorder-head p { margin:0; color:#75817e; font-size:10px; }
.reorder-head-actions { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.customer-reorder-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:13px; }
.customer-reorder-grid h4 { margin:0 0 7px; color:#42514d; font-size:10px; text-transform:uppercase; letter-spacing:.06em; }
.reorder-items { display:grid; gap:6px; max-height:178px; overflow:auto; padding-right:3px; }
.reorder-item { display:grid; grid-template-columns:auto 1fr auto; gap:9px; align-items:center; padding:8px 9px; border:1px solid #e1e9e7; border-radius:9px; background:#fff; cursor:pointer; }
.reorder-item:hover { border-color:#9bcfc4; }
.reorder-item input { accent-color:var(--teal); }
.reorder-item span { min-width:0; }
.reorder-item b,.reorder-item small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.reorder-item b { color:#33443f; font-size:10px; }
.reorder-item small { margin-top:2px; color:#7b8986; font-size:8px; }
.reorder-item em { color:#55706a; font-size:8px; font-style:normal; white-space:nowrap; }
.reorder-empty { margin:0; padding:12px; border:1px dashed #d7e2df; border-radius:9px; color:#87918f; font-size:9px; text-align:center; }
.invoice-productivity-bar { display:flex; flex-wrap:wrap; gap:7px; align-items:end; margin-top:13px; padding-top:12px; border-top:1px solid #e0e9e7; }
.invoice-productivity-bar label { display:grid; gap:3px; min-width:150px; color:#667571; font-size:8px; }
.invoice-productivity-bar select { min-height:32px; max-width:210px; border:1px solid #d6e0de; border-radius:7px; background:#fff; font-size:9px; }
.invoice-productivity-bar button { min-height:32px; padding:7px 9px; font-size:9px; }
.reorder-validation-note { margin:9px 0 0; color:#6f7d79; font-size:8px; }

@media (max-width: 980px) {
  .invoice-experience-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sales-entry-overview-primary { grid-template-columns:1fr; }
  .sales-entry-overview-primary .document-entry-progress { justify-content:flex-start; }
  .sales-entry-overview-secondary { grid-template-columns:1fr 1fr; }
  .sales-entry-overview-secondary .invoice-default-choice { grid-column:1/-1; }
  .customer-reorder-head { display:grid; }
  .reorder-head-actions { justify-content:flex-start; }
}
@media (max-width: 680px) {
  .document-preview-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .document-preview-totals { align-items: stretch; flex-direction: column; gap: 9px; }
  .invoice-experience-tabs { grid-template-columns:1fr 1fr; position:static; }
  .invoice-experience-tabs button { grid-template-columns:24px 1fr; min-height:48px; padding:6px; }
  .invoice-experience-tabs button > span { width:24px; height:24px; }
  .sales-entry-overview-secondary { grid-template-columns:1fr; }
  .sales-entry-overview-secondary .invoice-default-choice { grid-column:auto; }
  .customer-reorder-panel { padding:12px; }
  .customer-reorder-grid { grid-template-columns:1fr; }
  .reorder-items { max-height:145px; }
  .invoice-productivity-bar { display:grid; grid-template-columns:1fr 1fr; }
  .invoice-productivity-bar label { grid-column:1/-1; min-width:0; }
  .invoice-productivity-bar select { width:100%; max-width:none; }
  .reorder-head-actions { display:grid; grid-template-columns:1fr 1fr; }
}
.line-product-picker{position:relative;display:grid;min-width:240px}
.line-product-picker .line-product-search,.line-product-picker .line-product{width:100%}
.line-product-picker .line-product-search{font-weight:600}
.line-product-picker .line-product[hidden]{display:none!important}
.line-product-suggestions{position:absolute;z-index:25;top:calc(100% + 3px);left:0;width:max(100%,360px);max-height:280px;overflow:auto;border:1px solid #9fb7ae;border-radius:7px;background:#fff;box-shadow:0 12px 30px rgba(39,50,46,.24)}
.line-product-suggestions[hidden]{display:none}
.line-product-suggestions button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:14px;padding:9px 11px;border:0;border-bottom:1px solid #e1e9e6;background:transparent;color:#263b34;text-align:left;cursor:pointer}
.line-product-suggestions button:last-child{border-bottom:0}
.line-product-suggestions button:hover,.line-product-suggestions button[aria-selected="true"]{background:#eaf6f1}
.line-product-suggestions b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.line-product-suggestions small{display:flex;min-width:max-content;align-items:center;gap:8px;color:#60746d}
.line-product-suggestions code{padding:3px 6px;border-radius:4px;background:#dff4eb;color:#075f48;font-weight:800}
.purchase-entry-modal[data-purchase-layout="counter-grid"] .line-product-suggestions{border-color:#78a9ba;border-radius:2px;background:#fff}
.purchase-entry-modal[data-purchase-layout="counter-grid"] .line-product-suggestions button:hover,.purchase-entry-modal[data-purchase-layout="counter-grid"] .line-product-suggestions button[aria-selected="true"]{background:#d5edf4}
.advanced-product-picker{grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto!important}
.advanced-product-picker>label{grid-column:1/-1}
.advanced-product-picker .product-wildcard-search,.advanced-product-picker select{width:100%}

/* Windows-style, keyboard-first Sales Invoice Counter Sheet. */
.sales-counter-chrome { display:none; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] { --sales-win-accent:#0f6cbd; --sales-win-accent-hover:#115ea3; --sales-win-accent-soft:#e6f2fb; --sales-win-border:#c9c9c9; --sales-win-border-soft:#e5e5e5; --sales-win-canvas:#e9e9e9; --sales-win-surface:#fff; --sales-win-text:#1b1b1b; --sales-win-muted:#5d5d5d; --win-accent:var(--sales-win-accent); --win-accent-hover:var(--sales-win-accent-hover); --win-accent-soft:var(--sales-win-accent-soft); --win-border:var(--sales-win-border); --win-muted:var(--sales-win-muted); color:var(--sales-win-text); background:var(--sales-win-canvas); font-family:"Segoe UI Variable","Segoe UI",sans-serif; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"][data-counter-theme="orange"] { --sales-win-accent:#ca5010; --sales-win-accent-hover:#a74109; --sales-win-accent-soft:#fff0e5; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"][data-counter-theme="blue"] { --sales-win-accent:#0f6cbd; --sales-win-accent-hover:#115ea3; --sales-win-accent-soft:#e6f2fb; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"][data-counter-theme="emerald"] { --sales-win-accent:#107c6c; --sales-win-accent-hover:#0b6458; --sales-win-accent-soft:#e4f4f1; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"][data-counter-theme="slate"] { --sales-win-accent:#4f5f73; --sales-win-accent-hover:#3d4a5a; --sales-win-accent-soft:#edf1f5; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] > .modal-head,
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-entry-progress,
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .sales-entry-tabs-anchor,
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .sale-entry-mode-note,
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .automation-strip,
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .sales-entry-overview,
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .customer-reorder-panel,
.sales-entry-modal[data-sale-entry-mode="windows-counter"] > #document-form > .modal-foot { display:none; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .sales-counter-chrome { display:block; overflow:hidden; border:1px solid #b7b7b7; border-radius:7px; background:var(--sales-win-surface); box-shadow:0 1px 2px rgba(0,0,0,.08); }
.sales-counter-windowbar { display:flex; min-height:34px; align-items:center; justify-content:space-between; gap:12px; padding-left:10px; border-bottom:1px solid var(--sales-win-accent-hover); color:#fff; background:var(--sales-win-accent); user-select:none; }
.sales-counter-window-title,.sales-counter-window-actions { display:flex; min-width:0; align-items:center; }
.sales-counter-window-title { gap:8px; }
.sales-counter-window-title strong { overflow:hidden; font-size:12px; font-weight:600; letter-spacing:.01em; text-overflow:ellipsis; white-space:nowrap; }
.sales-counter-window-title > span:last-child { padding-left:8px; border-left:1px solid rgba(255,255,255,.42); color:rgba(255,255,255,.88); font-size:11px; }
.sales-counter-app-icon { display:grid; width:20px; height:20px; place-items:center; border-radius:4px; color:var(--sales-win-accent); background:#fff; font-size:11px; font-weight:700; }
.sales-counter-window-actions { align-self:stretch; }
.sales-counter-draft-state { margin-right:10px; color:rgba(255,255,255,.92); font-size:11px; }
.sales-counter-window-actions button { display:grid; width:44px; min-width:44px; height:100%; min-height:32px; place-items:center; border:0; border-radius:0; color:#fff; background:transparent; font:400 17px/1 "Segoe UI",sans-serif; cursor:pointer; }
.sales-counter-window-actions button:hover,.sales-counter-window-actions button:focus-visible { outline:0; background:rgba(255,255,255,.16); }
.sales-counter-window-actions button[data-sales-counter-command="cancel"]:hover,.sales-counter-window-actions button[data-sales-counter-command="cancel"]:focus-visible { background:#c42b1c; }
.sales-counter-toolbar { display:flex; min-height:46px; align-items:center; gap:8px; padding:6px 8px; overflow-x:auto; border-bottom:1px solid var(--sales-win-border); background:#f5f5f5; white-space:nowrap; scrollbar-width:thin; }
.sales-counter-view-switcher { flex:0 0 auto; padding-right:8px; border-right:1px solid var(--sales-win-border); }
.windows-counter-sale-mode .sales-counter-view-switcher .invoice-experience-tabs { display:flex; width:auto; gap:2px; margin:0; padding:0; border:0; border-radius:0; background:transparent; }
.windows-counter-sale-mode .sales-counter-view-switcher .invoice-experience-tabs button { display:inline-flex; width:auto; min-height:30px; height:30px; grid-template:none; align-items:center; gap:4px; padding:4px 8px; border-color:transparent; border-radius:4px; color:#313131; background:transparent; font:600 11px "Segoe UI",sans-serif; white-space:nowrap; }
.windows-counter-sale-mode .sales-counter-view-switcher .invoice-experience-tabs button:hover { background:#e8e8e8; }
.windows-counter-sale-mode .sales-counter-view-switcher .invoice-experience-tabs button[aria-selected="true"] { color:var(--sales-win-accent); background:var(--sales-win-accent-soft); box-shadow:inset 0 -2px var(--sales-win-accent); }
.windows-counter-sale-mode .sales-counter-view-switcher .invoice-experience-tabs button > span { display:grid; width:18px; height:18px; grid-row:auto; place-items:center; border-radius:3px; color:inherit; background:transparent; font-size:12px; }
.windows-counter-sale-mode .sales-counter-view-switcher .invoice-experience-tabs button b { color:inherit; font:600 11px "Segoe UI",sans-serif; }
.windows-counter-sale-mode .sales-counter-view-switcher .invoice-experience-tabs button small { display:none; }
.windows-counter-sale-mode .sales-counter-view-switcher .invoice-default-choice { margin:2px 0 0; color:var(--sales-win-muted); font-size:9px; }
.sales-counter-commands { display:flex; align-items:center; gap:2px; }
.sales-counter-commands button { display:inline-flex; min-height:32px; height:32px; align-items:center; gap:5px; padding:4px 9px; border:1px solid transparent; border-radius:4px; color:#242424; background:transparent; font:600 11px "Segoe UI",sans-serif; cursor:pointer; }
.sales-counter-commands button:hover,.sales-counter-commands button:focus-visible { border-color:#d0d0d0; outline:2px solid var(--sales-win-accent); outline-offset:-2px; background:#fff; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .sales-counter-commands button.sales-counter-post { border-color:#06452d; color:#fff !important; background-color:#075337 !important; background-image:linear-gradient(180deg,#0b6b45 0%,#075337 100%) !important; box-shadow:0 2px 4px rgba(4,69,45,.3),inset 0 1px 0 rgba(255,255,255,.28); }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .sales-counter-commands button.sales-counter-post:hover,.sales-entry-modal[data-sale-entry-mode="windows-counter"] .sales-counter-commands button.sales-counter-post:focus-visible { border-color:#033621; color:#fff !important; background-color:#043d28 !important; background-image:linear-gradient(180deg,#095a3a,#043d28) !important; }
.sales-counter-toolbar kbd { padding:1px 4px; border:1px solid #b5b5b5; border-bottom-width:2px; border-radius:3px; color:#424242; background:#fff; font:600 9px "Segoe UI",sans-serif; }
.sales-counter-toolbar .sales-counter-post kbd { border-color:rgba(255,255,255,.55); color:#fff; background:rgba(255,255,255,.12); }
.sales-counter-payment-status { display:inline-flex; margin-left:auto; align-items:center; gap:5px; padding:5px 8px; border:1px solid #e1b31d; border-radius:999px; color:#5d4a00; background:#fff7d6; font-size:10px; }
.sales-counter-payment-status i { width:6px; height:6px; border-radius:50%; background:#d29200; }
.sales-counter-context { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); background:#fafafa; }
.sales-counter-context span { display:flex; min-width:0; align-items:center; gap:7px; padding:5px 9px; border-right:1px solid var(--sales-win-border-soft); }
.sales-counter-context span:last-child { border-right:0; }
.sales-counter-context small { color:var(--sales-win-muted); font-size:9px; font-weight:600; }
.sales-counter-context b { overflow:hidden; color:var(--sales-win-text); font-size:10px; font-weight:600; text-overflow:ellipsis; white-space:nowrap; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .modal-body { gap:6px; padding:8px; background:var(--sales-win-canvas); }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-entry-section { border:1px solid var(--sales-win-border); border-radius:6px; color:var(--sales-win-text); background:var(--sales-win-surface); box-shadow:0 1px 1px rgba(0,0,0,.04); }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-entry-section { margin-top:0; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-entry-section-head { min-height:30px; padding:5px 9px; border-bottom:1px solid var(--sales-win-border); background:#f3f3f3; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-entry-section-head .section-number,
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-entry-section-head p,
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-entry-section-head .section-status { display:none; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-entry-section-head h3 { margin:0; color:#323130; font:600 11px "Segoe UI",sans-serif; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-header-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px 10px; padding:8px 10px; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-header-grid .form-field { grid-column:span 1; gap:3px; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-header-grid .form-field > label { position:static; transform:none; margin:0; padding:0; color:#323130; background:transparent; font:600 10px "Segoe UI",sans-serif; text-align:left; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-header-grid .party-field { grid-column:span 1; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-header-grid .party-field > small { display:none; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-header-grid .form-field:has([name="promotionCode"]),
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-header-grid .form-field:has([name="transporter"]),
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-header-grid .form-field:has([name="vehicleNo"]),
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-header-grid .form-field:has([name="billingAddress"]),
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-header-grid .form-field:has([name="shippingAddress"]) { display:none; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-header-grid :is(input,select) { min-height:28px; height:28px; padding:3px 7px; border:1px solid #8a8a8a; border-radius:3px; color:var(--sales-win-text); background:#fff; font:400 11px "Segoe UI",sans-serif; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] :is(input,select,textarea,button):focus-visible { outline:2px solid var(--sales-win-accent); outline-offset:1px; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-lines-section { min-height:0; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .advanced-sale-tools { display:none; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-items-editor { border-radius:0 0 5px 5px; background:#fff; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-items-editor table { min-width:980px; table-layout:fixed; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-items-editor thead { color:#fff; background:var(--sales-win-accent-hover); box-shadow:0 1px 0 #7a7a7a; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-items-editor th { position:sticky; top:0; z-index:2; padding:6px; border-color:rgba(255,255,255,.28); color:#fff; background:var(--sales-win-accent-hover); font:600 10px "Segoe UI",sans-serif; text-align:center; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-items-editor td { padding:4px; border-color:#dedede; color:var(--sales-win-text); background:#fff; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-items-editor tbody tr:nth-child(even) td { background:#fafafa; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-items-editor tbody tr:focus-within td { background:var(--sales-win-accent-soft); }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-items-editor :is(input,select) { min-height:26px; height:26px; padding:2px 5px; border:1px solid #a6a6a6; border-radius:3px; color:#1b1b1b; background:#fff; font:400 10px "Segoe UI",sans-serif; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .line-product-picker { min-width:240px; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .line-product-meta,
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .line-price-source,
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .line-taxable-note,
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .line-uom-detail > span,
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .line-uom-detail > small { display:none; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-items-editor .remove-line { border-radius:3px; color:#a4262c; background:transparent; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-items-editor .remove-line:hover { color:#fff; background:#c42b1c; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-items-editor .add-line { border:1px solid var(--sales-win-border); border-radius:4px; color:var(--sales-win-accent); background:#fff; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-total-section .document-total-layout { grid-template-columns:minmax(0,1fr) 320px; gap:8px; padding:8px; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-posting-card { border-color:var(--sales-win-border); border-radius:4px; background:#fafafa; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-totals { border-color:var(--sales-win-border); border-radius:4px; background:#fff; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-posting-card > label { color:#323130; font:600 10px "Segoe UI",sans-serif; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-posting-card > textarea { min-height:50px; height:50px; padding:6px; border:1px solid #8a8a8a; border-radius:3px; resize:none; font:400 11px "Segoe UI",sans-serif; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-delivery-choice { display:none; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .posting-result-list { display:flex; flex-wrap:wrap; gap:5px; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .posting-result-list span { padding:4px 6px; font-size:9px; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-totals { padding:8px 10px; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-totals p { margin:0; padding:3px 0; font-size:10px; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-totals .total { margin-top:3px; padding:7px 8px; }
.sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-totals .total-helper { display:none; }

@media (min-width:981px) {
  #app[data-view="invoice-entry"] .sales-entry-modal[data-sale-entry-mode="windows-counter"] { height:calc(100vh - 126px); min-height:560px; overflow:hidden; }
  #app[data-view="invoice-entry"] .sales-entry-modal[data-sale-entry-mode="windows-counter"] #document-form { height:100%; }
  #app[data-view="invoice-entry"] .sales-entry-modal[data-sale-entry-mode="windows-counter"] .modal-body { display:grid; height:100%; grid-template-rows:auto auto minmax(220px,1fr) 180px auto; overflow:hidden; }
  #app[data-view="invoice-entry"] .sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-lines-section { display:flex; min-height:0; flex-direction:column; overflow:hidden; }
  #app[data-view="invoice-entry"] .sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-lines-section .document-items-editor { min-height:0; flex:1; overflow:auto; }
}
@media (max-width:980px) {
  .sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-header-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sales-counter-context { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:620px) {
  .sales-entry-modal[data-sale-entry-mode="windows-counter"] .document-header-grid,
  .sales-counter-context { grid-template-columns:1fr; }
  .sales-counter-context span { border-right:0; border-bottom:1px solid var(--sales-win-border-soft); }
  .sales-counter-context span:last-child { border-bottom:0; }
  .sales-counter-toolbar { align-items:flex-start; }
  .sales-counter-payment-status { margin-left:0; }
  .sales-entry-modal[data-sale-entry-mode="windows-counter"] .invoice-total-section .document-total-layout { grid-template-columns:1fr; }
}

/* Quick GST keeps the governed invoice workflow compact and thumb-friendly on phones. */
.quick-gst-mobile-nav,
.quick-gst-mobile-summary { display:none; }

@media (min-width:900px) {
  .quick-sale-mode .document-header-grid {
    grid-template-columns:minmax(0,2fr) minmax(0,.9fr) minmax(0,1.35fr) minmax(0,1.2fr) minmax(0,1.05fr) minmax(0,.9fr) minmax(0,1.25fr);
    gap:16px 8px;
  }
  .quick-sale-mode .document-header-grid .party-field,
  .quick-sale-mode .document-header-grid .place-of-supply-field { grid-column:span 1; }
  .quick-sale-mode .document-header-grid .form-field > :is(input,select,textarea) { width:100%; }
}

@media (max-width:680px) {
  #app[data-view="invoice-entry"] { padding:0 0 104px; }
  #app[data-view="invoice-entry"] > .document-entry-page { border:0; border-radius:0; box-shadow:none; }
  .quick-sale-mode .document-entry-head { min-height:64px; padding:11px 12px; border-radius:0; }
  .quick-sale-mode .document-entry-head h2 { font-size:17px; }
  .quick-sale-mode .document-entry-head p,
  .quick-sale-mode .document-entry-progress,
  .quick-sale-mode .sales-entry-overview-secondary .automation-strip { display:none; }
  .quick-sale-mode > #document-form > .modal-body { display:flex; flex-direction:column; gap:0; padding:10px 10px 18px; }

  .quick-sale-mode .sales-entry-overview { gap:2px; margin-bottom:0; }
  .quick-sale-mode .sales-entry-overview-primary { display:block; }
  .quick-sale-mode .sales-entry-overview-secondary { display:grid; }
  .quick-sale-mode .sales-entry-tabs-home { margin:0 -2px; overflow:hidden; }
  .quick-sale-mode .invoice-experience-tabs { display:flex; gap:7px; margin:0; padding:4px; overflow-x:auto; scroll-snap-type:x proximity; scrollbar-width:none; }
  .quick-sale-mode .invoice-experience-tabs::-webkit-scrollbar { display:none; }
  .quick-sale-mode .invoice-experience-tabs button { flex:0 0 132px; min-height:46px; scroll-snap-align:start; }
  .quick-sale-mode .invoice-experience-tabs button small { font-size:8px; }
  .quick-sale-mode .invoice-default-choice { min-height:36px; margin:2px 2px 6px; font-size:10px; }
  .quick-sale-mode .invoice-default-choice input { width:18px; height:18px; }
  .quick-sale-mode .sale-entry-mode-note { margin:0 2px 8px; padding:8px 10px; line-height:1.4; }

  .quick-sale-mode .quick-gst-mobile-nav { display:grid; position:sticky; z-index:4; top:0; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; margin:0 0 10px; padding:6px; border:1px solid #cfe5df; border-radius:12px; background:rgba(244,251,248,.96); box-shadow:0 5px 16px rgba(24,70,61,.08); backdrop-filter:blur(8px); }
  .quick-sale-mode .quick-gst-mobile-nav button { display:flex; min-width:0; min-height:44px; align-items:center; justify-content:center; gap:6px; padding:6px; border:0; border-radius:9px; color:#31544c; background:#fff; font:700 10px Manrope,sans-serif; }
  .quick-sale-mode .quick-gst-mobile-nav button:focus-visible { outline:3px solid rgba(0,141,123,.25); }
  .quick-sale-mode .quick-gst-mobile-nav span { display:grid; flex:0 0 22px; width:22px; height:22px; place-items:center; border-radius:50%; color:#fff; background:#008d7b; font-size:9px; }

  .quick-sale-mode .invoice-entry-section { margin-top:10px; border-radius:12px; scroll-margin-top:72px; }
  .quick-sale-mode .invoice-header-section { order:10; }
  .quick-sale-mode .invoice-lines-section { order:20; }
  .quick-sale-mode .invoice-total-section { order:30; }
  .quick-sale-mode .customer-reorder-panel { order:40; margin:10px 0 0; }
  .quick-sale-mode #modal-error { order:50; }
  .quick-sale-mode .invoice-entry-section-head { min-height:48px; padding:8px 10px; }
  .quick-sale-mode .invoice-entry-section-head p { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .quick-sale-mode .section-number { width:25px; height:25px; border-radius:7px; }

  .quick-sale-mode .document-header-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px 8px; padding:16px 10px 11px; }
  .quick-sale-mode .document-header-grid .party-field,
  .quick-sale-mode .document-header-grid .place-of-supply-field { grid-column:1/-1; }
  .quick-sale-mode .document-header-grid .form-field > :is(input,select,textarea) { min-height:48px; padding-inline:10px; font-size:16px; }
  .quick-sale-mode .document-header-grid .party-field > small { position:static; margin:4px 2px -3px; white-space:normal; }

  .quick-sale-mode .document-items-editor { margin:0; padding:10px; overflow:visible; }
  .quick-sale-mode .document-items-editor table { min-width:0; }
  .quick-sale-mode .document-items-editor tbody { gap:10px; }
  .quick-sale-mode .document-items-editor .line-row { gap:10px 8px; padding:12px; border-color:#cfe0dc; border-radius:12px; box-shadow:0 4px 14px rgba(28,61,54,.06); }
  .quick-sale-mode .document-items-editor .line-row > td:first-child { padding-right:34px; }
  .quick-sale-mode .document-items-editor .line-row > td:nth-child(2)::before { content:'Quantity'; }
  .quick-sale-mode .document-items-editor .line-row > td:nth-child(3)::before { content:'Unit'; }
  .quick-sale-mode .document-items-editor .line-row > td:nth-child(4)::before { content:'Alternate unit'; }
  .quick-sale-mode .document-items-editor .line-row > td:nth-child(5)::before { content:'Rate'; }
  .quick-sale-mode .document-items-editor .line-row > td:nth-child(6)::before { content:'Discount %'; }
  .quick-sale-mode .document-items-editor .line-row > td:nth-child(7)::before { content:'GST %'; }
  .quick-sale-mode .document-items-editor .line-row > td:nth-child(8)::before { content:'Line total'; }
  .quick-sale-mode .document-items-editor .line-row > td:nth-child(n+2):nth-child(-n+8)::before { display:block; margin-bottom:5px; color:#667a74; font-size:9px; font-weight:800; letter-spacing:.4px; text-transform:uppercase; }
  .quick-sale-mode .document-items-editor .line-row > td:nth-child(4) { grid-column:1/-1; }
  .quick-sale-mode .document-items-editor .line-row > td:nth-child(8) { display:flex; min-height:48px; flex-direction:column; justify-content:center; padding:8px 10px; border-radius:9px; background:#edf7f4; }
  .quick-sale-mode .document-items-editor .line-row :is(input,select) { width:100%; min-height:46px; font-size:16px; }
  .quick-sale-mode .line-product-picker { min-width:0; }
  .quick-sale-mode .line-product-suggestions { position:fixed; z-index:30; inset:auto 10px 88px; width:auto; max-height:44dvh; }
  .quick-sale-mode .line-product-suggestions button { min-height:48px; }
  .quick-sale-mode .document-items-editor .add-line { min-height:48px; margin:10px 0 0; font-size:12px; }

  .quick-sale-mode .customer-reorder-head { gap:10px; }
  .quick-sale-mode .reorder-head-actions,
  .quick-sale-mode .invoice-productivity-bar { grid-template-columns:1fr 1fr; }
  .quick-sale-mode .reorder-head-actions button,
  .quick-sale-mode .invoice-productivity-bar button,
  .quick-sale-mode .invoice-productivity-bar select { min-height:44px; }
  .quick-sale-mode .document-total-layout { padding:10px; }
  .quick-sale-mode .document-posting-card > textarea { min-height:72px; font-size:16px; }

  .quick-sale-mode .modal-foot { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 10px; padding:9px 10px calc(9px + env(safe-area-inset-bottom)); border-radius:0; }
  .quick-sale-mode .quick-gst-mobile-summary { display:grid; align-content:center; }
  .quick-sale-mode .quick-gst-mobile-summary span { color:#687b75; font-size:9px; font-weight:700; text-transform:uppercase; }
  .quick-sale-mode .quick-gst-mobile-summary b { color:#123a63; font:800 18px Manrope,sans-serif; }
  .quick-sale-mode .document-autosave-status { grid-column:1/-1; grid-row:2; font-size:9px; }
  .quick-sale-mode .modal-foot > div:last-child { display:grid; grid-template-columns:auto minmax(150px,1fr); gap:7px; }
  .quick-sale-mode .modal-foot > div:last-child .secondary-btn:first-child { display:none; }
  .quick-sale-mode .modal-foot button { min-height:48px; }
  .quick-sale-mode .modal-foot .document-bottom-back { width:48px; overflow:hidden; padding:0; font-size:0; }
  .quick-sale-mode .modal-foot .document-bottom-back::before { content:'\2190'; font-size:18px; }
  .quick-sale-mode .modal-foot .primary-btn { padding-inline:14px; white-space:nowrap; }
}

@media (max-width:390px) {
  .quick-sale-mode .quick-gst-mobile-nav b { font-size:9px; }
  .quick-sale-mode .quick-gst-mobile-nav span { display:none; }
  .quick-sale-mode .document-header-grid { grid-template-columns:1fr; }
  .quick-sale-mode .document-header-grid .party-field,
  .quick-sale-mode .document-header-grid .place-of-supply-field { grid-column:auto; }
}
.line-batch-details-cell{min-width:0;vertical-align:top}.line-batch-empty{display:block;padding:8px;color:var(--muted,#5f6b7a);font-size:12px}.line-mrp-batch-fields{margin:0;border:1px solid var(--border,#d9dee8);border-radius:8px;padding:6px 8px;background:var(--surface-soft,#f8fafc)}
.line-mrp-batch-fields summary{cursor:pointer;font-weight:700;font-size:12px}
.line-mrp-batch-fields>div{display:grid;grid-template-columns:repeat(4,minmax(92px,1fr));gap:6px;margin-top:7px}
.line-mrp-batch-fields label{display:grid;gap:3px;font-size:11px;color:var(--muted,#5f6b7a)}
.line-mrp-batch-fields input{width:100%;min-width:0}
.line-mrp-batch-fields small{display:block;margin-top:5px}
@media(max-width:760px){.line-mrp-batch-fields>div{grid-template-columns:repeat(2,minmax(110px,1fr))}}
.line-sales-batch{margin-top:8px;padding:8px;border:1px solid #dbe5ef;border-radius:8px;background:#f8fbfd}.line-sales-batch label{display:grid;gap:4px;font-size:12px;font-weight:700}.line-sales-batch select{width:100%;min-width:220px}.line-sales-batch small{display:block;margin-top:4px;color:#607080}

/* Keep purchase bill identity and matching controls readable in every entry layout. */
.purchase-entry-modal .invoice-header-section .document-header-grid .form-field > label,
.purchase-entry-modal .invoice-header-section .purchase-old-invoice-heading > label { min-height: 27px; font-size: 16.5px; line-height: 1.25; }
.purchase-entry-modal .invoice-header-section .document-header-grid .form-field :is(input:not([type="hidden"]), select, textarea) { min-height: 46px; height: 46px; font-size: 18px; }
.purchase-entry-modal .invoice-header-section .purchase-old-invoice-actions button { min-height: 33px; height: 33px; font-size: 12px; }
.purchase-entry-modal .invoice-header-section .purchase-total-check output { min-height: 27px; font-size: 12px; }
.purchase-entry-modal .document-items-editor thead th,
.purchase-entry-modal .document-items-editor thead tr::before { font-weight: 900; }

/* Raised 3D icon treatment for the Counter Sheet command surface. */
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title button {
  border: 1px solid #b8c3cc;
  border-bottom-color: #97a6b2;
  border-radius: 6px;
  background: linear-gradient(180deg, #fff 0%, #f5f7f9 58%, #e4e9ed 100%);
  box-shadow: 0 2px 3px rgba(20,48,72,.16), inset 0 1px 0 rgba(255,255,255,.9);
  transform: translateY(0);
  transition: transform .1s ease, box-shadow .1s ease, background .1s ease;
}
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title button:hover,
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title button:focus-visible { background: linear-gradient(180deg, #fff, #edf3f7); box-shadow: 0 3px 6px rgba(20,48,72,.18), inset 0 1px 0 #fff; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title button:active,
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title button[aria-selected="true"] {
  box-shadow: inset 0 2px 4px rgba(20,48,72,.18), 0 1px 1px rgba(20,48,72,.1);
  transform: translateY(1px);
}
.purchase-entry-modal #document-form.purchase-header-hidden .invoice-header-section .document-header-grid { display: none; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] #document-form.purchase-header-hidden .invoice-header-section { display: none; }
.purchase-header-eye { position: relative; }
.purchase-entry-modal [data-purchase-header-toggle][aria-pressed="false"] .purchase-header-eye::after {
  content: "";
  position: absolute;
  width: 18px;
  height: 2px;
  border-radius: 2px;
  background: #b42318;
  box-shadow: 0 1px 0 rgba(255,255,255,.7);
  transform: rotate(-42deg);
}
.purchase-entry-modal[data-purchase-layout="counter-grid"] :is(.purchase-counter-view-switcher .purchase-layout-tabs, .purchase-counter-commands, .purchase-counter-shortcuts) button > span:first-child {
  display: inline-grid;
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  place-items: center;
  border: 1px solid #b8c6d1;
  border-radius: 5px;
  color: #123a63;
  background: linear-gradient(145deg, #fff, #dce6ee);
  box-shadow: 0 1px 2px rgba(20,48,72,.18), inset 0 1px 0 #fff;
  font-size: 13px;
  line-height: 1;
  text-shadow: 0 1px 0 #fff;
}
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-post {
  display: inline-flex;
  min-width: 118px;
  min-height: 32px;
  height: 32px;
  align-items: center;
  justify-content: center;
  gap: 5px;
  border-color: #06452d;
  color: #fff !important;
  background-color: #075337 !important;
  background-image: linear-gradient(180deg, #0b6b45 0%, #075337 100%) !important;
  box-shadow: 0 2px 4px rgba(4,69,45,.3), inset 0 1px 0 rgba(255,255,255,.28);
}
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-post:hover,
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-post:focus-visible { border-color: #033621; color: #fff !important; background-color: #043d28 !important; background-image: linear-gradient(180deg, #095a3a, #043d28) !important; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-post kbd { border-color: rgba(255,255,255,.72); color: #fff; background: rgba(255,255,255,.14); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-post > span:first-child,
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-shortcuts button[data-counter-route="pos3"] > span:first-child {
  border-color: rgba(255,255,255,.55);
  color: #fff;
  background: rgba(255,255,255,.14);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.32);
  text-shadow: 0 1px 1px rgba(0,0,0,.25);
}
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-shortcuts button[data-counter-route="pos3"] {
  --command-fill: linear-gradient(180deg, #35a36d 0%, #218a5b 100%);
  border-color: #11643f;
  color: #fff;
  background: var(--command-fill);
  box-shadow: 0 2px 4px rgba(14,78,49,.24), inset 0 1px 0 rgba(255,255,255,.32);
}
/* Distinct command colours keep the dense Counter Sheet toolbar easy to scan. */
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-view-switcher button[data-purchase-layout-tab="standard"] { --command-fill: linear-gradient(180deg, #c98226, #985c12); border-color: #985c12; color: #fff; background: var(--command-fill); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-view-switcher button[data-purchase-layout-tab="erp-grid"] { --command-fill: linear-gradient(180deg, #8068bd, #56408e); border-color: #56408e; color: #fff; background: var(--command-fill); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-view-switcher button[data-purchase-layout-tab="counter-grid"] { --command-fill: linear-gradient(180deg, #2d8fd3, #0f6cbd); border-color: #0d5f9f; color: #fff; background: var(--command-fill); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-view-switcher .purchase-layout-tabs button[aria-selected="true"] { color: #fff; background: linear-gradient(180deg, #2d8fd3, #0f6cbd); box-shadow: inset 0 0 0 2px rgba(255,255,255,.45), 0 2px 3px rgba(7,58,104,.24); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-commands button[data-counter-command="find"] { --command-fill: linear-gradient(180deg, #1595a4, #0a6874); border-color: #0a6874; color: #fff; background: var(--command-fill); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-commands button[data-document-clear] { --command-fill: linear-gradient(180deg, #d64a3e, #a62b22); border-color: #98251d; color: #fff; background: var(--command-fill); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-shortcuts button[data-purchase-header-toggle] { --command-fill: linear-gradient(180deg, #9564c8, #69409a); min-width: 108px; border-color: #69409a; color: #fff; background: var(--command-fill); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-shortcuts button[data-purchase-header-toggle] :is(kbd, .purchase-header-eye, [data-purchase-header-toggle-label]) { color: #fff; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] :is(.purchase-counter-commands,.purchase-counter-shortcuts) button:is([data-counter-command="find"],[data-document-clear],[data-purchase-header-toggle]) kbd { border-color: rgba(255,255,255,.62); color: #fff; background: rgba(255,255,255,.14); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-shortcuts button[data-purchase-quick-access] { --command-fill: linear-gradient(180deg, #8268b8, #59408d); border-color: #59408d; color: #fff; background: var(--command-fill); box-shadow: 0 2px 4px rgba(60,38,104,.22), inset 0 1px 0 rgba(255,255,255,.28); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-shortcuts button[data-counter-route="dashboard"] { --command-fill: linear-gradient(180deg, #718095, #4f5f73); border-color: #415064; color: #fff; background: var(--command-fill); box-shadow: 0 2px 4px rgba(36,48,62,.22), inset 0 1px 0 rgba(255,255,255,.28); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] :is(.purchase-counter-view-switcher button[data-purchase-layout-tab], .purchase-counter-commands button[data-counter-command="find"], .purchase-counter-commands button[data-document-clear], .purchase-counter-shortcuts button[data-purchase-header-toggle], .purchase-counter-shortcuts button[data-purchase-quick-access], .purchase-counter-shortcuts button[data-counter-route]):hover,
.purchase-entry-modal[data-purchase-layout="counter-grid"] :is(.purchase-counter-view-switcher button[data-purchase-layout-tab], .purchase-counter-commands button[data-counter-command="find"], .purchase-counter-commands button[data-document-clear], .purchase-counter-shortcuts button[data-purchase-header-toggle], .purchase-counter-shortcuts button[data-purchase-quick-access], .purchase-counter-shortcuts button[data-counter-route]):focus-visible { color: #fff; background: var(--command-fill); filter: brightness(.92); }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-themes > b {
  padding: 5px 8px;
  border: 1px solid #a6b2bc;
  border-radius: 7px;
  background: linear-gradient(180deg, #fff, #edf0f3);
  box-shadow: 0 1px 2px rgba(20,48,72,.14), inset 0 1px 0 #fff;
}
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-themes button i {
  width: 15px;
  height: 15px;
  border: 1px solid rgba(0,0,0,.3);
  background: radial-gradient(circle at 34% 30%, color-mix(in srgb, var(--theme-dot) 45%, #fff), var(--theme-dot) 58%, color-mix(in srgb, var(--theme-dot) 82%, #000));
  box-shadow: 0 1px 2px rgba(0,0,0,.2), inset 0 1px 1px rgba(255,255,255,.55);
}
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-title > .purchase-counter-payment-status {
  border: 1px solid #d6ad3b;
  border-bottom-color: #b18313;
  border-radius: 8px;
  background: linear-gradient(180deg, #fffbea 0%, #f7df91 100%);
  box-shadow: 0 2px 3px rgba(111,78,0,.18), inset 0 1px 0 #fff;
  text-shadow: 0 1px 0 rgba(255,255,255,.75);
  transform: translateY(0);
}
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-payment-status > i {
  width: 12px;
  height: 12px;
  border: 1px solid #8b5100;
  background: radial-gradient(circle at 34% 30%, #ffd6a3, #e47b20 62%, #a94308);
  box-shadow: 0 1px 2px rgba(93,54,0,.24), inset 0 1px 1px rgba(255,255,255,.65);
}
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-context small { font-size: 11.25px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .purchase-counter-context b { font-size: 12.5px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor thead th,
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor thead tr::before { font-size: 14px; line-height: 1.15; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor td,
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor td b,
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor td output { font-size: 14px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor input,
.purchase-entry-modal[data-purchase-layout="counter-grid"] .document-items-editor select {
  min-height: 34px;
  height: 34px;
  padding: 4px 6px;
  font-size: 14px;
}
.purchase-entry-modal[data-purchase-layout="counter-grid"] .line-hsn-code,
.purchase-entry-modal[data-purchase-layout="counter-grid"] .line-amount { padding-top: 7px; font-size: 14px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] :is(.line-product-meta, .line-price-source, .line-taxable-note, .line-uom-detail > span, .line-uom-detail > small, .line-mrp-batch-fields small) { font-size: 12px; line-height: 1.35; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .line-mrp-batch-fields summary { font-size: 14px; }
.purchase-entry-modal[data-purchase-layout="counter-grid"] .line-mrp-batch-fields label { font-size: 13px; }

/* Keep the F8 Preview & post action green in every client theme and invoice counter layout. */
button.purchase-counter-post,
button.sales-counter-post {
  border-color: #06452d !important;
  color: #fff !important;
  background-color: #075337 !important;
  background-image: linear-gradient(180deg, #0b6b45 0%, #075337 100%) !important;
  box-shadow: 0 2px 4px rgba(4,69,45,.3), inset 0 1px 0 rgba(255,255,255,.28) !important;
}
button.purchase-counter-post:hover,
button.purchase-counter-post:focus-visible,
button.sales-counter-post:hover,
button.sales-counter-post:focus-visible {
  border-color: #033621 !important;
  color: #fff !important;
  background-color: #043d28 !important;
  background-image: linear-gradient(180deg, #095a3a 0%, #043d28 100%) !important;
}
button.purchase-counter-post kbd,
button.sales-counter-post kbd { color: #fff !important; }

.report-period { display: flex; align-items: center; gap: 8px; }
.report-period input { height: 35px; border: 1px solid #dfe5e5; border-radius: 7px; padding: 0 9px; color: #435159; background: #fff; font: 12px 'DM Sans', sans-serif; }
.report-period span { color: #7b868c; font-size: 11px; }
.report-search-row { display: flex; justify-content: space-between; align-items: center; margin-bottom: 22px; }
.report-search-row .search { width: min(420px, 100%); }
.report-group { margin: 0 0 27px; }
.report-group > h3 { margin: 0 0 11px; font: 800 15px Manrope, sans-serif; color: #33434a; }
.report-group .report-grid { grid-template-columns: repeat(4, 1fr); gap: 12px; }
.report-group .report-tile { min-height: 132px; padding: 16px; }
.report-tile.selected { border-color: #008d7b; background: #f4fcfa; box-shadow: 0 0 0 2px #008d7b1c; }
.report-output { margin-top: 32px; scroll-margin-top: 18px; }
.report-output .table-toolbar small { display: block; margin-top: 4px; color: #758188; font-size: 10px; }
.report-table-scroll { max-height: 620px; overflow: auto; border-top: 1px solid #eef1f1; }
.report-table-scroll thead { position: sticky; top: 0; z-index: 1; }
.report-table-scroll tfoot { position: sticky; bottom: 0; background: #f8fafa; }
.report-table-scroll td.numeric { text-align: right; font-variant-numeric: tabular-nums; }
.report-table-scroll th:has(+ th), .report-table-scroll th { white-space: nowrap; }
.report-kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; border-top: 1px solid #eef1f1; background: #eef1f1; }
.report-kpis > div { display: grid; gap: 5px; padding: 14px 19px; background: #fff; }
.report-kpis small { color: #748087; }
.report-kpis b { font: 800 19px Manrope, sans-serif; }
.report-warning { margin: 0 19px 12px; padding: 10px 12px; border: 1px solid #f1d39a; border-radius: 7px; background: #fff7e6; color: #8a5b0a; font-size: 11px; }
.costing-note { margin: 12px 0 0; padding: 10px 12px; border-radius: 7px; background: #e8f6f2; color: #317268; font-size: 11px; line-height: 1.5; }
.costing-note.warning { background: #fff2d8; color: #8a5b0a; }
.costing-recovery-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.costing-recovery-head > div { display: grid; gap: 3px; }
.costing-recovery-head small, .items-editor td small { display: block; color: #78848a; font-size: 10px; margin-top: 3px; }
.historical-summary { display: flex; justify-content: space-between; align-items: center; margin-top: 14px; padding: 12px; border-radius: 7px; background: #f7f9f9; color: #667179; }
.historical-summary b { color: #243239; font: 800 16px Manrope, sans-serif; }

.report-schedule-metrics { margin-bottom: 18px; }
.report-schedule-alert { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 18px; padding: 15px 18px; border: 1px solid #efd39d; border-radius: 9px; background: #fff8e9; color: #74521b; }
.report-schedule-alert b { display: block; margin-bottom: 5px; color: #563b10; }
.report-schedule-alert p { margin: 2px 0; font-size: 11px; line-height: 1.45; }
.schedule-table-scroll { overflow-x: auto; }
.schedule-table-scroll td { vertical-align: top; }
.schedule-table-scroll td small { display: block; margin-top: 4px; color: #7a858b; font-size: 10px; line-height: 1.4; }
.schedule-actions { display: flex; align-items: center; gap: 6px; white-space: nowrap; }
.schedule-actions .secondary-btn { padding: 7px 9px; }
.report-run-history { margin-top: 20px; }
.delivery-result { display: inline-flex; margin: 0 4px 4px 0; padding: 3px 7px; border-radius: 999px; background: #e8f6f2; color: #287a61; font-size: 10px; font-weight: 700; }
.delivery-result.failed { background: #ffeded; color: #b84949; }
.schedule-error { max-width: 420px; color: #b84949 !important; }
.report-schedule-modal { width: min(760px, calc(100vw - 32px)); }
.report-schedule-modal textarea { resize: vertical; }
.schedule-options { display: flex; flex-wrap: wrap; gap: 18px; padding: 12px; border-radius: 8px; background: #f7f9f9; }
.schedule-options label { display: flex; align-items: center; gap: 7px; margin: 0; }
.manual-report-modal { width: min(1120px, calc(100vw - 32px)); }
.manual-report-controls { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 12px; }
.manual-report-empty { display: grid; place-items: center; min-height: 230px; margin-top: 12px; padding: 30px; border: 1px dashed #cfd8d7; border-radius: 9px; background: #fafcfc; color: #738087; text-align: center; }
.manual-report-empty b { color: #33434a; }
.manual-report-empty p { margin: 4px 0 0; }
.manual-report-summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-top: 14px; padding: 12px 14px; border: 1px solid #e4e9e8; border-radius: 8px 8px 0 0; }
.manual-report-summary b, .manual-report-summary small { display: block; }
.manual-report-summary small { margin-top: 3px; color: #778389; font-size: 10px; }
.manual-report-table { max-height: 430px; overflow: auto; border: 1px solid #e4e9e8; border-top: 0; }
.manual-report-table thead { position: sticky; top: 0; z-index: 2; }
.manual-report-table tfoot { position: sticky; bottom: 0; background: #f7f9f9; }
.manual-report-table td.numeric { text-align: right; font-variant-numeric: tabular-nums; }
.manual-report-truncated { margin: 8px 0 0; }

@media (max-width: 1100px) { .report-group .report-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 760px) {
  .report-period { width: 100%; flex-wrap: wrap; margin-top: 13px; }
  .section-head:has(.report-period) { display: block; }
  .report-group .report-grid { grid-template-columns: 1fr; }
  .report-kpis { grid-template-columns: 1fr; }
  .report-schedule-alert { display: grid; }
  .report-schedule-alert .toolbar-actions { flex-wrap: wrap; }
  .manual-report-controls { grid-template-columns: 1fr; }
  .manual-report-modal .modal-foot { align-items: flex-start; }
}

.erp-page-search{position:relative;display:flex;align-items:center;gap:6px;width:clamp(120px,12vw,180px);max-width:180px;height:37px;padding:0 8px;border:1px solid #cfdcdd;border-radius:8px;background:#f7fafa;color:#53666c;z-index:25}
.erp-page-search:focus-within{border-color:#008d7b;box-shadow:0 0 0 3px #008d7b15}
.erp-page-search>span{font-size:21px}
.erp-page-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#17212b;font:12px 'DM Sans',sans-serif}
.erp-page-search kbd{white-space:nowrap;font:10px 'DM Sans',sans-serif;border:1px solid #dce5e5;border-radius:4px;padding:2px 4px;color:#6d7783}
.erp-search-popover{position:absolute;right:0;top:calc(100% + 9px);z-index:80;width:min(370px,calc(100vw - 24px));background:#fff;border:1px solid #d9e4e4;border-radius:10px;box-shadow:0 16px 40px #10272b26;overflow:hidden;text-align:left}
.erp-search-popover[hidden]{display:none}
#erp-search-results{max-height:min(400px,55vh);overflow-y:auto;padding:5px}
#erp-search-results [role=option]{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border-radius:6px;cursor:pointer;color:#17212b}
#erp-search-results [role=option]:hover,#erp-search-results [aria-selected=true]{background:#e2f5ee;color:#006f60}
#erp-search-results strong{font-size:12px}#erp-search-results small{font-size:10px;color:#6d7783}
.erp-search-status{padding:10px 12px;margin:0;border-top:1px solid #e8ecef;color:#6d7783;font-size:10px;line-height:1.5}
/* Keep navigation, page context and actions on one compact header line. */
.topbar{position:sticky;top:0;z-index:45;height:auto;min-height:42px;display:flex;align-items:center;justify-content:flex-start;flex-wrap:nowrap;gap:8px;padding-top:3px;padding-bottom:3px}
html[data-sidebar-theme] .topbar{height:auto;min-height:42px;padding-top:3px;padding-bottom:3px}
html[data-active-account="demo"] .topbar{background:#fff0e2;border-bottom-color:#efc08f;box-shadow:inset 0 -2px 0 #e99a4a33}
html[data-active-account="test"] .topbar{background:#f3e5c8;border-bottom-color:#d6b778;box-shadow:inset 0 -2px 0 #b8893930}
.topbar :is(.erp-page-search,.icon-btn,.help-btn,.secondary-btn,.primary-btn,.dashboard-refresh-btn,.sidebar-visibility-toggle,.recent-pages-trigger){height:28px}
.topbar .account-space-control{min-height:28px;padding-inline:6px}
.topbar #company-workspace-control select{width:112px;max-width:112px;text-overflow:ellipsis}
.topbar #account-space-switch{width:98px;max-width:98px;text-overflow:ellipsis}
.crumb{min-width:210px;flex:0 1 430px;flex-wrap:nowrap}
.crumb-copy{display:flex;align-items:baseline;gap:10px;min-width:0;flex:1 1 auto}
.crumb-copy>span:empty{display:none}
.crumb-copy>span,.crumb-copy h1{white-space:nowrap}
.crumb-copy h1{min-width:0;overflow:hidden;text-overflow:ellipsis}
.top-actions{width:auto;min-width:0;flex:1 1 auto;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none}
.top-actions:has([aria-expanded="true"]),.top-actions:has(select:focus){overflow:visible}
.top-actions::-webkit-scrollbar{display:none}
.top-actions>*{flex:0 0 auto}
.top-actions>.erp-page-search{width:clamp(120px,12vw,180px);min-width:120px;max-width:180px;flex:0 1 180px}
.top-actions>.create-theme-stack{margin-left:0}
/* Page widgets get their own lower layer so they cannot cover an open header dropdown. */
.app-content{position:relative;z-index:0;isolation:isolate}
@media(max-width:1250px){
  .topbar{min-height:41px;gap:6px;padding-top:3px;padding-bottom:3px}
  .crumb{min-width:190px;flex-basis:360px}
  .top-actions>.erp-page-search{width:135px;min-width:120px;flex-basis:135px}
}
@media(max-width:760px){
  .topbar{min-height:40px;gap:6px;padding-top:2px;padding-bottom:2px}
  html[data-sidebar-theme] .topbar{height:auto;min-height:40px;padding-top:2px;padding-bottom:2px}
  .crumb{min-width:175px;flex:0 0 48vw}
  .top-actions{padding-bottom:2px}
  .topbar #company-workspace-control select{width:96px;max-width:96px}
  .topbar #account-space-switch{width:86px;max-width:86px}
  .erp-search-popover{position:fixed;top:auto;right:12px;bottom:12px;left:12px;width:auto;max-height:70vh}
}
@media(max-width:600px){
  .crumb-copy{gap:7px}
  .crumb-copy>span{max-width:42vw;overflow:hidden;text-overflow:ellipsis}
  .top-actions>.erp-page-search{width:120px;min-width:120px;flex:0 0 120px}
  .erp-page-search kbd{display:none}
}

.phone-field {
  display: grid;
  grid-template-columns: minmax(150px, 0.9fr) minmax(160px, 1.4fr);
  gap: 7px;
}

.phone-field select,
.phone-field input {
  min-width: 0;
}

.form-field > small {
  color: #7a878d;
  font-size: 10px;
  line-height: 1.35;
}

@media (max-width: 760px) {
  .phone-field {
    grid-template-columns: 1fr;
  }
}

.warranty-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 30px;background:linear-gradient(110deg,#e8f6f2,#f5faf9);border:1px solid #d7ebe4;border-radius:16px;margin-bottom:22px}.warranty-eyebrow{font-size:10px;letter-spacing:1.5px;color:#378074;font-weight:800}.warranty-hero h2{font-size:28px;letter-spacing:-.7px;margin:10px 0}.warranty-hero p{color:#627b75;font-size:12px;margin:0;line-height:1.7}.warranty-metrics .metric{min-height:112px}.warranty-tabs{display:flex;align-items:center;gap:8px;padding:16px 20px;border-bottom:1px solid #e8efec}.warranty-tabs>button[role=tab]{background:none;border:0;padding:10px 14px;font:700 12px inherit;color:#70807c;border-radius:8px;cursor:pointer}.warranty-tabs>button[aria-selected=true]{background:#e7f5ef;color:#11634f}.warranty-tabs span{margin-left:6px;font-size:10px}.warranty-tabs #warranty-export{margin-left:auto}.warranty-filters{display:flex;align-items:center;gap:10px;padding:18px 20px;flex-wrap:wrap}.warranty-filters input:not([type=checkbox]),.warranty-filters select{padding:10px 12px;border:1px solid #dce5e1;border-radius:8px;background:#fff;font-size:12px;min-height:39px}.warranty-search{flex:1;min-width:230px}.warranty-search input{width:100%}.warranty-expiring{font-size:11px;color:#60756d;display:flex;align-items:center;gap:6px}.warranty-table-scroll{overflow-x:auto}.warranty-register table{min-width:800px}.warranty-register td small{display:block;margin-top:6px;font-size:10px;color:#82918b}.warranty-register td{padding-top:18px;padding-bottom:18px}.warranty-empty{text-align:center;padding:45px 24px!important;color:#6d8279}.warranty-empty h3{color:#314c41;margin:0 0 8px}.warranty-footnote{font-size:11px;color:#80928a;line-height:1.7;padding:8px 3px}.warranty-detail-head,.warranty-claim-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.warranty-detail-head{padding:4px 0 22px;border-bottom:1px solid #e3eae7}.warranty-detail-head h3{margin:8px 0}.warranty-id{overflow-wrap:anywhere;color:#86978f;font-size:10px}.warranty-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:20px 0;margin:0}.warranty-facts dt{color:#7c8d86;font-size:11px;margin-bottom:7px}.warranty-facts dd{margin:0;font-size:13px;font-weight:650;overflow-wrap:anywhere}.warranty-facts dd small{font-weight:400;color:#7c8d86}.warranty-terms{background:#f7faf8;border:1px solid #e4ede7;padding:16px 20px;border-radius:10px}.warranty-terms h4{font-size:11px;margin:0 0 5px}.warranty-terms p,.warranty-certificate p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;color:#586e62;line-height:1.7;margin:0 0 12px}.warranty-detail-actions{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.warranty-detail>h3{font-size:14px;margin-top:26px}.warranty-claim{padding:16px;border:1px solid #e2eae6;border-radius:10px;margin-top:12px}.warranty-claim-heading b{font-size:12px;line-height:1.6}.warranty-claim p{font-size:12px;line-height:1.6;white-space:pre-wrap}.warranty-claim .warranty-detail-actions{margin:12px 0 0}.warranty-timeline{border-left:2px solid #dbeae2;margin:16px 0 0 8px;padding-left:20px}.warranty-timeline article{margin-bottom:18px}.warranty-timeline b{font-size:10px;color:#44705b}.warranty-timeline p{font-size:12px;line-height:1.6;margin:5px 0;white-space:pre-wrap}.warranty-timeline small{font-size:10px;color:#93a099}.warranty-notice{background:#f1f7f3;padding:14px;border-radius:8px;color:#587061;font-size:12px;line-height:1.6}.warranty-danger{color:#a33e3e!important}.service-scheduled{background:#eef2ff;color:#5063a7}.service-exhausted{background:#fff1dd;color:#976522}.service-resolved{background:#e7f7ef;color:#16704c}.warranty-certificate{padding:40px!important}.warranty-certificate h1{font-size:30px}.warranty-certificate hr{border:0;border-top:1px solid #d9e6dd;margin:24px 0}.warranty-certificate small{color:#738578}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.modal-backdrop:has(.warranty-detail),.modal-backdrop:has(#warranty-form),.modal-backdrop:has(.warranty-certificate){z-index:50}
@media(max-width:800px){.warranty-hero{align-items:flex-start;flex-direction:column;padding:22px}.warranty-hero h2{font-size:24px}.warranty-tabs{flex-wrap:wrap}.warranty-facts{grid-template-columns:1fr}.warranty-claim-heading{align-items:flex-start;flex-direction:column}.warranty-tabs #warranty-export{margin-left:0}}
@media print{body.printing-warranty>*:not(#modal-root){display:none!important}body.printing-warranty #modal-root,body.printing-warranty .modal-backdrop,body.printing-warranty .service-modal{display:block!important;position:static!important;overflow:visible!important;max-height:none!important;height:auto!important;width:100%!important;max-width:none!important;background:white!important;box-shadow:none!important;border:0!important;margin:0!important;padding:0!important}body.printing-warranty .warranty-no-print{display:none!important}body.printing-warranty .warranty-certificate{max-height:none!important;overflow:visible!important;padding:20px!important}body.printing-warranty .warranty-facts{grid-template-columns:1fr 1fr}body.printing-warranty .warranty-certificate *{break-inside:avoid}}
.ws-box{border:1px solid #d5e4df;border-radius:9px;padding:12px;background:#f7fbf9;margin-top:10px;min-width:0;text-align:left;white-space:normal}
.ws-box legend,.ws-box summary{font-weight:650;color:#17634a}.ws-box summary{cursor:pointer;padding:2px 0 8px}.ws-toggle{display:flex!important;align-items:center;gap:8px;font-size:13px!important}.ws-toggle input{width:auto!important;min-height:0!important}.ws-settings{border:0;padding:10px 0 0;margin:0;min-width:0}.ws-settings[hidden]{display:none}.ws-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ws-grid label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:550}.ws-wide{grid-column:1/-1}.ws-grid input,.ws-grid select,.ws-grid textarea{width:100%!important;box-sizing:border-box;min-width:0!important;padding:8px;border:1px solid #cddbd6;border-radius:6px;background:white;font:inherit}.ws-help,.ws-count,.ws-preview{display:block;font-size:12px;line-height:1.5;color:#526a60;margin:6px 0}.ws-preview{color:#166343;font-weight:600}.ws-printed{max-width:360px;overflow-wrap:anywhere;white-space:normal;line-height:1.5}.ws-printed small{display:block;margin-top:5px}.ws-coverage-reference{font-size:9px;color:#536b60}.line-warranty-fields{min-width:210px;max-width:360px}.product-warranty-fields{margin:0}.product-warranty-fields .ws-toggle{flex-direction:row}
@media print{.ws-printed{max-width:none;color:#222}.ws-coverage-reference{font-size:8px}}

.business-tabs{display:flex;gap:8px;overflow-x:auto;padding:3px 0 14px;margin-bottom:10px;scrollbar-width:thin}.business-tabs button{white-space:nowrap;border:1px solid #d6e0df;background:#fff;color:#435553;border-radius:999px;padding:9px 13px;font:700 11px Manrope,sans-serif;cursor:pointer}.business-tabs button.active{background:#24665e;color:#fff;border-color:#24665e}.business-grid{display:grid;gap:18px}.business-grid.two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.business-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:14px 0}.business-toolbar select{width:auto;min-width:160px}.business-check-list{max-height:540px;overflow:auto;border:1px solid #e2e8e7;border-radius:10px}.business-check-list>label{display:flex;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid #edf1f0}.business-check-list>label:last-child{border:0}.business-check-list span,.match-row span,.catalogue-order>div,.business-link-list span{display:grid;gap:2px}.business-check-list small,.match-row small,.catalogue-order small,.business-link-list small{color:#74827f}.business-link-list>div,.match-row,.catalogue-order{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #e9eeee;padding:10px 0}.match-row>span{min-width:0;flex:1}.match-row>span small{overflow:hidden;text-overflow:ellipsis}.business-empty{padding:22px;text-align:center;color:#75827f;border:1px dashed #d7dfdd;border-radius:10px;margin:12px 0}.compact-form{padding:14px 0;margin:6px 0 16px;border-bottom:1px solid #e4e9e8}.compact-form:last-child{border-bottom:0}.check-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:10px 0}.check-row label,.compact-form>label{display:flex;align-items:center;gap:7px}.validation-summary{display:flex;gap:20px;padding:12px;border-radius:9px;background:#f3f8f5}.validation-summary span{color:#a14c35}.validation-row{display:grid;grid-template-columns:70px 1fr;gap:10px;padding:7px 10px;border-bottom:1px solid #edf0ef;font-size:12px}.business-note{padding:12px 14px;margin:12px 0;border-radius:9px;background:#f0f6f1;border-left:3px solid #5c9c63;color:#40584a;line-height:1.5;overflow-wrap:anywhere}.table-wrap{overflow:auto}.table-wrap table{min-width:620px}.link-btn{border:0;background:none;color:#24665e;font-weight:800;cursor:pointer;padding:5px}.link-btn.danger{color:#a33}.catalogue-order select{width:auto}.pwa-state{margin:18px 0}.business-list{line-height:1.7;padding-left:20px}@media(max-width:1050px){.business-grid.two{grid-template-columns:1fr}}@media(max-width:650px){.business-tabs{margin-inline:-16px;padding-inline:16px}.business-toolbar>*{flex:1}.match-row,.catalogue-order{align-items:flex-start;flex-wrap:wrap}.business-grid .form-grid{grid-template-columns:1fr}.business-grid .form-field.full{grid-column:auto}}

.readiness-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px;background:linear-gradient(135deg,#eff8f4,#f7f4e9)}
.readiness-hero h3{font-size:24px;margin:5px 0 7px}
.readiness-hero p{margin:0;max-width:760px;color:#556662}
.readiness-kicker{display:inline-block;color:#24665e;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.business-readiness-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.business-readiness-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:20px;border:1px solid #dfe9e6;border-radius:14px;background:#fff;box-shadow:0 7px 24px rgba(24,59,54,.05)}
.business-readiness-card>span:first-child{color:#657874;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.business-readiness-card h3{margin:0;font-size:17px}
.business-readiness-card p{color:#64736f;line-height:1.55;margin:0;flex:1}
.business-readiness-card>.secondary-btn{margin-top:4px}
.migration-centre-links{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}
.barcode-format-callout{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px}
.migration-centre-links h3,.migration-centre-links p{margin-top:0}
.business-upgrade-card{max-width:780px;background:linear-gradient(135deg,#fffaf0,#f5f8f7)}
.business-upgrade-card h3{font-size:22px;margin:7px 0}
.offline-queue-state{display:flex;align-items:baseline;gap:8px;margin:12px 0;padding:12px 14px;border-radius:10px;background:#f0f6f1;color:#40584a}
.offline-queue-state b{font-size:26px}
.barcode-label-controls{display:flex;gap:14px;padding:14px 22px;border-bottom:1px solid #e4e9e8;background:#f8faf9}
.barcode-label-controls label{display:grid;gap:5px;font-size:11px;font-weight:800;color:#52635f}
.barcode-label-controls select,.barcode-label-controls input{min-width:180px}
.barcode-label-controls input{min-width:90px;width:90px}
.barcode-printer-mapping{display:grid;gap:12px;padding:15px 22px;border-bottom:1px solid #e4e9e8;background:#fff}
.barcode-printer-heading,.barcode-printer-feedback{display:flex;align-items:center;justify-content:space-between;gap:14px}.barcode-printer-heading div{display:grid;gap:3px}.barcode-printer-heading small,.barcode-printer-feedback small{color:#60716d}.barcode-printer-heading>span{color:#087f6e;font-size:10px;font-weight:900;letter-spacing:.08em}
.barcode-printer-fields{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;align-items:end}.barcode-printer-fields label{display:grid;gap:5px;color:#52635f;font-size:11px;font-weight:800}.barcode-printer-fields select{min-width:0}.barcode-printer-feedback button{flex:none}
.barcode-printer-manual-toggle{justify-self:start;padding:0;border:0;background:none;color:#087f6e;font:700 12px inherit;cursor:pointer}.barcode-printer-manual{display:grid;gap:5px;max-width:520px;color:#52635f;font-size:11px;font-weight:800}.barcode-printer-manual small{color:#71817d;font-weight:400}
.barcode-printer-classification{display:grid;grid-template-columns:minmax(180px,280px) 1fr;gap:5px 12px;align-items:center;color:#52635f;font-size:11px;font-weight:800}.barcode-printer-classification select{grid-row:2}.barcode-printer-classification small{grid-column:2;grid-row:2;color:#71817d;font-weight:400}
.barcode-label-sheet{display:flex;align-items:flex-start;align-content:flex-start;justify-content:flex-start;flex-wrap:wrap;gap:2mm;padding:6mm}
.barcode-label-sheet .barcode-label{box-sizing:border-box;margin:0;padding:2mm;min-height:0}
.barcode-label-sheet.format-compact .barcode-label{width:38mm;height:25mm}
.barcode-label-sheet.format-standard .barcode-label{width:50mm;height:25mm}
.barcode-label-sheet.format-shelf .barcode-label{width:75mm;height:38mm}
.barcode-label-sheet.format-compact .barcode-label img,.barcode-label-sheet.format-standard .barcode-label img{width:calc(100% - 2mm);height:10mm}
.barcode-label-sheet.format-shelf .barcode-label img{width:calc(100% - 4mm);height:19mm}
.package-comparison{overflow:auto;margin-top:16px}
.package-comparison table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0}
.package-comparison th,.package-comparison td{padding:13px 12px;border-bottom:1px solid #e6ecea;text-align:center}
.package-comparison tbody th{text-align:left;font-weight:700;color:#3f514d}
.package-comparison thead th{background:#f5f8f7;font-size:12px;letter-spacing:.04em}
.package-comparison thead th small{display:block;margin-top:3px;color:#24665e;letter-spacing:0;text-transform:none}
.package-comparison .current{background:#edf7f3}
.package-comparison td.included{color:#18704f;font-size:18px;font-weight:900}
.package-comparison td.upgrade{color:#98a5a2}
@media(max-width:1050px){.business-readiness-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.readiness-hero,.migration-centre-links,.barcode-format-callout{align-items:flex-start;flex-direction:column}.business-readiness-grid{grid-template-columns:1fr}.barcode-printer-fields{grid-template-columns:1fr}.barcode-printer-feedback{align-items:flex-start;flex-direction:column}}
@media print{.barcode-label-sheet{padding:0;gap:2mm}.barcode-label-sheet .barcode-label{border:0;break-inside:avoid}.barcode-label-sheet[data-native-barcode-print="true"]{display:block;width:100%;height:100%;padding:0}.barcode-label-sheet[data-native-barcode-print="true"] .barcode-label:not(:first-child){display:none}.barcode-label-sheet[data-native-barcode-print="true"] .barcode-label:first-child{margin:0}}

.master-upload-page{max-width:1380px;margin:0 auto;display:grid;gap:22px}.master-upload-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;min-height:180px;padding:34px 40px;border-radius:22px;color:#fff;background:linear-gradient(118deg,#123b50 0%,#0b5864 56%,#07847e 100%);box-shadow:0 18px 40px rgba(10,56,70,.18)}.master-upload-hero:after{content:"";position:absolute;width:330px;height:330px;right:-95px;top:-178px;border:55px solid rgba(255,255,255,.08);border-radius:50%}.master-upload-hero>div:first-child{position:relative;z-index:1;max-width:720px}.master-upload-hero .module-browser-eyebrow{color:#8de9d7;letter-spacing:.16em;font-weight:800}.master-upload-hero h2{margin:9px 0 10px;font-size:clamp(28px,3vw,42px);line-height:1.05}.master-upload-hero p{margin:0;max-width:680px;color:#d8eef0;font-size:16px;line-height:1.6}.master-upload-hero-badge{position:relative;z-index:1;display:flex;align-items:center;gap:13px;min-width:180px;padding:18px 21px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(255,255,255,.1);backdrop-filter:blur(10px)}.master-upload-hero-badge strong{font-size:39px;line-height:1}.master-upload-hero-badge span{font-size:13px;line-height:1.35;color:#dff7f3}.master-upload-assurance{display:grid;grid-template-columns:auto 1fr auto;gap:15px;align-items:center;padding:17px 20px;border:1px solid #bce8dc;border-radius:16px;background:#f0fbf7;color:#164b45}.master-upload-assurance>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:#fff;background:#169579;font-weight:900}.master-upload-assurance b{display:block;margin-bottom:3px}.master-upload-assurance p{margin:0;color:#4a6965;line-height:1.45}.master-upload-assurance em{font-style:normal;font-size:12px;font-weight:750;white-space:nowrap;color:#327266}.master-upload-process{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;padding:20px 24px;border:1px solid var(--line);border-radius:18px;background:var(--paper)}.master-upload-process>div{display:grid;grid-template-columns:38px 1fr;column-gap:12px;align-items:center}.master-upload-process span{grid-row:1/3;display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:#eaf6f4;color:#087267;font-weight:900}.master-upload-process b{font-size:13px}.master-upload-process small{margin-top:2px;color:var(--muted)}.master-upload-process i{width:45px;height:1px;margin:0 13px;background:linear-gradient(90deg,#b9d9d4,#dce9e7)}.master-upload-section-head{display:flex;align-items:end;justify-content:space-between;margin:4px 2px 14px}.master-upload-section-head span{font-size:11px;letter-spacing:.16em;font-weight:850;color:#168274}.master-upload-section-head h3{margin:5px 0 4px;font-size:24px}.master-upload-section-head p{margin:0;color:var(--muted)}.master-upload-format{display:flex;gap:7px}.master-upload-format b{padding:6px 9px;border:1px solid var(--line);border-radius:8px;background:var(--paper);font-size:11px;color:var(--muted)}.master-upload-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.master-upload-card{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:310px;padding:22px;border:1px solid var(--line);border-radius:19px;background:var(--paper);box-shadow:0 8px 22px rgba(17,51,62,.06);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.master-upload-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--upload-accent)}.master-upload-card:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(17,51,62,.11)}.master-upload-blue{--upload-accent:#3689d6;--upload-soft:#eaf4ff}.master-upload-violet{--upload-accent:#8b63d8;--upload-soft:#f3edff}.master-upload-green{--upload-accent:#24a17d;--upload-soft:#e8f8f2}.master-upload-orange{--upload-accent:#e78b3e;--upload-soft:#fff2e6}.master-upload-card-head{display:flex;align-items:center;justify-content:space-between}.master-upload-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--upload-soft);color:var(--upload-accent);font-size:22px;font-weight:900}.master-upload-card h3{margin:20px 0 8px;font-size:18px}.master-upload-card>p{min-height:62px;margin:0;color:var(--muted);font-size:13px;line-height:1.55}.master-upload-fields{margin:16px 0;padding:12px;border-radius:11px;background:var(--upload-soft)}.master-upload-fields small{display:block;margin-bottom:4px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.master-upload-fields b{font-size:12px;color:var(--ink)}.master-upload-card-actions{display:grid;grid-template-columns:auto 1fr;gap:8px;margin-top:auto}.master-upload-card-actions button{padding-inline:13px}.master-upload-view-link{align-self:flex-start;margin-top:13px;padding:0;border:0;background:none;color:var(--upload-accent);font-weight:750;cursor:pointer}.master-upload-help{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0;padding:20px 22px}.master-upload-help>div{display:flex;align-items:center;gap:15px}.master-upload-help-icon{display:grid;place-items:center;flex:0 0 auto;width:38px;height:38px;border-radius:50%;background:#edf4f6;color:#47717b;font-family:serif;font-weight:900}.master-upload-help h3{margin:0 0 4px;font-size:15px}.master-upload-help p{margin:0;color:var(--muted);line-height:1.5}@media(max-width:1100px){.master-upload-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.master-upload-process{grid-template-columns:repeat(4,1fr);gap:12px}.master-upload-process i{display:none}}@media(max-width:680px){.master-upload-hero{padding:27px 23px;min-height:0}.master-upload-hero-badge{display:none}.master-upload-assurance{grid-template-columns:auto 1fr}.master-upload-assurance em{grid-column:2}.master-upload-process{grid-template-columns:1fr 1fr;padding:16px}.master-upload-grid{grid-template-columns:1fr}.master-upload-card{min-height:0}.master-upload-section-head{align-items:flex-start;gap:12px}.master-upload-help{align-items:flex-start;flex-direction:column}.master-upload-help>button{width:100%}}
.legacy-migration{margin:0;padding:23px;border-color:#cfdfe8;background:linear-gradient(135deg,#fff,#f5fafc)}.legacy-migration-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.legacy-migration-heading h3{margin:5px 0 6px;font-size:21px}.legacy-migration-heading p{max-width:800px;margin:0;color:var(--muted);line-height:1.5}.legacy-migration-start{display:grid;grid-template-columns:1.1fr .7fr 1.5fr auto;align-items:end;gap:12px}.legacy-migration-start .form-error{grid-column:1/-1}.legacy-mapping-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:15px}.legacy-map-row{display:grid;grid-template-columns:1fr minmax(180px,1fr);align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:var(--paper);transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}.legacy-map-row span,.legacy-map-row small{display:block}.legacy-map-row small{margin-top:2px;color:var(--muted)}.legacy-map-row select{width:100%}.legacy-map-row.is-mapped{border-color:#4fae75;background:#edf9f0;box-shadow:inset 3px 0 #299a58}.legacy-map-row.is-mapped b{color:#12683a}.legacy-map-row.is-mapped small{color:#237847}.legacy-map-row.is-mapped select{border-color:#73be8d;background:#fff}.legacy-map-row.is-mapped select:focus{outline-color:#23834a}.legacy-review-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:20px 0 12px}.legacy-review-summary>div{padding:13px 15px;border-radius:11px;background:#edf6f7}.legacy-review-summary b,.legacy-review-summary span{display:block}.legacy-review-summary b{font-size:17px}.legacy-review-summary span{margin-top:3px;color:var(--muted);font-size:10px;text-transform:uppercase}.legacy-review-table{max-height:430px}.legacy-review-table td{max-width:430px;white-space:normal;line-height:1.45}.legacy-review-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:15px}.legacy-history{display:grid;gap:8px;margin-top:18px;padding-top:17px;border-top:1px solid var(--line)}.legacy-history h4{margin:0 0 2px}.legacy-history>button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);text-align:left;cursor:pointer}.legacy-history>button:hover{border-color:#83b9b1;background:#f8fcfb}.legacy-history span:first-child,.legacy-history b,.legacy-history small{display:block}.legacy-history small{margin-top:3px;color:var(--muted)}.legacy-history-note{margin:16px 0 0}@media(max-width:900px){.legacy-migration-start{grid-template-columns:1fr 1fr}.legacy-migration-start button{align-self:end}.legacy-mapping-grid{grid-template-columns:1fr}}@media(max-width:680px){.legacy-migration-heading{display:grid}.legacy-migration-start{grid-template-columns:1fr}.legacy-map-row{grid-template-columns:1fr}.legacy-review-summary{grid-template-columns:1fr 1fr}.legacy-review-actions{align-items:stretch;flex-direction:column}.legacy-review-actions .primary-btn,.legacy-review-actions .secondary-btn{width:100%}}

.crm-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;border-bottom:1px solid #e5e7eb}.crm-topbar nav{display:flex;gap:4px;overflow:auto}.crm-topbar nav button{border:0;background:transparent;padding:12px 14px;color:#64748b;font:700 12px Manrope,sans-serif;white-space:nowrap;border-bottom:2px solid transparent}.crm-topbar nav button.active{color:#0f766e;border-color:#0f766e}.crm-topbar>div{display:flex;gap:8px;padding-bottom:8px}.crm-metrics{margin-bottom:18px}.crm-metrics article b{font-size:19px}.crm-pipeline-shell{min-width:0}.crm-pipeline-toolbar{display:flex;align-items:end;gap:12px;margin-bottom:14px}.crm-pipeline-toolbar label{display:grid;gap:5px;color:#64748b;font-size:11px;font-weight:700}.crm-pipeline-toolbar select,.crm-pipeline-toolbar input{min-width:190px;border:1px solid #dbe2e8;border-radius:9px;background:#fff;padding:9px 11px;color:#1f2937}.crm-pipeline-toolbar>span{margin-left:auto;color:#64748b;font-size:12px}.crm-board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,1fr);gap:12px;overflow-x:auto;padding:2px 2px 14px;scroll-snap-type:x proximity}.crm-stage{min-height:430px;border:1px solid #e5e9ee;border-radius:13px;background:#f7f9fb;scroll-snap-align:start;transition:.15s}.crm-stage.drag-over,.crm-closed-zones button.drag-over{outline:2px solid #0f766e;background:#e9f7f4}.crm-stage>header{display:flex;justify-content:space-between;align-items:start;padding:13px 13px 10px;border-top:3px solid var(--stage);border-radius:12px 12px 0 0}.crm-stage h3{margin:0;font:800 13px Manrope,sans-serif}.crm-stage header span{font-size:10px;color:#718096}.crm-stage header>b{display:grid;place-items:center;min-width:24px;height:24px;border-radius:12px;background:#fff;color:#475569;font-size:11px}.crm-stage-value{padding:0 13px 10px;color:#475569;font-size:12px;font-weight:700}.crm-stage-drop{display:grid;align-content:start;gap:9px;padding:0 9px 12px;min-height:340px}.crm-deal-card{position:relative;padding:13px;border:1px solid #e4e8ed;border-radius:11px;background:#fff;box-shadow:0 2px 8px #0f172a0a;cursor:grab}.crm-deal-card.dragging{opacity:.45}.crm-deal-priority{position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:3px;background:#cbd5e1}.crm-deal-priority.high{background:#f59e0b}.crm-deal-priority.urgent{background:#ef4444}.crm-deal-priority.low{background:#38bdf8}.crm-deal-card-head,.crm-deal-meta{display:flex;justify-content:space-between;gap:8px}.crm-deal-card-head span{color:#64748b;font-size:10px;text-transform:uppercase}.crm-deal-card-head b{font-size:11px;color:#0f766e}.crm-deal-card h4{margin:9px 16px 4px 0;font:800 13px Manrope,sans-serif}.crm-deal-card p{margin:0 0 10px;color:#64748b;font-size:11px}.crm-deal-meta{padding-top:9px;border-top:1px solid #eef2f5;color:#64748b;font-size:9px}.crm-deal-card>small{display:block;margin-top:8px;color:#475569}.crm-card-activity{position:absolute;right:8px;top:39px;border:0;border-radius:50%;width:24px;height:24px;background:#edf7f5;color:#0f766e;font-size:16px}.crm-empty-stage,.crm-empty{text-align:center;color:#94a3b8;font-size:11px;padding:26px 10px}.crm-closed-zones{display:flex;gap:10px;margin-top:4px}.crm-closed-zones button{flex:1;border:1px dashed #cbd5e1;border-radius:10px;background:#fff;padding:11px;color:#475569;font-weight:700}.crm-closed-zones button span{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.crm-closed-zones button b{float:right}.crm-overview-grid{display:grid;gap:18px}.crm-activity-card{margin-top:18px}.crm-activity-list{display:grid}.crm-activity-list article{display:grid;grid-template-columns:38px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #edf1f4}.crm-activity-list article:last-child{border:0}.crm-activity-list article.done{opacity:.64}.crm-activity-list article>div{display:grid}.crm-activity-list small{color:#64748b;margin-top:3px}.crm-activity-list time{font-size:11px;color:#64748b}.crm-activity-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#eef2ff;color:#4f46e5}.crm-activity-icon.call{background:#ecfdf5;color:#059669}.crm-activity-icon.email{background:#eff6ff;color:#2563eb}.crm-activity-icon.task{background:#fff7ed;color:#ea580c}.crm-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.crm-account-grid article{display:flex;gap:12px;padding:14px;border:1px solid #e7ebef;border-radius:11px}.crm-account-grid h4{margin:1px 0 5px}.crm-account-grid p{margin:0 0 7px;color:#64748b;font-size:11px}.crm-account-grid small{color:#0f766e;font-weight:700}.crm-account-avatar{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:11px;background:#e7f5f2;color:#0f766e;font-weight:800}.crm-insight-grid,.crm-settings-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:18px}.crm-funnel{display:grid;gap:15px}.crm-funnel>div{display:grid;grid-template-columns:100px minmax(80px,1fr) 105px 60px;align-items:center;gap:10px;font-size:11px}.crm-funnel i{height:10px;width:var(--width);background:var(--stage);border-radius:8px}.crm-funnel b{text-align:right}.crm-funnel small{color:#64748b}.crm-score{display:grid;gap:12px}.crm-score>div{padding:20px;border-radius:12px;background:#f7fafb}.crm-score strong{display:block;font:800 24px Manrope,sans-serif;color:#0f766e}.crm-score span{color:#64748b;font-size:11px}.crm-pipeline-list article{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid #edf1f4}.crm-pipeline-list article>div{display:grid}.crm-pipeline-list small{color:#64748b;margin-top:3px}.crm-modal textarea{resize:vertical}.crm-modal{max-width:760px}
@media(max-width:900px){.crm-account-grid,.crm-insight-grid,.crm-settings-grid{grid-template-columns:1fr}.crm-topbar{align-items:flex-start}.crm-topbar>div{flex-wrap:wrap;justify-content:flex-end}.crm-board{grid-auto-columns:minmax(230px,82vw)}}
@media(max-width:600px){.crm-topbar{display:block}.crm-topbar>div{justify-content:stretch}.crm-topbar>div button{flex:1}.crm-pipeline-toolbar{display:grid;grid-template-columns:1fr 1fr}.crm-pipeline-toolbar label input,.crm-pipeline-toolbar label select{min-width:0;width:100%}.crm-pipeline-toolbar>span{grid-column:1/-1;margin:0}.crm-activity-list article{grid-template-columns:34px minmax(0,1fr)}.crm-activity-list time,.crm-activity-list article>button,.crm-activity-list article>.status{grid-column:2}.crm-account-grid{grid-template-columns:1fr}.crm-funnel>div{grid-template-columns:75px minmax(50px,1fr) 90px}.crm-funnel small{display:none}}
.crm-dashboard-card{position:relative;display:flex;align-items:center;gap:13px;min-height:88px;padding:16px;border:1px solid #e5e9ee;border-radius:12px;background:#fff;color:#17212b;text-align:left;font:inherit;box-shadow:0 2px 8px #0f172a08;cursor:pointer;transition:.16s}.crm-dashboard-card:hover,.crm-dashboard-card:focus-visible{border-color:#80c9bd;box-shadow:0 10px 24px #0f766e18;transform:translateY(-1px);outline:0}.crm-dashboard-card .metric-icon{position:static;flex:0 0 38px;width:38px;height:38px;border-radius:11px;display:grid;place-items:center;font-weight:800}.crm-dashboard-card .metric-icon.blue{background:#e8f2ff;color:#2563eb}.crm-dashboard-card .metric-icon.teal{background:#e7f7f3;color:#0f766e}.crm-dashboard-card .metric-icon.amber{background:#fff4dc;color:#d97706}.crm-dashboard-card .metric-icon.red{background:#feecec;color:#dc2626}.crm-dashboard-card>div{display:grid;gap:2px}.crm-dashboard-card b{font:800 19px Manrope,sans-serif}.crm-dashboard-card small{color:#64748b}.crm-dashboard-card em,.crm-score em{margin-top:5px;color:#0f766e;font-size:9px;font-style:normal;font-weight:800;opacity:0;transform:translateY(2px);transition:.16s}.crm-dashboard-card:hover em,.crm-dashboard-card:focus-visible em,.crm-score button:hover em,.crm-score button:focus-visible em{opacity:1;transform:none}.crm-funnel>button{display:grid;grid-template-columns:100px minmax(80px,1fr) 105px 60px;align-items:center;gap:10px;width:100%;padding:7px 8px;border:0;border-radius:9px;background:transparent;color:inherit;text-align:left;font:11px 'DM Sans',sans-serif;cursor:pointer}.crm-funnel>button:hover,.crm-funnel>button:focus-visible{background:#f2f8f7;outline:2px solid #b9e0d9}.crm-funnel button i{height:10px;width:var(--width);background:var(--stage);border-radius:8px}.crm-funnel button b{text-align:right}.crm-funnel button small{color:#64748b}.crm-score>button{display:block;width:100%;padding:20px;border:1px solid transparent;border-radius:12px;background:#f7fafb;color:inherit;text-align:left;font:inherit;cursor:pointer}.crm-score>button:hover,.crm-score>button:focus-visible{border-color:#9bd5cb;background:#f1faf8;outline:0}.crm-score button strong{display:block;font:800 24px Manrope,sans-serif;color:#0f766e}.crm-score button span{display:block;color:#64748b;font-size:11px}.crm-drilldown-modal{max-width:1120px}.crm-drilldown-summary{display:flex;align-items:end;gap:12px;margin-bottom:16px}.crm-drilldown-summary>div{min-width:130px;padding:12px 14px;border:1px solid #e5e9ee;border-radius:10px;background:#f7fafb}.crm-drilldown-summary strong,.crm-drilldown-summary span{display:block}.crm-drilldown-summary strong{font:800 19px Manrope,sans-serif;color:#0f766e}.crm-drilldown-summary span{margin-top:2px;color:#64748b;font-size:10px}.crm-drilldown-summary label{display:grid;gap:5px;margin-left:auto;color:#64748b;font-size:10px;font-weight:700}.crm-drilldown-summary input{width:260px;border:1px solid #dbe2e8;border-radius:8px;padding:9px 11px;font:12px 'DM Sans',sans-serif}.crm-drilldown-table{max-height:55vh;overflow:auto;border:1px solid #e5e9ee;border-radius:10px}.crm-drilldown-table thead{position:sticky;top:0;z-index:1}.crm-drilldown-table th,.crm-drilldown-table td{padding:11px 12px;white-space:nowrap}.crm-drilldown-table td:first-child{min-width:210px;white-space:normal}.crm-drilldown-table td small{display:block;margin-top:3px;color:#64748b;font-size:9px}.crm-stage-pill{display:inline-flex;align-items:center;gap:6px}.crm-stage-pill:before{content:'';width:7px;height:7px;border-radius:50%;background:var(--stage)}
@media(max-width:600px){.crm-dashboard-card em,.crm-score em{opacity:1;transform:none}.crm-funnel>button{grid-template-columns:75px minmax(50px,1fr) 90px}.crm-funnel button small{display:none}.crm-drilldown-summary{display:grid;grid-template-columns:1fr 1fr}.crm-drilldown-summary label{grid-column:1/-1;margin:0}.crm-drilldown-summary input{width:100%}.crm-drilldown-modal .modal-foot{align-items:flex-start;gap:10px}.crm-drilldown-modal .modal-foot small{display:none}}
.crm-data-card{transition:border-color .16s,box-shadow .16s,transform .16s}.crm-data-card:hover,.crm-data-card:focus-visible{border-color:#80c9bd;box-shadow:0 8px 20px #0f766e16;outline:0}.crm-stage>header{padding:0}.crm-stage-drilldown{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;width:100%;padding:13px;border:0;border-top:3px solid var(--stage);border-radius:12px 12px 0 0;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer}.crm-stage-drilldown:hover,.crm-stage-drilldown:focus-visible{background:#eaf6f3;outline:0}.crm-stage-drilldown>div:last-child{display:grid;justify-items:end;gap:4px}.crm-stage-drilldown b{display:grid;place-items:center;min-width:24px;height:24px;border-radius:12px;background:#fff;color:#475569;font-size:11px}.crm-stage-drilldown strong{color:#475569;font-size:11px}.crm-account-card{display:flex;gap:12px;width:100%;padding:14px;border:1px solid #e7ebef;border-radius:11px;background:#fff;color:inherit;text-align:left;font:inherit;cursor:pointer}.crm-account-card h4{margin:1px 0 5px}.crm-account-card p{margin:0 0 7px;color:#64748b;font-size:11px}.crm-account-card small{display:block;color:#0f766e;font-weight:700}.crm-account-card em{display:block;margin-top:5px;color:#0f766e;font-size:9px;font-style:normal;font-weight:800}.crm-pipeline-list>button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:13px 8px;border:0;border-bottom:1px solid #edf1f4;background:#fff;color:inherit;text-align:left;font:inherit;cursor:pointer}.crm-pipeline-list>button:last-child{border-bottom:0}.crm-pipeline-list>button>div{display:grid}.crm-pipeline-list>button small{margin-top:3px;color:#64748b}.crm-activity-list article.crm-data-card,.crm-deal-card.crm-data-card{cursor:pointer}
.crm-card-review,.crm-card-cadence{position:absolute;bottom:10px;border:0;border-radius:6px;background:#eef6f5;color:#0f766e;padding:4px 6px;font:700 9px Manrope,sans-serif;cursor:pointer}.crm-card-review{right:38px}.crm-card-cadence{right:84px}.crm-card-review:focus-visible,.crm-card-cadence:focus-visible{outline:2px solid #0f766e;outline-offset:2px}

.pos-fullscreen-backdrop { inset: 0; width: 100vw; height: 100dvh; padding: 0; place-items: stretch; }
.pos-checkout-modal { width: 100vw; height: 100dvh; max-height: 100dvh; border-radius: 0; background: #f4f7f6; display: flex; flex-direction: column; overflow: hidden; }
.pos-checkout-modal > .modal-head { flex: 0 0 auto; }
.pos-checkout-modal > #pos-form { min-height: 0; flex: 1 1 auto; display: flex; flex-direction: column; }
.pos-checkout-modal .pos-checkout-body { min-height: 0; flex: 1 1 auto; overflow: auto; }
.pos-checkout-modal .pos-checkout-foot { flex: 0 0 auto; }
.pos-checkout-head { border-left: 5px solid var(--teal); background: linear-gradient(105deg, #e3f5f1, #fff 62%); }
.pos-checkout-back { display: block; margin: 0 0 7px; padding: 0; border: 0; background: transparent; color: #35655d; font: 700 11px 'DM Sans'; cursor: pointer; }
.pos-checkout-back:hover { color: #087b6c; }
.pos-screen-badge { display: inline-block; margin-bottom: 5px; color: #087b6c; font-size: 9px; font-weight: 800; letter-spacing: 1.1px; }
.pos-head-actions { display: flex; align-items: center; gap: 12px; }
.pos-option-toggle { display: flex; align-items: center; gap: 7px; min-height: 34px; padding: 0 11px; border: 1px solid #b8d7d1; border-radius: 7px; background: #fff; color: #355d57; font: 700 11px 'DM Sans'; cursor: pointer; }
.pos-option-toggle input { accent-color: var(--teal); }
.pos-option-toggle:has(input:checked) { border-color: var(--teal); color: #087b6c; background: #e5f6f2; }
.pos-pair-button { white-space: nowrap; }
.pos-pair-button.connected { border-color: #16a34a; background: #dcfce7; color: #166534; }
.global-scanner-button { white-space: nowrap; }
.global-scanner-button.connected { border-color: #16a34a; background: #dcfce7; color: #166534; }
#pos-pair-scanner,#purchase-pair-scanner,#sales-pair-scanner,#product-pair-scanner { display: none !important; }
.pos-scanner-pair-modal { width: min(720px, 100%); }
.pos-scanner-pair-body { display: grid; grid-template-columns: minmax(240px, 320px) 1fr; gap: 24px; align-items: center; }
.pos-scanner-qr { display: grid; place-items: center; padding: 12px; border: 1px solid #cfe2dc; border-radius: 14px; background: #fff; box-shadow: 0 8px 26px rgba(15, 54, 46, .08); }
.pos-scanner-qr img { display: block; width: min(100%, 300px); aspect-ratio: 1; }
.pos-scanner-steps { display: grid; gap: 13px; }
.pos-scanner-steps ol { margin: 0; padding-left: 20px; color: #516963; line-height: 1.6; }
.pos-scanner-steps li + li { margin-top: 7px; }
.pos-scanner-pair-status { display: flex; align-items: center; gap: 10px; padding: 11px 12px; border: 1px solid #ead8b9; border-radius: 10px; background: #fff8e8; }
.pos-scanner-pair-status i { flex: 0 0 auto; width: 10px; height: 10px; border-radius: 50%; background: #d8922d; box-shadow: 0 0 0 4px #ffedc3; }
.pos-scanner-pair-status div { display: grid; gap: 2px; }
.pos-scanner-pair-status small { color: #6d7c78; font-size: 10px; }
.pos-scanner-pair-status[data-state="connected"] { border-color: #86d49e; background: #dcfce7; }
.pos-scanner-pair-status[data-state="connected"] i { background: #16a34a; box-shadow: 0 0 0 4px #bbf7d0; }
.pos-scanner-expiry { margin: 0; color: #6d7c78; font-size: 11px; line-height: 1.5; }
.pos-scanner-warning { margin: 0; padding: 10px; border: 1px solid #f1c785; border-radius: 8px; background: #fff8e8; color: #805b21; font-size: 11px; line-height: 1.45; }
#pos-form:not(.pos-show-stock-info) .line-product-meta,
#pos-form:not(.pos-show-stock-info) .line-price-source { display: none !important; }
#pos-form:not(.pos-show-warranty) .line-warranty-fields { display: none !important; }
#pos-form.pos-show-stock-info .line-product-meta,
#pos-form.pos-show-stock-info .line-price-source { display: block; }
#pos-form.pos-show-warranty .line-warranty-fields { display: block; }
.pos-checkout-body { display: grid; gap: 12px; padding: 14px 16px; }
.pos-customer-panel, .pos-cart-panel, .pos-payment-panel { border: 1px solid #dbe5e3; border-radius: 9px; background: #fff; box-shadow: 0 1px 3px rgba(28,54,49,.04); }
.pos-customer-panel, .pos-cart-panel, .pos-payment-panel { padding: 12px 14px; }
.pos-customer-panel { display: grid; grid-template-columns: minmax(205px,.42fr) minmax(0,2fr); gap: 10px 14px; align-items: end; }
.pos-panel-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.pos-customer-panel > .pos-panel-title { margin-bottom: 0; }
.pos-panel-title > div { display: grid; gap: 2px; }
.pos-panel-title b { font: 700 13px Manrope; }
.pos-panel-title small { color: #78847f; font-size: 10px; }
.pos-walk-in { border: 0; background: #edf4f2; color: #35655d; border-radius: 6px; padding: 7px 10px; font: 700 10px 'DM Sans'; cursor: pointer; }
.pos-customer-fields { display: grid; grid-template-columns: minmax(250px,1.15fr) minmax(220px,1fr) auto; gap: 10px; align-items: end; }
.pos-customer-fields .form-field { gap: 4px; }
.pos-customer-fields .form-field small { display: none; }
.pos-customer-actions { display: flex; gap: 7px; padding-bottom: 1px; }
.pos-selected-customer { display: grid; grid-template-columns: 110px minmax(220px,1fr) minmax(260px,1.3fr); gap: 10px; align-items: center; grid-column: 1 / -1; margin-top: 0; padding-top: 10px; border-top: 1px solid #edf1f0; }
.pos-selected-customer label { font-size: 10px; font-weight: 700; color: #62716c; }
.pos-selected-customer select { width: 100%; border: 1px solid #dfe5e5; border-radius: 6px; padding: 8px 9px; font: 12px 'DM Sans'; background: #fff; }
.pos-customer-status { font-size: 10px; color: #74827d; }
.pos-customer-status[data-state="found"], .pos-customer-status[data-state="saved"] { color: #087b62; font-weight: 700; }
.pos-customer-status[data-state="new"] { color: #9a6818; }
.pos-customer-status[data-state="error"] { color: #b54242; }
.pos-checkout-grid { display: grid; grid-template-columns: minmax(0,2.25fr) minmax(270px,.75fr); gap: 12px; }
.pos-product-picker { margin-bottom: 10px; padding: 10px; border: 1px solid #d9e8e5; border-radius: 9px; background: #f7fbfa; }
.pos-product-search-row { display: grid; grid-template-columns: minmax(150px,.7fr) minmax(300px,1.3fr); gap: 12px; align-items: end; }
.pos-product-search-row > label { display: grid; gap: 2px; }
.pos-product-search-row > label b { font: 700 12px Manrope; }
.pos-product-search-row > label small { color: #71817c; font-size: 10px; }
.pos-product-search-row > div { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 7px; }
.pos-product-search-row input { width: 100%; min-width: 0; border: 1px solid #cfdedb; border-radius: 7px; padding: 9px 10px; background: #fff; font: 12px 'DM Sans'; outline: none; }
.pos-product-search-row input:focus { border-color: var(--teal); box-shadow: 0 0 0 3px rgba(0,141,123,.1); }
.pos-product-results { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 7px; margin-top: 9px; max-height: 132px; overflow: auto; }
.pos-product-card { min-width: 0; display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 8px; align-items: center; padding: 9px; border: 1px solid #dbe7e4; border-radius: 8px; background: #fff; color: #293b37; text-align: left; cursor: pointer; }
.pos-product-card:hover, .pos-product-card:focus-visible { border-color: #6fc2b4; background: #eef9f6; outline: none; }
.pos-product-card-icon { display: grid; place-items: center; width: 27px; height: 27px; border-radius: 7px; background: #e2f5ee; color: var(--teal); }
.pos-product-card > span:nth-child(2) { min-width: 0; display: grid; gap: 2px; }
.pos-product-card b, .pos-product-card small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pos-product-card b { font-size: 10px; }
.pos-product-card small { color: #77847f; font-size: 8px; }
.pos-product-card strong { color: #087b6c; font-size: 10px; white-space: nowrap; }
.pos-product-card em { color:#79908a; font-size:8px; font-style:normal; }
.pos-product-empty { grid-column: 1 / -1; padding: 13px; color: #74827d; font-size: 10px; text-align: center; }
.pos-items-editor { margin-top: 0; overflow: auto; }
.pos-items-editor table { min-width: 760px; }
.pos-items-editor .pos-discount-heading { width: 62px; min-width: 62px; padding-left: 5px; padding-right: 5px; text-align: center; }
.pos-items-editor .line-discount { width: 5.5ch; min-width: 48px; max-width: 52px; padding-left: 5px; padding-right: 3px; text-align: right; }
.pos-payment-panel { align-self: start; }
.pos-payment-fields { grid-template-columns: 1fr; }
.pos-payment-panel .invoice-totals { width: 100%; margin: 4px 0 0; padding-top: 10px; }
.pos-payment-panel .invoice-totals .total { padding: 12px; border-radius: 7px; background: #0b7466; color: #fff; }
.pos-checkout-foot { background: #fff; }
.pos-checkout-foot small { max-width: 52%; }
@media (max-width: 900px) {
  .pos-customer-panel { display: block; }
  .pos-customer-panel > .pos-panel-title { margin-bottom: 10px; }
  .pos-customer-fields { grid-template-columns: 1fr 1fr; }
  .pos-customer-actions { grid-column: 1 / -1; }
  .pos-checkout-grid { grid-template-columns: 1fr; }
  .pos-selected-customer { grid-template-columns: 1fr; }
  .pos-payment-fields { grid-template-columns: 1fr 1fr; }
  .pos-checkout-foot small { display: none; }
  .pos-scanner-pair-body { grid-template-columns: 1fr; }
  .pos-scanner-qr img { width: min(72vw, 290px); }
  .pos-product-results { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 600px) {
  .pos-customer-fields, .pos-payment-fields { grid-template-columns: 1fr; }
  .pos-checkout-foot { gap: 10px; }
  .pos-checkout-foot > div { display: flex; gap: 6px; }
  .pos-checkout-foot .primary-btn { padding: 0 9px; }
  .pos-product-search-row { grid-template-columns: 1fr; }
  .pos-product-results { grid-template-columns: 1fr; }
}

.pos-checkout-modal .pos-experience-tabs { margin:10px 18px 4px; grid-template-columns:repeat(4,minmax(0,1fr)); flex:0 0 auto; }
.pos-checkout-modal .invoice-default-choice { margin:0 22px 8px; flex:0 0 auto; }
.pos-checkout-modal .customer-reorder-panel { grid-column:1/-1; margin:0; }
.pos-checkout-modal[data-pos-entry-mode="smart-grid"] .pos-product-results { grid-template-columns:repeat(4,minmax(110px,1fr)); }
.pos-checkout-modal[data-pos-entry-mode="smart-grid"] .pos-product-card { min-height:92px; display:grid; align-content:center; text-align:center; }
.pos-checkout-modal[data-pos-entry-mode="smart-grid"] .pos-product-card-icon { margin:auto; }
.pos-checkout-modal[data-pos-entry-mode="express-scan"] .pos-product-results,
.pos-checkout-modal[data-pos-entry-mode="express-scan"] .pos-panel-title .status,
.pos-checkout-modal[data-pos-entry-mode="express-scan"] #add-line { display:none; }
.pos-checkout-modal[data-pos-entry-mode="express-scan"] .pos-product-search-row { grid-template-columns:1fr; }
.pos-checkout-modal[data-pos-entry-mode="express-scan"] #pos-item-search { min-height:54px; font-size:18px; }
.pos-checkout-modal[data-pos-entry-mode="express-scan"] #pos-item-code-add { min-height:54px; }
.pos-checkout-modal[data-pos-entry-mode="express-scan"] .pos-payment-panel .invoice-totals .total { font-size:18px; }
.pos-classic-header,.pos-classic-summary,.pos-classic-shortcuts { display:none; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] { --classic-blue:#0878a7; --classic-line:#8eb8c8; --classic-pale:#e9f7fb; background:#dff2f7; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-checkout-head { border-left-color:var(--classic-blue); border-bottom:1px solid var(--classic-line); border-radius:0; background:linear-gradient(#f7fcfe,#dff2f7); }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-screen-badge { color:#075f85; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-experience-tabs { margin:4px 8px 2px; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .invoice-default-choice { margin:0 11px 4px; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-checkout-body { display:flex; flex-direction:column; gap:4px; padding:4px 8px 0; background:#dff2f7; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-customer-panel,
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .customer-reorder-panel { display:none; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-classic-header { display:grid; grid-template-columns:.85fr 1.7fr .8fr; border:1px solid var(--classic-line); background:#edf9fc; }
.pos-classic-header fieldset { min-width:0; margin:0; padding:5px 8px 7px; border:0; border-right:1px solid var(--classic-line); }
.pos-classic-header fieldset:last-child { border-right:0; }
.pos-classic-header legend { padding:0 4px; color:#245968; font:700 10px Manrope,sans-serif; }
.pos-classic-header label { display:grid; grid-template-columns:94px minmax(0,1fr); align-items:center; min-height:25px; gap:5px; color:#315b67; font:600 9px 'DM Sans',sans-serif; }
.pos-classic-header input,.pos-classic-header select,.pos-classic-header output { box-sizing:border-box; width:100%; min-width:0; min-height:22px; padding:3px 5px; border:1px solid #a8c8d3; border-radius:1px; background:#fff; color:#183f4d; font:600 9px 'DM Sans',sans-serif; }
.pos-classic-header output { display:flex; align-items:center; justify-content:flex-end; }
.pos-classic-header .pos-classic-check { display:flex; justify-content:flex-end; }
.pos-classic-header .pos-classic-check input { width:auto; min-height:auto; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-checkout-grid { display:flex; flex:1 1 auto; min-height:300px; flex-direction:column; gap:4px; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-cart-panel { display:flex; flex:1 1 auto; min-height:300px; flex-direction:column; padding:0; overflow:hidden; border-color:var(--classic-line); border-radius:0; box-shadow:none; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-cart-panel > .pos-panel-title { display:none; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-product-picker { margin:0; padding:4px 6px; border:0; border-bottom:1px solid var(--classic-line); border-radius:0; background:#eef9fc; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-product-search-row { display:block; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-product-search-row > label { display:none; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-product-search-row input { min-height:28px; border-radius:1px; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-product-search-row input::placeholder { color:#507785; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-product-results { display:none; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-items-editor { flex:1 1 auto; min-height:235px; margin:0; border:0; border-radius:0; background:#e7f7fa; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-items-editor table { min-width:760px; height:auto; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-items-editor thead { position:sticky; top:0; z-index:1; color:#173e4c; background:linear-gradient(#d5edf4,#b8dce7); }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-items-editor th { padding:5px 6px; border-right:1px solid #78a9ba; border-bottom:1px solid #568fa4; font-size:9px; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-items-editor td { padding:3px 5px; border-right:1px solid #c0dce4; border-bottom:1px solid #c9e1e7; background:rgba(255,255,255,.54); }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-items-editor input,
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-items-editor select { min-height:25px; border-radius:1px; font-size:10px; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] #add-line { margin:4px 6px; padding:5px 8px; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-payment-panel { padding:0; border:0; box-shadow:none; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-payment-panel > .pos-panel-title,
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-payment-fields,
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-payment-panel .invoice-totals { display:none; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-classic-summary { display:grid; grid-template-columns:minmax(260px,1fr) minmax(190px,.8fr) minmax(310px,1fr); align-items:stretch; min-height:82px; border:1px solid var(--classic-line); background:#edf9fc; }
.pos-classic-summary > div { display:flex; flex-wrap:wrap; align-content:start; gap:6px 12px; padding:8px; color:#315b67; font-size:9px; }
.pos-classic-summary > div b { color:#075f85; }
.pos-classic-summary > strong { display:grid; place-items:center; border-inline:1px solid var(--classic-line); color:#075f85; font:800 24px Manrope,sans-serif; }
.pos-classic-summary dl { display:grid; grid-template-columns:1fr 1fr; gap:0; margin:0; padding:5px 8px; }
.pos-classic-summary dl div { display:flex; justify-content:space-between; gap:8px; padding:3px 5px; border-bottom:1px dotted #a9c8d2; color:#315b67; font-size:9px; }
.pos-classic-summary dt,.pos-classic-summary dd { margin:0; }
.pos-classic-summary dd { color:#123f4e; font-weight:700; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-classic-shortcuts { display:flex; justify-content:flex-end; gap:10px; padding:3px 8px; color:#f7e66e; background:#0878a7; font-size:8px; }
.pos-classic-shortcuts kbd { color:#fff; font-family:inherit; font-weight:800; }
.pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-checkout-foot { border-top:0; background:#dff2f7; }
@media (max-width: 900px) {
  .pos-checkout-modal .pos-experience-tabs { grid-template-columns:1fr 1fr; }
  .pos-checkout-modal[data-pos-entry-mode="smart-grid"] .pos-product-results { grid-template-columns:repeat(3,minmax(92px,1fr)); }
  .pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-classic-header { grid-template-columns:1fr 1fr; }
  .pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-classic-header fieldset:nth-child(2) { border-right:0; }
  .pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-classic-header fieldset:last-child { grid-column:1/-1; border-top:1px solid var(--classic-line); }
  .pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-classic-summary { grid-template-columns:1fr 1fr; }
  .pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-classic-summary dl { grid-column:1/-1; border-top:1px solid var(--classic-line); }
}
@media (max-width: 600px) {
  .pos-checkout-modal .pos-experience-tabs { grid-template-columns:1fr; margin:8px 10px 4px; }
  .pos-checkout-modal .invoice-default-choice { margin:0 12px 7px; }
  .pos-checkout-modal[data-pos-entry-mode="smart-grid"] .pos-product-results { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-classic-header,
  .pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-classic-summary { grid-template-columns:1fr; }
  .pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-classic-header fieldset { grid-column:auto; border-right:0; border-top:1px solid var(--classic-line); }
  .pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-classic-summary > strong { min-height:60px; border:0; border-block:1px solid var(--classic-line); }
  .pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-classic-summary dl { grid-column:auto; }
  .pos-checkout-modal[data-pos-entry-mode="classic-register"] .pos-classic-shortcuts { justify-content:flex-start; overflow-x:auto; white-space:nowrap; }
}

/* Dedicated POS module: existing checkout logic in a dense counter workspace. */
.pos-module-shell { display:grid; gap:8px; min-width:0; }
.pos-command-bar { display:grid; grid-template-columns:repeat(10,minmax(76px,1fr)); gap:7px; padding:8px 8px 11px; border:1px solid #c2d2ce; border-radius:10px; background:linear-gradient(180deg,#f5f9f8 0%,#e1ebe8 100%); box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 3px 10px rgba(24,52,47,.12); }
.pos-command { display:grid; min-width:0; min-height:58px; grid-template-columns:30px minmax(0,1fr); grid-template-rows:auto auto; align-items:center; gap:1px 7px; padding:6px 7px; border:1px solid color-mix(in srgb,var(--pos-command-color,#52726c) 44%,#d8e3e0); border-bottom-color:color-mix(in srgb,var(--pos-command-color,#52726c) 72%,#243b36); border-radius:8px; background:linear-gradient(180deg,#fff 0%,color-mix(in srgb,var(--pos-command-color,#52726c) 7%,#fff) 58%,color-mix(in srgb,var(--pos-command-color,#52726c) 16%,#fff) 100%); box-shadow:inset 0 1px 0 #fff,inset 0 -1px 0 rgba(0,0,0,.05),0 4px 0 color-mix(in srgb,var(--pos-command-color,#52726c) 58%,#344a45),0 6px 10px rgba(20,48,43,.18); color:#263b37; text-align:left; cursor:pointer; transform:translateY(0); transition:transform .12s ease,box-shadow .12s ease,filter .12s ease; }
.pos-command > span { display:grid; width:30px; height:30px; grid-row:1/3; place-items:center; border:1px solid color-mix(in srgb,var(--pos-command-color,#52726c) 78%,#fff); border-radius:7px; background:linear-gradient(145deg,color-mix(in srgb,var(--pos-command-color,#52726c) 68%,#fff),var(--pos-command-color,#52726c) 55%,color-mix(in srgb,var(--pos-command-color,#52726c) 78%,#000)); box-shadow:inset 1px 1px 0 rgba(255,255,255,.45),inset -1px -2px 0 rgba(0,0,0,.18),0 2px 3px rgba(20,48,43,.2); color:#fff; font-size:16px; font-weight:800; text-shadow:0 1px 1px rgba(0,0,0,.28); }
.pos-command b,.pos-command small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.pos-command b { align-self:end; font:700 15px Manrope,sans-serif; }
.pos-command small { align-self:start; color:#6d7c78; font-size:11px; }
.pos-command:hover,.pos-command:focus-visible { transform:translateY(-2px); border-color:var(--pos-command-color,#52726c); outline:none; filter:saturate(1.08); box-shadow:inset 0 1px 0 #fff,inset 0 -1px 0 rgba(0,0,0,.05),0 6px 0 color-mix(in srgb,var(--pos-command-color,#52726c) 62%,#344a45),0 9px 14px rgba(20,48,43,.2); }
.pos-command:focus-visible { outline:3px solid color-mix(in srgb,var(--pos-command-color,#52726c) 28%,transparent); outline-offset:3px; }
.pos-command:active { transform:translateY(3px); box-shadow:inset 0 2px 4px rgba(20,48,43,.2),0 1px 0 color-mix(in srgb,var(--pos-command-color,#52726c) 64%,#344a45),0 2px 4px rgba(20,48,43,.14); }
.pos-command.active { border-color:var(--pos-command-color,#52726c); background:linear-gradient(180deg,color-mix(in srgb,var(--pos-command-color,#52726c) 9%,#fff),color-mix(in srgb,var(--pos-command-color,#52726c) 24%,#fff)); box-shadow:inset 0 2px 5px rgba(20,48,43,.17),inset 0 -2px 0 color-mix(in srgb,var(--pos-command-color,#52726c) 55%,transparent),0 2px 0 color-mix(in srgb,var(--pos-command-color,#52726c) 72%,#344a45),0 4px 8px rgba(20,48,43,.13); transform:translateY(2px); }
.pos-command:disabled { cursor:not-allowed; filter:grayscale(.72); opacity:.48; transform:translateY(2px); box-shadow:inset 0 1px 2px rgba(20,48,43,.12),0 1px 0 #899692; }
.pos-command.home { --pos-command-color:#334155; }
.pos-command.new { --pos-command-color:#0f766e; }
.pos-command.product { --pos-command-color:#2563eb; }
.pos-command.customer { --pos-command-color:#7c3aed; }
.pos-command.receipt { --pos-command-color:#0891b2; }
.pos-command.sales { --pos-command-color:#059669; }
.pos-command.stock { --pos-command-color:#d97706; }
.pos-command.print { --pos-command-color:#475569; }
.pos-command.report { --pos-command-color:#4f46e5; }
.pos-command.shift-open { --pos-command-color:#dc2626; }
.pos-command.shift-closed { --pos-command-color:#16a34a; }
.pos-command.more { --pos-command-color:#334155; width:100%; }
.pos-more-menu { position:relative; min-width:0; }
.pos-more-panel { position:absolute; z-index:30; top:calc(100% + 9px); right:0; width:250px; max-height:min(520px,calc(100dvh - 92px)); padding:7px; overflow:auto; border:1px solid #b8c9c5; border-radius:9px; background:#fff; box-shadow:0 14px 34px rgba(20,48,43,.26); }
.pos-more-panel[hidden] { display:none; }
.pos-more-register-status { display:grid; gap:5px; margin-bottom:6px; padding:9px 10px; border:1px solid #d7e3e0; border-radius:7px; background:#f5faf8; }
.pos-more-register-status .status { justify-self:start; }
.pos-more-register-status > b { overflow:hidden; color:#29413c; font:700 10px Manrope,sans-serif; text-overflow:ellipsis; white-space:nowrap; }
.pos-more-display-options { display:grid; gap:6px; padding:7px 3px 2px; }
.pos-more-display-options > div { display:grid; gap:2px; padding:0 7px 3px; }
.pos-more-display-options > div > b { color:#29413c; font:800 10px Manrope,sans-serif; }
.pos-more-display-options > div > small { color:#71807c; font-size:8px; }
.pos-more-display-options .pos-option-toggle { justify-content:space-between; min-height:36px; padding:0 9px; border-color:#d7e3e0; }
.pos-more-display-options .pos-option-toggle input { width:15px; height:15px; margin-left:auto; order:2; }
.pos-more-panel button { display:grid; width:100%; min-height:38px; grid-template-columns:28px minmax(0,1fr); grid-template-rows:auto auto; align-items:center; gap:0 8px; padding:6px 8px; border:0; border-radius:6px; background:transparent; color:#29413c; text-align:left; cursor:pointer; }
.pos-more-panel button:hover,.pos-more-panel button:focus-visible { background:#e8f5f2; outline:none; }
.pos-more-panel button > span { display:grid; width:26px; height:26px; grid-row:1/3; place-items:center; border-radius:6px; background:#e1efec; color:#176f63; font-weight:800; }
.pos-more-panel button > b { align-self:end; font:700 10px Manrope,sans-serif; }
.pos-more-panel button > small { align-self:start; color:#71807c; font-size:8px; }
.pos-more-panel hr { margin:6px 3px; border:0; border-top:1px solid #dce6e3; }
.pos-more-panel .pos-more-exit { color:#9b2c2c; }
.pos-more-panel .pos-more-exit > span { background:#fbe8e8; color:#b42318; }
.pos-register-status { display:flex; min-height:31px; align-items:center; gap:10px; padding:4px 9px; border:1px solid #d8e3e0; border-radius:7px; background:#fff; color:#65736f; font-size:9px; }
.pos-register-status > b { margin-left:auto; color:#263b37; font-size:10px; }
.pos-device-state { padding-left:10px; border-left:1px solid #d8e3e0; font-weight:700; }
.pos-device-state.connected { color:#15803d; }
.pos-device-help { margin-top:-4px; }
.pos-device-help .barcode-device-help { margin:0; padding:0 8px; border:0; background:transparent; }
.pos-device-help .barcode-device-help summary { color:#60736e; font-size:8px; }
.pos-module-workspace { width:100%; height:auto; min-height:calc(100vh - 228px); max-height:none; border:1px solid #cbdad7; border-radius:8px; background:#eef4f2; box-shadow:0 5px 18px rgba(22,47,43,.08); }
.pos-module-workspace .pos-checkout-head { min-height:58px; padding:8px 12px; border-bottom:1px solid #cfe0dc; border-left-width:4px; }
.pos-module-workspace .pos-checkout-head h2 { margin:1px 0; font-size:16px; }
.pos-module-workspace .pos-checkout-head p { margin:0; font-size:9px; }
.pos-module-workspace .pos-screen-badge { margin:0; font-size:8px; }
.pos-module-workspace .pos-head-actions { gap:6px; }
.pos-module-workspace .pos-option-toggle { min-height:28px; padding:0 8px; font-size:9px; }
.pos-module-workspace .pos-checkout-body { padding:8px; gap:8px; overflow:visible; }
.pos-module-workspace .pos-customer-panel,.pos-module-workspace .pos-cart-panel,.pos-module-workspace .pos-payment-panel { padding:8px 10px; border-radius:6px; }
.pos-module-workspace .pos-customer-panel { grid-template-columns:minmax(170px,.35fr) minmax(0,2fr); gap:7px 10px; }
.pos-module-workspace .pos-customer-fields { grid-template-columns:minmax(220px,1fr) minmax(190px,.9fr) auto; gap:7px; }
.pos-module-workspace .pos-selected-customer { padding-top:6px; }
.pos-module-workspace .pos-panel-title { margin-bottom:6px; }
.pos-module-workspace .pos-product-picker { margin-bottom:6px; padding:7px; border-radius:6px; }
.pos-module-workspace .pos-product-results { max-height:102px; margin-top:6px; }
.pos-module-workspace .pos-product-card { padding:6px; border-radius:5px; }
.pos-module-workspace .pos-checkout-grid { grid-template-columns:minmax(0,4fr) minmax(235px,1fr); gap:8px; }
.pos-module-workspace .pos-items-editor { min-height:260px; }
.pos-module-workspace .pos-items-editor thead { position:sticky; top:0; z-index:1; }
.pos-module-workspace .pos-payment-panel { position:sticky; top:8px; }
.pos-module-workspace .invoice-totals .total { font-size:18px; }
.pos-module-workspace .pos-checkout-foot { padding:7px 10px; border-top:1px solid #cfdedb; }
.pos-module-workspace .pos-checkout-foot .primary-btn { min-width:170px; }
.pos-desktop-page { min-height:calc(100vh - 228px); overflow:hidden; border:1px solid #bfcfcb; border-radius:8px; background:#f7faf9; box-shadow:0 5px 18px rgba(22,47,43,.08); }
.pos-desktop-page > header { display:flex; min-height:68px; align-items:center; justify-content:space-between; gap:16px; padding:9px 12px; border-bottom:1px solid #c8d8d4; background:linear-gradient(105deg,#dff1ed,#fff 62%); }
.pos-desktop-page > header > div:first-child { display:grid; gap:1px; }
.pos-desktop-page > header span { color:#087b6c; font-size:8px; font-weight:800; letter-spacing:1px; }
.pos-desktop-page > header h2 { margin:0; color:#213b36; font:800 17px Manrope,sans-serif; }
.pos-desktop-page > header p { margin:0; color:#687a75; font-size:9px; }
.pos-page-tools { display:flex!important; grid-auto-flow:column; align-items:center; gap:7px!important; }
.pos-page-tools input { width:min(260px,30vw); height:32px; border:1px solid #bfcfcb; border-radius:5px; padding:0 9px; background:#fff; color:#263b37; font:10px 'DM Sans',sans-serif; outline:none; }
.pos-page-tools input:focus { border-color:#0f766e; box-shadow:0 0 0 3px rgba(15,118,110,.1); }
.pos-desktop-table { min-height:420px; max-height:calc(100vh - 306px); overflow:auto; background:#fff; }
.pos-desktop-table table { width:100%; border-collapse:collapse; font-size:10px; }
.pos-desktop-table thead { position:sticky; z-index:2; top:0; }
.pos-desktop-table th { padding:7px 8px; border-right:1px solid #b9ceca; border-bottom:1px solid #9ebcb6; background:#cae2dd; color:#24443e; font-size:9px; text-align:left; white-space:nowrap; }
.pos-desktop-table td { height:34px; padding:5px 8px; border-right:1px solid #e0e9e7; border-bottom:1px solid #dce6e4; color:#354944; }
.pos-desktop-table tbody tr:nth-child(even) { background:#f7faf9; }
.pos-desktop-table tbody tr:hover { background:#eaf7f4; }
.pos-desktop-table td b { color:#173f38; }
.pos-desktop-table .secondary-btn { min-height:25px; padding:0 7px; font-size:9px; }
.pos-kpi-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; padding:12px; }
.pos-kpi-grid article { display:grid; gap:4px; padding:14px; border:1px solid #cfddda; border-radius:7px; background:#fff; }
.pos-kpi-grid span { color:#64746f; font-size:9px; letter-spacing:0; }
.pos-kpi-grid b { color:#173f38; font:800 20px Manrope,sans-serif; }
.pos-kpi-grid small { color:#7a8985; font-size:9px; }
.pos-report-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; padding:0 12px 12px; }
.pos-report-grid > section { padding:13px; border:1px solid #cfddda; border-radius:7px; background:#fff; }
.pos-report-grid h3 { margin:0 0 10px; font:700 12px Manrope,sans-serif; }
.pos-report-grid section:first-child > div { display:flex; justify-content:space-between; padding:8px 0; border-bottom:1px solid #e2e9e7; font-size:10px; }
.pos-report-grid section:last-child { display:flex; flex-direction:column; align-items:stretch; gap:7px; }
.pos-shift-panel { display:grid; max-width:820px; grid-template-columns:1.2fr 1fr; gap:12px; margin:18px auto; padding:18px; border:1px solid #c8d8d4; border-radius:9px; background:#fff; box-shadow:0 5px 20px rgba(20,48,43,.07); }
.pos-shift-state { padding:8px; }
.pos-shift-state h3 { margin:12px 0 5px; font:800 18px Manrope,sans-serif; }
.pos-shift-state p { color:#697974; font-size:10px; line-height:1.6; }
.pos-shift-values { display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.pos-shift-values > div { display:grid; gap:5px; padding:11px; border:1px solid #d7e2df; border-radius:6px; background:#f7faf9; }
.pos-shift-values span { color:#6c7c77; font-size:9px; letter-spacing:0; }
.pos-shift-values b { color:#183f38; font:800 15px Manrope,sans-serif; }
.pos-shift-panel > button { grid-column:1/-1; justify-self:end; }
.primary-btn.danger { background:#b42318; border-color:#b42318; }

/* Full-window counter: POS owns the viewport and provides its own exit control. */
body:has(#app[data-view="pos"]) { height:100dvh; overflow:hidden; }
body:has(#app[data-view="pos"]) .shell { width:100%; height:100dvh; min-height:0; grid-template-columns:1fr; }
body:has(#app[data-view="pos"]) .sidebar,
body:has(#app[data-view="pos"]) .topbar { display:none; }
body:has(#app[data-view="pos"]) main { display:flex; height:100dvh; min-height:0; grid-column:1; flex-direction:column; overflow:hidden; }
#app[data-view="pos"] { width:100%; height:auto; min-height:0; max-width:none; flex:1 1 0; padding:8px; overflow:hidden; }
.pos-exit-button { margin-left:4px; border-color:#b9ccc7; white-space:nowrap; }

@media (min-width:761px) {
  #app[data-view="pos"] .pos-module-shell { height:100%; min-height:0; grid-template-rows:auto auto minmax(0,1fr); gap:6px; }
  #app[data-view="pos"] .pos-command-bar { padding:6px 7px 9px; }
  #app[data-view="pos"] .pos-command { min-height:48px; grid-template-columns:26px minmax(0,1fr); padding:4px 6px; }
  #app[data-view="pos"] .pos-command > span { width:26px; height:26px; font-size:14px; }
  #app[data-view="pos"] .pos-device-help { display:none; }
  #app[data-view="pos"] .pos-module-workspace { height:100%; min-height:0; overflow:hidden; display:flex; flex-direction:column; }
  #app[data-view="pos"] .pos-module-workspace > .pos-checkout-head { display:none; }
  #app[data-view="pos"] .pos-register-status .pos-head-actions { margin-left:auto; }
  #app[data-view="pos"] .pos-register-status .pos-option-toggle { min-height:23px; padding-inline:7px; }
  #app[data-view="pos"] .pos-module-workspace > .pos-checkout-head p,
  #app[data-view="pos"] .pos-module-workspace .pos-experience-tabs button small,
  #app[data-view="pos"] .pos-module-workspace .invoice-default-choice { display:none; }
  #app[data-view="pos"] .pos-module-workspace > #pos-form { min-height:0; flex:1 1 0; display:flex; flex-direction:column; overflow:hidden; }
  #app[data-view="pos"] .pos-module-workspace .pos-experience-tabs { flex:0 0 auto; gap:4px; margin:3px 8px 2px; padding:3px; border-radius:7px; }
  #app[data-view="pos"] .pos-module-workspace .pos-experience-tabs button { min-height:34px; grid-template-columns:22px minmax(0,1fr); grid-template-rows:auto; gap:5px; padding:3px 6px; border-radius:6px; }
  #app[data-view="pos"] .pos-module-workspace .pos-experience-tabs button > span { grid-row:auto; width:22px; height:22px; border-radius:5px; }
  #app[data-view="pos"] .pos-module-workspace .pos-checkout-body { min-height:0; flex:1 1 0; grid-template-rows:auto auto minmax(0,1fr) auto auto; overflow:hidden; }
  #app[data-view="pos"] .pos-module-workspace .pos-customer-panel { padding:5px 8px; gap:4px 8px; }
  #app[data-view="pos"] .pos-module-workspace .pos-customer-panel .pos-panel-title { margin-bottom:2px; }
  #app[data-view="pos"] .pos-module-workspace .pos-customer-fields input,
  #app[data-view="pos"] .pos-module-workspace .pos-customer-fields select { min-height:28px; padding-block:4px; }
  #app[data-view="pos"] .pos-module-workspace .pos-customer-fields .form-field > label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  #app[data-view="pos"] .pos-module-workspace .pos-selected-customer { padding-top:2px; }
  #app[data-view="pos"] .pos-module-workspace .pos-checkout-grid { min-height:0; height:100%; }
  #app[data-view="pos"] .pos-module-workspace .pos-cart-panel { min-width:0; min-height:0; display:flex; flex-direction:column; overflow:hidden; }
  #app[data-view="pos"] .pos-module-workspace .pos-items-editor { min-height:0; flex:1 1 0; overflow:auto; }
  #app[data-view="pos"] .pos-module-workspace .pos-payment-panel { max-height:100%; overflow:auto; }
  #app[data-view="pos"] .pos-module-workspace .pos-checkout-foot { min-height:42px; }
  #app[data-view="pos"] .pos-desktop-page { height:100%; min-height:0; display:flex; flex-direction:column; }
  #app[data-view="pos"] .pos-desktop-table { min-height:0; max-height:none; flex:1 1 0; }
}

/* KassaPOS-inspired graphical selling surface. */
.pos-graphical-view .customer-reorder-panel { display:none; }
.pos-graphical-view .pos-product-results { grid-template-columns:repeat(4,minmax(112px,1fr)); gap:8px; max-height:190px; }
.pos-graphical-view .pos-product-card { position:relative; min-height:82px; grid-template-columns:38px minmax(0,1fr); grid-template-rows:1fr auto; align-content:center; padding:10px; overflow:hidden; border-color:#d6e4e1; border-radius:10px; background:linear-gradient(145deg,#fff,#f4faf8); box-shadow:0 2px 5px rgba(28,54,49,.06); }
.pos-graphical-view .pos-product-card:after { content:''; position:absolute; inset:0 0 auto; height:3px; background:var(--tile-tone,#0f9f8c); }
.pos-graphical-view .pos-product-card-icon { width:38px; height:38px; grid-row:1/3; border:0; border-radius:11px; background:color-mix(in srgb,var(--tile-tone,#0f9f8c) 14%,#fff); color:var(--tile-tone,#0f9f8c); font:800 18px Manrope,sans-serif; }
.pos-graphical-view .pos-product-card > span:nth-child(2) { align-self:end; gap:2px; }
.pos-graphical-view .pos-product-card b { font-size:10px; }
.pos-graphical-view .pos-product-card small,.pos-graphical-view .pos-product-card em { font-size:8px; }
.pos-graphical-view .pos-product-card strong { align-self:start; color:#193f38; font:800 12px Manrope,sans-serif; }
.pos-product-card[data-pos-product-tone="1"] { --tile-tone:#2563eb; }
.pos-product-card[data-pos-product-tone="2"] { --tile-tone:#7c3aed; }
.pos-product-card[data-pos-product-tone="3"] { --tile-tone:#d97706; }
.pos-product-card[data-pos-product-tone="4"] { --tile-tone:#db2777; }
.pos-product-card[data-pos-product-tone="5"] { --tile-tone:#059669; }
.pos-tender-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; margin-top:2px; }
.pos-tender { display:flex; min-height:48px; align-items:center; gap:7px; padding:7px 9px; border:1px solid #cfe0dc; border-radius:8px; background:#f8fbfa; color:#39544f; cursor:pointer; }
.pos-tender span { display:grid; min-width:25px; height:25px; place-items:center; border-radius:7px; background:#e5f3f0; color:#087b6c; font:800 10px Manrope,sans-serif; }
.pos-tender b { font-size:10px; }
.pos-tender[aria-pressed="true"] { border-color:#078675; background:#e2f6f1; color:#086b5e; box-shadow:0 0 0 2px rgba(8,134,117,.09); }
.pos-tender[aria-pressed="true"] span { background:#078675; color:#fff; }
.pos-qty-control { display:grid; min-width:96px; grid-template-columns:28px minmax(36px,1fr) 28px; align-items:center; overflow:hidden; border:1px solid #d4e0de; border-radius:6px; background:#fff; }
.pos-items-editor .pos-qty-control .line-qty { min-width:0; width:100%; border:0; border-inline:1px solid #e2e9e7; border-radius:0; padding-inline:3px; text-align:center; }
.pos-qty-control button { height:30px; border:0; background:#f2f7f6; color:#087b6c; font-size:15px; font-weight:800; cursor:pointer; }
.pos-qty-control button:hover { background:#dff3ee; }
@media (min-width:761px) {
  #app[data-view="pos"] .pos-graphical-view .pos-product-results { max-height:60px; gap:6px; margin-top:4px; }
  #app[data-view="pos"] .pos-graphical-view .pos-product-card { min-height:50px; grid-template-columns:28px minmax(0,1fr); padding:5px 6px; border-radius:7px; }
  #app[data-view="pos"] .pos-graphical-view .pos-product-card-icon { width:28px; height:28px; border-radius:7px; font-size:13px; }
  #app[data-view="pos"] .pos-graphical-view .pos-product-picker { margin-bottom:3px; padding:4px 5px; }
  #app[data-view="pos"] .pos-graphical-view .pos-product-search-row > label small { display:none; }
  #app[data-view="pos"] .pos-graphical-view .pos-product-search-row input { padding-block:6px; }
  #app[data-view="pos"] .pos-graphical-view .pos-panel-title { margin-bottom:3px; }
}
@media (min-width:1181px) {
  #app[data-view="pos"] .pos-module-workspace .pos-customer-panel { grid-template-columns:92px minmax(0,1fr) 220px; align-items:center; }
  #app[data-view="pos"] .pos-module-workspace .pos-customer-panel > .pos-panel-title { align-items:flex-start; flex-direction:column; gap:2px; }
  #app[data-view="pos"] .pos-module-workspace .pos-customer-panel > .pos-panel-title small { display:none; }
  #app[data-view="pos"] .pos-module-workspace .pos-walk-in { padding:4px 7px; }
  #app[data-view="pos"] .pos-module-workspace .pos-customer-fields { grid-template-columns:minmax(150px,.9fr) minmax(190px,1fr) auto; }
  #app[data-view="pos"] .pos-module-workspace .pos-selected-customer { display:block; grid-column:3; padding:0; border:0; }
  #app[data-view="pos"] .pos-module-workspace .pos-selected-customer label,
  #app[data-view="pos"] .pos-module-workspace .pos-customer-status { display:none; }
  #app[data-view="pos"] .pos-module-workspace .pos-selected-customer select { min-height:28px; padding-block:4px; }
}
@media (max-width:1180px) {
  .pos-graphical-view .pos-product-results { grid-template-columns:repeat(3,minmax(118px,1fr)); }
}
@media (max-width:760px) {
  .pos-graphical-view .pos-product-results { grid-template-columns:repeat(2,minmax(120px,1fr)); max-height:260px; }
  .pos-tender-grid { grid-template-columns:repeat(4,minmax(78px,1fr)); overflow-x:auto; }
}
@media (max-width:1180px) {
  .pos-command-bar { display:flex; overflow-x:auto; scroll-snap-type:x proximity; }
  .pos-command { min-width:104px; scroll-snap-align:start; }
  .pos-more-menu { min-width:104px; scroll-snap-align:start; }
  .pos-more-panel { position:fixed; top:72px; right:8px; }
  .pos-module-workspace .pos-checkout-grid { grid-template-columns:1fr; }
  .pos-module-workspace .pos-payment-panel { position:static; }
}
@media (max-width:760px) {
  .pos-command-bar { display:flex; overflow-x:auto; scroll-snap-type:x proximity; }
  .pos-command { min-width:112px; scroll-snap-align:start; }
  .pos-more-menu { min-width:112px; }
  .pos-register-status { flex-wrap:wrap; }
  .pos-register-status > b { margin-left:0; }
  .pos-device-state { margin-left:auto; }
  .pos-module-workspace { min-height:0; border-radius:7px; }
  .pos-module-workspace .pos-customer-panel { display:block; }
  .pos-module-workspace .pos-customer-fields { grid-template-columns:1fr; }
  .pos-desktop-page { min-height:0; }
  .pos-desktop-page > header { align-items:stretch; flex-direction:column; }
  .pos-page-tools { grid-auto-flow:row; }
  .pos-page-tools input { width:100%; }
  .pos-desktop-table { min-height:360px; max-height:65vh; }
  .pos-kpi-grid,.pos-report-grid,.pos-shift-panel { grid-template-columns:1fr; }
}

.pos2-shell{--p2-bg:#020617;--p2-panel:#0f172a;--p2-panel-2:#111c31;--p2-line:#26354d;--p2-muted:#8190aa;--p2-text:#e6edf8;--p2-green:#10d7a0;--p2-blue:#4da3ff;--p2-brand:#008d7b;--p2-brand-dark:#007565;--p2-brand-bright:#55d9c3;--p2-brand-text:#f8fafc;--p2-brand-accent:#55d9c3;--p2-action:#007565;--p2-action-hover:#005b50;--p2-action-text:#fff;--p2-action-ring:#55d9c3;display:grid;width:100%;height:100%;min-height:620px;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr) auto auto;overflow:hidden;background:var(--p2-bg);color:var(--p2-text);font-family:Inter,'DM Sans',system-ui,sans-serif;color-scheme:dark}
/* Cashier errors stay as a compact message box so the active POS2/POS3 sale remains visible. */
.pos-error-dialog-backdrop{place-items:start end;padding:88px 18px 18px;background:transparent;backdrop-filter:none;pointer-events:none}
.pos-error-dialog-backdrop .error-dialog{width:min(430px,calc(100vw - 36px));pointer-events:auto;box-shadow:0 18px 50px #02061773}
@media(max-width:760px){.pos-error-dialog-backdrop{padding:12px}.pos-error-dialog-backdrop .error-dialog{width:min(430px,calc(100vw - 24px))}}
.pos2-shell *{box-sizing:border-box}.pos2-shell button,.pos2-shell input{font:inherit}.pos2-icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.pos2-sprite{position:absolute;width:0;height:0;overflow:hidden}
.pos2-nav{display:flex;min-height:76px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 18px;border-bottom:1px solid #243047;background:#0d1729}.pos2-nav-items{display:flex;min-width:0;flex:1 1 760px;flex-wrap:wrap;align-self:stretch;gap:4px;overflow:visible}.pos2-brand{display:grid;min-width:82px;margin:5px 4px 5px 0;place-items:center;align-content:center;padding:6px 10px;border:1px solid var(--p2-brand-bright);border-radius:9px;background:linear-gradient(145deg,var(--p2-brand),var(--p2-brand-dark));box-shadow:0 5px 16px color-mix(in srgb,var(--p2-brand-dark) 42%,transparent);color:#fff;font-size:14px;font-weight:900;letter-spacing:.9px;white-space:nowrap}.pos2-brand b{color:#d5fff7;font:inherit}.pos2-nav-button{--tone:#8fa0b8;display:grid;min-width:66px;place-items:center;align-content:center;gap:4px;padding:6px 7px;border:1px solid transparent;border-radius:7px;background:transparent;color:#e5ebf5;font-size:12px;font-weight:800;letter-spacing:.35px;cursor:pointer}.pos2-nav-button .pos2-icon{width:27px;height:27px;color:var(--tone)}.pos2-nav-button:hover,.pos2-nav-button:focus-visible{background:#18243a;outline:none}.pos2-nav-button.active{border-color:#34435d;background:#1c293e;color:#52a8ff}.pos2-window-controls{display:flex;flex:0 0 auto;margin-left:auto;align-items:center;gap:9px}.pos2-register{display:flex;align-items:center;gap:10px;padding:12px 18px;border:1px solid #26334a;border-radius:14px;background:#020817;color:#e5ebf5;white-space:nowrap}.pos2-register i{width:15px;height:15px;border-radius:50%;background:#14d6a3;box-shadow:0 0 0 6px #14d6a32d}.pos2-register span{font:700 13px ui-monospace,SFMono-Regular,Consolas,monospace}.pos2-exit{display:flex;height:43px;align-items:center;gap:7px;padding:0 13px;border:1px solid #4a3544;border-radius:9px;background:#261421;color:#ff9aab;font-size:12px;font-weight:900;white-space:nowrap;cursor:pointer}.pos2-exit:hover,.pos2-exit:focus-visible{border-color:#fb7185;background:#3b1727;outline:none}.pos2-exit .pos2-icon{width:18px;height:18px}
.pos2-fullscreen{display:flex;height:43px;align-items:center;gap:7px;padding:0 13px;border:1px solid #304b72;border-radius:9px;background:#102743;color:#8ec5ff;font-size:12px;font-weight:900;white-space:nowrap;cursor:pointer}.pos2-fullscreen:hover,.pos2-fullscreen:focus-visible,.pos2-fullscreen.active{border-color:#53a8ff;background:#18395f;outline:none}.pos2-fullscreen .pos2-icon{width:18px;height:18px}
.pos2-phone-scanner{display:flex;height:43px;align-items:center;gap:7px;padding:0 13px;border:1px solid #245f55;border-radius:9px;background:#0d302b;color:#7ee7d0;font-size:12px;font-weight:900;white-space:nowrap;cursor:pointer}.pos2-phone-scanner:hover,.pos2-phone-scanner:focus-visible,.pos2-phone-scanner.connected{border-color:#14d6a3;background:#12443b;outline:none}.pos2-phone-scanner.connected{color:#a7f3d0}
.pos2-controlbar{display:grid;grid-template-columns:minmax(390px,1fr) auto;align-items:center;gap:14px;padding:12px 18px;border-bottom:1px solid #243047;background:#101a2d}.pos2-control-left,.pos2-control-right{display:flex;align-items:center;gap:11px}.pos2-search-wrap{position:relative;flex:1}.pos2-search-wrap>.pos2-icon{position:absolute;top:50%;left:15px;width:21px;height:21px;color:#91a0ba;transform:translateY(-50%)}.pos2-search-wrap input,.pos2-invoice,.pos2-meta-chip{height:44px;border:1px solid #31415c;border-radius:7px;background:#030918;color:#f6f8fc}.pos2-search-wrap input{width:100%;padding:0 48px;color:#dce5f5;font-size:15px}.pos2-search-wrap input::placeholder{color:#7184a6}.pos2-search-qr{position:absolute;top:50%;right:12px;padding:3px;border:0;background:none;color:#a7b7d2;transform:translateY(-50%);cursor:pointer}.pos2-search-qr .pos2-icon{width:20px;height:20px}.pos2-quick{display:flex;height:43px;align-items:center;gap:9px;padding:0 18px;border:0;border-radius:6px;background:#069d78;color:white;font-weight:800;cursor:pointer}.pos2-quick:hover{background:#08b387}.pos2-control-right>label{color:#8fa1bf;font-weight:700}.pos2-invoice{display:flex;min-width:246px;align-items:center;justify-content:center;padding:0 16px;font:800 17px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.5px}.pos2-meta-chip{display:grid;min-width:150px;place-items:center;padding:0 16px;color:#9aabc6}
.pos2-main{display:grid;min-height:0;grid-template-columns:minmax(0,1fr) minmax(410px,29%);overflow:hidden}.pos2-cart{display:flex;min-width:0;min-height:0;flex-direction:column;border-right:1px solid #26354d}.pos2-table-wrap{min-height:0;flex:1;overflow:auto;padding:12px}.pos2-table{width:100%;min-width:990px;border-collapse:collapse;font-size:13px}.pos2-table th{position:sticky;top:0;z-index:1;height:54px;padding:9px 10px;border-bottom:1px solid #2b3850;background:#111b30;color:#c7d1e1;text-align:left;font-weight:800}.pos2-table th:nth-child(1),.pos2-table th:nth-child(4),.pos2-table th:nth-child(5){text-align:center}.pos2-table th:nth-child(n+6){text-align:right}.pos2-table td{height:74px;padding:10px;border-bottom:1px solid #243047;color:#93a1b8}.pos2-table td:nth-child(1),.pos2-table td:nth-child(4),.pos2-table td:nth-child(5){text-align:center}.pos2-table td:nth-child(n+6){text-align:right;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.pos2-table td:nth-child(2){color:#c7d1e1;font-weight:800}.pos2-table td:nth-child(3){color:#e0e7f2;font-family:inherit;font-weight:700}.pos2-table td.pos2-line-total{color:#19dda8;font-weight:900}.pos2-qty{display:inline-grid;grid-template-columns:32px 60px 32px;gap:7px}.pos2-qty button,.pos2-qty input{height:32px;border:1px solid #31415c;border-radius:6px}.pos2-qty button{background:#202d42;color:#d6dfef;font-weight:900;cursor:pointer}.pos2-qty input{width:60px;background:#030918;color:#23d9aa;text-align:center;font-weight:900}.pos2-rate{width:82px;height:32px;border:1px solid #31415c;border-radius:6px;background:#030918;color:#f3f6fb;text-align:right;font:700 13px ui-monospace,SFMono-Regular,Consolas,monospace}.pos2-delete{padding:5px;border:0;background:none;color:#7787a1;cursor:pointer}.pos2-delete:hover{color:#fb7185}.pos2-delete .pos2-icon{width:19px;height:19px}
.pos2-scanbar{display:flex;gap:10px;padding:12px;border-top:1px solid #26354d;background:#101a2d}.pos2-scan{position:relative;flex:1}.pos2-scan>.pos2-icon{position:absolute;top:50%;left:16px;width:25px;height:25px;color:#9ba9c0;transform:translateY(-50%)}.pos2-scan input{width:100%;height:56px;padding:0 150px 0 53px;border:1px solid #31415c;border-radius:9px;background:#030918;color:#e6edf8;font:600 15px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.4px}.pos2-scan input::placeholder{color:#74839d}.pos2-scan small{position:absolute;top:50%;right:16px;color:#73829b;font:600 10px ui-monospace,SFMono-Regular,Consolas,monospace;transform:translateY(-50%)}.pos2-catalog-button{display:flex;min-width:132px;align-items:center;justify-content:center;gap:10px;border:1px solid #36455d;border-radius:9px;background:#1c2a40;color:#dbe5f6;font-weight:800;cursor:pointer}.pos2-catalog-button .pos2-icon{color:#59a9ff}
.pos2-entry-row td{background:color-mix(in srgb,var(--p2-elevated,#030918) 70%,transparent)}.pos2-entry-row td:first-child{color:#66758d}.pos2-product-entry{min-width:300px}.pos2-line-code{width:100%;min-width:260px;height:38px;padding:0 12px;border:1px dashed #4b607e;border-radius:6px;background:#030918;color:#e6edf8;font:700 12px ui-monospace,SFMono-Regular,Consolas,monospace}.pos2-line-code:focus{border-style:solid;border-color:var(--p2-green,#19dda8);outline:2px solid color-mix(in srgb,var(--p2-green,#19dda8) 25%,transparent);outline-offset:1px}
.pos2-product-search{position:relative}.pos2-product-suggestions{position:absolute;top:calc(100% + 6px);left:0;z-index:30;width:max(100%,360px);max-height:280px;overflow:auto;border:1px solid var(--p2-line,#33445f);border-radius:9px;background:var(--p2-panel,#101a2d);box-shadow:0 18px 45px #0009}.pos2-product-suggestions[hidden]{display:none}.pos2-product-suggestions button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px;border:0;border-bottom:1px solid var(--p2-line,#26354d);background:transparent;color:var(--p2-text,#e6edf8);text-align:left;cursor:pointer}.pos2-product-suggestions button:last-child{border-bottom:0}.pos2-product-suggestions button:hover,.pos2-product-suggestions button[aria-selected="true"]{background:var(--p2-hover,#1c2a40)}.pos2-product-suggestions b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pos2-product-suggestions small{display:flex;min-width:max-content;align-items:center;gap:8px;color:var(--p2-muted,#9ba9c0)}.pos2-suggestion-price{display:flex;align-items:center;gap:8px;font:800 11px ui-monospace,SFMono-Regular,Consolas,monospace;font-variant-numeric:tabular-nums}.pos2-suggestion-price span:first-child{color:var(--p2-muted,#9ba9c0)}.pos2-suggestion-price span:last-child{color:var(--p2-green,#19dda8)}.pos2-product-suggestions code{padding:3px 6px;border-radius:4px;background:color-mix(in srgb,var(--p2-green,#19dda8) 14%,transparent);color:var(--p2-green,#19dda8);font-weight:800}.pos2-scan .pos2-product-suggestions{top:auto;bottom:calc(100% + 6px);width:100%}
.pos2-side{min-height:0;overflow:auto;background:#101a2d;padding:13px 14px}.pos2-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px 14px;border:1px solid #26354d;border-radius:9px;background:#030918}.pos2-meta span,.pos2-section-label,.pos2-summary h3{display:block;color:#8493ad;font-size:11px;font-weight:900;letter-spacing:.5px;text-transform:uppercase}.pos2-meta b{display:block;margin-top:4px;color:#dfe7f3;font:700 13px ui-monospace,SFMono-Regular,Consolas,monospace}.pos2-total-card{display:grid;place-items:center;margin-top:12px;padding:14px;border:1px solid #26354d;border-radius:9px;background:linear-gradient(100deg,#030918,#121d31,#030918)}.pos2-total-card span{color:#8795ad;font-size:11px;font-weight:900;letter-spacing:1.4px;text-transform:uppercase}.pos2-total-card strong{margin-top:5px;color:#1bdda8;font:900 36px ui-monospace,SFMono-Regular,Consolas,monospace}.pos2-section-label{margin:14px 0 8px}.pos2-payments{display:grid;grid-template-columns:repeat(6,1fr);gap:9px}.pos2-payment{display:flex;min-height:67px;grid-column:span 2;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px solid #38475f;border-radius:6px;background:#1d2a3e;color:#dce4f0;font-weight:900;cursor:pointer}.pos2-payment:nth-child(4),.pos2-payment:nth-child(5){grid-column:span 3;min-height:50px;flex-direction:row}.pos2-payment .pos2-icon{width:19px;height:19px;color:var(--payment-tone,#cbd5e1)}.pos2-payment.active{border-color:#0dc797;background:#078361;color:white}.pos2-cashbox,.pos2-summary{margin-top:14px;padding:14px;border:1px solid #26354d;border-radius:10px;background:#030918}.pos2-received{display:flex;align-items:center;justify-content:space-between;gap:16px}.pos2-received label{font-size:13px;font-weight:800}.pos2-money-input{position:relative}.pos2-money-input span{position:absolute;top:50%;left:12px;color:#7f8ca2;transform:translateY(-50%)}.pos2-money-input input{width:190px;height:44px;padding:0 13px 0 34px;border:1px solid #31415c;border-radius:7px;background:#101a2d;color:#1bdda8;text-align:right;font:900 17px ui-monospace,SFMono-Regular,Consolas,monospace}.pos2-denoms{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:12px}.pos2-denoms button{height:40px;min-width:0;padding:0 4px;overflow:hidden;border:1px solid #39485f;border-radius:6px;background:#1d2a3e;color:#f1f4f9;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.pos2-balance{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:12px;border-top:1px solid #253249;color:#91a0ba;font-weight:700}.pos2-balance strong{color:#fb7185;font:900 16px ui-monospace,SFMono-Regular,Consolas,monospace}.pos2-balance strong.positive{color:#1bdda8}.pos2-summary h3{margin:0 0 10px}.pos2-summary div{display:flex;justify-content:space-between;padding:5px 0}.pos2-summary span{color:#dce5f3}.pos2-summary b{font:800 13px ui-monospace,SFMono-Regular,Consolas,monospace}.pos2-summary .discount b{color:#16d9a5}.pos2-summary .tax b{color:#58aaff}
.pos2-catalog{position:absolute;inset:0;z-index:10;display:grid;place-items:center;padding:28px;background:#020617d9;backdrop-filter:blur(4px)}.pos2-catalog[hidden]{display:none}.pos2-catalog-card{width:min(960px,95vw);max-height:82vh;overflow:auto;border:1px solid #33445f;border-radius:13px;background:#101a2d;box-shadow:0 24px 70px #000b}.pos2-catalog-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:15px 19px;border-bottom:1px solid #2a3952;background:#101a2d}.pos2-catalog-head span{color:#53a8ff;font-size:10px;font-weight:900;letter-spacing:1px}.pos2-catalog-head h2{margin:2px 0 0;font-size:19px}.pos2-catalog-head>button{width:40px;height:40px;border:0;border-radius:8px;background:#1b2a40;color:#dce5f2;font-size:26px;cursor:pointer}.pos2-catalog-body{padding:16px}.pos2-catalog-section>header{display:flex;align-items:end;justify-content:space-between;margin-bottom:12px}.pos2-catalog-section>header span,.pos2-ai-panel>header span{color:#53a8ff;font-size:10px;font-weight:900;letter-spacing:1px}.pos2-catalog-section h3,.pos2-ai-panel h3{margin:3px 0 0;color:#f3f7fd;font-size:19px}.pos2-catalog-section>header small{color:#8d9bb2}.pos2-category-grid,.pos2-catalog-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pos2-category-card,.pos2-product-card{display:flex;min-width:0;align-items:center;gap:14px;padding:14px;border:1px solid #2f3e56;border-radius:9px;background:#071020;color:#dce5f2;text-align:left;cursor:pointer}.pos2-category-card>span:nth-child(2),.pos2-product-card>span{min-width:0;flex:1}.pos2-category-card b,.pos2-product-card b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pos2-category-card small,.pos2-product-card small{display:block;margin-top:4px;color:#7f8da5}.pos2-category-card>span:last-child{color:#7184a4;font-size:25px}.pos2-category-card:hover,.pos2-category-card:focus-visible,.pos2-product-card:hover,.pos2-product-card:focus-visible{border-color:#409cf2;outline:none;box-shadow:0 0 0 2px #409cf233}.pos2-category-icon{display:grid!important;width:43px;height:43px;flex:0 0 43px;place-items:center;border-radius:10px;background:#14233a;color:#67b6ff!important;font-weight:900}.pos2-ai-category{border-color:#68532c;background:linear-gradient(120deg,#171728,#202036)}.pos2-ai-category .pos2-category-icon{background:linear-gradient(135deg,#7c3aed,#2563eb);color:#fff!important;font-size:13px}.pos2-product-card{justify-content:space-between}.pos2-product-card strong{color:#1bdda8;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;white-space:nowrap}.pos2-catalog-crumbs{display:flex;align-items:center;gap:9px;margin-bottom:14px;color:#7888a3;font-size:12px}.pos2-catalog-crumbs button{padding:7px 10px;border:1px solid #36506f;border-radius:6px;background:#142a43;color:#dceeff;font-weight:800;cursor:pointer}.pos2-catalog-crumbs b{color:#dce5f2}.pos2-ai-panel>header{padding:2px 2px 15px}.pos2-ai-panel>header p{margin:5px 0 0;color:#8d9bb2}.pos2-ai-split{display:grid;grid-template-columns:220px minmax(0,1fr);gap:14px}.pos2-ai-split h4{margin:0 0 9px;color:#b9c5d8;font-size:11px;letter-spacing:.6px;text-transform:uppercase}.pos2-ai-split aside{padding:12px;border:1px solid #2d3d56;border-radius:9px;background:#091225}.pos2-ai-split aside button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:8px;padding:10px;border:0;border-radius:7px;background:transparent;color:#aab7ca;text-align:left;cursor:pointer}.pos2-ai-split aside button span{padding:2px 7px;border-radius:999px;background:#1e2d44;font-size:10px}.pos2-ai-split aside button:hover,.pos2-ai-split aside button.active{background:#173451;color:#fff}.pos2-catalog-empty{grid-column:1/-1;margin:0;padding:28px;border:1px dashed #3a4a63;border-radius:9px;color:#8d9bb2;text-align:center}
.pos2-bottom{display:grid;grid-template-columns:1.2fr .9fr 1.5fr;gap:11px;padding:12px 14px;border-top:1px solid #26354d;background:#101a2d}.pos2-last,.pos2-grand{min-width:0;padding:11px 14px;border:1px solid #26354d;border-radius:7px;background:#030918}.pos2-last header,.pos2-grand span{color:#8493aa;font-size:11px;font-weight:900;letter-spacing:.5px;text-transform:uppercase}.pos2-last header{display:flex;justify-content:space-between}.pos2-last header b{color:#17d7a3}.pos2-last div{display:flex;justify-content:space-between;gap:12px;margin-top:8px;font-size:13px;font-weight:800}.pos2-grand{display:flex;align-items:center;justify-content:space-between}.pos2-grand small{display:block;color:#74819a}.pos2-grand strong{color:#1bdda8;font:900 26px ui-monospace,SFMono-Regular,Consolas,monospace}.pos2-actions{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:9px}.pos2-action{display:flex;min-width:0;align-items:center;justify-content:center;gap:9px;border:0;border-radius:7px;color:#fff;font-weight:900;cursor:pointer}.pos2-action .pos2-icon{width:22px;height:22px}.pos2-action.cancel{background:#c62026}.pos2-action.preview{background:#0879ad}.pos2-action.process{background:#07936a}.pos2-action.history{background:#2b4fc3}.pos2-system{display:flex;min-height:34px;align-items:center;gap:20px;padding:0 18px;border-top:1px solid #243047;background:#030918;color:#10d7a0;font:600 11px ui-monospace,SFMono-Regular,Consolas,monospace}.pos2-system span:last-child{margin-left:auto;color:#8794aa}.pos2-system i{display:inline-block;width:9px;height:9px;margin-right:8px;border-radius:50%;background:currentColor}.pos2-mobile-footer{display:none}
body:has(#app[data-view="pos2"]){height:100dvh;overflow:hidden;background:#020617}body:has(#app[data-view="pos2"]) .shell{width:100%;height:100dvh;min-height:0;grid-template-columns:1fr}body:has(#app[data-view="pos2"]) .sidebar,body:has(#app[data-view="pos2"]) .topbar{display:none}body:has(#app[data-view="pos2"]) main{display:flex;height:100dvh;min-height:0;grid-column:1;flex-direction:column;overflow:hidden}#app[data-view="pos2"]{width:100%;height:auto;min-height:0;max-width:none;flex:1 1 0;padding:0;overflow:hidden}#app[data-view="pos2"] .pos2-shell{height:100%;min-height:0}
.pos2-shell{position:relative}.pos2-internal{position:absolute;z-index:8;inset:110px 0 34px;display:flex;min-height:0;flex-direction:column;background:#071020;color:#e6edf8}.pos2-internal>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;border-bottom:1px solid #26354d;background:#101a2d}.pos2-internal>header span{color:#53a8ff;font-size:11px;font-weight:900;letter-spacing:1px}.pos2-internal>header h2{margin:3px 0;color:#f5f8fd;font-size:22px}.pos2-internal>header p{margin:0;color:#8999b3}.pos2-internal>header button,.pos2-internal table button{padding:9px 13px;border:1px solid #3b5978;border-radius:7px;background:#173451;color:#e9f3ff;font-weight:800;cursor:pointer}.pos2-internal-body{min-height:0;flex:1;overflow:auto;padding:18px 22px}.pos2-internal table{width:100%;border-collapse:collapse;background:#030918}.pos2-internal th,.pos2-internal td{padding:12px 14px;border-bottom:1px solid #26354d;text-align:left}.pos2-internal th{position:sticky;top:0;background:#111b30;color:#9eacc2;font-size:11px;letter-spacing:.4px}.pos2-internal td{color:#dce5f3}.pos2-internal td:last-child{text-align:right}.pos2-inline-status{display:inline-flex;padding:4px 8px;border-radius:999px;background:#083c34;color:#26e0ae;font-size:11px;font-weight:800}.pos2-inline-status.warning{background:#402813;color:#ffbe5c}.pos2-internal-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.pos2-internal-cards article{min-height:150px;padding:20px;border:1px solid #2a3a52;border-radius:10px;background:#0d1729}.pos2-internal-cards span,.pos2-internal-cards small{display:block;color:#8b9bb4}.pos2-internal-cards strong{display:block;margin:14px 0;color:#25dca9;font-size:25px}
@media(max-height:800px) and (min-width:761px){.pos2-internal{inset:74px 0 25px}.pos2-internal>header{padding:10px 16px}.pos2-internal-body{padding:10px 16px}}
@media(max-width:760px){.pos2-internal{position:fixed;inset:88px 0 0}.pos2-internal>header{align-items:flex-start;padding:10px 12px}.pos2-internal>header h2{font-size:18px}.pos2-internal>header p{font-size:12px}.pos2-internal>header button{padding:7px 9px;font-size:11px}.pos2-internal-body{padding:8px;overflow:auto}.pos2-internal table{min-width:650px}.pos2-internal th,.pos2-internal td{padding:9px 10px}.pos2-internal-cards{grid-template-columns:1fr}.pos2-internal-cards article{min-height:110px;padding:14px}.pos2-internal-cards strong{margin:8px 0;font-size:20px}}
@media(max-width:760px){.pos2-shell{width:100%;min-width:0;max-width:100vw;grid-template-columns:minmax(0,1fr)}.pos2-nav,.pos2-controlbar,.pos2-main,.pos2-bottom,.pos2-system{width:100%;min-width:0;max-width:100vw}.pos2-nav{position:sticky;top:0;z-index:12;min-height:0;gap:4px;padding:4px 6px}.pos2-nav-items{display:grid;min-width:0;flex:1 1 100%;grid-template-columns:repeat(6,minmax(0,1fr));gap:3px;overflow:visible}.pos2-nav-button{min-width:0;min-height:42px;gap:1px;padding:3px 1px;font-size:7px;letter-spacing:0}.pos2-nav-button .pos2-icon{width:18px;height:18px}.pos2-window-controls{gap:4px}.pos2-register{width:30px;height:36px;justify-content:center;padding:0;border-radius:9px}.pos2-register i{width:10px;height:10px;box-shadow:0 0 0 4px #14d6a32d}.pos2-exit{width:36px;height:36px}.pos2-controlbar{gap:6px;padding:7px}.pos2-control-left{display:grid;width:100%;grid-template-columns:minmax(0,1fr) auto;gap:6px}.pos2-search-wrap input{height:42px;padding-left:40px;font-size:12px}.pos2-quick{width:auto;height:42px;padding:0 11px;font-size:0}.pos2-quick .pos2-icon{width:20px;height:20px}.pos2-control-right{display:block;width:100%}.pos2-control-right>label,.pos2-meta-chip{display:none}.pos2-invoice{width:100%;height:34px;min-width:0;font-size:12px}.pos2-main{display:flex;overflow:visible;flex-direction:column}.pos2-cart{width:100%;min-height:0;border-right:0}.pos2-scanbar{order:-1;padding:7px}.pos2-scan input{height:46px;padding:0 42px;font-size:11px}.pos2-scan small{display:none}.pos2-catalog-button{min-width:48px;font-size:0}.pos2-catalog-button .pos2-icon{width:22px;height:22px}.pos2-table-wrap{width:100%;max-width:100vw;max-height:none;padding:7px;overflow:hidden}.pos2-table{display:block;width:100%;min-width:0}.pos2-table thead{display:none}.pos2-table tbody{display:grid;gap:7px}.pos2-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto;gap:4px 10px;padding:10px;border:1px solid #26354d;border-radius:9px;background:#071020}.pos2-table td{display:none;width:auto;height:auto;padding:0;border:0;text-align:left!important;font-family:inherit!important}.pos2-table td:nth-child(2),.pos2-table td:nth-child(3),.pos2-table td:nth-child(5),.pos2-table td:nth-child(7),.pos2-table td:nth-child(12),.pos2-table td:nth-child(13){display:block}.pos2-table td:nth-child(2){grid-area:1/1;color:#7f91af;font-size:10px}.pos2-table td:nth-child(3){grid-area:2/1;font-size:13px}.pos2-table td:nth-child(5){grid-area:3/1}.pos2-table td:nth-child(7){grid-area:2/2}.pos2-table td:nth-child(7)::before{display:block;margin-bottom:2px;color:#71819c;font-size:8px;content:'RATE';text-align:right}.pos2-table td:nth-child(12){grid-area:1/2;font-size:13px}.pos2-table td:nth-child(13){grid-area:3/2;align-self:center}.pos2-qty{grid-template-columns:38px 50px 38px;gap:5px}.pos2-qty button,.pos2-qty input{height:40px}.pos2-qty input{width:50px}.pos2-rate{width:76px;height:40px}.pos2-delete{min-width:40px;min-height:40px}.pos2-side{width:100%;padding:8px;overflow:visible}.pos2-meta{grid-template-columns:1fr 1fr}.pos2-total-card strong{font-size:30px}.pos2-payment{min-height:54px}.pos2-money-input input{width:140px}.pos2-bottom{gap:7px;padding:8px}.pos2-last{display:none}.pos2-grand{min-height:62px}.pos2-actions{min-height:116px;grid-template-columns:1fr 1fr}.pos2-action{min-height:54px;font-size:11px}.pos2-system{min-height:42px;justify-content:space-between;gap:8px;font-size:9px}.pos2-system span:last-child{display:none}.pos2-internal{inset:76px 0 0}.pos2-internal>header{position:sticky;top:0;z-index:1;background:#101a2d}.pos2-internal table{min-width:600px}}
@media(max-width:760px){.pos2-shell{display:block}.pos2-nav-items{scrollbar-width:none}.pos2-nav-items::-webkit-scrollbar{display:none}.pos2-main{display:flex;height:auto}.pos2-table-wrap{max-height:330px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.pos2-bottom{display:block}.pos2-grand{margin-bottom:7px}.pos2-actions{display:grid}}
@media(max-width:1100px){.pos2-main{grid-template-columns:minmax(0,1fr) 380px}.pos2-nav{gap:8px}.pos2-nav-button{min-width:78px;padding-inline:8px}.pos2-controlbar{grid-template-columns:1fr}.pos2-control-right{justify-content:flex-end}.pos2-actions{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){body:has(#app[data-view="pos2"]){height:auto;overflow:auto}.pos2-shell{height:auto;min-height:100dvh;overflow:visible}.pos2-nav{min-height:88px;padding:6px 10px}.pos2-nav-button{min-width:68px;font-size:9px}.pos2-nav-button .pos2-icon{width:22px;height:22px}.pos2-register{padding:9px}.pos2-register span,.pos2-exit span{display:none}.pos2-exit{width:40px;justify-content:center;padding:0}.pos2-controlbar{padding:9px}.pos2-control-left,.pos2-control-right{flex-wrap:wrap}.pos2-quick{width:100%;justify-content:center}.pos2-control-right>label{display:none}.pos2-invoice{min-width:0;flex:1}.pos2-meta-chip{min-width:110px}.pos2-main{display:block;overflow:visible}.pos2-cart{min-height:520px}.pos2-table-wrap{max-height:430px}.pos2-side{overflow:visible}.pos2-bottom{grid-template-columns:1fr}.pos2-actions{min-height:130px}.pos2-catalog-grid{grid-template-columns:1fr}.pos2-system{flex-wrap:wrap;padding:8px 12px}.pos2-system span:last-child{margin-left:0}}
@media(max-width:1400px) and (min-width:761px){.pos2-main{grid-template-columns:minmax(0,1fr) 360px}.pos2-table{min-width:0;font-size:11px}.pos2-table th,.pos2-table td{padding-inline:5px}.pos2-qty{grid-template-columns:25px 40px 25px;gap:3px}.pos2-qty input{width:40px}.pos2-rate{width:59px}.pos2-controlbar{grid-template-columns:minmax(300px,1fr) auto}.pos2-invoice{min-width:205px}.pos2-meta-chip{min-width:112px;padding-inline:9px}}
@media(max-height:800px) and (min-width:761px){.pos2-nav{min-height:74px;padding-block:5px}.pos2-nav-button{min-width:78px;gap:3px;padding-block:5px;font-size:10px}.pos2-nav-button .pos2-icon{width:22px;height:22px}.pos2-register{padding:8px 12px}.pos2-exit{height:38px}.pos2-controlbar{padding:6px 12px}.pos2-search-wrap input,.pos2-invoice,.pos2-meta-chip{height:38px}.pos2-quick{height:38px}.pos2-table-wrap{padding:6px}.pos2-table th{height:40px}.pos2-table td{height:54px}.pos2-scanbar{padding:6px}.pos2-scan input{height:44px}.pos2-side{padding:6px 8px}.pos2-meta{padding:6px 8px}.pos2-meta b{margin-top:1px;font-size:11px}.pos2-total-card{margin-top:6px;padding:6px}.pos2-total-card strong{margin-top:1px;font-size:25px}.pos2-section-label{margin:6px 0 4px}.pos2-payments{grid-template-columns:repeat(5,1fr);gap:5px}.pos2-payment,.pos2-payment:nth-child(4),.pos2-payment:nth-child(5){min-height:44px;grid-column:auto;flex-direction:column;gap:2px;font-size:9px}.pos2-payment .pos2-icon{width:16px;height:16px}.pos2-cashbox,.pos2-summary{margin-top:6px;padding:7px}.pos2-received{gap:6px}.pos2-received label{font-size:11px}.pos2-money-input input{width:120px;height:32px;font-size:13px}.pos2-denoms{gap:5px;margin-top:6px}.pos2-denoms button{height:30px;font-size:11px}.pos2-balance{margin-top:6px;padding-top:6px;font-size:11px}.pos2-balance strong{font-size:12px}.pos2-summary h3{margin-bottom:3px}.pos2-summary div{padding:2px 0;font-size:11px}.pos2-bottom{gap:6px;padding:6px 8px}.pos2-last,.pos2-grand{padding:6px 8px}.pos2-last div{margin-top:3px;font-size:11px}.pos2-grand strong{font-size:20px}.pos2-actions{gap:5px}.pos2-action{gap:4px;font-size:10px}.pos2-action .pos2-icon{width:17px;height:17px}.pos2-system{min-height:25px;padding-inline:10px}}
@media(max-width:760px){#app[data-view="pos2"]{overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain}.pos2-shell{display:block;height:auto;min-height:100%}.pos2-table-wrap{max-height:330px;overflow-x:hidden;overflow-y:auto}.pos2-cart{min-height:0}.pos2-bottom{display:block}.pos2-actions{display:grid}}
@media(max-width:760px){.pos2-table td.pos2-cell-code,.pos2-table td.pos2-cell-description,.pos2-table td.pos2-cell-quantity,.pos2-table td.pos2-cell-rate,.pos2-table td.pos2-line-total,.pos2-table td.pos2-cell-delete{display:block}.pos2-table td.pos2-cell-code{grid-area:1/1;color:#7f91af;font-size:10px}.pos2-table td.pos2-cell-description{grid-area:2/1;font-size:13px}.pos2-table td.pos2-cell-quantity{grid-area:3/1}.pos2-table td.pos2-cell-rate{grid-area:2/2}.pos2-table td.pos2-cell-rate::before{display:block;margin-bottom:2px;color:#71819c;font-size:8px;content:'RATE';text-align:right}.pos2-table td.pos2-line-total{grid-area:1/2;font-size:13px}.pos2-table td.pos2-cell-delete{grid-area:3/2;align-self:center}}
@media(max-width:760px){.pos2-entry-row .pos2-product-entry{grid-area:1/1/2/3;min-width:0}.pos2-entry-row .pos2-line-code{min-width:0}.pos2-entry-row .pos2-product-suggestions{width:100%;max-width:calc(100vw - 36px)}}
@media(max-width:760px){.pos2-product-suggestions{width:min(360px,calc(100vw - 28px))}.pos2-product-suggestions button{align-items:flex-start;flex-direction:column;gap:4px}.pos2-product-suggestions small{min-width:0}.pos2-scan .pos2-product-suggestions{width:calc(100vw - 82px)}}
@media(max-width:760px){.pos2-shell{padding-bottom:82px}.pos2-bottom .pos2-grand,.pos2-actions .process{display:none}.pos2-actions{grid-template-columns:repeat(3,minmax(0,1fr));min-height:58px}.pos2-action{min-height:54px;gap:4px;font-size:9px}.pos2-mobile-footer{position:fixed;z-index:30;right:0;bottom:47px;left:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.9fr);gap:10px;align-items:center;min-height:74px;padding:9px max(10px,env(safe-area-inset-right)) max(9px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));border-top:1px solid #32445f;background:#071020f5;box-shadow:0 -10px 28px #020617cc;backdrop-filter:blur(10px)}.pos2-mobile-footer span{min-width:0}.pos2-mobile-footer small{display:block;color:#8290a8;font-size:9px;font-weight:900;letter-spacing:.7px;text-transform:uppercase}.pos2-mobile-footer strong{display:block;overflow:hidden;color:#20dda8;font:900 20px ui-monospace,SFMono-Regular,Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.pos2-mobile-footer button{display:flex;min-height:52px;align-items:center;justify-content:center;gap:7px;border:0;border-radius:9px;background:#07936a;color:#fff;font-size:11px;font-weight:900}.pos2-mobile-footer button:disabled{opacity:.6}.pos2-mobile-footer .pos2-icon{width:21px;height:21px}}
@media(max-width:760px){.pos2-phone-scanner{width:40px;height:40px;justify-content:center;overflow:hidden;padding:0;font-size:0}.pos2-phone-scanner::first-letter{font-size:16px}.pos2-fullscreen{width:40px;height:40px;justify-content:center;padding:0}.pos2-fullscreen span{display:none}}
@media(max-height:800px) and (min-width:761px){.pos2-fullscreen{height:38px}}
.pos2-service-internal .pos2-internal-body{padding:0;background:#050b16;color:#f4f7fb}.pos2-service-workspace{display:grid;min-height:100%;grid-template-columns:190px minmax(0,1fr);background:#050b16;color:#f4f7fb}.pos2-service-pages{padding:14px 10px;border-right:1px solid #25344c;background:#0d1729}.pos2-service-pages section+section{margin-top:18px}.pos2-service-pages span{display:block;padding:0 9px 7px;color:#9bacc7;font-size:10px;font-weight:900;letter-spacing:1px;text-transform:uppercase}.pos2-service-pages button{display:block;width:100%;padding:9px 10px;border:1px solid transparent;border-radius:7px;background:transparent;color:#e3ebf7;text-align:left;font-size:12px;font-weight:750;cursor:pointer}.pos2-service-pages button:hover,.pos2-service-pages button:focus-visible{border-color:#41617f;background:#17253a;color:#fff;outline:none}.pos2-service-pages button.active{border-color:#58aaff;background:#173451;color:#fff}.pos2-service-page{min-width:0;padding:18px 22px;overflow:auto;background:#050b16;color:#f4f7fb}.pos2-service-page .section-head{margin-top:0}.pos2-service-page h1,.pos2-service-page h2,.pos2-service-page h3,.pos2-service-page h4,.pos2-service-page b,.pos2-service-page strong,.pos2-service-page label,.pos2-service-page td{color:#f4f7fb}.pos2-service-page p,.pos2-service-page small,.pos2-service-page .page-subtitle,.pos2-service-page .metric-title{color:#aebdd2}.pos2-service-page .card,.pos2-service-page .metric,.pos2-service-page .summary-card{border-color:#293850;background:#0d1729;color:#f4f7fb}.pos2-service-page .table-card{overflow:auto}.pos2-service-page .table-card table{min-width:760px;background:#0d1729}.pos2-service-page .table-card th,.pos2-service-page .table-card td{border-color:#293850;color:#f4f7fb}.pos2-service-page .table-card th{background:#121e32;color:#c8d5e7}.pos2-service-page input,.pos2-service-page select,.pos2-service-page textarea{border-color:#35465f;background:#071020;color:#fff}.pos2-service-page input::placeholder,.pos2-service-page textarea::placeholder{color:#8393ab}.pos2-service-page .empty,.pos2-service-page .loading-card{color:#d5dfed}
.pos2-service-page .table-card table.pos2-service-register{min-width:1500px}.pos2-service-register th,.pos2-service-register td{white-space:nowrap}.pos2-service-register td:nth-child(7){min-width:240px;white-space:normal}
@media(max-width:760px){.pos2-service-internal .pos2-internal-body{padding:0}.pos2-service-workspace{display:block}.pos2-service-pages{position:sticky;top:0;z-index:2;display:flex;gap:5px;padding:7px;border-right:0;border-bottom:1px solid #25344c;overflow-x:auto}.pos2-service-pages section{display:flex;gap:5px}.pos2-service-pages section+section{margin-top:0}.pos2-service-pages span{display:none}.pos2-service-pages button{width:auto;min-width:max-content;padding:8px 10px}.pos2-service-page{padding:10px}.pos2-service-page .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pos2-internal-header-actions{display:flex;align-items:center;gap:8px}.pos2-internal>header .pos2-internal-add{display:grid;width:40px;height:40px;padding:0;place-items:center;border-color:#8b5cf6;background:#5b21b6;color:#fff}.pos2-internal>header .pos2-internal-add span{color:inherit;font-size:24px;font-weight:700;line-height:1}.pos2-internal>header .pos2-internal-add:hover,.pos2-internal>header .pos2-internal-add:focus-visible{border-color:#c4b5fd;background:#6d28d9;outline:2px solid #c4b5fd;outline-offset:2px}
.pos2-internal>header .pos2-register-action{border-color:#0ea5a5;background:#0f766e;color:#fff}.pos2-internal>header .pos2-register-action:hover,.pos2-internal>header .pos2-register-action:focus-visible{border-color:#5eead4;background:#0d9488;outline:2px solid #5eead4;outline-offset:2px}
@media(max-width:760px){.pos2-internal-header-actions{gap:6px}.pos2-internal>header .pos2-internal-add{width:34px;height:34px}.pos2-internal>header .pos2-internal-add span{font-size:20px}}

/* POS2 keeps its own counter-friendly themes because the main application header is hidden here. */
.pos2-theme-control{position:relative;flex:0 0 auto}.pos2-theme-trigger{position:relative;display:grid;width:43px;height:43px;padding:0;place-items:center;border:1px solid var(--p2-line);border-radius:9px;background:var(--p2-elevated);color:var(--p2-text);cursor:pointer}.pos2-theme-trigger:hover,.pos2-theme-trigger:focus-visible,.pos2-theme-trigger[aria-expanded="true"]{border-color:var(--p2-blue);outline:none}.pos2-theme-trigger .pos2-icon{width:20px;height:20px}.pos2-theme-trigger i{position:absolute;right:5px;bottom:5px;width:9px;height:9px;border:2px solid var(--p2-elevated);border-radius:50%;background:var(--theme-swatch)}.pos2-theme-menu{position:absolute;z-index:50;top:calc(100% + 8px);right:0;width:190px;padding:8px;border:1px solid var(--p2-line);border-radius:11px;background:var(--p2-panel);box-shadow:0 18px 45px #02061766}.pos2-theme-menu[hidden]{display:none}.pos2-theme-menu>span{display:block;padding:5px 8px 7px;color:var(--p2-muted);font-size:10px;font-weight:900;letter-spacing:.8px;text-transform:uppercase}.pos2-theme-menu button{display:flex;width:100%;align-items:center;gap:10px;padding:9px 10px;border:0;border-radius:7px;background:transparent;color:var(--p2-text);text-align:left;cursor:pointer}.pos2-theme-menu button:hover,.pos2-theme-menu button:focus-visible{background:var(--p2-hover);outline:none}.pos2-theme-menu button i{width:17px;height:17px;flex:0 0 auto;border:1px solid var(--p2-line);border-radius:50%;background:var(--theme-swatch);box-shadow:inset 0 0 0 2px #ffffff33}.pos2-theme-menu button b{font-size:12px}
.pos2-shell[data-pos2-theme-current="midnight"]{--p2-bg:#020617;--p2-panel:#101a2d;--p2-panel-2:#111b30;--p2-elevated:#030918;--p2-line:#26354d;--p2-muted:#8493ad;--p2-text:#e6edf8;--p2-green:#10d7a0;--p2-blue:#53a8ff;--p2-hover:#1c293e;--p2-brand-text:#f8fafc;--p2-brand-accent:#55d9c3;--p2-action:#007565;--p2-action-hover:#005b50;--p2-action-text:#fff;--p2-action-ring:#55d9c3;color-scheme:dark}
.pos2-shell[data-pos2-theme-current="ocean"]{--p2-bg:#031b24;--p2-panel:#0a3442;--p2-panel-2:#0d4050;--p2-elevated:#052630;--p2-line:#286174;--p2-muted:#92bdc9;--p2-text:#ecfeff;--p2-green:#2dd4bf;--p2-blue:#38bdf8;--p2-hover:#125467;--p2-brand-text:#fff7ed;--p2-brand-accent:#fb923c;--p2-action:#fb923c;--p2-action-hover:#fdba74;--p2-action-text:#231307;--p2-action-ring:#fed7aa;color-scheme:dark}
.pos2-shell[data-pos2-theme-current="plum"]{--p2-bg:#1d0b2d;--p2-panel:#351348;--p2-panel-2:#451a5c;--p2-elevated:#260d38;--p2-line:#673a78;--p2-muted:#c4a3d0;--p2-text:#fdf4ff;--p2-green:#5eead4;--p2-blue:#d8b4fe;--p2-hover:#57206e;--p2-brand-text:#fff7ed;--p2-brand-accent:#fbbf24;--p2-action:#fbbf24;--p2-action-hover:#fcd34d;--p2-action-text:#251704;--p2-action-ring:#fde68a;color-scheme:dark}
.pos2-shell[data-pos2-theme-current="light"]{--p2-bg:#f1f5f9;--p2-panel:#ffffff;--p2-panel-2:#e2e8f0;--p2-elevated:#f8fafc;--p2-line:#94a3b8;--p2-muted:#334155;--p2-text:#0f172a;--p2-green:#047857;--p2-blue:#075985;--p2-hover:#dbe4ee;--p2-brand-text:#0f172a;--p2-brand-accent:#007565;--p2-action:#007565;--p2-action-hover:#005b50;--p2-action-text:#fff;--p2-action-ring:#2dd4bf;color-scheme:light}
.pos2-shell[data-pos2-theme-current="royal-blue"]{--p2-bg:#eef4ff;--p2-panel:#ffffff;--p2-panel-2:#dbeafe;--p2-elevated:#f8fbff;--p2-line:#bfdbfe;--p2-muted:#64748b;--p2-text:#020617;--p2-green:#1f5eff;--p2-blue:#1f5eff;--p2-hover:#dbeafe;--p2-brand-text:#eff6ff;--p2-brand-accent:#fbbf24;--p2-action:#f59e0b;--p2-action-hover:#fbbf24;--p2-action-text:#211602;--p2-action-ring:#fcd34d;color-scheme:light}
.pos2-shell[data-pos2-theme-current]{background:var(--p2-bg);color:var(--p2-text)}.pos2-shell[data-pos2-theme-current] :is(.pos2-nav,.pos2-controlbar,.pos2-scanbar,.pos2-side,.pos2-bottom,.pos2-internal>header,.pos2-catalog-card,.pos2-catalog-head){border-color:var(--p2-line);background:var(--p2-panel);color:var(--p2-text)}.pos2-shell[data-pos2-theme-current] :is(.pos2-table th,.pos2-internal th){border-color:var(--p2-line);background:var(--p2-panel-2);color:var(--p2-text)}.pos2-shell[data-pos2-theme-current] :is(.pos2-register,.pos2-search-wrap input,.pos2-invoice,.pos2-meta-chip,.pos2-qty input,.pos2-rate,.pos2-scan input,.pos2-meta,.pos2-cashbox,.pos2-summary,.pos2-last,.pos2-grand,.pos2-internal table,.pos2-product-card){border-color:var(--p2-line);background:var(--p2-elevated);color:var(--p2-text)}.pos2-shell[data-pos2-theme-current] :is(.pos2-total-card){border-color:var(--p2-line);background:linear-gradient(100deg,var(--p2-elevated),var(--p2-panel-2),var(--p2-elevated))}.pos2-shell[data-pos2-theme-current] :is(.pos2-nav-button:hover,.pos2-nav-button:focus-visible,.pos2-nav-button.active,.pos2-qty button,.pos2-catalog-button,.pos2-payment,.pos2-denoms button){border-color:var(--p2-line);background:var(--p2-hover);color:var(--p2-text)}.pos2-shell[data-pos2-theme-current] :is(.pos2-table td,.pos2-internal td){border-color:var(--p2-line);color:var(--p2-muted)}.pos2-shell[data-pos2-theme-current] :is(.pos2-table td:nth-child(2),.pos2-table td:nth-child(3),.pos2-summary span,.pos2-meta b,.pos2-grand,.pos2-last div,.pos2-internal>header h2,.pos2-product-card){color:var(--p2-text)}.pos2-shell[data-pos2-theme-current] :is(.pos2-meta span,.pos2-section-label,.pos2-summary h3,.pos2-last header,.pos2-grand span,.pos2-control-right>label,.pos2-internal>header p,.pos2-product-card small){color:var(--p2-muted)}.pos2-shell[data-pos2-theme-current] :is(.pos2-total-card strong,.pos2-grand strong,.pos2-line-total,.pos2-product-card strong,.pos2-system){color:var(--p2-green)}.pos2-shell[data-pos2-theme-current] .pos2-system{border-color:var(--p2-line);background:var(--p2-elevated)}.pos2-shell[data-pos2-theme-current] .pos2-internal{background:var(--p2-bg);color:var(--p2-text)}.pos2-shell[data-pos2-theme-current] .pos2-payment.active{border-color:var(--p2-green);background:var(--p2-green);color:#fff}.pos2-shell[data-pos2-theme-current="light"] .pos2-payment.active{color:#fff}.pos2-shell[data-pos2-theme-current="light"] .pos2-service-internal .pos2-internal-body{background:var(--p2-bg)}
.pos2-shell[data-pos2-theme-current="light"] :is(.pos2-entry-row td:first-child,.pos2-entry-row .pos2-cell-description span,.pos2-scan small,.pos2-total-card span,.pos2-money-input span,.pos2-balance,.pos2-grand small,.pos2-mobile-footer small,.pos2-system span:last-child,.pos2-catalog-head button,.pos2-service-page .empty,.pos2-service-page .loading-card){color:var(--p2-muted)}.pos2-shell[data-pos2-theme-current="light"] :is(.pos2-search-wrap>.pos2-icon,.pos2-search-qr,.pos2-scan>.pos2-icon,.pos2-delete){color:#475569}.pos2-shell[data-pos2-theme-current="light"] :is(.pos2-line-code,.pos2-money-input input){border-color:var(--p2-line);background:#fff;color:var(--p2-text)}.pos2-shell[data-pos2-theme-current="light"] :is(.pos2-search-wrap input,.pos2-scan input,.pos2-line-code,.pos2-service-page input,.pos2-service-page textarea)::placeholder{color:#475569;opacity:1}.pos2-shell[data-pos2-theme-current="light"] .pos2-service-pages button{color:var(--p2-text)}
.pos2-shell[data-pos2-theme-current] :is(.pos2-internal-cards article,.pos2-service-workspace,.pos2-service-pages,.pos2-service-page,.pos2-service-page .card,.pos2-service-page .metric,.pos2-service-page .summary-card,.pos2-service-page .table-card table,.pos2-mobile-footer){border-color:var(--p2-line);background:var(--p2-panel);color:var(--p2-text)}.pos2-shell[data-pos2-theme-current] :is(.pos2-service-page h1,.pos2-service-page h2,.pos2-service-page h3,.pos2-service-page h4,.pos2-service-page b,.pos2-service-page strong,.pos2-service-page label,.pos2-service-page td){color:var(--p2-text)}.pos2-shell[data-pos2-theme-current] :is(.pos2-service-page p,.pos2-service-page small,.pos2-service-page .page-subtitle,.pos2-service-page .metric-title,.pos2-internal-cards span,.pos2-internal-cards small){color:var(--p2-muted)}.pos2-shell[data-pos2-theme-current] :is(.pos2-service-page input,.pos2-service-page select,.pos2-service-page textarea){border-color:var(--p2-line);background:var(--p2-elevated);color:var(--p2-text)}.pos2-shell[data-pos2-theme-current] .pos2-service-page .table-card th{border-color:var(--p2-line);background:var(--p2-panel-2);color:var(--p2-text)}
.pos2-shell[data-pos2-theme-current="royal-blue"] .pos2-nav{background:linear-gradient(145deg,#07285f,#0d46a4 58%,#1f63f2);color:#fff}.pos2-shell[data-pos2-theme-current="royal-blue"] .pos2-nav-button{color:#dbeafe}.pos2-shell[data-pos2-theme-current="royal-blue"] .pos2-nav-button:hover,.pos2-shell[data-pos2-theme-current="royal-blue"] .pos2-nav-button:focus-visible,.pos2-shell[data-pos2-theme-current="royal-blue"] .pos2-nav-button.active{border-color:#93c5fd;background:#1f5eff;color:#fff}.pos2-shell[data-pos2-theme-current="royal-blue"] :is(.pos2-register,.pos2-theme-trigger){border-color:#60a5fa;background:#07285f;color:#fff}.pos2-shell[data-pos2-theme-current="royal-blue"] .pos2-theme-trigger i{border-color:#07285f}
.pos2-shell[data-pos2-theme-current="royal-blue"] .pos2-service-pages span{color:var(--p2-muted)}.pos2-shell[data-pos2-theme-current="royal-blue"] .pos2-service-pages button{color:var(--p2-text)}.pos2-shell[data-pos2-theme-current="royal-blue"] .pos2-service-pages button:hover,.pos2-shell[data-pos2-theme-current="royal-blue"] .pos2-service-pages button:focus-visible{border-color:#93c5fd;background:var(--p2-hover);color:var(--p2-text)}.pos2-shell[data-pos2-theme-current="royal-blue"] .pos2-service-pages button.active{border-color:#58aaff;background:#173451;color:#fff}
.pos2-shell[data-pos2-theme-current="light"] .pos2-nav-button,.pos2-shell[data-pos2-theme-current="light"] .pos2-nav-button:hover,.pos2-shell[data-pos2-theme-current="light"] .pos2-nav-button:focus-visible,.pos2-shell[data-pos2-theme-current="light"] .pos2-nav-button.active{color:#000}.pos2-shell[data-pos2-theme-current="light"] .empty{color:var(--p2-text)}.pos2-shell[data-pos2-theme-current="light"] .pos2-balance strong{color:#be123c}.pos2-shell[data-pos2-theme-current="light"] .pos2-summary .discount b,.pos2-shell[data-pos2-theme-current="light"] .pos2-last header b{color:#047857}.pos2-shell[data-pos2-theme-current="light"] .pos2-summary .tax b{color:#075985}.pos2-shell[data-pos2-theme-current="light"] .pos2-quick,.pos2-shell[data-pos2-theme-current="light"] .pos2-action.process,.pos2-shell[data-pos2-theme-current="light"] .pos2-mobile-footer button{background:#047857;color:#fff}.pos2-shell[data-pos2-theme-current="light"] .pos2-quick:hover{background:#065f46}
.pos2-shell[data-pos2-theme-current] :is(.pos2-quick,.pos2-action.process,.pos2-mobile-footer button){border-color:var(--p2-action);background:var(--p2-action);color:var(--p2-action-text);box-shadow:0 7px 18px color-mix(in srgb,var(--p2-action) 34%,transparent)}.pos2-shell[data-pos2-theme-current] :is(.pos2-quick,.pos2-action.process,.pos2-mobile-footer button):hover,.pos2-shell[data-pos2-theme-current] :is(.pos2-quick,.pos2-action.process,.pos2-mobile-footer button):focus-visible{background:var(--p2-action-hover);color:var(--p2-action-text);outline:2px solid var(--p2-action-ring);outline-offset:2px}.pos2-shell[data-pos2-theme-current] .pos2-payment.active{border-color:var(--p2-action-ring);background:var(--p2-action);color:var(--p2-action-text);box-shadow:0 0 0 2px color-mix(in srgb,var(--p2-action-ring) 28%,transparent)}.pos2-shell[data-pos2-theme-current] .pos2-nav-button.active{border-color:var(--p2-action);background:color-mix(in srgb,var(--p2-action) 22%,var(--p2-panel));color:var(--p2-text)}.pos2-shell[data-pos2-theme-current] .pos2-nav-button.active .pos2-icon{color:var(--p2-action-ring)}.pos2-shell[data-pos2-theme-current] .pos2-internal-quick-access button.active{border-color:var(--p2-action-ring);background:var(--p2-action);color:var(--p2-action-text)}.pos2-shell[data-pos2-theme-current="royal-blue"] .pos2-nav-button.active{border-color:var(--p2-action);background:var(--p2-action);color:var(--p2-action-text)}
@media(max-width:760px){.pos2-theme-trigger{width:40px;height:40px}.pos2-theme-menu{position:fixed;top:72px;right:8px;width:min(220px,calc(100vw - 16px))}}
@media(max-height:800px) and (min-width:761px){.pos2-theme-trigger{width:38px;height:38px}}
.pos2-payment.unconfigured{opacity:.55;border-style:dashed}.pos2-payment.unconfigured:hover,.pos2-payment.unconfigured:focus-visible{opacity:.8}
.pos2-commit-error{display:none;margin-top:10px;padding:10px 12px;border:1px solid #fb7185;border-radius:8px;background:#4c0519;color:#fecdd3;font-weight:800;line-height:1.35}.pos2-commit-error:not(:empty){display:block}.pos2-money-input input:invalid{border-color:#fb7185;outline:2px solid #fb718544}
.pos2-customer-search{display:grid;min-width:0;flex:1;grid-template-columns:72px minmax(0,1fr);gap:7px}.pos2-customer-search .pos2-search-wrap{min-width:0}.pos2-customer-search>select{height:44px;padding:0 4px;border:1px solid var(--p2-line,#31415c);border-radius:7px;background:var(--p2-elevated,#030918);color:var(--p2-text,#dce5f5);font-size:11px}.pos2-customer-create-modal [data-pos2-phone-rule]{color:#5d6970}
@media(max-width:760px){.pos2-customer-search{grid-template-columns:48px minmax(0,1fr)}.pos2-customer-search>select{height:42px;padding-inline:2px;font-size:9px}}
.pos2-customer-create-backdrop{z-index:100}.pos2-customer-create-modal{width:min(430px,100%)}.pos2-customer-create-modal .form-grid{grid-template-columns:1fr}.pos2-customer-create-modal input[readonly]{background:#f3f6f6;color:#44545c}.pos2-customer-create-modal .modal-foot{gap:14px}.pos2-customer-create-modal .modal-foot>div{display:flex;gap:8px}
@media(max-width:520px){.pos2-customer-create-backdrop{padding:12px}.pos2-customer-create-modal .modal-head,.pos2-customer-create-modal .modal-body,.pos2-customer-create-modal .modal-foot{padding-inline:16px}.pos2-customer-create-modal .modal-foot{align-items:stretch;flex-direction:column}.pos2-customer-create-modal .modal-foot>div{justify-content:flex-end}}
.pos2-product-alert{position:relative;display:grid;width:43px;height:43px;flex:0 0 auto;padding:0;place-items:center;border:1px solid var(--p2-line,#33445f);border-radius:9px;background:var(--p2-elevated,#030918);color:var(--p2-muted,#8493ad);cursor:pointer}.pos2-product-alert.active{border-color:#f59e0b;background:#422006;color:#fbbf24}.pos2-product-alert .pos2-icon{width:20px;height:20px}.pos2-product-alert b{position:absolute;top:-7px;right:-7px;display:grid;min-width:20px;height:20px;padding:0 5px;place-items:center;border:2px solid var(--p2-panel,#101a2d);border-radius:999px;background:#dc2626;color:#fff;font-size:10px}.pos2-product-alert:not(.active) b{background:#475569}.pos2-quick-product-backdrop,.pos2-pending-products-backdrop,.pos2-complete-product-backdrop{z-index:100}.pos2-quick-product-modal{width:min(480px,100%)}.pos2-pending-products-modal{width:min(680px,100%)}.pos2-complete-product-modal{width:min(850px,100%)}.pos2-pending-product-list{display:grid;gap:9px}.pos2-pending-product-list article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border:1px solid #dfe5e5;border-radius:8px}.pos2-pending-product-list article span{min-width:0}.pos2-pending-product-list article b,.pos2-pending-product-list article small{display:block}.pos2-pending-product-list article small{margin-top:4px;color:#6d7783}.pos2-product-checks{display:flex;flex-wrap:wrap;gap:10px 18px}.pos2-product-checks label{display:flex;align-items:center;gap:6px}.pos2-product-checks input{width:auto}.pos2-quick-product-modal .modal-foot>div,.pos2-complete-product-modal .modal-foot>div{display:flex;gap:8px}
@media(max-width:760px){.pos2-product-alert{width:40px;height:40px}.pos2-pending-product-list article{align-items:stretch;flex-direction:column}.pos2-pending-product-list article button{width:100%}.pos2-complete-product-modal .modal-body{padding:14px}.pos2-complete-product-modal .form-grid{grid-template-columns:1fr}}

/* Keep the counter inside the usable browser/WebView area at desktop DPI scaling. */
@media(min-width:761px){html:has(#app[data-view="pos2"]){width:100%;height:100%;overflow:hidden}body:has(#app[data-view="pos2"]){width:100%;max-width:100vw;min-height:0;max-height:100dvh}body:has(#app[data-view="pos2"]) .shell,body:has(#app[data-view="pos2"]) main{min-width:0;min-height:0;max-width:100vw;max-height:100dvh;overflow:hidden}#app[data-view="pos2"]{min-width:0;max-width:100%;max-height:100%;overflow:hidden}#app[data-view="pos2"] .pos2-shell{min-width:0;max-width:100%;max-height:100%}}

.pos2-actions [data-pos2-hold],.pos2-actions [data-pos2-retrieve]{background:var(--p2-panel-2);color:var(--p2-text);border:1px solid var(--p2-line)}.pos2-held-modal{width:min(620px,100%)}.pos2-held-list{display:grid;gap:9px}.pos2-held-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #dfe5e5;border-radius:8px}.pos2-held-list article b,.pos2-held-list article small{display:block}.pos2-held-list article small{margin-top:5px;color:#64748b}.pos2-held-list article button{flex:0 0 auto}@media(max-width:520px){.pos2-held-list article{align-items:stretch;flex-direction:column}.pos2-held-list article button{width:100%}}
.pos2-internal>header{flex-wrap:wrap}.pos2-internal-quick-access{display:flex;min-width:0;flex:1 1 420px;align-items:center;gap:5px;overflow-x:auto;padding:3px 0}.pos2-internal-quick-access button{flex:0 0 auto;padding:8px 10px;border:1px solid #2f3e56;border-radius:7px;background:#0b1526;color:#bdc9db;font-size:10px;font-weight:800;letter-spacing:.35px;cursor:pointer}.pos2-internal-quick-access button:hover,.pos2-internal-quick-access button:focus-visible,.pos2-internal-quick-access button.active{border-color:#398fe0;background:#183653;color:#fff;outline:none}.pos2-internal-header-actions{flex:0 0 auto}.pos2-internal-add-product{padding:9px 12px;border:1px solid #278c73;border-radius:7px;background:#086d58;color:#fff;font-size:12px;font-weight:800;cursor:pointer}.pos2-internal-add-product:hover,.pos2-internal-add-product:focus-visible{background:#0b8a6e;outline:2px solid #55d9b7;outline-offset:2px}@media(max-width:760px){.pos2-internal-quick-access{order:3;flex-basis:100%}.pos2-internal-header-actions{margin-left:auto}}
/* Responsive checkout refinements for tablets, compact laptops and small phones. */
@media (min-width:761px) and (max-width:1024px){
  body:has(#app[data-view="pos2"]){height:auto;min-height:100dvh;overflow:auto}
  body:has(#app[data-view="pos2"]) .shell,body:has(#app[data-view="pos2"]) main,#app[data-view="pos2"]{height:auto;max-height:none;overflow:visible}
  #app[data-view="pos2"] .pos2-shell{height:auto;min-height:100dvh;max-height:none;overflow:visible;grid-template-rows:auto auto auto auto auto}
  .pos2-nav{min-height:0;padding:7px 10px;gap:7px}
  .pos2-nav-items{display:grid;min-width:0;flex:1 1 100%;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;overflow:visible}
  .pos2-nav-button{min-width:0;min-height:46px;padding:5px;font-size:9px}
  .pos2-nav-button .pos2-icon{width:22px;height:22px}
  .pos2-controlbar{grid-template-columns:minmax(0,1fr);gap:8px;padding:9px 12px}
  .pos2-control-right{justify-content:flex-end}
  .pos2-main{grid-template-columns:minmax(0,1fr);overflow:visible}
  .pos2-cart{min-height:0;border-right:0}
  .pos2-table-wrap{max-height:390px;overflow:auto;overscroll-behavior:contain}
  .pos2-table{min-width:850px}
  .pos2-side{overflow:visible}
  .pos2-payments{grid-template-columns:repeat(5,minmax(0,1fr))}
  .pos2-payment,.pos2-payment:nth-child(4),.pos2-payment:nth-child(5){grid-column:auto;min-height:58px;flex-direction:column}
  .pos2-bottom{grid-template-columns:minmax(0,1fr)}
  .pos2-actions{grid-template-columns:repeat(4,minmax(0,1fr))}
  .pos2-mobile-footer{display:none}
}
@media (min-width:1025px) and (max-height:700px){
  .pos2-shell{min-height:0}
  .pos2-nav{min-height:64px;padding-block:3px}
  .pos2-nav-button{min-width:66px;padding-block:4px;font-size:9px}
  .pos2-nav-button .pos2-icon{width:19px;height:19px}
  .pos2-controlbar{padding-block:5px}
  .pos2-table-wrap{padding:4px}
  .pos2-table th{height:34px}
  .pos2-table td{height:44px;padding-block:5px}
  .pos2-scanbar{padding-block:4px}
  .pos2-scan input{height:38px}
}
@media(max-width:420px){
  .pos2-nav{min-height:68px;padding:4px}
  .pos2-nav-button{min-width:54px;min-height:56px;font-size:7px}
  .pos2-nav-button .pos2-icon{width:18px;height:18px}
  .pos2-window-controls{gap:3px}
  .pos2-register,.pos2-exit,.pos2-fullscreen{width:34px;height:36px;min-width:34px}
  .pos2-controlbar{padding:6px}
  .pos2-customer-search{grid-template-columns:44px minmax(0,1fr)}
  .pos2-customer-search>select{font-size:8px}
  .pos2-quick{height:40px;padding-inline:9px}
  .pos2-scanbar{gap:5px;padding:6px}
  .pos2-scan input{padding-right:8px;padding-left:36px;font-size:10px}
  .pos2-catalog-button{min-width:42px}
  .pos2-meta{gap:7px;padding:9px}
  .pos2-total-card strong{font-size:26px}
  .pos2-received{align-items:flex-start;flex-direction:column;gap:8px}
  .pos2-money-input,.pos2-money-input input{width:100%}
  .pos2-payments{gap:6px}
  .pos2-payment{min-height:50px;font-size:10px}
  .pos2-denoms{gap:6px}
  .pos2-mobile-footer{grid-template-columns:minmax(0,1fr) minmax(120px,.9fr);gap:7px}
  .pos2-mobile-footer strong{font-size:17px}
  .pos2-mobile-footer button{font-size:10px}
}

/* Compact POS2 product and stock registers to show more lines in single-window mode. */
.pos2-internal .pos2-product-register{table-layout:auto}.pos2-internal .pos2-product-register th,.pos2-internal .pos2-product-register td{padding:6px 10px;line-height:1.2}.pos2-internal .pos2-product-register th{font-size:10px;letter-spacing:.2px}.pos2-internal .pos2-product-register td:first-child{white-space:nowrap;font-size:12px}.pos2-internal .pos2-product-register td:nth-child(2){width:42%;font-size:13px}.pos2-internal .pos2-product-register td:nth-child(3),.pos2-internal .pos2-product-register td:nth-child(4){white-space:nowrap;font-variant-numeric:tabular-nums}.pos2-internal .pos2-product-register .pos2-inline-status{padding:2px 7px}.pos2-internal .pos2-product-register button{padding:5px 9px;white-space:nowrap}
.pos2-register-toolbar{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;padding:8px 10px;border:1px solid var(--p2-line,#26354d);border-radius:9px;background:var(--p2-panel,#101a2d)}.pos2-register-toolbar label{position:relative;display:block;width:min(440px,70%)}.pos2-register-toolbar .pos2-icon{position:absolute;top:50%;left:11px;width:18px;height:18px;color:var(--p2-muted,#8190aa);transform:translateY(-50%);pointer-events:none}.pos2-register-toolbar input{width:100%;height:38px;padding:0 12px 0 38px;border:1px solid var(--p2-line,#31415c);border-radius:7px;background:var(--p2-elevated,#030918);color:var(--p2-text,#e6edf8)}.pos2-register-toolbar small{color:var(--p2-muted,#8190aa);font-weight:750;white-space:nowrap}.pos2-wide-register{min-width:1120px}.pos2-wide-register th,.pos2-wide-register td{padding:7px 9px;white-space:nowrap;font-variant-numeric:tabular-nums}.pos2-wide-register td:nth-child(2),.pos2-wide-register td:nth-child(3){white-space:normal}.pos2-wide-register tr[hidden]{display:none}.pos2-report-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.pos2-report-detail,.pos2-shift-breakdown{margin-top:14px}.pos2-report-detail h3,.pos2-shift-breakdown h4{margin:0 0 8px;color:var(--p2-text,#e6edf8)}.pos2-shift-values-expanded{grid-template-columns:repeat(4,minmax(0,1fr))}.pos2-shift-breakdown table{margin-bottom:14px}.pos2-internal .pos2-product-register td:nth-child(2){width:auto}

/* Counter-shift controls use the POS2 dark workspace rather than the legacy POS card palette. */
.pos2-internal .pos-shift-panel{width:min(860px,100%);max-width:none;margin:16px auto;padding:22px;border-color:#2a3a52;background:#0d1729;box-shadow:0 18px 48px #0003}.pos2-internal .pos-shift-state h3{color:#f4f7fb;font:800 20px Inter,'DM Sans',system-ui,sans-serif}.pos2-internal .pos-shift-state p{color:#95a5bd;font-size:12px}.pos2-internal .pos-shift-values>div{border-color:#2a3a52;background:#071020}.pos2-internal .pos-shift-values span{color:#8b9bb4;font-size:11px}.pos2-internal .pos-shift-values b{color:#e6edf8;font:800 17px ui-monospace,SFMono-Regular,Consolas,monospace}.pos2-internal .pos-shift-panel>.primary-btn{min-height:42px}
@media(max-width:900px){.pos2-report-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.pos2-shift-values-expanded{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.pos2-register-toolbar{position:static;align-items:stretch;flex-direction:column}.pos2-register-toolbar label{width:100%}.pos2-register-toolbar small{white-space:normal}.pos2-report-cards,.pos2-shift-values-expanded{grid-template-columns:1fr 1fr}}

/* Keep session-level POS2 actions in a dedicated right-side rail. */
@media(min-width:761px){
  .pos2-shell{grid-template-columns:minmax(0,1fr) 156px}
  .pos2-shell>.pos2-nav,.pos2-shell>.pos2-controlbar,.pos2-shell>.pos2-main,.pos2-shell>.pos2-bottom,.pos2-shell>.pos2-system{grid-column:1}
  .pos2-command-rail{grid-column:2;grid-row:1/-1}
  .pos2-internal,.pos2-catalog{right:156px}
}
.pos2-command-rail{z-index:20;display:flex;min-width:0;flex-direction:column;gap:10px;padding:14px 11px;border-left:1px solid var(--p2-line);background:var(--p2-panel);box-shadow:-10px 0 30px #02061733;color:var(--p2-text)}
.pos2-rail-toggle{position:absolute;z-index:45;top:9px;right:11px;display:grid;width:32px;height:30px;place-items:center;padding:0;border:1px solid var(--p2-blue);border-radius:7px;background:var(--p2-panel);color:var(--p2-text);cursor:pointer}
.pos2-rail-toggle span{position:relative;width:22px;height:14px;border:2px solid currentColor;border-radius:50%/60%;font-size:0;line-height:1}.pos2-rail-toggle span::before{position:absolute;top:50%;left:50%;width:6px;height:6px;border-radius:50%;background:currentColor;content:'';transform:translate(-50%,-50%)}.pos2-rail-toggle span::after{position:absolute;top:5px;left:-3px;width:26px;height:2px;background:currentColor;content:'';opacity:0;transform:rotate(-35deg)}.pos2-rail-toggle b{display:none}.pos2-rail-toggle:hover,.pos2-rail-toggle:focus-visible{border-color:var(--p2-blue);outline:2px solid var(--p2-blue);outline-offset:1px}
.pos2-shell.pos2-rail-hidden{grid-template-columns:minmax(0,1fr)}
.pos2-shell.pos2-rail-hidden .pos2-command-rail{display:none}
.pos2-shell.pos2-rail-hidden .pos2-rail-toggle{top:10px;right:0;border-radius:8px 0 0 8px}.pos2-shell.pos2-rail-hidden .pos2-rail-toggle span::after{opacity:1}
.pos2-shell.pos2-rail-hidden :is(.pos2-internal,.pos2-catalog){right:0}
.pos2-command-rail::before{display:block;padding:8px 40px 10px 4px;color:var(--p2-muted);font-size:9px;font-weight:900;letter-spacing:.8px;content:'SESSION';text-align:left}
.pos2-command-rail .pos2-register,.pos2-command-rail .pos2-phone-scanner,.pos2-command-rail .pos2-fullscreen,.pos2-command-rail .pos2-exit{width:100%;min-width:0;min-height:62px;height:auto;justify-content:center;padding:10px 8px}
.pos2-command-rail .pos2-register{flex-direction:column;gap:9px;text-align:center;white-space:normal}
.pos2-command-rail .pos2-register span{max-width:100%;overflow-wrap:anywhere;font-size:11px;line-height:1.25}
.pos2-command-rail .pos2-phone-scanner,.pos2-command-rail .pos2-fullscreen,.pos2-command-rail .pos2-exit{flex-direction:column;gap:6px;text-align:center;white-space:normal}
.pos2-command-rail .pos2-phone-scanner::first-letter{font-size:16px}
.pos2-command-rail .pos2-fullscreen .pos2-icon,.pos2-command-rail .pos2-exit .pos2-icon{width:21px;height:21px}
.pos2-command-rail .pos2-exit{margin-top:auto}
.pos2-command-rail .pos2-product-alert,.pos2-command-rail .pos2-theme-control{width:100%;min-width:0}
.pos2-command-rail .pos2-product-alert,.pos2-command-rail .pos2-theme-trigger{width:100%;min-height:62px;height:auto;border-radius:9px}
.pos2-command-rail .pos2-theme-menu{top:calc(100% + 7px);right:calc(100% + 8px);left:auto}
.pos2-window-controls{margin-left:auto}
.pos2-window-controls .pos2-theme-menu{right:0}
@media(min-width:761px) and (max-width:1024px){
  .pos2-shell{grid-template-columns:minmax(0,1fr) 96px!important}
  .pos2-shell.pos2-rail-hidden{grid-template-columns:minmax(0,1fr)!important}
  .pos2-internal,.pos2-catalog{right:96px}
  .pos2-command-rail{gap:7px;padding:9px 7px}
  .pos2-command-rail .pos2-register,.pos2-command-rail .pos2-phone-scanner,.pos2-command-rail .pos2-fullscreen,.pos2-command-rail .pos2-exit{width:100%;min-width:0;min-height:56px;padding:8px 5px;font-size:9px}
  .pos2-command-rail .pos2-register span,.pos2-command-rail .pos2-phone-scanner span,.pos2-command-rail .pos2-fullscreen span,.pos2-command-rail .pos2-exit span{display:block}
  .pos2-rail-toggle{top:7px;right:7px}
}
@media(max-width:760px){
  .pos2-shell{position:relative;display:block;padding-right:68px;padding-bottom:82px}
  .pos2-command-rail{position:fixed;z-index:40;top:0;right:0;bottom:0;width:68px;gap:6px;padding:7px 5px calc(8px + env(safe-area-inset-bottom));overflow-y:auto}
  .pos2-command-rail::before{font-size:7px;letter-spacing:.4px}
  .pos2-command-rail .pos2-register,.pos2-command-rail .pos2-phone-scanner,.pos2-command-rail .pos2-fullscreen,.pos2-command-rail .pos2-exit{width:100%;min-width:0;min-height:54px;height:auto;padding:7px 3px;font-size:8px;line-height:1.1}
  .pos2-command-rail .pos2-register span,.pos2-command-rail .pos2-phone-scanner span,.pos2-command-rail .pos2-fullscreen span,.pos2-command-rail .pos2-exit span{display:block}
  .pos2-command-rail .pos2-register i{width:10px;height:10px;box-shadow:0 0 0 4px #14d6a32d}
  .pos2-command-rail .pos2-register span{font-size:7px}
  .pos2-command-rail .pos2-phone-scanner{overflow:visible;font-size:8px}
  .pos2-mobile-footer{right:68px}
  .pos2-internal{right:68px!important}
  .pos2-catalog{right:68px}
  .pos2-rail-toggle{position:fixed;top:6px;right:5px;width:32px;height:30px}
  .pos2-shell.pos2-rail-hidden .pos2-rail-toggle{top:6px;right:0}
  .pos2-shell.pos2-rail-hidden{padding-right:0}
  .pos2-shell.pos2-rail-hidden .pos2-mobile-footer{right:0}
  .pos2-shell.pos2-rail-hidden :is(.pos2-internal,.pos2-catalog){right:0!important}
}

/* Highlight the CODE entry cell in the POS2 sale grid in every POS2 theme. */
.pos2-shell[data-pos2-theme-current] .pos2-entry-row .pos2-line-code {
  border: 1px solid #e7a45a;
  background: #fff0d9;
  color: #713c12;
}
.pos2-shell[data-pos2-theme-current] .pos2-entry-row .pos2-line-code::placeholder {
  color: #8a5a31;
  opacity: 1;
}
.pos2-shell[data-pos2-theme-current] .pos2-entry-row .pos2-line-code:focus {
  border-color: #22a447;
  outline: 2px solid #86efac;
  outline-offset: 1px;
  background: #dcfce7;
  color: #14532d;
}
.pos2-shell[data-pos2-theme-current] .pos2-entry-row .pos2-line-code:focus::placeholder {
  color: #3f704e;
}
.pos2-shell[data-pos2-theme-current] .pos2-product-suggestions button:hover,
.pos2-shell[data-pos2-theme-current] .pos2-product-suggestions button[aria-selected="true"] {
  background: #dcfce7;
  color: #14532d;
}

/* Light mode keeps every readable label in dark ink; filled controls retain their own contrast text. */
.pos2-shell[data-pos2-theme-current="light"] :is(h1,h2,h3,h4,p,span,small,label,legend,b,strong,th,td,output,code,a){color:#0f172a}
.pos2-shell[data-pos2-theme-current="light"] button,.pos2-shell[data-pos2-theme-current="light"] button *{color:inherit}

/* Compact typography across every POS2 page, workspace and counter-owned window. */
.pos2-shell{line-height:1.18}
.pos2-shell :is(h1,h2,h3,h4){line-height:1.08}
.pos2-shell :is(p,small,label,legend,span,b,strong,th,td,button,input,select,textarea,output,code,a){line-height:1.18}
.pos2-shell :is(.pos2-table th,.pos2-table td,.pos2-internal th,.pos2-internal td,.pos2-service-page th,.pos2-service-page td){line-height:1.15}
.pos2-shell :is(.pos2-nav-button,.pos2-internal-quick-access button,.pos2-service-pages button,.pos2-action,.pos2-payment){line-height:1.1}
:is(.pos2-customer-create-modal,.pos2-quick-product-modal,.pos2-pending-products-modal,.pos2-complete-product-modal,.pos2-held-modal){line-height:1.18}
:is(.pos2-customer-create-modal,.pos2-quick-product-modal,.pos2-pending-products-modal,.pos2-complete-product-modal,.pos2-held-modal) :is(h1,h2,h3,h4){line-height:1.08}
:is(.pos2-customer-create-modal,.pos2-quick-product-modal,.pos2-pending-products-modal,.pos2-complete-product-modal,.pos2-held-modal) :is(p,small,label,legend,span,b,strong,th,td,button,input,select,textarea,output,code,a){line-height:1.18}
@media(min-width:761px){
  .pos2-table th{height:42px;padding-block:6px}
  .pos2-table td{height:56px;padding-block:7px}
  .pos2-internal>header{padding:12px 18px}
  .pos2-internal-body{padding:12px 18px}
  .pos2-internal th,.pos2-internal td{padding:8px 10px}
  .pos2-internal-cards article{min-height:120px;padding:14px}
  .pos2-internal-cards strong{margin:9px 0}
  .pos2-service-page{padding:12px 16px}
  .pos2-service-page .section-head{margin-bottom:14px}
  .pos2-service-page :is(.card,.metric,.summary-card):not(.table-card){padding:12px 14px}
  .pos2-service-page .metric{min-height:96px}
  .pos2-service-page .table-card th,.pos2-service-page .table-card td{padding:8px 12px}
  .pos2-catalog-head{padding:10px 15px}
  .pos2-catalog-body{padding:12px}
  .pos2-category-card,.pos2-product-card{padding:10px 12px}
  :is(.pos2-customer-create-modal,.pos2-quick-product-modal,.pos2-pending-products-modal,.pos2-complete-product-modal,.pos2-held-modal) :is(.modal-head,.modal-body){padding:14px 18px}
  :is(.pos2-customer-create-modal,.pos2-quick-product-modal,.pos2-pending-products-modal,.pos2-complete-product-modal,.pos2-held-modal) .modal-foot{padding:11px 18px}
  :is(.pos2-customer-create-modal,.pos2-quick-product-modal,.pos2-pending-products-modal,.pos2-complete-product-modal,.pos2-held-modal) .form-grid{gap:10px 12px}
  .pos2-pending-product-list article,.pos2-held-list article{padding:8px 10px}
}

/* Keep POS2 navigation at one stable row; secondary pages and ordering live in More. */
.pos2-main{position:relative}
.pos2-side-toggle{position:absolute;z-index:20;top:8px;right:8px;display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--p2-line,#31415c);border-radius:999px;background:color-mix(in srgb,var(--p2-elevated,#030918) 88%,transparent);box-shadow:0 5px 16px #0008;color:var(--p2-text,#e6edf8);font-size:21px;line-height:1;cursor:pointer;backdrop-filter:blur(6px)}
.pos2-side-toggle span{display:none}.pos2-side-toggle::before{width:17px;height:11px;border:2px solid currentColor;border-radius:50% 10%;content:'';transform:rotate(45deg)}.pos2-side-toggle::after{position:absolute;width:5px;height:5px;border-radius:50%;background:currentColor;content:''}
.pos2-side-toggle:hover,.pos2-side-toggle:focus-visible{border-color:var(--p2-blue,#53a8ff);outline:2px solid var(--p2-blue,#53a8ff);outline-offset:1px}
.pos2-main.pos2-side-hidden{grid-template-columns:minmax(0,1fr)}
.pos2-main.pos2-side-hidden .pos2-side{display:none}
.pos2-main.pos2-side-hidden .pos2-cart{border-right:0}
.pos2-main .pos2-side{padding-top:13px}
.pos2-nav-button{gap:2px;font-size:8px;letter-spacing:.15px}
.pos2-nav-button .pos2-icon{width:32px;height:32px}
.pos2-more-row[data-pos2-more-page]{grid-template-columns:auto minmax(0,1fr) auto}
.pos2-more-choice{width:17px;height:17px;margin:0 2px 0 7px;accent-color:var(--p2-action,#10d7a0);cursor:pointer}
.pos2-more-choice:focus-visible{outline:2px solid var(--p2-blue,#53a8ff);outline-offset:2px}
@media(max-width:760px){.pos2-side-toggle{top:8px;right:8px}.pos2-main.pos2-side-hidden .pos2-side{display:none}}
.pos2-nav{height:76px;min-height:76px;max-height:76px;flex-wrap:nowrap;padding-block:6px}.pos2-nav-items{position:relative;min-width:0;flex:1 1 0;flex-wrap:nowrap;align-items:stretch;overflow:visible}.pos2-nav-items>.pos2-nav-button[hidden]{display:none!important}.pos2-nav-button{min-height:62px}.pos2-more{position:relative;display:flex;flex:0 0 auto}.pos2-more-toggle{height:100%}.pos2-more-menu{position:absolute;z-index:80;top:calc(100% + 7px);right:0;width:310px;max-height:min(620px,calc(100vh - 90px));padding:8px;overflow:auto;border:1px solid var(--p2-line);border-radius:11px;background:var(--p2-panel);box-shadow:0 20px 55px #020617cc}.pos2-more-menu[hidden]{display:none}.pos2-more-menu>span{display:block;padding:5px 7px 8px;color:var(--p2-muted);font-size:10px;font-weight:900;letter-spacing:.7px;text-transform:uppercase}.pos2-more-menu>.pos2-more-section-title{margin-top:8px;padding-top:11px;border-top:1px solid var(--p2-line)}.pos2-more-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px;border-radius:8px}.pos2-more-row.in-more{background:color-mix(in srgb,var(--p2-blue) 7%,transparent)}.pos2-more-link{display:flex;min-width:0;align-items:center;gap:10px;padding:8px;border:0;border-radius:7px;background:transparent;color:var(--p2-text);text-align:left;cursor:pointer}.pos2-more-link:hover,.pos2-more-link:focus-visible,.pos2-more-link.active{background:var(--p2-hover);outline:none}.pos2-more-link .pos2-icon{width:20px;height:20px;flex:0 0 auto;color:var(--tone)}.pos2-more-link>span{min-width:0;font-size:11px;font-weight:850}.pos2-more-link small{display:block;margin-top:2px;color:var(--p2-muted);font-size:8px;font-weight:800;text-transform:uppercase}.pos2-more-control-label{padding:9px 8px;color:var(--p2-text);font-size:11px;font-weight:850}.pos2-more-order{display:flex;gap:3px}.pos2-more-order button{display:grid;width:29px;height:29px;padding:0;place-items:center;border:1px solid var(--p2-line);border-radius:6px;background:var(--p2-elevated);color:var(--p2-text);cursor:pointer}.pos2-more-order button:hover,.pos2-more-order button:focus-visible{border-color:var(--p2-blue);outline:none}.pos2-more-order button:disabled{opacity:.3;cursor:default}
@media (min-width:761px) and (max-width:1024px){.pos2-nav{height:68px;min-height:68px;max-height:68px;flex-wrap:nowrap;padding:4px 7px}.pos2-nav-items{display:flex;flex:1 1 auto;grid-template-columns:none;gap:1px}.pos2-brand{min-width:58px;padding-inline:5px;font-size:10px}.pos2-nav-button{min-width:40px;min-height:58px;padding:3px 2px;font-size:6px}.pos2-nav-button .pos2-icon{width:27px;height:27px}.pos2-window-controls{gap:3px}.pos2-register,.pos2-phone-scanner,.pos2-fullscreen,.pos2-exit,.pos2-theme-trigger,.pos2-product-alert{width:38px;height:38px;min-width:38px;justify-content:center;padding:0}.pos2-register span,.pos2-phone-scanner span,.pos2-fullscreen span,.pos2-exit span{display:none}.pos2-internal{inset:68px 0 34px}}
@media(max-width:760px){.pos2-nav{height:68px;min-height:68px;max-height:68px;flex-wrap:nowrap;padding:4px 6px}.pos2-nav-items{display:flex;min-width:0;flex:1 1 0;grid-template-columns:none;flex-wrap:nowrap;gap:2px;overflow:visible}.pos2-brand{min-width:52px;padding-inline:4px;font-size:9px}.pos2-nav-items>.pos2-nav-button{min-width:48px;min-height:58px;padding:2px;font-size:6px}.pos2-nav-items>.pos2-nav-button .pos2-icon{width:26px;height:26px}.pos2-more-toggle{display:grid!important;font-size:6px}.pos2-more-menu{position:fixed;top:70px;right:6px;left:6px;width:auto;max-height:calc(100dvh - 82px)}.pos2-window-controls{gap:2px}.pos2-register,.pos2-phone-scanner,.pos2-fullscreen,.pos2-exit,.pos2-theme-trigger,.pos2-product-alert{width:36px;height:36px;min-width:36px;justify-content:center;padding:0}.pos2-register span,.pos2-phone-scanner span,.pos2-fullscreen span,.pos2-exit span{display:none}.pos2-internal{inset:68px 0 0}}

/* The shell's button font shorthand otherwise replaces the header label size. */
.pos2-shell .pos2-nav-button{font-size:8px}
.pos2-shell .pos2-nav-button .pos2-icon{width:32px;height:32px}
@media(max-width:1024px){.pos2-shell .pos2-nav-button{font-size:7px}.pos2-shell .pos2-nav-button .pos2-icon{width:27px;height:27px}}

.pos2-actions>.pos2-action[data-pos2-hold],.pos2-actions>.pos2-action[data-pos2-retrieve]{height:28px!important;min-height:28px!important;align-self:center;padding-block:0!important;font-size:10px}
.pos2-home{display:flex;height:43px;align-items:center;gap:7px;padding:0 13px;border:1px solid #34709b;border-radius:9px;background:#123452;color:#d7efff;font-size:12px;font-weight:900;white-space:nowrap;cursor:pointer}.pos2-home:hover,.pos2-home:focus-visible{border-color:#7dc9ff;background:#174969;outline:2px solid #70c4ff;outline-offset:2px}
.pos2-last-transaction-picker{display:grid;grid-template-columns:minmax(0,1fr);gap:5px;margin-top:8px}.pos2-last-transaction-picker>span{color:var(--p2-muted,#8493aa);font-size:11px;font-weight:900;letter-spacing:.35px;text-transform:uppercase}.pos2-last-transaction-picker select{display:block;width:100%;min-width:0;height:36px;padding:0 8px;border:1px solid var(--p2-line,#26354d);border-radius:6px;background:var(--p2-panel-2,#111b30);color:var(--p2-text,#e6edf8);font:600 12px ui-monospace,SFMono-Regular,Consolas,monospace;text-overflow:ellipsis}.pos2-last-transaction-picker select:focus-visible{outline:2px solid var(--p2-blue,#53a8ff);outline-offset:1px}.pos2-received-input{display:flex;align-items:center;gap:6px}.pos2-received-clear{height:30px;padding:0 8px;border:1px solid #43546f;border-radius:6px;background:#1d2a3e;color:#cbd5e1;font-size:10px;font-weight:900;cursor:pointer}.pos2-received-clear:hover,.pos2-received-clear:focus-visible{border-color:#76b8ed;background:#294461;color:#fff;outline:2px solid #53a8ff;outline-offset:1px}

.pos2-last-transaction-picker select{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.pos2-last-transaction-preview{margin-left:7px;padding:3px 6px;border:1px solid #3c678d;border-radius:5px;background:#16334d;color:#bde4ff;font-size:9px;font-weight:900;white-space:nowrap;cursor:pointer}.pos2-last-transaction-preview:hover,.pos2-last-transaction-preview:focus-visible{border-color:#80c8ff;background:#1d4667;color:#fff;outline:2px solid #53a8ff;outline-offset:1px}
.pos2-last div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-content:initial;gap:7px 10px;margin-top:9px;font-size:13px}.pos2-last div>span{min-width:0;overflow-wrap:anywhere;font-size:12px;line-height:1.35}.pos2-last-processed{grid-column:1/-1;color:var(--p2-green,#17d7a3);font-size:11px;font-weight:700;line-height:1.35}
.pos2-last div>b{color:#c2410c}
.pos2-last header{display:grid;grid-template-columns:max-content minmax(0,1fr) auto;align-items:center;gap:10px;font-size:13px}.pos2-last header>span{color:var(--p2-text,#e6edf8);font-size:14px;letter-spacing:0;text-transform:none;white-space:nowrap}.pos2-last header .pos2-last-processed{grid-column:auto;justify-self:center;white-space:nowrap}.pos2-last div{grid-template-columns:minmax(0,1fr) auto auto minmax(90px,.55fr);gap:7px;padding:7px 8px;border:1px solid #b9d6ff;border-radius:8px;background:#e7f0ff}.pos2-last div>span.pos2-last-reference{overflow:hidden;color:#172b4d;font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.pos2-last div>b{color:#c2410c;font-size:14px;white-space:nowrap}.pos2-last div>select{width:100%;min-width:0;height:34px;padding:0 7px;border:1px solid #b9c7da;border-radius:5px;background:#fff;color:#172b4d;font:600 11px 'DM Sans',sans-serif;text-overflow:ellipsis}.pos2-last-transaction-preview{margin:0;justify-self:start;padding:6px 8px;font-size:11px}
.pos2-shell[data-pos2-theme-current] .pos2-table-wrap{background:#fff}
.pos2-shell[data-pos2-theme-current] tr[data-pos2-row] td{background:#e9f8ef;border-bottom-color:#b9e4c8;color:#174b32}.pos2-shell[data-pos2-theme-current] tr[data-pos2-row] td.pos2-cell-description{color:#174b32}.pos2-shell[data-pos2-theme-current] tr[data-pos2-row] .pos2-line-total{color:#08704b}.pos2-shell[data-pos2-theme-current] .pos2-entry-row td{background:#fff4df;border-bottom-color:#f1d19a;color:#6b421e}

/* Keep billing-column labels crisp against every POS theme. */
.pos2-shell[data-pos2-theme-current] .pos2-table th{border-right:1px solid #315477;border-bottom-color:#50779d;background:linear-gradient(180deg,#183b61 0%,#0b2745 100%);box-shadow:inset 0 1px #ffffff1f,inset 0 -1px #06192d;color:#f8fafc;text-shadow:0 1px 1px #020617}
.pos2-shell[data-pos2-theme-current] .pos2-table th:last-child{border-right:0}
.pos2-shell :is([data-pos2-exit],[data-pos2-fullscreen]){display:none!important}
/* POS3 is the same full-window counter surface as POS2, with its own cashier-first controls. */
body:has(#app[data-view="pos3"]){height:100dvh;overflow:hidden;background:#020617}body:has(#app[data-view="pos3"]) .shell{width:100%;height:100dvh;min-height:0;grid-template-columns:1fr}body:has(#app[data-view="pos3"]) .sidebar,body:has(#app[data-view="pos3"]) .topbar{display:none}body:has(#app[data-view="pos3"]) main{display:flex;height:100dvh;min-height:0;grid-column:1;flex-direction:column;overflow:hidden}#app[data-view="pos3"]{width:100%;height:auto;min-height:0;max-width:none;flex:1 1 0;padding:0;overflow:hidden}#app[data-view="pos3"] .pos2-shell{height:100%;min-height:0}
@media(min-width:761px){html:has(#app[data-view="pos3"]){width:100%;height:100%;overflow:hidden}body:has(#app[data-view="pos3"]){width:100%;max-width:100vw;min-height:0;max-height:100dvh}body:has(#app[data-view="pos3"]) .shell,body:has(#app[data-view="pos3"]) main{min-width:0;min-height:0;max-width:100vw;max-height:100dvh;overflow:hidden}#app[data-view="pos3"]{min-width:0;max-width:100%;max-height:100%;overflow:hidden}#app[data-view="pos3"] .pos2-shell{min-width:0;max-width:100%;max-height:100%}}
@media(max-width:760px){body:has(#app[data-view="pos3"]){height:auto;overflow:auto}#app[data-view="pos3"]{overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain}}
@media (min-width:761px) and (max-width:1024px){body:has(#app[data-view="pos3"]){height:auto;min-height:100dvh;overflow:auto}body:has(#app[data-view="pos3"]) .shell,body:has(#app[data-view="pos3"]) main,#app[data-view="pos3"]{height:auto;max-height:none;overflow:visible}#app[data-view="pos3"] .pos2-shell{height:auto;min-height:100dvh;max-height:none;overflow:visible;grid-template-rows:auto auto auto auto auto}}

/* Classic point-of-sale toolbar: compact glossy buttons keep the familiar
   desktop-counter affordance while the DOM labels preserve accessibility. */
.pos2-shell.pos2-classic-toolbar .pos2-nav{height:76px;min-height:76px;max-height:76px;gap:6px;padding:4px 8px;border-bottom:1px solid #77a8d1;background:linear-gradient(180deg,#f8fdff 0%,#dceeff 52%,#c4e0f6 100%);box-shadow:inset 0 1px #fff,inset 0 -1px #a4c8e4;color:#172a3c}
.pos2-shell.pos2-classic-toolbar .pos2-nav-items{gap:3px}
.pos2-shell.pos2-classic-toolbar .pos2-brand{min-width:58px;margin:2px 4px 2px 0;padding:5px 6px;border-color:#148a7f;border-radius:4px;background:linear-gradient(145deg,#12a997,#006b64);box-shadow:inset 0 1px #8ff5e4,0 1px 2px #5c87aa;color:#fff;font-size:10px;letter-spacing:.45px}
.pos2-shell.pos2-classic-toolbar .pos2-nav-button{min-width:58px;min-height:64px;gap:3px;padding:4px 5px;border:1px solid #8cb9df;border-radius:4px;background:linear-gradient(180deg,#faffff 0%,#e4f3ff 48%,#c8e3f8 100%);box-shadow:inset 0 1px #fff,inset 0 -1px #9bc4e4,0 1px 2px #7595af;color:#172a3c;font-size:8px;font-weight:900;letter-spacing:0;text-shadow:0 1px #fff}
.pos2-shell.pos2-classic-toolbar .pos2-nav-button .pos2-icon{width:42px;height:42px;padding:3px;border:1px solid color-mix(in srgb,var(--tone) 38%,#7ba7cb);border-radius:6px;background:linear-gradient(145deg,#fff,#d5edff 58%,color-mix(in srgb,var(--tone) 32%,#b7d9f2));box-shadow:inset 0 1px #fff,0 2px 3px #557a9b80;color:var(--tone);filter:drop-shadow(0 1px 0 #fff)}
.pos2-shell.pos2-classic-toolbar .pos2-nav-button:hover,.pos2-shell.pos2-classic-toolbar .pos2-nav-button:focus-visible{border-color:#3985bb;background:linear-gradient(180deg,#fff 0%,#d9efff 48%,#aed8f5 100%);box-shadow:inset 0 1px #fff,0 0 0 2px #80c8f266;outline:none}
.pos2-shell.pos2-classic-toolbar .pos2-nav-button.active{border-color:#08796e;background:linear-gradient(180deg,#ebfffb 0%,#bceee2 50%,#8ad6c7 100%);box-shadow:inset 0 1px #fff,0 0 0 2px #2dc9af55;color:#072c2a}
.pos2-shell.pos2-classic-toolbar .pos2-nav-button.active .pos2-icon{border-color:#079d8c;background:linear-gradient(145deg,#f2fffc,#bdf6e8 58%,#65cdbc);color:#04776a}
.pos2-shell.pos2-classic-toolbar .pos2-more-toggle{height:64px}
.pos2-shell.pos2-classic-toolbar .pos2-window-controls{margin-right:3px}
@media(max-width:1024px){.pos2-shell.pos2-classic-toolbar .pos2-nav{height:68px;min-height:68px;max-height:68px;padding:3px 5px}.pos2-shell.pos2-classic-toolbar .pos2-nav-button,.pos2-shell.pos2-classic-toolbar .pos2-nav-items>.pos2-nav-button{min-width:48px;min-height:60px;padding:3px 2px;font-size:6px}.pos2-shell.pos2-classic-toolbar .pos2-nav-button .pos2-icon{width:35px;height:35px;padding:2px}.pos2-shell.pos2-classic-toolbar .pos2-more-toggle{height:60px}.pos2-shell.pos2-classic-toolbar .pos2-internal{inset:68px 0 34px}}
@media(max-width:760px){.pos2-shell.pos2-classic-toolbar .pos2-nav{height:66px;min-height:66px;max-height:66px}.pos2-shell.pos2-classic-toolbar .pos2-brand{min-width:48px;font-size:8px}.pos2-shell.pos2-classic-toolbar .pos2-nav-items>.pos2-nav-button{min-width:44px;min-height:58px}.pos2-shell.pos2-classic-toolbar .pos2-more-menu{top:68px}.pos2-shell.pos2-classic-toolbar .pos2-internal{inset:66px 0 0}}


/* Hold/retrieve belong with the catalog tools beside product search. */
.pos2-scan-action{display:flex;min-width:112px;align-items:center;justify-content:center;padding:0 14px;border:1px solid var(--p2-line);border-radius:9px;background:var(--p2-panel-2);color:var(--p2-text);font-size:11px;font-weight:900;cursor:pointer;white-space:nowrap}.pos2-scan-action:hover,.pos2-scan-action:focus-visible{border-color:#59a9ff;background:var(--p2-hover);outline:none}
@media(max-width:760px){.pos2-scanbar{flex-wrap:wrap}.pos2-scan{flex-basis:calc(100% - 58px)}.pos2-scan-action{min-width:0;min-height:40px;flex:1 1 calc(50% - 5px);font-size:10px}}

/* Keep the desktop product-entry tools compact: half the former 56px control height. */
@media(min-width:761px){.pos2-scanbar{padding-block:6px}.pos2-scan input{height:28px;padding-right:110px;font-size:12px}.pos2-scan small{right:10px;font-size:8px}.pos2-scan>.pos2-icon{left:10px;width:18px;height:18px}.pos2-scan input{padding-left:37px}.pos2-catalog-button,.pos2-scan-action{height:28px;min-height:28px;border-radius:6px}.pos2-catalog-button{min-width:104px;gap:6px;font-size:11px}.pos2-catalog-button .pos2-icon{width:17px;height:17px}.pos2-scan-action{min-width:88px;padding-inline:10px;font-size:9px}}

/* The cart column-heading row is half its former 42px desktop height. */
@media(min-width:761px){.pos2-table th{height:21px;padding-block:3px;font-size:10px}}

/* Keep the description/product entry compact while giving it 50% more height than the former 19px control. */
@media(min-width:761px){.pos2-entry-row .pos2-line-code{height:29px;padding-block:0;font-size:10px}}

/* Give the POS2 page navigation 150% of its former vertical space. */
.pos2-shell .pos2-nav{height:114px;min-height:114px;max-height:114px}.pos2-shell .pos2-nav-button{min-height:93px}.pos2-shell .pos2-internal{inset:114px 0 34px}
@media(max-width:1024px){.pos2-shell .pos2-nav{height:102px;min-height:102px;max-height:102px}.pos2-shell .pos2-nav-button,.pos2-shell .pos2-nav-items>.pos2-nav-button{min-height:87px}.pos2-shell .pos2-internal{inset:102px 0 34px}}
@media(max-width:760px){.pos2-shell .pos2-internal{inset:102px 0 0}.pos2-shell .pos2-more-menu{top:104px;max-height:calc(100dvh - 116px)}}

/* POS3 keeps only the controls needed to scan, tender, and complete a sale. */
.pos3-cashier-focus-toggle{height:43px;min-height:43px;padding:0 11px;border:1px solid #4eb8a6;border-radius:7px;background:linear-gradient(180deg,#eafff8,#b9eee0);box-shadow:inset 0 1px #fff;color:#07594f;font:800 11px/1 system-ui,sans-serif;cursor:pointer;white-space:nowrap}.pos3-cashier-focus-toggle:hover,.pos3-cashier-focus-toggle:focus-visible{border-color:#087c6d;background:#d9fff4;outline:2px solid #48c8b1;outline-offset:2px}.pos3-shell .pos2-nav{min-height:76px;height:76px;max-height:76px;padding:8px 12px;gap:12px}.pos3-shell.pos3-cashier-focus .pos2-nav{display:none}.pos3-shell .pos2-nav-items{display:none}.pos3-tile-nav{display:flex;min-width:0;flex:1;align-items:stretch;gap:7px;overflow-x:auto;scrollbar-width:thin}.pos3-header-tile{display:grid;min-width:70px;min-height:58px;place-items:center;align-content:center;gap:4px;padding:6px 10px;border:1px solid #2d4f57;border-radius:10px;background:linear-gradient(145deg,#102b35,#0b1e29);box-shadow:inset 0 1px #ffffff12;color:#c8e2e6;font-size:10px;font-weight:800;letter-spacing:.25px;cursor:pointer}.pos3-header-tile .pos2-icon{width:23px;height:23px;color:#62d8c1}.pos3-header-tile:hover,.pos3-header-tile:focus-visible{border-color:#58c9b5;background:#153944;outline:2px solid #77e5d1;outline-offset:2px}.pos3-header-tile.active{border-color:#50c8b2;background:linear-gradient(145deg,#087b6d,#0d5d59);box-shadow:0 5px 16px #052d2a99;color:#fff}.pos3-header-tile.active .pos2-icon{color:#fff}.pos3-shell.pos3-cashier-focus{grid-template-columns:minmax(0,1fr)}.pos3-shell.pos3-cashier-focus .pos2-command-rail,.pos3-shell.pos3-cashier-focus .pos2-rail-toggle,.pos3-shell.pos3-cashier-focus .pos2-control-right,.pos3-shell.pos3-cashier-focus .pos2-system{display:none}.pos3-shell.pos3-cashier-focus .pos2-nav{min-height:76px;height:76px;max-height:76px}.pos3-shell .pos2-window-controls{margin-left:auto}.pos3-shell.pos3-cashier-focus .pos2-controlbar{min-height:48px}.pos3-shell.pos3-cashier-focus .pos2-main{grid-column:1}.pos3-shell .pos2-internal{inset:76px 0 34px}.pos3-shell.pos3-cashier-focus .pos2-internal{inset:0 0 34px}@media(max-width:760px){.pos3-shell .pos2-nav,.pos3-shell.pos3-cashier-focus .pos2-nav{min-height:68px;height:68px;max-height:68px;padding:5px 7px;gap:7px}.pos3-tile-nav{gap:5px}.pos3-header-tile{min-width:57px;min-height:55px;padding:4px 6px;font-size:8px}.pos3-header-tile .pos2-icon{width:20px;height:20px}.pos3-shell .pos2-internal{inset:68px 0 0}.pos3-shell.pos3-cashier-focus .pos2-internal{inset:0}.pos3-shell .pos2-control-left{grid-template-columns:minmax(0,1fr) auto auto}.pos3-cashier-focus-toggle{height:40px;min-height:40px;padding-inline:8px;font-size:10px}}

.pos2-shell.pos2-cashier-focus{grid-template-columns:minmax(0,1fr)}.pos2-shell.pos2-cashier-focus .pos2-nav-items,.pos2-shell.pos2-cashier-focus .pos2-command-rail,.pos2-shell.pos2-cashier-focus .pos2-rail-toggle,.pos2-shell.pos2-cashier-focus .pos2-control-right,.pos2-shell.pos2-cashier-focus .pos2-system,.pos2-shell.pos2-cashier-focus .pos2-nav{display:none}.pos2-shell.pos2-cashier-focus .pos2-window-controls{margin-left:auto}.pos2-shell.pos2-cashier-focus .pos2-controlbar{min-height:48px}.pos2-shell.pos2-cashier-focus .pos2-main{grid-column:1}.pos2-shell.pos2-cashier-focus .pos2-internal{inset:0 0 34px}@media(max-width:760px){.pos2-shell.pos2-cashier-focus .pos2-internal{inset:0}}

/* Hidden focus-mode rows must not move the checkout strip into the flexible cart track. */
:is(.pos2-shell.pos2-cashier-focus,.pos3-shell.pos3-cashier-focus){grid-template-rows:auto minmax(0,1fr) auto}
:is(.pos2-shell.pos2-cashier-focus,.pos3-shell.pos3-cashier-focus)>.pos2-controlbar{grid-row:1}
:is(.pos2-shell.pos2-cashier-focus,.pos3-shell.pos3-cashier-focus)>.pos2-main{grid-row:2}
:is(.pos2-shell.pos2-cashier-focus,.pos3-shell.pos3-cashier-focus)>.pos2-bottom{grid-row:3}
:is(.pos2-shell.pos2-cashier-focus,.pos3-shell)>.pos2-bottom{gap:6px;padding:3px 7px}
:is(.pos2-shell.pos2-cashier-focus,.pos3-shell)>.pos2-bottom :is(.pos2-last,.pos2-grand){padding:2px 7px}
:is(.pos2-shell.pos2-cashier-focus,.pos3-shell)>.pos2-bottom .pos2-last header{font-size:11px;line-height:1}
:is(.pos2-shell.pos2-cashier-focus,.pos3-shell)>.pos2-bottom .pos2-last div{margin-top:1px;padding:1px 4px}
:is(.pos2-shell.pos2-cashier-focus,.pos3-shell)>.pos2-bottom .pos2-last div>select{height:26px}
:is(.pos2-shell.pos2-cashier-focus,.pos3-shell)>.pos2-bottom .pos2-last-transaction-preview{padding:3px 5px}
:is(.pos2-shell.pos2-cashier-focus,.pos3-shell)>.pos2-bottom .pos2-action{min-height:36px;gap:5px;line-height:1}
@media(min-width:761px) and (max-width:1024px){.pos3-shell{grid-template-rows:auto auto minmax(auto,1fr) auto auto}:is(.pos2-shell.pos2-cashier-focus,.pos3-shell.pos3-cashier-focus){grid-template-rows:auto minmax(auto,1fr) auto}}

/* Make product search the primary cashier action and use the full empty sale row. */
.pos2-entry-search>.pos2-icon{position:absolute;top:50%;left:14px;z-index:1;width:20px;height:20px;color:#8a5a31;transform:translateY(-50%);pointer-events:none}.pos2-entry-search .pos2-line-code{padding-left:43px}:is(.pos2-shell.pos2-cashier-focus,.pos3-shell.pos3-cashier-focus) .pos2-entry-row td{height:36px;padding-block:4px}:is(.pos2-shell.pos2-cashier-focus,.pos3-shell.pos3-cashier-focus) .pos2-entry-search .pos2-line-code{height:26px;padding-right:18px;padding-left:50px;border-width:2px;border-radius:9px;font-size:14px}:is(.pos2-shell.pos2-cashier-focus,.pos3-shell.pos3-cashier-focus) .pos2-entry-search>.pos2-icon{left:17px;width:22px;height:22px}:is(.pos2-shell.pos2-cashier-focus,.pos3-shell.pos3-cashier-focus) .pos2-entry-search .pos2-product-suggestions{font-size:13px}

/* POS3 cashier-focus shortcuts match the 43px Home control. */
.pos3-shell.pos3-cashier-focus .pos3-header-tile{height:43px;min-height:43px}

/* POS3 header cards use stable colors so each cashier destination is immediately recognizable. */
.pos3-header-tile[data-pos2-tab="transaction"]{border-color:#27c8aa;background:linear-gradient(145deg,#087c6d,#07594f);color:#ecfdf5}.pos3-header-tile[data-pos2-tab="product"]{border-color:#7d8cff;background:linear-gradient(145deg,#3949b8,#28358d);color:#eef2ff}.pos3-header-tile[data-pos2-tab="customer"]{border-color:#cf7ee9;background:linear-gradient(145deg,#9333aa,#6b217f);color:#fdf4ff}.pos3-header-tile[data-pos2-tab="sales"]{border-color:#f1ae48;background:linear-gradient(145deg,#b85d08,#85400a);color:#fffbeb}.pos3-header-tile[data-pos2-tab="reports"]{border-color:#5caef5;background:linear-gradient(145deg,#1265b0,#0b4b86);color:#eff6ff}.pos3-header-tile[data-pos2-tab="shift"]{border-color:#f37d94;background:linear-gradient(145deg,#b6294b,#7f1735);color:#fff1f2}.pos3-header-tile[data-pos2-tab] .pos2-icon{color:currentColor}.pos3-header-tile[data-pos2-tab]:hover,.pos3-header-tile[data-pos2-tab]:focus-visible{filter:brightness(1.14);outline-color:currentColor}.pos3-header-tile[data-pos2-tab].active{box-shadow:0 0 0 2px color-mix(in srgb,currentColor 40%,transparent),0 5px 16px #02061799;filter:brightness(1.16)}

/* Transaction UOM stays compact and readable in POS2 and POS3. */
.pos2-cell-uom{min-width:112px}.pos2-cell-uom select{width:100%;min-width:96px;height:32px;padding:0 7px;border:1px solid var(--p2-line,#31415c);border-radius:6px;background:var(--p2-elevated,#030918);color:var(--p2-text,#e6edf8);font-size:11px;font-weight:750}.pos2-cell-uom small{display:block;margin-top:3px;color:var(--p2-muted,#8493aa);font-size:9px;white-space:nowrap}
.pos2-cell-mrp{min-width:190px;text-align:left!important;font-family:inherit!important}.pos2-cell-mrp select{width:100%;max-width:220px;height:34px;padding:0 7px;border:1px solid var(--p2-line,#31415c);border-radius:6px;background:var(--p2-elevated,#030918);color:var(--p2-text,#e6edf8);font-size:10px;font-weight:800}.pos2-cell-mrp select:focus-visible{border-color:var(--p2-blue,#58aaff);outline:2px solid color-mix(in srgb,var(--p2-blue,#58aaff) 35%,transparent);outline-offset:1px}.pos2-cell-mrp select[aria-invalid="true"]{border-color:#fb7185}.pos2-cell-mrp small{display:block;max-width:220px;margin-top:3px;overflow:hidden;color:var(--p2-muted,#8493aa);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.pos2-cell-mrp small.warning{color:#fb7185}.pos2-mrp-value{display:block;color:var(--p2-text,#e6edf8);font:800 12px ui-monospace,SFMono-Regular,Consolas,monospace}
@media(max-width:760px){.pos2-table tr[data-pos2-row]{grid-template-rows:auto auto auto auto}.pos2-table td.pos2-cell-uom{display:block;grid-area:3/1;text-align:left!important}.pos2-table td.pos2-cell-quantity{grid-area:4/1}.pos2-table td.pos2-cell-delete{grid-area:4/2}}
@media(max-width:760px){.pos2-table tr[data-pos2-row]{grid-template-rows:auto auto auto auto}.pos2-table td.pos2-cell-mrp{display:block;grid-area:3/2;min-width:0;align-self:start}.pos2-cell-mrp select{width:150px;max-width:42vw}.pos2-cell-mrp small{max-width:150px;text-align:right}.pos2-table td.pos2-cell-quantity{grid-area:4/1}.pos2-table td.pos2-cell-delete{grid-area:4/2}}

/* Final responsive contract shared by POS2 and POS3. Keep this after the
   counter theme and feature rules so narrow devices cannot inherit a later
   desktop height, fixed side rail, or intrinsic-width overflow. */
@media(max-width:760px){
  html:has(#app:is([data-view="pos2"],[data-view="pos3"])),body:has(#app:is([data-view="pos2"],[data-view="pos3"])){width:100%;max-width:100%;height:100%;min-height:100%;overflow:hidden}
  body:has(#app:is([data-view="pos2"],[data-view="pos3"])) .shell,body:has(#app:is([data-view="pos2"],[data-view="pos3"])) main{width:100%;min-width:0;max-width:100%;height:100dvh;min-height:0;max-height:100dvh;overflow:hidden}
  #app:is([data-view="pos2"],[data-view="pos3"]){width:100%;min-width:0;max-width:100%;height:auto;min-height:0;max-height:none;flex:1 1 0;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain}
  #app:is([data-view="pos2"],[data-view="pos3"]) .pos2-shell{display:block;width:100%;min-width:0;max-width:100%;height:auto;min-height:100%;padding:0 0 calc(94px + env(safe-area-inset-bottom));overflow:visible}
  body:has(#app:is([data-view="pos2"],[data-view="pos3"])) .workspace-footer{position:fixed;z-index:55;right:0;bottom:0;left:0;width:100%;height:47px;min-height:47px;padding:5px 8px max(5px,env(safe-area-inset-bottom))}

  .pos2-shell .pos2-nav,.pos2-shell.pos2-classic-toolbar .pos2-nav,.pos3-shell .pos2-nav,.pos3-shell.pos3-cashier-focus .pos2-nav{position:sticky;top:0;z-index:42;width:100%;height:64px;min-height:64px;max-height:64px;gap:3px;padding:3px 4px;overflow:hidden}
  .pos2-shell .pos2-nav-items{display:flex;min-width:0;flex:1 1 0;flex-wrap:nowrap;gap:2px;overflow:hidden}
  .pos2-shell .pos2-brand,.pos2-shell.pos2-classic-toolbar .pos2-brand{min-width:44px;margin-inline-end:1px;padding-inline:3px;font-size:7px}
  .pos2-shell .pos2-nav-items>.pos2-nav-button,.pos2-shell.pos2-classic-toolbar .pos2-nav-items>.pos2-nav-button{min-width:42px;min-height:56px;padding:2px 1px;font-size:6px}
  .pos2-shell .pos2-nav-button .pos2-icon,.pos2-shell.pos2-classic-toolbar .pos2-nav-button .pos2-icon{width:25px;height:25px;padding:2px}
  .pos2-shell .pos2-more-toggle,.pos2-shell.pos2-classic-toolbar .pos2-more-toggle{height:56px;min-height:56px}
  .pos2-shell .pos2-more-menu{top:66px;right:4px;left:4px;width:auto;max-height:calc(100dvh - 78px)}
  .pos3-tile-nav{min-width:0;gap:4px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity}
  .pos3-header-tile{min-width:54px;min-height:54px;padding:3px 5px;font-size:8px;scroll-snap-align:start}

  .pos2-window-controls{min-width:0;gap:2px}
  .pos2-window-controls :is([data-page-refresh],.pos2-home,.pos2-phone-scanner){display:grid;width:34px;min-width:34px;height:34px;min-height:34px;padding:0;place-items:center;overflow:hidden;font-size:0}
  .pos2-window-controls [data-page-refresh]::before{content:'↻';font-size:18px}
  .pos2-window-controls .pos2-home::before{content:'⌂';font-size:18px}
  .pos2-window-controls .pos2-phone-scanner::before{content:'▣';font-size:17px}
  .pos2-window-controls :is([data-page-refresh],.pos2-home,.pos2-phone-scanner)>span{display:none}

  .pos2-shell,.pos2-shell.pos2-rail-hidden{padding-right:0}
  .pos2-rail-toggle{display:none}
  .pos2-command-rail,.pos2-shell.pos2-rail-hidden .pos2-command-rail{position:relative;z-index:18;top:auto;right:auto;bottom:auto;display:flex;width:100%;height:50px;min-height:50px;flex-direction:row;align-items:stretch;gap:5px;padding:4px 6px;overflow:visible;border-right:0;border-bottom:1px solid var(--p2-line);border-left:0;box-shadow:0 5px 14px #02061726}
  .pos2-command-rail::before{display:none}
  .pos2-command-rail>.pos2-register,.pos2-command-rail>.pos2-phone-scanner,.pos2-command-rail>.pos2-product-alert,.pos2-command-rail>.pos2-theme-control{width:auto;min-width:0;min-height:42px;height:42px;flex:1 1 0;margin:0;padding:4px;overflow:hidden;border-radius:7px}
  .pos2-command-rail>.pos2-register{flex-direction:row;gap:7px;white-space:nowrap}
  .pos2-command-rail>.pos2-register span{display:block;overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}
  .pos2-command-rail>.pos2-phone-scanner{font-size:0}
  .pos2-command-rail>.pos2-phone-scanner::first-letter{font-size:17px}
  .pos2-command-rail>.pos2-theme-control{padding:0}
  .pos2-command-rail>.pos2-theme-control .pos2-theme-trigger{width:100%;min-width:0;min-height:42px;height:42px}
  .pos2-command-rail .pos2-theme-menu{position:fixed;top:116px;right:6px;left:6px;width:auto;max-height:calc(100dvh - 130px);overflow:auto}
  :is(.pos2-shell.pos2-cashier-focus,.pos3-shell.pos3-cashier-focus) .pos2-command-rail{display:none}

  .pos2-controlbar{display:grid;width:100%;grid-template-columns:minmax(0,1fr);gap:6px;padding:6px}
  .pos2-control-left,.pos3-shell .pos2-control-left{display:grid;width:100%;min-width:0;grid-template-columns:minmax(0,1fr) 42px 42px;gap:5px}
  .pos2-customer-search{min-width:0;grid-template-columns:44px minmax(0,1fr);gap:5px}
  .pos2-customer-search .pos2-search-wrap,.pos2-customer-search input{min-width:0}
  .pos2-quick{width:42px;height:42px;padding:0;justify-content:center}
  .pos3-cashier-focus-toggle{display:grid;width:42px;min-width:42px;height:42px;min-height:42px;padding:0;place-items:center;overflow:hidden;font-size:0}
  .pos3-cashier-focus-toggle::before{content:'◎';font-size:19px}
  .pos2-control-right{display:grid;width:100%;min-width:0;grid-template-columns:minmax(0,1fr);gap:4px}
  .pos2-invoice{width:100%;min-width:0;height:34px;padding-inline:8px;overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}

  .pos2-main{display:flex;width:100%;min-width:0;max-width:100%;height:auto;flex-direction:column;overflow:visible}
  .pos2-cart,.pos2-side{width:100%;min-width:0;max-width:100%;overflow:visible}
  .pos2-table-wrap{width:100%;min-width:0;max-width:100%;max-height:340px;padding:6px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}
  .pos2-table,.pos2-table tbody{width:100%;min-width:0;max-width:100%}
  .pos2-table tr[data-pos2-row]{width:100%;min-width:0;grid-template-columns:minmax(0,1fr) minmax(76px,auto);overflow:hidden}
  .pos2-table td.pos2-cell-description{min-width:0;overflow-wrap:anywhere}
  .pos2-table td.pos2-cell-uom{min-width:0}
  .pos2-table td.pos2-cell-uom select{width:min(100%,150px);min-width:0}
  .pos2-scanbar{width:100%;min-width:0;gap:5px;padding:6px}
  .pos2-scan{min-width:0;flex:1 1 calc(100% - 50px)}
  .pos2-scan .pos2-product-suggestions{width:calc(100vw - 24px);max-width:calc(100vw - 24px)}
  .pos2-scan-action{min-width:0;flex:1 1 calc(50% - 3px)}

  .pos2-side{padding:7px}
  .pos2-payments{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}
  .pos2-payment{min-width:0}
  .pos2-received-input{display:grid;width:100%;grid-template-columns:minmax(0,1fr) auto;gap:5px}
  .pos2-received-input .pos2-money-input,.pos2-received-input .pos2-money-input input{width:100%;min-width:0}
  .pos2-bottom{display:block;width:100%;min-width:0;padding:7px}
  .pos2-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;min-height:58px}
  .pos2-action{min-width:0;min-height:52px;padding:4px;font-size:8px}
  .pos2-action span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .pos2-mobile-footer,.pos2-shell.pos2-rail-hidden .pos2-mobile-footer{right:0;bottom:calc(47px + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr) minmax(128px,.9fr);gap:7px;min-height:70px;padding:8px 9px}

  .pos2-shell .pos2-internal,.pos3-shell .pos2-internal{inset:114px 0 calc(47px + env(safe-area-inset-bottom))}
  :is(.pos2-shell.pos2-cashier-focus,.pos3-shell.pos3-cashier-focus) .pos2-internal{inset:0}
  .pos2-internal>header{gap:8px;padding:8px}
  .pos2-internal>header>div:first-child{min-width:0}
  .pos2-internal>header h2{font-size:16px}
  .pos2-internal>header p{font-size:10px}
  .pos2-internal-quick-access{flex-basis:100%;gap:4px;padding-bottom:3px}
  .pos2-internal-body{min-width:0;padding:7px;overflow:auto}
  .pos2-service-page{min-width:0;padding:8px}
}

@media(max-width:420px){
  .pos2-service-page .metrics,.pos2-report-cards,.pos2-shift-values-expanded{grid-template-columns:minmax(0,1fr)}
  .pos2-meta{grid-template-columns:minmax(0,1fr)}
  .pos2-table tr[data-pos2-row]{gap:5px 7px;padding:8px}
  .pos2-qty{grid-template-columns:36px 46px 36px;gap:4px}
  .pos2-qty input{width:46px}
  .pos2-rate{width:72px}
}

@media(min-width:761px) and (max-width:1024px), (min-width:1025px) and (max-height:800px){
  .pos2-shell .pos2-nav,.pos2-shell.pos2-classic-toolbar .pos2-nav{height:68px;min-height:68px;max-height:68px}
  .pos2-shell .pos2-nav-button,.pos2-shell .pos2-nav-items>.pos2-nav-button,.pos2-shell.pos2-classic-toolbar .pos2-nav-button{min-height:58px}
  .pos3-shell .pos2-nav{height:68px;min-height:68px;max-height:68px}
}
@media(min-width:761px) and (max-width:1024px){
  .pos2-shell .pos2-internal,.pos3-shell .pos2-internal{inset:68px 96px 34px 0}
}
@media(min-width:1025px) and (max-height:800px){
  .pos2-shell .pos2-internal,.pos3-shell .pos2-internal{inset:68px 156px 34px 0}
}
.pos2-shell.pos2-rail-hidden .pos2-internal,:is(.pos2-shell.pos2-cashier-focus,.pos3-shell.pos3-cashier-focus) .pos2-internal{right:0}
.pos2-autosave-status{margin-left:auto;color:#b9f6d6}.pos2-autosave-status::before{content:'●';margin-right:6px;color:#34d399}.pos2-autosave-status[data-state="error"]{color:#fecaca}.pos2-autosave-status[data-state="error"]::before{color:#f87171}

.secondary-btn.danger { color: #b64141; border-color: #efc6c6; }
.secondary-btn.danger:hover { background: #fff2f2; }
.desktop-licensing-grid { display: grid; grid-template-columns: minmax(280px, .72fr) minmax(0, 1.8fr); gap: 18px; align-items: start; }
.desktop-tenant-picker { margin-bottom: 18px; }
.desktop-tenant-picker .form-field { max-width: 620px; }
.desktop-tenant-picker small { color: #6d7783; }
.desktop-key-card form { display: grid; gap: 15px; }
.desktop-license-note { display: grid; gap: 4px; padding: 12px; border-radius: 8px; background: #f2f8f7; color: #516067; font-size: 11px; line-height: 1.5; }
.desktop-license-note b { color: #1d3d3e; }
.desktop-generated-key { display: grid; gap: 13px; padding: 16px; border: 1px solid #c5e7df; border-radius: 9px; background: #f5fcfa; }
.desktop-generated-key code { display: block; padding: 13px; border-radius: 7px; background: #10272b; color: #dffff8; font: 700 15px ui-monospace, SFMono-Regular, Consolas, monospace; overflow-wrap: anywhere; user-select: all; }
.desktop-device-card td small { display: block; margin-top: 3px; color: #859095; font-size: 9px; }
.desktop-device-card .table-wrap { overflow: auto; }
@media (max-width: 1050px) { .desktop-licensing-grid { grid-template-columns: 1fr; } }

/* Optional Tauri desktop presentation. The existing browser/PWA interface is unchanged. */
.desktop-ui-variant-setting{margin:4px 0 0;padding:16px;border:1px solid var(--line);border-radius:10px;background:#f8fafb}.desktop-ui-variant-setting legend{padding:0 6px;color:var(--ink);font:700 13px Manrope,sans-serif}.desktop-ui-variant-setting>p{margin:0 0 12px;color:var(--muted);font-size:11px;line-height:1.5}.desktop-ui-variant-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.desktop-ui-variant-options>label{display:grid;grid-template-columns:auto 72px minmax(0,1fr);align-items:center;gap:10px;min-height:76px;padding:10px;border:1px solid #d7e0e3;border-radius:8px;background:#fff;cursor:pointer}.desktop-ui-variant-options>label:hover{border-color:#7bbdb4}.desktop-ui-variant-options>label.active{border-color:var(--teal);box-shadow:0 0 0 2px color-mix(in srgb,var(--teal) 16%,transparent)}.desktop-ui-variant-options input{width:16px;height:16px;accent-color:var(--teal)}.desktop-ui-variant-options label>span:last-child{display:grid;gap:4px}.desktop-ui-variant-options label>span:last-child>b{font-size:12px}.desktop-ui-variant-options small,.desktop-ui-client-note{color:var(--muted);font-size:10px;line-height:1.4}.desktop-ui-client-note{display:block;margin-top:9px}.desktop-ui-choice-preview{position:relative;width:72px;height:48px;overflow:hidden;border:1px solid #bfcbd0;background:#f5f7f8}.desktop-ui-choice-preview i{position:absolute;inset:0 auto 0 0;width:18px;background:#17333a}.desktop-ui-choice-preview b{position:absolute;left:22px;right:4px;top:4px;height:9px;background:#fff;border:1px solid #d7dfe2}.desktop-ui-choice-preview em{position:absolute;left:22px;right:4px;top:17px;bottom:4px;background:repeating-linear-gradient(#fff 0 5px,#dde5e8 6px 7px)}.desktop-ui-choice-preview.classic{border-radius:7px}.desktop-ui-choice-preview.classic i{background:#10272b}.desktop-ui-choice-preview.classic b,.desktop-ui-choice-preview.classic em{border-radius:4px}.desktop-ui-choice-preview.desktop i{background:#172b4d}.desktop-ui-choice-preview.desktop b{background:#e8edf3;border-radius:0}.desktop-ui-choice-preview.desktop em{border-radius:0;background:repeating-linear-gradient(#fff 0 3px,#ced8e1 4px 5px)}.desktop-ui-choice-preview.windows-classic{background:#b8c2ce;border-color:#6e7f91}.desktop-ui-choice-preview.windows-classic i{inset:0 0 auto;width:auto;height:10px;background:linear-gradient(#2876be,#07569f)}.desktop-ui-choice-preview.windows-classic b{left:3px;right:3px;top:13px;height:8px;background:#e9edf2;border-color:#8998a7}.desktop-ui-choice-preview.windows-classic em{left:3px;right:3px;top:24px;bottom:3px;background:repeating-linear-gradient(#fff 0 3px,#b7c7d7 4px 5px)}

.classic-windows-chrome,.classic-windows-status{display:none}

html[data-kola-client="desktop"][data-ui-experience="desktop"]{--ink:#17202b;--muted:#596675;--line:#cfd8e1;--paper:#fff;--ground:#e9edf2;--teal:#0b6dad;--teal-dark:#075a91;--mint:#dcecf8;--shadow:0 2px 7px rgba(22,38,58,.13)}
html[data-kola-client="desktop"][data-ui-experience="desktop"] body{font-family:"Segoe UI",Arial,sans-serif;font-size:13px;background:#e9edf2}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .shell{grid-template-columns:224px minmax(0,1fr)}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .sidebar{width:224px;padding:10px 7px 9px;background:var(--nav);border-right:1px solid var(--sidebar-border)!important;box-shadow:2px 0 8px rgba(17,36,61,.16)}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .sidebar::after{display:none}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .brand{height:34px;padding:0 7px;font:700 17px "Segoe UI",Arial,sans-serif;letter-spacing:0}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .brand-mark{width:24px;height:24px;border-radius:2px;background:var(--sidebar-accent);color:var(--nav);font:700 14px "Segoe UI",Arial,sans-serif}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .company-switcher{margin:9px 2px 8px;padding:7px;border-radius:2px;background:var(--sidebar-panel);border-color:var(--sidebar-panel-border)}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .company-switcher b{font-size:11px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .company-switcher small{color:var(--sidebar-muted)}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .company-dot{width:20px;height:20px;border-width:4px;background:var(--sidebar-accent)}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .nav-label{margin:9px 8px 4px;color:var(--sidebar-muted);font-size:8px}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .nav-item,html[data-kola-client="desktop"][data-ui-experience="desktop"] .nav-subgroup-toggle{min-height:29px;padding:5px 8px;border-radius:2px;color:var(--sidebar-text);font:600 11px "Segoe UI",Arial,sans-serif;gap:8px}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .nav-item span{font-size:13px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .nav-item.active,html[data-kola-client="desktop"][data-ui-experience="desktop"] .nav-item:hover,html[data-kola-client="desktop"][data-ui-experience="desktop"] .nav-subgroup-toggle:hover{background:var(--nav-soft);color:var(--sidebar-strong)}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .nav-item.active::before{left:-7px;top:2px;bottom:2px;width:3px;border-radius:0;background:var(--sidebar-accent);box-shadow:none}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .nav-children{padding-left:7px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .sidebar-foot{padding:8px 4px 0;border-color:var(--sidebar-border)}
html[data-kola-client="desktop"][data-ui-experience="desktop"] main{grid-column:2}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .topbar{height:54px;min-height:54px;padding:6px 18px;background:#f8fafc;border-bottom:1px solid #bdc9d5;box-shadow:0 1px 3px rgba(20,37,57,.08)}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .crumb{gap:0}html[data-kola-client="desktop"][data-ui-experience="desktop"] .crumb>span,html[data-kola-client="desktop"][data-ui-experience="desktop"] .crumb-copy>span{font-size:8px;color:#687789}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .crumb h1{font:600 16px "Segoe UI",Arial,sans-serif;letter-spacing:0}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .top-actions{gap:5px}html[data-kola-client="desktop"][data-ui-experience="desktop"] :is(.icon-btn,.help-btn,.primary-btn,.secondary-btn){height:30px;border-radius:2px;font-family:"Segoe UI",Arial,sans-serif;font-size:11px;box-shadow:none}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .icon-btn{width:31px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .primary-btn{background:#176fa6}html[data-kola-client="desktop"][data-ui-experience="desktop"] .primary-btn:hover{background:#0e5c90}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .workspace-tabs{min-height:31px;background:#dfe5ec;border-bottom-color:#b9c5d0;padding:3px 9px 0}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .workspace-tab{border-radius:2px 2px 0 0}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .app-content{max-width:none;margin:0;padding:15px 19px 36px}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .section-head{margin-bottom:12px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .section-head h2{font:650 18px "Segoe UI",Arial,sans-serif;letter-spacing:0}html[data-kola-client="desktop"][data-ui-experience="desktop"] .section-head p{margin-top:2px;font-size:11px}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .metrics{gap:8px;margin-bottom:11px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .metric{min-height:82px;padding:11px 12px;border-radius:2px;border-color:#c8d2dc;box-shadow:0 1px 2px rgba(24,42,63,.07)}html[data-kola-client="desktop"][data-ui-experience="desktop"] .metric strong{margin:7px 0 2px;font:700 20px "Segoe UI",Arial,sans-serif;letter-spacing:0}html[data-kola-client="desktop"][data-ui-experience="desktop"] .metric .metric-icon{right:10px;top:9px;width:27px;height:27px;border-radius:2px}
html[data-kola-client="desktop"][data-ui-experience="desktop"] :is(.dashboard-grid,.split-layout){gap:11px}
html[data-kola-client="desktop"][data-ui-experience="desktop"] :is(.card,.summary-card,.report-tile){border-radius:2px;border-color:#c8d2dc;box-shadow:0 1px 3px rgba(20,38,59,.07)}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .card{padding:12px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .card-head{margin-bottom:9px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .card-head h3{font:650 13px "Segoe UI",Arial,sans-serif}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .table-card{padding:0}html[data-kola-client="desktop"][data-ui-experience="desktop"] .table-toolbar{padding:9px 11px 7px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .table-toolbar h3{font:650 13px "Segoe UI",Arial,sans-serif}
html[data-kola-client="desktop"][data-ui-experience="desktop"] table{font-size:11px}html[data-kola-client="desktop"][data-ui-experience="desktop"] thead{background:#e3e9ef;color:#34465b;font-size:9px}html[data-kola-client="desktop"][data-ui-experience="desktop"] th{padding:7px 10px}html[data-kola-client="desktop"][data-ui-experience="desktop"] td{padding:7px 10px;border-top-color:#dce3ea}html[data-kola-client="desktop"][data-ui-experience="desktop"] tbody tr:hover{background:#f0f6fb}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .status{padding:2px 6px;border-radius:2px;font-size:9px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .table-footer{padding:7px 10px}
html[data-kola-client="desktop"][data-ui-experience="desktop"] :is(.search,.form-field input,.form-field select,.form-field textarea){border-radius:2px;padding:6px 8px;font-family:"Segoe UI",Arial,sans-serif;font-size:11px}html[data-kola-client="desktop"][data-ui-experience="desktop"] :is(.form-field input,.form-field select){min-height:31px}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .form-grid{gap:9px 11px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .form-field{gap:3px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .form-field label{font-size:10px}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .action-grid{gap:5px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .action{padding:8px;border-radius:2px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .action span{margin-bottom:3px;font-size:14px}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .report-grid{gap:8px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .report-tile{min-height:106px;padding:12px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .report-tile .report-icon{width:29px;height:29px;margin-bottom:8px;border-radius:2px}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .module-browser{gap:8px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .module-browser-group,html[data-kola-client="desktop"][data-ui-experience="desktop"] .module-browser-item{border-radius:2px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .module-browser-item{min-height:52px;padding:8px 10px}
html[data-kola-client="desktop"][data-ui-experience="desktop"] :is(.modal,.entity-lookup-results){border-radius:3px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .modal-head{padding:12px 15px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .modal-body{padding:13px 15px}html[data-kola-client="desktop"][data-ui-experience="desktop"] .modal-foot{padding:9px 15px}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .workspace-footer{background:#1b365d;border-top-color:#102743;color:#fff}
html[data-kola-client="desktop"][data-ui-experience="desktop"] .workspace-footer button{border-radius:1px}

/* Classic Windows ERP is a desktop-only presentation over the same governed pages and data. */
html[data-kola-client="desktop"][data-ui-experience="windows-classic"]{--ink:#111;--muted:#4b5661;--line:#9da9b5;--paper:#f5f5f5;--ground:#aeb9c5;--teal:#145f9e;--teal-dark:#074d89;--mint:#d9e8f6;--shadow:0 1px 3px rgba(0,0,0,.2)}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] body{height:100vh;overflow:hidden;background:#aeb9c5;color:#111;font:13px Tahoma,"Segoe UI",Arial,sans-serif}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .shell{height:100vh;min-height:0;display:block}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .sidebar{display:none!important}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] main{height:100vh;display:flex;flex-direction:column;grid-column:1;min-width:0}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .topbar{display:none}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-chrome{display:block;flex:none;background:#edf0f4;border-bottom:1px solid #66788b}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-menubar{height:33px;display:flex;align-items:stretch;padding:0 4px;background:linear-gradient(#fafafa,#e5e8ec);border-bottom:1px solid #a1acb7}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-menubar details{position:relative}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-menubar summary{height:32px;display:flex;align-items:center;padding:0 12px;list-style:none;cursor:default;user-select:none}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-menubar summary::-webkit-details-marker{display:none}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-menubar details[open]>summary,html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-menubar summary:hover{background:#d9e8f6;outline:1px solid #91add0}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-menubar details>div{position:absolute;z-index:90;top:31px;left:0;min-width:205px;padding:3px;background:#f4f4f4;border:1px solid #7e8a96;box-shadow:3px 4px 8px rgba(0,0,0,.25)}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-menubar details>div button{width:100%;min-height:27px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:4px 22px;border:0;background:transparent;color:#111;font:12px Tahoma,"Segoe UI",sans-serif;text-align:left;white-space:nowrap}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-menubar details>div button:hover,html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-menubar details>div button:focus{background:#176caa;color:#fff;outline:0}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-menubar hr{margin:3px 2px;border:0;border-top:1px solid #aeb5bc;border-bottom:1px solid #fff}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-menubar kbd{border:0;background:transparent;color:inherit;box-shadow:none;font:11px Tahoma,"Segoe UI",sans-serif}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-toolbar{height:78px;display:flex;align-items:stretch;padding:4px 7px;background:linear-gradient(#f8f9fa,#e5e8ec);border-bottom:1px solid #8c9aa8}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-toolbar>button{width:78px;display:grid;place-items:center;align-content:center;gap:2px;border:1px solid transparent;background:transparent;color:#111;font:12px Tahoma,"Segoe UI",sans-serif}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-toolbar>button:hover,html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-toolbar>button:focus-visible{border-color:#7ea7cc;background:linear-gradient(#fff,#dcebf8);outline:0}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-toolbar>button span{height:31px;font:700 27px "Segoe UI Symbol","Segoe UI",sans-serif;line-height:31px;color:#075ca9;text-shadow:0 1px #fff}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-toolbar>button b{font-weight:400}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-toolbar>i{width:1px;margin:3px 6px;background:#aab2ba;border-right:1px solid #fff}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-childbar{height:38px;display:flex;align-items:center;gap:8px;margin:8px 8px 0;padding:0 10px;color:#fff;background:linear-gradient(#4b8ec8,#1768ae 54%,#0d5695);border:1px solid #06477d;border-radius:5px 5px 0 0;font-weight:700;font-size:14px;box-shadow:inset 0 1px rgba(255,255,255,.55)}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-child-controls{margin-left:auto;font:700 18px "Segoe UI",sans-serif;letter-spacing:8px}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .workspace-tabs{display:flex!important;min-height:29px;flex:none;margin:0 8px;padding:3px 4px 0;background:#d5dde6;border:1px solid #76889a;border-top:0}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .workspace-tabs[hidden]{display:none!important}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .workspace-tab{border-radius:0;background:#e8ebee;border-color:#8e9aa6}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .workspace-tab.active{background:#fff;border-bottom-color:#fff}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .app-content{flex:1;min-height:0;max-width:none;width:auto;margin:0 8px;padding:12px 13px 20px;overflow:auto;background:#eef1f4;border:1px solid #76889a;border-top:0;box-shadow:inset 0 0 0 2px #fff}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] :is(.section-head,.card-head){margin-bottom:9px}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .section-head h2{font:700 17px Tahoma,"Segoe UI",sans-serif;letter-spacing:0}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .section-head p,html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .page-subtitle{font-size:10px}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] :is(.card,.summary-card,.report-tile,.metric){border:1px solid #98a5b1;border-radius:2px;background:#f7f7f7;box-shadow:inset 0 1px #fff,0 1px 2px rgba(0,0,0,.08)}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .card{padding:11px}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .metrics{gap:7px;margin-bottom:9px}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .metric{min-height:73px;padding:9px 11px}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .metric strong{margin:5px 0 1px;font:700 18px Tahoma,"Segoe UI",sans-serif}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] :is(.dashboard-grid,.split-layout,.report-grid){gap:9px}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] :is(.primary-btn,.secondary-btn,.icon-btn,.help-btn,.action){min-height:29px;height:auto;border:1px solid #7d8b99;border-radius:2px;padding:5px 11px;background:linear-gradient(#fff,#dfe4e9);box-shadow:inset 0 1px #fff;color:#111;font:12px Tahoma,"Segoe UI",sans-serif}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] :is(.primary-btn,.secondary-btn,.action):hover{background:linear-gradient(#fff,#cfe5f7);border-color:#4c86b6}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] :is(.primary-btn,.secondary-btn,.action):focus-visible{outline:2px solid #125f9e;outline-offset:1px}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] :is(.form-field input,.form-field select,.form-field textarea,.search){min-height:28px;border:1px solid #7f8d9b;border-radius:1px;padding:5px 7px;background:#fff;box-shadow:inset 1px 1px 2px rgba(0,0,0,.12);color:#111;font:12px Tahoma,"Segoe UI",sans-serif}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] :is(.form-field input,.form-field select,.form-field textarea,.search):focus{border-color:#176caf;outline:1px solid #8db7dc}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .form-grid{gap:7px 12px}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .form-field{gap:3px}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .form-field label{font:700 11px Tahoma,"Segoe UI",sans-serif}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .table-card{padding:0;overflow:auto}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .table-toolbar{padding:7px 9px;background:#e8ebef;border-bottom:1px solid #9aa6b1}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] table{border-collapse:collapse;font-size:11px;background:#fff}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] thead{background:linear-gradient(#d8e7f5,#adc8e1);color:#153a60;font-size:10px;text-transform:none;letter-spacing:0}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] :is(th,td){padding:6px 8px;border:1px solid #aab4be}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] tbody tr:nth-child(even){background:#f7f8f9}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] tbody tr:hover{background:#dcecff}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .status{border:1px solid #a1aab2;border-radius:1px;padding:2px 5px}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] :is(.modal,.entity-lookup-results){border:1px solid #52687c;border-radius:2px;box-shadow:5px 7px 20px rgba(0,0,0,.35)}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .modal-head{padding:9px 12px;color:#fff;background:linear-gradient(#4b8ec8,#1768ae);border-bottom-color:#06477d}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .modal-head :is(h2,p){color:#fff}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .modal-body{padding:12px}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .modal-foot{padding:8px 12px;background:#e9ecef;border-top-color:#9da8b3}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .workspace-footer{position:static;flex:none;min-height:36px;padding:3px 8px;background:#dce3ea;border:1px solid #738597;border-inline:8px solid #738597;color:#111}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .workspace-footer button{border-radius:1px;background:#f2f3f4;color:#111}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-status{height:25px;display:grid;grid-template-columns:minmax(120px,1fr) minmax(180px,.8fr) minmax(160px,.7fr) auto 46px 46px;flex:none;background:#e8ebee;border-top:1px solid #8d99a5;color:#111;font:11px Tahoma,"Segoe UI",sans-serif}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-status>*{display:flex;align-items:center;padding:0 8px;border-right:1px solid #aeb6bd;box-shadow:inset 1px 1px #fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-status time{justify-content:flex-end}
@media(max-width:1100px){.desktop-ui-variant-options{grid-template-columns:1fr}html[data-kola-client="desktop"][data-ui-experience="windows-classic"] .classic-windows-toolbar>button{width:66px}}
@media(max-width:760px){.desktop-ui-variant-options{grid-template-columns:1fr}}

.pwa-install-button[hidden],.pwa-layer[hidden],.pwa-network-status[hidden]{display:none!important}
.pwa-install-button{white-space:nowrap}
#pwa-install-button.pwa-install-button,
button[data-business-action="pwa-install"]{background:#2563eb;border-color:#2563eb;color:#fff;box-shadow:0 3px 8px rgba(37,99,235,.28)}
#pwa-install-button.pwa-install-button:hover:not(:disabled),
[data-business-action="pwa-install"]:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8}
#pwa-install-button.pwa-install-button:focus-visible,
[data-business-action="pwa-install"]:focus-visible{outline:3px solid rgba(37,99,235,.3);outline-offset:2px}
#pwa-install-button.pwa-install-button:disabled,
[data-business-action="pwa-install"]:disabled{background:#6f8fd8;border-color:#6f8fd8;color:#fff;box-shadow:none;cursor:not-allowed;opacity:.68}
.pwa-install-button .pwa-install-icon{font-size:15px;margin-right:5px}
.pwa-layer{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:20px;background:rgba(7,25,28,.72);backdrop-filter:blur(3px)}
.pwa-dialog{width:min(430px,100%);border:0;border-radius:16px;background:#fff;color:var(--ink,#17212b);box-shadow:0 28px 80px rgba(0,0,0,.28);padding:24px}
.pwa-dialog-head{display:flex;align-items:flex-start;gap:14px}
.pwa-dialog-icon{width:48px;height:48px;border-radius:12px;flex:0 0 auto}
.pwa-dialog-copy{flex:1;min-width:0}
.pwa-dialog h2{font:800 19px Manrope,sans-serif;margin:1px 0 6px}
.pwa-dialog p{margin:0;color:#66737a;line-height:1.55;font-size:13px}
.pwa-dialog ol{margin:18px 0;padding-left:22px;color:#3d4a50;line-height:1.75;font-size:13px}
.pwa-dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}
.pwa-network-status{position:fixed;z-index:75;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translateX(-50%);max-width:calc(100vw - 32px);border-radius:999px;padding:9px 15px;background:#26373b;color:#fff;box-shadow:0 8px 28px rgba(0,0,0,.22);font-size:12px;font-weight:700;text-align:center}
.pwa-network-status[data-state="offline"]{background:#8b4a16}
.pwa-update-card{position:fixed;z-index:76;right:20px;bottom:max(20px,env(safe-area-inset-bottom));display:flex;align-items:center;gap:12px;max-width:min(420px,calc(100vw - 40px));border:1px solid #dfe7e6;border-radius:12px;padding:12px 14px;background:#fff;box-shadow:0 14px 42px rgba(18,45,48,.2);color:#26373b}
.pwa-update-card p{margin:0;line-height:1.4;font-size:12px}
.pwa-update-card button{flex:0 0 auto}
@media(display-mode:standalone){body{min-height:100dvh}.sidebar{padding-bottom:max(22px,env(safe-area-inset-bottom))}.app-content{padding-bottom:max(42px,calc(env(safe-area-inset-bottom) + 22px))}}
@media(max-width:760px){.pwa-install-button{min-width:42px;padding:0 9px}.pwa-install-button .pwa-install-label{display:none}.pwa-dialog{padding:21px}.pwa-update-card{left:16px;right:16px;bottom:max(16px,env(safe-area-inset-bottom));max-width:none}.form-field input,.form-field select,.form-field textarea{font-size:16px}}
@media(prefers-reduced-motion:reduce){.pwa-layer{backdrop-filter:none}}

.approval-matrix-head{align-items:flex-start}.approval-matrix-guide{display:flex;align-items:center;gap:12px;padding:14px 18px;margin:20px 0;border:1px solid #dbe7f6;border-radius:14px;background:linear-gradient(90deg,#f8fbff,#f7f5ff);overflow:auto;white-space:nowrap}.approval-matrix-guide span{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#64748b;margin-right:auto}.approval-matrix-guide b{font-size:13px;color:#25324a}.approval-matrix-guide i{font-style:normal;color:#8ea3c1}.approval-matrix-list{display:grid;gap:16px}.approval-matrix-card{background:#fff;border:1px solid #dce5ef;border-radius:16px;box-shadow:0 4px 16px rgba(35,55,80,.05);overflow:hidden}.approval-matrix-card.is-inactive{opacity:.7}.approval-matrix-card>header,.approval-matrix-card>footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px}.approval-matrix-card>header{border-bottom:1px solid #edf1f5}.approval-matrix-card>header span:first-child{display:block;margin-bottom:4px;font-size:10px;font-weight:800;letter-spacing:.09em;color:#5b73a2;text-transform:uppercase}.approval-matrix-card h3{margin:0 0 3px;font-size:17px}.approval-matrix-card p,.approval-matrix-card footer small{margin:0;color:#64748b;font-size:13px}.approval-level-flow{display:flex;align-items:stretch;gap:10px;padding:18px 20px;overflow:auto}.approval-level-flow>i{align-self:center;color:#9aabc2;font-style:normal}.approval-level-step{display:flex;gap:11px;min-width:220px;padding:13px;border:1px solid #e1e8f1;border-radius:12px;background:#fbfcfe}.approval-level-number{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:11px;background:#e9efff;color:#3657a6;font-size:12px;font-weight:900}.approval-level-step b{display:block;font-size:13px}.approval-level-step small{display:block;margin:3px 0 8px;color:#718096}.approval-assignees{display:flex;gap:5px;flex-wrap:wrap}.approval-assignees span{padding:3px 7px;border-radius:999px;background:#eef5ff;color:#355a8a;font-size:10px}.approval-assignees span.group{background:#f1edff;color:#634aa4}.approval-matrix-card>footer{background:#fbfcfe;border-top:1px solid #edf1f5}.approval-matrix-modal{width:min(980px,calc(100vw - 32px));max-height:94vh}.approval-matrix-modal .modal-body{max-height:72vh;overflow:auto}.approval-active-field label{display:flex;gap:8px;align-items:center}.approval-active-field input{width:auto}.approval-levels-heading{display:flex;align-items:center;justify-content:space-between;margin:24px 0 10px}.approval-levels-heading b,.approval-levels-heading small{display:block}.approval-levels-heading small{margin-top:3px;color:#64748b}.approval-level-editor{margin-bottom:12px;border:1px solid #dce5ef;border-radius:13px;overflow:hidden;background:#fbfcfe}.approval-level-editor>header{display:grid;grid-template-columns:auto minmax(180px,1fr) auto;gap:10px;align-items:center;padding:10px 12px;background:#f1f5fa;border-bottom:1px solid #dce5ef}.approval-level-editor>header span{font-size:10px;font-weight:900;letter-spacing:.08em;color:#536b94}.approval-level-editor>header input{border:0;background:transparent;font-weight:700;padding:6px}.approval-level-fields{display:grid;grid-template-columns:1fr 1fr 150px;gap:14px;padding:14px}.approval-level-fields label{font-size:12px;font-weight:700;color:#44536a}.approval-level-fields select,.approval-level-fields input[type=number]{display:block;width:100%;margin-top:6px}.approval-level-fields select{min-height:92px}.approval-level-fields small{display:block;margin-top:4px;color:#7b8798;font-weight:400}.approval-level-fields .approval-check{grid-column:1/-1;display:flex;align-items:center;gap:7px}.approval-level-fields .approval-check input{width:auto;margin:0}@media(max-width:760px){.approval-level-fields{grid-template-columns:1fr}.approval-level-fields .approval-check{grid-column:auto}.approval-matrix-card>header,.approval-matrix-card>footer{align-items:flex-start}.approval-matrix-guide{margin-inline:-4px}}

.mobile-business-launch{margin-left:auto}.mobile-business-modal{width:min(1040px,96vw);max-height:92vh}.mobile-business-eyebrow{display:block;color:#18776b;font-size:.72rem;font-weight:800;letter-spacing:.13em;margin-bottom:5px}.mobile-business-status{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#f4f8f7;border:1px solid #dce9e6;border-radius:12px;margin-bottom:16px}.mobile-business-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mobile-business-grid>button{display:flex;gap:13px;text-align:left;background:#fff;border:1px solid #dfe7e5;border-radius:14px;padding:15px;cursor:pointer;color:#17332f}.mobile-business-grid>button:hover,.mobile-business-grid>button:focus-visible{border-color:#168374;box-shadow:0 7px 22px rgba(21,91,82,.12);outline:0}.mobile-business-grid i{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:#e7f5f1;color:#126d62;font-style:normal;font-size:1.2rem}.mobile-business-grid span{display:grid;grid-template-columns:auto 1fr;column-gap:7px;align-items:baseline}.mobile-business-grid small{color:#168374;font-weight:800}.mobile-business-grid b{font-size:.95rem}.mobile-business-grid em{grid-column:1/-1;color:#687b77;font-size:.79rem;font-style:normal;line-height:1.35;margin-top:4px}.mobile-feature-panel{margin-top:18px;padding:18px;border:1px solid #dce7e4;border-radius:14px;background:#fbfdfc}.mobile-feature-panel h3{margin:0 0 8px}.mobile-feature-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.mobile-check{display:flex;gap:8px;align-items:flex-start;margin:12px 0}.mobile-printer-state{display:flex;flex-direction:column;padding:12px;border-radius:10px;background:#eef7f4}.mobile-printer-state small{color:#60736f;margin-top:3px}.mobile-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:14px 0}.mobile-metrics button{display:flex;flex-direction:column;gap:4px;text-align:left;background:#fff;border:1px solid #dce7e4;border-radius:11px;padding:12px;cursor:pointer}.mobile-metrics button:hover{border-color:#168374}.mobile-metrics span,.mobile-metrics small{color:#697a77}.mobile-metrics b{font-size:1.05rem}.mobile-tender-list{display:grid;gap:6px}.mobile-tender-list>span{display:grid;grid-template-columns:1fr 1fr auto;padding:9px 11px;border-bottom:1px solid #e5ecea}.mobile-tender-list em{color:#697a77;font-style:normal}.mobile-summary-net{padding:12px;background:#eaf6f2;border-radius:10px}.mobile-reorder-list{display:grid;gap:7px;margin:14px 0;max-height:360px;overflow:auto}.mobile-reorder-list article{display:grid;grid-template-columns:1fr auto auto;gap:13px;align-items:center;padding:11px;border:1px solid #e1e9e7;border-radius:10px;background:#fff}.mobile-reorder-list span{display:flex;flex-direction:column}.mobile-reorder-list small,.mobile-reorder-list em{color:#687b77;font-style:normal}.mobile-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.mobile-mode-grid button{display:flex;flex-direction:column;text-align:left;gap:4px;padding:12px;border:1px solid #dce7e4;border-radius:10px;background:#fff;cursor:pointer}.mobile-mode-grid button.active{border-color:#168374;background:#eaf6f2}.mobile-mode-grid small{color:#687b77}.mobile-voice-button{white-space:nowrap}.mobile-payment-qr{text-align:center}.mobile-payment-qr img{display:block;width:min(320px,85vw);height:auto;margin:0 auto 14px;border:1px solid #dce7e4;border-radius:14px}.mobile-payment-qr p{max-width:520px;margin:9px auto;color:#62736f}.mobile-payment-qr a{display:inline-block;margin-top:8px;font-weight:700;color:#126d62}
@media(max-width:760px){.mobile-business-grid,.mobile-mode-grid{grid-template-columns:1fr}.mobile-business-modal{width:100vw;max-height:100vh;border-radius:0}.mobile-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-reorder-list article{grid-template-columns:1fr auto}.mobile-reorder-list article em{grid-column:1/-1}.mobile-business-status{align-items:flex-start;flex-direction:column}.mobile-voice-button{padding-inline:10px}}

.android-lite-nav[hidden],.android-lite-layer[hidden]{display:none!important}
@media(max-width:760px){
  html[data-android-lite="true"],html[data-android-lite="true"] body{max-width:100%;overflow-x:hidden}
  html[data-android-lite="true"] .android-lite-nav{position:fixed;z-index:70;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));min-height:64px;padding:5px 5px max(5px,env(safe-area-inset-bottom));border-top:1px solid #dce7e4;background:rgba(255,255,255,.97);box-shadow:0 -10px 30px rgba(20,55,50,.11);backdrop-filter:blur(12px)}
  .android-lite-nav button{position:relative;display:grid;place-items:center;align-content:center;gap:2px;min-width:0;min-height:52px;padding:4px 2px;border:0;border-radius:10px;background:transparent;color:#66746f;font-family:"DM Sans",sans-serif;cursor:pointer}
  .android-lite-nav button span{font-size:20px;line-height:1}.android-lite-nav button b{font-size:10px;line-height:1.2}.android-lite-nav button.active{background:#e9f6f2;color:#087565}.android-lite-nav button.active::before{position:absolute;top:2px;width:22px;height:3px;border-radius:4px;background:#0b8b78;content:""}.android-lite-nav button:focus-visible{outline:3px solid rgba(11,139,120,.3);outline-offset:-2px}
  html[data-android-lite="true"] .app-content{padding-bottom:max(88px,calc(env(safe-area-inset-bottom) + 78px))}
  html[data-android-lite="true"] .pwa-network-status{bottom:max(78px,calc(env(safe-area-inset-bottom) + 70px))}
  .android-lite-layer{position:fixed;z-index:90;inset:0;display:grid;align-items:end}.android-lite-scrim{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(7,25,28,.56);backdrop-filter:blur(2px)}
  .android-lite-sheet{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr);max-height:min(82dvh,760px);border-radius:22px 22px 0 0;background:#f7faf9;box-shadow:0 -18px 55px rgba(6,28,24,.24);overflow:hidden;animation:android-lite-rise .18s ease-out}
  .android-lite-sheet>header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 13px;border-bottom:1px solid #dfe8e5;background:#fff}.android-lite-sheet>header span{color:#0b806f;font-size:9px;font-weight:800;letter-spacing:1.35px}.android-lite-sheet>header h2{margin:3px 0 0;font:800 20px Manrope,sans-serif}.android-lite-sheet>header button{display:grid;place-items:center;width:38px;height:38px;border:1px solid #dce6e3;border-radius:50%;background:#f4f8f7;color:#41514d;font-size:24px}
  .android-lite-sheet-body{display:grid;gap:18px;padding:15px 14px max(24px,env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain}.android-lite-sheet-body section{display:grid;gap:7px}.android-lite-sheet-body h3{display:flex;align-items:center;gap:8px;margin:0 4px;color:#5d6d68;font-size:10px;letter-spacing:.9px;text-transform:uppercase}.android-lite-sheet-body h3 span{display:grid;place-items:center;width:21px;height:21px;border-radius:7px;background:#e6f3ef;color:#0b7b6b;font-size:12px}
  .android-lite-sheet-body section>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.android-lite-sheet-body section>div>button{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:68px;padding:11px 12px;border:1px solid #dde7e4;border-radius:13px;background:#fff;color:#18332e;text-align:left;box-shadow:0 3px 12px rgba(22,59,52,.04)}.android-lite-sheet-body button span,.android-lite-sheet-body button b,.android-lite-sheet-body button small{display:block;min-width:0}.android-lite-sheet-body button b{font-size:12px}.android-lite-sheet-body button small{margin-top:4px;color:#6a7975;font-size:10px;line-height:1.35}.android-lite-sheet-body button em{color:#0b806f;font-size:22px;font-style:normal}.android-lite-sheet-body button:focus-visible{border-color:#0b806f;outline:3px solid rgba(11,128,111,.2)}
  .android-lite-empty{margin:20px;text-align:center;color:#66746f}.android-lite-sheet-open{overflow:hidden}
  @keyframes android-lite-rise{from{transform:translateY(16px);opacity:.65}to{transform:translateY(0);opacity:1}}
}
@media(max-width:420px){.android-lite-sheet-body section>div{grid-template-columns:1fr}.android-lite-sheet-body section>div>button{min-height:62px}}
@media(prefers-reduced-motion:reduce){.android-lite-sheet{animation:none}}

.business-setup{max-width:1180px;margin:auto}.setup-intro{padding:24px;margin-bottom:18px}.setup-intro h2{margin-top:0}.setup-intro select{display:block;width:min(100%,320px);padding:12px;margin-top:8px}.setup-intro progress{width:100%;height:10px;accent-color:var(--primary,#087f74)}.setup-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:18px}.setup-steps{padding:12px;align-self:start}.setup-steps button{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:12px;text-align:left;border:0;background:transparent;border-radius:8px;color:inherit;cursor:pointer}.setup-steps button[aria-current]{background:#e5f5f1;color:#075b51}.setup-steps span{min-width:24px}.setup-panel{padding:24px}.setup-step-number,.setup-tip{color:var(--muted,#53636b);font-size:14px}.setup-panel p{line-height:1.6}.setup-actions,.setup-controls{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.setup-controls{justify-content:flex-end}.setup-review{display:flex;gap:10px;align-items:center;min-height:48px;margin-top:24px}.setup-review input{width:20px;height:20px}.setup-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.setup-checks article{border:1px solid var(--border,#d9e3e5);border-radius:10px;padding:16px}.setup-checks h3{font-size:16px}.business-setup button:focus-visible,.business-setup select:focus-visible,.business-setup input:focus-visible{outline:3px solid #087f74;outline-offset:3px}.business-setup button:disabled{opacity:.55;cursor:not-allowed}@media(max-width:720px){.setup-layout{grid-template-columns:1fr}.setup-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.setup-checks{grid-template-columns:1fr}.setup-panel,.setup-intro{padding:18px}.setup-actions button,.setup-controls button{min-height:44px}}

.barcode-print-page{display:grid;gap:18px}.bp-page-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;border:1px solid #dbe6e3;border-radius:14px;background:linear-gradient(135deg,#f7fbfa,#eef7f5)}.bp-page-head span,.bp-preview-panel>header>div>span{color:#168172;font-size:10px;font-weight:900;letter-spacing:.12em}.bp-page-head h2{margin:4px 0 5px;font-size:22px}.bp-page-head p{max-width:760px;margin:0;color:#687874}.bp-page-head .primary-btn{min-width:150px}.bp-workspace{display:grid;grid-template-columns:minmax(330px,440px) minmax(0,1fr);gap:18px;align-items:start}.bp-controls{display:grid;gap:14px}.bp-panel{padding:0;overflow:hidden}.bp-panel>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid #e5ecea}.bp-panel>header>div{display:flex;align-items:center;gap:9px}.bp-panel>header span{display:grid;width:24px;height:24px;place-items:center;border-radius:7px;background:#e8f6f2;color:#087f6e;font-size:11px;font-weight:900}.bp-panel h3{margin:0;font-size:13px}.text-btn{padding:4px;border:0;background:none;color:#087f6e;font:700 11px inherit;cursor:pointer}.text-btn.danger{color:#bd4a4a}.text-btn:disabled{opacity:.4;cursor:not-allowed}.bp-search{display:flex;align-items:center;gap:8px;margin:12px 14px;padding:0 10px;border:1px solid #d8e2df;border-radius:9px;background:#fff}.bp-search span{color:#7d8d89}.bp-search input{width:100%;padding:10px 0;border:0;outline:0;background:transparent}.bp-product-list,.bp-queue-list{max-height:282px;overflow:auto;border-top:1px solid #f0f3f2}.bp-product-row,.bp-queue-row{display:flex;align-items:center;gap:10px;padding:11px 14px;border-bottom:1px solid #edf1f0}.bp-product-row>div,.bp-queue-row>div:first-child{display:grid;min-width:0;flex:1;gap:3px}.bp-product-row b,.bp-queue-row b{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.bp-product-row small,.bp-queue-row small,.bp-limit-note{color:#72817e;font-size:10px}.bp-product-row button{flex:none;padding:7px 10px}.bp-product-row.is-unprintable{background:#fbfaf7}.bp-list-empty{padding:28px 16px;color:#73817e;text-align:center;font-size:12px}.bp-limit-note{display:block;padding:10px 14px;background:#fafcfc}.bp-quantity{display:flex!important;flex:none!important;flex-direction:row!important;gap:0!important;border:1px solid #d7e1df;border-radius:8px;overflow:hidden}.bp-quantity button,.bp-quantity input{width:31px;height:30px;padding:0;border:0;background:#fff;text-align:center}.bp-quantity input{width:38px;border-right:1px solid #e3e9e7;border-left:1px solid #e3e9e7;font-size:11px;-moz-appearance:textfield}.bp-quantity input::-webkit-inner-spin-button{display:none}.bp-remove{width:28px;height:28px;border:0;border-radius:7px;background:transparent;color:#9a6a6a;font-size:18px;cursor:pointer}.bp-remove:hover{background:#fff0f0;color:#bd3f3f}.bp-queue-total{display:flex;justify-content:space-between;padding:11px 14px;background:#f6faf9;color:#647570;font-size:11px}.bp-queue-total b{color:#183e38}.bp-options{padding-bottom:14px}.bp-options>label{display:grid;gap:5px;margin:13px 14px 8px;color:#52635f;font-size:11px;font-weight:800}.bp-options select{width:100%}.bp-preset-facts{display:flex;justify-content:space-between;margin:0 14px;padding:9px 10px;border-radius:8px;background:#f2f7f5;color:#687874;font-size:10px}.bp-options fieldset{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:14px;border:0;padding:0}.bp-options legend{grid-column:1/-1;margin-bottom:8px;color:#52635f;font-size:11px;font-weight:800}.bp-options fieldset label{font-size:11px}.bp-printer-panel{padding-bottom:14px}.bp-printer-panel>header em{border-radius:999px;background:#e8f6f2;color:#087f6e;padding:4px 7px;font-size:9px;font-style:normal;font-weight:900;letter-spacing:.08em}.bp-printer-panel>label,.bp-printer-panel>small,.bp-printer-actions,.bp-printer-test-actions{display:grid;gap:6px;margin:12px 14px;color:#52635f;font-size:11px;font-weight:800}.bp-printer-panel select,.bp-printer-panel input{width:100%}.bp-printer-actions{grid-template-columns:1fr 1fr}.bp-printer-actions .text-btn{grid-column:1/-1;justify-self:start}.bp-printer-actions a{text-align:center;text-decoration:none}.bp-printer-test-actions{grid-template-columns:1fr 1fr}.bp-printer-panel>small{display:block;color:#71807c;font-weight:500;line-height:1.45}.bp-preview-panel{overflow:hidden;border:1px solid #d5dfdd;border-radius:14px;background:#fff;box-shadow:0 12px 35px #253b3620}.bp-preview-panel>header,.bp-preview-panel>footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px}.bp-preview-panel>header{border-bottom:1px solid #dfe7e5}.bp-preview-panel>header>div:first-child{display:grid;gap:3px}.bp-preview-panel>header b{font-size:12px}.bp-page-nav{display:flex;align-items:center;gap:9px;color:#667672;font-size:11px}.bp-page-nav button{display:grid;width:29px;height:29px;place-items:center;border:1px solid #d8e2df;border-radius:7px;background:#fff;font-size:18px;cursor:pointer}.bp-page-nav button:disabled{opacity:.35;cursor:default}.bp-preview-stage{min-height:610px;padding:24px;overflow:auto;background:#e9efed}.bp-print-pages{width:max-content;max-width:100%;margin:auto}.bp-sheet{box-sizing:border-box;display:grid;grid-template-columns:repeat(var(--bp-columns),minmax(0,1fr));grid-template-rows:repeat(var(--bp-rows),minmax(0,1fr));gap:1.5mm;width:var(--bp-page-width);height:var(--bp-page-height);padding:var(--bp-page-padding);background:#fff;box-shadow:0 16px 35px #21342f30}.bp-sheet.is-preview-hidden{display:none}.bp-label{box-sizing:border-box;display:flex;min-width:0;min-height:0;flex-direction:column;align-items:center;justify-content:space-between;gap:.4mm;padding:1.2mm;overflow:hidden;color:#0c1513;text-align:center}.bp-label.has-border{border:.25mm dashed #aebbb7;border-radius:1mm}.bp-company{max-width:100%;overflow:hidden;color:#61706c;font-size:7px;font-weight:800;letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.bp-name{max-width:100%;overflow:hidden;font-size:9px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.bp-code{display:flex;width:100%;min-height:0;flex:1;align-items:center;justify-content:center}.bp-barcode{display:block;width:min(100%,46mm);height:100%;max-height:17mm;color:#000}.bp-label footer{display:flex;width:100%;align-items:center;justify-content:space-between;gap:5px;font-size:7px}.bp-label footer span{overflow:hidden;color:#4f5c59;text-overflow:ellipsis;white-space:nowrap}.bp-label footer strong{margin-left:auto;white-space:nowrap}.bp-empty-preview{display:flex;grid-column:1/-1;grid-row:1/-1;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#71807c}.bp-empty-preview span{font-size:38px}.bp-empty-preview small{max-width:260px;text-align:center}.bp-preview-panel>footer{border-top:1px solid #dfe7e5;color:#71807c;font-size:10px}.bp-preview-panel>footer strong{color:#267568}
.bp-print-pages:has(.bp-sheet.is-slip-preview){display:grid;width:100%;grid-template-columns:repeat(var(--bp-preview-columns,4),minmax(110px,1fr));align-items:start;justify-items:center;gap:22px}.bp-page-nav.is-slip-count{font-size:11px}.bp-page-nav.is-slip-count b{color:#087f6e}
.bp-print-pages:has(.bp-sheet.is-row-preview){display:grid;grid-template-columns:1fr;align-items:start;justify-items:center;gap:22px}.bp-sheet.is-row-preview{display:grid}
@media(max-width:1050px){.bp-workspace{grid-template-columns:1fr}.bp-controls{grid-template-columns:1fr 1fr}.bp-options{grid-column:1/-1}.bp-preview-stage{min-height:480px}}
@media(max-width:700px){.bp-page-head{align-items:flex-start;flex-direction:column}.bp-page-head .primary-btn{width:100%}.bp-controls{grid-template-columns:1fr}.bp-options{grid-column:auto}.bp-preview-panel>header{align-items:flex-start;flex-direction:column}.bp-preview-stage{min-height:410px;padding:12px}.bp-print-pages:has(.bp-sheet.is-slip-preview){grid-template-columns:repeat(2,minmax(110px,1fr))}.bp-sheet{transform-origin:top left}.bp-product-list,.bp-queue-list{max-height:240px}}
@media print{body.barcode-batch-printing .shell>aside,body.barcode-batch-printing .shell>main>header,body.barcode-batch-printing .workspace-tabs,body.barcode-batch-printing .workspace-footer,body.barcode-batch-printing .no-print,body.barcode-batch-printing .bp-preview-panel>footer{display:none!important}body.barcode-batch-printing .shell,body.barcode-batch-printing .shell>main,body.barcode-batch-printing #app,body.barcode-batch-printing .barcode-print-page,body.barcode-batch-printing .bp-workspace,body.barcode-batch-printing .bp-preview-panel,body.barcode-batch-printing .bp-preview-stage,body.barcode-batch-printing .bp-print-pages{display:block!important;width:auto!important;min-width:0!important;max-width:none!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;background:#fff!important;box-shadow:none!important;overflow:visible!important}body.barcode-batch-printing .bp-sheet,body.barcode-batch-printing .bp-sheet.is-preview-hidden{display:grid!important;margin:0!important;box-shadow:none!important;break-after:page;page-break-after:always}body.barcode-batch-printing .bp-sheet:last-child{break-after:auto;page-break-after:auto}body.barcode-batch-printing .bp-label{break-inside:avoid;page-break-inside:avoid}body.barcode-batch-test-printing .bp-sheet:not(:first-child),body.barcode-batch-test-printing .bp-sheet:first-child .bp-label:not(:first-child){display:none!important}}

/* Give each print-studio sublayout a distinct, low-contrast working surface. */
.barcode-print-page .bp-page-head{background:linear-gradient(135deg,#102b3a 0%,#124f58 58%,#087565 100%);border-color:#173f49;color:#fff;box-shadow:0 12px 28px rgba(16,43,58,.18)}
.barcode-print-page .bp-page-head span{color:#8fe4d3}
.barcode-print-page .bp-page-head p{color:#d9ece9}
.barcode-print-page .bp-page-head .primary-btn{background:#f3b44d;color:#17212b;box-shadow:0 4px 12px rgba(0,0,0,.18)}
.barcode-print-page .bp-page-head .primary-btn:hover{background:#ffc766}
.barcode-print-page .bp-page-head .primary-btn:focus-visible{outline:3px solid #fff;outline-offset:3px}
.barcode-print-page .bp-controls>.bp-panel:nth-child(1){background:#f3f8ff;border-color:#d3e2f4}
.barcode-print-page .bp-controls>.bp-panel:nth-child(2){background:#f2fbf6;border-color:#cfe8d8}
.barcode-print-page .bp-controls>.bp-options{background:#fff9ed;border-color:#f1dfb8}
.barcode-print-page .bp-controls>.bp-printer-panel{background:#f8f5ff;border-color:#dfd6f2}
.barcode-print-page .bp-preview-panel{background:#fff6f4;border-color:#eed6cf}
.barcode-print-page .bp-preview-panel>header,.barcode-print-page .bp-preview-panel>footer{background:#fffaf8}
.barcode-print-page :is(.bp-search,.bp-options select,.bp-printer-panel select,.bp-printer-panel input,.bp-quantity,.bp-quantity button,.bp-quantity input,.bp-page-nav button){background-color:#fff}
.bp-printer-panel #bp-printer-status[data-state]{margin-top:10px;padding:9px 10px;border-radius:8px;background:#eef3f2}
.bp-printer-panel #bp-printer-status[data-state="working"]{color:#4c625d}
.bp-printer-panel #bp-printer-status[data-state="success"]{background:#e8f7ef;color:#176440}
.bp-printer-panel #bp-printer-status[data-state="warning"]{background:#fff4d8;color:#765614}
.bp-printer-panel #bp-printer-status[data-state="error"]{background:#fff0ee;color:#9b382e}
.bp-output-proof{margin:12px 14px;border:1px solid #d8cfee;border-radius:10px;overflow:hidden;background:#fff}.bp-output-proof>header,.bp-output-proof>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px}.bp-output-proof>header{border-bottom:1px solid #ebe5f6;background:#f5f1fc}.bp-output-proof>header>div{display:grid;gap:2px}.bp-output-proof>header b{color:#302743;font-size:11px}.bp-output-proof>header span,.bp-output-proof>footer{color:#726987;font-size:9px}.bp-output-proof>header em{padding:3px 6px;border-radius:999px;background:#dff5eb;color:#176440;font-size:8px;font-style:normal;font-weight:900;letter-spacing:.08em}.bp-output-viewport{display:flex;min-height:96px;align-items:center;justify-content:center;padding:12px;overflow:auto;background:repeating-linear-gradient(135deg,#e9eeec 0,#e9eeec 8px,#e3e9e7 8px,#e3e9e7 16px)}.bp-output-sheet{box-sizing:border-box;display:grid;grid-template-columns:repeat(var(--bp-columns),minmax(0,1fr));grid-template-rows:repeat(var(--bp-rows),minmax(0,1fr));column-gap:var(--bp-column-gap);row-gap:var(--bp-row-gap);overflow:hidden;background:#fff;box-shadow:0 6px 16px #233b3430}.bp-output-sheet.is-horizontal{width:100%;aspect-ratio:var(--bp-output-ratio)}.bp-output-sheet.is-vertical{height:240px;max-width:100%;aspect-ratio:var(--bp-output-ratio)}.bp-output-sheet .bp-label{padding:3px}.bp-output-sheet .bp-company{font-size:6px}.bp-output-sheet .bp-name{font-size:7px}.bp-output-sheet .bp-label footer{font-size:6px}.bp-output-sheet .bp-barcode{max-height:13mm}.bp-output-empty{display:grid;grid-column:1/-1;grid-row:1/-1;place-items:center;padding:12px;color:#736b82;text-align:center;font-size:10px}.bp-output-proof>footer{align-items:flex-start;flex-direction:column;border-top:1px solid #ebe5f6}.bp-output-proof>footer span{max-width:100%;overflow:hidden;color:#332947;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.bp-output-proof>footer small{color:#756d82;font-size:9px}
.bp-sheet{gap:0;column-gap:var(--bp-column-gap,1.5mm);row-gap:var(--bp-row-gap,1.5mm)}
.bp-custom-layout{display:grid;gap:10px;margin:12px 14px;padding:12px;border:1px solid #ead7aa;border-radius:10px;background:#fffdf7}.bp-layout-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.bp-layout-grid label{display:grid;gap:4px;color:#52635f;font-size:10px;font-weight:800}.bp-layout-grid label span{display:flex;align-items:center;gap:5px;color:#71807c;font-weight:600}.bp-layout-grid input{min-width:0;width:100%;padding:7px 8px;border:1px solid #d8e2df;border-radius:7px;background:#fff;color:#183e38}.bp-layout-summary{display:grid;gap:3px;padding:9px 10px;border-radius:8px;background:#eef7f4;color:#52635f;font-size:10px}.bp-layout-summary b{color:#183e38}.bp-layout-summary.is-warning{background:#fff0e8;color:#974b20}.bp-layout-summary.is-warning strong{color:#a53e24}.bp-layout-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bp-layout-actions button{padding:8px}.bp-custom-layout>small{color:#71807c;font-size:10px;line-height:1.45}
@media(max-width:480px){.bp-layout-grid,.bp-layout-actions{grid-template-columns:1fr}}
.bp-label.is-compact-ean{gap:.15mm;padding:.35mm 0;border-right:0;border-left:0;border-radius:0}.bp-label.is-compact-ean .bp-company{font-size:5px}.bp-label.is-compact-ean .bp-name{font-size:7px}.bp-label.is-compact-ean .bp-code{flex:none;height:12mm;overflow:visible}.bp-label.is-compact-ean .bp-barcode{width:23mm;height:12mm;max-height:none}.bp-label.is-compact-ean footer{padding:0 .45mm;font-size:6px}
