:root{
  --brand:#0f4eb6;--brand-2:#0b3f96;--brand-dark:#0b2554;--brand-soft:#edf4ff;
  --bg:#f5f8fd;--surface:#fff;--surface-2:#f9fbff;--surface-soft:#f7f9fc;--surface-muted:#f7f9fc;--surface-subtle:#f9fbff;
  --text:#14213d;--text-soft:#42506a;--text-muted:#68758c;--muted-text:#68758c;--muted:#68758c;
  --border:#dfe7f3;--border-strong:#cbd8ea;--success:#12805c;--danger:#c93b43;--warning:#a86800;
  --primary:var(--brand);--primary-soft:var(--brand-soft);--success-soft:#eaf9f3;--danger-soft:#fff0f0;--warning-soft:#fff5d8;
  --table-bg:#fff;--table-head-bg:#f7faff;--table-head-text:#5e6d84;--table-border:#e8eef6;--table-hover:#fafcff;
  --shadow:0 8px 28px rgba(20,51,94,.08);--shadow-sm:0 3px 12px rgba(20,51,94,.06);
  --radius:14px;--sidebar:250px;--topbar:72px;
}
*{box-sizing:border-box}
html{min-height:100%;background:var(--bg)}
body{margin:0;min-height:100vh;color:var(--text);background:var(--bg);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.45}
a{color:var(--brand);text-decoration:none}a:hover{color:var(--brand-2)}
h1,h2,h3,p{margin-top:0}h1{font-size:1.8rem;line-height:1.15;margin-bottom:.45rem;letter-spacing:-.025em}h2{font-size:1.12rem;margin-bottom:.3rem}h3{font-size:1rem}small,.help,.page-subtitle{color:var(--muted)}button,input,select,textarea{font:inherit}

/* Application shell */
.app-shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}.app-sidebar{position:sticky;top:0;height:100vh;background:#fff;border-inline-end:1px solid var(--border);display:flex;flex-direction:column;z-index:40;box-shadow:1px 0 0 rgba(20,51,94,.02)}.sidebar-brand{height:var(--topbar);display:flex;align-items:center;gap:11px;padding:0 18px;color:#fff;background:linear-gradient(135deg,var(--brand),var(--brand-dark));flex-shrink:0}.sidebar-brand:hover{color:#fff}.sidebar-brand b{font-size:1.14rem;display:block;line-height:1.15}.sidebar-brand small{display:block;color:#d9e7ff;font-size:.67rem;margin-top:3px;white-space:nowrap}.brand-mark{width:34px;height:34px;border-radius:9px;background:rgba(255,255,255,.16);display:flex;align-items:flex-end;justify-content:center;gap:3px;padding:7px}.brand-mark i{display:block;width:5px;border-radius:3px;background:#fff}.brand-mark i:nth-child(1){height:11px}.brand-mark i:nth-child(2){height:18px}.brand-mark i:nth-child(3){height:24px}
.sidebar-nav{padding:15px 11px 18px;overflow:auto;flex:1}.nav-section-title{padding:17px 10px 7px;color:#8793a6;font-weight:700;font-size:.64rem;letter-spacing:.09em}.nav-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:9px;color:#42506a;margin:2px 0;font-weight:560;transition:.15s ease}.nav-item:hover{background:#f2f6fd;color:var(--brand)}.nav-item.active{background:linear-gradient(90deg,#eaf2ff,#f5f8ff);color:var(--brand);font-weight:700;box-shadow:inset 3px 0 0 var(--brand)}[dir="rtl"] .nav-item.active{box-shadow:inset -3px 0 0 var(--brand)}.nav-icon{width:26px;height:26px;display:grid;place-items:center;border-radius:7px;color:#5c6f91;background:#f2f5fa;font-size:.95rem;flex:0 0 26px}.nav-item.active .nav-icon,.nav-item:hover .nav-icon{background:#dbe9ff;color:var(--brand)}.sidebar-footer{padding:12px;border-top:1px solid var(--border);display:grid;gap:9px}.sidebar-footer>small{text-align:center;font-size:.67rem}
.language-switch{display:flex;gap:4px;padding:3px;background:#f1f5fb;border:1px solid var(--border);border-radius:9px}.language-switch button,.language-switch a{border:0;background:transparent;color:#61708a;padding:6px 10px;border-radius:6px;cursor:pointer;flex:1;text-align:center;line-height:1.45}.language-switch button.active,.language-switch a.active{background:#fff;color:var(--brand);font-weight:700;box-shadow:var(--shadow-sm)}
.app-workspace{min-width:0}.workspace-topbar{height:var(--topbar);position:sticky;top:0;z-index:30;background:linear-gradient(90deg,var(--brand),var(--brand-dark));color:#fff;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 22px;box-shadow:0 4px 18px rgba(12,47,111,.14)}.topbar-left,.topbar-right{display:flex;align-items:center;gap:10px;min-width:0}.sidebar-toggle{display:none;width:38px;height:38px;border:1px solid rgba(255,255,255,.2);border-radius:9px;background:rgba(255,255,255,.08);color:#fff;cursor:pointer}.global-search{width:min(390px,34vw);height:38px;display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:rgba(6,31,76,.22)}.global-search input{border:0;background:transparent;color:#fff;width:100%;outline:0;padding:0}.global-search input::placeholder{color:#c9daf7}.global-search kbd{font-size:.67rem;color:#d3e0f6;border:1px solid rgba(255,255,255,.2);border-radius:5px;padding:2px 6px;white-space:nowrap;background:rgba(255,255,255,.06)}.tenant-selector,.user-chip{height:44px;display:flex;align-items:center;gap:9px;color:#fff;padding:5px 8px;border-radius:10px}.tenant-selector:hover{background:rgba(255,255,255,.08);color:#fff}.tenant-selector small,.user-chip small{display:block;color:#bcd0f1;font-size:.65rem;line-height:1}.tenant-selector b,.user-chip b{display:block;color:#fff;font-size:.77rem;max-width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px}.tenant-selector i{font-style:normal;color:#cad9ef}.tenant-dot{width:8px;height:8px;border-radius:50%;background:#4bd0a0;box-shadow:0 0 0 4px rgba(75,208,160,.13)}.tenant-selector.muted .tenant-dot{background:#ffbf60}.avatar{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#e8b36d;color:#3d2a0d;font-weight:800}.logout-button{border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#fff;padding:7px 10px;border-radius:8px;cursor:pointer}.logout-button:hover{background:rgba(255,255,255,.15)}.workspace-content{padding:24px;max-width:1700px;margin:0 auto}.sidebar-backdrop{display:none}

/* Public/auth */
.public-shell{background:linear-gradient(145deg,#f4f8ff,#eef4fd)}.public-topbar{height:72px;background:linear-gradient(90deg,var(--brand),var(--brand-dark));display:flex;align-items:center;justify-content:space-between;padding:0 24px;box-shadow:0 5px 22px rgba(12,47,111,.15)}.public-brand{height:72px;background:transparent;padding:0}.public-actions{display:flex;align-items:center;gap:8px}.public-actions .language-switch{width:140px;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.15)}.public-actions .language-switch button,.public-actions .language-switch a{color:#dce8fb}.public-actions .language-switch button.active,.public-actions .language-switch a.active{background:#fff;color:var(--brand)}.public-main{padding:24px;max-width:1250px;margin:0 auto}.ghost-inverse{background:transparent!important;border-color:rgba(255,255,255,.28)!important;color:#fff!important}.light-button{background:#fff!important;color:var(--brand)!important;border-color:#fff!important}

/* Shared components */
.page-title-row,.page-head,.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.page-title-row h1,.page-head h1,.page-header h1{margin:0 0 5px}.page-subtitle{margin:0;max-width:760px}.eyebrow{font-size:.68rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--brand);margin-bottom:6px}.bilingual-caption{font-weight:500;color:#7b89a0;font-size:.88em}.page-actions,.compact-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:0}.button,.btn,button{border:1px solid var(--border-strong);background:#fff;color:#364764;padding:8px 12px;border-radius:8px;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}.button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;text-decoration:none;font-weight:700;line-height:1.2;min-height:38px}.button:hover,.btn:hover,button:hover{border-color:#aebed4;background:#f8fbff;color:var(--brand-2);box-shadow:0 3px 10px rgba(20,51,94,.06)}.button:focus-visible,.btn:focus-visible,button:focus-visible{outline:0;box-shadow:0 0 0 3px rgba(15,78,182,.16)}.button.primary,.btn.primary,button.primary,.primary{background:var(--brand);border-color:var(--brand);color:#fff}.button.primary:hover,.btn.primary:hover,button.primary:hover,.primary:hover{background:var(--brand-2);border-color:var(--brand-2);color:#fff}.button.ghost,.btn.ghost{background:transparent}.button.small,.btn.small{padding:6px 9px;font-size:.76rem;min-height:32px}.button.danger,.btn.danger,.danger-button{border-color:#f0b8b2;color:var(--danger);background:#fff7f6}.button:disabled,.btn.disabled,button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.inline{display:inline-flex;align-items:center;gap:5px;margin:0}.panel,.card,.subscription-card,.detail-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.panel{padding:18px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:14px}.panel-heading h2{margin:0 0 3px}.panel-heading p{font-size:.78rem;color:var(--muted);margin:0}.panel-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--border);margin-bottom:12px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.card{padding:16px;color:var(--text)}.card strong{display:block;margin-bottom:6px}.card span{color:var(--muted)}.toast-banner,.alert,.validation{padding:10px 13px;border-radius:9px;margin:0 0 14px;border:1px solid #d8e5f7;background:#eff5ff}.toast-banner.success,.alert.success{color:#0e6d4f;background:#edfbf6;border-color:#cbeee1}.toast-banner.error,.alert.error,.validation{color:#a82e35;background:#fff2f2;border-color:#f2cdcf}.validation:empty{display:none}.validation ul{margin:.2rem 0;padding-inline-start:20px}.warning-callout{padding:12px 14px;border:1px solid #f4d9a8;background:#fff9ec;border-radius:10px;color:#6f4b0c}.warning-callout p{margin:3px 0 0;color:#8b672d;font-size:.8rem}.info-callout{display:flex;gap:11px;padding:12px 14px;border:1px solid #cfe0fb;background:#f2f7ff;border-radius:10px;color:#294b7d;margin:16px 0}.info-callout.compact-callout{margin-bottom:0}.info-callout p{margin:3px 0 0;color:#5c7191;font-size:.78rem}.info-dot{flex:0 0 22px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#dceaff;color:var(--brand);font-weight:800}

/* Forms */
input,select,textarea{width:100%;padding:9px 10px;border:1px solid var(--border-strong);border-radius:8px;background:#fff;color:var(--text);outline:0;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:#79a8ef;box-shadow:0 0 0 3px rgba(15,78,182,.08)}input[readonly],input:disabled,select:disabled{background:#f2f5fa;color:#6e7c91;cursor:not-allowed}textarea{min-height:90px;resize:vertical}.form-grid,.modern-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid{max-width:1050px}.modern-form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.field,.form-grid label{display:flex;flex-direction:column;gap:5px}.field>span,.form-grid label{font-size:.78rem;font-weight:650;color:#34445f}.field em{color:var(--danger);font-style:normal}.field.span-2{grid-column:span 2}.form-grid .full,.modern-form-grid .full{grid-column:1/-1}.check{display:flex!important;flex-direction:row!important;align-items:center!important;gap:7px}.check input,.option-card input,.segment-choice input{width:auto}.field-validation{display:block;color:var(--danger);font-size:.72rem;min-height:.5rem}.field-validation:empty{display:none}.field-hint{font-size:.7rem;color:var(--muted)}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;border-top:1px solid var(--border);margin-top:18px;padding-top:15px}.submit-status{font-size:.76rem;color:var(--muted)}.locked-input{position:relative}.locked-input .lock-mark{position:absolute;inset-inline-end:10px;top:50%;transform:translateY(-50%);color:#8995a8;font-size:.55rem}.preview-input{font-weight:700;background:#eef2f7!important}.form-panel{max-width:1120px}.group-type-switch{display:inline-flex;padding:4px;border:1px solid var(--border);background:#f4f7fb;border-radius:10px;margin-bottom:16px;gap:4px}.segment-choice{position:relative}.segment-choice input{position:absolute;opacity:0}.segment-choice span{display:block;padding:8px 18px;border-radius:7px;text-align:center;cursor:pointer;color:#647089;min-width:140px}.segment-choice small{font-size:.67rem}.segment-choice input:checked+span{background:#fff;color:var(--brand);font-weight:700;box-shadow:var(--shadow-sm)}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px}.option-card{border:1px solid var(--border);border-radius:10px;padding:11px;display:flex;align-items:flex-start;gap:9px;cursor:pointer;background:#fbfcff}.option-card:hover{border-color:#b8cef0;background:#f6f9ff}.option-card b{display:block}.option-card small{display:block;font-size:.7rem;margin-top:2px}.edit-summary-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:16px}.edit-summary-strip>div{padding:10px;border:1px solid var(--border);border-radius:9px;background:#f9fbff}.edit-summary-strip small{display:block;font-size:.68rem}.edit-summary-strip strong{display:block;margin-top:3px;overflow-wrap:anywhere}

/* Auth cards */
.auth-card{max-width:460px;margin:5vh auto;padding:22px;background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow)}.wide-auth-card{max-width:930px}.auth-card h1{margin-bottom:6px}.auth-card form{display:grid;gap:9px}.auth-divider{border-top:1px solid var(--border);margin:15px 0}.password-help{margin:.1rem 0 .35rem}.submit-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}button:disabled{opacity:.6;cursor:not-allowed}

/* Tables */
.table-scroll{overflow:auto;border:1px solid var(--border);border-radius:11px;background:var(--table-bg)}table{width:100%;border-collapse:collapse;background:var(--table-bg);color:var(--text)}th,td{padding:10px 11px;border-bottom:1px solid var(--table-border);text-align:start;vertical-align:middle}th{font-size:.7rem;color:var(--table-head-text);background:var(--table-head-bg);text-transform:none;font-weight:750;white-space:nowrap}tbody tr:hover{background:var(--table-hover)}tbody tr:last-child td{border-bottom:0}.money{min-width:105px}.empty-state{text-align:center;color:var(--muted);padding:28px!important}.status-active{color:var(--success);font-weight:700}.status-inactive{color:var(--danger);font-weight:700}.status-pill{display:inline-flex;padding:3px 7px;border-radius:999px;background:#edf3fb;color:#52647f;font-size:.68rem;font-weight:700}.status-pending{background:#fff5d8;color:#8a5a00}.status-approved{background:#eaf9f3;color:#0f7755}.status-rejected,.subscription-expired .status-pill{background:#fff0f0;color:#ae3339}

/* Dashboard */
.dashboard-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.dashboard-heading-actions{display:flex;align-items:center;gap:9px}.selected-company-chip{display:inline-flex;align-items:center;gap:7px;border:1px solid #cfe0f5;background:#fff;padding:7px 10px;border-radius:9px;font-weight:700}.selected-company-chip>span{color:#29a273}.dashboard-section{margin-bottom:24px}.section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:11px}.section-title h2{font-size:1.12rem;margin:0 0 2px}.section-title p{margin:0;color:var(--muted);font-size:.77rem}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric-card{position:relative;min-height:145px;padding:16px;border:1px solid var(--border);border-radius:13px;background:#fff;color:var(--text);box-shadow:var(--shadow-sm);overflow:hidden}.metric-card:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;inset-inline-end:-30px;top:-30px;opacity:.35}.metric-blue:after{background:#d8e9ff}.metric-violet:after{background:#e9e0ff}.metric-green:after{background:#d9f5e9}.metric-orange:after{background:#ffead1}.metric-card:hover{transform:translateY(-1px);box-shadow:var(--shadow);color:var(--text)}.metric-icon{width:35px;height:35px;border-radius:9px;display:grid;place-items:center;background:#edf4ff;color:var(--brand);font-weight:800;margin-bottom:12px}.metric-violet .metric-icon{background:#f0eaff;color:#7750c8}.metric-green .metric-icon{background:#e7f8f1;color:#15825e}.metric-orange .metric-icon{background:#fff0dc;color:#c77419}.metric-label{font-size:.76rem;color:#65738a;font-weight:650}.metric-label span{display:block;font-size:.67rem;margin-top:2px}.metric-card>strong{font-size:1.55rem;display:block;margin:6px 0 4px;letter-spacing:-.02em}.metric-card>small{font-size:.68rem}.platform-quick-strip,.company-count-strip{margin-top:11px;background:#fff;border:1px solid var(--border);border-radius:12px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:center;box-shadow:var(--shadow-sm);overflow:hidden}.platform-quick-strip>div{padding:13px;border-inline-end:1px solid var(--border)}.platform-quick-strip span{display:block;color:var(--muted);font-size:.68rem}.platform-quick-strip strong{font-size:1.15rem}.platform-quick-strip .small-value{font-size:.8rem}.platform-quick-strip>.button{margin:10px}.dashboard-two-column{display:grid;grid-template-columns:1.05fr .95fr;gap:12px;margin-top:12px}.quick-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.quick-action-grid a{min-height:90px;border:1px solid var(--border);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#41516d;background:#fbfcff;padding:8px}.quick-action-grid a:hover{border-color:#aecaef;background:#f3f8ff;color:var(--brand)}.quick-action-grid a>span{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:#edf4ff;color:var(--brand);font-size:1.1rem;margin-bottom:6px}.quick-action-grid b{font-size:.74rem}.quick-action-grid small{font-size:.65rem}.activity-list{display:grid}.activity-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid var(--border);color:var(--text)}.activity-item:last-child{border-bottom:0}.activity-icon{width:33px;height:33px;border-radius:50%;display:grid;place-items:center;background:#edf4ff;color:var(--brand);font-size:.65rem;font-weight:800}.activity-item b{display:block;font-size:.75rem}.activity-item small{font-size:.67rem}.activity-amount{text-align:end}.activity-amount strong{display:block;font-size:.76rem;margin-bottom:2px}.empty-inline{padding:25px;text-align:center;color:var(--muted)}.company-count-strip{grid-template-columns:repeat(4,minmax(0,1fr));}.company-count-strip>a,.company-count-strip>span{display:flex;align-items:center;gap:10px;padding:13px 15px;color:var(--text);border-inline-end:1px solid var(--border)}.company-count-strip>:last-child{border-inline-end:0}.count-icon{width:35px;height:35px;border-radius:9px;background:#edf4ff;color:var(--brand);display:grid;place-items:center}.company-count-strip small{display:block}.company-count-strip strong{display:block;font-size:1.1rem}.empty-dashboard-panel{text-align:center;padding:45px}.empty-illustration{width:64px;height:64px;display:grid;place-items:center;border-radius:18px;background:#edf4ff;color:var(--brand);font-size:1.6rem;margin:0 auto 13px}

/* Chart of Accounts */
.coa-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,220px));gap:10px;margin-bottom:12px}.mini-stat{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--border);border-radius:11px;padding:10px 12px;box-shadow:var(--shadow-sm)}.stat-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;font-weight:800}.stat-icon.blue{background:#e8f1ff;color:var(--brand)}.stat-icon.green{background:#e8f8f1;color:#16825f}.stat-icon.violet{background:#f0eaff;color:#7652c7}.mini-stat small{display:block;font-size:.67rem}.mini-stat strong{font-size:1.05rem}.coa-panel{padding:14px}.view-switch{display:inline-flex;padding:3px;border-radius:8px;border:1px solid var(--border);background:#f4f7fb}.view-switch button{border:0;background:transparent;padding:6px 10px;border-radius:6px;font-size:.73rem}.view-switch button.active{background:#fff;color:var(--brand);font-weight:700;box-shadow:var(--shadow-sm)}.coa-toolbar-right{display:flex;align-items:center;gap:7px}.compact-search{height:32px;display:flex;align-items:center;gap:5px;border:1px solid var(--border);border-radius:8px;padding:0 8px;background:#fff;min-width:220px}.compact-search input{border:0;box-shadow:none;padding:0;height:auto}.coa-view{display:none}.coa-view.active{display:block}.coa-modern-table{min-width:920px}.coa-modern-table .action-col{width:130px}.coa-node.is-collapsed-child{display:none}.coa-cell{display:flex;align-items:center;gap:7px;padding-inline-start:calc(var(--tree-level) * 22px)}.tree-toggle,.tree-toggle-spacer{width:20px;height:20px;flex:0 0 20px}.tree-toggle{border:1px solid #cdd9e8;border-radius:5px;padding:0;background:#fff;color:#657690;line-height:17px;font-size:1.05rem;transition:transform .15s}.tree-toggle[aria-expanded="true"]{transform:rotate(90deg);color:var(--brand)}.tree-toggle-spacer{display:inline-block}.node-icon{width:24px;height:24px;border-radius:6px;display:grid;place-items:center;font-size:.75rem}.node-icon.folder{background:#e8f1ff;color:#1b65cf}.node-icon.ledger{background:#f2f5fa;color:#6f7d92}.bilingual-name{display:grid;gap:2px}.bilingual-name strong{font-size:.76rem}.bilingual-name span{font-size:.7rem;color:#6e7d94;width:max-content}.type-pill,.nature-label{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;font-size:.66rem;font-weight:700;white-space:nowrap}.type-pill.main-group{background:#e7f0ff;color:#155ebf}.type-pill.sub-group{background:#e8f8f0;color:#157454}.type-pill.posting-account{background:#f0f2f6;color:#59667a}.nature-label{background:#f4f6f9;color:#58677e}.nature-1{background:#e9f2ff;color:#1763c2}.nature-2{background:#f0eaff;color:#7350bc}.nature-3{background:#fff1de;color:#a45d09}.nature-4{background:#e8f8f0;color:#147a58}.nature-5{background:#fff0f0;color:#ac3e45}.row-actions{display:flex;gap:4px}.icon-button{min-width:28px;height:28px;padding:0 6px;border:1px solid var(--border);border-radius:7px;background:#fff;display:inline-grid;place-items:center;color:#526580;font-size:.72rem}.icon-button:hover{border-color:#aac4eb;background:#f1f6ff;color:var(--brand)}.tree-card{border:1px solid var(--border);border-radius:11px;padding:8px;background:#fbfdff;min-height:200px}.tree-line{position:relative;display:flex;align-items:center;gap:7px;min-height:38px;padding:5px 8px;padding-inline-start:calc(8px + var(--tree-level) * 28px);border-radius:7px}.tree-line:hover{background:#f0f5fc}.tree-connector{position:absolute;inset-inline-start:calc(18px + var(--tree-level) * 28px);top:0;bottom:0;border-inline-start:1px dotted #c6d3e4;opacity:.8}.tree-code{font-weight:800;font-size:.74rem;min-width:75px}.tree-name{display:flex;align-items:center;gap:7px;min-width:0;flex:1}.tree-name strong{font-size:.75rem}.tree-name span{color:#728097;font-size:.69rem}.tree-edit{margin-inline-start:auto}

/* Account wizard */
.wizard-shell{display:grid;grid-template-columns:200px minmax(0,1fr);gap:12px;align-items:start}.wizard-steps{background:#fff;border:1px solid var(--border);border-radius:12px;padding:10px;box-shadow:var(--shadow-sm)}.wizard-step{display:flex;align-items:center;gap:8px;padding:9px;border-radius:8px;color:#78869b}.wizard-step.active{background:#edf4ff;color:var(--brand)}.wizard-step>span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;border:1px solid currentColor;font-size:.68rem;font-weight:800}.wizard-step b{display:block;font-size:.72rem}.wizard-step small{display:block;font-size:.63rem}.wizard-panel{min-width:0}

/* Customer/subscription/security legacy modernized */
.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}.detail-card{padding:16px}.details-list{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(0,1.3fr);gap:7px 10px;margin:8px 0}.details-list dt{color:var(--muted);font-size:.76rem}.details-list dd{margin:0;font-weight:700;overflow-wrap:anywhere}.subscription-card{padding:18px;max-width:950px}.subscription-active{border-inline-start:4px solid var(--success)}.subscription-expired{border-inline-start:4px solid var(--danger)}.subscription-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.subscription-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.subscription-grid>div{border:1px solid var(--border);border-radius:9px;padding:10px;display:flex;flex-direction:column;gap:3px;background:#fbfcff}.subscription-grid span{color:var(--muted);font-size:.7rem}.security-cards{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.security-cards form{display:grid;gap:8px}.permission-list{max-height:360px;overflow:auto;border:1px solid var(--border);border-radius:9px;padding:8px}.permission-group{padding:6px 0;border-bottom:1px solid var(--border)}.permission-group:last-child{border-bottom:0}.permission-group>b{display:block;margin-bottom:4px}hr{border:0;border-top:1px solid var(--border);margin:14px 0}

/* RTL */
[dir="rtl"] body{font-family:Tahoma,"Segoe UI",Arial,sans-serif}[dir="rtl"] .global-search input,[dir="rtl"] input[type="email"],[dir="rtl"] input[name*="Code"],[dir="rtl"] input[name*="No"],[dir="rtl"] .money{direction:ltr;text-align:left}[dir="rtl"] .activity-amount{text-align:left}[dir="rtl"] th,[dir="rtl"] td{text-align:right}

/* Responsive */
@media(max-width:1200px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-two-column{grid-template-columns:1fr}.quick-action-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.modern-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.edit-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.user-chip>span:last-child{display:none}.global-search{width:260px}}
@media(max-width:900px){:root{--sidebar:245px}.app-shell{display:block}.app-sidebar{position:fixed;inset-block:0;inset-inline-start:0;width:var(--sidebar);transform:translateX(-105%);transition:transform .2s ease;box-shadow:0 0 35px rgba(18,43,81,.18)}[dir="rtl"] .app-sidebar{transform:translateX(105%)}body.sidebar-open .app-sidebar{transform:translateX(0)}.sidebar-toggle{display:grid;place-items:center}.sidebar-backdrop{position:fixed;inset:0;background:rgba(11,30,61,.35);z-index:35}body.sidebar-open .sidebar-backdrop{display:block}.workspace-content{padding:16px}.global-search{width:min(330px,48vw)}.tenant-selector b{max-width:100px}.platform-quick-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-quick-strip>.button{grid-column:1/-1}.company-count-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.wizard-shell{grid-template-columns:1fr}.wizard-steps{display:grid;grid-template-columns:repeat(4,1fr)}.wizard-step{justify-content:center}.wizard-step div{display:none}}
@media(max-width:650px){.workspace-topbar{padding:0 10px;height:62px}.workspace-content{padding:12px}.global-search{display:none}.tenant-selector small,.tenant-selector i{display:none}.tenant-selector{padding:5px}.topbar-right{gap:4px}.logout-button{padding:7px}.page-title-row,.page-head,.page-header,.dashboard-heading,.section-title{flex-direction:column;align-items:stretch}.metric-grid,.platform-metric-grid,.company-metric-grid{grid-template-columns:1fr}.quick-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.company-count-strip,.platform-quick-strip{grid-template-columns:1fr}.company-count-strip>a,.company-count-strip>span,.platform-quick-strip>div{border-inline-end:0;border-bottom:1px solid var(--border)}.modern-form-grid,.form-grid{grid-template-columns:1fr}.field.span-2{grid-column:span 1}.option-grid{grid-template-columns:1fr}.coa-summary-grid{grid-template-columns:1fr}.panel-toolbar{align-items:stretch;flex-direction:column}.coa-toolbar-right{flex-wrap:wrap}.compact-search{min-width:100%;width:100%}.edit-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.public-topbar{padding:0 12px}.public-actions .language-switch{display:none}.public-brand small{display:none}.public-actions .button{padding:7px 9px}.details-list{grid-template-columns:1fr}.tree-name{display:grid;gap:0}.tree-name span{width:max-content}.wizard-steps{grid-template-columns:repeat(2,1fr)}}
.bilingual-name>a,.tree-name>a{display:grid;gap:2px;color:inherit}.bilingual-name>a:hover strong,.tree-name>a:hover strong{color:var(--brand)}

/* v2026.08.29.17 - Platform company registry / tenant-safe company details */
.page-actions,.row-actions{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.table-subline{display:block;color:var(--muted);margin-top:.2rem;font-size:.78rem}.summary-mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin:0 0 1rem}.summary-mini{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:1rem;box-shadow:var(--shadow-sm)}.summary-mini span{display:block;color:var(--muted);font-size:.82rem}.summary-mini strong{display:block;font-size:1.5rem;margin-top:.25rem}.company-registry-table td{vertical-align:middle}.company-select-cards{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.company-select-card{display:flex;justify-content:space-between;align-items:center;gap:1rem}.company-select-info{display:grid;gap:.25rem}.company-select-info span,.company-select-info small{color:var(--muted)}.detail-card-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.85rem}.detail-card-heading strong{display:block;font-size:1rem}.detail-card-heading small{display:block;color:var(--muted);margin-top:.2rem}.full-span-card{grid-column:1/-1}.details-list-wide{grid-template-columns:minmax(180px,.45fr) minmax(0,1.55fr)}.info-callout{border:1px solid #cfe0ff;background:#f5f9ff;color:#24466f;border-radius:12px;padding:.9rem 1rem;line-height:1.5}.inline{display:inline-flex;margin:0}
@media(max-width:900px){.summary-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.company-select-card{align-items:flex-start;flex-direction:column}.details-list-wide{grid-template-columns:1fr}}
@media(max-width:560px){.summary-mini-grid{grid-template-columns:1fr}}
.company-registry-table .type-pill.subgroup{background:#e8f8f0;color:#157454}.company-registry-table .type-pill.account{background:#f0f2f6;color:#59667a}

/* v2026.08.29.18 - Platform legal profile, master access, subscriptions and document verification */
.stack-lg{display:grid;gap:1rem}.form-card{padding:1rem 1.1rem}.narrow-form-card{max-width:980px}.sticky-action-bar{position:sticky;bottom:12px;z-index:5;display:flex;justify-content:flex-end;gap:.6rem;padding:.8rem;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.96);box-shadow:var(--shadow-sm);backdrop-filter:blur(8px)}.form-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1rem}.action-field{justify-content:flex-end}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.text-warning{color:#a76a00}.icon-action{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--border);border-radius:9px;background:#fff;color:var(--brand);font-weight:800}.icon-action:hover{background:#f2f7ff}.toggle-form{margin-top:.8rem}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:var(--muted)}.toggle-switch{width:46px;height:25px;border:0;border-radius:999px;background:#cfd7e3;padding:3px;cursor:pointer;transition:.2s}.toggle-switch i{display:block;width:19px;height:19px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.18);transition:.2s}.toggle-switch.on{background:var(--success)}.toggle-switch.on i{transform:translateX(21px)}[dir="rtl"] .toggle-switch.on i{transform:translateX(-21px)}.subscription-create-grid{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:.7rem;align-items:end;margin-bottom:1rem}.verification-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-bottom:.8rem}.verification-summary>div{border:1px solid var(--border);border-radius:10px;padding:.8rem;background:#fafcff}.verification-summary span{display:block;color:var(--muted);font-size:.75rem}.verification-summary strong{display:block;font-size:1.15rem;margin-top:.2rem}.verification-access-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--border);border-radius:14px;padding:1rem 1.1rem;margin-bottom:1rem}.verification-access-banner p{margin:.25rem 0 0;color:var(--muted)}.verification-access-banner.allowed{background:#f2fbf7;border-color:#bde8d6}.verification-access-banner.blocked{background:#fffaf0;border-color:#f0d9a5}.requirement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:.8rem}.requirement-card,.document-review-card{border:1px solid var(--border);border-radius:12px;padding:.9rem;background:#fff}.requirement-head{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start}.requirement-head h3{font-size:.92rem;margin:.25rem 0}.requirement-head code{color:var(--brand);font-size:.7rem}.document-current{display:grid;gap:.25rem;border:1px solid #dbe7f8;background:#f8fbff;border-radius:9px;padding:.7rem;margin:.65rem 0}.document-current small{color:var(--muted)}.document-upload-form{display:grid;gap:.55rem;margin-top:.7rem}.review-remark{margin-top:.3rem;border-inline-start:3px solid var(--brand);padding-inline-start:.55rem;font-size:.8rem}.requirement-admin-list{display:grid;gap:.5rem;margin-top:1rem}.requirement-admin-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border-top:1px solid var(--border);padding:.65rem 0}.requirement-admin-row>div:first-child{display:grid;gap:.15rem}.requirement-admin-row>div:last-child{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap}.requirement-admin-row small{color:var(--muted)}.summary-two{grid-template-columns:repeat(2,minmax(0,1fr))}.document-review-list{display:grid;gap:.8rem}.document-review-form{display:grid;grid-template-columns:minmax(170px,.7fr) minmax(260px,1.6fr) auto;gap:.6rem;align-items:end}.document-review-form .grow{min-width:0}.compact-empty{padding:16px!important}.access-decision-form{display:grid;gap:.75rem}.public-status-shell{margin:3rem auto}.button.small{padding:.4rem .65rem;font-size:.75rem}.danger-soft{background:#fff1f1!important;color:#a72d35!important;border-color:#efc3c6!important}.danger-soft:hover{background:#ffe6e6!important}.compact-form{align-items:end}
@media(max-width:900px){.subscription-create-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.document-review-form{grid-template-columns:1fr}.verification-summary{grid-template-columns:1fr}.requirement-admin-row{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.subscription-create-grid{grid-template-columns:1fr}.verification-access-banner{align-items:flex-start;flex-direction:column}.sticky-action-bar{bottom:6px}}

/* v18 verification readiness */
.button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}
.warning-callout{border-color:#f3d48a;background:#fff9e8;color:#6a4b00}

/* v2026.08.30.21 - company-specific Chart of Accounts setup and structural locking */
.coa-policy-banner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:0 0 1rem}.coa-policy-banner>div{display:grid;gap:.18rem;padding:.85rem 1rem;border:1px solid var(--border);border-radius:13px;background:linear-gradient(180deg,#fff,#f9fbff);box-shadow:var(--shadow-sm)}.coa-policy-banner small,.setup-policy-grid small{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}.coa-policy-banner strong,.setup-policy-grid strong{font-size:.95rem}.coa-policy-banner span{color:var(--muted);font-size:.78rem}.code-lock{font-size:.72rem;opacity:.68;margin-inline-start:.25rem}.coa-setup-panel,.setup-lock-panel{max-width:1180px}.setup-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-bottom:1.25rem}.setup-choice-card,.coding-style-card{display:flex;align-items:flex-start;gap:.7rem;border:1px solid var(--border);border-radius:14px;padding:1rem;background:#fff;cursor:pointer;transition:.18s}.setup-choice-card:hover,.coding-style-card:hover{border-color:#9dbef5;box-shadow:0 7px 20px rgba(30,86,160,.08)}.setup-choice-card:has(input:checked),.coding-style-card:has(input:checked){border-color:var(--brand);background:#f5f9ff;box-shadow:0 0 0 2px rgba(37,99,235,.08)}.setup-choice-card input,.coding-style-card input{margin-top:.2rem}.choice-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:#edf4ff;color:var(--brand);font-weight:800}.setup-choice-card>span:last-child,.coding-style-card>span{display:grid;gap:.25rem}.setup-choice-card small,.coding-style-card small{color:var(--muted);line-height:1.4}.danger-choice .choice-icon{background:#fff4e6;color:#9a5c00}.coding-style-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-bottom:1rem}.coding-style-card code{display:block;width:max-content;padding:.28rem .45rem;border-radius:7px;background:#eef3f9;color:#24466f;font-size:.82rem}.compact-section-title{margin-top:.5rem}.setup-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:1rem 0}.setup-preview-card{display:grid;gap:.3rem;border:1px dashed #bfd0e8;border-radius:12px;background:#fbfdff;padding:1rem}.setup-preview-card small{color:var(--muted);margin-bottom:.3rem}.setup-preview-card strong{font-size:.86rem}.setup-preview-card span{font-size:.82rem;color:#52657d}.custom-example{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.lock-hero{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.lock-badge{display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:#eef4ff;font-size:1.4rem}.lock-hero h2{margin:0 0 .2rem}.lock-hero p{margin:0;color:var(--muted)}.setup-policy-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin-bottom:1rem}.setup-policy-grid>div{display:grid;gap:.2rem;padding:.8rem;border:1px solid var(--border);border-radius:10px;background:#fafcff}.nature-0{background:#eef2f7!important;color:#49596d!important}.locked-input{position:relative}.locked-input input{padding-inline-end:2rem!important;background:#f4f6f9!important;color:#526176!important}.lock-mark{position:absolute;inset-inline-end:.75rem;top:50%;transform:translateY(-50%);font-size:.55rem;color:#77869b}.field-hint b{color:var(--text)}
@media(max-width:950px){.setup-choice-grid{grid-template-columns:1fr}.setup-policy-grid,.coa-policy-banner{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.coding-style-grid,.setup-preview-grid,.setup-policy-grid,.coa-policy-banner{grid-template-columns:1fr}}

/* v2026.08.31.26 - advanced selectors, calendar, and ERP-style global rollover tooltips */
.ma-native-select,.ma-date-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;overflow:hidden!important;white-space:nowrap!important}
.ma-select{position:relative;width:100%;min-width:0}.ma-select-trigger,.ma-date-trigger{width:100%;min-height:42px;display:flex;align-items:center;gap:.65rem;padding:.62rem .8rem;border:1px solid var(--border-strong);border-radius:10px;background:#fff;color:var(--text);box-shadow:0 1px 2px rgba(20,51,94,.03);text-align:start;transition:border-color .16s,box-shadow .16s,background .16s}.ma-select-trigger:hover,.ma-date-trigger:hover{border-color:#9eb6d8;background:#fbfdff}.ma-select.open .ma-select-trigger,.ma-select-trigger:focus-visible,.ma-date-trigger:focus-visible{border-color:#6f9fe6;box-shadow:0 0 0 3px rgba(15,78,182,.10);outline:0}.ma-select-value,.ma-date-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ma-select-chevron,.ma-date-chevron{flex:0 0 auto;color:#71819a;font-size:.88rem}.ma-select.disabled .ma-select-trigger,.ma-date-trigger:disabled{background:#f2f5fa;color:#6e7c91;cursor:not-allowed}
.ma-select-panel{position:absolute;z-index:2147482500;inset-inline-start:0;top:calc(100% + 6px);display:none;width:max(100%,320px);max-width:min(560px,calc(100vw - 28px));overflow:hidden;border:1px solid #ccd8e8;border-radius:13px;background:#fff;box-shadow:0 20px 55px rgba(15,38,78,.18)}.ma-select.open .ma-select-panel{display:block}.ma-select-search-wrap{padding:.7rem;border-bottom:1px solid var(--border);background:#f8fbff}.ma-select-search{height:38px!important;padding:.5rem .7rem!important;border-radius:8px!important;background:#fff!important}.ma-select-list{max-height:300px;overflow:auto;padding:.35rem}.ma-select-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.62rem .7rem;border:0;border-radius:8px;background:transparent;color:var(--text);text-align:start}.ma-select-option:hover,.ma-select-option:focus-visible{background:#eef5ff;color:#123e83;outline:0}.ma-select-option[aria-selected="true"]{background:#e8f1ff;color:var(--brand);font-weight:700}.ma-select-check{width:18px;color:var(--brand);font-weight:900;text-align:center}.ma-select-empty{padding:1rem;color:var(--muted);text-align:center}.ma-select-list::-webkit-scrollbar{width:9px}.ma-select-list::-webkit-scrollbar-thumb{background:#cbd7e7;border-radius:999px;border:2px solid #fff}
.ma-date-trigger.empty .ma-date-value{color:#7c899d}.ma-date-icon{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border-radius:7px;background:#edf4ff;color:var(--brand);font-size:.82rem}.ma-calendar{position:fixed;z-index:2147483000;width:min(338px,calc(100vw - 20px));padding:.8rem;border:1px solid #cbd8e8;border-radius:16px;background:#fff;color:var(--text);box-shadow:0 24px 65px rgba(9,32,72,.24);user-select:none}.ma-calendar-head{display:grid;grid-template-columns:38px 1fr 38px;align-items:center;gap:.4rem;margin-bottom:.65rem}.ma-calendar-nav{width:38px;height:38px;display:grid;place-items:center;padding:0;border:1px solid var(--border);border-radius:10px;background:#f8fbff;color:var(--brand);font-size:1.3rem;font-weight:800}.ma-calendar-nav:hover{background:#edf4ff;border-color:#bdd1ed}.ma-calendar-title{text-align:center;font-weight:800;font-size:.98rem;text-transform:capitalize}.ma-calendar-weekdays,.ma-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.ma-calendar-weekdays{margin-bottom:.2rem}.ma-calendar-weekdays span{display:grid;place-items:center;height:27px;color:#7a8799;font-size:.68rem;font-weight:800;text-transform:uppercase}.ma-calendar-day{aspect-ratio:1/1;min-height:34px;padding:0;border:0;border-radius:9px;background:transparent;color:var(--text);font-size:.78rem}.ma-calendar-day:hover:not(:disabled){background:#edf4ff;color:var(--brand)}.ma-calendar-day.outside{color:#b0bac9}.ma-calendar-day.today{box-shadow:inset 0 0 0 1px #9ebceb;color:var(--brand);font-weight:800}.ma-calendar-day.selected{background:var(--brand)!important;color:#fff!important;font-weight:800;box-shadow:0 4px 10px rgba(15,78,182,.22)}.ma-calendar-day:disabled{opacity:.3;cursor:not-allowed}.ma-calendar-foot{display:flex;justify-content:space-between;gap:.6rem;margin-top:.65rem;padding-top:.65rem;border-top:1px solid var(--border)}.ma-calendar-action{padding:.48rem .75rem;border-radius:8px}.ma-calendar-action.primary{margin-inline-start:auto}
.erp-global-tooltip{position:fixed;z-index:2147483646;max-width:min(420px,calc(100vw - 20px));padding:7px 10px;border-radius:7px;background:#050505!important;color:#fff!important;font-size:12px;font-weight:600;line-height:1.35;letter-spacing:.01em;white-space:normal;overflow-wrap:anywhere;pointer-events:none;box-shadow:0 8px 24px rgba(0,0,0,.32);border:1px solid rgba(255,255,255,.08)}.erp-global-tooltip[hidden]{display:none!important}
[dir="rtl"] .ma-select-option,[dir="rtl"] .ma-select-trigger,[dir="rtl"] .ma-date-trigger{text-align:right}
@media(max-width:600px){.ma-select-panel{position:fixed;inset-inline:10px!important;left:10px!important;right:10px!important;top:auto!important;bottom:10px;width:auto;max-width:none;border-radius:16px}.ma-select-list{max-height:42vh}.ma-calendar{width:calc(100vw - 20px)}}

/* v2026.08.31.27 - global 10-result quick dropdown + full lookup dialog */
.ma-select-footer{padding:.42rem .48rem .48rem;border-top:1px solid var(--border);background:#f8fbff}.ma-select-footer[hidden]{display:none!important}.ma-select-show-more{width:100%;min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.55rem .72rem;border:1px solid #c8d8ee;border-radius:9px;background:#fff;color:var(--brand);font-weight:800;text-align:start;cursor:pointer}.ma-select-show-more:hover,.ma-select-show-more:focus-visible{background:#edf4ff;border-color:#9fbce4;outline:0;box-shadow:0 0 0 3px rgba(15,78,182,.08)}.ma-select-show-more-count{min-width:28px;padding:.12rem .42rem;border-radius:999px;background:#e9f1ff;color:#315b9c;font-size:.7rem;text-align:center}.ma-lookup-open{overflow:hidden}.ma-lookup-overlay{position:fixed;inset:0;z-index:2147483400;display:grid;place-items:center;padding:22px;background:rgba(9,24,49,.52);backdrop-filter:blur(2px)}.ma-lookup-dialog{width:min(840px,96vw);max-height:min(760px,90vh);display:flex;flex-direction:column;overflow:hidden;border:1px solid #c5d4e8;border-radius:16px;background:#fff;color:var(--text);box-shadow:0 28px 80px rgba(7,29,67,.3)}.ma-lookup-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem .9rem;border-bottom:1px solid var(--border)}.ma-lookup-head h2{margin:.1rem 0 0;font-size:1.08rem}.ma-lookup-eyebrow{display:block;color:var(--brand);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.ma-lookup-close{flex:0 0 40px;width:40px;height:40px;display:grid;place-items:center;padding:0;border:1px solid var(--border);border-radius:10px;background:#f8fbff;color:#435672;font-size:1.45rem;line-height:1;cursor:pointer}.ma-lookup-close:hover,.ma-lookup-close:focus-visible{background:#edf4ff;color:var(--brand);outline:0}.ma-lookup-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.8rem 1rem;border-bottom:1px solid var(--border);background:#f8fbff}.ma-lookup-search{width:100%;height:42px!important;padding:.58rem .75rem!important;border-radius:9px!important;background:#fff!important}.ma-lookup-count{white-space:nowrap;padding:.32rem .55rem;border-radius:999px;background:#e9f1ff;color:#315b9c;font-size:.75rem;font-weight:800}.ma-lookup-list{min-height:180px;overflow:auto;padding:.5rem}.ma-lookup-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:42px;padding:.62rem .72rem;border:0;border-radius:9px;background:transparent;color:var(--text);text-align:start;cursor:pointer}.ma-lookup-row:hover,.ma-lookup-row:focus-visible{background:#eef5ff;color:#123e83;outline:0}.ma-lookup-row[aria-selected="true"]{background:#e8f1ff;color:var(--brand);font-weight:800}.ma-lookup-row:disabled{opacity:.48;cursor:not-allowed}.ma-lookup-row-main{min-width:0;overflow-wrap:anywhere}.ma-lookup-row-check{flex:0 0 22px;color:var(--brand);font-weight:900;text-align:center}.ma-lookup-empty{padding:2rem;color:var(--muted);text-align:center}.ma-lookup-list::-webkit-scrollbar{width:10px}.ma-lookup-list::-webkit-scrollbar-thumb{background:#c7d4e5;border-radius:999px;border:2px solid #fff}[dir="rtl"] .ma-lookup-row,[dir="rtl"] .ma-lookup-head,[dir="rtl"] .ma-select-show-more{text-align:right}
@media(max-width:600px){.ma-lookup-overlay{padding:8px;place-items:end center}.ma-lookup-dialog{width:100%;max-height:86vh;border-radius:16px}.ma-lookup-tools{grid-template-columns:1fr}.ma-lookup-count{justify-self:start}.ma-lookup-head{padding:.9rem}.ma-select-show-more{min-height:42px}}

/* v2026.08.31.28 - registered company edit workflow */
.company-registry-edit-form{display:grid;gap:0}.company-edit-section{padding:2px 0 18px}.company-edit-section-bordered{padding-top:18px;border-top:1px solid var(--border)}.company-edit-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.company-edit-section-head h2{margin:0 0 3px}.company-edit-section-head p{margin:0;color:var(--muted);font-size:.78rem}.company-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.company-edit-grid .span-2{grid-column:span 2}.required-mark{display:inline-block;margin-inline-start:3px;color:var(--danger)!important;font-style:normal;font-weight:900;line-height:1;vertical-align:baseline}.field>span>.required-mark{color:var(--danger)!important}.company-registry-edit-form input[readonly]{font-weight:650}.company-registry-edit-form .ma-select{min-width:0}
@media(max-width:760px){.company-edit-grid{grid-template-columns:1fr}.company-edit-grid .span-2{grid-column:auto}}

/* v2026.08.31.29 theme packs - user preference persists in AspNetUsers.ThemeKey */
body.theme-blue{--brand:#0f4eb6;--brand-2:#0b3f96;--brand-dark:#0b2554;--brand-soft:#edf4ff}
body.theme-ocean{--brand:#087f8c;--brand-2:#056773;--brand-dark:#064e57;--brand-soft:#e8f8fa}
body.theme-emerald{--brand:#0f8a5f;--brand-2:#0a704d;--brand-dark:#07583d;--brand-soft:#e9f8f2}
body.theme-violet{--brand:#6d48c7;--brand-2:#5835ad;--brand-dark:#422783;--brand-soft:#f2edff}
body.theme-rose{--brand:#c23b67;--brand-2:#a82e56;--brand-dark:#7f2140;--brand-soft:#fff0f5}
body.theme-amber{--brand:#b66b08;--brand-2:#945707;--brand-dark:#6f4106;--brand-soft:#fff6e7}
body.theme-slate{--brand:#52637a;--brand-2:#3f4e63;--brand-dark:#2c3748;--brand-soft:#eff3f7}
body.theme-dark{--brand:#5b8def;--brand-2:#3f72d6;--brand-dark:#111827;--brand-soft:#1f2937;--bg:#111827;--surface:#182235;--surface-2:#1d293c;--surface-soft:#202b3d;--surface-muted:#202b3d;--surface-subtle:#1d293c;--text:#edf3ff;--text-soft:#c8d2e3;--text-muted:#aebbd0;--muted-text:#aebbd0;--muted:#aebbd0;--border:#2d3b51;--border-strong:#3d4d67;--primary:#5b8def;--primary-soft:#24334a;--success-soft:#173c2a;--danger-soft:#3a2026;--warning-soft:#44341f;--table-bg:#182235;--table-head-bg:#202f44;--table-head-text:#c8d5e8;--table-border:#2d3b51;--table-hover:#24364f;--shadow:0 8px 28px rgba(0,0,0,.24);--shadow-sm:0 3px 12px rgba(0,0,0,.18)}
body.theme-dark .app-sidebar,body.theme-dark input,body.theme-dark select,body.theme-dark textarea,body.theme-dark .button,body.theme-dark button{background:var(--surface);color:var(--text)}
body.theme-dark .nav-item{color:#c8d2e3}body.theme-dark .nav-item:hover{background:#202e44}body.theme-dark input[readonly],body.theme-dark input:disabled,body.theme-dark select:disabled{background:#202b3d;color:#98a7bd}

.theme-switcher{position:relative;margin:0;flex:0 0 auto}.theme-picker-trigger{height:38px;min-width:138px;display:flex;align-items:center;gap:7px;padding:0 9px;border:1px solid rgba(255,255,255,.24);border-radius:9px;background:rgba(255,255,255,.08);color:#fff;box-shadow:none}.theme-picker-trigger:hover,.theme-picker-trigger:focus-visible,.theme-switcher.open .theme-picker-trigger{border-color:rgba(255,255,255,.42);background:rgba(255,255,255,.14);color:#fff;outline:0}.theme-picker-icon{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:rgba(255,255,255,.12);font-size:.8rem}.theme-picker-label{min-width:0;flex:1;text-align:start;font-size:.78rem;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.theme-picker-chevron{font-size:.8rem;transition:transform .15s ease}.theme-switcher.open .theme-picker-chevron{transform:rotate(180deg)}.theme-picker-menu{position:absolute;z-index:2147483200;inset-inline-end:0;top:calc(100% + 7px);width:230px;padding:7px;border:1px solid var(--border-strong);border-radius:12px;background:var(--surface);color:var(--text);box-shadow:0 18px 48px rgba(7,29,67,.24)}.theme-picker-menu[hidden]{display:none!important}.theme-picker-option{width:100%;min-height:39px;display:grid;grid-template-columns:22px minmax(0,1fr) 18px;align-items:center;gap:8px;padding:7px 9px;border:0;border-radius:8px;background:transparent;color:var(--text);text-align:start;font-size:.79rem;font-weight:650;box-shadow:none}.theme-picker-option:hover,.theme-picker-option:focus-visible{background:var(--brand-soft);color:var(--brand);outline:0}.theme-picker-option.selected{background:var(--brand-soft);color:var(--brand);font-weight:850}.theme-picker-check{font-weight:900;text-align:center}.theme-swatch{width:18px;height:18px;border-radius:6px;border:1px solid rgba(20,33,61,.16);box-shadow:inset 0 0 0 2px rgba(255,255,255,.55)}.theme-swatch-blue{background:#0f4eb6}.theme-swatch-ocean{background:#087f8c}.theme-swatch-emerald{background:#0f8a5f}.theme-swatch-violet{background:#6d48c7}.theme-swatch-rose{background:#c23b67}.theme-swatch-amber{background:#b66b08}.theme-swatch-slate{background:#52637a}.theme-swatch-dark{background:#182235}.theme-dark .theme-picker-menu{background:#182235;border-color:#3d4d67}.theme-dark .theme-picker-option{color:#edf3ff}.theme-dark .theme-picker-option:hover,.theme-dark .theme-picker-option:focus-visible,.theme-dark .theme-picker-option.selected{background:#24334a;color:#9bbcff}.theme-dark .theme-swatch{border-color:rgba(255,255,255,.2);box-shadow:inset 0 0 0 2px rgba(255,255,255,.12)}
.nav-tree-node>.nav-children{margin-inline-start:16px;padding-inline-start:6px;border-inline-start:1px dashed var(--border);display:grid;gap:1px}.nav-tree-node>.nav-children .nav-item{font-size:.8rem;padding-block:7px}.nav-count{margin-inline-start:auto;min-width:20px;height:20px;display:grid;place-items:center;border-radius:10px;background:var(--brand-soft);color:var(--brand);font-size:.68rem;font-weight:800}.menu-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}.menu-dashboard-card{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:12px;padding:18px;background:var(--surface);border:1px solid var(--border);border-radius:14px;color:var(--text);box-shadow:var(--shadow-sm)}.menu-dashboard-card:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-1px)}.menu-dashboard-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);font-size:1.2rem}.menu-dashboard-card strong,.menu-dashboard-card small{display:block}.menu-dashboard-card small{margin-top:4px;color:var(--muted)}
.required-star{color:#d42332;font-weight:900;margin-inline-start:2px}.inline-edit-row{display:grid;grid-template-columns:minmax(90px,.7fr) minmax(180px,1.5fr) auto auto;gap:8px;align-items:center;width:100%}.inline-edit-row.option-row{grid-template-columns:minmax(80px,.7fr) minmax(160px,1.4fr) 80px auto}.inline-edit-row.shift-row{grid-template-columns:90px minmax(150px,1.2fr) 120px 120px auto}.hr-master-grid{align-items:start}.shift-checkbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.shift-check{border:1px solid var(--border);border-radius:9px;padding:9px 10px;background:var(--surface-2)}.shift-check span{display:grid}.shift-check small{font-size:.72rem}.shift-assignment-form [data-multiple-shifts][hidden],.shift-assignment-form [data-single-shift][hidden]{display:none!important}
@media(max-width:900px){.inline-edit-row,.inline-edit-row.option-row,.inline-edit-row.shift-row{grid-template-columns:1fr 1fr}.inline-edit-row .inline-actions{grid-column:1/-1}.theme-picker-trigger{min-width:112px}.theme-picker-menu{width:210px}.nav-tree-node>.nav-children{margin-inline-start:8px}}

/* v2026.08.31.31 - complete dark theme surface/readability coverage */
body.theme-dark .app-shell,body.theme-dark .app-workspace,body.theme-dark .workspace-content{background:var(--bg);color:var(--text)}
body.theme-dark .app-sidebar{background:var(--surface);border-color:var(--border)}
body.theme-dark .sidebar-nav,body.theme-dark .sidebar-footer{background:var(--surface)}
body.theme-dark .nav-section-title{color:#8fa0b8}
body.theme-dark .nav-item.active{background:linear-gradient(90deg,#22324b,#1d293c);color:#9bbcff}
body.theme-dark .nav-icon{background:#202b3d;color:#aebbd0}
body.theme-dark .nav-item.active .nav-icon,body.theme-dark .nav-item:hover .nav-icon{background:#283a57;color:#9bbcff}
body.theme-dark .language-switch{background:#202b3d;border-color:var(--border)}
body.theme-dark .language-switch button,body.theme-dark .language-switch a{background:transparent;color:#aebbd0}
body.theme-dark .language-switch button.active,body.theme-dark .language-switch a.active{background:#2a3b56;color:#dce8ff}
body.theme-dark .panel,body.theme-dark .card,body.theme-dark .subscription-card,body.theme-dark .detail-card,body.theme-dark .menu-dashboard-card{background:var(--surface);color:var(--text);border-color:var(--border)}
body.theme-dark input,body.theme-dark select,body.theme-dark textarea{background:var(--surface);color:var(--text);border-color:var(--border-strong)}
body.theme-dark input:focus,body.theme-dark select:focus,body.theme-dark textarea:focus{border-color:#6e96e5;box-shadow:0 0 0 3px rgba(91,141,239,.16)}
body.theme-dark input[readonly],body.theme-dark input:disabled,body.theme-dark select:disabled{background:#202b3d;color:#98a7bd}
body.theme-dark .button:not(.primary):not(.danger),body.theme-dark button:not(.primary):not(.danger-button):not(.logout-button):not(.sidebar-toggle):not(.theme-picker-trigger):not(.theme-picker-option){background:var(--surface);color:var(--text);border-color:var(--border-strong)}
body.theme-dark .button.primary,body.theme-dark button.primary,body.theme-dark .primary{background:var(--brand);border-color:var(--brand);color:#fff}
body.theme-dark .button.primary:hover,body.theme-dark button.primary:hover,body.theme-dark .primary:hover{background:var(--brand-2);color:#fff}
body.theme-dark .ma-select-trigger,body.theme-dark .ma-date-trigger{background:var(--surface);color:var(--text);border-color:var(--border-strong)}
body.theme-dark .ma-select-trigger:hover,body.theme-dark .ma-date-trigger:hover{background:#202b3d;border-color:#50617b}
body.theme-dark .ma-select-panel,body.theme-dark .ma-calendar,body.theme-dark .ma-lookup-dialog{background:var(--surface);color:var(--text);border-color:var(--border-strong)}
body.theme-dark .ma-select-search-wrap,body.theme-dark .ma-select-footer,body.theme-dark .ma-lookup-tools{background:#202b3d;border-color:var(--border)}
body.theme-dark .ma-select-search,body.theme-dark .ma-lookup-search{background:var(--surface)!important;color:var(--text)!important;border-color:var(--border-strong)!important}
body.theme-dark .ma-select-option,body.theme-dark .ma-lookup-row,body.theme-dark .ma-calendar-day{color:var(--text)}
body.theme-dark .ma-select-option:hover,body.theme-dark .ma-select-option:focus-visible,body.theme-dark .ma-lookup-row:hover,body.theme-dark .ma-lookup-row:focus-visible,body.theme-dark .ma-calendar-day:hover:not(:disabled){background:#24334a;color:#9bbcff}
body.theme-dark .ma-select-option[aria-selected="true"],body.theme-dark .ma-lookup-row[aria-selected="true"],body.theme-dark .ma-calendar-day.selected{background:#2b4166!important;color:#dce8ff!important}
body.theme-dark .ma-select-show-more,body.theme-dark .ma-calendar-nav,body.theme-dark .ma-lookup-close{background:#202b3d;color:#9bbcff;border-color:#40516b}
body.theme-dark .ma-select-show-more:hover,body.theme-dark .ma-calendar-nav:hover,body.theme-dark .ma-lookup-close:hover{background:#293a55}
body.theme-dark .ma-lookup-count,body.theme-dark .ma-select-show-more-count{background:#263954;color:#bcd0f1}
body.theme-dark .info-callout{background:#1d2d44;border-color:#304868;color:#bcd0f1}
body.theme-dark .info-callout p{color:#9fb0c8}
body.theme-dark .warning-callout{background:#332a19;border-color:#5f4d25;color:#f3d69d}
body.theme-dark .toast-banner,body.theme-dark .alert{background:#1d2d44;border-color:#304868;color:#d9e6fb}


/* v2026.08.31.32 - collapsed sidebar accordion + Employee tab/wizard workflow */
.nav-tree-node>.nav-children[hidden]{display:none!important}
.nav-branch-toggle{width:100%;border:0!important;background:transparent!important;box-shadow:none!important;text-align:start}
.nav-branch-toggle .nav-label{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nav-caret{width:16px;text-align:center;color:#8492a8;font-size:1rem;font-weight:800;transition:transform .16s ease}
.nav-tree-node.expanded>.nav-branch-toggle{background:#f2f6fd!important;color:var(--brand)}
.nav-tree-node.expanded>.nav-branch-toggle .nav-icon{background:#dbe9ff;color:var(--brand)}
.nav-tree-node.expanded>.nav-branch-toggle .nav-caret{transform:rotate(90deg);color:var(--brand)}
.nav-tree-node>.nav-children{margin-inline-start:18px;padding:3px 0 5px 7px;border-inline-start:1px dashed var(--border);display:grid;gap:1px}
.nav-tree-node>.nav-children .nav-item{font-size:.79rem;padding-block:7px}
.nav-dashboard-link{font-weight:700;color:var(--brand)}
.nav-dashboard-link .nav-icon{background:var(--brand-soft);color:var(--brand)}
body.theme-dark .nav-branch-toggle{color:#c8d2e3!important}
body.theme-dark .nav-tree-node.expanded>.nav-branch-toggle{background:#202e44!important;color:#9bbcff!important}
body.theme-dark .nav-tree-node.expanded>.nav-branch-toggle .nav-icon{background:#283a57;color:#9bbcff}

.employee-form-tabs{min-width:0}
.employee-form-tabs>.tab-buttons{display:flex;gap:6px;align-items:center;overflow-x:auto;padding:4px;margin:0 0 18px;border-bottom:1px solid var(--border)}
.employee-form-tabs .tab-btn{width:auto;min-width:110px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-bottom:3px solid transparent;border-radius:8px 8px 0 0;background:transparent;color:var(--muted);padding:10px 13px;font-weight:700;white-space:nowrap;box-shadow:none}
.employee-form-tabs .tab-btn:hover:not(:disabled),.employee-form-tabs .tab-btn:focus-visible{background:var(--brand-soft);color:var(--brand);outline:0}
.employee-form-tabs .tab-btn.active{color:var(--brand);border-bottom-color:var(--brand);background:var(--brand-soft)}
.employee-form-tabs .tab-panel[hidden]{display:none!important}
.employee-form-tabs .tab-panel{animation:ma-tab-in .14s ease}
@keyframes ma-tab-in{from{opacity:.5;transform:translateY(3px)}to{opacity:1;transform:none}}

.employee-wizard>.employee-wizard-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0 0 18px;border-bottom:1px solid var(--border);overflow:visible;counter-reset:ma-step}
.employee-wizard .employee-wizard-steps .tab-btn{position:relative;min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr);justify-content:start;text-align:start;border:0;border-radius:0;background:transparent!important;color:var(--muted);padding:4px 14px 4px 0;overflow:visible}
.employee-wizard .employee-wizard-steps .tab-btn:before{content:attr(data-step-number);width:32px;height:32px;border:2px solid var(--border-strong);border-radius:50%;display:grid;place-items:center;background:var(--surface);color:var(--muted);font-weight:850;z-index:2}
.employee-wizard .employee-wizard-steps .tab-btn:after{content:"";position:absolute;top:19px;inset-inline-start:34px;inset-inline-end:0;height:2px;background:var(--border);z-index:1}
.employee-wizard .employee-wizard-steps .tab-btn:last-child:after{display:none}
.employee-wizard .employee-wizard-steps .tab-btn.active{color:var(--brand);font-weight:850}
.employee-wizard .employee-wizard-steps .tab-btn.active:before{border-color:var(--brand);background:var(--brand);color:#fff;box-shadow:0 0 0 4px var(--brand-soft)}
.employee-wizard .employee-wizard-steps .tab-btn.complete{color:var(--text)}
.employee-wizard .employee-wizard-steps .tab-btn.complete:before{content:"✓";border-color:var(--success);background:var(--success);color:#fff}
.employee-wizard .employee-wizard-steps .tab-btn.complete:after{background:var(--success)}
.employee-wizard .employee-wizard-steps .tab-btn:disabled{opacity:.7;cursor:default}
.employee-wizard .tab-panel{min-height:260px}
.employee-wizard-actions{position:sticky;bottom:0;z-index:8;background:var(--surface);padding:14px 0 2px;box-shadow:0 -10px 24px rgba(20,51,94,.04)}
.employee-wizard-actions [hidden]{display:none!important}
body.theme-dark .employee-wizard-actions{background:var(--surface);box-shadow:0 -10px 24px rgba(0,0,0,.16)}
body.theme-dark .employee-form-tabs>.tab-buttons{border-color:var(--border)}
body.theme-dark .employee-form-tabs .tab-btn.active{background:#24334a;color:#9bbcff}
body.theme-dark .employee-wizard .employee-wizard-steps .tab-btn{background:transparent!important}
body.theme-dark .employee-wizard .employee-wizard-steps .tab-btn:before{background:var(--surface);border-color:var(--border-strong)}
body.theme-dark .employee-wizard .employee-wizard-steps .tab-btn.active:before{background:var(--brand);border-color:var(--brand);color:#fff}
@media(max-width:760px){
  .employee-wizard>.employee-wizard-steps{grid-template-columns:1fr 1fr;gap:8px}
  .employee-wizard .employee-wizard-steps .tab-btn:after{display:none}
  .employee-wizard .employee-wizard-steps .tab-btn{padding:6px;border:1px solid var(--border);border-radius:9px}
  .employee-wizard .employee-wizard-steps .tab-btn.active{border-color:var(--brand)}
  .employee-form-tabs>.tab-buttons{align-items:stretch}
  .employee-wizard-actions{flex-wrap:wrap}
  .employee-wizard-actions>a{margin-inline-end:auto}
}

/* v2026.09.01.33 HR Settings split-page workflow */
.hr-settings-dashboard{align-items:stretch}.hr-settings-dashboard .menu-dashboard-card{min-height:92px}.hr-list-toolbar{display:flex;justify-content:flex-end;margin:16px 0 10px}.hr-list-toolbar input[type="search"]{width:min(380px,100%);min-height:42px}.hr-no-results{padding:16px;text-align:center}.hr-settings-dashboard .menu-dashboard-card>span:last-child{font-size:1.2rem;color:var(--muted)}
@media(max-width:700px){.hr-list-toolbar{justify-content:stretch}.hr-list-toolbar input[type="search"]{width:100%}}
.inline-edit-row.option-row{grid-template-columns:minmax(80px,.65fr) minmax(160px,1.4fr) 90px auto auto}.inline-edit-row.shift-row{grid-template-columns:90px minmax(150px,1.2fr) 120px 120px auto auto}
@media(max-width:900px){.inline-edit-row.option-row,.inline-edit-row.shift-row{grid-template-columns:1fr 1fr}.inline-edit-row.option-row .inline-actions,.inline-edit-row.shift-row .inline-actions{grid-column:1/-1}}
.shift-duration-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);min-height:48px}.shift-duration-card span{font-weight:700;color:var(--muted)}.shift-duration-card strong{font-size:1.08rem;color:var(--accent)}.shift-duration-inline{display:inline-flex;align-items:center;min-height:36px;font-weight:800;color:var(--accent);white-space:nowrap}.inline-edit-row.shift-row{grid-template-columns:90px minmax(150px,1.2fr) 120px 120px 110px auto auto}
@media(max-width:900px){.inline-edit-row.shift-row{grid-template-columns:1fr 1fr}.inline-edit-row.shift-row .shift-duration-inline{min-height:auto}.inline-edit-row.shift-row .inline-actions{grid-column:1/-1}}

/* v2026.09.02.35 - advanced Single/Double Duty Shift setup */
.shift-master-page{display:grid;gap:18px}.shift-create-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.shift-type-card{display:flex;align-items:center;gap:12px;text-align:start;padding:14px 16px;border:1px solid var(--border-strong);border-radius:12px;background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);min-height:78px}.shift-type-card:hover{border-color:#9bb9e8;background:var(--brand-soft)}.shift-type-card.is-active{border-color:var(--brand);background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand)}.shift-type-card>span:last-child{display:grid;gap:3px;min-width:0}.shift-type-card strong{font-size:.96rem}.shift-type-card small{font-size:.73rem}.shift-type-icon{width:38px;height:38px;flex:0 0 38px;border-radius:10px;display:grid;place-items:center;background:#edf3fb;color:var(--brand);font-size:1.22rem;font-weight:900}.shift-type-card.is-active .shift-type-icon{background:var(--brand);color:#fff}
.shift-editor{border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden;box-shadow:var(--shadow-sm);scroll-margin-top:90px}.shift-editor.is-editing{border-color:#8eb1e8;box-shadow:0 0 0 3px rgba(15,78,182,.06),var(--shadow-sm)}.shift-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,var(--surface),var(--surface-2))}.shift-editor-head h2{margin:1px 0 4px;font-size:1.18rem}.shift-editor-head p{margin:0;color:var(--muted);font-size:.78rem}.shift-edit-mode{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:#fff4d7;color:#855700;font-size:.7rem;font-weight:800;white-space:nowrap}.shift-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.shift-editor-section{padding:16px 18px;border-bottom:1px solid var(--border)}.shift-editor-section:nth-child(odd){border-inline-end:1px solid var(--border)}.shift-section-title{display:flex;align-items:flex-start;gap:10px;margin-bottom:13px}.shift-section-title>span{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);font-size:.74rem;font-weight:900}.shift-section-title>div{display:grid;gap:2px}.shift-section-title strong{font-size:.88rem}.shift-section-title small{font-size:.7rem}.shift-ot-check{align-self:end;min-height:40px;display:flex!important;flex-direction:row!important;align-items:center!important;padding:9px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2)}.shift-ot-check input{width:auto}.shift-duty-section{grid-column:1/-1;border-inline-end:0!important}.shift-periods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.shift-period-card{position:relative;border:1px solid var(--border);border-radius:11px;padding:18px 13px 12px;background:var(--surface-2)}.shift-period-second{border-color:#c7d8f2;background:#f4f8ff}.shift-period-card[hidden]{display:none!important}.shift-period-badge{position:absolute;top:-10px;inset-inline-start:12px;padding:3px 8px;border-radius:999px;background:var(--surface);border:1px solid var(--border);color:var(--brand);font-size:.68rem;font-weight:800}.shift-overnight{margin-top:12px;display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px}.shift-overnight input{width:auto}.shift-overnight small{margin-inline-start:4px}.shift-break-note{margin:9px 0 0;font-size:.72rem}.shift-total-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;background:linear-gradient(90deg,var(--brand-soft),#f8fbff);border-top:1px solid #d5e3f7}.shift-total-bar>div{display:grid;gap:2px}.shift-total-bar span{font-weight:800}.shift-total-bar small{font-size:.7rem}.shift-total-bar strong{font-size:1.38rem;color:var(--brand);white-space:nowrap}.shift-editor-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--border);background:var(--surface)}.shift-save-button{display:inline-flex;align-items:center;gap:7px}.shift-list-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding-top:4px}.shift-list-head h2{margin:0 0 3px}.shift-list-head p{margin:0;color:var(--muted);font-size:.76rem}.shift-list-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.shift-list-tools input[type="search"]{width:min(340px,100%);min-height:40px}.shift-format-toggle{display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);font-size:.74rem;white-space:nowrap}.shift-format-toggle input{width:auto}.shift-master-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:11px}.shift-master-table{min-width:1250px}.shift-master-table th{position:sticky;top:0;z-index:1}.shift-master-table td{white-space:nowrap}.shift-name-cell{min-width:190px}.shift-name-cell strong,.shift-name-cell span{display:block}.shift-name-cell strong{color:var(--brand)}.shift-name-cell span{margin-top:2px;color:var(--text);font-weight:650}.shift-grid-total{color:var(--brand)}.shift-type-pill{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:.68rem;font-weight:800}.shift-type-pill.single{background:#eaf9f3;color:#0f7755}.shift-type-pill.double{background:#edf3ff;color:#345fa8}.shift-row-actions{display:flex;align-items:center;gap:6px}.shift-action-icon{width:34px;height:34px;padding:0;display:grid;place-items:center;border-radius:9px;border:1px solid var(--border-strong);background:var(--surface);font-size:1rem;font-weight:900}.shift-action-icon.edit{color:var(--brand);background:var(--brand-soft);border-color:#c9daf3}.shift-action-icon.deactivate{color:#ad313a;background:#fff2f2;border-color:#f0c4c7}.shift-action-icon.activate{color:#0f7755;background:#eaf9f3;border-color:#bfe5d7}.shift-action-icon:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}
body.theme-dark .shift-type-card,body.theme-dark .shift-editor,body.theme-dark .shift-editor-actions,body.theme-dark .shift-format-toggle,body.theme-dark .shift-period-badge{background:var(--surface);color:var(--text);border-color:var(--border-strong)}body.theme-dark .shift-type-card:hover,body.theme-dark .shift-type-card.is-active{background:#24334a}body.theme-dark .shift-type-icon{background:#24334a;color:#9bbcff}body.theme-dark .shift-type-card.is-active .shift-type-icon{background:var(--brand);color:#fff}body.theme-dark .shift-editor-head{background:#202b3d;border-color:var(--border)}body.theme-dark .shift-editor-section{border-color:var(--border)}body.theme-dark .shift-ot-check,body.theme-dark .shift-period-card{background:#202b3d;border-color:var(--border-strong)}body.theme-dark .shift-period-second{background:#213047;border-color:#40516b}body.theme-dark .shift-total-bar{background:#1d2d44;border-color:#304868}body.theme-dark .shift-action-icon{border-color:var(--border-strong)}body.theme-dark .shift-action-icon.edit{background:#24334a;color:#9bbcff}body.theme-dark .shift-action-icon.deactivate{background:#3a2227;color:#ffabb0}body.theme-dark .shift-action-icon.activate{background:#19332d;color:#8ce0c1}
@media(max-width:900px){.shift-editor-grid{grid-template-columns:1fr}.shift-editor-section:nth-child(odd){border-inline-end:0}.shift-periods{grid-template-columns:1fr}.shift-list-head{align-items:stretch;flex-direction:column}.shift-list-tools{justify-content:stretch}.shift-list-tools input[type="search"]{width:100%}}
@media(max-width:620px){.shift-create-switch{grid-template-columns:1fr}.shift-editor-head{flex-direction:column}.shift-total-bar{align-items:flex-start}.shift-editor-actions{justify-content:stretch;flex-wrap:wrap}.shift-editor-actions .btn{flex:1}.shift-list-tools{display:grid;grid-template-columns:1fr}.shift-format-toggle{justify-content:center}}

/* v2026.09.02.36 - destructive company reset */
.danger-reset-panel{max-width:980px}
.danger-callout{border:1px solid #fecaca;background:#fff1f2;color:#881337;border-radius:12px;padding:16px 18px;margin-bottom:18px}
.danger-callout strong{display:block;font-size:1rem;margin-bottom:6px}.danger-callout p{margin:5px 0;line-height:1.5}
.reset-confirm-field{max-width:620px;margin-top:18px}.button.danger{background:#b91c1c;color:#fff;border-color:#b91c1c}.button.danger:hover{background:#991b1b;border-color:#991b1b}
body.theme-dark .danger-callout{background:#3a151c;border-color:#7f1d1d;color:#fecdd3}
.danger-icon{color:#b91c1c!important}.danger-icon:hover{background:#fff1f2!important;border-color:#fecaca!important}body.theme-dark .danger-icon:hover{background:#3a151c!important;border-color:#7f1d1d!important}

/* v2026.09.12.40 - global advanced calendar navigation + manual date entry */
.ma-date-control{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:stretch;width:100%;min-width:0}.ma-date-manual{width:100%;min-width:0;height:42px;padding:.62rem .8rem;border:1px solid var(--border-strong);border-inline-end:0;border-radius:10px 0 0 10px;background:#fff;color:var(--text);box-shadow:0 1px 2px rgba(20,51,94,.03);font:inherit}.ma-date-manual:hover{border-color:#9eb6d8;background:#fbfdff}.ma-date-manual:focus{position:relative;z-index:1;border-color:#6f9fe6;box-shadow:0 0 0 3px rgba(15,78,182,.10);outline:0}.ma-date-manual:invalid{border-color:#dc7070}.ma-date-open{width:44px;min-height:42px;display:grid;place-items:center;padding:0;border:1px solid var(--border-strong);border-radius:0 10px 10px 0;background:#f7faff;color:var(--brand);font-size:.9rem;cursor:pointer}.ma-date-open:hover,.ma-date-open:focus-visible{background:#edf4ff;border-color:#9eb6d8;outline:0}.ma-date-open:disabled,.ma-date-manual:disabled{background:#f2f5fa;color:#7b8798;cursor:not-allowed}.ma-date-manual[readonly]{background:#f2f5fa;color:#6e7c91}
[dir="rtl"] .ma-date-manual{border-inline-end:1px solid var(--border-strong);border-inline-start:0;border-radius:0 10px 10px 0;text-align:right}[dir="rtl"] .ma-date-open{border-radius:10px 0 0 10px}
.ma-calendar-head-advanced{grid-template-columns:38px minmax(0,1fr) minmax(72px,.65fr) 38px}.ma-calendar-heading{min-width:0;min-height:38px;padding:.38rem .5rem;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--text);font:inherit;font-size:.92rem;font-weight:850;text-transform:capitalize;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.ma-calendar-heading:hover,.ma-calendar-heading:focus-visible{background:#edf4ff;border-color:#c5d7ee;color:var(--brand);outline:0}.ma-calendar-year-heading{text-transform:none}.ma-calendar-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;min-height:228px;align-content:start;padding:.25rem 0}.ma-calendar-choice{min-height:48px;padding:.55rem .45rem;border:1px solid var(--border);border-radius:10px;background:#f9fbfe;color:var(--text);font:inherit;font-size:.8rem;font-weight:750;cursor:pointer}.ma-calendar-choice:hover,.ma-calendar-choice:focus-visible{background:#edf4ff;border-color:#a8c1e4;color:var(--brand);outline:0}.ma-calendar-choice.selected{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 5px 13px rgba(15,78,182,.18)}.ma-calendar-year-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ma-calendar-month-grid .ma-calendar-choice{text-transform:capitalize}
body.theme-dark .ma-date-manual,body.theme-dark .ma-date-open{background:var(--surface);color:var(--text);border-color:var(--border-strong)}body.theme-dark .ma-date-open{background:#202b3d;color:#9bbcff}body.theme-dark .ma-date-open:hover,body.theme-dark .ma-date-open:focus-visible{background:#293a55}body.theme-dark .ma-calendar-heading,body.theme-dark .ma-calendar-choice{color:var(--text)}body.theme-dark .ma-calendar-choice{background:#202b3d;border-color:#40516b}body.theme-dark .ma-calendar-heading:hover,body.theme-dark .ma-calendar-heading:focus-visible,body.theme-dark .ma-calendar-choice:hover,body.theme-dark .ma-calendar-choice:focus-visible{background:#293a55;color:#9bbcff}body.theme-dark .ma-calendar-choice.selected{background:#2b4166;border-color:#526e9e;color:#dce8ff}
@media(max-width:420px){.ma-calendar-head-advanced{grid-template-columns:36px minmax(0,1fr) 64px 36px}.ma-calendar-heading{padding-inline:.3rem;font-size:.82rem}.ma-calendar-choice-grid{gap:5px}.ma-calendar-choice{min-height:44px;padding:.4rem .3rem}}

/* v2026.09.12.42 - company-scoped accounting reports */
.reports-page-head{margin-bottom:14px}.report-summary-banner{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:linear-gradient(135deg,var(--surface),#f5f9ff);box-shadow:var(--shadow-sm);margin-bottom:22px}.report-summary-icon{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:#eaf3ff;color:var(--brand);font-size:1.2rem;font-weight:800}.report-summary-banner strong{display:block}.report-summary-banner p{margin:3px 0 0;color:var(--muted);font-size:.78rem}.report-category-section{margin-bottom:24px}.report-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.report-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;min-height:104px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);transition:.16s ease}.report-card:hover{transform:translateY(-2px);border-color:#a9c7ef;box-shadow:var(--shadow);color:var(--text)}.report-card-icon{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:#edf4ff;color:var(--brand);font-size:.73rem;font-weight:900}.report-card-body{min-width:0}.report-card-body b{display:block;font-size:.82rem;margin-bottom:4px}.report-card-body small{display:block;color:var(--muted);font-size:.68rem;line-height:1.35}.report-card-arrow{font-size:1.35rem;color:#9aabc1}.report-run-head{margin-bottom:12px}.report-actions{justify-content:flex-end}.report-filter-panel{padding:14px;margin-bottom:14px}.report-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.report-filter-grid .field{margin:0}.report-filter-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:12px;margin-top:12px}.report-filter-scope{margin-inline-start:auto;font-size:.7rem;color:var(--muted);font-weight:650}.report-notice{margin:0 0 14px}.report-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.report-metric-card{padding:13px 14px;border:1px solid var(--border);border-radius:11px;background:var(--surface);box-shadow:var(--shadow-sm)}.report-metric-card span{display:block;color:var(--muted);font-size:.69rem;font-weight:650}.report-metric-card strong{display:block;font-size:1.12rem;margin-top:4px}.report-result-panel{padding:0;overflow:hidden}.report-result-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;border-bottom:1px solid var(--border);background:#fbfcff}.report-result-heading strong{display:block;font-size:.83rem}.report-result-heading span,.report-result-heading small{display:block;color:var(--muted);font-size:.68rem}.report-result-heading>div:last-child{text-align:end}.report-table-wrap{overflow:auto;max-width:100%}.report-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.74rem}.report-table thead th{position:sticky;top:0;z-index:1;background:#f2f6fb;color:#56657a;font-size:.66rem;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--border-strong);padding:9px 10px;text-align:start;white-space:nowrap}.report-table td{padding:8px 10px;border-bottom:1px solid var(--border);vertical-align:top}.report-table tbody tr:hover:not(.report-section-row){background:#f8fbff}.report-table .number-cell{text-align:end;white-space:nowrap;font-variant-numeric:tabular-nums}.report-section-row td{background:#eaf2ff;color:#204f8f;font-weight:800;border-top:1px solid #cddff6;border-bottom:1px solid #cddff6;padding:8px 10px}.report-total-row td{background:#f8fafc;font-weight:750;border-top:1px solid var(--border-strong)}.report-grand-total td{background:#e8f1ff;font-weight:900;border-top:2px solid #8fb3e6;color:#163d74}.report-opening-row td{background:#fcfdff;font-style:italic;color:#64748b}.report-emphasis-row td{font-weight:800;background:#f6f9ff}.report-empty-state{text-align:center;padding:38px 20px;color:var(--muted)}.report-empty-state>span{display:grid;place-items:center;width:48px;height:48px;border-radius:13px;background:#edf4ff;color:var(--brand);font-size:1.35rem;margin:0 auto 10px}.report-empty-state strong{display:block;color:var(--text);margin-bottom:4px}.report-empty-state p{margin:0;font-size:.76rem}.selected-company-chip>div small{display:block}.selected-company-chip>div strong{display:block;font-size:.78rem}
body.theme-dark .report-summary-banner{background:var(--surface)}body.theme-dark .report-card,body.theme-dark .report-metric-card,body.theme-dark .report-result-panel{background:var(--surface)}body.theme-dark .report-result-heading{background:#151d2a}body.theme-dark .report-table thead th{background:#182231;color:#aebcd0}body.theme-dark .report-table tbody tr:hover:not(.report-section-row){background:#151f2e}body.theme-dark .report-section-row td{background:#172944;color:#9ec5ff;border-color:#29446b}body.theme-dark .report-total-row td{background:#151d28}body.theme-dark .report-grand-total td{background:#1b3150;color:#d8e9ff}body.theme-dark .report-opening-row td{background:#111924;color:#9baabc}body.theme-dark .report-emphasis-row td{background:#172337}
[dir=rtl] .report-table .number-cell{text-align:left}[dir=rtl] .report-result-heading>div:last-child{text-align:start}
@media(max-width:1200px){.report-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.report-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.report-card-grid,.report-filter-grid,.report-metric-grid{grid-template-columns:1fr}.report-result-heading{align-items:flex-start;flex-direction:column}.report-result-heading>div:last-child{text-align:start}.report-filter-scope{margin-inline-start:0;width:100%}.report-actions{justify-content:flex-start}}

/* v2026.09.12.44 - application-wide SVG icon pack, inline required markers, sidebar overflow cleanup */
:root{--sidebar:286px}
.app-sidebar{overflow:hidden}
.sidebar-nav{overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;min-width:0}
.nav-tree-node,.nav-tree-node>.nav-children,.nav-item{min-width:0;max-width:100%}
.nav-tree-node>.nav-children{width:calc(100% - 18px);box-sizing:border-box}
.nav-item>span:not(.nav-icon):not(.nav-count):not(.nav-caret){min-width:0;overflow-wrap:anywhere}
.nav-branch-toggle .nav-label{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.25}
.sidebar-brand>span:last-child{min-width:0}.sidebar-brand b{font-size:1rem;line-height:1.1;white-space:nowrap;overflow-wrap:normal;word-break:normal;letter-spacing:-.01em}.sidebar-brand small{font-size:.64rem;white-space:nowrap;line-height:1.2}
.app-svg-icon{width:1em;height:1em;display:inline-block;vertical-align:-.125em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.nav-icon .app-svg-icon,.menu-dashboard-icon .app-svg-icon,.report-card-icon .app-svg-icon,.metric-icon .app-svg-icon,.count-icon .app-svg-icon,.stat-icon .app-svg-icon,.node-icon .app-svg-icon{width:18px;height:18px}
.menu-dashboard-icon .app-svg-icon,.report-card-icon .app-svg-icon{width:21px;height:21px}
.report-summary-icon .app-svg-icon{width:24px;height:24px}.menu-dashboard-arrow .app-svg-icon,.report-card-arrow .app-svg-icon{width:15px;height:15px}.topbar-icon .app-svg-icon,.theme-picker-icon .app-svg-icon,.button-icon .app-svg-icon{width:16px;height:16px}
.button-icon{display:inline-flex;align-items:center;justify-content:center;margin-inline-end:4px}
.icon-button{display:inline-grid;place-items:center;min-width:34px;height:34px;padding:7px}
.icon-button .app-svg-icon,.shift-action-icon .app-svg-icon,.icon-action .app-svg-icon{width:16px;height:16px}
.field>label{display:inline-flex!important;flex-direction:row!important;align-items:baseline;gap:4px;width:fit-content;max-width:100%;flex-wrap:wrap}
.field>label .required-star{display:inline!important;line-height:1;margin-inline-start:1px}
.status-pill.active-status{background:#eaf9f1;color:#0b7a4d;border-color:#bfe8d2}.status-pill.inactive-status{background:#fff0f0;color:#b52d36;border-color:#f0c3c6}
@media(max-width:900px){:root{--sidebar:278px}.nav-tree-node>.nav-children{width:calc(100% - 8px)}}
.table-leading-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;background:var(--brand-soft);color:var(--brand);vertical-align:middle;margin-inline-end:5px}.table-leading-icon .app-svg-icon{width:15px;height:15px}

/* v2026.09.12.45 - inline row actions and report page side margins */
.inline-actions{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;white-space:nowrap}
.inline-actions>form{display:inline-flex;align-items:center;margin:0}
td>.inline-actions{width:max-content;max-width:100%}
.report-result-panel{margin-inline:8px}
@media(max-width:620px){.report-result-panel{margin-inline:0}}

/* v2026.09.13.47 - company voucher type master and unified voucher number editor */
.voucher-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.voucher-page-header h1{margin-bottom:5px}.voucher-page-header p{margin:0;color:var(--muted);max-width:860px}.voucher-type-editor,.voucher-type-list-panel,.voucher-number-editor,.voucher-number-list-panel{margin-top:14px}.voucher-type-form{max-width:none}.voucher-editor-actions{justify-content:flex-end}.voucher-lock-callout{margin:0 0 14px}.voucher-lock-callout strong{display:block}.voucher-lock-callout p{margin:3px 0 0}.voucher-code-pill{display:inline-flex;align-items:center;justify-content:center;min-width:46px;padding:4px 8px;border-radius:8px;background:var(--brand-soft);color:var(--brand);font-weight:850;letter-spacing:.03em}.voucher-row-note{display:block;margin-top:3px;color:var(--muted);font-size:.68rem}.voucher-type-table td,.voucher-number-table td{vertical-align:middle}.voucher-type-table td:last-child,.voucher-number-table td:last-child{width:1%;white-space:nowrap}.voucher-number-selector-row{display:grid;grid-template-columns:minmax(280px,1.2fr) auto minmax(260px,1fr);gap:14px;align-items:end;padding-bottom:15px;border-bottom:1px solid var(--border);margin-bottom:15px}.voucher-type-select-field{margin:0}.voucher-editor-status{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding-bottom:2px}.voucher-preview-live{min-height:62px;padding:10px 13px;border:1px solid #cdddf4;border-radius:10px;background:#f6f9ff;display:flex;flex-direction:column;justify-content:center;align-items:flex-end}.voucher-preview-live span{font-size:.68rem;color:var(--muted);font-weight:750;text-transform:uppercase;letter-spacing:.04em}.voucher-preview-live strong{margin-top:3px;color:var(--brand);font-size:1.02rem;word-break:break-word;text-align:end}.voucher-number-grid{max-width:none;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.voucher-check{min-height:40px!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px;padding:9px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);margin:0!important}.voucher-check input{width:auto}.voucher-number-form>.voucher-editor-actions{margin-top:14px}.voucher-locked-pill{background:#fff5df;color:#8a5a00;border:1px solid #edd8a7}.voucher-status-stack{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.voucher-format-code{display:inline-block;padding:5px 7px;border-radius:7px;background:var(--surface-2);border:1px solid var(--border);color:var(--text);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.73rem;white-space:nowrap}.voucher-type-list-panel .table-wrap,.voucher-number-list-panel .table-wrap{overflow:auto}.voucher-type-table,.voucher-number-table{min-width:880px}.voucher-type-list-panel .danger-icon,.voucher-number-list-panel .danger-icon{color:var(--danger)!important;background:#fff5f5!important;border-color:#efc8cb!important}
body.theme-dark .voucher-preview-live{background:#1b2a40;border-color:#344b6e}body.theme-dark .voucher-check,body.theme-dark .voucher-format-code{background:#202b3d;border-color:var(--border-strong)}body.theme-dark .voucher-locked-pill{background:#3c311d;color:#ffd98b;border-color:#66522e}body.theme-dark .voucher-type-list-panel .danger-icon,body.theme-dark .voucher-number-list-panel .danger-icon{background:#3a2227!important;color:#ffabb0!important;border-color:#6a353d!important}
@media(max-width:1050px){.voucher-number-selector-row{grid-template-columns:1fr 1fr}.voucher-preview-live{grid-column:1/-1;align-items:flex-start}.voucher-preview-live strong{text-align:start}.voucher-number-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.voucher-page-header{flex-direction:column}.voucher-number-selector-row,.voucher-number-grid,.voucher-type-form{grid-template-columns:1fr}.voucher-editor-status{padding:0}.voucher-preview-live{grid-column:auto}.voucher-editor-actions{justify-content:flex-start}.voucher-type-form .span-2{grid-column:auto}}
.voucher-number-selector-closed{grid-template-columns:minmax(280px,1.2fr) minmax(260px,1fr);align-items:end}.voucher-number-selector-closed .voucher-editor-status{min-height:40px;justify-content:flex-start}@media(max-width:700px){.voucher-number-selector-closed{grid-template-columns:1fr}}

/* v2026.09.13.49 - advanced company-owned payroll workflow */
.payroll-page-head{align-items:flex-end}.payroll-step-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 16px}.payroll-step-strip>a{display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:12px 13px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);text-decoration:none;box-shadow:var(--shadow-sm)}.payroll-step-strip>a:hover{border-color:var(--brand);background:var(--brand-soft)}.payroll-step-strip span{grid-row:1/3;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);font-weight:900}.payroll-step-strip b{font-size:.82rem}.payroll-step-strip small{font-size:.68rem;color:var(--muted);white-space:normal;line-height:1.25}.payroll-metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:16px}.payroll-metric{border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:13px 14px;box-shadow:var(--shadow-sm);min-width:0}.payroll-metric span{display:block;font-size:.7rem;color:var(--muted);font-weight:700}.payroll-metric strong{display:block;margin-top:4px;font-size:1.18rem;color:var(--text);overflow-wrap:anywhere}.payroll-metric.payroll-net{border-color:color-mix(in srgb,var(--brand) 38%,var(--border));background:var(--brand-soft)}.payroll-metric.payroll-net strong{color:var(--brand)}.payroll-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.payroll-editor-panel{margin-bottom:16px}.payroll-component-form{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-component-form .payroll-check{align-self:end}.payroll-check{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px;min-height:42px;padding:9px 11px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);font-weight:700}.payroll-check input{width:auto;flex:0 0 auto}.payroll-code-pill{display:inline-flex;align-items:center;padding:4px 8px;border-radius:7px;background:var(--brand-soft);color:var(--brand);font-size:.72rem;font-weight:900;letter-spacing:.03em}.payroll-lock-pill{margin-inline-start:5px;background:#fff4d6;color:#7b5500}.payroll-filter-row{display:grid;grid-template-columns:minmax(260px,520px);gap:10px}.payroll-profile-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:16px}.payroll-profile-strip>div{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.payroll-profile-strip span{display:block;color:var(--muted);font-size:.67rem;font-weight:700}.payroll-profile-strip strong{display:block;margin-top:3px;font-size:.83rem;overflow-wrap:anywhere}.current-assignment{display:grid;gap:4px;padding:12px 13px;margin-bottom:14px;border:1px solid color-mix(in srgb,var(--brand) 35%,var(--border));border-radius:10px;background:var(--brand-soft)}.current-assignment span,.current-assignment small{color:var(--muted);font-size:.7rem}.salary-structure-builder{grid-column:1/-1;border:1px solid var(--border);border-radius:11px;overflow:visible;margin-top:8px;background:var(--surface)}.salary-structure-components-surface{overflow:visible;background:var(--surface);border-radius:0 0 11px 11px}.salary-structure-components-table{width:100%;table-layout:fixed}.salary-structure-components-table th:nth-child(1),.salary-structure-components-table td:nth-child(1){width:82px}.salary-structure-components-table th:nth-child(2),.salary-structure-components-table td:nth-child(2){width:25%}.salary-structure-components-table th:nth-child(3),.salary-structure-components-table td:nth-child(3){width:12%}.salary-structure-components-table th:nth-child(4),.salary-structure-components-table td:nth-child(4){width:15%}.salary-structure-components-table th:nth-child(5),.salary-structure-components-table td:nth-child(5),.salary-structure-components-table th:nth-child(6),.salary-structure-components-table td:nth-child(6){width:20%}.salary-structure-components-table th:last-child,.salary-structure-components-table td:last-child{width:54px}.salary-structure-components-table th,.salary-structure-components-table td{overflow:visible}.salary-structure-components-table .ma-select{position:relative;z-index:2}.salary-structure-components-table .ma-select.open{z-index:50}.builder-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;background:var(--surface-2);border-bottom:1px solid var(--border)}.builder-toolbar>div{display:grid;gap:2px}.builder-toolbar small{color:var(--muted);font-size:.7rem}.salary-structure-builder table{margin:0}.salary-structure-builder .sequence-input{width:72px;min-width:72px}.payroll-run-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.payroll-run-timeline{display:flex;align-items:center;min-width:min(640px,100%);flex:1}.payroll-run-timeline>div{position:relative;display:flex;align-items:center;gap:6px;flex:1;color:var(--muted);font-size:.73rem}.payroll-run-timeline>div:not(:last-child):after{content:"";height:2px;background:var(--border);flex:1;margin-inline:6px}.payroll-run-timeline span{width:28px;height:28px;border:2px solid var(--border-strong);border-radius:50%;display:grid;place-items:center;background:var(--surface);font-weight:900}.payroll-run-timeline .done{color:var(--brand)}.payroll-run-timeline .done span{background:var(--brand);border-color:var(--brand);color:#fff}.payroll-run-timeline .done:not(:last-child):after{background:var(--brand)}.payroll-run-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.payroll-status-calculated{background:#e8f0ff;color:#164f9d}.payroll-status-approved,.payroll-status-posted{background:#e7f8ee;color:#13683b}.payroll-status-cancelled{background:#fdecec;color:#9f2929}.payroll-status-draft{background:var(--surface-2);color:var(--muted)}.payroll-results-table td{vertical-align:middle}.payroll-slip-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:16px}.payroll-slip-field{border:1px solid var(--border);border-radius:9px;background:var(--surface);padding:10px 12px}.payroll-slip-field span{display:block;color:var(--muted);font-size:.67rem;font-weight:700}.payroll-slip-field strong{display:block;margin-top:3px;font-size:.82rem}.payroll-slip-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 16px}.payroll-slip-summary>div{border:1px solid var(--border);border-radius:11px;background:var(--surface);padding:12px 14px}.payroll-slip-summary span{display:block;color:var(--muted);font-size:.68rem;font-weight:700}.payroll-slip-summary strong{display:block;margin-top:3px;font-size:1.1rem}.payroll-slip-summary .net{background:var(--brand-soft);border-color:color-mix(in srgb,var(--brand) 35%,var(--border))}.payroll-slip-summary .net strong{color:var(--brand)}.payroll-breakdown-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.payroll-breakdown-grid .panel{margin:0}.payroll-line-method{display:block;color:var(--muted);font-size:.66rem;margin-top:2px}.payroll-register-total td{font-weight:900;background:var(--surface-2);border-top:2px solid var(--border-strong)}.payroll-report-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.payroll-report-head .report-meta{display:grid;gap:3px;text-align:end}.payroll-report-head .report-meta span{font-size:.72rem;color:var(--muted)}.payroll-print-note{margin:0 0 12px;padding:9px 11px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);color:var(--muted);font-size:.72rem}.click-row[data-href]{cursor:pointer}.click-row[data-href]:hover td{background:var(--brand-soft)}
@media(max-width:1180px){.payroll-step-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.payroll-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.payroll-profile-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.payroll-slip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-run-actions{align-items:flex-start;flex-direction:column}.payroll-run-timeline{min-width:100%}}
@media(max-width:980px){.salary-structure-components-table{table-layout:auto}.salary-structure-components-table thead{display:none}.salary-structure-components-table,.salary-structure-components-table tbody,.salary-structure-components-table tr,.salary-structure-components-table td{display:block;width:100%!important}.salary-structure-components-table tbody{display:grid;gap:10px;padding:10px}.salary-structure-components-table tr{position:relative;padding:10px 52px 10px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}[dir="rtl"] .salary-structure-components-table tr{padding:10px 10px 10px 52px}.salary-structure-components-table td{padding:5px;border:0}.salary-structure-components-table td:last-child{position:absolute;inset-inline-end:10px;top:10px;width:34px!important;padding:0}.salary-structure-components-table .sequence-input{width:100%;min-width:0}.salary-structure-components-table td[data-component-type],.salary-structure-components-table td[data-component-method]{display:inline-block;width:auto!important;margin-inline-end:8px;padding:3px 7px;border-radius:7px;background:var(--surface-2);color:var(--muted);font-size:.7rem}.salary-structure-builder .ma-select-panel{max-width:min(560px,calc(100vw - 48px))}}
@media(max-width:760px){.payroll-step-strip,.payroll-metric-grid,.payroll-dashboard-grid,.payroll-profile-strip,.payroll-breakdown-grid,.payroll-slip-summary,.payroll-slip-grid,.payroll-component-form{grid-template-columns:1fr}.payroll-step-strip>a{min-height:62px}.builder-toolbar,.payroll-report-head{align-items:stretch;flex-direction:column}.payroll-report-head .report-meta{text-align:start}.payroll-run-timeline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.payroll-run-timeline>div{border:1px solid var(--border);border-radius:8px;padding:7px}.payroll-run-timeline>div:after{display:none}.payroll-run-metrics{grid-template-columns:1fr 1fr}}
/* v2026.09.15.54 - Attendance policy checkbox alignment */
.form-grid .attendance-policy-checks{align-self:start;gap:10px}
.form-grid .attendance-policy-checks>label{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start;gap:8px;font-size:.78rem;font-weight:650;color:#34445f;line-height:1.3;cursor:pointer}
.form-grid .attendance-policy-checks>label input[type="checkbox"]{width:auto!important;flex:0 0 auto;margin:0}
[dir="rtl"] .form-grid .attendance-policy-checks>label{justify-content:flex-start}
/* v2026.09.15.55 - Daily Attendance overflow + option checkbox alignment */
.form-grid .check-field{align-self:start;gap:10px}
.form-grid .check-field>label{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start;gap:8px;line-height:1.3;cursor:pointer}
.form-grid .check-field>label input[type="checkbox"]{width:auto!important;flex:0 0 auto;margin:0}
[dir="rtl"] .form-grid .check-field>label{justify-content:flex-start}
.attendance-day-panel{overflow:visible}
.attendance-table-surface{overflow:visible;border:1px solid var(--border);border-radius:11px;background:#fff}
.attendance-day-table{width:100%;table-layout:fixed}
.attendance-day-table th,.attendance-day-table td{overflow:visible;min-width:0}
.attendance-day-table th:nth-child(1),.attendance-day-table td:nth-child(1){width:15.5%}
.attendance-day-table th:nth-child(2),.attendance-day-table td:nth-child(2){width:8%}
.attendance-day-table th:nth-child(3),.attendance-day-table td:nth-child(3),
.attendance-day-table th:nth-child(4),.attendance-day-table td:nth-child(4),
.attendance-day-table th:nth-child(5),.attendance-day-table td:nth-child(5){width:7.2%}
.attendance-day-table th:nth-child(6),.attendance-day-table td:nth-child(6),
.attendance-day-table th:nth-child(7),.attendance-day-table td:nth-child(7){width:7.5%}
.attendance-day-table th:nth-child(8),.attendance-day-table td:nth-child(8){width:7.5%}
.attendance-day-table th:nth-child(9),.attendance-day-table td:nth-child(9){width:11%}
.attendance-day-table th:nth-child(10),.attendance-day-table td:nth-child(10){width:8%}
.attendance-day-table th:nth-child(11),.attendance-day-table td:nth-child(11){width:6.5%}
.attendance-day-table input,.attendance-day-table select{min-width:0;width:100%}
.attendance-day-table .ma-select{position:relative;z-index:2}
.attendance-day-table .ma-select.open{z-index:80}
.attendance-day-table .ma-select-panel{max-width:min(430px,calc(100vw - 36px))}
@media(max-width:1180px){
  .attendance-day-table th,.attendance-day-table td{padding:8px 7px}
  .attendance-day-table th{font-size:.64rem;white-space:normal}
  .attendance-day-table td{font-size:.75rem}
}

/* v2026.09.15.57 - automatic business partner and employee number settings */
.settings-number-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}
.number-setting-card{margin:0}
.number-setting-card .panel-header{align-items:flex-start}
.number-setting-card .voucher-preview{min-width:180px;padding:9px 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);text-align:end}
.number-setting-card .voucher-preview span{display:block;color:var(--muted);font-size:.66rem;font-weight:750;text-transform:uppercase;letter-spacing:.04em}
.number-setting-card .voucher-preview strong{display:block;margin-top:3px;color:var(--brand);font-size:.92rem;word-break:break-word}
.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.info-grid>div{display:grid;gap:4px;padding:12px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2)}
.info-grid>div span{color:var(--muted);font-size:.72rem}
@media(max-width:900px){.settings-number-grid,.info-grid{grid-template-columns:1fr}.number-setting-card .panel-header{flex-direction:column}.number-setting-card .voucher-preview{width:100%;text-align:start}}

/* v2026.09.15.61 - employee master: compact 3-column desktop layout */
.employee-master-form .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1180px;gap:12px 14px}.employee-master-form .field.span-2{grid-column:span 2}
@media(max-width:1100px){.employee-master-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px}}
@media(max-width:650px){.employee-master-form .form-grid{grid-template-columns:1fr;max-width:none}.employee-master-form .field.span-2{grid-column:span 1}}

/* v2026.09.15.64 - company-wide synchronized Gregorian (AD) + Hijri (AH) calendar pair */
.ma-date-single{width:100%;min-width:0}.ma-date-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px;width:100%;min-width:0}.ma-date-side{display:grid;gap:5px;min-width:0}.ma-date-kind-label{display:block;min-width:0;color:#34445f;font-size:.72rem;font-weight:700;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ma-date-source-label-hidden,.field>label.ma-date-source-label-hidden{display:none!important}.ma-date-pair .ma-date-control{grid-template-columns:minmax(0,1fr) 40px}.ma-date-pair .ma-date-open{width:40px}.ma-calendar-ah .ma-calendar-heading,.ma-calendar-ah .ma-calendar-day,.ma-calendar-ah .ma-calendar-choice{font-variant-numeric:tabular-nums}
body.theme-dark .ma-date-kind-label{color:#b8c6d9}
@media(max-width:420px){.ma-date-pair{grid-template-columns:1fr}.ma-date-kind-label{white-space:normal}}

/* v2026.09.15.65 - advanced report / print / PDF presentation system */
.advanced-report-page{max-width:1580px;margin:0 auto}.report-hero-panel{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 22px;margin-bottom:14px;border:1px solid color-mix(in srgb,var(--brand) 18%,var(--border));border-radius:16px;background:linear-gradient(135deg,var(--surface) 0%,var(--brand-soft) 100%);box-shadow:var(--shadow-sm)}.report-hero-panel:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;inset:-95px -55px auto auto;background:color-mix(in srgb,var(--brand) 9%,transparent);pointer-events:none}.report-hero-brand{display:flex;align-items:center;gap:14px;min-width:0;position:relative;z-index:1}.report-hero-mark{flex:0 0 50px;width:50px;height:50px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--brand),var(--brand-dark));color:#fff;font-size:1.15rem;font-weight:900;box-shadow:0 8px 22px color-mix(in srgb,var(--brand) 25%,transparent)}.report-hero-brand h1{margin:0 0 4px}.report-hero-brand p{margin:0;color:var(--muted);font-size:.79rem;max-width:760px}.report-hero-meta{display:flex;align-items:stretch;gap:8px;position:relative;z-index:1}.report-hero-meta>div{min-width:145px;padding:9px 12px;border:1px solid color-mix(in srgb,var(--brand) 15%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--surface) 88%,transparent)}.report-hero-meta small,.report-hero-meta span{display:block;color:var(--muted);font-size:.65rem}.report-hero-meta strong{display:block;margin:2px 0;font-size:.8rem}.report-hero-count{min-width:82px!important;text-align:center}.report-hero-count strong{font-size:1.35rem;color:var(--brand)}
.report-summary-banner.advanced{border-radius:14px;margin-bottom:18px}.report-category-section.advanced{padding:16px;border:1px solid var(--border);border-radius:15px;background:var(--surface);box-shadow:var(--shadow-sm)}.report-category-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.report-category-head h2{margin:0 0 3px}.report-category-head p{margin:0;color:var(--muted);font-size:.74rem}.report-category-head>span{display:inline-flex;align-items:center;white-space:nowrap;padding:4px 8px;border-radius:999px;background:var(--brand-soft);color:var(--brand);font-size:.67rem;font-weight:800}.report-card.advanced{min-height:96px;border-radius:13px;box-shadow:none}.report-card.advanced:hover{background:linear-gradient(135deg,var(--surface),var(--brand-soft));box-shadow:0 8px 20px color-mix(in srgb,var(--brand) 9%,transparent)}
.report-action-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:9px 11px;border:1px solid var(--border);border-radius:11px;background:var(--surface);box-shadow:var(--shadow-sm)}.report-action-group{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.report-filter-panel.advanced{padding:0;overflow:visible}.report-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,var(--surface-2),var(--surface));border-radius:var(--radius) var(--radius) 0 0}.report-filter-heading strong{display:block;font-size:.8rem}.report-filter-heading span,.report-filter-heading small{display:block;color:var(--muted);font-size:.67rem}.report-filter-heading>div:last-child{text-align:end}.report-filter-panel.advanced .report-filter-grid{padding:13px 14px}.report-filter-panel.advanced .report-filter-actions{padding:11px 14px;margin:0;background:var(--surface-2);border-radius:0 0 var(--radius) var(--radius)}
.report-metric-grid.advanced{grid-template-columns:repeat(4,minmax(0,1fr))}.report-metric-grid.advanced .report-metric-card{position:relative;overflow:hidden;padding:14px 15px}.report-metric-grid.advanced .report-metric-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--brand)}[dir=rtl] .report-metric-grid.advanced .report-metric-card:before{left:auto;right:0}.report-metric-card.emphasis{background:var(--brand-soft);border-color:color-mix(in srgb,var(--brand) 35%,var(--border))}.report-metric-card.emphasis strong{color:var(--brand)}
.advanced-report-document{padding:0!important;overflow:hidden;border-radius:15px}.report-document-screen-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid var(--border);background:linear-gradient(135deg,#fbfcff,var(--brand-soft))}.report-document-screen-brand{display:flex;align-items:center;gap:10px;min-width:0}.report-document-screen-brand>span{flex:0 0 38px;width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,var(--brand),var(--brand-dark));color:#fff;font-weight:900}.report-document-screen-brand strong,.report-document-screen-brand small{display:block}.report-document-screen-brand small{color:var(--muted);font-size:.68rem;margin-top:2px}.report-document-screen-meta{display:grid;grid-template-columns:auto auto;gap:2px 9px;align-items:center}.report-document-screen-meta span{font-size:.64rem;color:var(--muted)}.report-document-screen-meta strong{text-align:end;font-size:.7rem}.advanced-report-document .report-table-wrap{max-height:none;overflow:auto}.advanced-report-document .report-table thead th{background:#f0f3f9}.advanced-report-document .report-table tbody tr:nth-child(even):not(.report-section-row):not(.report-total-row):not(.report-grand-total){background:#fbfcfe}.report-document-detail-strip{display:flex;gap:16px;flex-wrap:wrap;padding:8px 16px;border-bottom:1px solid var(--border);background:var(--surface-2);font-size:.7rem;color:var(--muted)}.report-document-detail-strip b{color:var(--text)}.standalone-report-document{margin-top:0}.report-statement-metrics{margin-bottom:12px}.commission-filter-grid{display:grid;grid-template-columns:minmax(180px,260px) minmax(180px,260px) auto;gap:10px;align-items:end;padding:13px 14px}.commission-filter-action{display:flex;gap:7px;align-items:center;padding-bottom:1px}
body.theme-dark .report-hero-panel{background:linear-gradient(135deg,var(--surface),#1b263a)}body.theme-dark .report-hero-meta>div{background:#182337}body.theme-dark .report-category-section.advanced,body.theme-dark .report-action-bar{background:var(--surface)}body.theme-dark .report-filter-heading,body.theme-dark .report-document-screen-head{background:#172337}body.theme-dark .report-filter-panel.advanced .report-filter-actions,body.theme-dark .report-document-detail-strip{background:#151e2c}body.theme-dark .advanced-report-document .report-table thead th{background:#182231}body.theme-dark .advanced-report-document .report-table tbody tr:nth-child(even):not(.report-section-row):not(.report-total-row):not(.report-grand-total){background:#121b28}
@media(max-width:1000px){.report-hero-panel{align-items:flex-start;flex-direction:column}.report-hero-meta{width:100%}.report-hero-meta>div{flex:1}.report-metric-grid.advanced{grid-template-columns:repeat(2,minmax(0,1fr))}.commission-filter-grid{grid-template-columns:1fr 1fr}.commission-filter-action{grid-column:1/-1}}
@media(max-width:650px){.report-hero-meta{flex-direction:column}.report-action-bar{align-items:stretch;flex-direction:column}.report-action-group{width:100%}.report-action-group .button{flex:1;text-align:center}.report-metric-grid.advanced{grid-template-columns:1fr}.report-document-screen-head{align-items:flex-start;flex-direction:column}.report-document-screen-meta{width:100%}.commission-filter-grid{grid-template-columns:1fr}.commission-filter-action{grid-column:auto}.report-category-section.advanced{padding:12px}}
@media print{
  .app-sidebar,.workspace-topbar,.sidebar-backdrop,.no-print,.report-action-bar,.report-hero-panel.no-print{display:none!important}
  html,body,.app-shell,.app-workspace,.workspace-content{background:#fff!important;color:#17213a!important;min-height:0!important}
  .app-shell{display:block!important}.app-workspace{display:block!important}.workspace-content{padding:0!important;margin:0!important;max-width:none!important}.advanced-report-page{max-width:none!important;margin:0!important}.panel.advanced-report-document{border:0!important;box-shadow:none!important;border-radius:0!important;background:#fff!important}.standalone-report-document{margin:0!important}.report-metric-grid,.report-metric-grid.advanced{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;margin:0 0 12px!important}.report-metric-card,.report-metric-grid.advanced .report-metric-card{display:block!important;padding:10px 11px!important;border:1px solid #dce3ef!important;border-radius:9px!important;background:linear-gradient(180deg,#fff,#f7f9fd)!important;box-shadow:none!important;break-inside:avoid}.report-metric-grid.advanced .report-metric-card:before{background:#5d3dc4!important}.report-metric-card.emphasis{background:#f0ebff!important;border-color:#cec2f2!important}.report-metric-card.emphasis strong{color:#3f278e!important}.report-document-screen-head{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:16px!important}.report-document-screen-meta{display:grid!important;grid-template-columns:auto auto!important;width:auto!important}.report-document-screen-head{padding:0 0 10px!important;margin-bottom:8px!important;background:#fff!important;border-bottom:2px solid #5d3dc4!important}.report-document-screen-brand>span{background:#5d3dc4!important;color:#fff!important}.report-document-screen-brand strong{font-size:15px!important}.report-document-screen-brand small{font-size:9px!important;color:#68758c!important}.report-document-screen-meta span{font-size:8px!important;color:#68758c!important}.report-document-screen-meta strong{font-size:9px!important}.report-document-detail-strip{padding:6px 0!important;background:#fff!important;border-bottom:1px solid #dce3ef!important;color:#68758c!important}.advanced-report-document .report-table-wrap,.standalone-report-document .report-table-wrap{overflow:visible!important}.report-table{font-size:8.5px!important;border:1px solid #dce3ef!important}.report-table thead{display:table-header-group!important}.report-table thead th{position:static!important;background:#f0f3f9!important;color:#526078!important;font-size:7.5px!important;padding:5px 6px!important}.report-table td{padding:5px 6px!important;border-color:#e2e7ef!important}.report-table tbody tr:nth-child(even):not(.report-section-row):not(.report-total-row):not(.report-grand-total){background:#fbfcfe!important}.report-section-row td{background:#eee9ff!important;color:#3f278e!important}.report-total-row td{background:#f5f7fb!important}.report-grand-total td{background:#ebe6ff!important;color:#33206f!important;border-top:2px solid #8e76d9!important}.report-table tr{break-inside:avoid}.report-section-row{break-after:avoid}body{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
}
.payroll-report-screen .payroll-report-page-head{padding:16px 18px;border:1px solid color-mix(in srgb,var(--brand) 18%,var(--border));border-radius:15px;background:linear-gradient(135deg,var(--surface),var(--brand-soft));box-shadow:var(--shadow-sm)}.payroll-report-screen .payroll-slip-summary>div,.payroll-report-screen .payroll-slip-field{box-shadow:0 3px 10px rgba(20,51,94,.04)}.payroll-report-screen .payroll-slip-summary .net{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand) 20%,transparent)}.payroll-report-screen .panel{overflow:hidden}.payroll-report-screen .panel-heading{padding-bottom:12px;border-bottom:1px solid var(--border);margin-bottom:0}.payroll-report-screen .panel>.table-scroll{margin:0 -18px -18px}.payroll-report-screen .panel>.table-scroll table th:first-child,.payroll-report-screen .panel>.table-scroll table td:first-child{padding-inline-start:18px}.payroll-report-screen .panel>.table-scroll table th:last-child,.payroll-report-screen .panel>.table-scroll table td:last-child{padding-inline-end:18px}

/* Employee profile overview alignment */
.employee-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.employee-detail-panel{min-width:0}
.employee-detail-panel>h2{margin:0 0 10px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.employee-detail-list{display:grid;grid-template-columns:minmax(150px,.72fr) minmax(0,1.28fr);gap:0;margin:0;padding:0}
.employee-detail-list dt,.employee-detail-list dd{min-width:0;margin:0;padding:9px 0;border-bottom:1px solid var(--border)}
.employee-detail-list dt{padding-inline-end:14px;color:var(--muted);font-size:.76rem;font-weight:700;line-height:1.35}
.employee-detail-list dd{font-weight:700;color:var(--text);line-height:1.35;overflow-wrap:anywhere;word-break:break-word}
.employee-detail-list dt:last-of-type,.employee-detail-list dd:last-of-type{border-bottom:0}
@media(max-width:1050px){.employee-overview-grid{grid-template-columns:1fr}}
@media(max-width:560px){.employee-detail-list{grid-template-columns:1fr}.employee-detail-list dt{padding-bottom:2px;border-bottom:0}.employee-detail-list dd{padding-top:2px;padding-bottom:9px}}


/* Employee profile and action UI */
.employee-profile-head{padding:18px 20px;border:1px solid var(--border);border-radius:14px;background:linear-gradient(135deg,var(--surface),var(--brand-soft));box-shadow:var(--shadow-sm);align-items:center}
.employee-profile-identity{min-width:0}
.employee-profile-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.employee-profile-title-row h1{margin:0;font-size:1.9rem}
.employee-profile-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:9px}
.employee-profile-code{display:inline-flex;align-items:center;padding:5px 9px;border:1px solid color-mix(in srgb,var(--brand) 24%,var(--border));border-radius:8px;background:var(--surface);color:var(--brand);font-size:.76rem;font-weight:850;letter-spacing:.02em}
.employee-profile-status{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:.72rem;font-weight:800;background:#eaf9f3;color:#0f7755;border:1px solid #bfe5d7}
.employee-profile-status.inactive{background:#fff1f1;color:#a72d35;border-color:#efc3c6}
.employee-profile-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.employee-profile-actions .btn{min-width:112px}
.employee-summary-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px}
.stat-card{min-width:0;padding:12px 14px;border:1px solid var(--border);border-radius:11px;background:var(--surface);box-shadow:var(--shadow-sm)}
.stat-card span{display:block;color:var(--muted);font-size:.69rem;font-weight:750;line-height:1.3}
.stat-card b,.stat-card strong{display:block;margin-top:4px;color:var(--text);font-size:.94rem;line-height:1.3;overflow-wrap:anywhere}
.employee-master-page-head{align-items:center}
.employee-master-page-head .employee-page-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.employee-wizard-actions{position:sticky;bottom:10px;z-index:8;padding:12px 14px!important;margin:18px -18px -18px!important;border-top:1px solid var(--border)!important;border-radius:0 0 var(--radius) var(--radius);background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(8px);box-shadow:0 -8px 20px rgba(20,51,94,.05)}
.employee-wizard-actions .btn{min-width:104px}
.employee-wizard-actions .btn.primary{min-width:128px}
@media(max-width:1050px){.employee-summary-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.employee-profile-head{align-items:stretch;padding:15px}.employee-profile-actions,.employee-master-page-head .employee-page-actions{justify-content:stretch;width:100%}.employee-profile-actions .btn,.employee-master-page-head .employee-page-actions .btn{flex:1;min-width:0}.employee-summary-cards{grid-template-columns:1fr 1fr}.employee-wizard-actions{position:static;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));margin:16px -18px -18px!important}.employee-wizard-actions .btn{width:100%;min-width:0}.employee-wizard-actions .btn.primary{min-width:0}}
@media(max-width:430px){.employee-summary-cards{grid-template-columns:1fr}.employee-profile-title-row h1{font-size:1.6rem}}


/* Voucher details summary */
.voucher-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 14px;align-items:stretch}
.voucher-summary-grid>.stat-card{height:100%;display:flex;flex-direction:column;justify-content:center;min-height:82px}
.voucher-summary-grid>.stat-card small{display:block;margin-top:4px;color:var(--muted);font-size:.68rem;line-height:1.3}
@media(max-width:980px){.voucher-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.voucher-summary-grid{grid-template-columns:1fr}}

.voucher-entry-guidance{margin:14px 0 10px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;color:var(--muted);font-size:.8rem;background:var(--surface-2)}
.voucher-entry-guidance:empty{display:none}
[data-voucher-entry-error][hidden]{display:none!important}
/* Employee Cash Voucher helper */
.voucher-helper{margin:18px 0;padding:16px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 5%,var(--surface)),var(--surface));}
.voucher-helper[hidden]{display:none!important;}
.voucher-helper .panel-header{margin-bottom:12px;align-items:flex-start;}
.voucher-helper .panel-header h2{margin:2px 0 4px;font-size:1.05rem;}
.voucher-helper .panel-header p{margin:0;color:var(--muted);font-size:.84rem;max-width:780px;}
.cv-helper-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 14px;}
.cv-helper-action{justify-content:flex-end;}
.cv-helper-action .btn{width:100%;}
.cv-helper-action small{min-height:1.2em;}
@media (max-width:980px){.cv-helper-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:640px){.cv-helper-grid{grid-template-columns:1fr;}.voucher-helper{padding:13px;}}
/* v74 - graphical company dashboard */
.dashboard-graphic-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:12px;margin-top:12px}.dashboard-chart-card{min-width:0;overflow:hidden}.dashboard-performance-card{grid-row:span 2}.dashboard-chart-heading{align-items:flex-start}.chart-legend{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:.68rem;color:var(--muted)}.chart-legend span{display:inline-flex;align-items:center;gap:5px}.chart-legend i{width:9px;height:9px;border-radius:3px;background:var(--brand)}.chart-legend .expense i{background:#f59e0b}.dashboard-bar-chart{height:250px;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(34px,1fr);align-items:end;gap:7px;padding:18px 4px 0;border-bottom:1px solid var(--border);background:linear-gradient(to top,color-mix(in srgb,var(--border) 30%,transparent) 1px,transparent 1px);background-size:100% 25%}.dashboard-bar-month{height:100%;display:grid;grid-template-rows:minmax(0,1fr) 24px;align-items:end;min-width:0}.dashboard-bar-pair{height:100%;display:flex;align-items:flex-end;justify-content:center;gap:3px}.dashboard-bar{display:block;width:min(15px,40%);min-height:2px;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,#8265df,var(--brand));box-shadow:0 3px 8px color-mix(in srgb,var(--brand) 18%,transparent)}.dashboard-bar.expense{background:linear-gradient(180deg,#ffc261,#e58a08);box-shadow:0 3px 8px rgba(229,138,8,.14)}.dashboard-bar-month small{text-align:center;font-size:.64rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-top:6px}.liquidity-visual{display:grid;grid-template-columns:132px minmax(0,1fr);align-items:center;gap:18px;padding:8px 4px}.liquidity-donut{width:128px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--brand) 0 var(--cash-share),#22a97a var(--cash-share) 100%);position:relative;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--border) 75%,transparent)}.liquidity-donut:after{content:"";position:absolute;inset:17px;border-radius:50%;background:var(--surface);box-shadow:0 0 0 1px var(--border)}.liquidity-donut>div{position:relative;z-index:1;text-align:center;max-width:88px}.liquidity-donut strong{display:block;font-size:.82rem;line-height:1.2}.liquidity-donut small{font-size:.6rem;color:var(--muted)}.liquidity-breakdown{display:grid;gap:10px}.liquidity-breakdown>div{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--border)}.liquidity-breakdown>div:last-child{border-bottom:0}.liquidity-breakdown small,.liquidity-breakdown strong{display:block}.liquidity-breakdown small{font-size:.65rem;color:var(--muted)}.liquidity-breakdown strong{font-size:.78rem}.legend-dot{width:10px;height:10px;border-radius:50%;background:var(--brand);flex:0 0 auto}.legend-dot.bank{background:#22a97a}.dashboard-horizontal-bars{display:grid;gap:16px;padding:7px 2px}.horizontal-stat>div:first-child{display:flex;justify-content:space-between;gap:8px;align-items:end;margin-bottom:6px}.horizontal-stat span{font-size:.7rem;color:var(--muted)}.horizontal-stat strong{font-size:.78rem;white-space:nowrap}.horizontal-track,.voucher-mix-track{height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden;border:1px solid var(--border)}.horizontal-track>span,.voucher-mix-track>span{display:block;height:100%;min-width:2px;border-radius:inherit;background:linear-gradient(90deg,var(--brand),#8a70e6)}.horizontal-track>span.payable{background:linear-gradient(90deg,#f59e0b,#f8c15f)}.voucher-mix-list{display:grid;gap:10px}.voucher-mix-row{display:grid;gap:4px}.voucher-mix-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.voucher-mix-title>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;color:var(--muted)}.voucher-mix-title b{color:var(--text);margin-inline-end:4px}.voucher-mix-title strong{font-size:.72rem}.voucher-mix-track{height:7px}.voucher-mix-row:nth-child(2n) .voucher-mix-track>span{background:linear-gradient(90deg,#22a97a,#5ec9a5)}.voucher-mix-row:nth-child(3n) .voucher-mix-track>span{background:linear-gradient(90deg,#e58a08,#ffc261)}.voucher-mix-row small{font-size:.61rem;color:var(--muted);text-align:end}.dashboard-chart-card .panel-heading{margin-bottom:10px}.dashboard-chart-card .panel-heading p{margin:2px 0 0;color:var(--muted);font-size:.67rem}body.theme-dark .liquidity-donut:after{background:var(--surface)}
@media(max-width:1100px){.dashboard-graphic-grid{grid-template-columns:1fr 1fr}.dashboard-performance-card{grid-column:1/-1;grid-row:auto}.dashboard-bar-chart{height:220px}}
@media(max-width:700px){.dashboard-graphic-grid{grid-template-columns:1fr}.dashboard-performance-card{grid-column:auto}.dashboard-bar-chart{height:190px;overflow-x:auto;grid-auto-columns:minmax(34px,46px);justify-content:start}.liquidity-visual{grid-template-columns:112px minmax(0,1fr)}.liquidity-donut{width:108px}.dashboard-chart-card{padding:14px}.chart-legend{margin-top:6px}}


/* v2026.09.17.75 - In-app multilingual Help Center */
.help-shell{display:grid;gap:18px}.help-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.help-hero h1{margin:3px 0 6px;font-size:clamp(1.65rem,2vw,2.25rem)}.help-hero p{margin:0;color:var(--muted);max-width:820px}.help-search-panel{display:grid;gap:6px}.help-search-box{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:0 14px;box-shadow:var(--shadow-sm)}.help-search-box span{font-size:1.25rem;color:var(--muted)}.help-search-box input{width:100%;border:0!important;box-shadow:none!important;background:transparent!important;padding:14px 0;font-size:1rem}.help-search-hint{font-size:.82rem;color:var(--muted);padding-inline:4px}.help-layout{display:grid;grid-template-columns:minmax(250px,330px) minmax(0,1fr);gap:18px;align-items:start}.help-index{position:sticky;top:84px;max-height:calc(100vh - 110px);overflow:auto;padding:12px}.help-index-heading{display:flex;align-items:center;justify-content:space-between;padding:8px 8px 12px;border-bottom:1px solid var(--border)}.help-index-heading h2{font-size:1rem;margin:0}.help-index-heading span{font-size:.78rem;color:var(--muted)}.help-index nav{display:grid;gap:6px;padding-top:8px}.help-index-item{width:100%;display:grid;grid-template-columns:44px 1fr;text-align:start;gap:2px 8px;border:1px solid transparent;background:transparent;border-radius:10px;padding:9px 10px;color:var(--text);cursor:pointer}.help-index-item>span{grid-row:1/3;align-self:start;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:4px 5px;text-align:center;font-size:.72rem;font-weight:800;color:var(--primary)}.help-index-item>b{font-size:.88rem}.help-index-item>small{font-size:.72rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.help-index-item:hover,.help-index-item.active{background:var(--primary-soft);border-color:color-mix(in srgb,var(--primary) 28%,var(--border))}.help-topic-panel{padding:0;overflow:hidden}.help-loading,.help-empty{padding:30px;text-align:center;color:var(--muted)}.help-article{padding:24px;display:grid;gap:22px}.help-topic-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding-bottom:18px;border-bottom:1px solid var(--border)}.help-topic-head h2{font-size:1.55rem;margin:3px 0 5px}.help-topic-head p{margin:0;color:var(--muted);font-size:.9rem}.help-topic-id{font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;color:var(--primary);font-weight:800}.help-section{display:grid;gap:10px}.help-section h3{font-size:1rem;margin:0}.help-section>p{margin:0;color:var(--text-soft);line-height:1.65}.help-screenshot{margin:0;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--surface-2)}.help-screenshot img{display:block;width:100%;height:auto;max-height:620px;object-fit:contain;background:white}.help-screenshot figcaption{padding:9px 12px;border-top:1px solid var(--border);font-size:.78rem;color:var(--muted)}.help-screenshot-placeholder{min-height:220px;border:1px dashed var(--border-strong);border-radius:14px;background:var(--surface-2);display:grid;place-items:center;text-align:center;padding:30px;color:var(--muted)}.help-screenshot-placeholder .help-shot-icon{font-size:2rem;color:var(--primary)}.help-screenshot-placeholder strong{color:var(--text)}.help-screenshot-placeholder p{margin:0;max-width:480px}.help-data-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:12px}.help-data-table{width:100%;border-collapse:collapse;min-width:720px}.help-data-table th{background:var(--surface-2);font-size:.76rem;text-transform:uppercase;letter-spacing:.035em;color:var(--text-soft);padding:9px 10px;text-align:start}.help-data-table td{padding:10px;border-top:1px solid var(--border);vertical-align:top;font-size:.86rem}.help-data-table code{font-family:inherit;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:2px 6px;color:var(--text)}.help-required{display:inline-flex;border-radius:999px;padding:2px 7px;font-size:.72rem;font-weight:800}.help-required.yes{background:var(--danger-soft);color:var(--danger)}.help-required.no{background:var(--surface-2);color:var(--muted)}.help-step-list{margin:0;padding-inline-start:22px;display:grid;gap:8px;line-height:1.55}.help-step-list li::marker{font-weight:800;color:var(--primary)}.help-success-section,.help-note-section{border-radius:12px;padding:14px 16px}.help-success-section{background:var(--success-soft);border:1px solid color-mix(in srgb,var(--success) 28%,var(--border))}.help-note-section{background:var(--warning-soft);border:1px solid color-mix(in srgb,var(--warning) 28%,var(--border))}.help-note-section .help-step-list,.help-success-section .help-step-list{padding-inline-start:20px}.help-article[dir=rtl],html[dir=rtl] .help-article{text-align:right}
@media(max-width:900px){.help-layout{grid-template-columns:1fr}.help-index{position:static;max-height:none}.help-hero,.help-topic-head{flex-direction:column}.help-topic-head .btn,.help-hero>.btn{align-self:stretch;text-align:center}.help-article{padding:18px}.help-screenshot img{max-height:440px}}
@media(max-width:600px){.help-article{padding:14px}.help-index-item{grid-template-columns:40px 1fr}.help-search-box{border-radius:10px}.help-data-table{min-width:620px}}
.help-nav-icon{display:inline-grid;place-items:center;font-weight:900;font-size:.82rem;border-radius:7px;background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary)}

/* v2026.09.17.78 - Global table action button standard */
.table-action-cell,.action-col{width:1%;white-space:nowrap}
td>.row-actions,td>.inline-actions,td.row-actions,td.inline-actions,.table-action-group{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;white-space:nowrap;width:max-content;max-width:100%}
td>.row-actions>form,td>.inline-actions>form,td.row-actions>form,td.inline-actions>form,.table-action-group>form{display:inline-flex;align-items:center;margin:0}
.icon-button,.table-action-button{box-sizing:border-box;width:34px;min-width:34px;height:34px;min-height:34px;padding:0;border:1px solid #d6e0ee;border-radius:7px;background:#fff;color:#516784;display:inline-grid;place-items:center;line-height:1;box-shadow:none;text-decoration:none;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}
.icon-button:hover,.table-action-button:hover{background:#f6f8ff;border-color:#bfcdea;color:var(--brand);box-shadow:0 2px 7px rgba(28,54,96,.07);transform:translateY(-1px)}
.icon-button:focus-visible,.table-action-button:focus-visible{outline:0;box-shadow:0 0 0 3px rgba(103,72,207,.14)}
.icon-button .app-svg-icon,.table-action-button .app-svg-icon{width:15px;height:15px}
.icon-button.danger-icon,.table-action-button.danger-icon{color:#e11d48;border-color:#e4eaf3;background:#fff}
.icon-button.danger-icon:hover,.table-action-button.danger-icon:hover{color:#be123c;border-color:#fecdd3;background:#fff1f2}
.icon-button.success-icon,.table-action-button.success-icon{color:#11875d}
.icon-button.success-icon:hover,.table-action-button.success-icon:hover{color:#0b6e4b;border-color:#bfe7d8;background:#effbf6}
.icon-button.primary-icon,.table-action-button.primary-icon{color:var(--brand);border-color:#cbd6f4;background:#f8f7ff}
.icon-button.primary-icon:hover,.table-action-button.primary-icon:hover{background:#f0edff;border-color:#b7a9ec}
body.theme-dark .icon-button,body.theme-dark .table-action-button{background:var(--surface);border-color:var(--border);color:#c3cde0}
body.theme-dark .icon-button:hover,body.theme-dark .table-action-button:hover{background:#1d2940;border-color:#516582;color:#fff}
body.theme-dark .icon-button.danger-icon,body.theme-dark .table-action-button.danger-icon{background:var(--surface);color:#fb7185}
body.theme-dark .icon-button.danger-icon:hover,body.theme-dark .table-action-button.danger-icon:hover{background:#3a151c;border-color:#7f1d1d;color:#fda4af}
@media(max-width:640px){.icon-button,.table-action-button{width:36px;min-width:36px;height:36px;min-height:36px}}

/* Normalize legacy/custom action icon classes to the same global table action visual. */
.icon-action,.shift-action-icon{box-sizing:border-box;width:34px;min-width:34px;height:34px;min-height:34px;padding:0;border:1px solid #d6e0ee;border-radius:7px;background:#fff;color:#516784;display:inline-grid;place-items:center;line-height:1;box-shadow:none;text-decoration:none;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}
.icon-action:hover,.shift-action-icon:hover{background:#f6f8ff;border-color:#bfcdea;color:var(--brand);box-shadow:0 2px 7px rgba(28,54,96,.07);transform:translateY(-1px)}
.shift-action-icon.deactivate{color:#e11d48}.shift-action-icon.deactivate:hover{color:#be123c;border-color:#fecdd3;background:#fff1f2}.shift-action-icon.activate{color:#11875d}.shift-action-icon.activate:hover{color:#0b6e4b;border-color:#bfe7d8;background:#effbf6}
.shift-row-actions{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;white-space:nowrap}
.shift-row-actions>form{display:inline-flex;margin:0}

/* v2026.09.17.79 — Company Accounting Setup: non-wrapping section headers + extensible default ledgers */
.form-grid>.section-title.span-2,
.form-grid>.default-ledger-group.span-2,
.form-grid>.actions-end.span-2{grid-column:1/-1}
.settings-section-title{align-items:flex-start;justify-content:flex-start;margin:10px 0 2px;padding-top:4px}
.settings-section-title>div{min-width:0}
.settings-section-title h3{margin:0 0 4px;white-space:normal;overflow-wrap:normal;word-break:normal;line-height:1.2}
.settings-section-title p{max-width:900px;line-height:1.5}
.default-ledger-group{border:1px solid var(--border);border-radius:12px;background:#fbfcff;padding:12px}
.default-ledger-group-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:0 2px 10px;border-bottom:1px solid var(--border)}
.default-ledger-group-head strong{font-size:.84rem;color:var(--text)}
.default-ledger-group-head small{max-width:640px;color:var(--muted);font-size:.7rem;line-height:1.45;text-align:end}
.default-ledger-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;padding-top:12px}
.default-ledger-field .field-hint{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.64rem;letter-spacing:.02em}
.default-ledger-builder{max-width:1050px;margin-top:16px;padding:16px;border:1px solid var(--border);border-radius:13px;background:linear-gradient(180deg,#fff,#fbfcff);box-shadow:var(--shadow-sm)}
.default-ledger-create-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:12px 14px;align-items:end}
.default-ledger-create-grid .default-ledger-description{grid-column:1/2}
.default-ledger-create-grid .actions-end{align-self:end}
@media(max-width:850px){
  .default-ledger-grid,.default-ledger-create-grid{grid-template-columns:1fr}
  .default-ledger-create-grid .default-ledger-description{grid-column:auto}
  .default-ledger-group-head{display:grid}
  .default-ledger-group-head small{text-align:start;max-width:none}
}


/* v2026.09.18.81 — advanced financial report hierarchy and drill-down */
.report-table td[style*="--report-indent"]{padding-inline-start:calc(12px + (var(--report-indent) * 18px))}
.report-tree-toggle{display:inline-grid;place-items:center;width:22px;height:22px;margin-inline-end:6px;border:1px solid var(--border-color,#d9dee8);border-radius:6px;background:var(--surface,#fff);color:inherit;font:700 14px/1 system-ui;cursor:pointer}
.report-drilldown-link{color:inherit;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}
.report-emphasis-row td{font-weight:700}
@media print{.report-tree-toggle{display:none!important}.report-table tr[hidden]{display:table-row!important}.report-drilldown-link{text-decoration:none;color:inherit}}

/* v2026.09.18.84 — Employee Attendance Sheet monthly matrix */
.attendance-matrix-panel{overflow:hidden!important}
.attendance-matrix-report{--att-line:#b7d977;--att-soft:#f4fae9;--att-head:#edf4e4;--att-text:var(--text);background:var(--surface);color:var(--att-text)}
.attendance-matrix-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:17px 18px 14px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,var(--surface),var(--surface-2))}
.attendance-matrix-period strong{display:block;font-size:1.35rem;line-height:1.05;font-weight:950;letter-spacing:-.02em;color:var(--text)}
.attendance-matrix-period span{display:block;margin-top:6px;font-size:.72rem;font-weight:700;color:var(--muted)}
.attendance-matrix-chip{flex:0 0 auto;border:1px solid color-mix(in srgb,var(--brand) 35%,var(--border));background:var(--brand-soft);color:var(--brand-dark);border-radius:999px;padding:8px 14px;font-size:.76rem;font-weight:900;white-space:nowrap}
.attendance-matrix-scroll{overflow:auto;max-width:100%;scrollbar-gutter:stable;border-bottom:1px solid var(--border);outline:none}
.attendance-matrix-scroll:focus-visible{box-shadow:inset 0 0 0 2px var(--brand)}
.attendance-matrix-table{border-collapse:separate;border-spacing:0;min-width:max-content;width:100%;font-size:.7rem;font-variant-numeric:tabular-nums}
.attendance-matrix-table th,.attendance-matrix-table td{border-inline-end:1px solid var(--att-line);border-bottom:1px solid var(--att-line);padding:6px 6px;text-align:center;vertical-align:middle;background:var(--surface)}
.attendance-matrix-table thead th{font-weight:900;color:var(--text);background:var(--att-head)}
.attendance-matrix-table thead tr:first-child th{border-top:1px solid var(--att-line)}
.attendance-week-group{height:38px;min-width:64px;color:#496d00!important;background:color-mix(in srgb,var(--brand-soft) 62%,var(--surface))!important;font-size:.67rem;white-space:nowrap}
.attendance-day-head{min-width:47px;width:47px;padding:5px 3px!important;background:var(--surface-2)!important}
.attendance-day-head strong,.attendance-day-head small{display:block}.attendance-day-head strong{font-size:.78rem}.attendance-day-head small{margin-top:2px;font-size:.61rem;color:var(--muted);font-weight:700;text-transform:capitalize}
.attendance-summary-head{min-width:70px;max-width:78px;white-space:normal;line-height:1.08;background:color-mix(in srgb,var(--brand-soft) 48%,var(--surface))!important}
.attendance-sticky{position:sticky;z-index:3;background:var(--surface)!important}
.attendance-matrix-table thead .attendance-sticky{z-index:6;background:var(--att-head)!important}
.attendance-seq{inset-inline-start:0;min-width:46px;width:46px;font-weight:900}
.attendance-employee{inset-inline-start:46px;min-width:230px;width:230px;text-align:start!important}
.attendance-department{inset-inline-start:276px;min-width:145px;width:145px;text-align:start!important}
.attendance-matrix-table tbody tr:hover td{background:color-mix(in srgb,var(--brand-soft) 28%,var(--surface))}
.attendance-matrix-table tbody tr:hover .attendance-sticky{background:color-mix(in srgb,var(--brand-soft) 28%,var(--surface))!important}
.attendance-avatar{display:inline-grid;place-items:center;vertical-align:middle;width:30px;height:30px;margin-inline-end:8px;border-radius:9px;background:linear-gradient(135deg,var(--brand),var(--brand-dark));color:#fff;font-weight:950;font-size:.73rem}
.attendance-employee-text{display:inline-block;vertical-align:middle;min-width:0;max-width:175px}.attendance-employee-text strong,.attendance-employee-text small{display:block;overflow:hidden;text-overflow:ellipsis}.attendance-employee-text strong{font-size:.72rem;white-space:normal}.attendance-employee-text small{margin-top:2px;font-size:.62rem;color:var(--muted);font-weight:700}
.attendance-day{min-width:47px;width:47px;padding:5px 4px!important}.attendance-day>span,.attendance-legend-item b{display:inline-grid;place-items:center;min-width:28px;height:27px;border:1px solid transparent;border-radius:8px;padding:0 5px;font-size:.67rem;font-weight:950;line-height:1}
.attendance-day.status-present>span,.attendance-legend-item.status-present b{background:#ddf8e8;border-color:#9bdab4;color:#087a42}
.attendance-day.status-absent>span,.attendance-legend-item.status-absent b{background:#fff0e4;border-color:#f2bd8d;color:#cb321f}
.attendance-day.status-paid-leave>span,.attendance-legend-item.status-paid-leave b{background:#edf8d8;border-color:#b9db74;color:#4a7800}
.attendance-day.status-unpaid-leave>span,.attendance-legend-item.status-unpaid-leave b{background:#fff1dc;border-color:#e8c58b;color:#98611a}
.attendance-day.status-holiday>span,.attendance-legend-item.status-holiday b{background:#fff5c9;border-color:#e4cf70;color:#815d00}
.attendance-day.status-off>span,.attendance-legend-item.status-off b{background:#e9eef7;border-color:#c0cada;color:#4f5c70}
.attendance-day.status-pending>span,.attendance-legend-item.status-pending b{background:#e8f2ff;border-color:#9fc5f0;color:#205c99}
.attendance-day.status-missing>span,.attendance-legend-item.status-missing b{background:#f0eaff;border-color:#c5b3ef;color:#6241a5}
.attendance-summary-cell{min-width:70px;width:70px;font-weight:900;background:var(--surface-2)!important}
.attendance-matrix-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 16px;background:var(--surface);flex-wrap:wrap}
.attendance-legend{display:flex;gap:8px;align-items:center;flex-wrap:wrap;min-width:0}.attendance-legend-item{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:999px;padding:5px 9px 5px 6px;background:var(--surface-2);font-size:.68rem;font-weight:800;white-space:nowrap}.attendance-legend-item b{min-width:25px;height:25px;border-radius:50%;padding:0;font-size:.63rem}
.attendance-matrix-total{display:flex;align-items:baseline;gap:8px;margin-inline-start:auto;white-space:nowrap;color:var(--muted);font-size:.76rem;font-weight:800}.attendance-matrix-total strong{color:var(--text);font-size:1.02rem}.attendance-matrix-total b{color:var(--brand-dark);font-size:.9rem}
body.theme-dark .attendance-matrix-report{--att-line:#36513f;--att-head:#1b2b22}.theme-dark .attendance-week-group{color:#c7e98a!important}.theme-dark .attendance-day.status-present>span,.theme-dark .attendance-legend-item.status-present b{background:#173c2a;border-color:#2d6d4b;color:#9ce3bb}.theme-dark .attendance-day.status-absent>span,.theme-dark .attendance-legend-item.status-absent b{background:#42241f;border-color:#754238;color:#ffab97}.theme-dark .attendance-day.status-paid-leave>span,.theme-dark .attendance-legend-item.status-paid-leave b{background:#263b1c;border-color:#55753d;color:#c7e990}.theme-dark .attendance-day.status-unpaid-leave>span,.theme-dark .attendance-legend-item.status-unpaid-leave b{background:#3b2f1d;border-color:#6b5631;color:#e9c887}.theme-dark .attendance-day.status-holiday>span,.theme-dark .attendance-legend-item.status-holiday b{background:#3e371c;border-color:#6d612d;color:#f1d978}.theme-dark .attendance-day.status-off>span,.theme-dark .attendance-legend-item.status-off b{background:#29313d;border-color:#465263;color:#c3cedd}.theme-dark .attendance-day.status-pending>span,.theme-dark .attendance-legend-item.status-pending b{background:#1d3045;border-color:#33577a;color:#a9d1fa}.theme-dark .attendance-day.status-missing>span,.theme-dark .attendance-legend-item.status-missing b{background:#302748;border-color:#544279;color:#cfbdf9}
@media(max-width:800px){.attendance-matrix-heading{padding:13px 12px;align-items:center}.attendance-matrix-period strong{font-size:1.05rem}.attendance-matrix-chip{font-size:.65rem;padding:6px 9px}.attendance-employee{min-width:190px;width:190px}.attendance-department{inset-inline-start:236px;min-width:120px;width:120px}.attendance-matrix-footer{padding:10px}.attendance-matrix-total{width:100%;justify-content:flex-end}}

/* v2026.09.18.84-final-zatca — selected-theme attendance matrix + employee shift-aware daily entry */
.attendance-matrix-report{
  --att-line:color-mix(in srgb,var(--brand) 24%,var(--border));
  --att-soft:color-mix(in srgb,var(--brand-soft) 72%,var(--surface));
  --att-head:color-mix(in srgb,var(--brand-soft) 66%,var(--surface));
}
.attendance-week-group{color:var(--brand-dark)!important;background:color-mix(in srgb,var(--brand-soft) 78%,var(--surface))!important}
.attendance-summary-head{background:color-mix(in srgb,var(--brand-soft) 58%,var(--surface))!important}
body.theme-dark .attendance-matrix-report{--att-line:color-mix(in srgb,var(--brand) 36%,var(--border));--att-head:color-mix(in srgb,var(--brand) 15%,var(--surface))}
body.theme-dark .attendance-week-group{color:color-mix(in srgb,var(--brand) 45%,#fff)!important}

.attendance-entry-panel{padding:0;overflow:hidden}
.attendance-entry-heading{padding:18px 18px 14px;margin:0;border-bottom:1px solid var(--border);background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--brand-soft) 24%,var(--surface)))}
.attendance-count-pill{display:inline-flex;align-items:center;min-height:32px;padding:6px 10px;border-radius:999px;background:var(--brand-soft);color:var(--brand-dark);border:1px solid color-mix(in srgb,var(--brand) 28%,var(--border));font-weight:800;font-size:.75rem}
.attendance-entry-list{display:grid;gap:0}
.attendance-entry-card{display:grid;grid-template-columns:minmax(180px,1.05fr) minmax(180px,1fr) minmax(120px,.62fr) minmax(210px,1fr) minmax(280px,1.35fr) minmax(160px,.8fr) auto;gap:12px;align-items:center;padding:14px 16px;border-bottom:1px solid var(--border);background:var(--surface);min-width:0}
.attendance-entry-card.is-double{grid-template-columns:minmax(180px,.95fr) minmax(180px,.9fr) minmax(115px,.55fr) minmax(205px,.92fr) minmax(205px,.92fr) minmax(270px,1.25fr) minmax(150px,.72fr) auto}
.attendance-entry-card:hover{background:color-mix(in srgb,var(--brand-soft) 22%,var(--surface))}
.attendance-entry-card.attendance-non-present .attendance-period-card{opacity:.58}
.attendance-employee-card{display:flex;align-items:center;gap:10px;min-width:0}
.attendance-entry-avatar{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,var(--brand),var(--brand-dark));color:#fff;font-weight:900}
.attendance-employee-card>div{min-width:0}.attendance-employee-card strong,.attendance-employee-card small{display:block;overflow:hidden;text-overflow:ellipsis}.attendance-employee-card strong{white-space:normal}.attendance-employee-card small{color:var(--muted);font-size:.72rem;margin-top:2px}
.attendance-shift-card{min-width:0;padding:9px 10px;border:1px solid color-mix(in srgb,var(--brand) 18%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--brand-soft) 36%,var(--surface))}.attendance-shift-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:3px}.attendance-shift-title span{font-size:.64rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:var(--brand)}.attendance-shift-title b{font-size:.65rem;color:var(--muted)}.attendance-shift-card>strong{display:block;font-size:.78rem;overflow:hidden;text-overflow:ellipsis}.attendance-shift-card>small{display:block;color:var(--muted);font-size:.69rem;margin-top:2px;font-variant-numeric:tabular-nums}
.attendance-status-field,.attendance-remarks-field{margin:0}.attendance-status-field label,.attendance-remarks-field label{font-size:.66rem;font-weight:800;color:var(--muted)}
.attendance-period-card{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:9px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);min-width:0}.attendance-period-title{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px}.attendance-period-title span{font-size:.66rem;font-weight:900;color:var(--brand)}.attendance-period-title small{font-size:.63rem;color:var(--muted);font-weight:800}.attendance-period-card label{display:grid;gap:3px;font-size:.64rem;color:var(--muted);font-weight:800}.attendance-period-card input[type=time]{min-width:0;padding:7px 6px;font-size:.76rem;font-variant-numeric:tabular-nums}.attendance-entry-card.is-double .second-period{border-color:color-mix(in srgb,var(--brand) 30%,var(--border));background:color-mix(in srgb,var(--brand-soft) 26%,var(--surface))}
.attendance-calculation-card{display:grid;grid-template-columns:repeat(5,minmax(50px,1fr));gap:5px;min-width:0}.attendance-calculation-card span{display:grid;gap:2px;place-items:center;padding:7px 4px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);min-width:0}.attendance-calculation-card small{font-size:.57rem;line-height:1.05;text-align:center;color:var(--muted);font-weight:800}.attendance-calculation-card b{font-size:.76rem;color:var(--text);font-variant-numeric:tabular-nums}
.attendance-entry-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.attendance-entry-actions form{margin:0}.attendance-entry-actions .status-pill.success{background:color-mix(in srgb,var(--success) 12%,var(--surface));border-color:color-mix(in srgb,var(--success) 32%,var(--border));color:var(--success)}
@media(max-width:1450px){.attendance-entry-card,.attendance-entry-card.is-double{grid-template-columns:minmax(190px,1fr) minmax(180px,1fr) 130px repeat(2,minmax(200px,1fr));}.attendance-entry-card.is-single .attendance-calculation-card,.attendance-entry-card.is-double .attendance-calculation-card,.attendance-remarks-field,.attendance-entry-actions{grid-column:auto}.attendance-calculation-card{grid-column:1/-2}.attendance-remarks-field{grid-column:1/5}.attendance-entry-actions{grid-column:-2/-1}}
@media(max-width:900px){.attendance-entry-card,.attendance-entry-card.is-double{grid-template-columns:1fr 1fr;align-items:stretch}.attendance-employee-card,.attendance-shift-card,.attendance-calculation-card,.attendance-remarks-field,.attendance-entry-actions{grid-column:1/-1}.attendance-status-field{grid-column:1/-1}.attendance-period-card{grid-column:auto}.attendance-entry-actions{justify-content:flex-start}}
@media(max-width:560px){.attendance-entry-card,.attendance-entry-card.is-double{grid-template-columns:1fr;padding:12px}.attendance-period-card{grid-column:1/-1}.attendance-calculation-card{grid-template-columns:repeat(2,1fr)}.attendance-calculation-card span:last-child{grid-column:1/-1}.attendance-entry-heading{padding:14px}}

/* v2026.09.18.84-final-zatca — Saudi ZATCA tenant workspace (theme-aware) */
.zatca-page-head{align-items:flex-start}.zatca-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.zatca-kpi{display:grid;gap:6px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--brand) 18%,var(--border));border-radius:14px;background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--brand-soft) 24%,var(--surface)));min-width:0}.zatca-kpi small{font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.045em;color:var(--muted)}.zatca-kpi strong{font-size:1rem;overflow-wrap:anywhere}.zatca-kpi .status-pill{justify-self:start}
.zatca-settings-panel,.zatca-compose-panel,.zatca-workspace-panel,.zatca-history-panel{overflow:hidden}.zatca-settings-form,.zatca-document-form{padding:0 18px 18px}.zatca-form-actions,.zatca-compose-footer,.zatca-batch-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.zatca-form-actions{padding-top:14px;border-top:1px solid var(--border)}.zatca-form-actions small{color:var(--muted);flex:1 1 320px}.zatca-subtitle{margin:18px 0 10px;font-size:.86rem;color:var(--brand-dark)}
.zatca-lines-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0 8px}.zatca-lines-head h3{margin:0;font-size:.86rem}.zatca-lines-wrap{border:1px solid var(--border);border-radius:12px}.zatca-lines-table{min-width:1120px}.zatca-lines-table th{background:color-mix(in srgb,var(--brand-soft) 44%,var(--surface-2));font-size:.68rem;white-space:nowrap}.zatca-lines-table input,.zatca-lines-table select{min-width:76px;padding:7px 8px;font-size:.76rem}.zatca-lines-table td:first-child input{min-width:210px}.zatca-lines-table td[data-line-net],.zatca-lines-table td[data-line-tax],.zatca-lines-table td[data-line-total]{font-variant-numeric:tabular-nums;font-weight:800;white-space:nowrap}
.zatca-compose-footer{justify-content:space-between;margin-top:12px;padding:12px;border:1px solid color-mix(in srgb,var(--brand) 18%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--brand-soft) 22%,var(--surface))}.zatca-totals{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.zatca-totals span,.zatca-totals label{display:inline-flex;align-items:center;gap:6px;font-size:.73rem;font-weight:800;color:var(--muted)}.zatca-totals b{color:var(--text);font-variant-numeric:tabular-nums}.zatca-totals input{width:92px}.zatca-send-options{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.zatca-send-options>input{min-width:180px}
.zatca-batch-toolbar{padding:10px 14px;border-block:1px solid var(--border);background:color-mix(in srgb,var(--brand-soft) 26%,var(--surface));}.zatca-batch-toolbar>input{min-width:190px;margin-inline-start:auto}.zatca-doc-table{min-width:1180px}.zatca-doc-table tr:has(input[data-zatca-select]:checked){background:color-mix(in srgb,var(--brand-soft) 38%,var(--surface))}.zatca-row-send{display:flex;align-items:center;gap:5px}.zatca-row-send input{width:95px;padding:6px}.zatca-row-warning,.zatca-row-error{display:block;margin-top:3px;max-width:360px;white-space:normal;overflow-wrap:anywhere}.zatca-row-warning{color:var(--warning)}.zatca-row-error{color:var(--danger)}.warning-callout{margin:0 0 14px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--warning) 42%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--warning) 9%,var(--surface));}.warning-callout p{margin:4px 0 0;color:var(--muted)}
body.theme-dark .zatca-kpi,body.theme-dark .zatca-compose-footer,body.theme-dark .zatca-batch-toolbar{background:color-mix(in srgb,var(--brand) 8%,var(--surface))}
@media(max-width:1050px){.zatca-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.zatca-compose-footer{align-items:flex-start}.zatca-send-options{width:100%}.zatca-batch-toolbar>input{margin-inline-start:0}}
@media(max-width:620px){.zatca-kpi-grid{grid-template-columns:1fr}.zatca-settings-form,.zatca-document-form{padding-inline:12px}.zatca-form-actions,.zatca-send-options{align-items:stretch}.zatca-form-actions .button,.zatca-send-options .button,.zatca-send-options>input{width:100%}.zatca-batch-toolbar{align-items:stretch}.zatca-batch-toolbar>input,.zatca-batch-toolbar>.button{width:100%}}

/* v2026.09.18.84-final-zatca — official ZATCA environment/onboarding workspace */
.zatca-environment-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 12px}.zatca-environment-tab{display:grid;gap:4px;min-width:0;padding:11px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);text-decoration:none}.zatca-environment-tab strong{font-size:.78rem}.zatca-environment-tab small{font-size:.66rem;color:var(--muted);line-height:1.35}.zatca-environment-tab.active{border-color:var(--brand);background:color-mix(in srgb,var(--brand-soft) 52%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand) 22%,transparent)}
.zatca-environment-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 14px;padding:10px 13px;border:1px solid color-mix(in srgb,var(--brand) 24%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--brand-soft) 28%,var(--surface))}.zatca-environment-banner>div{display:grid;gap:2px}.zatca-environment-banner strong{font-size:.8rem}.zatca-environment-banner span{font-size:.7rem;color:var(--muted)}.zatca-environment-banner code{max-width:100%;padding:4px 7px;border-radius:7px;background:var(--surface-2);color:var(--muted);font-size:.67rem;overflow-wrap:anywhere}.zatca-environment-banner.production{border-color:color-mix(in srgb,var(--danger) 45%,var(--border));background:color-mix(in srgb,var(--danger) 7%,var(--surface))}.zatca-production-warning{border-color:color-mix(in srgb,var(--danger) 44%,var(--border));background:color-mix(in srgb,var(--danger) 7%,var(--surface))}
.zatca-onboarding-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:0 18px 14px}.zatca-onboarding-step{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2)}.zatca-onboarding-step>b{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:var(--surface);border:1px solid var(--border);font-size:.72rem}.zatca-onboarding-step>div{display:grid;gap:2px;min-width:0}.zatca-onboarding-step strong{font-size:.72rem}.zatca-onboarding-step span{font-size:.65rem;color:var(--muted)}.zatca-onboarding-step.done{border-color:color-mix(in srgb,var(--success) 42%,var(--border));background:color-mix(in srgb,var(--success) 7%,var(--surface))}.zatca-onboarding-step.done>b{border-color:var(--success);color:var(--success)}.zatca-onboarding-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 18px 18px;border-top:1px solid var(--border)}.zatca-onboarding-actions .inline-form{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.zatca-onboarding-actions input{min-width:190px}.zatca-onboarding-actions>small{flex:1 1 260px;color:var(--muted)}.zatca-row-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.zatca-row-actions form{margin:0}.zatca-kpi .muted{font-size:.66rem;overflow-wrap:anywhere}
@media(max-width:1050px){.zatca-environment-tabs,.zatca-onboarding-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.zatca-environment-tabs,.zatca-onboarding-steps{grid-template-columns:1fr}.zatca-onboarding-actions{align-items:stretch}.zatca-onboarding-actions .inline-form,.zatca-onboarding-actions input,.zatca-onboarding-actions .button{width:100%}}

/* Saudi ZATCA business-partner master data */
.zatca-bp-box[hidden],.peppol-bp-box[hidden],[data-company-zatca][hidden],[data-company-peppol][hidden],[data-company-saudi-vat-help][hidden],[data-company-belgium-vat-help][hidden]{display:none!important}.zatca-bp-box{margin:4px 0 2px;padding:14px 15px 13px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2);min-width:0}.zatca-bp-box legend{padding:0 7px;color:var(--brand);font-weight:800;font-size:.82rem}.zatca-bp-box>.help{margin:0 0 12px}.zatca-bp-grid{margin:0;grid-template-columns:repeat(2,minmax(0,1fr))}.zatca-bp-box.is-active{border-color:#a9c5ee;background:var(--brand-soft)}.zatca-bp-box [hidden]{display:none!important}body.theme-dark .zatca-bp-box{background:#202b3d;border-color:var(--border-strong)}body.theme-dark .zatca-bp-box.is-active{background:#1d2d44;border-color:#405f8d}@media(max-width:760px){.zatca-bp-grid{grid-template-columns:1fr}}

/* Saved-record first CRUD pages */
.crud-hidden{display:none!important}
.record-list-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
[data-crud-editor]{scroll-margin-top:88px}
[data-crud-list]{scroll-margin-top:88px}
.hr-list-toolbar.record-list-toolbar{justify-content:space-between;gap:12px;align-items:center}
.hr-list-toolbar.record-list-toolbar .record-list-actions{flex:0 0 auto}
@media(max-width:700px){.hr-list-toolbar.record-list-toolbar{align-items:stretch;flex-direction:column}.hr-list-toolbar.record-list-toolbar .record-list-actions{justify-content:stretch}.hr-list-toolbar.record-list-toolbar .record-list-actions .btn,.hr-list-toolbar.record-list-toolbar .record-list-actions .button{width:100%}}

/* Payroll result identity columns: never stack employee/name/department into tall rows. */
.payroll-results-table th:nth-child(1),.payroll-results-table td:nth-child(1),
.payroll-results-table th:nth-child(2),.payroll-results-table td:nth-child(2),
.payroll-register-audit th:nth-child(1),.payroll-register-audit td:nth-child(1),
.payroll-register-audit th:nth-child(2),.payroll-register-audit td:nth-child(2){white-space:nowrap}
.payroll-results-table th:nth-child(1),.payroll-results-table td:nth-child(1){min-width:250px}
.payroll-results-table th:nth-child(2),.payroll-results-table td:nth-child(2){min-width:145px}
.payroll-results-table .table-subline{white-space:nowrap}

/* Save/error notifications behave as popup toasts instead of pushing the form/grid down. */
.workspace-content>.toast-banner,.public-main>.toast-banner{position:fixed;top:78px;inset-inline-end:22px;z-index:1600;max-width:min(430px,calc(100vw - 32px));min-width:min(300px,calc(100vw - 32px));margin:0;padding:12px 42px 12px 14px;box-shadow:0 16px 42px rgba(20,51,94,.18);animation:maToastIn .2s ease-out}
.toast-banner .toast-close{position:absolute;top:6px;inset-inline-end:7px;width:28px;height:28px;padding:0;border:0;background:transparent;color:currentColor;font-size:20px;line-height:1;box-shadow:none}
.toast-banner.toast-leaving{opacity:0;transform:translateY(-6px);transition:opacity .2s ease,transform .2s ease}
@keyframes maToastIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){.workspace-content>.toast-banner,.public-main>.toast-banner{top:66px;inset-inline:12px;max-width:none;min-width:0}}
[data-crud-master].crud-editor-open [data-crud-create]{display:none!important}
/* Payroll results: keep employee identity and department on one visual line. */
.payroll-results-table td:nth-child(1)>strong{display:inline;white-space:nowrap}
.payroll-results-table td:nth-child(1)>.table-subline{display:inline;white-space:nowrap;margin:0 0 0 .55rem}
[dir="rtl"] .payroll-results-table td:nth-child(1)>.table-subline{margin:0 .55rem 0 0}
.payroll-results-table th:nth-child(1),.payroll-results-table td:nth-child(1){min-width:360px}
.payroll-results-table th:nth-child(2),.payroll-results-table td:nth-child(2){min-width:170px}


/* v2026.09.18.84-attendance-row-layout-fix
   Keep every daily-attendance record on one predictable row. The invisible form owner must
   never participate in the CSS grid; narrower viewports scroll horizontally instead of
   wrapping/reordering attendance fields. */
.attendance-row-form{display:none!important}
.attendance-entry-list{overflow-x:auto;overflow-y:hidden;scrollbar-gutter:stable}
.attendance-entry-card,
.attendance-entry-card.is-double{
  width:max-content;
  min-width:100%;
  align-items:center;
  grid-auto-flow:row;
  grid-auto-rows:auto;
}
.attendance-entry-card.is-single{
  grid-template-columns:minmax(220px,max-content) 200px 160px 270px 430px 220px max-content;
  grid-template-areas:"employee shift status first calc remarks actions";
}
.attendance-entry-card.is-double{
  grid-template-columns:minmax(220px,max-content) 200px 160px 270px 270px 430px 220px max-content;
  grid-template-areas:"employee shift status first second calc remarks actions";
}
.attendance-employee-card{grid-area:employee;white-space:nowrap}
.attendance-shift-card{grid-area:shift;white-space:nowrap}
.attendance-status-field{grid-area:status;white-space:nowrap;min-width:160px}
.attendance-period-card.first-period{grid-area:first;min-width:270px}
.attendance-period-card.second-period{grid-area:second;min-width:270px}
.attendance-calculation-card{grid-area:calc;grid-template-columns:repeat(5,minmax(78px,1fr));min-width:430px}
.attendance-remarks-field{grid-area:remarks;min-width:220px;white-space:nowrap}
.attendance-entry-actions{grid-area:actions;flex-wrap:nowrap;white-space:nowrap;justify-content:flex-end;min-width:max-content}
.attendance-employee-card strong,
.attendance-employee-card small,
.attendance-shift-title,
.attendance-shift-card>strong,
.attendance-shift-card>small,
.attendance-status-field label,
.attendance-period-title,
.attendance-period-card label,
.attendance-calculation-card small,
.attendance-calculation-card b,
.attendance-remarks-field label,
.attendance-entry-actions .status-pill,
.attendance-entry-actions .button{white-space:nowrap!important}
.attendance-employee-card strong,
.attendance-employee-card small,
.attendance-shift-card>strong,
.attendance-shift-card>small{overflow:visible;text-overflow:clip}
.attendance-status-field select,
.attendance-period-card input[type=time],
.attendance-remarks-field input{width:100%;min-width:0}
@media(max-width:1450px){
  .attendance-entry-card.is-single{grid-template-columns:minmax(220px,max-content) 200px 160px 270px 430px 220px max-content;grid-template-areas:"employee shift status first calc remarks actions"}
  .attendance-entry-card.is-double{grid-template-columns:minmax(220px,max-content) 200px 160px 270px 270px 430px 220px max-content;grid-template-areas:"employee shift status first second calc remarks actions"}
  .attendance-calculation-card,.attendance-remarks-field,.attendance-entry-actions,.attendance-employee-card,.attendance-shift-card,.attendance-status-field,.attendance-period-card{grid-column:auto!important}
}
@media(max-width:900px){
  .attendance-entry-card.is-single{grid-template-columns:minmax(220px,max-content) 200px 160px 270px 430px 220px max-content;grid-template-areas:"employee shift status first calc remarks actions"}
  .attendance-entry-card.is-double{grid-template-columns:minmax(220px,max-content) 200px 160px 270px 270px 430px 220px max-content;grid-template-areas:"employee shift status first second calc remarks actions"}
  .attendance-calculation-card,.attendance-remarks-field,.attendance-entry-actions,.attendance-employee-card,.attendance-shift-card,.attendance-status-field,.attendance-period-card{grid-column:auto!important}
  .attendance-entry-actions{justify-content:flex-end}
}
@media(max-width:560px){
  .attendance-entry-card.is-single{grid-template-columns:minmax(220px,max-content) 200px 160px 270px 430px 220px max-content;grid-template-areas:"employee shift status first calc remarks actions";padding:12px 16px}
  .attendance-entry-card.is-double{grid-template-columns:minmax(220px,max-content) 200px 160px 270px 270px 430px 220px max-content;grid-template-areas:"employee shift status first second calc remarks actions";padding:12px 16px}
  .attendance-period-card,.attendance-calculation-card{grid-column:auto!important}
  .attendance-calculation-card{grid-template-columns:repeat(5,minmax(78px,1fr))}
  .attendance-calculation-card span:last-child{grid-column:auto}
}

/* Roles & Permissions: compact saved-role register and readable permission preview. */
.role-permissions-preview summary {cursor:pointer;white-space:nowrap;font-weight:600;}
.role-permission-codes {display:flex;flex-wrap:wrap;gap:.35rem;max-width:36rem;margin-top:.65rem;}
.role-permission-codes code {display:inline-block;padding:.18rem .4rem;border:1px solid var(--border,#d9e2ef);border-radius:.35rem;white-space:nowrap;}

/* Employee Finance: create actions on the right; form actions side by side. */
.employee-finance-list-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.employee-finance-list-header>div{min-width:0}
.employee-finance-list-header>[data-crud-create]{margin-inline-start:auto;flex:0 0 auto;max-width:100%;white-space:normal;text-align:center}
.form-grid>.employee-finance-form-actions{grid-column:1/-1;display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:nowrap}
.employee-finance-form-actions>.button{flex:0 0 auto;width:auto;min-width:110px}
@media(max-width:650px){.employee-finance-form-actions>.button{min-width:0;flex:1 1 0}}

/* v2026.09.19.86: shift appears beneath the employee identifier, not as a separate grid column. */
.attendance-entry-card.is-single{
  grid-template-columns:250px 160px 270px 430px 220px max-content;
  grid-template-areas:"employee status first calc remarks actions";
}
.attendance-entry-card.is-double{
  grid-template-columns:250px 160px 270px 270px 430px 220px max-content;
  grid-template-areas:"employee status first second calc remarks actions";
}
.attendance-employee-card{align-items:flex-start;white-space:normal;min-width:250px}
.attendance-employee-details{min-width:0;display:grid;gap:2px}
.attendance-employee-shift{display:grid;gap:2px;margin-top:6px;padding-top:5px;border-top:1px solid var(--border);line-height:1.25}
.attendance-employee-shift span{color:var(--brand);font-size:.67rem;font-weight:800}
.attendance-employee-shift strong{color:var(--text);font-size:.73rem;white-space:normal!important}
.attendance-employee-shift small{color:var(--muted);font-size:.67rem;white-space:normal!important;font-variant-numeric:tabular-nums}
.attendance-calculation-card.is-preview{outline:1px solid color-mix(in srgb,var(--brand) 25%,transparent);border-radius:9px}
.attendance-day>a{display:inline-flex;justify-content:center;text-decoration:none;color:inherit}
.attendance-day>a>span{display:inline-grid;place-items:center;min-width:28px;height:27px;border:1px solid transparent;border-radius:8px;padding:0 5px;font-size:.67rem;font-weight:950;line-height:1}
.attendance-day.status-pending>a>span{background:#e8f2ff;border-color:#9fc5f0;color:#205c99}
.attendance-day.status-missing>a>span{background:#f0eaff;border-color:#c5b3ef;color:#6241a5}
.attendance-day>a:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:8px}
body.theme-dark .attendance-day.status-pending>a>span{background:#1d3045;border-color:#33577a;color:#a9d1fa}
body.theme-dark .attendance-day.status-missing>a>span{background:#302748;border-color:#544279;color:#cfbdf9}
.report-filter-grid.attendance-sheet-filters{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:800px){.report-filter-grid.attendance-sheet-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.report-filter-grid.attendance-sheet-filters{grid-template-columns:1fr}}

/* v2026.09.20.89 — print-layout selector for reports displayed inside the application. */
.inline-print-report .print-layout-control.inline{display:inline-flex;align-items:center;gap:6px;padding:5px 7px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);color:var(--text);font-size:.72rem;font-weight:700;white-space:nowrap}
.inline-print-report .print-layout-control.inline select{max-width:135px;padding:5px 7px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text);font-size:.75rem}
body.print-portrait .inline-print-report .standalone-report-document{max-width:210mm;margin-inline:auto}
body.print-portrait .inline-print-report .report-table{table-layout:fixed;width:100%;font-size:8px}
body.print-portrait .inline-print-report .report-table th,body.print-portrait .inline-print-report .report-table td{overflow-wrap:anywhere;white-space:normal}
@media print{
 .inline-print-report .print-layout-control{display:none!important}
 body.print-portrait .inline-print-report .standalone-report-document,body.print-landscape .inline-print-report .standalone-report-document{max-width:none!important;width:100%!important}
 body.print-portrait .inline-print-report .report-table,body.print-landscape .inline-print-report .report-table{width:100%!important;table-layout:fixed!important}
 body.print-portrait .inline-print-report .report-table{font-size:7px!important}
 body.print-portrait .inline-print-report .report-table th,body.print-portrait .inline-print-report .report-table td{white-space:normal!important;overflow-wrap:anywhere!important}
 body.print-portrait .inline-print-report .report-table .number-cell{white-space:normal!important}
 .inline-print-report .report-table thead{display:table-header-group!important}
 .inline-print-report .report-table tr{break-inside:avoid-page!important}
}

/* v90: company catalog profile / print branding configuration. */
.company-brand-card{margin-bottom:16px}
.company-brand-identity{display:flex;align-items:center;gap:18px;margin-bottom:18px;min-width:0}
.company-brand-identity h2{margin:0 0 4px}
.company-brand-identity p{margin:0;color:var(--muted)}
.company-brand-preview{display:block;flex:0 0 auto;max-width:160px;width:125px;height:92px;object-fit:contain;background:#fff;border:1px solid var(--border);border-radius:12px;padding:6px}
.company-brand-placeholder{display:grid;place-items:center;color:var(--brand);font-weight:900;font-size:35px;background:#eef4ff}
.company-logo-field{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.company-logo-field input[type=file]{max-width:100%}
.company-setup-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;border:0;margin:0;padding:0;min-width:0}
.company-setup-fields>.span-2{grid-column:1/-1}
@media(max-width:650px){.company-setup-fields{grid-template-columns:minmax(0,1fr)}.company-setup-fields>.span-2{grid-column:auto}.company-brand-identity{align-items:flex-start;flex-wrap:wrap}}

.company-inline-print-head{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border);background:#fff;color:#24324b}
.company-inline-print-head .document-brand-mark{flex:0 0 44px;width:44px;height:44px;border-radius:10px;background:var(--brand);display:grid;place-items:center;overflow:hidden;position:relative;color:#fff;font-size:20px;font-weight:900}
.company-inline-print-head .company-print-logo{background:#fff;border:1px solid var(--border);color:var(--brand)}
.company-inline-print-head .company-print-logo img{width:100%;height:100%;object-fit:contain;position:absolute;inset:0;z-index:1;background:#fff}
.company-inline-print-head strong{display:block;font-size:1.1rem;overflow-wrap:anywhere}.company-inline-print-head small{display:block;color:#64748b}
@media print{.company-inline-print-head{break-inside:avoid;background:#fff!important;padding:8px 0 10px!important}}

.report-hero-brand .document-brand-mark{position:relative;flex:0 0 48px;width:48px;height:48px;border-radius:13px;display:grid;place-items:center;background:var(--brand);color:#fff;font-size:21px;font-weight:900;overflow:hidden}
.report-hero-brand .company-print-logo{background:#fff;border:1px solid var(--border);color:var(--brand)}
.report-hero-brand .company-print-logo img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;background:#fff;z-index:1}

/* v94: compact report and in-app print headers. Square logos use 80x80; landscape logos use up to 120x80. Company profile previews remain unchanged. */
.company-brand-preview.company-logo-square{width:150px;max-width:150px;height:150px;object-fit:contain}
.company-brand-preview.company-logo-portrait{width:150px;max-width:150px;height:250px;object-fit:contain}
.company-inline-print-head .document-brand-mark.company-print-logo,
.report-hero-brand .document-brand-mark.company-print-logo{
  flex:0 0 80px;width:80px;min-width:80px;max-width:80px;height:80px;
  border:0;border-radius:0;box-shadow:none;background:transparent;align-self:flex-start;
}
.company-inline-print-head .document-brand-mark.company-logo-portrait,
.report-hero-brand .document-brand-mark.company-logo-portrait{height:80px}
.company-inline-print-head .document-brand-mark.company-logo-landscape,
.report-hero-brand .document-brand-mark.company-logo-landscape{
  flex:0 0 120px;width:120px;min-width:120px;max-width:120px;height:80px;
}
.company-inline-print-head .company-print-logo img,.report-hero-brand .company-print-logo img{object-fit:contain}
@media print{
  .company-inline-print-head .document-brand-mark.company-print-logo,
  .company-inline-print-head .document-brand-mark.company-logo-portrait{
    flex:0 0 80px!important;width:80px!important;min-width:80px!important;max-width:80px!important;
    height:80px!important;border:0!important;border-radius:0!important;background:transparent!important;
  }
  .company-inline-print-head .document-brand-mark.company-logo-landscape{
    flex:0 0 120px!important;width:120px!important;min-width:120px!important;max-width:120px!important;
    height:80px!important;
  }
}


/* v95: alternating record rows throughout on-screen reports. Keep section/total/summary
   rows distinct, and tint table cells (not just tr) so sticky attendance columns match. */
.advanced-report-page .report-table tbody tr:nth-child(odd of :not(.report-section-row, .report-total-row, .report-grand-total, .report-opening-row, .report-emphasis-row)) > td,
.report-result-panel .report-table tbody tr:nth-child(odd of :not(.report-section-row, .report-total-row, .report-grand-total, .report-opening-row, .report-emphasis-row)) > td,
.payroll-results-table tbody tr:nth-child(odd) > td,
.payroll-register-audit:not(.document-table) tbody tr:nth-child(odd) > td{background:#fff}
.advanced-report-page .report-table tbody tr:nth-child(even of :not(.report-section-row, .report-total-row, .report-grand-total, .report-opening-row, .report-emphasis-row)) > td,
.report-result-panel .report-table tbody tr:nth-child(even of :not(.report-section-row, .report-total-row, .report-grand-total, .report-opening-row, .report-emphasis-row)) > td,
.payroll-results-table tbody tr:nth-child(even) > td,
.payroll-register-audit:not(.document-table) tbody tr:nth-child(even) > td{background:#edf4ff}
/* The employee/day status remains on its existing colored badge. */
.attendance-matrix-table tbody tr:nth-child(odd) > td{background:var(--surface)!important}
.attendance-matrix-table tbody tr:nth-child(even) > td{background:#edf4ff!important}
/* Preserve discoverability of links and editable report drilldowns on hover. */
.advanced-report-page .report-table tbody tr:hover:not(.report-section-row,.report-total-row,.report-grand-total) > td,
.report-result-panel .report-table tbody tr:hover:not(.report-section-row,.report-total-row,.report-grand-total) > td{background:#dfeaff}
.attendance-matrix-table tbody tr:hover > td{background:#dfeaff!important}
body.theme-dark .advanced-report-page .report-table tbody tr:nth-child(odd of :not(.report-section-row,.report-total-row,.report-grand-total,.report-opening-row,.report-emphasis-row)) > td,
body.theme-dark .report-result-panel .report-table tbody tr:nth-child(odd of :not(.report-section-row,.report-total-row,.report-grand-total,.report-opening-row,.report-emphasis-row)) > td,
body.theme-dark .payroll-results-table tbody tr:nth-child(odd) > td,
body.theme-dark .payroll-register-audit:not(.document-table) tbody tr:nth-child(odd) > td{background:var(--surface)}
body.theme-dark .advanced-report-page .report-table tbody tr:nth-child(even of :not(.report-section-row,.report-total-row,.report-grand-total,.report-opening-row,.report-emphasis-row)) > td,
body.theme-dark .report-result-panel .report-table tbody tr:nth-child(even of :not(.report-section-row,.report-total-row,.report-grand-total,.report-opening-row,.report-emphasis-row)) > td,
body.theme-dark .payroll-results-table tbody tr:nth-child(even) > td,
body.theme-dark .payroll-register-audit:not(.document-table) tbody tr:nth-child(even) > td{background:#202f44}
body.theme-dark .attendance-matrix-table tbody tr:nth-child(odd) > td{background:var(--surface)!important}
body.theme-dark .attendance-matrix-table tbody tr:nth-child(even) > td{background:#202f44!important}
body.theme-dark .advanced-report-page .report-table tbody tr:hover:not(.report-section-row,.report-total-row,.report-grand-total) > td,
body.theme-dark .report-result-panel .report-table tbody tr:hover:not(.report-section-row,.report-total-row,.report-grand-total) > td,
body.theme-dark .attendance-matrix-table tbody tr:hover > td{background:#29405b!important}
@media print{
  .advanced-report-page .report-table tbody tr:nth-child(odd of :not(.report-section-row,.report-total-row,.report-grand-total,.report-opening-row,.report-emphasis-row)) > td,
  .report-result-panel .report-table tbody tr:nth-child(odd of :not(.report-section-row,.report-total-row,.report-grand-total,.report-opening-row,.report-emphasis-row)) > td,
  .payroll-results-table tbody tr:nth-child(odd) > td,
  .payroll-register-audit:not(.document-table) tbody tr:nth-child(odd) > td,
  .attendance-matrix-table tbody tr:nth-child(odd) > td{background:#fff!important}
  .advanced-report-page .report-table tbody tr:nth-child(even of :not(.report-section-row,.report-total-row,.report-grand-total,.report-opening-row,.report-emphasis-row)) > td,
  .report-result-panel .report-table tbody tr:nth-child(even of :not(.report-section-row,.report-total-row,.report-grand-total,.report-opening-row,.report-emphasis-row)) > td,
  .payroll-results-table tbody tr:nth-child(even) > td,
  .payroll-register-audit:not(.document-table) tbody tr:nth-child(even) > td,
  .attendance-matrix-table tbody tr:nth-child(even) > td{background:#edf4ff!important}
}

/* v98 personal account recovery: printable no-frills one-time codes. */
.recovery-code-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:8px;margin:12px 0}
.recovery-code-grid code{font-family:ui-monospace,monospace;font-size:.85rem;padding:9px;border:1px solid var(--border);border-radius:6px;overflow-wrap:anywhere}
.user-chip{text-decoration:none}.user-chip:hover{background:rgba(255,255,255,.1)}


/* v115 accounting document entry: page-level expansion, no nested grid scrollbars, right-aligned columns. */
.accounting-document-entry-panel{min-width:1636px;max-width:none;overflow:visible}
.document-entry-wrap{overflow:visible;max-width:none;width:1600px;min-width:1600px;padding-bottom:3px}
.document-entry-table{width:1600px;min-width:1600px;table-layout:fixed;border-collapse:separate;border-spacing:0}
.document-entry-table col.doc-col-ledger{width:280px}
.document-entry-table col.doc-col-description{width:180px}
.document-entry-table col.doc-col-value{width:100px}
.document-entry-table col.doc-col-action{width:40px}
.document-entry-table th,.document-entry-table td{box-sizing:border-box;vertical-align:middle;text-align:right}
.document-entry-table th{white-space:normal;line-height:1.15}
.document-entry-table td input,.document-entry-table td select{width:100%;min-width:0;box-sizing:border-box;text-align:right}
.document-entry-table td select{text-align-last:right}
.document-entry-table .money{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.document-entry-table .table-action-cell{width:40px;min-width:40px;max-width:40px;padding-inline:4px;text-align:right}
.document-entry-table .table-action-cell .icon-button{width:32px;height:32px;padding:6px;margin-inline-start:auto}
.document-calculation-summary{width:min(360px,100%);margin:16px 0 0 auto;padding:0 4px;font-variant-numeric:tabular-nums}
.document-summary-row{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:18px;align-items:center;padding:4px 0;font-size:.8rem}
.document-summary-row>span{text-align:right;color:var(--text)}
.document-summary-row>strong{text-align:right;font-size:.85rem}
.document-summary-total{margin-top:6px;padding-top:9px;border-top:1px solid var(--border-strong)}
.document-summary-total>strong{font-size:1.18rem}
.account-code-suggestion{display:block;margin-top:5px}.account-code-suggestion b{color:var(--text)}
@media(max-width:650px){.document-calculation-summary{width:100%}.document-summary-row{grid-template-columns:minmax(0,1fr) 100px}}


/* v119 - per-user desktop sidebar: hidden means full-width; shown means the page reflows beside it. */
.sidebar-hover-zone{display:none}
@media(min-width:901px){
  body.sidebar-mode-auto .app-shell{display:grid;grid-template-columns:0 minmax(0,1fr);min-height:100vh;transition:grid-template-columns .18s ease}
  [dir="rtl"] body.sidebar-mode-auto .app-shell{grid-template-columns:minmax(0,1fr) 0}
  body.sidebar-mode-auto.sidebar-open .app-shell,body.sidebar-mode-auto.sidebar-hover .app-shell{grid-template-columns:var(--sidebar) minmax(0,1fr)}
  [dir="rtl"] body.sidebar-mode-auto.sidebar-open .app-shell,[dir="rtl"] body.sidebar-mode-auto.sidebar-hover .app-shell{grid-template-columns:minmax(0,1fr) var(--sidebar)}
  body.sidebar-mode-auto .app-sidebar{position:sticky;top:0;width:var(--sidebar);height:100vh;z-index:40;overflow:hidden;transform:translateX(calc(-100% - 1px));transition:transform .18s ease;box-shadow:none;border-inline-end:1px solid var(--border-strong)}
  [dir="rtl"] body.sidebar-mode-auto .app-sidebar{grid-column:2;grid-row:1;transform:translateX(calc(100% + 1px))}
  [dir="rtl"] body.sidebar-mode-auto .app-workspace{grid-column:1;grid-row:1}
  body.sidebar-mode-auto.sidebar-open .app-sidebar,body.sidebar-mode-auto.sidebar-hover .app-sidebar{transform:translateX(0)}
  [dir="rtl"] body.sidebar-mode-auto.sidebar-open .app-sidebar,[dir="rtl"] body.sidebar-mode-auto.sidebar-hover .app-sidebar{transform:translateX(0)}
  body.sidebar-mode-auto .app-workspace{width:100%;min-width:0}
  body.sidebar-mode-auto .sidebar-toggle{display:grid;place-items:center}
  body.sidebar-mode-auto .sidebar-hover-zone{display:block;position:fixed;inset-block:0;inset-inline-start:0;width:14px;z-index:44;background:transparent}
  body.sidebar-mode-pinned .app-sidebar{border-inline-end:1px solid var(--border-strong);box-shadow:1px 0 0 rgba(20,51,94,.04)}
  body.sidebar-mode-pinned .sidebar-toggle{display:none}
  body.sidebar-mode-pinned .sidebar-hover-zone{display:none}
}


/* v120 - VAT stays visible as the selected value inside the selector; no duplicate label below it. */
.doc-tax-cell{vertical-align:middle}.doc-tax-cell select[data-doc-tax]{width:100%;min-width:0;font-size:.72rem;padding-inline:6px 22px;white-space:nowrap}

/* v118: configurable application identity in sidebar/public header. */
.sidebar-brand-logo{width:36px;height:36px;flex:0 0 36px;display:block;object-fit:contain;border-radius:8px;background:#fff;padding:2px;box-shadow:0 0 0 1px rgba(255,255,255,.18)}
.sidebar-brand-copy{min-width:0;display:block}.app-sidebar .sidebar-brand-copy b{font-size:.84rem;line-height:1.12;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:165px}.app-sidebar .sidebar-brand-copy small{font-size:.58rem;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:165px;margin-top:2px}.public-brand .sidebar-brand-copy b{font-size:1rem}.public-brand .sidebar-brand-copy small{font-size:.64rem}.application-brand-preview{display:block;width:96px;height:64px;object-fit:contain;border:1px solid var(--border);border-radius:10px;background:#fff;padding:4px;margin:6px 0}

/* v121 - full-width workspace, accounting document entry sizing, decimal inputs, confirmations, RTL shell. */
@media(min-width:901px){
  .workspace-content{max-width:none;margin:0;padding:24px 20px}
  [dir="rtl"] body.sidebar-mode-pinned .app-shell{grid-template-columns:minmax(0,1fr) var(--sidebar)}
  [dir="rtl"] body.sidebar-mode-pinned .app-sidebar{grid-column:2;grid-row:1;border-inline-end:0;border-inline-start:1px solid var(--border-strong)}
  [dir="rtl"] body.sidebar-mode-pinned .app-workspace{grid-column:1;grid-row:1}
  [dir="ltr"] body.sidebar-mode-pinned .app-sidebar{border-inline-start:0;border-inline-end:1px solid var(--border-strong)}
}
.accounting-document-entry-panel{min-width:0;width:100%;max-width:none;overflow:visible}
.document-entry-wrap{overflow:visible;max-width:none;width:100%;min-width:0;padding-bottom:3px}
.document-entry-table{width:100%;min-width:1580px;table-layout:fixed;border-collapse:separate;border-spacing:0}
.document-entry-table col.doc-col-ledger{width:240px}
.document-entry-table col.doc-col-description{width:160px}
.document-entry-table col.doc-col-number{width:90px}
.document-entry-table col.doc-col-value{width:90px}
.document-entry-table col.doc-col-tax{width:130px}
.document-entry-table col.doc-col-dimension{width:145px}
.document-entry-table col.doc-col-action{width:40px}
.document-entry-table td select{font-size:.76rem;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
.document-entry-table td input[data-doc-decimal]{font-variant-numeric:tabular-nums;text-align:right}
input[data-doc-decimal]::-webkit-outer-spin-button,input[data-doc-decimal]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
input[data-doc-decimal]{-moz-appearance:textfield;appearance:textfield}
.document-summary-currency{font-size:.74em;color:var(--muted);font-weight:750;margin-inline-start:4px}
[dir="rtl"] .document-entry-table th,[dir="rtl"] .document-entry-table td,[dir="rtl"] .document-entry-table td input,[dir="rtl"] .document-entry-table td select{text-align:right}
[dir="rtl"] .document-entry-table td select{text-align-last:right}
[dir="rtl"] .document-entry-table td input[data-doc-decimal],[dir="rtl"] .document-entry-table .money{direction:ltr;text-align:left}

.ma-confirm-open{overflow:hidden}
.ma-confirm-overlay{position:fixed;inset:0;z-index:2147483600;display:grid;place-items:center;padding:20px;background:rgba(7,21,43,.46);backdrop-filter:blur(3px)}
.ma-confirm-dialog{width:min(430px,calc(100vw - 32px));padding:28px 28px 24px;border:1px solid rgba(173,188,211,.8);border-radius:18px;background:#fff;color:var(--text);text-align:center;box-shadow:0 28px 80px rgba(7,29,67,.30);animation:maConfirmIn .18s ease-out}
.ma-confirm-icon{width:64px;height:64px;margin:0 auto 16px;display:grid;place-items:center;border-radius:50%;background:#e9f7ef;color:#159447;box-shadow:0 8px 24px rgba(21,148,71,.14)}
.ma-confirm-icon span{font-size:1.65rem;font-weight:900;line-height:1}
.ma-confirm-danger .ma-confirm-icon{background:#fff0f1;color:#d9364f;box-shadow:0 8px 24px rgba(217,54,79,.14)}
.ma-confirm-dialog h2{margin:0;color:#17213a;font-size:1.55rem;line-height:1.2}
.ma-confirm-dialog p{margin:10px auto 22px;max-width:340px;color:#59677d;font-size:.95rem;line-height:1.45}
.ma-confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ma-confirm-actions button{min-height:48px;border:0;border-radius:9px;padding:10px 16px;font-weight:800;cursor:pointer;box-shadow:0 8px 20px rgba(20,51,94,.10)}
.ma-confirm-cancel{background:#ef334f;color:#fff}
.ma-confirm-ok{background:#18ad56;color:#fff}
.ma-confirm-danger .ma-confirm-ok{background:#d9364f}
.ma-confirm-actions button:hover{filter:brightness(.97);transform:translateY(-1px)}
.ma-confirm-actions button:focus-visible{outline:3px solid rgba(15,78,182,.20);outline-offset:2px}
[dir="rtl"] .ma-confirm-dialog{text-align:center}
@keyframes maConfirmIn{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:650px){.ma-confirm-dialog{padding:22px 18px 18px}.ma-confirm-actions{grid-template-columns:1fr}.ma-confirm-cancel{order:2}.ma-confirm-ok{order:1}}

/* v128 - physical RTL/LTR sidebar placement.
   CSS Grid line numbering follows the element's writing direction. The shell used
   RTL direction previously, so grid-column:2 resolved to the physical left side.
   Keep the shell grid physically LTR, then restore the requested text direction
   inside the sidebar/workspace. This makes RTL sidebar placement deterministic. */
[dir="rtl"] .app-shell{direction:ltr}
[dir="rtl"] .app-sidebar,[dir="rtl"] .app-workspace{direction:rtl}
[dir="ltr"] .app-shell,[dir="ltr"] .app-sidebar,[dir="ltr"] .app-workspace{direction:ltr}
@media(min-width:901px){
  [dir="rtl"] body.sidebar-mode-pinned .app-shell{grid-template-columns:minmax(0,1fr) var(--sidebar)}
  [dir="rtl"] body.sidebar-mode-pinned .app-sidebar{grid-column:2;grid-row:1;border-right:0;border-left:1px solid var(--border-strong)}
  [dir="rtl"] body.sidebar-mode-pinned .app-workspace{grid-column:1;grid-row:1}
  [dir="rtl"] body.sidebar-mode-auto .app-shell{grid-template-columns:minmax(0,1fr) 0}
  [dir="rtl"] body.sidebar-mode-auto.sidebar-open .app-shell,[dir="rtl"] body.sidebar-mode-auto.sidebar-hover .app-shell{grid-template-columns:minmax(0,1fr) var(--sidebar)}
  [dir="rtl"] body.sidebar-mode-auto .app-sidebar{grid-column:2;grid-row:1;border-right:0;border-left:1px solid var(--border-strong);transform:translateX(calc(100% + 1px))}
  [dir="rtl"] body.sidebar-mode-auto .app-workspace{grid-column:1;grid-row:1}
  [dir="rtl"] body.sidebar-mode-auto.sidebar-open .app-sidebar,[dir="rtl"] body.sidebar-mode-auto.sidebar-hover .app-sidebar{transform:translateX(0)}
  [dir="rtl"] body.sidebar-mode-auto .sidebar-hover-zone{left:auto;right:0;inset-inline-start:auto;inset-inline-end:0}
  [dir="ltr"] body.sidebar-mode-auto .sidebar-hover-zone{left:0;right:auto;inset-inline-start:0;inset-inline-end:auto}
}
@media(max-width:900px){
  [dir="rtl"] .app-sidebar{left:auto;right:0;inset-inline-start:auto;inset-inline-end:0;transform:translateX(105%)}
  [dir="ltr"] .app-sidebar{left:0;right:auto;inset-inline-start:0;inset-inline-end:auto;transform:translateX(-105%)}
  body.sidebar-open .app-sidebar{transform:translateX(0)}
}

/* Accounting document list search (v129) */
.accounting-document-list-toolbar{display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:14px 16px 4px}
.accounting-document-search{position:relative;width:min(440px,100%)}
.accounting-document-search input{width:100%;height:42px;padding-inline-start:42px;padding-inline-end:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);outline:0}
.accounting-document-search input:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 12%,transparent)}
.accounting-document-search-icon{position:absolute;inset-inline-start:13px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:18px;height:18px;color:var(--muted);pointer-events:none}
.accounting-document-search-icon svg{width:17px;height:17px}
.accounting-document-list-panel .table-wrap{padding-top:6px}
@media(max-width:700px){.accounting-document-list-toolbar{justify-content:stretch;padding:12px 12px 2px}.accounting-document-search{width:100%}}

/* v138 Payment & Collection layout refinements */
.payment-refund-editor{margin-bottom:16px;max-width:1120px}.payment-refund-selection{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}.payment-refund-selection>div{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);min-width:0}.payment-refund-selection span{display:block;color:var(--muted);font-size:.68rem;font-weight:700}.payment-refund-selection strong{display:block;margin-top:3px;font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payment-refund-form{display:grid;grid-template-columns:minmax(300px,430px) minmax(260px,1fr) 150px;gap:12px;align-items:end}.payment-refund-form .field{margin:0}.payment-refund-reason{grid-column:1/3}.payment-refund-actions{display:flex;align-items:center;gap:8px;grid-column:3;grid-row:2}.payment-reminder-date-form{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.payment-reminder-date-field{width:min(430px,100%);margin:0}.payment-reminder-date-form>.btn{margin-bottom:1px}
@media(max-width:900px){.payment-refund-selection{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-refund-form{grid-template-columns:1fr 1fr}.payment-refund-reason,.payment-refund-actions{grid-column:1/-1}.payment-refund-actions{grid-row:auto}}
@media(max-width:620px){.payment-refund-selection,.payment-refund-form{grid-template-columns:1fr}.payment-refund-reason,.payment-refund-actions{grid-column:1}.payment-reminder-date-field{width:100%}.payment-reminder-date-form{align-items:stretch}.payment-reminder-date-form>.btn{width:100%}}


/* v142 document activity / immutable collaboration timeline */
.document-activity-widget{margin-top:22px;border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden}.document-activity-heading{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding:12px 14px 0}.document-activity-heading small{color:var(--muted)}.document-activity-tabs{display:flex;gap:8px;align-items:center;padding:10px;border-bottom:1px solid var(--border);background:var(--surface-subtle)}.document-activity-tabs>button{border:1px solid var(--border);background:var(--surface);border-radius:9px;padding:8px 14px;font-weight:700;color:var(--text)}.document-activity-tabs>button.active{background:var(--primary);color:#fff;border-color:var(--primary)}.document-activity-tools{margin-inline-start:auto}.document-activity-tools button{min-width:36px;height:36px;border:1px solid var(--border);border-radius:9px;background:var(--surface);font-size:18px}.document-activity-panel{padding:12px}.document-note-editor textarea,.document-reply-editor textarea{width:100%;min-height:72px;resize:vertical}.document-note-actions,.document-reply-editor>div{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.document-activity-list,.document-note-list{display:grid;gap:10px;margin-top:10px}.document-activity-entry{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;padding:10px 6px;border-bottom:1px dashed var(--border)}.document-activity-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--primary-soft);font-weight:800}.document-activity-meta{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.document-activity-meta small{color:var(--muted)}.document-activity-entry p,.document-note-card p,.document-note-reply p{margin:4px 0 0;white-space:pre-wrap}.document-note-card{border:1px solid var(--border);border-radius:12px;padding:12px;background:var(--surface)}.document-note-replies{margin-top:10px;margin-inline-start:28px;display:grid;gap:8px}.document-note-reply{border-inline-start:3px solid var(--primary-soft);padding:7px 10px;background:var(--surface-subtle);border-radius:8px}.document-note-reply small{margin-inline-start:8px;color:var(--muted)}.document-reply-toggle{margin-top:8px;border:0;background:transparent;color:var(--primary);font-weight:700;padding:4px}.document-reply-editor{margin-top:8px}.document-activity-empty{padding:18px;color:var(--muted);border:1px dashed var(--border);border-radius:10px}.document-activity-token{display:none}@media(max-width:720px){.document-activity-tabs{flex-wrap:wrap}.document-activity-tabs>button{flex:1 1 auto}.document-note-replies{margin-inline-start:10px}}


/* v145 document activity/chat refinement */
.document-activity-widget{margin-top:22px;border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden}.document-activity-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px 0}.document-activity-heading small{color:var(--muted)}.document-activity-tabs{display:flex!important;gap:8px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--border);background:var(--surface-subtle);min-height:58px}.document-activity-tabs>button{display:inline-flex!important;align-items:center;justify-content:center;min-width:92px;min-height:38px;border:1px solid var(--border);background:var(--surface);border-radius:9px;padding:8px 16px;font-weight:700;color:var(--text);white-space:nowrap}.document-activity-tabs>button.active{background:var(--primary);color:#fff;border-color:var(--primary)}.document-activity-tools{margin-inline-start:auto}.document-activity-panel{padding:12px}.document-note-editor{display:block}.document-note-editor textarea,.document-reply-editor textarea,.document-note-editbox textarea{width:100%;min-height:72px;resize:vertical;border:1px solid var(--border);border-radius:10px;padding:10px;background:var(--surface)}.document-note-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:9px}.document-note-spacer{flex:1 1 auto}.note-color{width:24px;height:24px;border-radius:50%;border:2px solid var(--border);background:var(--note-color,#17233c);padding:0}.note-color.active{outline:2px solid var(--primary);outline-offset:2px}.document-note-list,.document-activity-list{display:grid;gap:0;margin-top:8px}.document-activity-entry{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;padding:12px 6px;border-bottom:1px dashed var(--border)}.document-activity-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--primary-soft);font-weight:800}.document-activity-meta{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.document-activity-meta small{color:var(--muted)}.document-note-card{border:1px solid var(--border);border-radius:12px;padding:12px;background:var(--surface);margin-bottom:10px}.document-note-head{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:start}.document-note-body{font-weight:500;margin:6px 0 8px!important;white-space:pre-wrap}.document-note-manage{display:flex;gap:5px}.document-note-manage button,.document-reaction,.document-reply-toggle{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:4px 9px;cursor:pointer}.document-note-manage button{border-radius:7px;min-width:30px}.document-note-reactions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.document-reaction.active{background:var(--primary-soft);border-color:var(--primary)}.document-note-replies{margin-top:10px;margin-inline-start:28px;display:grid;gap:8px}.document-note-reply{border-inline-start:3px solid var(--primary-soft);padding:7px 10px;background:var(--surface-subtle);border-radius:8px}.document-note-reply small{margin-inline-start:8px;color:var(--muted)}.document-reply-editor,.document-note-editbox{margin-top:9px;padding-top:8px;border-top:1px dashed var(--border)}.document-reply-editor>div{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.document-activity-empty{padding:18px;color:var(--muted);border:1px dashed var(--border);border-radius:10px}.document-activity-token{display:none}@media(max-width:720px){.document-activity-heading{align-items:flex-start;flex-direction:column}.document-activity-tabs{flex-wrap:wrap}.document-activity-tabs>button{min-width:0;flex:1 1 auto}.document-note-replies{margin-inline-start:8px}.document-note-head{grid-template-columns:34px minmax(0,1fr)}.document-note-manage{grid-column:2}}

/* v147 transactional document activity/chat refinement */
.document-activity-tabs>button{color:var(--text)!important}
.document-activity-tabs>button.active{background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important}
.document-note-body{padding:10px 12px;border-radius:9px;color:#17233c!important;border:1px solid rgba(23,35,60,.10)}
.document-note-editor textarea,.document-note-editbox textarea{color:#17233c!important}
.document-reaction-log{display:grid;gap:5px;margin-top:8px;padding:8px 10px;border-radius:9px;background:var(--surface-subtle);border:1px dashed var(--border)}
.document-reaction-log-row{display:flex;align-items:center;gap:8px;min-width:0}
.document-reaction-log-row b{font-size:.9rem}
.document-reaction-log-row small{margin-inline-start:auto;color:var(--muted);white-space:nowrap}
.document-reaction-log-emoji{font-size:1rem;line-height:1}

/* v148 Document Activity tab caption/default-tab hardening */
.document-activity-tabs>button .document-activity-tab-label{display:inline!important;visibility:visible!important;opacity:1!important;color:inherit!important;font:inherit!important;line-height:1.2!important;white-space:nowrap!important}
.document-activity-tabs>button[data-activity-tab]{overflow:visible!important;text-indent:0!important;font-size:14px!important}
.document-activity-panel[hidden]{display:none!important}


/* v149 Document Activity production readability and bright note backgrounds */
.document-activity-tabs>.document-activity-tab-button{display:inline-flex!important;visibility:visible!important;opacity:1!important;min-width:104px!important;min-height:40px!important;background:var(--surface)!important;color:var(--text)!important;border:1px solid var(--border-strong)!important;font-size:14px!important;font-weight:800!important;line-height:1.2!important;text-indent:0!important;white-space:nowrap!important;overflow:visible!important}
.document-activity-tabs>.document-activity-tab-button.active{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important;box-shadow:0 2px 8px rgba(15,78,182,.18)!important}
.document-activity-tabs>.document-activity-tab-button:hover{border-color:var(--brand)!important;color:var(--brand)!important}
.document-activity-tabs>.document-activity-tab-button.active:hover{background:var(--brand-2)!important;color:#fff!important}
.document-activity-avatar{background:var(--brand-soft)!important;color:var(--brand)!important}
.document-reply-toggle{color:var(--brand)!important}
.document-reaction.active{background:var(--brand-soft)!important;border-color:var(--brand)!important;color:var(--brand)!important}
.document-note-editor textarea,.document-note-editbox textarea{color:var(--text)!important}
.document-note-editor textarea:not([style*="background"]),.document-note-editbox textarea:not([style*="background"]){background:var(--surface)!important}
.document-note-editor textarea[style*="background"],.document-note-editbox textarea[style*="background"]{color:#14213d!important}
.note-color{width:28px!important;height:28px!important;border:2px solid rgba(20,33,61,.35)!important;background:var(--note-color,#fff)!important;box-shadow:0 1px 3px rgba(20,33,61,.18)!important}
.note-color.active{outline:3px solid var(--brand)!important;outline-offset:2px!important}
.document-note-body{color:#14213d!important;border:1px solid rgba(20,33,61,.18)!important}
body.theme-dark .document-note-body:not([style*="background"]){color:var(--text)!important;background:var(--surface-2)!important}
@media(max-width:720px){.document-activity-tabs>.document-activity-tab-button{min-width:88px!important}}
/* v151 Log Note collapsed composer workflow */
.document-note-editor[hidden]{display:none!important}
.document-activity-panel[data-activity-panel="lognote"] .document-note-list{margin-top:0}

/* v154: centered date separators for Log Note, Activity and History timelines. */
.document-date-separator{display:grid;grid-template-columns:minmax(24px,1fr) auto minmax(24px,1fr);align-items:center;gap:10px;margin:12px 0;color:var(--muted);font-size:12px;font-weight:600;line-height:1.2}.document-date-separator::before,.document-date-separator::after{content:"";height:1px;background:var(--border)}.document-date-separator span{white-space:nowrap;padding:0 2px}.document-note-list>.document-date-separator:first-child,.document-activity-list>.document-date-separator:first-child{margin-top:0}

/* v155 Security / Create Roles: menu-aware permission editor */
.role-basics{margin-bottom:1rem}.role-access-section{margin-top:1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface,#fff);overflow:hidden}.role-access-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:12px 14px;border-bottom:1px solid var(--border);background:var(--surface-soft,#f8fafc)}.role-access-heading h3{margin:0 0 3px}.role-access-heading .help{margin:0}.role-menu-tree{padding:8px 12px 12px}.role-menu-node{position:relative}.role-menu-row{min-height:40px;display:flex;align-items:center;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.role-menu-node:last-child>.role-menu-row{border-bottom:0}.role-menu-check{display:flex;align-items:center;gap:9px;width:100%;margin:0;padding:7px 5px}.role-menu-check>input{flex:0 0 auto;width:auto!important;min-width:0!important;margin:0!important}.role-menu-label{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.role-menu-label strong{font-size:.9rem}.role-menu-label small{font-size:.72rem;color:var(--muted);overflow-wrap:anywhere}.role-menu-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid var(--border);border-radius:7px;background:var(--surface-soft,#f8fafc);font-size:.8rem}.role-menu-lock{display:inline-flex;align-items:center;padding:2px 7px;border-radius:999px;background:var(--surface-soft,#eef2f7);border:1px solid var(--border);font-size:.68rem;color:var(--muted);font-weight:600}.role-menu-children{margin-inline-start:27px;padding-inline-start:12px;border-inline-start:1px solid var(--border)}.role-additional-permissions{max-height:420px;margin:12px}.role-access-heading .inline-actions{margin:0;flex-wrap:wrap}@media(max-width:700px){.role-access-heading{flex-direction:column}.role-menu-children{margin-inline-start:14px;padding-inline-start:8px}.role-menu-label small{width:100%;padding-inline-start:32px}}
.role-menu-open{display:inline-flex;align-items:center;padding:2px 7px;border-radius:999px;background:#eaf7ef;border:1px solid #bfe2cc;font-size:.68rem;color:#276743;font-weight:650}body.theme-dark .role-menu-open{background:#173326;border-color:#2e6247;color:#a7dfbd}

/* v165 Customer requests workspace */
.customer-request-page{display:grid;gap:18px}.customer-request-summary-grid,.customer-request-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.customer-request-summary-card,.customer-request-kpi-card{padding:16px;border:1px solid var(--border);border-radius:14px;background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--brand-soft) 14%,var(--surface)));box-shadow:var(--shadow-sm)}.customer-request-summary-card small,.customer-request-kpi-card small{text-transform:uppercase;letter-spacing:.05em;font-size:.68rem;color:var(--muted);font-weight:800}.customer-request-summary-card strong,.customer-request-kpi-card strong{display:block;font-size:1.4rem;margin-top:8px}.customer-request-summary-card span,.customer-request-kpi-card span{display:block;margin-top:5px;color:var(--muted);font-size:.78rem;line-height:1.45}.customer-request-summary-card.pending,.customer-request-summary-card.approved,.customer-request-summary-card.rejected{background:var(--surface)}.customer-request-browser-heading{align-items:center}.customer-request-view-switch{display:inline-flex;gap:6px;padding:4px;border:1px solid var(--border);border-radius:11px;background:var(--surface-subtle)}.customer-request-view-switch button{min-width:112px;border:0;background:transparent;color:var(--muted);font-weight:700;padding:9px 14px;border-radius:8px}.customer-request-view-switch button.active{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}.customer-request-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:14px;padding:12px 0 16px}.customer-request-toolbar .field{margin:0}.customer-request-view-panel[hidden]{display:none!important}.customer-request-primary-cell{display:grid;gap:2px}.customer-request-primary-cell small{color:var(--muted);font-size:.72rem}.customer-request-table-wrap{border-radius:12px}.customer-request-kanban-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.customer-request-kanban-column{display:grid;gap:12px;align-content:start;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle)}.customer-request-kanban-column>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.customer-request-kanban-column h3{margin:0 0 3px;font-size:1rem}.customer-request-kanban-column p{margin:0;color:var(--muted);font-size:.75rem}.customer-request-kanban-stack{display:grid;gap:12px}.customer-request-card{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:14px;display:grid;gap:12px;box-shadow:var(--shadow-sm)}.customer-request-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.customer-request-card-head h4{margin:0 0 3px;font-size:1rem}.customer-request-card-head small{color:var(--muted)}.customer-request-card dl,.customer-request-field-grid{margin:0}.customer-request-card dl{display:grid;grid-template-columns:auto 1fr;gap:6px 10px}.customer-request-card dt{color:var(--muted);font-size:.72rem;font-weight:700}.customer-request-card dd{margin:0;font-weight:600;overflow-wrap:anywhere}.customer-request-card-actions{display:flex;justify-content:flex-end}.customer-request-kanban-empty,.customer-request-empty-state{padding:14px;border:1px dashed var(--border);border-radius:12px;color:var(--muted);background:var(--surface)}.customer-request-details-page .customer-request-detail-header{align-items:flex-start}.customer-request-detail-actions{align-items:center}.customer-request-two-column{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}.customer-request-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}.customer-request-field-grid.compact{gap:12px 16px}.customer-request-field-grid>div{display:grid;gap:4px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle)}.customer-request-field-grid>div.full{grid-column:1/-1}.customer-request-field-grid dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:800}.customer-request-field-grid dd{margin:0;font-weight:650;overflow-wrap:anywhere}.customer-request-workspace-panel,.customer-request-rejection-panel{overflow:hidden}.customer-request-activation-form{display:grid;gap:18px}.customer-request-form-section{display:grid;gap:12px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle)}.customer-request-form-section h3{margin:0;font-size:1rem}.customer-request-inline-check{grid-column:span 2}.customer-request-inline-actions{margin-top:14px;flex-wrap:wrap}.customer-request-rejection-panel .form-actions{grid-column:1/-1}.customer-request-browser a,.customer-request-field-grid a{overflow-wrap:anywhere}.status-pill.status-pending,.status-pill.status-approved,.status-pill.status-rejected{border:1px solid transparent}.status-pill.status-pending{border-color:#f0d69f}.status-pill.status-approved{border-color:#bfe5d5}.status-pill.status-rejected{border-color:#efc5c7}
@media(max-width:1100px){.customer-request-summary-grid,.customer-request-kpi-grid,.customer-request-kanban-grid,.customer-request-two-column{grid-template-columns:1fr 1fr}.customer-request-toolbar{grid-template-columns:1fr}}@media(max-width:720px){.customer-request-summary-grid,.customer-request-kpi-grid,.customer-request-kanban-grid,.customer-request-two-column,.customer-request-field-grid,.customer-request-page .form-grid{grid-template-columns:1fr}.customer-request-browser-heading,.customer-request-detail-header{flex-direction:column;align-items:flex-start}.customer-request-view-switch{width:100%}.customer-request-view-switch button{flex:1 1 auto;min-width:0}.customer-request-field-grid>div.full,.customer-request-inline-check{grid-column:auto}}

/* v168 Document Activity advanced AJAX dialogs */
.document-activity-dialog-overlay .document-activity-dialog-actions-single{grid-template-columns:1fr}.document-activity-dialog-overlay .document-activity-dialog-actions-single .ma-confirm-ok{width:100%}

/* v169 Log Note action placement and composer focus */
.document-note-head{grid-template-columns:38px minmax(0,1fr)!important}.document-note-actions-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:8px}.document-note-actions-row .document-note-manage{display:flex;align-items:center;gap:6px;order:0}.document-note-actions-row .document-note-reactions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;order:1}.document-note-actions-row .document-note-manage button,.document-note-actions-row .document-reaction,.document-note-actions-row .document-reply-toggle{min-height:32px;display:inline-flex;align-items:center;justify-content:center}.document-note-actions-row .document-reply-toggle{margin-top:0}.document-note-editor{margin-bottom:12px;padding:12px;border:1px solid var(--border-strong);border-radius:12px;background:var(--surface-subtle);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand) 4%,transparent)}.document-note-editor.composer-open{border-color:color-mix(in srgb,var(--brand) 55%,var(--border-strong));box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 12%,transparent)}.document-note-editor textarea{min-height:96px!important;border:2px solid var(--border-strong)!important;background:var(--surface)!important;padding:12px 13px!important;line-height:1.45;box-shadow:none!important}.document-note-editor textarea:hover{border-color:color-mix(in srgb,var(--brand) 38%,var(--border-strong))!important}.document-note-editor textarea:focus{border-color:var(--brand)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 16%,transparent)!important;outline:0}.document-note-editor textarea::placeholder{color:var(--muted);opacity:.9}@media(max-width:720px){.document-note-actions-row{gap:6px}.document-note-actions-row .document-note-manage,.document-note-actions-row .document-note-reactions{width:100%}.document-note-editor{padding:10px}.document-note-editor textarea{min-height:88px!important}}

/* v171 Expenses workspace */
.expense-form .section-divider{margin:1.1rem 0 .75rem;border-top:1px solid var(--border-color,#d8dee8);position:relative}.expense-form .section-divider span{position:relative;top:-.7rem;background:var(--surface,#fff);padding-inline:.5rem;font-weight:700}.expense-total-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding:1rem}.expense-total-strip>div{border:1px solid var(--border-color,#d8dee8);border-radius:12px;padding:.9rem;display:flex;flex-direction:column;gap:.25rem}.expense-total-strip .emphasis{box-shadow:0 0 0 2px color-mix(in srgb,var(--brand-primary,#2563eb) 22%,transparent);border-color:var(--brand-primary,#2563eb)}.expense-total-strip span{font-size:.8rem;color:var(--muted-text,#64748b)}.expense-total-strip strong{font-size:1.25rem}.expense-form input[readonly]{background:var(--surface-muted,#f7f8fb)}
@media (max-width:780px){.expense-total-strip{grid-template-columns:1fr}.expense-form .form-grid.four{grid-template-columns:1fr}.expense-form .span-2,.expense-form .span-4{grid-column:auto}}

/* v173 Expenses - New Voucher style multi-line entry */
.expense-lines-wrap{overflow-x:auto}.expense-lines-table{min-width:1380px}.expense-lines-table th,.expense-lines-table td{vertical-align:middle}.expense-lines-table select,.expense-lines-table input{min-width:120px}.expense-lines-table td:nth-child(1) select{min-width:190px}.expense-lines-table td:nth-child(2) input{min-width:190px;background:var(--surface-muted,#f7f9fc)}.expense-lines-table td:nth-child(3) input{min-width:220px}.expense-lines-table td:nth-child(4) input{min-width:110px}.expense-lines-table tfoot th{background:var(--surface-muted,#f7f9fc);font-weight:800}.expense-form .section-divider{margin-top:16px}.expense-form [hidden]{display:none!important}

/* v175 Expenses - main page flow, no internal grid scrolling */
.expense-form .expense-lines-wrap{overflow:visible!important;max-height:none!important;height:auto!important;scrollbar-width:none!important;border-radius:0}
.expense-form .expense-lines-wrap::-webkit-scrollbar{display:none!important}
.expense-form .expense-lines-table{width:100%!important;min-width:0!important;table-layout:fixed}
.expense-form .expense-lines-table th,.expense-form .expense-lines-table td{padding:7px 6px;overflow:visible;white-space:normal}
.expense-form .expense-lines-table select,.expense-form .expense-lines-table input{width:100%!important;min-width:0!important;max-width:100%;box-sizing:border-box}
.expense-form .expense-lines-table th:nth-child(1),.expense-form .expense-lines-table td:nth-child(1){width:10%}
.expense-form .expense-lines-table th:nth-child(2),.expense-form .expense-lines-table td:nth-child(2){width:11%}
.expense-form .expense-lines-table th:nth-child(3),.expense-form .expense-lines-table td:nth-child(3){width:18%}
.expense-form .expense-lines-table th:nth-child(4),.expense-form .expense-lines-table td:nth-child(4){width:9%}
.expense-form .expense-lines-table th:nth-child(5),.expense-form .expense-lines-table td:nth-child(5){width:10%}
.expense-form .expense-lines-table th:nth-child(6),.expense-form .expense-lines-table td:nth-child(6){width:6%}
.expense-form .expense-lines-table th:nth-child(7),.expense-form .expense-lines-table td:nth-child(7){width:6%}
.expense-form .expense-lines-table th:nth-child(8),.expense-form .expense-lines-table td:nth-child(8){width:10%}
.expense-form .expense-lines-table th:nth-child(9),.expense-form .expense-lines-table td:nth-child(9){width:10%}
.expense-form .expense-lines-table th:nth-child(10),.expense-form .expense-lines-table td:nth-child(10){width:5%}
.expense-form .expense-lines-table .table-action-cell{text-align:center}
.expense-form .expense-lines-table .table-action-cell .icon-button{margin-inline:auto}
@media(max-width:1100px){.expense-form .expense-lines-table{font-size:.72rem}.expense-form .expense-lines-table th,.expense-form .expense-lines-table td{padding:6px 4px}.expense-form .expense-lines-table select,.expense-form .expense-lines-table input{font-size:.72rem;padding-inline:6px}}

/* Expenses v176: document identity + register grid */
.expense-document-strip{display:flex;align-items:end;gap:14px;margin:0 0 14px;max-width:760px}.expense-document-number{display:grid;gap:6px;min-width:260px}.expense-document-number>span{font-size:.82rem;font-weight:700}.expense-document-number input{font-weight:800;letter-spacing:.02em;background:var(--surface-muted,#f7f9fc)}.expense-document-hint{font-size:.82rem;color:var(--text-muted,#667085);padding-bottom:10px}.expense-register-tools{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:0 0 12px}.expense-register-tools label{display:grid;gap:5px;min-width:180px}.expense-register-search{min-width:min(420px,100%)!important;flex:1}.expense-register-action{text-align:right;white-space:nowrap}.expense-register-actions{justify-content:flex-end;white-space:nowrap}.expense-register-actions .inline-form{display:inline-flex;margin:0}.expense-row-saved{outline:2px solid var(--primary,#cc2f67);outline-offset:-2px}.expense-register-wrap{overflow-x:auto;overflow-y:visible}.expense-register-table{width:100%;min-width:1050px}@media(max-width:720px){.expense-document-strip{align-items:stretch;flex-direction:column}.expense-document-number{min-width:0;width:100%}.expense-document-hint{padding-bottom:0}.expense-register-tools label,.expense-register-search{width:100%;min-width:0!important}}

/* v177 Department register: saved records are the default grid and Action remains the last column. */
.department-grid-table{width:100%;table-layout:fixed}.department-grid-table th:nth-child(1){width:29%}.department-grid-table th:nth-child(2){width:auto}.department-grid-table th:nth-child(3){width:100px}.department-grid-table th:nth-child(4){width:92px}.department-grid-table td{vertical-align:middle}.department-grid-table td>input{width:100%;min-width:0}.department-grid-table .table-action-cell{text-align:end;white-space:nowrap}.department-grid-table .row-actions{justify-content:flex-end}.saved-record-highlight{box-shadow:inset 3px 0 0 var(--accent);background:color-mix(in srgb,var(--accent) 6%,transparent)}
@media(max-width:720px){.department-grid-table{table-layout:auto}.department-grid-table th:nth-child(1),.department-grid-table th:nth-child(2),.department-grid-table th:nth-child(3),.department-grid-table th:nth-child(4){width:auto}}
/* v179 - exchange rate editor persistence clarity and inline actions */
.exchange-rate-actions{grid-column:1/-1;display:flex;flex-direction:row!important;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:nowrap;margin-top:2px}
.exchange-rate-actions>.btn{width:auto;flex:0 0 auto}
.exchange-rate-base-hint{margin-top:2px}
@media(max-width:650px){.exchange-rate-actions{grid-column:auto;flex-direction:row!important}}

/* v182 global asynchronous action shell: lock the active ERP page while an in-place request executes. */
body.app-request-busy{cursor:progress}
body.app-request-busy .workspace-content{user-select:none}
.app-busy-overlay{position:fixed;inset:0;z-index:2147483500;display:grid;place-items:center;background:rgba(245,248,253,.42);backdrop-filter:blur(1.5px);pointer-events:all}
.app-busy-overlay[hidden]{display:none!important}
.app-busy-card{min-width:132px;display:flex;align-items:center;justify-content:center;gap:10px;padding:11px 16px;border:1px solid var(--border-strong);border-radius:12px;background:var(--surface);color:var(--text);font-size:.82rem;font-weight:800;box-shadow:0 14px 38px rgba(20,51,94,.18)}
.app-busy-spinner{width:18px;height:18px;flex:0 0 18px;border:2px solid rgba(80,104,139,.24);border-top-color:var(--brand);border-radius:50%;animation:appBusySpin .7s linear infinite}
@keyframes appBusySpin{to{transform:rotate(360deg)}}
body.theme-dark .app-busy-overlay{background:rgba(5,12,25,.46)}
@media(prefers-reduced-motion:reduce){.app-busy-spinner{animation-duration:1.5s}}

/* v183 - grouped, readable role editor */
.role-editor-panel{max-width:1500px;width:100%}.role-access-main{overflow:visible}.role-global-actions{align-self:center}.role-module-grid,.role-permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px}.role-module-card,.role-permission-card{border:1px solid var(--border);border-radius:12px;background:var(--surface,#fff);overflow:hidden;min-width:0}.role-module-header,.role-permission-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;background:var(--surface-soft,#f8fafc);border-bottom:1px solid var(--border)}.role-module-title{display:flex;align-items:center;gap:8px;min-width:0;color:var(--text)}.role-module-title strong,.role-permission-header>b{color:var(--text);font-size:.9rem;overflow-wrap:anywhere}.role-group-actions{margin:0;flex:0 0 auto;gap:6px}.button.compact{min-height:30px;padding:5px 9px;font-size:.74rem}.role-module-body{padding:4px 10px 9px}.role-module-body>.role-menu-node>.role-menu-row{background:color-mix(in srgb,var(--surface-soft,#f8fafc) 55%,transparent);border-radius:8px;margin:4px 0}.role-menu-check{color:var(--text)}.role-menu-label,.role-menu-label strong{color:var(--text)!important;opacity:1!important;visibility:visible!important}.role-menu-label small{color:var(--muted)!important}.role-menu-children{margin-inline-start:18px;padding-inline-start:10px}.role-menu-row{min-height:34px}.role-menu-check{padding:5px}.role-permission-card{padding:0!important;border-bottom:1px solid var(--border)!important}.role-permission-list{display:grid;gap:2px;padding:8px 12px 10px}.role-action-permission{padding:5px 3px;color:var(--text);align-items:flex-start}.role-action-permission span{min-width:0;overflow-wrap:anywhere}.role-action-permission small{display:block;color:var(--muted);margin-top:2px}.role-editor-actions{position:sticky;bottom:0;z-index:4;padding:10px 0;background:var(--surface,#fff);border-top:1px solid var(--border);margin-top:14px}.role-access-section .permission-list{max-height:none;overflow:visible;border:0;padding:0}.role-access-section .permission-group:last-child{border-bottom:1px solid var(--border)}
@media(max-width:1050px){.role-module-grid,.role-permission-grid{grid-template-columns:1fr}}
@media(max-width:700px){.role-module-grid,.role-permission-grid{padding:9px;gap:9px}.role-module-header,.role-permission-header{align-items:flex-start;flex-direction:column}.role-group-actions{width:100%}.role-group-actions .button{flex:1}.role-editor-actions{position:static}.role-menu-children{margin-inline-start:10px;padding-inline-start:7px}}

/* v185 - protected Company Master authority and delegated role guidance */
.role-master-notice{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 10px;padding:11px 13px;border:1px solid color-mix(in srgb,var(--brand) 32%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--brand) 7%,var(--surface,#fff));color:var(--text)}
.role-master-notice>div{display:grid;gap:3px}.role-master-notice span{font-size:.82rem;color:var(--muted)}
.role-master-badge{display:inline-flex!important;align-items:center;gap:5px;white-space:nowrap;padding:4px 9px;border-radius:999px;background:color-mix(in srgb,var(--brand) 12%,var(--surface,#fff));border:1px solid color-mix(in srgb,var(--brand) 30%,var(--border));color:var(--text)!important;font-weight:700}
.role-delegation-help{margin:.2rem 0 1rem}
@media(max-width:700px){.role-master-notice{align-items:flex-start;flex-direction:column}}

/* v189 HR settings grid-first masters */
.hr-master-grid{width:100%;table-layout:fixed}
.hr-master-grid th:nth-last-child(1){width:110px}
.hr-master-grid .table-action-cell{text-align:end;white-space:nowrap}
.hr-master-grid .row-actions{justify-content:flex-end}
.option-master-grid th:nth-child(1){width:18%}.option-master-grid th:nth-child(2){width:auto}.option-master-grid th:nth-child(3){width:120px}.option-master-grid th:nth-child(4){width:110px}.option-master-grid th:nth-child(5){width:110px}

/* v194 - editable control direction follows the selected UI culture globally.
   Explicit per-field dir attributes remain authoritative (for example an English-name field inside an RTL page). */
html[dir="ltr"] .app-workspace input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([dir]),
html[dir="ltr"] .app-workspace textarea:not([dir]),
html[dir="ltr"] .app-workspace select:not([dir]),
html[dir="ltr"] .ma-select-search:not([dir]),
html[dir="ltr"] .ma-lookup-search:not([dir]){
  direction:ltr!important;
  text-align:left!important;
}
html[dir="ltr"] .app-workspace select:not([dir]){text-align-last:left!important}
html[dir="ltr"] .app-workspace input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([dir])::placeholder,
html[dir="ltr"] .app-workspace textarea:not([dir])::placeholder,
html[dir="ltr"] .ma-select-search:not([dir])::placeholder,
html[dir="ltr"] .ma-lookup-search:not([dir])::placeholder{
  direction:ltr!important;
  text-align:left!important;
}
html[dir="ltr"] .ma-select-trigger,
html[dir="ltr"] .ma-select-option,
html[dir="ltr"] .ma-select-show-more,
html[dir="ltr"] .ma-lookup-row,
html[dir="ltr"] .ma-lookup-head,
html[dir="ltr"] .ma-date-trigger,
html[dir="ltr"] .field-hint,
html[dir="ltr"] .help,
html[dir="ltr"] .page-subtitle{
  direction:ltr;
  text-align:left;
}

html[dir="rtl"] .app-workspace input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([dir]),
html[dir="rtl"] .app-workspace textarea:not([dir]),
html[dir="rtl"] .app-workspace select:not([dir]),
html[dir="rtl"] .ma-select-search:not([dir]),
html[dir="rtl"] .ma-lookup-search:not([dir]){
  direction:rtl!important;
  text-align:right!important;
}
html[dir="rtl"] .app-workspace select:not([dir]){text-align-last:right!important}
html[dir="rtl"] .app-workspace input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([dir])::placeholder,
html[dir="rtl"] .app-workspace textarea:not([dir])::placeholder,
html[dir="rtl"] .ma-select-search:not([dir])::placeholder,
html[dir="rtl"] .ma-lookup-search:not([dir])::placeholder{
  direction:rtl!important;
  text-align:right!important;
}
html[dir="rtl"] .ma-select-trigger,
html[dir="rtl"] .ma-select-option,
html[dir="rtl"] .ma-select-show-more,
html[dir="rtl"] .ma-lookup-row,
html[dir="rtl"] .ma-lookup-head,
html[dir="rtl"] .ma-date-trigger,
html[dir="rtl"] .field-hint,
html[dir="rtl"] .help,
html[dir="rtl"] .page-subtitle{
  direction:rtl;
  text-align:right;
}

/* v196 — branch context, audit controls and supporting documents */
.branch-selector-form{height:44px;display:flex;align-items:center;gap:8px;color:#fff;padding:5px 8px;border-radius:10px;min-width:165px;max-width:260px}.branch-selector-form:hover{background:rgba(255,255,255,.08)}.branch-selector-form label{display:grid;gap:2px;min-width:0;flex:1}.branch-selector-form small{color:#bcd0f1;font-size:.65rem;line-height:1}.branch-selector-form select{width:100%;min-width:0;border:0;background:transparent;color:#fff;font-size:.77rem;font-weight:700;padding-inline-start:0;padding-inline-end:18px;outline:0;white-space:nowrap;text-overflow:ellipsis;cursor:pointer}.branch-selector-form select option{color:var(--text);background:var(--surface)}.branch-selector-form b{display:block;color:#fff;font-size:.77rem;max-width:190px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.branch-selector-form.muted{opacity:.82}.branch-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:#8bd5ff;box-shadow:0 0 0 4px rgba(139,213,255,.13)}
.branch-search-form{max-width:560px}.branch-search-form input{min-width:min(360px,55vw)}.branch-grid .branch-head-badge{display:block;width:max-content;margin-top:4px}.branch-editor .check-card{min-height:74px}.branch-access-grid th:not(:first-child),.branch-access-grid td:not(:first-child){text-align:center}.branch-access-grid input[type=checkbox]{width:18px;height:18px;accent-color:var(--brand);cursor:pointer}.branch-access-grid input[type=checkbox]:disabled{cursor:not-allowed;opacity:.65}.branch-access-actions{margin-top:16px;justify-content:flex-end}
.document-attachments-widget{margin-top:18px;padding:18px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}.attachment-upload-form{display:grid;grid-template-columns:minmax(220px,1.3fr) minmax(150px,.7fr) minmax(220px,1fr) auto;gap:12px;align-items:end;margin-top:14px;padding:14px;border:1px dashed var(--border);border-radius:10px;background:var(--surface-soft)}.attachment-upload-form .field{margin:0}.attachment-list{display:grid;gap:8px;margin-top:14px}.attachment-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.attachment-file-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;background:var(--surface-soft);color:var(--brand);font-weight:800}.attachment-copy{min-width:0}.attachment-copy>a{font-weight:700;overflow-wrap:anywhere}.attachment-copy small{display:block;color:var(--muted);margin-top:2px}.attachment-copy p{margin:5px 0 0;color:var(--text);font-size:.85rem}.empty-inline{margin:8px 0 0;color:var(--muted)}
.audit-filter{align-items:end}.audit-grid td{vertical-align:top}.audit-json{margin-top:7px;max-width:680px}.audit-json summary{cursor:pointer;color:var(--brand);font-weight:700}.audit-json b{display:block;margin-top:8px}.audit-json pre{max-height:220px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;padding:9px;font-size:.75rem}.audit-limit-note{margin:12px 0 0}.nowrap{white-space:nowrap}
@media(max-width:1100px){.branch-selector-form{max-width:190px}.branch-selector-form b{max-width:125px}.attachment-upload-form{grid-template-columns:1fr 1fr}.attachment-upload-form button{width:max-content}}
@media(max-width:650px){.branch-selector-form{min-width:0;width:42px;padding:5px;justify-content:center;position:relative}.branch-selector-form label{display:block;position:absolute;inset:0}.branch-selector-form label small{display:none}.branch-selector-form select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;padding:0}.branch-selector-form.muted>span:last-child{display:none}.attachment-upload-form{grid-template-columns:1fr}.attachment-upload-form button{width:100%}.attachment-row{grid-template-columns:34px minmax(0,1fr);align-items:start}.attachment-row>form{grid-column:2;justify-self:end}.branch-search-form{display:grid;width:100%}.branch-search-form input{min-width:0;width:100%}.branch-access-grid{min-width:650px}}

/* v197 — Financial Closing command center */
.closing-page-header{align-items:flex-start}.closing-page-header .page-header-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.closing-page-header .page-header-actions form{margin:0}.closing-page-header .btn{display:inline-flex;align-items:center;gap:7px}
.closing-hero{position:relative;overflow:hidden;padding:22px;background:linear-gradient(135deg,var(--surface) 0%,var(--surface-soft) 100%)}.closing-hero:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;inset-inline-end:-120px;top:-150px;background:color-mix(in srgb,var(--brand) 10%,transparent);pointer-events:none}.closing-score-zone{display:flex;align-items:center;gap:22px;position:relative;z-index:1}.closing-score-ring{--ring-size:144px;width:var(--ring-size);height:var(--ring-size);border-radius:50%;display:grid;place-items:center;flex:0 0 auto;background:conic-gradient(var(--brand) calc(var(--closing-score)*3.6deg),var(--border) 0);position:relative;box-shadow:0 0 0 8px color-mix(in srgb,var(--brand) 5%,transparent)}.closing-score-ring:before{content:"";position:absolute;inset:12px;border-radius:50%;background:var(--surface);box-shadow:inset 0 0 0 1px var(--border)}.closing-score-ring>div{position:relative;z-index:1;text-align:center;display:grid;gap:2px}.closing-score-ring strong{font-size:1.75rem;line-height:1;color:var(--text)}.closing-score-ring span{font-size:.72rem;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.closing-score-copy{min-width:0}.closing-score-copy h2{margin:8px 0 2px;font-size:1.55rem}.closing-score-copy p,.closing-score-copy small{margin:0;color:var(--muted)}.closing-score-copy small{display:block;margin-top:6px}
.closing-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px;position:relative;z-index:1}.closing-metric{padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);display:grid;gap:2px}.closing-metric span{font-size:.78rem;color:var(--muted);font-weight:700}.closing-metric strong{font-size:1.55rem}.closing-metric small{color:var(--muted)}.closing-metric.success{border-inline-start:4px solid var(--success)}.closing-metric.warning{border-inline-start:4px solid var(--warning)}.closing-metric.danger{border-inline-start:4px solid var(--danger)}
.closing-distribution{height:10px;border-radius:999px;background:var(--surface-muted,var(--surface-soft));display:flex;overflow:hidden;margin-top:18px;position:relative;z-index:1}.closing-distribution span{display:block;min-width:0}.closing-distribution .pass{background:var(--success)}.closing-distribution .warn{background:var(--warning)}.closing-distribution .block{background:var(--danger)}.closing-distribution-labels{display:flex;gap:18px;flex-wrap:wrap;margin-top:8px;color:var(--muted);font-size:.78rem}.closing-distribution-labels span{display:inline-flex;align-items:center;gap:6px}.closing-distribution-labels i{width:8px;height:8px;border-radius:50%;display:inline-block}.closing-distribution-labels i.pass{background:var(--success)}.closing-distribution-labels i.warn{background:var(--warning)}.closing-distribution-labels i.block{background:var(--danger)}
.closing-flow{margin-top:16px}.closing-flow-steps{display:grid;grid-template-columns:minmax(140px,1fr) 28px minmax(140px,1fr) 28px minmax(140px,1fr) 28px minmax(140px,1fr) 28px minmax(140px,1fr);align-items:center;gap:8px}.closing-flow-step{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--border);border-radius:11px;background:var(--surface-soft)}.closing-flow-step>b{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--border);color:var(--text);flex:0 0 auto}.closing-flow-step span{display:grid}.closing-flow-step small{color:var(--muted)}.closing-flow-step.complete{border-color:color-mix(in srgb,var(--success) 45%,var(--border));background:color-mix(in srgb,var(--success) 6%,var(--surface))}.closing-flow-step.complete>b{background:var(--success);color:#fff}.closing-flow-step.active{border-color:color-mix(in srgb,var(--brand) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 8%,transparent)}.closing-flow-step.active>b{background:var(--brand);color:#fff}.closing-flow-step.future{opacity:.68}.closing-flow-link{height:2px;background:var(--border);position:relative}.closing-flow-link:after{content:"";position:absolute;inset-inline-end:-1px;top:-3px;border-inline-start:6px solid var(--border);border-top:4px solid transparent;border-bottom:4px solid transparent}
.closing-two-column{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:16px;margin-top:16px}.closing-branch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.closing-branch-card{border:1px solid var(--border);border-radius:12px;padding:14px;background:var(--surface)}.closing-branch-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}.branch-avatar{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--brand) 12%,var(--surface));color:var(--brand);font-weight:800;font-size:.78rem}.closing-branch-head>div{min-width:0;display:grid}.closing-branch-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.closing-branch-head small{color:var(--muted)}.closing-progress{height:7px;border-radius:999px;background:var(--surface-soft);overflow:hidden;margin:14px 0 10px}.closing-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--brand),var(--success));border-radius:inherit}.closing-branch-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.closing-branch-stats span{display:grid;color:var(--muted);font-size:.72rem}.closing-branch-stats b{font-size:.95rem;color:var(--text)}
.closing-period-list{display:grid;gap:8px}.closing-period-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:9px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.closing-period-date{width:44px;height:44px;border-radius:9px;background:var(--surface-soft);display:grid;place-items:center;align-content:center;line-height:1.05}.closing-period-date b{font-size:.8rem;text-transform:uppercase}.closing-period-date small{font-size:.68rem;color:var(--muted)}.closing-period-copy{display:grid}.closing-period-copy small{color:var(--muted)}.closing-period-flags{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.closing-lock-actions{white-space:nowrap}
.closing-checklist-panel,.closing-years-panel{margin-top:16px}.closing-check-legend{display:flex;gap:10px;font-size:.78rem;font-weight:700}.closing-check-legend .success{color:var(--success)}.closing-check-legend .warning{color:var(--warning)}.closing-check-legend .danger{color:var(--danger)}.closing-check-table td:first-child{min-width:250px}.closing-check-detail{display:block;color:var(--muted);font-weight:400;margin-top:4px;max-width:520px;line-height:1.35}.closing-area-tag{display:inline-flex;padding:4px 8px;border-radius:999px;background:var(--surface-soft);border:1px solid var(--border);font-size:.72rem;font-weight:700;white-space:nowrap}.closing-ok-mark{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--success) 12%,transparent);color:var(--success);font-weight:900;margin-inline:auto}.closing-years-panel .badge{margin-inline-start:6px}.closing-phase-note{display:flex;gap:12px;align-items:flex-start;margin-top:16px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--brand) 30%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--brand) 5%,var(--surface))}.closing-phase-note>div:first-child{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;background:var(--brand);color:#fff}.closing-phase-note p{margin:3px 0 0;color:var(--muted)}
.closing-policy-panel select{min-width:150px}.closing-policy-notice{margin-top:14px}.closing-scope-required{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:start;padding:24px}.closing-scope-icon{width:58px;height:58px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,var(--warning) 15%,var(--surface));color:var(--warning)}.closing-scope-icon .app-svg-icon{width:28px;height:28px}.closing-scope-required h2{margin-top:0}
@media(max-width:1100px){.closing-two-column{grid-template-columns:1fr}.closing-flow-steps{grid-template-columns:1fr}.closing-flow-link{width:2px;height:20px;margin:auto}.closing-flow-link:after{inset-inline-end:auto;left:-3px;top:auto;bottom:-1px;border-inline-start:4px solid transparent;border-inline-end:4px solid transparent;border-top:6px solid var(--border);border-bottom:0}.closing-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.closing-score-zone{align-items:flex-start;flex-direction:column}.closing-score-ring{--ring-size:124px}.closing-metric-grid,.closing-branch-grid{grid-template-columns:1fr}.closing-period-row{grid-template-columns:44px minmax(0,1fr)}.closing-period-flags,.closing-lock-actions{grid-column:2;justify-content:flex-start}.closing-check-legend{display:none}.closing-scope-required{grid-template-columns:1fr}.closing-page-header .page-header-actions{width:100%}}

/* v197 — in-application supporting-document viewer */
.attachment-actions{display:flex;align-items:center;gap:5px}.attachment-copy>strong{display:block;font-weight:700;overflow-wrap:anywhere}.attachment-preview-header .page-header-actions{display:flex;gap:8px;flex-wrap:wrap}.attachment-preview-header .btn{display:inline-flex;align-items:center;gap:7px}.attachment-preview-shell{padding:0;overflow:hidden;min-height:62vh}.attachment-preview-frame{display:block;width:100%;height:72vh;border:0;background:#fff}.attachment-image-stage{min-height:62vh;display:grid;place-items:center;padding:24px;background:var(--surface-soft)}.attachment-image-stage img{max-width:100%;max-height:72vh;object-fit:contain;border-radius:8px;box-shadow:var(--shadow)}.attachment-text-preview{margin:0;padding:22px;min-height:62vh;max-height:72vh;overflow:auto;white-space:pre-wrap;word-break:break-word;background:var(--surface);color:var(--text);font:500 .9rem/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.attachment-table-preview{max-height:72vh;overflow:auto}.attachment-table-preview table{min-width:max-content}.attachment-table-preview td{white-space:pre-wrap;min-width:90px;max-width:320px}

/* v204 calculated transaction-grid controls */
.voucher-auto-vat-row td{background:color-mix(in srgb,var(--brand-soft) 58%,var(--surface));}
.voucher-auto-vat-row input[readonly],.voucher-auto-vat-row select[aria-readonly="true"]{font-weight:700;color:var(--brand);}
#voucher-lines [data-tax-base][readonly],#voucher-lines [data-tax-amount][readonly]{font-weight:700;text-align:end;}
#budget-lines tfoot th,#budget-lines tfoot td,#voucher-lines tfoot th,#voucher-lines tfoot td{font-weight:800;background:var(--surface-2);}
/* v206 — compact Voucher entry columns */
#voucher-lines{table-layout:fixed;width:100%;min-width:1120px}
#voucher-lines th:nth-child(1),#voucher-lines td:nth-child(1){width:18%}
#voucher-lines th:nth-child(2),#voucher-lines td:nth-child(2){width:11%}
#voucher-lines th:nth-child(3),#voucher-lines td:nth-child(3){width:9%}
#voucher-lines th:nth-child(4),#voucher-lines td:nth-child(4){width:16%}
#voucher-lines th:nth-child(5),#voucher-lines td:nth-child(5),#voucher-lines th:nth-child(6),#voucher-lines td:nth-child(6){width:8%}
#voucher-lines th:nth-child(7),#voucher-lines td:nth-child(7){width:9%}
#voucher-lines th:nth-child(8),#voucher-lines td:nth-child(8),#voucher-lines th:nth-child(9),#voucher-lines td:nth-child(9){width:8%}
#voucher-lines th:nth-child(10),#voucher-lines td:nth-child(10){width:5%}
#voucher-lines input,#voucher-lines select{min-width:0;width:100%}
#voucher-lines .money,#voucher-lines [data-tax-base],#voucher-lines [data-tax-amount]{font-variant-numeric:tabular-nums}
@media(max-width:1180px){#voucher-lines{min-width:1040px}}


/* v209 — compact voucher records and payment entry balance visibility */
.voucher-summary-grid{gap:8px;margin-bottom:10px}
.voucher-summary-grid>.stat-card{min-height:58px;padding:8px 10px}
.voucher-summary-grid>.stat-card span{font-size:11px}
.voucher-summary-grid>.stat-card b,.voucher-summary-grid>.stat-card strong{font-size:13px;margin-top:2px}
.voucher-summary-grid>.stat-card small{font-size:11px;margin-top:2px}
.voucher-vat-panel{padding:13px 14px}.voucher-vat-panel .panel-heading{padding-bottom:9px}.voucher-vat-panel .detail-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px 12px}.voucher-vat-panel .detail-grid dt{font-size:11px;white-space:nowrap}.voucher-vat-panel .detail-grid dd{font-size:13px;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.voucher-record-panel{padding:13px 14px}.voucher-record-table-wrap{overflow-x:auto}.voucher-record-table{table-layout:fixed;min-width:1080px;font-size:13px}.voucher-record-table th{font-size:11px;white-space:nowrap;padding:7px 7px}.voucher-record-table td{font-size:13px;padding:7px 7px;line-height:1.28}.voucher-record-table small{font-size:11px}.voucher-record-table .vr-line{width:3.5%}.voucher-record-table .vr-account{width:18%}.voucher-record-table .vr-partner{width:11%}.voucher-record-table .vr-employee{width:10%}.voucher-record-table .vr-description{width:19%}.voucher-record-table .vr-taxcode{width:8.5%}.voucher-record-table .vr-money{width:7.5%}
.payment-entry-panel{padding:14px 16px}.payment-entry-form{max-width:980px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 12px;align-items:start}.payment-entry-form .payment-date-field{grid-column:span 2}.payment-entry-form .payment-party-field{grid-column:span 2;align-self:start}.payment-entry-form .payment-party-field select,.payment-entry-form .payment-party-field .ma-select{max-width:350px}.payment-entry-form .payment-compact-field select,.payment-entry-form .payment-compact-field .ma-select{max-width:245px}.payment-entry-form .payment-number-field input{max-width:210px}.payment-entry-form .payment-reference-field,.payment-entry-form .payment-narration-field{grid-column:span 3}.payment-entry-form .payment-reference-field input,.payment-entry-form .payment-narration-field textarea{max-width:720px}.payment-entry-form .payment-narration-field textarea{min-height:72px}.payment-form-actions{grid-column:1/-1;display:flex;justify-content:flex-start}.payment-party-balance{grid-column:1/-1;display:grid;grid-template-columns:minmax(220px,1.35fr) repeat(3,minmax(120px,.65fr));gap:7px;max-width:840px;margin:0 0 2px}.payment-party-balance[hidden]{display:none!important}.payment-party-balance>div{min-width:0;padding:7px 9px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2)}.payment-party-balance span{display:block;color:var(--muted);font-size:11px;font-weight:700;white-space:nowrap}.payment-party-balance strong{display:block;margin-top:2px;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.payment-party-balance small{display:block;margin-top:1px;font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.payment-party-identity{background:var(--brand-soft)!important;border-color:color-mix(in srgb,var(--brand) 24%,var(--border))!important}
@media(max-width:1050px){.voucher-vat-panel .detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.payment-entry-form{grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px}.payment-entry-form .payment-date-field,.payment-entry-form .payment-party-field{grid-column:span 2}.payment-entry-form .payment-reference-field,.payment-entry-form .payment-narration-field{grid-column:span 2}.payment-party-balance{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.voucher-vat-panel .detail-grid{grid-template-columns:1fr}.voucher-vat-panel .detail-grid dd{white-space:normal}.payment-entry-form{grid-template-columns:1fr}.payment-entry-form .payment-date-field,.payment-entry-form .payment-party-field,.payment-entry-form .payment-reference-field,.payment-entry-form .payment-narration-field{grid-column:span 1}.payment-party-balance{grid-template-columns:1fr}.payment-entry-form .payment-party-field select,.payment-entry-form .payment-party-field .ma-select,.payment-entry-form .payment-compact-field select,.payment-entry-form .payment-compact-field .ma-select,.payment-entry-form .payment-number-field input{max-width:none}}

/* v210 — equal-width compact accounting record cards and readable document grids */
.voucher-summary-grid,.voucher-vat-panel .detail-grid,.accounting-document-summary-grid{grid-auto-rows:1fr}
.voucher-summary-grid>.stat-card,.voucher-vat-panel .detail-grid>div,.accounting-document-summary-grid>.metric-card{height:100%;min-width:0}
.voucher-vat-panel .detail-grid>div{overflow:hidden}
.accounting-document-summary-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:0 0 10px}
.accounting-document-summary-grid>.metric-card{min-height:58px;padding:8px 10px;display:flex;flex-direction:column;justify-content:center;border-radius:10px}
.accounting-document-summary-grid>.metric-card:after{display:none}
.accounting-document-summary-grid>.metric-card span{font-size:11px;line-height:1.2;color:var(--muted);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-document-summary-grid>.metric-card strong{font-size:13px;line-height:1.25;margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-document-table-wrap{overflow-x:auto}
.accounting-document-line-table{table-layout:fixed;min-width:1250px;width:100%;font-size:13px}
.accounting-document-line-table th{font-size:11px;white-space:nowrap;padding:7px 6px}
.accounting-document-line-table td{font-size:13px;line-height:1.28;padding:7px 6px;overflow-wrap:break-word}
.accounting-document-line-table th:nth-child(1),.accounting-document-line-table td:nth-child(1){width:3%}
.accounting-document-line-table th:nth-child(2),.accounting-document-line-table td:nth-child(2){width:17%}
.accounting-document-line-table th:nth-child(3),.accounting-document-line-table td:nth-child(3){width:18%}
.accounting-document-line-table th:nth-child(4),.accounting-document-line-table td:nth-child(4){width:6%}
.accounting-document-line-table th:nth-child(5),.accounting-document-line-table td:nth-child(5){width:7%}
.accounting-document-line-table th:nth-child(6),.accounting-document-line-table td:nth-child(6){width:8%}
.accounting-document-line-table th:nth-child(7),.accounting-document-line-table td:nth-child(7){width:6%}
.accounting-document-line-table th:nth-child(8),.accounting-document-line-table td:nth-child(8){width:7%}
.accounting-document-line-table th:nth-child(9),.accounting-document-line-table td:nth-child(9){width:8%}
.accounting-document-line-table th:nth-child(10),.accounting-document-line-table td:nth-child(10){width:7%}
.accounting-document-line-table th:nth-child(11),.accounting-document-line-table td:nth-child(11){width:6%}
.accounting-document-line-table th:nth-child(12),.accounting-document-line-table td:nth-child(12){width:7%}
.accounting-document-line-table th:nth-child(n+4),.accounting-document-line-table td:nth-child(n+4){font-variant-numeric:tabular-nums}
.accounting-document-line-table td:nth-child(4),.accounting-document-line-table td:nth-child(5),.accounting-document-line-table td:nth-child(6),.accounting-document-line-table td:nth-child(7),.accounting-document-line-table td:nth-child(8),.accounting-document-line-table td:nth-child(10),.accounting-document-line-table td:nth-child(11),.accounting-document-line-table td:nth-child(12){text-align:end;white-space:nowrap}
@media(max-width:1300px){.accounting-document-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.accounting-document-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.accounting-document-summary-grid{grid-template-columns:1fr}}
.advanced-report-page .report-table{font-size:13px}
.advanced-report-page .report-table td{font-size:13px;line-height:1.25;padding:7px 9px}
.advanced-report-page .report-table thead th{font-size:11px;line-height:1.2;padding:7px 9px;white-space:nowrap}

/* Payroll register / salary-slip compact layout v211 */
.payroll-register-surface{overflow-x:hidden!important}
.payroll-register-compact{width:100%;table-layout:fixed;font-size:13px}
.payroll-register-compact col.pr-employee{width:20%}.payroll-register-compact col.pr-days{width:8%}.payroll-register-compact col.pr-attendance{width:10%}.payroll-register-compact col.pr-unpaid{width:8%}.payroll-register-compact col.pr-hours{width:10%}.payroll-register-compact col.pr-ot{width:6%}.payroll-register-compact col.pr-deduction{width:10%}.payroll-register-compact col.pr-money{width:7%}
.payroll-register-compact th,.payroll-register-compact td{padding:7px 6px;line-height:1.22;min-width:0}
.payroll-register-compact th{font-size:11px;white-space:normal;overflow-wrap:normal;word-break:normal;text-align:center}
.payroll-register-compact th:first-child,.payroll-register-compact td:first-child{text-align:start}
.payroll-register-compact td:not(:first-child){text-align:center;white-space:nowrap;font-variant-numeric:tabular-nums}
.payroll-register-compact .money{min-width:0;text-align:end}
.payroll-register-employee strong,.payroll-register-employee small{display:block;min-width:0}
.payroll-register-employee strong{font-size:13px;line-height:1.2;white-space:normal;overflow-wrap:anywhere}
.payroll-register-employee small{margin-top:2px;font-size:10.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.payroll-report-screen .payroll-slip-grid{gap:6px;margin-bottom:9px}
.payroll-report-screen .payroll-slip-field{padding:7px 9px;border-radius:8px;min-height:0}
.payroll-report-screen .payroll-slip-field span{font-size:10px}
.payroll-report-screen .payroll-slip-field strong{font-size:13px;line-height:1.2;margin-top:2px}
.payroll-report-screen .payroll-slip-summary{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-bottom:10px}
.payroll-report-screen .payroll-slip-summary>div{padding:7px 9px;border-radius:8px;min-height:0}
.payroll-report-screen .payroll-slip-summary span{font-size:10px}
.payroll-report-screen .payroll-slip-summary strong{font-size:13px;line-height:1.2;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.payroll-report-screen .payroll-breakdown-grid{gap:10px}
.payroll-report-screen .panel-heading{padding-top:10px;padding-bottom:8px}
@media(max-width:1180px){.payroll-report-screen .payroll-slip-summary{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:860px){.payroll-report-screen .payroll-slip-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.payroll-report-screen .payroll-slip-summary{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:680px){.payroll-report-screen .payroll-slip-grid,.payroll-report-screen .payroll-slip-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.payroll-report-screen .payroll-slip-grid,.payroll-report-screen .payroll-slip-summary{grid-template-columns:1fr}}

/* v212 Help Center: common-user workflow cards + browser-session live screen capture. */
.help-workflow-section{gap:14px}.help-workflow-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.help-workflow-title h3{margin:0}.help-workflow-title p{margin:4px 0 0;color:var(--muted);font-size:.84rem}.help-live-capture-note{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);font-size:.8rem;color:var(--text-soft)}.help-workflow-list{display:grid;gap:12px}.help-workflow-card{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.help-workflow-number{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--primary-soft);color:var(--primary);font-weight:800;border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border))}.help-workflow-main{min-width:0;display:grid;gap:10px}.help-workflow-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.help-workflow-head small{display:block;color:var(--muted);font-size:.74rem;margin-bottom:2px}.help-workflow-head h4{margin:0;font-size:1rem}.help-workflow-main>p{margin:0;line-height:1.55;color:var(--text-soft)}.help-workflow-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.help-workflow-actions .btn{white-space:nowrap}.help-capture-btn{border-style:dashed}.help-workflow-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.help-workflow-meta>div{display:grid;gap:3px;padding:9px 10px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2)}.help-workflow-meta b{font-size:.72rem;text-transform:uppercase;letter-spacing:.035em;color:var(--muted)}.help-workflow-meta span{font-size:.84rem;line-height:1.45}.help-workflow-shot,.help-workflow-shot-empty{margin:0;border:1px dashed var(--border-strong);border-radius:10px;overflow:hidden;background:var(--surface-2)}.help-workflow-shot img{display:block;width:100%;max-height:520px;object-fit:contain;background:#fff}.help-workflow-shot figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border-top:1px solid var(--border);font-size:.76rem;color:var(--muted)}.help-link-button{border:0;background:transparent;color:var(--primary);font:inherit;font-weight:700;cursor:pointer}.help-workflow-shot-empty{display:flex;align-items:center;gap:10px;padding:10px 12px;color:var(--muted)}.help-workflow-shot-empty>span{font-size:1.35rem;color:var(--primary)}.help-workflow-shot-empty>div{display:grid;gap:1px}.help-workflow-shot-empty strong{font-size:.8rem;color:var(--text)}.help-workflow-shot-empty small{font-size:.74rem}.help-live-capture-bar{position:fixed;z-index:10050;inset-inline:18px;bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--primary) 32%,var(--border));border-radius:14px;background:var(--surface);box-shadow:var(--shadow-lg);color:var(--text)}.help-live-capture-copy{display:grid;gap:2px;min-width:0}.help-live-capture-copy strong{font-size:.92rem}.help-live-capture-step{font-size:.8rem;color:var(--primary);font-weight:700}.help-live-capture-instruction,.help-live-capture-privacy,.help-live-capture-message{font-size:.74rem;color:var(--muted);line-height:1.35}.help-live-capture-message{color:var(--success);font-weight:700}.help-live-capture-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:900px){.help-workflow-title,.help-workflow-head,.help-live-capture-bar{flex-direction:column}.help-workflow-actions,.help-live-capture-actions{justify-content:flex-start}.help-workflow-meta{grid-template-columns:1fr}.help-live-capture-bar{inset-inline:10px;bottom:10px;align-items:stretch}.help-workflow-card{grid-template-columns:34px minmax(0,1fr);padding:12px}.help-workflow-number{width:30px;height:30px}.help-workflow-actions .btn{flex:1 1 auto;text-align:center}}

/* v217 — Daily Attendance belongs to the main page flow.
   Do not create an inner attendance viewport: employee rows grow the workspace vertically,
   and open selects are allowed to extend outside the row/panel without being clipped. */
.attendance-entry-panel{
  overflow:visible;
}
.attendance-entry-list{
  overflow:visible;
  scrollbar-gutter:auto;
  min-width:0;
}
.attendance-entry-card,
.attendance-entry-card.is-single,
.attendance-entry-card.is-double{
  width:100%;
  max-width:100%;
  min-width:0;
}
.attendance-entry-card.is-single{
  grid-template-columns:minmax(190px,1.15fr) minmax(145px,.72fr) minmax(215px,1.05fr) minmax(330px,1.8fr) minmax(170px,.9fr) max-content;
  grid-template-areas:"employee status first calc remarks actions";
}
.attendance-entry-card.is-double{
  grid-template-columns:minmax(190px,1.05fr) minmax(140px,.7fr) minmax(195px,.95fr) minmax(195px,.95fr) minmax(315px,1.65fr) minmax(165px,.85fr) max-content;
  grid-template-areas:"employee status first second calc remarks actions";
}
.attendance-employee-card,
.attendance-status-field,
.attendance-period-card,
.attendance-calculation-card,
.attendance-remarks-field,
.attendance-entry-actions{
  min-width:0;
}
.attendance-calculation-card{
  min-width:0;
  grid-template-columns:repeat(5,minmax(54px,1fr));
}
.attendance-period-card.first-period,
.attendance-period-card.second-period,
.attendance-remarks-field{
  min-width:0;
}
.attendance-status-field{
  min-width:0;
}
.attendance-entry-panel .ma-select.open{
  z-index:120;
}

@media(max-width:1500px){
  .attendance-entry-card.is-single{
    grid-template-columns:minmax(190px,1.1fr) minmax(145px,.72fr) minmax(210px,1fr) minmax(150px,.78fr);
    grid-template-areas:
      "employee status first actions"
      "calc calc remarks remarks";
  }
  .attendance-entry-card.is-double{
    grid-template-columns:minmax(190px,1fr) minmax(140px,.7fr) minmax(190px,.95fr) minmax(190px,.95fr);
    grid-template-areas:
      "employee status first second"
      "calc calc remarks actions";
  }
  .attendance-entry-actions{justify-content:flex-end;}
}

@media(max-width:980px){
  .attendance-entry-card.is-single,
  .attendance-entry-card.is-double{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-areas:
      "employee employee"
      "status status"
      "first first"
      "second second"
      "calc calc"
      "remarks remarks"
      "actions actions";
    align-items:stretch;
  }
  .attendance-entry-card.is-single .second-period{display:none;}
  .attendance-entry-actions{justify-content:flex-start;}
}

@media(max-width:560px){
  .attendance-entry-card.is-single,
  .attendance-entry-card.is-double{
    grid-template-columns:1fr;
    grid-template-areas:
      "employee"
      "status"
      "first"
      "second"
      "calc"
      "remarks"
      "actions";
  }
  .attendance-calculation-card{grid-template-columns:repeat(2,minmax(0,1fr));}
  .attendance-calculation-card span:last-child{grid-column:1/-1;}
}

/* v218 — Fast Daily Attendance + interactive Attendance Sheet. */
@media(min-width:1501px){
  .attendance-entry-card.is-single{
    grid-template-columns:minmax(220px,1.15fr) 100px minmax(230px,1fr) minmax(410px,1.75fr) minmax(185px,.85fr) max-content;
    grid-template-areas:"employee status first calc remarks actions";
  }
  .attendance-entry-card.is-double{
    grid-template-columns:minmax(215px,1.05fr) 100px minmax(215px,.95fr) minmax(215px,.95fr) minmax(380px,1.55fr) minmax(175px,.8fr) max-content;
    grid-template-areas:"employee status first second calc remarks actions";
  }
}
.attendance-status-field{width:100px;max-width:100px;min-width:100px!important}
.attendance-status-field select,.attendance-status-field .ma-select{width:100px;min-width:100px;max-width:100px}
.attendance-status-field .ma-select-trigger{min-width:0;padding-inline:10px}
.attendance-period-card input[type=time]{font-weight:800;font-variant-numeric:tabular-nums}
@media(min-width:981px) and (max-width:1500px){
  .attendance-entry-card.is-single{grid-template-columns:minmax(190px,1.1fr) 100px minmax(210px,1fr) minmax(150px,.78fr)}
  .attendance-entry-card.is-double{grid-template-columns:minmax(190px,1fr) 100px minmax(190px,.95fr) minmax(190px,.95fr)}
}
@media(max-width:980px){.attendance-status-field{width:auto;max-width:none;min-width:0!important}.attendance-status-field select,.attendance-status-field .ma-select{width:100%;min-width:0;max-width:none}}

.attendance-sheet-page-head{align-items:flex-end}
.attendance-sheet-shell{padding:0;overflow:visible}
.attendance-sheet-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px;border-bottom:1px solid var(--border);background:var(--surface)}
.attendance-sheet-nav{display:flex;align-items:center;gap:5px;flex-wrap:wrap;position:relative}
.attendance-sheet-nav .icon-button{width:34px;height:34px;border-radius:7px;font-size:1rem;font-weight:900}
.attendance-sheet-period{display:grid;gap:2px;text-align:end;min-width:0}.attendance-sheet-period strong{font-size:.86rem;color:var(--text)}.attendance-sheet-period span{font-size:.66rem;color:var(--muted);font-variant-numeric:tabular-nums}
.attendance-period-menu{position:relative}.attendance-period-menu>summary{list-style:none;cursor:pointer;min-width:92px;justify-content:space-between}.attendance-period-menu>summary::-webkit-details-marker{display:none}
.attendance-period-popover{position:absolute;z-index:240;inset-inline-start:0;top:calc(100% + 6px);width:min(330px,calc(100vw - 32px));padding:8px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:0 14px 34px rgba(18,45,82,.18)}
.attendance-period-popover nav{display:grid;gap:2px}.attendance-period-popover nav a{padding:8px 10px;border-radius:7px;color:var(--text);text-decoration:none;font-size:.75rem;font-weight:800}.attendance-period-popover nav a:hover,.attendance-period-popover nav a.active{background:var(--brand-soft);color:var(--brand-dark)}
.attendance-custom-range{display:grid;grid-template-columns:1fr auto 1fr auto;align-items:end;gap:6px;margin-top:7px;padding-top:8px;border-top:1px solid var(--border)}.attendance-custom-range label{display:grid;gap:3px}.attendance-custom-range label span{font-size:.58rem;color:var(--muted);font-weight:800}.attendance-custom-range input{min-width:0;padding:6px;font-size:.68rem}
.attendance-density-toggle.is-sparse{background:var(--brand-soft);color:var(--brand-dark);border-color:color-mix(in srgb,var(--brand) 34%,var(--border))}
.attendance-sheet-kpis{display:grid;grid-template-columns:repeat(10,minmax(90px,1fr));gap:0;border-bottom:1px solid var(--border);background:var(--surface-2)}
.attendance-sheet-kpis>div{display:grid;gap:3px;padding:9px 10px;border-inline-end:1px solid var(--border);min-width:0}.attendance-sheet-kpis span{font-size:.59rem;color:var(--muted);font-weight:800;white-space:nowrap}.attendance-sheet-kpis strong{font-size:.86rem;color:var(--text);font-variant-numeric:tabular-nums}.attendance-sheet-kpis .present strong{color:#087a42}.attendance-sheet-kpis .absent strong{color:#b42318}
.attendance-sheet-grid-scroll{overflow:auto;max-width:100%;max-height:none;scrollbar-gutter:stable;outline:none;background:var(--surface)}.attendance-sheet-grid-scroll:focus-visible{box-shadow:inset 0 0 0 2px var(--brand)}
.attendance-sheet-grid{--att-employee-w:230px;--att-department-w:130px;--att-day-w:38px;--att-cell-h:34px;border-collapse:separate;border-spacing:0;min-width:max-content;width:100%;font-size:.68rem;font-variant-numeric:tabular-nums}
[data-attendance-sheet][data-density="sparse"] .attendance-sheet-grid{--att-employee-w:250px;--att-department-w:145px;--att-day-w:54px;--att-cell-h:50px;font-size:.72rem}
.attendance-sheet-grid th,.attendance-sheet-grid td{height:var(--att-cell-h);padding:4px 5px;border-inline-end:1px solid var(--border);border-bottom:1px solid var(--border);text-align:center;vertical-align:middle;background:var(--surface)}
.attendance-sheet-grid thead th{position:sticky;top:0;z-index:6;background:var(--surface-2);color:var(--text);font-weight:900;white-space:nowrap}
.attendance-sheet-grid thead .attendance-sheet-day-row th{top:31px}.attendance-sheet-grid .attendance-sheet-month-row th{height:31px;background:color-mix(in srgb,var(--brand-soft) 62%,var(--surface));color:var(--brand-dark)}
.attendance-sheet-grid .attendance-sheet-day-row th{min-width:var(--att-day-w);width:var(--att-day-w);padding:3px}.attendance-sheet-day-row th strong,.attendance-sheet-day-row th small{display:block}.attendance-sheet-day-row th strong{font-size:.7rem}.attendance-sheet-day-row th small{margin-top:1px;color:var(--muted);font-size:.55rem;text-transform:capitalize}
.attendance-sheet-grid .att-sticky{position:sticky;z-index:5;background:var(--surface)!important}.attendance-sheet-grid thead .att-sticky{z-index:9;background:var(--surface-2)!important}
.attendance-sheet-grid .att-employee{inset-inline-start:0;min-width:var(--att-employee-w);width:var(--att-employee-w);max-width:var(--att-employee-w);text-align:start}.attendance-sheet-grid .att-department{inset-inline-start:var(--att-employee-w);min-width:var(--att-department-w);width:var(--att-department-w);max-width:var(--att-department-w);text-align:start;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.attendance-sheet-grid tbody tr:hover td{box-shadow:inset 0 0 0 999px color-mix(in srgb,var(--brand-soft) 14%,transparent)}.attendance-sheet-grid tbody tr:hover .att-sticky{box-shadow:inset 0 0 0 999px color-mix(in srgb,var(--brand-soft) 18%,transparent)}
.att-sheet-day{min-width:var(--att-day-w);width:var(--att-day-w);padding:2px!important}.att-sheet-day a{display:grid;place-items:center;width:100%;height:100%;min-height:calc(var(--att-cell-h) - 5px);border-radius:5px;text-decoration:none;color:inherit;font-weight:950}.att-sheet-day a:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}
.att-sheet-day.status-present a{background:#dcf7e6;color:#087a42}.att-sheet-day.status-absent a{background:#ffe2e2;color:#b42318}.att-sheet-day.status-paid-leave a{background:#e2f2ff;color:#1769aa}.att-sheet-day.status-unpaid-leave a{background:#fff0d8;color:#9a5a00}.att-sheet-day.status-holiday a{background:#fff4bd;color:#7d6200}.att-sheet-day.status-off a{background:#e8edf5;color:#4d5c70}.att-sheet-day.status-pending a{background:#e8e6ff;color:#5b47b5}.att-sheet-day.status-missing a{background:#f3e9ff;color:#7a3faf}.att-sheet-day.status-inactive{background:color-mix(in srgb,var(--surface-2) 72%,var(--surface));color:var(--muted)}
.att-summary-head{background:color-mix(in srgb,var(--brand-soft) 48%,var(--surface))!important}.attendance-sheet-grid .att-summary{min-width:72px;max-width:118px;background:var(--surface-2);font-weight:850}.attendance-sheet-grid .att-summary.money{min-width:118px;white-space:nowrap}
.attendance-sheet-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:10px 12px;border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap}.attendance-sheet-footer>p{margin:0;max-width:620px;color:var(--muted);font-size:.67rem;line-height:1.45}
body.theme-dark .att-sheet-day.status-present a{background:#173c2a;color:#9ce3bb}body.theme-dark .att-sheet-day.status-absent a{background:#482522;color:#ffaaa0}body.theme-dark .att-sheet-day.status-paid-leave a{background:#183b55;color:#a9d9ff}body.theme-dark .att-sheet-day.status-unpaid-leave a{background:#44341f;color:#f0c680}body.theme-dark .att-sheet-day.status-holiday a{background:#443d1e;color:#f1dc7d}body.theme-dark .att-sheet-day.status-off a{background:#29313d;color:#c3cedd}body.theme-dark .att-sheet-day.status-pending a{background:#302a59;color:#c9c0ff}body.theme-dark .att-sheet-day.status-missing a{background:#3a2850;color:#ddc3ff}
@media(max-width:1100px){.attendance-sheet-toolbar{align-items:flex-start;flex-direction:column}.attendance-sheet-period{text-align:start}.attendance-sheet-kpis{grid-template-columns:repeat(5,minmax(90px,1fr))}}
@media(max-width:650px){.attendance-sheet-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-custom-range{grid-template-columns:1fr 1fr}.attendance-custom-range>span{display:none}.attendance-custom-range .button{grid-column:1/-1}.attendance-sheet-grid{--att-employee-w:190px;--att-department-w:105px}.attendance-sheet-page-head .page-actions{width:100%}.attendance-sheet-page-head .page-actions .button{flex:1 1 auto}}
.att-sheet-day.status-future a{background:var(--surface-2);color:var(--muted)}

/* v224 - Employee Revenue allocation grids stay in the main page flow.
   Searchable select panels must not create a nested table-scroll viewport. */
[data-employee-revenue] .employee-revenue-grid{
  overflow:visible;
  position:relative;
}
[data-employee-revenue] .employee-revenue-grid table{
  width:100%;
  table-layout:fixed;
}
[data-employee-revenue] .employee-revenue-grid th,
[data-employee-revenue] .employee-revenue-grid td{
  min-width:0;
  overflow:visible;
}
[data-employee-revenue] .employee-revenue-grid .ma-select,
[data-employee-revenue] .employee-revenue-grid input{
  min-width:0;
  width:100%;
}
[data-employee-revenue] .employee-revenue-grid .ma-select.open{z-index:60}
[data-employee-revenue] .employee-revenue-grid-lines th:nth-child(1){width:11%}
[data-employee-revenue] .employee-revenue-grid-lines th:nth-child(2){width:12%}
[data-employee-revenue] .employee-revenue-grid-lines th:nth-child(3){width:10%}
[data-employee-revenue] .employee-revenue-grid-lines th:nth-child(4){width:20%}
[data-employee-revenue] .employee-revenue-grid-lines th:nth-child(5){width:10%}
[data-employee-revenue] .employee-revenue-grid-lines th:nth-child(6){width:10%}
[data-employee-revenue] .employee-revenue-grid-lines th:nth-child(7){width:20%}
[data-employee-revenue] .employee-revenue-grid-lines th:nth-child(8){width:7%}
[data-employee-revenue] .employee-revenue-grid-settlements th:nth-child(1){width:12%}
[data-employee-revenue] .employee-revenue-grid-settlements th:nth-child(2){width:17%}
[data-employee-revenue] .employee-revenue-grid-settlements th:nth-child(3){width:18%}
[data-employee-revenue] .employee-revenue-grid-settlements th:nth-child(4){width:25%}
[data-employee-revenue] .employee-revenue-grid-settlements th:nth-child(5){width:23%}
[data-employee-revenue] .employee-revenue-grid-settlements th:nth-child(6){width:5%}



/* v230 — Global Dark theme pack completeness.
   Keep every authenticated page on the shared dark palette instead of allowing
   legacy white table/form/card declarations to leak through after theme switch. */
body.theme-dark .table-scroll,
body.theme-dark .table-wrap,
body.theme-dark table{background:var(--table-bg);color:var(--text);border-color:var(--border)}
body.theme-dark th,body.theme-dark td{border-color:var(--table-border);color:var(--text)}
body.theme-dark th{background:var(--table-head-bg);color:var(--table-head-text)}
body.theme-dark tbody tr:hover{background:var(--table-hover)}
body.theme-dark .field>span,
body.theme-dark .form-grid label,
body.theme-dark .modern-form-grid label{color:var(--text)}
body.theme-dark input::placeholder,body.theme-dark textarea::placeholder{color:#8797ae;opacity:1}
body.theme-dark .preview-input,body.theme-dark .locked-input input{background:#202b3d!important;color:#aebbd0!important;border-color:var(--border-strong)!important}
body.theme-dark .status-pill{background:#263954;color:#c8d5e8;border-color:#40516b}
body.theme-dark .status-pill.status-pending,body.theme-dark .status-pending{background:#44341f;color:#f0c680;border-color:#67502c}
body.theme-dark .status-pill.status-approved,body.theme-dark .status-approved{background:#173c2a;color:#9ce3bb;border-color:#2b6245}
body.theme-dark .status-pill.status-rejected,body.theme-dark .status-rejected,body.theme-dark .subscription-expired .status-pill{background:#482522;color:#ffaaa0;border-color:#6f3832}
body.theme-dark .group-type-switch,body.theme-dark .view-switch,body.theme-dark .customer-request-view-switch{background:#202b3d;border-color:var(--border)}
body.theme-dark .segment-choice input:checked+span,body.theme-dark .view-switch button.active,body.theme-dark .customer-request-view-switch button.active{background:#2a3b56;color:#dce8ff}
body.theme-dark .option-card,
body.theme-dark .edit-summary-strip>div,
body.theme-dark .verification-summary>div,
body.theme-dark .requirement-card,
body.theme-dark .document-review-card,
body.theme-dark .document-current,
body.theme-dark .default-ledger-group,
body.theme-dark .setup-choice-card,
body.theme-dark .coding-style-card,
body.theme-dark .setup-preview-card,
body.theme-dark .setup-policy-grid>div,
body.theme-dark .coa-policy-banner>div,
body.theme-dark .metric-card,
body.theme-dark .platform-quick-strip,
body.theme-dark .company-count-strip,
body.theme-dark .mini-stat,
body.theme-dark .selected-company-chip,
body.theme-dark .compact-search,
body.theme-dark .tree-card,
body.theme-dark .quick-action-grid a,
body.theme-dark .ma-confirm-dialog{background:var(--surface);color:var(--text);border-color:var(--border)}
body.theme-dark .option-card:hover,body.theme-dark .quick-action-grid a:hover{background:#202f44;border-color:#50617b;color:#dce8ff}
body.theme-dark .setup-choice-card:has(input:checked),body.theme-dark .coding-style-card:has(input:checked){background:#24334a;border-color:var(--brand)}
body.theme-dark .coding-style-card code,body.theme-dark .document-current{color:#c8d5e8}
body.theme-dark .verification-access-banner.allowed{background:#173c2a;border-color:#2b6245;color:#b7e8cc}
body.theme-dark .verification-access-banner.blocked{background:#44341f;border-color:#67502c;color:#f0c680}
body.theme-dark .sticky-action-bar{background:rgba(24,34,53,.96);border-color:var(--border)}
body.theme-dark .danger-soft{background:#3a2026!important;color:#fda4af!important;border-color:#7f3741!important}
body.theme-dark .report-summary-banner{background:linear-gradient(135deg,var(--surface),var(--surface-2));border-color:var(--border)}
body.theme-dark .report-card,body.theme-dark .report-metric-card{background:var(--surface);color:var(--text);border-color:var(--border)}
body.theme-dark .auth-card,
body.theme-dark .wizard-steps,
body.theme-dark .subscription-grid>div,
body.theme-dark .attendance-table-surface{background:var(--surface);color:var(--text);border-color:var(--border)}
body.theme-dark .tree-toggle,body.theme-dark .icon-action,body.theme-dark .shift-action-icon{background:var(--surface);color:#c3cde0;border-color:var(--border)}
body.theme-dark .tree-toggle:hover,body.theme-dark .icon-action:hover,body.theme-dark .shift-action-icon:hover{background:#1d2940;border-color:#516582;color:#fff}
body.theme-dark .tree-line:hover{background:#202f44}
body.theme-dark .wizard-step.active{background:#24334a;color:#9bbcff}
body.theme-dark .subscription-grid span{color:var(--muted)}
body.theme-dark .saved-record-highlight{background:color-mix(in srgb,var(--brand) 12%,var(--surface))}

/* v231 — Complete Theme Pack library + semantic whole-page theme coverage.
   Theme colors are expressed through the same surface/control/table variables so
   pages, forms, grids, lookups, dialogs and navigation follow the selected pack. */
body.theme-classic-purple{--brand:#77506f;--brand-2:#61405b;--brand-dark:#4d3148;--brand-soft:#f2e7f0;--bg:#f7f3f7;--surface:#fffafd;--surface-2:#fbf4fa;--surface-soft:#f8eff6;--surface-muted:#f5eaf2;--surface-subtle:#fcf7fb;--text:#302232;--text-soft:#5a485d;--muted:#7d6a80;--text-muted:#7d6a80;--muted-text:#7d6a80;--border:#eadce7;--border-strong:#d8c3d3;--primary:#77506f;--primary-soft:#f2e7f0;--table-bg:#fffafd;--table-head-bg:#f7edf5;--table-head-text:#69566c;--table-border:#eadce7;--table-hover:#fbf3f9}
body.theme-blue{--brand:#2f62bd;--brand-2:#244f99;--brand-dark:#1c3b73;--brand-soft:#eaf1ff;--bg:#f3f7fd;--surface:#fff;--surface-2:#f7faff;--surface-soft:#f1f6ff;--surface-muted:#edf3fc;--surface-subtle:#f9fbff;--text:#172846;--text-soft:#405675;--muted:#6c7f99;--text-muted:#6c7f99;--muted-text:#6c7f99;--border:#dbe6f5;--border-strong:#c6d6ed;--primary:#2f62bd;--primary-soft:#eaf1ff;--table-bg:#fff;--table-head-bg:#f3f7fd;--table-head-text:#536985;--table-border:#e2eaf5;--table-hover:#f7faff}
body.theme-ocean{--brand:#138aa8;--brand-2:#0c708b;--brand-dark:#09566d;--brand-soft:#e6f8fb;--bg:#f0f9fb;--surface:#fff;--surface-2:#f4fbfc;--surface-soft:#eaf8fa;--surface-muted:#e5f4f7;--surface-subtle:#f8fdfe;--text:#16313c;--text-soft:#3e606b;--muted:#66818a;--text-muted:#66818a;--muted-text:#66818a;--border:#d3e9ee;--border-strong:#b8dce4;--primary:#138aa8;--primary-soft:#e6f8fb;--table-bg:#fff;--table-head-bg:#eef9fb;--table-head-text:#4d6f79;--table-border:#dcecef;--table-hover:#f3fbfc}
body.theme-emerald{--brand:#12855f;--brand-2:#0b6c4d;--brand-dark:#07533b;--brand-soft:#e7f7f0;--bg:#f2f9f6;--surface:#fff;--surface-2:#f6fbf8;--surface-soft:#ecf8f2;--surface-muted:#e6f4ed;--surface-subtle:#f9fcfa;--text:#18352d;--text-soft:#42645a;--muted:#6b857d;--text-muted:#6b857d;--muted-text:#6b857d;--border:#d6e9e1;--border-strong:#bfdbd0;--primary:#12855f;--primary-soft:#e7f7f0;--table-bg:#fff;--table-head-bg:#eff8f4;--table-head-text:#527269;--table-border:#dcebe5;--table-hover:#f5fbf8}
body.theme-mint{--brand:#10966f;--brand-2:#0b795a;--brand-dark:#075e46;--brand-soft:#ddf8ef;--bg:#eefaf6;--surface:#fff;--surface-2:#f3fcf9;--surface-soft:#e5f9f2;--surface-muted:#def4ec;--surface-subtle:#f8fdfa;--text:#16372f;--text-soft:#40695e;--muted:#6a887f;--text-muted:#6a887f;--muted-text:#6a887f;--border:#cfeadf;--border-strong:#b3dbcc;--primary:#10966f;--primary-soft:#ddf8ef;--table-bg:#fff;--table-head-bg:#ebf8f3;--table-head-text:#4f756b;--table-border:#d8ebe4;--table-hover:#f2fbf8}
body.theme-teal{--brand:#176e70;--brand-2:#105a5c;--brand-dark:#0b4648;--brand-soft:#e3f3f2;--bg:#f0f7f7;--surface:#fff;--surface-2:#f5faf9;--surface-soft:#eaf5f4;--surface-muted:#e4f0ef;--surface-subtle:#f8fbfb;--text:#173335;--text-soft:#436263;--muted:#6c8485;--text-muted:#6c8485;--muted-text:#6c8485;--border:#d3e4e3;--border-strong:#b9d4d3;--primary:#176e70;--primary-soft:#e3f3f2;--table-bg:#fff;--table-head-bg:#eef6f5;--table-head-text:#536f70;--table-border:#dce9e8;--table-hover:#f3f9f8}
body.theme-amber{--brand:#b36b07;--brand-2:#925705;--brand-dark:#704205;--brand-soft:#fff1d7;--bg:#fff8ed;--surface:#fffdf8;--surface-2:#fff9ef;--surface-soft:#fff4df;--surface-muted:#faedd4;--surface-subtle:#fffaf3;--text:#3d2b14;--text-soft:#69563d;--muted:#89765d;--text-muted:#89765d;--muted-text:#89765d;--border:#efe0c5;--border-strong:#ddc69e;--primary:#b36b07;--primary-soft:#fff1d7;--table-bg:#fffdf8;--table-head-bg:#fff5e3;--table-head-text:#756145;--table-border:#eee1c9;--table-hover:#fff9ee}
body.theme-coffee{--brand:#934614;--brand-2:#77370e;--brand-dark:#5c2a0a;--brand-soft:#f9e8d9;--bg:#fbf5ed;--surface:#fffdf9;--surface-2:#fcf7f0;--surface-soft:#f7eadc;--surface-muted:#f2e2d0;--surface-subtle:#fdf9f4;--text:#38291e;--text-soft:#645244;--muted:#857365;--text-muted:#857365;--muted-text:#857365;--border:#e9dccf;--border-strong:#d8c4b2;--primary:#934614;--primary-soft:#f9e8d9;--table-bg:#fffdf9;--table-head-bg:#f8eee4;--table-head-text:#705d4d;--table-border:#e9ddd2;--table-hover:#fbf5ef}
body.theme-retail-red{--brand:#c61e2f;--brand-2:#a11625;--brand-dark:#7c111d;--brand-soft:#ffe7ea;--bg:#fff4f5;--surface:#fff;--surface-2:#fff8f9;--surface-soft:#ffedef;--surface-muted:#fbe6e9;--surface-subtle:#fffafb;--text:#3d2025;--text-soft:#6c4a50;--muted:#8b6c72;--text-muted:#8b6c72;--muted-text:#8b6c72;--border:#f0d7db;--border-strong:#dfbdc3;--primary:#c61e2f;--primary-soft:#ffe7ea;--table-bg:#fff;--table-head-bg:#fff0f2;--table-head-text:#77565c;--table-border:#f0dde0;--table-hover:#fff7f8}
body.theme-rose{--brand:#c91d58;--brand-2:#a51649;--brand-dark:#801139;--brand-soft:#ffe8f0;--bg:#fff4f8;--surface:#fff;--surface-2:#fff8fb;--surface-soft:#ffedf4;--surface-muted:#fae6ed;--surface-subtle:#fffafd;--text:#3d202d;--text-soft:#6c4a58;--muted:#8c6c78;--text-muted:#8c6c78;--muted-text:#8c6c78;--border:#efd7e0;--border-strong:#dfbdca;--primary:#c91d58;--primary-soft:#ffe8f0;--table-bg:#fff;--table-head-bg:#fff0f5;--table-head-text:#775661;--table-border:#f0dce3;--table-hover:#fff7fa}
body.theme-sunset{--brand:#cc5b0b;--brand-2:#a44808;--brand-dark:#7e3706;--brand-soft:#ffe9d8;--bg:#fff5ed;--surface:#fffdfa;--surface-2:#fff8f2;--surface-soft:#ffecde;--surface-muted:#f8e4d5;--surface-subtle:#fffaf6;--text:#3d281c;--text-soft:#6b5141;--muted:#8b7262;--text-muted:#8b7262;--muted-text:#8b7262;--border:#efdccc;--border-strong:#dec4ad;--primary:#cc5b0b;--primary-soft:#ffe9d8;--table-bg:#fffdfa;--table-head-bg:#fff0e5;--table-head-text:#765f50;--table-border:#efdfd2;--table-hover:#fff7f1}
body.theme-royal-indigo{--brand:#5142ba;--brand-2:#40349a;--brand-dark:#302774;--brand-soft:#eceaff;--bg:#f5f4fc;--surface:#fff;--surface-2:#faf9ff;--surface-soft:#f0eeff;--surface-muted:#eae8f9;--surface-subtle:#fbfaff;--text:#262448;--text-soft:#514f73;--muted:#767493;--text-muted:#767493;--muted-text:#767493;--border:#dfdef0;--border-strong:#c9c7e2;--primary:#5142ba;--primary-soft:#eceaff;--table-bg:#fff;--table-head-bg:#f3f1fd;--table-head-text:#605e7f;--table-border:#e3e1f0;--table-hover:#f9f8ff}
body.theme-violet{--brand:#6d31d2;--brand-2:#5725ab;--brand-dark:#411b81;--brand-soft:#f0e8ff;--bg:#f7f3fd;--surface:#fff;--surface-2:#fbf8ff;--surface-soft:#f3ebff;--surface-muted:#ede5fa;--surface-subtle:#fcfaff;--text:#302248;--text-soft:#5c4c71;--muted:#7e7092;--text-muted:#7e7092;--muted-text:#7e7092;--border:#e6ddef;--border-strong:#d2c3e3;--primary:#6d31d2;--primary-soft:#f0e8ff;--table-bg:#fff;--table-head-bg:#f6effd;--table-head-text:#6a5b7d;--table-border:#e9e0f0;--table-hover:#fbf7ff}
body.theme-slate{--brand:#465d77;--brand-2:#34485f;--brand-dark:#263649;--brand-soft:#e8eef4;--bg:#f3f5f7;--surface:#fff;--surface-2:#f8f9fb;--surface-soft:#edf1f5;--surface-muted:#e8edf1;--surface-subtle:#fafbfc;--text:#24303d;--text-soft:#4c5b6c;--muted:#718092;--text-muted:#718092;--muted-text:#718092;--border:#dce2e8;--border-strong:#c7d0da;--primary:#465d77;--primary-soft:#e8eef4;--table-bg:#fff;--table-head-bg:#f1f4f7;--table-head-text:#5b6978;--table-border:#e1e6eb;--table-hover:#f7f9fa}
body.theme-glass-sky{--brand:#1594bd;--brand-2:#0f789a;--brand-dark:#0b5c77;--brand-soft:#e2f6fc;--bg:#f0f9fd;--surface:#fbfeff;--surface-2:#f4fbfd;--surface-soft:#e9f7fb;--surface-muted:#e2f1f6;--surface-subtle:#f8fdff;--text:#183440;--text-soft:#436470;--muted:#6c8490;--text-muted:#6c8490;--muted-text:#6c8490;--border:#d2e8ef;--border-strong:#b6d9e4;--primary:#1594bd;--primary-soft:#e2f6fc;--table-bg:#fbfeff;--table-head-bg:#edf8fc;--table-head-text:#52717d;--table-border:#dbeaf0;--table-hover:#f2fbfd}
body.theme-dark{--brand:#8b5cf6;--brand-2:#7447e1;--brand-dark:#28154d;--brand-soft:#2b1c47;--bg:#0e0a19;--surface:#171126;--surface-2:#1e1730;--surface-soft:#241b38;--surface-muted:#241b38;--surface-subtle:#1e1730;--text:#f5f0ff;--text-soft:#d9cef0;--text-muted:#b9acd1;--muted-text:#b9acd1;--muted:#b9acd1;--border:#33284a;--border-strong:#4a3a68;--primary:#8b5cf6;--primary-soft:#2b1c47;--success-soft:#173c2a;--danger-soft:#3a2026;--warning-soft:#44341f;--table-bg:#171126;--table-head-bg:#221933;--table-head-text:#ded3f2;--table-border:#33284a;--table-hover:#281d3c;--shadow:0 8px 28px rgba(0,0,0,.32);--shadow-sm:0 3px 12px rgba(0,0,0,.24)}
body.theme-midnight-neon{--brand:#09b9d1;--brand-2:#0797ab;--brand-dark:#063d4d;--brand-soft:#0d3440;--bg:#06151d;--surface:#0a202a;--surface-2:#0d2833;--surface-soft:#10303c;--surface-muted:#10303c;--surface-subtle:#0d2833;--text:#e8fbff;--text-soft:#c4e8ee;--text-muted:#93c6cf;--muted-text:#93c6cf;--muted:#93c6cf;--border:#1b3d48;--border-strong:#285766;--primary:#09b9d1;--primary-soft:#0d3440;--table-bg:#0a202a;--table-head-bg:#0d2a36;--table-head-text:#c8edf3;--table-border:#1b3d48;--table-hover:#103441;--shadow:0 8px 28px rgba(0,0,0,.32);--shadow-sm:0 3px 12px rgba(0,0,0,.24)}
body.theme-carbon-amber{--brand:#f2a300;--brand-2:#d58e00;--brand-dark:#5f4300;--brand-soft:#33280f;--bg:#111;--surface:#1c1c1c;--surface-2:#242424;--surface-soft:#292929;--surface-muted:#292929;--surface-subtle:#242424;--text:#f6f3eb;--text-soft:#ddd7c8;--text-muted:#b8ad95;--muted-text:#b8ad95;--muted:#b8ad95;--border:#39342a;--border-strong:#554a32;--primary:#f2a300;--primary-soft:#33280f;--table-bg:#1c1c1c;--table-head-bg:#27251f;--table-head-text:#e7dec8;--table-border:#39342a;--table-hover:#2d2920;--shadow:0 8px 28px rgba(0,0,0,.34);--shadow-sm:0 3px 12px rgba(0,0,0,.26)}
body.theme-executive-navy{--brand:#24478c;--brand-2:#1b3974;--brand-dark:#132a56;--brand-soft:#e6edf9;--bg:#f1f4f9;--surface:#fff;--surface-2:#f6f8fc;--surface-soft:#ebf0f8;--surface-muted:#e5ebf4;--surface-subtle:#f9fafd;--text:#1d2c47;--text-soft:#465873;--muted:#6d7f98;--text-muted:#6d7f98;--muted-text:#6d7f98;--border:#d9e1ed;--border-strong:#c2cfdf;--primary:#24478c;--primary-soft:#e6edf9;--table-bg:#fff;--table-head-bg:#eef2f8;--table-head-text:#54657c;--table-border:#dfe5ee;--table-hover:#f5f7fb}
body.theme-lavender-pro{--brand:#7b3fe4;--brand-2:#6130b9;--brand-dark:#49238d;--brand-soft:#f0e8ff;--bg:#f7f3fd;--surface:#fff;--surface-2:#faf8ff;--surface-soft:#f2ecff;--surface-muted:#ece5fa;--surface-subtle:#fcfaff;--text:#30234a;--text-soft:#5c4d72;--muted:#7e7192;--text-muted:#7e7192;--muted-text:#7e7192;--border:#e4dcf0;--border-strong:#d0c1e4;--primary:#7b3fe4;--primary-soft:#f0e8ff;--table-bg:#fff;--table-head-bg:#f5f0fc;--table-head-text:#6b5d7d;--table-border:#e7e0ef;--table-hover:#faf7ff}
body.theme-sage-office{--brand:#3d7a22;--brand-2:#30631a;--brand-dark:#244a13;--brand-soft:#e7f0dd;--bg:#f2f6ed;--surface:#fbfdf8;--surface-2:#f6f9f2;--surface-soft:#ebf2e4;--surface-muted:#e5eddd;--surface-subtle:#f8fbf5;--text:#263421;--text-soft:#4f6149;--muted:#74816e;--text-muted:#74816e;--muted-text:#74816e;--border:#dce6d5;--border-strong:#c7d5bd;--primary:#3d7a22;--primary-soft:#e7f0dd;--table-bg:#fbfdf8;--table-head-bg:#eff5ea;--table-head-text:#5d6e57;--table-border:#e0e8da;--table-hover:#f5f9f1}
body.theme-graphite-silver{--brand:#34495e;--brand-2:#293b4d;--brand-dark:#1d2b39;--brand-soft:#e8edf2;--bg:#f2f4f6;--surface:#fff;--surface-2:#f7f8fa;--surface-soft:#ebeff3;--surface-muted:#e6eaee;--surface-subtle:#fafbfc;--text:#26303a;--text-soft:#4d5965;--muted:#717c88;--text-muted:#717c88;--muted-text:#717c88;--border:#dce1e6;--border-strong:#c7cfd7;--primary:#34495e;--primary-soft:#e8edf2;--table-bg:#fff;--table-head-bg:#f0f3f6;--table-head-text:#5b6671;--table-border:#e1e5e9;--table-hover:#f7f8fa}
body.theme-burgundy-executive{--brand:#9d1239;--brand-2:#7f0e2e;--brand-dark:#600b22;--brand-soft:#f9e6ec;--bg:#fbf2f5;--surface:#fff;--surface-2:#fcf7f9;--surface-soft:#f8ebef;--surface-muted:#f2e4e9;--surface-subtle:#fdf9fa;--text:#38232a;--text-soft:#634c54;--muted:#846e75;--text-muted:#846e75;--muted-text:#846e75;--border:#ead9df;--border-strong:#d8c1c9;--primary:#9d1239;--primary-soft:#f9e6ec;--table-bg:#fff;--table-head-bg:#f8eef1;--table-head-text:#6f5961;--table-border:#eadde1;--table-hover:#fbf6f8}
body.theme-arctic-ice{--brand:#20839a;--brand-2:#196a7d;--brand-dark:#125161;--brand-soft:#e3f5f8;--bg:#f0f8fa;--surface:#fbfeff;--surface-2:#f5fbfc;--surface-soft:#eaf6f8;--surface-muted:#e3f1f4;--surface-subtle:#f8fdfe;--text:#1b343b;--text-soft:#46636b;--muted:#6f858b;--text-muted:#6f858b;--muted-text:#6f858b;--border:#d5e7eb;--border-strong:#bcd9df;--primary:#20839a;--primary-soft:#e3f5f8;--table-bg:#fbfeff;--table-head-bg:#edf7f9;--table-head-text:#567179;--table-border:#dce9ec;--table-hover:#f3fafb}

/* Use semantic variables for every shared application surface. */
body[data-theme-key]{background:var(--bg);color:var(--text)}
body[data-theme-key] .app-shell,body[data-theme-key] .app-workspace,body[data-theme-key] .workspace-content{background:var(--bg);color:var(--text)}
body[data-theme-key] .app-sidebar,body[data-theme-key] .sidebar-nav,body[data-theme-key] .sidebar-footer{background:var(--surface);color:var(--text);border-color:var(--border)}
body[data-theme-key] .nav-item{color:var(--text-soft)}
body[data-theme-key] .nav-item:hover,body[data-theme-key] .nav-tree-node.expanded>.nav-branch-toggle{background:var(--brand-soft)!important;color:var(--brand)!important}
body[data-theme-key] .nav-item.active{background:linear-gradient(90deg,var(--brand-soft),var(--surface-2));color:var(--brand)}
body[data-theme-key] .nav-icon{background:var(--surface-soft);color:var(--text-muted)}
body[data-theme-key] .nav-item.active .nav-icon,body[data-theme-key] .nav-item:hover .nav-icon,body[data-theme-key] .nav-tree-node.expanded>.nav-branch-toggle .nav-icon{background:var(--brand-soft);color:var(--brand)}
body[data-theme-key] .language-switch{background:var(--surface-soft);border-color:var(--border)}
body[data-theme-key] .language-switch a,body[data-theme-key] .language-switch button{color:var(--text-soft)}
body[data-theme-key] .language-switch a.active,body[data-theme-key] .language-switch button.active{background:var(--surface);color:var(--brand)}
body[data-theme-key] .panel,body[data-theme-key] .card,body[data-theme-key] .subscription-card,body[data-theme-key] .detail-card,body[data-theme-key] .menu-dashboard-card,body[data-theme-key] .report-card,body[data-theme-key] .report-metric-card,body[data-theme-key] .auth-card,body[data-theme-key] .tree-card{background:var(--surface);color:var(--text);border-color:var(--border)}
body[data-theme-key] .panel-toolbar,body[data-theme-key] .panel-heading,body[data-theme-key] .tab-buttons{border-color:var(--border)}
body[data-theme-key] input:not([type="checkbox"]):not([type="radio"]),body[data-theme-key] select,body[data-theme-key] textarea,body[data-theme-key] .preview-input{background:var(--surface);color:var(--text);border-color:var(--border-strong)}
body[data-theme-key] input::placeholder,body[data-theme-key] textarea::placeholder{color:var(--text-muted);opacity:.82}
body[data-theme-key] input[readonly],body[data-theme-key] input:disabled,body[data-theme-key] select:disabled,body[data-theme-key] textarea:disabled{background:var(--surface-muted);color:var(--muted)}
body[data-theme-key] input[type="checkbox"],body[data-theme-key] input[type="radio"]{accent-color:var(--brand)}
body[data-theme-key] .button:not(.primary):not(.danger):not(.ghost-inverse):not(.light-button),body[data-theme-key] .btn:not(.primary):not(.danger),body[data-theme-key] button:not(.primary):not(.danger-button):not(.logout-button):not(.sidebar-toggle):not(.theme-picker-trigger):not(.theme-picker-option):not(.nav-branch-toggle){background:var(--surface);color:var(--text-soft);border-color:var(--border-strong)}
body[data-theme-key] .button:not(.primary):not(.danger):hover,body[data-theme-key] .btn:not(.primary):not(.danger):hover{background:var(--surface-2);color:var(--brand);border-color:var(--brand)}
body[data-theme-key] .button.primary,body[data-theme-key] .btn.primary,body[data-theme-key] button.primary,body[data-theme-key] .primary{background:var(--brand);border-color:var(--brand);color:#fff}
body[data-theme-key] .button.primary:hover,body[data-theme-key] .btn.primary:hover,body[data-theme-key] button.primary:hover,body[data-theme-key] .primary:hover{background:var(--brand-2);border-color:var(--brand-2);color:#fff}
body[data-theme-key] .table-scroll,body[data-theme-key] .table-wrap,body[data-theme-key] table{background:var(--table-bg);color:var(--text);border-color:var(--border)}
body[data-theme-key] th,body[data-theme-key] td{border-color:var(--table-border);color:var(--text)}
body[data-theme-key] th{background:var(--table-head-bg);color:var(--table-head-text)}
body[data-theme-key] tbody tr:hover{background:var(--table-hover)}
body[data-theme-key] .ma-select-trigger,body[data-theme-key] .ma-date-trigger{background:var(--surface);color:var(--text);border-color:var(--border-strong)}
body[data-theme-key] .ma-select-trigger:hover,body[data-theme-key] .ma-date-trigger:hover{background:var(--surface-2);border-color:var(--brand)}
body[data-theme-key] .ma-select-panel,body[data-theme-key] .ma-calendar,body[data-theme-key] .ma-lookup-dialog{background:var(--surface);color:var(--text);border-color:var(--border-strong)}
body[data-theme-key] .ma-select-search-wrap,body[data-theme-key] .ma-select-footer,body[data-theme-key] .ma-lookup-tools{background:var(--surface-2);border-color:var(--border)}
body[data-theme-key] .ma-select-search,body[data-theme-key] .ma-lookup-search{background:var(--surface)!important;color:var(--text)!important;border-color:var(--border-strong)!important}
body[data-theme-key] .ma-select-option,body[data-theme-key] .ma-lookup-row,body[data-theme-key] .ma-calendar-day{color:var(--text)}
body[data-theme-key] .ma-select-option:hover,body[data-theme-key] .ma-select-option:focus-visible,body[data-theme-key] .ma-lookup-row:hover,body[data-theme-key] .ma-lookup-row:focus-visible,body[data-theme-key] .ma-calendar-day:hover:not(:disabled){background:var(--brand-soft);color:var(--brand)}
body[data-theme-key] .ma-select-option[aria-selected="true"],body[data-theme-key] .ma-lookup-row[aria-selected="true"]{background:var(--brand-soft);color:var(--brand)}
body[data-theme-key] .ma-select-show-more,body[data-theme-key] .ma-calendar-nav,body[data-theme-key] .ma-lookup-close{background:var(--surface-2);color:var(--brand);border-color:var(--border-strong)}
body[data-theme-key] .ma-lookup-count,body[data-theme-key] .ma-select-show-more-count{background:var(--brand-soft);color:var(--brand)}
body[data-theme-key] .option-card,body[data-theme-key] .edit-summary-strip>div,body[data-theme-key] .verification-summary>div,body[data-theme-key] .requirement-card,body[data-theme-key] .document-review-card,body[data-theme-key] .document-current,body[data-theme-key] .default-ledger-group,body[data-theme-key] .setup-choice-card,body[data-theme-key] .coding-style-card,body[data-theme-key] .setup-preview-card,body[data-theme-key] .setup-policy-grid>div,body[data-theme-key] .coa-policy-banner>div,body[data-theme-key] .metric-card,body[data-theme-key] .platform-quick-strip,body[data-theme-key] .company-count-strip,body[data-theme-key] .mini-stat,body[data-theme-key] .selected-company-chip,body[data-theme-key] .compact-search,body[data-theme-key] .quick-action-grid a,body[data-theme-key] .ma-confirm-dialog,body[data-theme-key] .wizard-steps,body[data-theme-key] .subscription-grid>div,body[data-theme-key] .attendance-table-surface{background:var(--surface);color:var(--text);border-color:var(--border)}
body[data-theme-key] .option-card:hover,body[data-theme-key] .quick-action-grid a:hover,body[data-theme-key] .tree-line:hover{background:var(--surface-2);border-color:var(--border-strong)}
body[data-theme-key] .setup-choice-card:has(input:checked),body[data-theme-key] .coding-style-card:has(input:checked),body[data-theme-key] .wizard-step.active,body[data-theme-key] .employee-form-tabs .tab-btn.active{background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}
body[data-theme-key] .employee-form-tabs .tab-btn:hover:not(:disabled),body[data-theme-key] .employee-form-tabs .tab-btn:focus-visible{background:var(--brand-soft);color:var(--brand)}
body[data-theme-key] .sticky-action-bar{background:color-mix(in srgb,var(--surface) 94%,transparent);border-color:var(--border)}
body[data-theme-key] .report-summary-banner{background:linear-gradient(135deg,var(--surface),var(--surface-2));border-color:var(--border)}
body[data-theme-key] .attendance-sheet-toolbar,body[data-theme-key] .attendance-sheet-footer,body[data-theme-key] .attendance-sheet-grid-scroll{background:var(--surface);border-color:var(--border)}
body[data-theme-key] .attendance-sheet-kpis,body[data-theme-key] .attendance-sheet-grid thead th,body[data-theme-key] .attendance-sheet-grid .att-summary{background:var(--surface-2);border-color:var(--border)}
body[data-theme-key] .attendance-sheet-grid th,body[data-theme-key] .attendance-sheet-grid td{background:var(--surface);border-color:var(--border)}
body[data-theme-key] .field>span,body[data-theme-key] .form-grid label,body[data-theme-key] .modern-form-grid label{color:var(--text)}
body[data-theme-key] .branch-selector-form select{background:color-mix(in srgb,var(--brand-dark) 58%,transparent);color:#fff;border-color:rgba(255,255,255,.22)}
body[data-theme-key] .saved-record-highlight{background:color-mix(in srgb,var(--brand) 10%,var(--surface))}

/* Dark-family contrast refinements. All dark packs also carry the legacy theme-dark
   class so existing specialist controls inherit the mature dark coverage from v230. */
body.theme-mode-dark .workspace-topbar,body.theme-mode-dark .sidebar-brand{box-shadow:none}
body.theme-mode-dark .nav-section-title,body.theme-mode-dark small,body.theme-mode-dark .help,body.theme-mode-dark .page-subtitle{color:var(--muted)}
body.theme-mode-dark .status-pill{background:var(--surface-soft);color:var(--text-soft);border-color:var(--border-strong)}
body.theme-mode-dark .light-button{background:var(--surface)!important;color:var(--brand)!important;border-color:var(--border-strong)!important}
body.theme-mode-dark .ma-calendar-day.outside{color:color-mix(in srgb,var(--muted) 65%,transparent)}
body.theme-mode-dark .theme-picker-menu{background:var(--surface);border-color:var(--border-strong)}
body.theme-mode-dark .theme-picker-option{color:var(--text)}
body.theme-mode-dark .theme-picker-option:hover,body.theme-mode-dark .theme-picker-option:focus-visible,body.theme-mode-dark .theme-picker-option.selected{background:var(--brand-soft);color:var(--brand)}

/* Compact top-bar picker: featured themes first, then one route to the complete pack. */
.theme-picker-menu{width:292px;padding:8px}
.theme-picker-menu-head{display:grid;gap:1px;padding:7px 9px 8px;border-bottom:1px solid var(--border);margin-bottom:5px}
.theme-picker-menu-head strong{font-size:.86rem;color:var(--text)}.theme-picker-menu-head small{font-size:.68rem;color:var(--muted)}
.theme-picker-option{grid-template-columns:34px minmax(0,1fr) 18px;min-height:52px;padding:6px 8px}
.theme-picker-option-copy{display:grid;gap:1px;min-width:0}.theme-picker-option-copy strong{font-size:.78rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis}.theme-picker-option-copy small{font-size:.66rem;line-height:1.2;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.theme-picker-option.selected .theme-picker-option-copy small{color:inherit;opacity:.72}
.theme-swatch{width:30px;height:30px;border-radius:9px;position:relative;overflow:hidden;background:var(--brand);box-shadow:inset 0 0 0 1px rgba(255,255,255,.38)}
.theme-swatch::after{content:"";position:absolute;inset:14px -5px -5px 14px;background:rgba(255,255,255,.28);transform:rotate(-45deg)}
.theme-swatch-blue{background:#2f62bd}.theme-swatch-ocean{background:#138aa8}.theme-swatch-emerald{background:#12855f}.theme-swatch-violet{background:#6d31d2}.theme-swatch-sunset{background:#cc5b0b}.theme-swatch-dark{background:#34205b}.theme-swatch-classic-purple{background:#77506f}.theme-swatch-mint{background:#10966f}.theme-swatch-teal{background:#176e70}.theme-swatch-amber{background:#b36b07}.theme-swatch-coffee{background:#934614}.theme-swatch-retail-red{background:#c61e2f}.theme-swatch-rose{background:#c91d58}.theme-swatch-royal-indigo{background:#5142ba}.theme-swatch-slate{background:#465d77}.theme-swatch-glass-sky{background:#1594bd}.theme-swatch-midnight-neon{background:#09b9d1}.theme-swatch-carbon-amber{background:#f2a300}.theme-swatch-executive-navy{background:#24478c}.theme-swatch-lavender-pro{background:#7b3fe4}.theme-swatch-sage-office{background:#3d7a22}.theme-swatch-graphite-silver{background:#34495e}.theme-swatch-burgundy-executive{background:#9d1239}.theme-swatch-arctic-ice{background:#20839a}
.theme-picker-show-all{display:grid;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:8px;min-height:54px;padding:7px 8px;margin-top:5px;border-top:1px solid var(--border);border-radius:8px;color:var(--text);text-decoration:none}
.theme-picker-show-all:hover,.theme-picker-show-all:focus-visible{background:var(--surface-2);color:var(--brand);outline:0}.theme-picker-show-all>span:nth-child(2){display:grid;gap:1px}.theme-picker-show-all strong{font-size:.78rem}.theme-picker-show-all small{font-size:.66rem;color:var(--muted)}.theme-picker-all-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:var(--brand-soft);color:var(--brand);font-size:1rem}

/* Full Theme Pack page. */
.theme-pack-page-head{align-items:flex-start}.theme-pack-panel{padding:16px}.theme-pack-panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.theme-pack-panel-head h2{margin:0 0 2px}.theme-pack-panel-head p{margin:0;color:var(--muted);font-size:.76rem}
.theme-current-badge{display:grid;gap:1px;min-width:150px;padding:8px 11px;border:1px solid var(--border);border-radius:10px;background:var(--brand-soft);color:var(--brand)}.theme-current-badge small{font-size:.58rem;text-transform:uppercase;letter-spacing:.07em;color:inherit;opacity:.72}.theme-current-badge strong{font-size:.75rem}
.theme-pack-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.theme-pack-card{display:grid;grid-template-rows:auto auto 1fr;align-content:start;gap:8px;min-width:0;padding:10px;border:1px solid var(--border);border-radius:13px;background:var(--surface);box-shadow:var(--shadow-sm);transition:border-color .15s,box-shadow .15s,transform .15s}.theme-pack-card:hover{border-color:color-mix(in srgb,var(--brand) 42%,var(--border));transform:translateY(-1px)}.theme-pack-card.selected{border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 16%,transparent)}
.theme-card-preview{height:58px;display:grid;grid-template-columns:42px 1fr;grid-template-rows:1fr 1fr 10px;gap:5px;padding:7px;border:1px solid color-mix(in srgb,var(--sample-accent) 22%,#d9e2ee);border-radius:10px;background:var(--sample-bg);overflow:hidden}.theme-card-preview-sidebar{grid-row:1/3;border-radius:6px;background:var(--sample-accent)}.theme-card-preview-row{border:1px solid color-mix(in srgb,var(--sample-accent) 18%,#d9e2ee);border-radius:999px;background:var(--sample-surface)}.theme-card-preview-bar{grid-column:1/-1;border-radius:999px;background:linear-gradient(90deg,var(--sample-accent),color-mix(in srgb,var(--sample-accent) 24%,var(--sample-bg)))}.theme-card-preview.dark-preview{border-color:color-mix(in srgb,var(--sample-accent) 34%,#191919)}.theme-card-preview.dark-preview .theme-card-preview-row{border-color:color-mix(in srgb,var(--sample-accent) 35%,#272727)}
.theme-card-copy{min-width:0}.theme-card-title-row{display:flex;align-items:center;gap:6px;min-width:0}.theme-card-title-row strong{font-size:.79rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.theme-card-copy p{min-height:30px;margin:2px 0 0;color:var(--muted);font-size:.66rem;line-height:1.35}.theme-active-pill{padding:2px 5px;border-radius:999px;background:var(--brand);color:#fff;font-size:.52rem;font-weight:850;text-transform:uppercase;letter-spacing:.03em}.theme-card-action{align-self:end;margin:0}.theme-card-action .button{min-height:31px;padding:5px 9px;font-size:.67rem}.theme-card-action .button:disabled{background:var(--brand-soft);color:var(--brand);border-color:color-mix(in srgb,var(--brand) 25%,var(--border));opacity:1}
@media(max-width:1250px){.theme-pack-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.theme-pack-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-picker-menu{width:280px}}
@media(max-width:600px){.theme-pack-panel-head{align-items:flex-start;flex-direction:column}.theme-current-badge{width:100%}.theme-pack-grid{grid-template-columns:1fr}.theme-picker-menu{position:fixed;inset-inline:10px!important;left:10px!important;right:10px!important;top:76px;width:auto;max-height:calc(100vh - 90px);overflow:auto}}
/* v231 semantic overrides for legacy declarations that used !important or light-only fills. */
body[data-theme-key] .preview-input,body[data-theme-key] .locked-input input{background:var(--surface-muted)!important;color:var(--text-soft)!important;border-color:var(--border-strong)!important}
body[data-theme-key] .group-type-switch,body[data-theme-key] .view-switch,body[data-theme-key] .customer-request-view-switch{background:var(--surface-soft);border-color:var(--border)}
body[data-theme-key] .segment-choice span{color:var(--text-muted)}
body[data-theme-key] .segment-choice input:checked+span,body[data-theme-key] .view-switch button.active,body[data-theme-key] .customer-request-view-switch button.active{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}
body[data-theme-key] .choice-icon{background:var(--brand-soft);color:var(--brand)}
body[data-theme-key] .coding-style-card code{background:var(--surface-soft);color:var(--text-soft)}
body[data-theme-key] .icon-action,body[data-theme-key] .tree-toggle,body[data-theme-key] .shift-action-icon{background:var(--surface);color:var(--brand);border-color:var(--border)}
body[data-theme-key] .icon-action:hover,body[data-theme-key] .tree-toggle:hover,body[data-theme-key] .shift-action-icon:hover{background:var(--brand-soft);color:var(--brand);border-color:var(--brand)}
body.theme-mode-dark .danger-soft{background:var(--danger-soft)!important;color:#fda4af!important;border-color:color-mix(in srgb,#fda4af 38%,var(--border))!important}

/* v234 country e-invoicing theme/readability correction.
   Statutory ZATCA / Peppol panels follow the active Theme Pack instead of the
   legacy blue dark fill, so Dark Violet and every other theme remain readable. */
body[data-theme-key] .zatca-bp-box,
body[data-theme-key] .peppol-bp-box{
  background:color-mix(in srgb,var(--surface-2) 92%,var(--brand) 8%);
  color:var(--text);
  border-color:color-mix(in srgb,var(--border-strong) 78%,var(--brand) 22%);
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--surface) 82%,transparent);
}
body[data-theme-key] .zatca-bp-box.is-active,
body[data-theme-key] .peppol-bp-box.is-active{
  background:color-mix(in srgb,var(--surface-2) 84%,var(--brand-soft) 16%);
  border-color:color-mix(in srgb,var(--border-strong) 58%,var(--brand) 42%);
}
body[data-theme-key] .zatca-bp-box legend,
body[data-theme-key] .peppol-bp-box legend{
  color:var(--brand);
}
body[data-theme-key] .zatca-bp-box .help,
body[data-theme-key] .peppol-bp-box .help,
body[data-theme-key] .zatca-bp-box small,
body[data-theme-key] .peppol-bp-box small{
  color:var(--text-soft);
}
body[data-theme-key] .zatca-bp-box label,
body[data-theme-key] .peppol-bp-box label{
  color:var(--text);
}
body[data-theme-key] .zatca-bp-box input:not([type="checkbox"]):not([type="radio"]),
body[data-theme-key] .zatca-bp-box select,
body[data-theme-key] .zatca-bp-box textarea,
body[data-theme-key] .peppol-bp-box input:not([type="checkbox"]):not([type="radio"]),
body[data-theme-key] .peppol-bp-box select,
body[data-theme-key] .peppol-bp-box textarea{
  background:var(--surface);
  color:var(--text);
  border-color:var(--border-strong);
}
body[data-theme-key] .zatca-bp-box input[readonly],
body[data-theme-key] .zatca-bp-box input:disabled,
body[data-theme-key] .peppol-bp-box input[readonly],
body[data-theme-key] .peppol-bp-box input:disabled{
  background:var(--surface-muted);
  color:var(--text-soft);
}
body.theme-mode-dark .zatca-bp-box,
body.theme-mode-dark .peppol-bp-box{
  background:color-mix(in srgb,var(--surface) 90%,var(--brand) 10%);
  border-color:color-mix(in srgb,var(--border-strong) 62%,var(--brand) 38%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
body.theme-mode-dark .zatca-bp-box.is-active,
body.theme-mode-dark .peppol-bp-box.is-active{
  background:color-mix(in srgb,var(--surface) 82%,var(--brand-soft) 18%);
  border-color:color-mix(in srgb,var(--border-strong) 48%,var(--brand) 52%);
}
body.theme-mode-dark .zatca-bp-box legend,
body.theme-mode-dark .peppol-bp-box legend{
  color:color-mix(in srgb,var(--brand) 72%,#fff 28%);
}
body.theme-mode-dark .zatca-bp-box .help,
body.theme-mode-dark .peppol-bp-box .help,
body.theme-mode-dark .zatca-bp-box small,
body.theme-mode-dark .peppol-bp-box small{
  color:var(--text-soft);
}

/* Company Profile statutory sections use the same semantic theme surfaces. */
body[data-theme-key] .company-edit-section[data-company-zatca],
body[data-theme-key] .company-edit-section[data-company-peppol]{
  margin:4px 0 14px;
  padding:15px;
  border:1px solid color-mix(in srgb,var(--border-strong) 78%,var(--brand) 22%);
  border-radius:12px;
  background:color-mix(in srgb,var(--surface-2) 92%,var(--brand) 8%);
  color:var(--text);
}
body[data-theme-key] .company-edit-section[data-company-zatca] .company-edit-section-head h2,
body[data-theme-key] .company-edit-section[data-company-peppol] .company-edit-section-head h2{
  color:var(--text);
}
body[data-theme-key] .company-edit-section[data-company-zatca] .company-edit-section-head p,
body[data-theme-key] .company-edit-section[data-company-peppol] .company-edit-section-head p{
  color:var(--text-soft);
}
body.theme-mode-dark .company-edit-section[data-company-zatca],
body.theme-mode-dark .company-edit-section[data-company-peppol]{
  background:color-mix(in srgb,var(--surface) 90%,var(--brand) 10%);
  border-color:color-mix(in srgb,var(--border-strong) 62%,var(--brand) 38%);
}

/* Accounting Settings Peppol form inherits the active Theme Pack as one readable card. */
body[data-theme-key] .peppol-company-form{
  padding:14px;
  border:1px solid color-mix(in srgb,var(--border-strong) 78%,var(--brand) 22%);
  border-radius:12px;
  background:color-mix(in srgb,var(--surface-2) 94%,var(--brand) 6%);
  color:var(--text);
}
body[data-theme-key] .peppol-company-form label{color:var(--text)}
body[data-theme-key] .peppol-company-form small{color:var(--text-soft)}
body.theme-mode-dark .peppol-company-form{
  background:color-mix(in srgb,var(--surface) 91%,var(--brand) 9%);
  border-color:color-mix(in srgb,var(--border-strong) 62%,var(--brand) 38%);
}
