:root{
  --app-primary:#5b5bd6;--app-primary-rgb:91,91,214;--app-primary-strong:#4444b8;
  --app-secondary:#8b5cf6;--app-success:#0f9f73;--app-warning:#e99718;--app-danger:#dc4c64;--app-info:#2684ff;
  --app-bg:#f4f6fb;--app-surface:#fff;--app-surface-2:#f8f9fd;--app-text:#171a2b;--app-muted:#72768a;
  --app-border:#e7e9f2;--app-border-strong:#d8dbea;--app-sidebar:#17192b;--app-sidebar-2:#20233b;
  --app-shadow-sm:0 4px 16px rgba(27,31,59,.06);--app-shadow:0 12px 35px rgba(27,31,59,.09);--app-shadow-lg:0 24px 70px rgba(17,20,42,.16);
  --app-radius-sm:10px;--app-radius:16px;--app-radius-lg:22px;--sidebar-width:286px;--sidebar-collapsed:88px;--topbar-height:74px;
  --bs-primary:var(--app-primary);--bs-primary-rgb:var(--app-primary-rgb);--bs-link-color:var(--app-primary);--bs-link-hover-color:var(--app-primary-strong);
}
html[data-accent="blue"]{--app-primary:#2474f5;--app-primary-rgb:36,116,245;--app-primary-strong:#165dc9;--app-secondary:#0ea5e9}
html[data-accent="emerald"]{--app-primary:#118b69;--app-primary-rgb:17,139,105;--app-primary-strong:#087052;--app-secondary:#14b8a6}
html[data-accent="rose"]{--app-primary:#d94675;--app-primary-rgb:217,70,117;--app-primary-strong:#b82958;--app-secondary:#f97316}
html[data-accent="indigo"]{--app-primary:#5b5bd6;--app-primary-rgb:91,91,214;--app-primary-strong:#4444b8;--app-secondary:#8b5cf6}
*{box-sizing:border-box}
html{min-height:100%;background:var(--app-bg)}
body{margin:0;min-height:100vh;background:radial-gradient(circle at 90% -10%,rgba(var(--app-primary-rgb),.09),transparent 30%),var(--app-bg);color:var(--app-text);font-family:Vazirmatn,IRANSansX,"Segoe UI",Tahoma,Arial,sans-serif;font-size:14px;line-height:1.7;-webkit-font-smoothing:antialiased}
a{text-decoration:none}.app-icon{width:1.05em;height:1.05em;display:inline-block;vertical-align:-.16em;fill:currentColor;flex:none}.app-shell{min-height:100vh}.app-sidebar{position:fixed;inset:0 0 0 auto;width:var(--sidebar-width);z-index:1045;display:flex;flex-direction:column;padding:18px 14px;background:linear-gradient(165deg,var(--app-sidebar-2),var(--app-sidebar) 58%,#121424);color:#eef0ff;box-shadow:-18px 0 50px rgba(18,20,36,.12);overflow-y:auto;overflow-x:hidden;transition:width .22s ease,transform .22s ease}.app-sidebar:before{content:"";position:absolute;width:190px;height:190px;border-radius:50%;background:rgba(var(--app-primary-rgb),.22);filter:blur(2px);top:-95px;right:-70px;pointer-events:none}.sidebar-header{position:relative;display:flex;align-items:center;gap:8px;padding:2px 2px 17px;border-bottom:1px solid rgba(255,255,255,.07)}.brand{min-width:0;display:flex;align-items:center;gap:12px;color:#fff;flex:1}.brand:hover{color:#fff}.brand-mark{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;flex:none;color:#fff;font-size:26px;font-weight:900;background:linear-gradient(135deg,var(--app-secondary),var(--app-primary));box-shadow:0 12px 28px rgba(var(--app-primary-rgb),.38),inset 0 1px rgba(255,255,255,.28)}.brand-copy{min-width:0;display:grid}.brand-copy b{font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-copy small{color:#aeb3d0;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-collapse{width:34px;height:34px;border:0;border-radius:11px;place-items:center;color:#c7cae2;background:rgba(255,255,255,.07);transition:.2s}.sidebar-collapse:hover{background:rgba(255,255,255,.13);color:#fff}.sidebar-nav{padding:12px 0 20px;display:grid;gap:9px;flex:1}.nav-section{display:grid;gap:4px}.nav-section-label{padding:10px 13px 5px;color:#737995;font-size:10px;font-weight:800;letter-spacing:.04em;white-space:nowrap}.nav-item{position:relative;display:flex;align-items:center;gap:11px;min-height:45px;padding:9px 12px;border-radius:13px;color:#bfc4da;transition:background .18s,color .18s,transform .18s}.nav-item:hover{color:#fff;background:rgba(255,255,255,.07);transform:translateX(-2px)}.nav-item.active{color:#fff;background:linear-gradient(90deg,rgba(var(--app-primary-rgb),.33),rgba(var(--app-primary-rgb),.14));box-shadow:inset -3px 0 0 #a9a9ff,0 8px 22px rgba(0,0,0,.08)}.nav-icon{width:24px;height:24px;display:grid;place-items:center;font-size:18px;flex:none}.nav-text{white-space:nowrap;font-weight:630}.nav-pulse{width:6px;height:6px;border-radius:50%;background:#ffbd66;margin-right:auto;box-shadow:0 0 0 4px rgba(255,189,102,.12)}.sidebar-support{display:flex;align-items:flex-start;gap:10px;margin:2px 2px 12px;padding:12px;border-radius:14px;background:linear-gradient(135deg,rgba(var(--app-primary-rgb),.2),rgba(255,255,255,.055));border:1px solid rgba(255,255,255,.07)}.support-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.08);color:#a9f2dc;flex:none}.sidebar-support div:last-child{min-width:0;display:grid}.sidebar-support b{font-size:11px}.sidebar-support small{font-size:9px;line-height:1.55;color:#9fa5c2}.sidebar-user{border-top:1px solid rgba(255,255,255,.07);padding-top:12px}.sidebar-user-button{width:100%;border:0;color:#fff;background:transparent;display:flex;align-items:center;gap:10px;padding:8px;border-radius:13px;text-align:right}.sidebar-user-button:hover{background:rgba(255,255,255,.06)}.sidebar-user-copy{display:grid;min-width:0}.sidebar-user-copy b,.sidebar-user-copy small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-copy b{font-size:12px}.sidebar-user-copy small{font-size:10px;color:#969cb8}.sidebar-user-button .chevron{margin-right:auto;font-size:10px}.avatar{width:42px;height:42px;border-radius:14px;display:inline-grid;place-items:center;background:linear-gradient(135deg,rgba(var(--app-primary-rgb),.15),rgba(var(--app-primary-rgb),.3));color:var(--app-primary);font-weight:900}.avatar-sm{width:38px;height:38px;border-radius:12px;color:#fff;background:linear-gradient(135deg,var(--app-secondary),var(--app-primary))}.avatar-xs{width:32px;height:32px;border-radius:10px;font-size:11px}.app-main{min-width:0;min-height:100vh;margin-right:var(--sidebar-width);display:flex;flex-direction:column;transition:margin .22s ease}.app-topbar{height:var(--topbar-height);position:sticky;top:0;z-index:1030;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 28px;background:rgba(255,255,255,.87);border-bottom:1px solid rgba(226,229,239,.9);backdrop-filter:blur(18px);box-shadow:0 4px 18px rgba(27,31,59,.035)}.topbar-leading,.topbar-actions{display:flex;align-items:center;gap:9px}.topbar-button{width:42px;height:42px;border:1px solid var(--app-border);border-radius:13px;background:var(--app-surface);color:var(--app-muted);display:grid;place-items:center;font-size:17px;transition:.18s}.topbar-button:hover{color:var(--app-primary);border-color:rgba(var(--app-primary-rgb),.32);background:rgba(var(--app-primary-rgb),.055)}.topbar-button.has-dot{position:relative}.topbar-button.has-dot:after{content:"";position:absolute;top:9px;left:9px;width:7px;height:7px;border-radius:50%;background:#ff7b73;border:2px solid var(--app-surface)}.theme-dark-icon{display:none}.command-trigger{min-width:310px;height:42px;display:flex;align-items:center;gap:10px;padding:0 13px;border:1px solid var(--app-border);border-radius:13px;background:var(--app-surface-2);color:var(--app-muted);text-align:right}.command-trigger span{flex:1}.command-trigger kbd{font-family:inherit;font-size:10px;padding:3px 6px;color:#8a8ea2;background:var(--app-surface);border:1px solid var(--app-border);border-radius:6px;box-shadow:none}.topbar-create{height:42px;display:inline-flex;align-items:center;gap:7px;padding:0 17px;border:0;border-radius:13px;background:linear-gradient(135deg,var(--app-secondary),var(--app-primary));box-shadow:0 8px 20px rgba(var(--app-primary-rgb),.22)}.topbar-create:hover{background:linear-gradient(135deg,var(--app-primary),var(--app-primary-strong));transform:translateY(-1px)}.dropdown-menu{border:1px solid var(--app-border);border-radius:14px;padding:7px;background:var(--app-surface);color:var(--app-text)}.dropdown-item{border-radius:9px;padding:9px 11px;display:flex;align-items:center;gap:9px;font-size:13px}.dropdown-item:hover{background:var(--app-surface-2)}.quick-menu{width:255px;padding:10px}.quick-menu-item{display:flex;align-items:center;gap:11px;padding:10px;border-radius:12px;color:var(--app-text)}.quick-menu-item:hover{background:var(--app-surface-2);color:var(--app-primary)}.quick-menu-item>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:rgba(var(--app-primary-rgb),.09);color:var(--app-primary)}.app-content{width:100%;max-width:1680px;margin:0 auto;padding:28px;flex:1}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:22px}.page-heading h1{font-size:25px;line-height:1.35;margin:4px 0 3px;font-weight:850;letter-spacing:-.02em}.page-heading p{margin:0;color:var(--app-muted);font-size:12px}.breadcrumb-lite{display:flex;align-items:center;gap:6px;color:#9a9daf;font-size:10px}.breadcrumb-lite .app-icon{width:8px}.breadcrumb-lite a{color:var(--app-primary)}.date-chip{height:38px;padding:0 12px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface);color:var(--app-muted);display:flex;align-items:center;gap:7px;box-shadow:var(--app-shadow-sm)}.app-footer{max-width:1680px;width:100%;margin:auto;padding:16px 28px 24px;display:flex;justify-content:space-between;gap:15px;color:#989bad;font-size:10px}.app-alert{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;margin-bottom:18px;border-radius:14px;border:1px solid}.app-alert>span{width:35px;height:35px;border-radius:10px;display:grid;place-items:center;flex:none}.app-alert div{flex:1}.app-alert b{font-size:12px}.app-alert p{margin:2px 0 0;font-size:11px}.app-alert>button{border:0;background:transparent;color:inherit}.app-alert.alert-success{background:#edfbf6;border-color:#c8f0e2;color:#10785a}.app-alert.alert-success>span{background:#d5f5e9}.app-alert.alert-danger{background:#fff1f3;border-color:#f8d4da;color:#b52f49}.app-alert.alert-danger>span{background:#ffdfe4}
/* Shared surfaces */
.panel-card,.surface-card{background:var(--app-surface);border:1px solid var(--app-border);border-radius:var(--app-radius);box-shadow:var(--app-shadow-sm)}.panel-card{padding:20px}.panel-card:hover{border-color:var(--app-border-strong)}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.panel-head h2{margin:0;font-size:16px;font-weight:800}.panel-head h3{margin:0;font-size:14px;font-weight:800}.panel-head p{margin:4px 0 0;color:var(--app-muted);font-size:11px}.panel-head-actions{display:flex;align-items:center;gap:8px}.section-stack{display:grid;gap:18px}.two-col{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(340px,.85fr);gap:18px}.two-col.equal{grid-template-columns:repeat(2,minmax(0,1fr))}.three-col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.stats-grid.cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.stat-card{position:relative;min-height:128px;overflow:hidden;padding:18px;border:1px solid var(--app-border);border-radius:var(--app-radius);background:var(--app-surface);box-shadow:var(--app-shadow-sm);transition:.2s}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--app-shadow)}.stat-card:after{content:"";position:absolute;width:86px;height:86px;border-radius:50%;top:-36px;left:-26px;background:rgba(var(--app-primary-rgb),.075)}.stat-card span{display:block;color:var(--app-muted);font-size:11px}.stat-card strong{display:block;margin-top:5px;font-size:23px;line-height:1.45;font-weight:900}.stat-card small{color:var(--app-muted);font-size:10px}.metric-positive{color:var(--app-success)!important}.metric-negative{color:var(--app-danger)!important}.money{font-weight:800;white-space:nowrap}.content-muted{color:var(--app-muted)}.icon-button{width:36px;height:36px;border:1px solid var(--app-border);border-radius:11px;background:var(--app-surface);display:inline-grid;place-items:center;color:var(--app-muted)}.icon-button:hover{color:var(--app-primary);background:rgba(var(--app-primary-rgb),.06);border-color:rgba(var(--app-primary-rgb),.24)}.btn{border-radius:11px;font-weight:650;font-size:12px;padding:.58rem .9rem}.btn-sm{border-radius:9px;font-size:11px}.btn-primary{--bs-btn-bg:var(--app-primary);--bs-btn-border-color:var(--app-primary);--bs-btn-hover-bg:var(--app-primary-strong);--bs-btn-hover-border-color:var(--app-primary-strong);--bs-btn-active-bg:var(--app-primary-strong);--bs-btn-active-border-color:var(--app-primary-strong)}.btn-soft-primary{color:var(--app-primary);background:rgba(var(--app-primary-rgb),.09);border:1px solid rgba(var(--app-primary-rgb),.12)}.btn-soft-primary:hover{color:#fff;background:var(--app-primary)}.status{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap}.status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.75}.status.success,.status.good{background:#e9f9f3;color:#0b815e}.status.warning,.status.warn{background:#fff7e7;color:#a26608}.status.danger,.status.bad{background:#fff0f2;color:#bd3852}.status.info{background:#edf5ff;color:#256ac5}.status.neutral{background:#f0f1f5;color:#6f7385}.badge-soft{padding:5px 8px;border-radius:8px;font-size:10px;background:var(--app-surface-2);color:var(--app-muted);border:1px solid var(--app-border)}
/* Tables and filters */
.table-shell{border:1px solid var(--app-border);border-radius:14px;overflow:hidden}.table{--bs-table-bg:transparent;--bs-table-color:var(--app-text);--bs-table-border-color:var(--app-border);margin:0}.table>:not(caption)>*>*{padding:.8rem .85rem;vertical-align:middle}.table thead th{position:relative;background:var(--app-surface-2);color:#818598;font-size:10px;font-weight:800;white-space:nowrap;border-bottom-width:1px}.table tbody tr{transition:background .15s}.table-hover>tbody>tr:hover>*{--bs-table-bg-state:rgba(var(--app-primary-rgb),.025)}.table td{font-size:12px}.table small{font-size:10px;color:var(--app-muted)}.table code{font-family:"Segoe UI",monospace;font-size:10px;color:var(--app-primary);background:rgba(var(--app-primary-rgb),.07);padding:3px 6px;border-radius:6px}.row-actions{display:flex;justify-content:flex-end;align-items:center;gap:6px;white-space:nowrap}.entity-cell{display:flex;align-items:center;gap:10px;min-width:170px}.entity-cell-copy{display:grid}.entity-cell-copy b{font-size:12px}.entity-cell-copy small{font-size:10px}.search-bar,.filter-bar{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.filter-bar{padding:12px;border-radius:13px;background:var(--app-surface-2);border:1px solid var(--app-border);margin-bottom:15px}.filter-field{position:relative;min-width:220px;flex:1}.filter-field>.app-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#9a9daf;font-size:13px}.filter-field .form-control{padding-right:36px}.search-bar .form-control,.search-bar .form-select{max-width:280px}.empty-state{text-align:center;padding:45px 20px!important;color:var(--app-muted)}.empty-illustration{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;margin:0 auto 12px;background:rgba(var(--app-primary-rgb),.08);color:var(--app-primary);font-size:25px}.pagination{--bs-pagination-color:var(--app-muted);--bs-pagination-bg:var(--app-surface);--bs-pagination-border-color:var(--app-border);--bs-pagination-active-bg:var(--app-primary);--bs-pagination-active-border-color:var(--app-primary);gap:4px}.page-link{border-radius:8px!important}
/* Forms */
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.form-label{font-size:11px;font-weight:750;color:#4f5367;margin-bottom:6px}.form-control,.form-select{min-height:43px;border-color:var(--app-border-strong);border-radius:11px;padding:.63rem .78rem;background-color:var(--app-surface);color:var(--app-text);font-size:12px;transition:.17s}.form-control::placeholder{color:#b0b3c2}.form-control:focus,.form-select:focus{border-color:rgba(var(--app-primary-rgb),.55);box-shadow:0 0 0 .22rem rgba(var(--app-primary-rgb),.12)}textarea.form-control{min-height:auto}.form-text{font-size:9px;color:var(--app-muted)}.form-check-input:checked{background-color:var(--app-primary);border-color:var(--app-primary)}.form-section{padding:18px;border-radius:15px;background:var(--app-surface);border:1px solid var(--app-border)}.form-section-title{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--app-border)}.form-section-title>span{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:rgba(var(--app-primary-rgb),.09);color:var(--app-primary)}.form-section-title h2,.form-section-title h3{margin:0;font-size:14px;font-weight:800}.form-section-title p{margin:2px 0 0;font-size:10px;color:var(--app-muted)}.form-actions{position:sticky;bottom:12px;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;margin-top:18px;border:1px solid rgba(var(--app-primary-rgb),.14);border-radius:14px;background:rgba(255,255,255,.92);box-shadow:0 15px 38px rgba(27,31,59,.12);backdrop-filter:blur(14px)}.form-actions-main{display:flex;gap:8px}.form-hint{display:flex;align-items:center;gap:7px;color:var(--app-muted);font-size:10px}.input-icon{position:relative}.input-icon>.app-icon{position:absolute;right:13px;top:50%;transform:translateY(-50%);color:#9a9daf;z-index:2}.input-icon>.form-control{padding-right:38px}.switch-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-2)}.switch-card b{font-size:11px}.switch-card small{display:block;font-size:9px;color:var(--app-muted)}
/* Dashboard */
.dashboard-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:23px 25px;margin-bottom:18px;border-radius:var(--app-radius-lg);color:#fff;background:linear-gradient(125deg,#292c57 0%,var(--app-primary) 56%,var(--app-secondary) 100%);box-shadow:0 18px 45px rgba(var(--app-primary-rgb),.2)}.dashboard-hero:before,.dashboard-hero:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.13)}.dashboard-hero:before{width:280px;height:280px;left:-85px;top:-125px}.dashboard-hero:after{width:150px;height:150px;left:80px;bottom:-105px}.dashboard-hero-copy{position:relative;z-index:1}.dashboard-hero h2{font-size:22px;margin:0 0 5px;font-weight:900}.dashboard-hero p{margin:0;color:#e2e3ff;font-size:12px}.hero-actions{position:relative;z-index:1;display:flex;gap:9px}.hero-actions .btn{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.18);color:#fff;backdrop-filter:blur(8px)}.hero-actions .btn:hover{background:#fff;color:var(--app-primary)}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.kpi-card{position:relative;overflow:hidden;min-height:142px;padding:17px;border:1px solid var(--app-border);border-radius:var(--app-radius);background:var(--app-surface);box-shadow:var(--app-shadow-sm);transition:.2s}.kpi-card:hover{transform:translateY(-3px);box-shadow:var(--app-shadow)}.kpi-top{display:flex;justify-content:space-between;align-items:center}.kpi-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;font-size:18px}.kpi-icon.primary{background:rgba(var(--app-primary-rgb),.1);color:var(--app-primary)}.kpi-icon.success{background:#e8f8f2;color:var(--app-success)}.kpi-icon.warning{background:#fff5e4;color:var(--app-warning)}.kpi-icon.danger{background:#fff0f2;color:var(--app-danger)}.kpi-label{color:var(--app-muted);font-size:10px;font-weight:700}.kpi-value{display:block;margin-top:9px;font-size:22px;line-height:1.45;font-weight:900}.kpi-foot{display:flex;align-items:center;gap:6px;margin-top:3px;color:var(--app-muted);font-size:9px}.trend{display:inline-flex;align-items:center;gap:3px;padding:3px 6px;border-radius:999px;font-weight:800}.trend.up{background:#e9f9f3;color:#0b815e}.trend.down{background:#fff0f2;color:#bd3852}.trend.flat{background:#f0f1f5;color:#777b8e}.mini-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0 18px}.mini-metric{display:flex;align-items:center;gap:11px;padding:13px 14px;border:1px solid var(--app-border);border-radius:14px;background:var(--app-surface)}.mini-metric>span{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;color:var(--app-primary);background:rgba(var(--app-primary-rgb),.08)}.mini-metric div{display:grid}.mini-metric small{color:var(--app-muted);font-size:9px}.mini-metric b{font-size:13px}.chart-card{min-height:360px}.chart-toolbar{display:flex;align-items:center;gap:12px;font-size:9px;color:var(--app-muted)}.chart-legend{display:flex;align-items:center;gap:5px}.legend-dot{width:7px;height:7px;border-radius:50%}.legend-dot.sales{background:var(--app-primary)}.legend-dot.received{background:var(--app-success)}.svg-chart{width:100%;height:280px;display:block;overflow:visible}.svg-chart .grid-line{stroke:var(--app-border);stroke-width:1}.svg-chart .sales-line{fill:none;stroke:var(--app-primary);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.svg-chart .received-line{fill:none;stroke:var(--app-success);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.svg-chart .area{fill:rgba(var(--app-primary-rgb),.07)}.svg-chart .point{fill:var(--app-surface);stroke-width:3}.svg-chart .point.sales{stroke:var(--app-primary)}.svg-chart .point.received{stroke:var(--app-success)}.chart-labels{display:grid;grid-template-columns:repeat(6,1fr);gap:3px;color:var(--app-muted);font-size:9px;text-align:center;margin-top:-8px}.donut-wrap{display:grid;place-items:center;position:relative;min-height:210px}.donut{width:174px;height:174px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--app-success) 0 var(--paid-angle),var(--app-warning) var(--paid-angle) var(--partial-angle),var(--app-danger) var(--partial-angle) var(--overdue-angle),#dfe2ec var(--overdue-angle) 360deg)}.donut:after{content:"";width:112px;height:112px;border-radius:50%;background:var(--app-surface);box-shadow:inset 0 0 0 1px var(--app-border)}.donut-center{position:absolute;display:grid;text-align:center;z-index:1}.donut-center b{font-size:22px}.donut-center small{font-size:9px;color:var(--app-muted)}.donut-list{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.donut-list-item{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--app-muted)}.donut-list-item i{width:8px;height:8px;border-radius:50%}.donut-list-item b{margin-right:auto;color:var(--app-text)}.activity-list{display:grid}.activity-item{position:relative;display:flex;gap:11px;padding:10px 0}.activity-item:not(:last-child):after{content:"";position:absolute;right:15px;top:38px;bottom:-5px;width:1px;background:var(--app-border)}.activity-icon{width:31px;height:31px;z-index:1;border-radius:10px;display:grid;place-items:center;background:var(--app-surface-2);color:var(--app-primary);flex:none}.activity-copy{min-width:0;display:grid}.activity-copy b{font-size:10px}.activity-copy small{font-size:9px;color:var(--app-muted)}.stock-list{display:grid;gap:8px}.stock-item{display:flex;align-items:center;gap:10px;padding:10px;border-radius:11px;background:var(--app-surface-2)}.stock-item>span{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;color:var(--app-warning);background:#fff3df}.stock-item div{display:grid;min-width:0}.stock-item b{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stock-item small{font-size:9px;color:var(--app-muted)}.stock-item strong{margin-right:auto;font-size:11px;color:var(--app-danger)}
/* Sales */
.sale-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}.sale-items-card{min-width:0}.sale-item-row{display:grid;grid-template-columns:minmax(220px,2fr) 82px 145px 1fr 1fr 38px;gap:10px;align-items:end;padding:13px;margin-bottom:10px;border:1px solid var(--app-border);border-radius:13px;background:var(--app-surface-2)}.sale-summary{position:sticky;top:calc(var(--topbar-height) + 20px);display:grid;gap:12px}.summary-line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0;color:var(--app-muted);font-size:11px}.summary-line:not(:last-child){border-bottom:1px dashed var(--app-border)}.summary-line b{color:var(--app-text)}.summary-total{padding:14px;border-radius:13px;background:linear-gradient(135deg,rgba(var(--app-primary-rgb),.11),rgba(var(--app-primary-rgb),.04));border:1px solid rgba(var(--app-primary-rgb),.14)}.summary-total strong{font-size:20px;color:var(--app-primary)}
/* Auth */
.auth-body{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 20%,rgba(var(--app-primary-rgb),.18),transparent 30%),radial-gradient(circle at 90% 80%,rgba(139,92,246,.14),transparent 28%),#f6f7fb}.auth-shell{width:min(980px,100%)}.login-shell{display:grid;grid-template-columns:1.15fr .85fr;min-height:590px;overflow:hidden;border:1px solid rgba(255,255,255,.65);border-radius:28px;background:#fff;box-shadow:0 30px 90px rgba(34,38,71,.18)}.login-showcase{position:relative;overflow:hidden;padding:44px;color:#fff;background:linear-gradient(145deg,#242746 0%,var(--app-primary) 62%,var(--app-secondary) 100%)}.login-showcase:before{content:"";position:absolute;width:350px;height:350px;border:1px solid rgba(255,255,255,.13);border-radius:50%;left:-145px;bottom:-180px}.login-showcase:after{content:"";position:absolute;width:220px;height:220px;border:1px solid rgba(255,255,255,.12);border-radius:50%;right:-100px;top:-90px}.login-brand{position:relative;z-index:1;display:flex;align-items:center;gap:12px}.login-brand .brand-mark{background:rgba(255,255,255,.16);box-shadow:none;backdrop-filter:blur(8px)}.login-showcase-copy{position:relative;z-index:1;margin-top:90px}.login-showcase-copy h2{max-width:420px;font-size:30px;line-height:1.6;font-weight:900}.login-showcase-copy p{max-width:430px;color:#e6e7ff;font-size:12px}.login-features{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:35px}.login-feature{display:flex;align-items:center;gap:8px;padding:10px;border-radius:12px;background:rgba(255,255,255,.1);font-size:10px;backdrop-filter:blur(8px)}.login-panel{display:flex;flex-direction:column;justify-content:center;padding:50px}.login-panel h1{font-size:24px;font-weight:900;margin:0 0 5px}.login-panel>p{font-size:11px;color:var(--app-muted);margin-bottom:25px}.login-panel .form-control{min-height:47px}.login-security{display:flex;align-items:center;gap:8px;margin-top:18px;color:var(--app-muted);font-size:9px}.login-security>span{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#eaf8f3;color:var(--app-success)}
/* Command palette */
/* Dark mode */
html[data-bs-theme="dark"]{--app-bg:#10121c;--app-surface:#181b28;--app-surface-2:#202330;--app-text:#eef0f7;--app-muted:#9da2b5;--app-border:#2d3140;--app-border-strong:#3a3e50;--app-shadow-sm:0 4px 18px rgba(0,0,0,.12);--app-shadow:0 14px 38px rgba(0,0,0,.2)}html[data-bs-theme="dark"] body{background:radial-gradient(circle at 90% -10%,rgba(var(--app-primary-rgb),.13),transparent 28%),var(--app-bg)}html[data-bs-theme="dark"] .app-topbar{background:rgba(24,27,40,.88);border-color:var(--app-border)}html[data-bs-theme="dark"] .theme-light-icon{display:none}html[data-bs-theme="dark"] .theme-dark-icon{display:inline-flex}html[data-bs-theme="dark"] .form-label{color:#c8cada}html[data-bs-theme="dark"] .form-actions{background:rgba(24,27,40,.92)}html[data-bs-theme="dark"] .app-alert.alert-success{background:#122b26;border-color:#234a40;color:#7dd3b6}html[data-bs-theme="dark"] .app-alert.alert-danger{background:#321b21;border-color:#5a2b37;color:#ff9daf}html[data-bs-theme="dark"] .login-shell{background:var(--app-surface);border-color:var(--app-border)}html[data-bs-theme="dark"] .auth-body{background:radial-gradient(circle at 15% 20%,rgba(var(--app-primary-rgb),.2),transparent 30%),#10121c}
/* Collapsed sidebar */
body.sidebar-collapsed .app-sidebar{width:var(--sidebar-collapsed);padding-inline:13px}body.sidebar-collapsed .app-main{margin-right:var(--sidebar-collapsed)}body.sidebar-collapsed .brand-copy,body.sidebar-collapsed .nav-text,body.sidebar-collapsed .nav-section-label,body.sidebar-collapsed .nav-pulse,body.sidebar-collapsed .sidebar-support>div:last-child,body.sidebar-collapsed .sidebar-user-copy,body.sidebar-collapsed .sidebar-user-button .chevron{display:none}body.sidebar-collapsed .sidebar-header{justify-content:center}body.sidebar-collapsed .brand{flex:0}body.sidebar-collapsed .sidebar-collapse{position:absolute;left:-12px;background:var(--app-primary);color:#fff}body.sidebar-collapsed .sidebar-collapse .app-icon{transform:rotate(180deg)}body.sidebar-collapsed .nav-item{justify-content:center;padding-inline:10px}body.sidebar-collapsed .sidebar-support{justify-content:center;padding:10px}body.sidebar-collapsed .sidebar-user-button{justify-content:center}
/* Responsive */
.sidebar-backdrop{display:none}@media(max-width:1399px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid.cols-5{grid-template-columns:repeat(3,minmax(0,1fr))}.sale-layout{grid-template-columns:1fr}.sale-summary{position:static}.sale-item-row{grid-template-columns:minmax(200px,2fr) 80px 140px 1fr 38px}.sale-item-row>div:nth-of-type(5){grid-column:1/2}}
@media(max-width:1199px){.app-sidebar{transform:translateX(105%);width:var(--sidebar-width)}.app-sidebar.open{transform:translateX(0)}.sidebar-backdrop.show{display:block;position:fixed;inset:0;z-index:1040;background:rgba(12,14,28,.58);backdrop-filter:blur(2px)}.app-main,body.sidebar-collapsed .app-main{margin-right:0}.command-trigger{min-width:250px}.two-col,.two-col.equal{grid-template-columns:1fr}.mini-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767px){body{font-size:13px}.app-topbar{height:64px;padding:0 12px}.topbar-create span,.command-trigger{display:none}.app-content{padding:16px 12px}.page-heading{align-items:flex-start;margin-bottom:17px}.page-heading h1{font-size:21px}.page-heading-actions{display:none}.dashboard-hero{display:block;padding:19px}.dashboard-hero h2{font-size:18px}.hero-actions{margin-top:14px;flex-wrap:wrap}.kpi-grid,.stats-grid,.stats-grid.cols-5,.mini-metrics,.three-col{grid-template-columns:1fr}.form-grid,.form-grid.cols-3{grid-template-columns:1fr}.span-2,.span-3{grid-column:auto}.panel-card{padding:14px}.panel-head{align-items:flex-start}.filter-bar>*{width:100%;max-width:none!important}.filter-field{min-width:100%}.search-bar .form-control,.search-bar .form-select{max-width:none;width:100%}.form-actions{bottom:8px;align-items:stretch;flex-direction:column}.form-actions-main{display:grid;grid-template-columns:1fr 1fr}.form-actions-main .btn{width:100%}.form-hint{display:none}.sale-item-row{grid-template-columns:1fr}.sale-item-row>div:nth-of-type(5){grid-column:auto}.login-shell{grid-template-columns:1fr;min-height:auto}.login-showcase{display:none}.login-panel{padding:30px 22px}.app-footer{padding:14px 15px;display:grid}.table-shell{border:0;border-radius:0}.table-responsive{border:1px solid var(--app-border);border-radius:12px}.chart-labels{font-size:8px}.command-footer{display:none}}
.collection-form{display:grid;grid-template-columns:130px 115px auto;gap:6px;align-items:center}.collection-form .form-control,.collection-form .form-select{min-height:36px;padding:.4rem .55rem}.check-status-form{display:flex;align-items:center;gap:6px;min-width:190px}.check-status-form .form-select{min-height:36px;padding:.4rem .55rem}.due-cell{display:grid;gap:3px}.due-cell small{font-size:9px}.side-form{position:sticky;top:calc(var(--topbar-height) + 18px)}@media(max-width:767px){.collection-form{grid-template-columns:1fr}.check-status-form{min-width:160px}.side-form{position:static}}
.accent-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.accent-option{position:relative}.accent-option input{position:absolute;opacity:0;pointer-events:none}.accent-option label{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid var(--app-border);border-radius:12px;cursor:pointer;background:var(--app-surface-2);font-size:10px;font-weight:700}.accent-option label:before{content:"";width:20px;height:20px;border-radius:7px;background:var(--swatch)}.accent-option input:checked+label{border-color:var(--swatch);box-shadow:0 0 0 3px color-mix(in srgb,var(--swatch) 15%,transparent);background:var(--app-surface)}@media(max-width:767px){.accent-picker{grid-template-columns:repeat(2,1fr)}}
.accent-indigo{--swatch:#5b5bd6}.accent-blue{--swatch:#2474f5}.accent-emerald{--swatch:#118b69}.accent-rose{--swatch:#d94675}
@media print{.app-sidebar,.app-topbar,.page-heading,.app-footer,.hero-actions,.form-actions,.btn,.icon-button{display:none!important}.app-main{margin:0!important}.app-content{max-width:none;padding:0}.dashboard-hero{background:#fff!important;color:#111!important;box-shadow:none;border:1px solid #ddd}.dashboard-hero p{color:#555!important}.panel-card,.kpi-card{box-shadow:none;break-inside:avoid}.table{font-size:10px}body{background:#fff}}

/* Branch overview: compact, horizontally scrollable and backed by one aggregate query. */
.branch-glance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(285px,1fr));gap:13px}.branch-glance-card{padding:15px;border:1px solid var(--app-border);border-radius:15px;background:var(--app-surface-2)}.branch-glance-card.is-current{border-color:rgba(var(--app-primary-rgb),.4);box-shadow:inset 0 0 0 1px rgba(var(--app-primary-rgb),.08)}.branch-glance-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}.branch-glance-card>header div{display:grid}.branch-glance-card>header b{font-size:13px}.branch-glance-card>header small,.branch-glance-primary small{font-size:9px;color:var(--app-muted)}.branch-glance-primary{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;background:var(--app-surface)}.branch-glance-primary>span{width:35px;height:35px;display:grid;place-items:center;border-radius:10px;color:var(--app-primary);background:rgba(var(--app-primary-rgb),.1)}.branch-glance-primary>div{display:grid}.branch-glance-primary strong{font-size:15px}.branch-glance-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:11px 0 0;background:var(--app-border);border:1px solid var(--app-border);border-radius:11px;overflow:hidden}.branch-glance-card dl div{display:grid;padding:8px 9px;background:var(--app-surface)}.branch-glance-card dt{font-size:8px;color:var(--app-muted);font-weight:600}.branch-glance-card dd{margin:2px 0 0;font-size:11px;font-weight:850}.branch-attention{color:var(--app-warning)!important}.branch-attention:after{content:" نیازمند بررسی";font-size:8px;font-weight:700}
@media(max-width:767px){.branch-glance{padding-left:0;padding-right:0}.branch-glance>.panel-head{padding:0 14px}.branch-glance-grid{display:flex;overflow-x:auto;padding:0 14px 4px}.branch-glance-card{flex:0 0 285px}}

/* Branch drill-down report. Loaded only when the eye action is opened. */
.branch-glance-actions{display:flex;align-items:center;gap:7px}.branch-glance-open{width:32px;height:32px;color:var(--app-primary);background:rgba(var(--app-primary-rgb),.08)}.branch-report-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;margin-bottom:15px;border-radius:var(--app-radius-lg);color:#fff;background:linear-gradient(125deg,#242750,var(--app-primary) 58%,var(--app-secondary));box-shadow:0 18px 42px rgba(var(--app-primary-rgb),.2)}.branch-report-hero:after{content:"";position:absolute;width:210px;height:210px;left:-60px;top:-100px;border:1px solid rgba(255,255,255,.14);border-radius:50%}.branch-report-hero>div{position:relative;z-index:1}.branch-report-hero h2{margin:3px 0 4px;font-size:22px;font-weight:900}.branch-report-hero p{margin:0;color:#e5e7ff;font-size:11px}.branch-report-kpis{grid-template-columns:repeat(6,minmax(0,1fr));overflow-x:auto}.branch-report-kpis .kpi-card{min-width:175px}.branch-report-score-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:13px}.branch-report-score-grid article{display:grid;gap:4px;padding:13px 14px;border:1px solid var(--app-border);border-radius:14px;background:var(--app-surface)}.branch-report-score-grid span,.branch-report-score-grid small{font-size:9px;color:var(--app-muted)}.branch-report-score-grid strong{font-size:15px}.branch-report-score-grid progress{width:100%;height:6px;accent-color:var(--app-success)}.branch-report-score-grid progress.danger{accent-color:var(--app-danger)}.branch-report-alerts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.branch-report-alerts>a{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--app-border);border-radius:13px;color:var(--app-text);background:var(--app-surface-2)}.branch-report-alerts>a>svg{width:21px;height:21px}.branch-report-alerts>a>span{display:grid}.branch-report-alerts b{font-size:10px}.branch-report-alerts small{font-size:8px;color:var(--app-muted)}.branch-report-alerts .danger{border-color:#f4b7c2;color:var(--app-danger);background:#fff7f8}.branch-report-alerts .warning{border-color:#f1d397;color:#996008;background:#fffaf0}.branch-report-alerts .success{border-color:#a8dfcc;color:var(--app-success);background:#f5fcf9}.branch-period-chart{display:grid;gap:10px}.branch-period-chart article{display:grid;gap:4px;padding:9px 10px;border-radius:11px;background:var(--app-surface-2)}.branch-period-chart article>b{font-size:9px}.branch-period-chart article>div{display:grid;grid-template-columns:38px minmax(80px,1fr) 120px;align-items:center;gap:7px;font-size:8px}.branch-period-chart article i{height:7px;overflow:hidden;border-radius:999px;background:var(--app-border)}.branch-period-chart article em{display:block;height:100%;min-width:2px;border-radius:inherit}.branch-period-chart .sales{background:var(--app-primary)}.branch-period-chart .received{background:var(--app-success)}.branch-period-chart strong{text-align:left;font-size:8px}.branch-status-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.branch-status-groups>div{display:grid;gap:5px;padding:11px;border:1px solid var(--app-border);border-radius:12px}.branch-status-groups>div>b{font-size:10px;color:var(--app-primary)}.branch-status-groups span{display:flex;justify-content:space-between;color:var(--app-muted);font-size:8px}.branch-status-groups strong{color:var(--app-text)}.payment-method-summary{margin-top:12px}.payment-method-summary h3{font-size:11px}.payment-method-summary>span{display:grid;grid-template-columns:1fr auto auto;gap:10px;padding:7px 0;border-bottom:1px solid var(--app-border);font-size:9px}.payment-method-summary small{color:var(--app-muted)}.branch-ranked-list,.branch-user-list{display:grid;gap:7px}.branch-ranked-list>a,.branch-user-list>article{display:flex;align-items:center;gap:9px;padding:9px 10px;border:1px solid var(--app-border);border-radius:11px;color:var(--app-text);background:var(--app-surface-2)}.branch-ranked-list>a:hover{border-color:rgba(var(--app-primary-rgb),.35)}.branch-ranked-list i{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;color:var(--app-primary);background:rgba(var(--app-primary-rgb),.09);font-style:normal}.branch-ranked-list span,.branch-user-list div{display:grid;min-width:0}.branch-ranked-list b,.branch-user-list b{font-size:9px}.branch-ranked-list small,.branch-user-list small{font-size:8px;color:var(--app-muted)}.branch-ranked-list strong{margin-right:auto;font-size:9px}.branch-user-list .status{margin-right:auto}
@media(max-width:1199px){.branch-report-kpis{display:flex}.branch-report-score-grid,.branch-report-alerts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.branch-report-hero{align-items:flex-start;flex-direction:column;padding:18px}.branch-report-hero .hero-actions{width:100%;flex-wrap:wrap}.branch-report-score-grid,.branch-report-alerts{grid-template-columns:1fr}.branch-period-chart article>div{grid-template-columns:34px minmax(70px,1fr) 94px}.branch-status-groups{grid-template-columns:1fr}}
/* Commercial platform components v0.4 */
.branch-trigger{height:39px;display:flex;align-items:center;gap:7px;padding:0 11px;border:1px solid var(--app-border);border-radius:11px;background:var(--app-surface);color:var(--app-text);font-size:10px;font-weight:800}.branch-trigger .app-icon:first-child{color:var(--app-primary)}.branch-trigger .app-icon:last-child{width:8px;color:var(--app-muted)}.branch-menu{min-width:230px;padding:7px}.branch-menu form{margin:0}.branch-menu .dropdown-item{display:flex;align-items:center;gap:8px;border-radius:9px;font-size:10px}.branch-menu .dropdown-item.active{background:rgba(var(--app-primary-rgb),.1);color:var(--app-primary)}
.notification-button{position:relative}.notification-button>span{position:absolute;top:-4px;left:-5px;min-width:18px;height:18px;padding:0 4px;display:grid;place-items:center;border:2px solid var(--app-surface);border-radius:20px;background:var(--app-danger);color:#fff;font-size:8px;font-weight:900}.notification-menu{width:min(390px,calc(100vw - 24px));padding:0;overflow:hidden;border-radius:16px}.notification-head{display:flex;justify-content:space-between;align-items:center;padding:14px 15px;border-bottom:1px solid var(--app-border)}.notification-head>div{display:grid}.notification-head b{font-size:11px}.notification-head small{font-size:9px;color:var(--app-muted)}.notification-head form,.notification-head button{margin:0}.notification-head button{border:0;background:transparent;color:var(--app-primary);font-size:9px;font-weight:800}.notification-list{max-height:430px;overflow:auto}.notification-item{margin:0;border-bottom:1px solid var(--app-border)}.notification-item:last-child{border:0}.notification-item>button{width:100%;border:0;background:transparent;color:var(--app-text);display:flex;gap:9px;text-align:right;padding:12px 14px}.notification-item>button>span:last-child{display:grid;flex:1;min-width:0}.notification-item b{font-size:10px}.notification-item small{font-size:9px;color:var(--app-muted);white-space:normal;line-height:1.8}.notification-item time{font-size:8px;color:var(--app-muted);margin-top:4px}.notification-item.unread{background:rgba(var(--app-primary-rgb),.045)}.notification-dot{width:8px;height:8px;margin-top:5px;border-radius:50%;background:#b9bdc9}.notification-item.info .notification-dot{background:var(--app-primary)}.notification-item.success .notification-dot{background:var(--app-success)}.notification-item.warning .notification-dot{background:var(--app-warning)}.notification-item.danger .notification-dot{background:var(--app-danger)}.notification-empty{padding:35px;display:grid;place-items:center;gap:9px;color:var(--app-muted);font-size:10px}.notification-empty .app-icon{width:24px}
.subscription-banner{display:flex;align-items:center;gap:12px;padding:12px 14px;margin-bottom:14px;border-radius:13px;border:1px solid}.subscription-banner>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px}.subscription-banner>div{flex:1}.subscription-banner b{font-size:11px}.subscription-banner p{margin:2px 0 0;font-size:9px}.subscription-banner a{padding:7px 10px;border-radius:9px;font-size:9px;font-weight:800}.subscription-banner.warning{background:#fff8e8;border-color:#f2d48e;color:#7e5b09}.subscription-banner.warning>span,.subscription-banner.warning a{background:#ffe8ae;color:#6a4a00}.subscription-banner.danger{background:#fff0f3;border-color:#f2b8c5;color:#8c263d}.subscription-banner.danger>span,.subscription-banner.danger a{background:#ffd8e1;color:#8c263d}
.commercial-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;border-radius:22px;background:linear-gradient(135deg,#232641 0%,var(--app-primary) 62%,var(--app-secondary) 120%);color:#fff;box-shadow:var(--app-shadow-lg)}.commercial-hero:before,.commercial-hero:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.1);border-radius:50%}.commercial-hero:before{width:260px;height:260px;left:-95px;bottom:-170px}.commercial-hero:after{width:160px;height:160px;right:28%;top:-110px}.commercial-hero>div,.commercial-hero>form,.commercial-hero>a{position:relative;z-index:1}.commercial-hero h2{margin:5px 0 6px;font-size:23px;font-weight:900}.commercial-hero p{max-width:650px;margin:0;color:#e7e9ff;font-size:10px}.commercial-hero.compact{padding:21px 24px}.commercial-hero.compact h2{font-size:19px}.eyebrow{display:inline-flex;align-items:center;gap:6px;font-size:9px;font-weight:800;color:#dfe1ff}.eyebrow .app-icon{width:11px}
.health-ring{position:relative;width:125px;height:125px;display:grid;place-items:center;flex:0 0 auto}.health-ring svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.health-ring circle{fill:none;stroke-width:9}.ring-track{stroke:rgba(255,255,255,.15)}.ring-value{stroke:#fff;stroke-linecap:round}.health-ring strong{margin-top:-5px;font-size:24px}.health-ring small{position:absolute;bottom:27px;font-size:8px;color:#e5e7ff}.limit-row{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-bottom:1px solid var(--app-border);font-size:10px}.limit-row:last-child{border:0}.limit-row strong{font-size:11px}.code-input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;line-height:1.8;resize:vertical}
.callout{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid;border-radius:13px}.callout>svg{width:15px;flex:0 0 auto;margin-top:2px}.callout>div{display:grid}.callout b{font-size:10px}.callout p{margin:2px 0 0;font-size:9px;line-height:1.8}.callout.info{background:rgba(var(--app-primary-rgb),.06);border-color:rgba(var(--app-primary-rgb),.18);color:var(--app-primary)}.callout.warning{background:#fff8e8;border-color:#f3d79a;color:#75550d}.callout.danger{background:#fff0f3;border-color:#f1bdc8;color:#8a2940}.health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.health-item{display:flex;align-items:flex-start;gap:9px;padding:12px;border:1px solid var(--app-border);border-radius:13px;background:var(--app-surface-2)}.health-item>span{width:29px;height:29px;display:grid;place-items:center;border-radius:9px}.health-item.ok>span{background:#e9f8f3;color:var(--app-success)}.health-item.fail>span{background:#fff0f3;color:var(--app-danger)}.health-item>div{display:grid}.health-item b{font-size:10px}.health-item small{font-size:8px;color:var(--app-muted);line-height:1.7}
.app-tabs{gap:7px;padding:6px;border:1px solid var(--app-border);border-radius:14px;background:var(--app-surface)}.app-tabs .nav-link{border-radius:10px;color:var(--app-muted);font-size:10px;font-weight:800;padding:8px 15px}.app-tabs .nav-link.active{background:var(--app-primary);color:#fff}.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.account-card{display:flex;align-items:center;gap:10px;padding:14px;border:1px solid var(--app-border);border-radius:14px;background:var(--app-surface-2)}.account-card>span:first-child{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:rgba(var(--app-primary-rgb),.09);color:var(--app-primary)}.account-card>div{display:grid;flex:1}.account-card b{font-size:10px}.account-card small{font-size:8px;color:var(--app-muted)}.account-card strong{margin-top:5px;font-size:14px}.account-card>.status{align-self:flex-start}
.audit-meta{display:flex;flex-wrap:wrap;gap:5px}.audit-meta code{padding:3px 6px;border-radius:6px;background:var(--app-surface-2);color:var(--app-muted);font-size:8px}.recovery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.recovery-grid code{padding:10px;border:1px dashed var(--app-border-strong);border-radius:10px;text-align:center;font-size:10px}.setup-secret{display:block;padding:11px;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface-2);font-size:11px;word-break:break-all;text-align:center}
.receipt-sheet{max-width:760px;margin:auto;padding:28px;border:1px solid var(--app-border);border-radius:18px;background:var(--app-surface);box-shadow:var(--app-shadow)}.receipt-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px dashed var(--app-border-strong)}.receipt-title{display:flex;align-items:center;gap:12px}.receipt-title>span{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:var(--app-primary);color:#fff}.receipt-title h2{margin:0;font-size:18px;font-weight:900}.receipt-title p{margin:3px 0 0;color:var(--app-muted);font-size:9px}.receipt-number{text-align:left}.receipt-number small{display:block;color:var(--app-muted);font-size:8px}.receipt-number code{font-size:11px}.receipt-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;margin-top:18px;border:1px solid var(--app-border);border-radius:13px;overflow:hidden}.receipt-grid>div{padding:12px;border-bottom:1px solid var(--app-border)}.receipt-grid>div:nth-child(odd){border-left:1px solid var(--app-border)}.receipt-grid small{display:block;color:var(--app-muted);font-size:8px}.receipt-grid b{font-size:10px}.receipt-amount{margin:18px 0;padding:20px;text-align:center;border-radius:15px;background:linear-gradient(135deg,rgba(var(--app-primary-rgb),.08),rgba(var(--app-primary-rgb),.02))}.receipt-amount small{display:block;color:var(--app-muted);font-size:9px}.receipt-amount strong{font-size:26px;color:var(--app-primary)}.receipt-note{padding:12px;border-radius:11px;background:var(--app-surface-2);font-size:9px;color:var(--app-muted)}
html[data-bs-theme="dark"] .callout.warning,html[data-bs-theme="dark"] .subscription-banner.warning{background:#302713;border-color:#5b4821;color:#f0cd76}html[data-bs-theme="dark"] .callout.danger,html[data-bs-theme="dark"] .subscription-banner.danger{background:#341b23;border-color:#613040;color:#ff9db3}html[data-bs-theme="dark"] .health-item.ok>span{background:#15332b}html[data-bs-theme="dark"] .health-item.fail>span{background:#391d25}
@media(max-width:991px){.health-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-grid{grid-template-columns:1fr}}@media(max-width:767px){.commercial-hero{align-items:flex-start;flex-direction:column;padding:20px}.commercial-hero h2{font-size:18px}.health-ring{width:105px;height:105px}.health-grid{grid-template-columns:1fr}.subscription-banner{align-items:flex-start;flex-wrap:wrap}.subscription-banner a{margin-right:46px}.branch-trigger{display:none}.recovery-grid{grid-template-columns:repeat(2,1fr)}.receipt-sheet{padding:17px;border-radius:12px}.receipt-header{display:grid}.receipt-number{text-align:right}.receipt-grid{grid-template-columns:1fr}.receipt-grid>div:nth-child(odd){border-left:0}.notification-menu{position:fixed!important;top:66px!important;right:12px!important;left:12px!important;width:auto!important;transform:none!important}}
@media print{.no-print,.subscription-banner{display:none!important}.receipt-sheet{border:0;box-shadow:none;max-width:none;padding:0}.receipt-amount{border:1px solid #ddd}}

/* v0.4.3 — Persian date picker, quick customer and commercial finance UX */
body{font-family:var(--app-font-family,Vazirmatn,Tahoma,"Segoe UI",Arial,sans-serif)}
.jalali-input-group{direction:ltr}.jalali-date-display{direction:rtl;text-align:right;cursor:pointer;background-color:var(--app-surface)!important}.jalali-date-button{min-width:46px;font-size:16px}.jalali-picker-layer{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;padding:18px;background:rgba(13,16,31,.48);backdrop-filter:blur(5px)}.jalali-picker-layer[hidden]{display:none}.jalali-picker{width:min(380px,100%);padding:16px;border:1px solid var(--app-border);border-radius:20px;background:var(--app-surface);color:var(--app-text);box-shadow:0 30px 90px rgba(9,12,29,.3);direction:rtl}.jalali-picker-head{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:8px;margin-bottom:9px}.jalali-picker-head button{width:40px;height:40px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-2);color:var(--app-text);font-size:22px}.jalali-picker-head button:hover{border-color:rgba(var(--app-primary-rgb),.35);color:var(--app-primary)}.jalali-period-selects{display:grid;grid-template-columns:1fr 1fr;gap:7px}.jalali-period-selects label,.jalali-day-select{display:grid;gap:3px;color:var(--app-muted);font-size:8px;font-weight:800}.jalali-period-selects select,.jalali-day-select select{width:100%;padding:7px;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface);color:var(--app-text);font-family:inherit;font-size:10px;font-weight:800}.jalali-day-select{margin-bottom:9px}.jalali-weekdays,.jalali-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.jalali-weekdays{margin-bottom:5px;color:var(--app-muted);font-size:10px;font-weight:800;text-align:center}.jalali-weekdays span{padding:5px}.jalali-day{aspect-ratio:1;border:0;border-radius:11px;background:transparent;color:var(--app-text);font-size:11px;transition:.15s}.jalali-day:not(.empty):hover{background:rgba(var(--app-primary-rgb),.1);color:var(--app-primary)}.jalali-day.today{box-shadow:inset 0 0 0 1px var(--app-primary);color:var(--app-primary)}.jalali-day.selected{background:linear-gradient(135deg,var(--app-secondary),var(--app-primary));color:#fff;box-shadow:0 8px 18px rgba(var(--app-primary-rgb),.25)}.jalali-picker-actions{display:flex;justify-content:space-between;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--app-border)}
.quick-customer-modal{border:1px solid var(--app-border);border-radius:20px;background:var(--app-surface);color:var(--app-text);overflow:hidden}.quick-customer-modal .modal-header,.quick-customer-modal .modal-footer{border-color:var(--app-border);background:var(--app-surface-2)}.quick-customer-modal .modal-title{display:flex;align-items:center;gap:8px;font-weight:850}.quick-customer-modal .modal-body{padding:22px}.btn-success{--bs-btn-bg:var(--app-success);--bs-btn-border-color:var(--app-success);--bs-btn-hover-bg:#087e5a;--bs-btn-hover-border-color:#087e5a}
.finance-progress{display:grid;gap:7px;min-width:170px}.finance-progress-top{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:9px}.finance-progress-top b{font-size:10px}.finance-progress-track{height:7px;border-radius:99px;background:var(--app-border);overflow:hidden}.finance-progress-value{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--app-success),#45d7aa)}.contract-finance-panel{display:grid;grid-template-columns:1.4fr repeat(3,minmax(0,1fr));gap:12px;align-items:stretch}.contract-progress-card,.contract-mini-card{padding:16px;border:1px solid var(--app-border);border-radius:15px;background:var(--app-surface-2)}.contract-progress-card{display:grid;gap:11px}.contract-progress-head{display:flex;justify-content:space-between;align-items:center}.contract-progress-head strong{font-size:18px;color:var(--app-success)}.contract-progress-bar{height:12px;border-radius:99px;background:var(--app-border);overflow:hidden}.contract-progress-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--app-success),#51d9af)}.contract-mini-card{display:flex;flex-direction:column;justify-content:center}.contract-mini-card small{color:var(--app-muted);font-size:9px}.contract-mini-card strong{margin-top:5px;font-size:13px}.font-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.font-card{position:relative;padding:16px;border:1px solid var(--app-border);border-radius:16px;background:var(--app-surface-2);display:grid;gap:11px}.font-card.active{border-color:rgba(var(--app-primary-rgb),.5);box-shadow:0 0 0 3px rgba(var(--app-primary-rgb),.08)}.font-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.font-card-preview{padding:14px;border-radius:12px;background:var(--app-surface);border:1px dashed var(--app-border-strong);font-size:17px;line-height:1.9}.font-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.font-badge{font-size:8px;padding:4px 8px;border-radius:99px;background:#e9f8f3;color:var(--app-success)}.font-badge.remote{background:#fff6df;color:#9b6a08}
@media(max-width:991px){.contract-finance-panel{grid-template-columns:1fr 1fr}.contract-progress-card{grid-column:1/-1}.font-grid{grid-template-columns:1fr}}@media(max-width:575px){.jalali-picker{padding:13px}.contract-finance-panel{grid-template-columns:1fr}.contract-progress-card{grid-column:auto}.quick-customer-modal .modal-body{padding:15px}.input-group>.btn-success{font-size:0;min-width:48px}.input-group>.btn-success .app-icon{font-size:14px}}
.floating-notice{position:fixed;z-index:2500;left:24px;bottom:24px;max-width:min(420px,calc(100vw - 32px));padding:13px 16px;border-radius:13px;background:#26304a;color:#fff;box-shadow:0 18px 50px rgba(0,0,0,.25);opacity:0;transform:translateY(15px);transition:.22s;font-size:11px;font-weight:700}.floating-notice.show{opacity:1;transform:none}.floating-notice.success{background:var(--app-success)}.floating-notice.danger{background:var(--app-danger)}
html[data-font="vazirmatn"] body,.font-vazirmatn{font-family:Vazirmatn,Tahoma,"Segoe UI",Arial,sans-serif}html[data-font="shabnam"] body,.font-shabnam{font-family:"Noto Sans Arabic",Tahoma,"Segoe UI",Arial,sans-serif}html[data-font="sahel"] body,.font-sahel{font-family:"Noto Kufi Arabic",Tahoma,"Segoe UI",Arial,sans-serif}html[data-font="estedad"] body,.font-estedad{font-family:Estedad,Tahoma,"Segoe UI",Arial,sans-serif}.finance-progress-track,.contract-progress-bar{display:block;width:100%;border:0;border-radius:99px;overflow:hidden;background:var(--app-border);appearance:none;-webkit-appearance:none}.finance-progress-track{height:7px}.contract-progress-bar{height:12px}.finance-progress-track::-webkit-progress-bar,.contract-progress-bar::-webkit-progress-bar{background:var(--app-border);border-radius:99px}.finance-progress-track::-webkit-progress-value,.contract-progress-bar::-webkit-progress-value{background:linear-gradient(90deg,var(--app-success),#45d7aa);border-radius:99px}.finance-progress-track::-moz-progress-bar,.contract-progress-bar::-moz-progress-bar{background:linear-gradient(90deg,var(--app-success),#45d7aa);border-radius:99px}.error-state{max-width:720px}
.sms-template-card{display:grid;gap:10px;padding:15px;border:1px solid var(--app-border);border-radius:14px;background:var(--app-surface-2)}.sms-template-card:focus-within{border-color:rgba(var(--app-primary-rgb),.35);box-shadow:0 0 0 3px rgba(var(--app-primary-rgb),.06)}
.sms-provider-panel{margin-top:16px;padding:16px;border:1px solid var(--app-border);border-radius:15px;background:var(--app-surface-2)}.sms-provider-panel[hidden]{display:none!important}.sms-pattern-example{padding:9px 11px;border-right:3px solid var(--app-primary);border-radius:9px;background:var(--app-surface);color:var(--app-muted);font-size:9px;line-height:1.9}

/* v0.4.4 — catalog definitions, privacy-first installment files and mandatory check workflow */
.form-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid.cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.span-4{grid-column:span 4}.span-5{grid-column:span 5}
.definitions-hero{background:linear-gradient(130deg,#18213e,#303a74 62%,var(--app-primary))}.definition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.definition-create-form{display:grid;grid-template-columns:1fr auto;gap:10px;margin-bottom:14px}.definition-list{display:grid;gap:8px;max-height:440px;overflow:auto;padding-left:3px}.definition-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-2)}.definition-item b{display:block;font-size:11px}.definition-item small{display:block;color:var(--app-muted);font-size:9px}.definition-item form,.definition-item button{margin:0;border:0}.definition-item button{cursor:pointer}.definition-model-form{padding:16px;border:1px solid var(--app-border);border-radius:14px;background:var(--app-surface-2)}
.national-search-card{overflow:hidden}.national-search-form{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:10px;align-items:center}.privacy-empty{min-height:280px;display:grid;place-items:center;align-content:center;text-align:center}.privacy-empty h3{margin:8px 0 0;font-size:16px}.privacy-empty p{max-width:560px;color:var(--app-muted);font-size:11px}.customer-file-summary .panel-head{margin-bottom:10px}.customer-file-summary .mini-metrics{margin-top:12px}.cardex-hero{background:linear-gradient(130deg,#16263a,#21556c 58%,#129575)}.cardex-table{min-width:1180px}.check-cardex-cell{display:grid;gap:3px;min-width:190px}.check-cardex-cell b{font-size:10px}.check-cardex-cell small{font-size:9px;color:var(--app-muted)}.cardex-collection-form{min-width:360px}
.contract-checks-section{border-color:rgba(var(--app-primary-rgb),.22);box-shadow:inset 0 3px 0 rgba(var(--app-primary-rgb),.08)}#contractChecks{display:grid;gap:12px}.contract-check-row{padding:15px;border:1px solid var(--app-border);border-radius:15px;background:linear-gradient(135deg,var(--app-surface),var(--app-surface-2))}.contract-check-index{display:flex;align-items:center;gap:10px;margin-bottom:13px;padding-bottom:10px;border-bottom:1px dashed var(--app-border-strong)}.contract-check-index>span{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:var(--app-primary);color:#fff;font-weight:900;box-shadow:0 7px 16px rgba(var(--app-primary-rgb),.2)}.contract-check-index b{display:block;font-size:11px}.contract-check-index small{display:block;font-size:9px;color:var(--app-muted)}
html[data-bs-theme="dark"] .contract-check-row,html[data-bs-theme="dark"] .definition-model-form{background:rgba(255,255,255,.025)}
@media(max-width:1199px){.form-grid.cols-5{grid-template-columns:repeat(3,minmax(0,1fr))}.definition-model-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:991px){.definition-grid{grid-template-columns:1fr}.national-search-form{grid-template-columns:1fr auto}.national-search-form .btn-outline-secondary{grid-column:1/-1}.form-grid.cols-4,.form-grid.cols-5{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.form-grid.cols-4,.form-grid.cols-5{grid-template-columns:1fr}.definition-create-form,.national-search-form{grid-template-columns:1fr}.contract-check-index{align-items:flex-start}.contract-check-row{padding:12px}.cardex-collection-form{min-width:260px}}
@media print{.app-sidebar,.app-topbar,.app-footer,.page-heading,.hero-actions,.app-alert,.no-print{display:none!important}.app-main{margin:0!important}.app-content{padding:0!important}.panel-card,.dashboard-hero{box-shadow:none;border:1px solid #ddd}.cardex-table{min-width:0}.cardex-table th,.cardex-table td{font-size:8px;padding:5px}}
.entity-search-panel{border-color:rgba(var(--app-primary-rgb),.24);background:linear-gradient(135deg,rgba(var(--app-primary-rgb),.035),var(--app-surface))}.entity-search-box{position:relative}.entity-search-box .form-control{padding-left:45px}.search-spinner{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--app-primary);animation:spin 1s linear infinite}.entity-search-results{display:grid;gap:8px;margin-top:12px}.entity-search-result{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 13px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface);color:var(--app-text)}.entity-search-result:hover{border-color:rgba(var(--app-primary-rgb),.35);background:rgba(var(--app-primary-rgb),.035)}.entity-search-result b,.entity-search-result small{display:block}.entity-search-result small{color:var(--app-muted);font-size:10px}.entity-search-hint{padding:14px;text-align:center;color:var(--app-muted);font-size:11px;border:1px dashed var(--app-border);border-radius:12px}@keyframes spin{to{transform:translateY(-50%) rotate(360deg)}}

/* Global Persian font application — Bootstrap controls, dialogs, tables and print inherit the selected font. */
html[data-font="vazirmatn"]{--app-font-family:Vazirmatn,Tahoma,"Segoe UI",Arial,sans-serif}
html[data-font="shabnam"]{--app-font-family:"Noto Sans Arabic",Tahoma,"Segoe UI",Arial,sans-serif}
html[data-font="sahel"]{--app-font-family:"Noto Kufi Arabic",Tahoma,"Segoe UI",Arial,sans-serif}
html[data-font="estedad"]{--app-font-family:Estedad,Tahoma,"Segoe UI",Arial,sans-serif}
html[data-font]{--bs-body-font-family:var(--app-font-family)}
html[data-font] body,html[data-font] button,html[data-font] input,html[data-font] select,html[data-font] textarea,html[data-font] table,html[data-font] .btn,html[data-font] .form-control,html[data-font] .form-select,html[data-font] .modal,html[data-font] .dropdown-menu,html[data-font] .tooltip,html[data-font] .popover{font-family:var(--app-font-family)!important}
@media print{html[data-font] body,html[data-font] *{font-family:var(--app-font-family)!important}}

/* v0.9.6 compact testimonial moderation and immediate save feedback */
.testimonial-admin-table-wrap{border:1px solid var(--app-border);border-radius:15px}.testimonial-admin-table{min-width:920px;margin:0}.testimonial-admin-table th{white-space:nowrap;background:var(--app-surface-2);font-size:9px}.testimonial-admin-table td{padding-top:10px;padding-bottom:10px}.testimonial-admin-person{display:flex;align-items:center;gap:10px;min-width:180px}.testimonial-admin-person>span:last-child{display:grid}.testimonial-admin-person b{font-size:10px}.testimonial-admin-person small,.testimonial-admin-date{color:var(--app-muted);font-size:9px;white-space:nowrap}.testimonial-admin-avatar{width:38px;height:38px;flex:0 0 38px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:rgba(var(--app-primary-rgb),.1);color:var(--app-primary)}.testimonial-admin-avatar img{width:100%;height:100%;object-fit:cover}.testimonial-admin-avatar svg{width:18px}.testimonial-admin-excerpt{max-width:430px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--app-text);font-size:10px}.testimonial-featured{display:flex;align-items:center;gap:3px;margin-top:5px;color:#a36b00;font-size:8px}.testimonial-featured svg{width:10px}.testimonial-admin-modal .modal-content{border:0;border-radius:20px;box-shadow:0 25px 80px rgba(20,25,55,.25)}.testimonial-admin-modal .modal-header{padding:18px 20px}.testimonial-admin-modal .modal-title{font-size:14px;font-weight:950}.testimonial-admin-modal .modal-header small{color:var(--app-muted);font-size:9px}.testimonial-modal-review{padding:14px;border:1px solid var(--app-border);border-radius:13px;background:var(--app-surface-2)}.testimonial-modal-review blockquote{margin:8px 0 0;max-height:145px;overflow:auto;white-space:pre-wrap;line-height:1.9}.testimonial-featured-check{margin:14px 0;padding:11px 35px 11px 12px;border-radius:11px;background:rgba(var(--app-primary-rgb),.06)}.testimonial-moderation-actions{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:8px}.testimonial-moderation-actions .btn{margin:0}.testimonial-delete-form{padding:0 20px 14px;text-align:center}.button-spinner{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-left-color:transparent;border-radius:50%;animation:button-spin .65s linear infinite}.btn.is-submitting{display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:wait;opacity:.82}@keyframes button-spin{to{transform:rotate(360deg)}}
.testimonial-display-fixed{display:flex;align-items:center;gap:7px;background:var(--app-surface-2);color:var(--app-text);pointer-events:none}.testimonial-display-fixed svg{width:16px;color:var(--app-primary)}
@media(max-width:767px){.testimonial-admin-panel{padding:13px}.testimonial-admin-table{min-width:700px}.testimonial-admin-table th:nth-child(4),.testimonial-admin-table td:nth-child(4){display:none}.testimonial-admin-excerpt{max-width:250px}.testimonial-moderation-actions{grid-template-columns:1fr}.testimonial-admin-modal .modal-dialog{margin:10px}.testimonial-admin-modal .modal-body{padding:14px}.testimonial-admin-modal .modal-footer{padding:12px 14px}.testimonial-admin-table-wrap{margin:0 -3px}.testimonial-edit-button{min-height:38px}}

/* v0.7.0 — professional collections, queue monitoring, secure documents and contract lifecycle */
.nav-dashboard{margin-bottom:3px}.nav-section{gap:3px}.nav-section-toggle{width:100%;min-height:40px;display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid transparent;border-radius:11px;background:transparent;color:#8f94ae;font:inherit;font-size:10px;font-weight:850;text-align:right;cursor:pointer;transition:color .18s ease,background .18s ease,border-color .18s ease}.nav-section-toggle:hover,.nav-section-toggle:focus-visible{color:#fff;background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.055);outline:0}.nav-section-title{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-section-arrow-box{width:24px;height:24px;margin-right:auto;border-radius:8px;display:grid;place-items:center;flex:0 0 24px;color:#aeb3cc;background:rgba(255,255,255,.06);transition:color .18s ease,background .18s ease}.nav-section-toggle:hover .nav-section-arrow-box,.nav-section-toggle:focus-visible .nav-section-arrow-box{color:#fff;background:rgba(255,255,255,.1)}.nav-section-arrow{display:block!important;width:11px!important;height:11px!important;min-width:11px;max-width:11px;min-height:11px;max-height:11px;overflow:visible;transform-origin:50% 50%;transition:transform .22s ease}.nav-section.is-open>.nav-section-toggle .nav-section-arrow{transform:rotate(-90deg)}.nav-submenu{display:grid;gap:4px;max-height:0;opacity:0;visibility:hidden;overflow:hidden;transform:translateY(-4px);transition:max-height .3s ease,opacity .2s ease,transform .22s ease,visibility 0s linear .3s}.nav-section.is-open>.nav-submenu{max-height:520px;opacity:1;visibility:visible;transform:translateY(0);transition:max-height .3s ease,opacity .2s ease,transform .22s ease,visibility 0s}.sidebar-collapsed .nav-section-toggle{justify-content:center;padding-inline:5px}.sidebar-collapsed .nav-section-title{display:none}.sidebar-collapsed .nav-section-arrow-box{margin:0}.sidebar-collapsed .nav-section-arrow{transform:rotate(0)}.sidebar-collapsed .nav-section.is-open>.nav-section-toggle .nav-section-arrow{transform:rotate(-90deg)}
.app-popup{position:fixed;z-index:2200;top:50%;left:50%;width:min(470px,calc(100vw - 32px));margin:0;transform:translate(-50%,-50%) scale(.96);padding:22px;border-radius:22px;box-shadow:0 32px 100px rgba(15,18,40,.34);animation:popup-in .24s ease forwards;backdrop-filter:blur(10px)}.app-popup:before{content:"";position:fixed;inset:-100vh -100vw;z-index:-1;background:rgba(11,14,28,.38);backdrop-filter:blur(3px)}.app-popup>span{width:52px;height:52px;border-radius:17px;font-size:24px}.app-popup b{font-size:15px}.app-popup p{font-size:12px;line-height:1.9}.app-popup.is-closing{opacity:0;transform:translate(-50%,-46%) scale(.97);transition:.2s}@keyframes popup-in{to{transform:translate(-50%,-50%) scale(1)}}

/* v0.8.4: flat result popups and banking receipt */
.app-popup{box-shadow:none!important;backdrop-filter:none}.app-popup:before{backdrop-filter:none}.app-popup.alert-success>span{color:#fff;background:#16a34a;border-radius:50%}.app-popup.alert-danger>span{color:#fff;background:#dc2626;border-radius:50%}.app-popup.alert-success>span .app-icon,.app-popup.alert-danger>span .app-icon{width:1.1em;height:1.1em}
.bank-receipt-wrap{max-width:800px;margin:0 auto;filter:drop-shadow(0 18px 30px rgba(15,23,42,.11))}.bank-receipt-cut{height:16px;background:repeating-conic-gradient(from 45deg at 50% 100%,transparent 0 90deg,var(--app-surface) 0 180deg) 0 0/22px 16px repeat-x}.bank-receipt-cut.bottom{transform:rotate(180deg)}.receipt-sheet.bank-receipt{position:relative;max-width:none;margin:0;padding:32px 38px;border:0;border-radius:0;background:var(--app-surface);box-shadow:none;overflow:hidden}.receipt-sheet.bank-receipt:before{content:"";position:absolute;top:0;right:0;bottom:0;width:7px;background:linear-gradient(#1d4ed8,#2563eb 55%,#16a34a)}.receipt-bank-head{display:flex;justify-content:space-between;gap:24px;padding-bottom:22px;border-bottom:2px dashed var(--app-border-strong)}.receipt-bank-brand{display:flex;align-items:center;gap:14px}.receipt-bank-brand>span{width:54px;height:54px;display:grid;place-items:center;border-radius:15px;color:#fff;font-size:27px;font-weight:950;background:linear-gradient(145deg,#163b73,#2563eb)}.receipt-bank-brand small,.receipt-number small{display:block;color:var(--app-muted);font-size:9px}.receipt-bank-brand h2{margin:2px 0;font-size:18px;font-weight:950}.receipt-bank-brand p{margin:0;color:var(--app-muted);font-size:9px}.receipt-number{text-align:left;display:grid;justify-items:end;align-content:start;gap:3px}.receipt-number code{padding:5px 9px;border-radius:7px;color:#173d78;background:#eef5ff;font-size:11px}.receipt-number>span{font-size:9px;color:var(--app-muted)}.receipt-status{display:flex;align-items:center;gap:11px;margin:20px 0;padding:12px 14px;border:1px solid #bbebd4;border-radius:12px;color:#08764f;background:#edfbf5}.receipt-status>span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#16a34a}.receipt-status small,.receipt-status b{display:block}.receipt-status small{font-size:8px}.receipt-status b{font-size:11px}.bank-receipt .receipt-amount{position:relative;margin:18px 0;padding:24px;border:1px solid #cfe0f8;border-radius:14px;background:linear-gradient(135deg,#f3f8ff,#f8fbff)}.bank-receipt .receipt-amount strong{display:inline-block;margin:4px 6px;font-size:30px;color:#173d78}.bank-receipt .receipt-amount span{font-size:10px;color:#47627e}.bank-receipt .receipt-grid{margin-top:0;border-radius:12px}.bank-receipt .receipt-grid>div{min-height:58px}.bank-receipt .receipt-note{margin-top:16px;border-right:3px solid #2563eb}.receipt-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:22px;padding-top:18px;border-top:2px dashed var(--app-border-strong)}.receipt-footer>div{display:flex;align-items:center;gap:10px}.receipt-footer>div>span{font-size:22px;color:#2563eb}.receipt-footer p{display:grid;margin:0}.receipt-footer b{font-size:9px}.receipt-footer small{font-size:8px;color:var(--app-muted)}.receipt-stamp{padding:7px 14px;border:2px solid #16a34a;border-radius:9px;color:#13845d;font-size:12px;font-weight:950;transform:rotate(-4deg)}.check-settlement-meta{display:grid;gap:2px;margin-top:7px;padding:7px 9px;border-right:3px solid #16a34a;border-radius:7px;background:#effbf5}.check-settlement-meta b{font-size:9px;color:#08764f}.check-settlement-meta small{max-width:260px;font-size:8px;line-height:1.6;color:var(--app-muted)}.check-settlement-meta a{font-size:8px}
@media(max-width:767px){.receipt-sheet.bank-receipt{padding:24px 20px}.receipt-bank-head{display:grid}.receipt-number{justify-items:start;text-align:right}.receipt-footer{align-items:flex-start;flex-direction:column}.bank-receipt .receipt-grid{grid-template-columns:1fr}.bank-receipt .receipt-grid>div:nth-child(odd){border-left:0}}
@media print{.bank-receipt-wrap{filter:none}.bank-receipt-cut{--app-surface:#fff}.receipt-sheet.bank-receipt{padding:24px}.receipt-status,.bank-receipt .receipt-amount{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
.settings-tabs{position:sticky;top:calc(var(--topbar-height) + 8px);z-index:25;display:flex;flex-wrap:wrap;direction:rtl}.settings-tabs .nav-link{display:flex;align-items:center;gap:7px}.access-layout{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr)}.permission-groups{display:grid;gap:12px}.permission-group{padding:14px;border:1px solid var(--app-border);border-radius:14px;background:var(--app-surface-2)}.permission-group legend{float:none;width:auto;padding:0 8px;margin:0 0 9px;font-size:11px;font-weight:900}.permission-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.permission-checks label{display:flex;align-items:flex-start;gap:9px;padding:10px;border:1px solid var(--app-border);border-radius:11px;background:var(--app-surface);cursor:pointer}.permission-checks span{display:grid}.permission-checks b{font-size:10px}.permission-checks small{color:var(--app-muted);font-size:8px}.access-profile-list{display:grid;gap:9px}.access-profile-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-2)}.access-profile-list b,.access-profile-list small{display:block}.access-profile-list small{color:var(--app-muted);font-size:9px}.access-profile-list form{margin:0}.access-assign{display:flex;align-items:center;gap:8px;min-width:310px}.access-assign .form-select{min-width:210px}
.print-only{display:none}.cardex-print-sheet{direction:rtl;color:#111;background:#fff}.cardex-print-sheet header{display:flex;justify-content:space-between;gap:24px;padding-bottom:14px;border-bottom:2px solid #222}.cardex-print-sheet h1{font-size:18px;margin:0 0 4px}.cardex-print-sheet p,.cardex-print-sheet span{display:block;margin:2px 0;font-size:9px}.cardex-print-sheet header>div:last-child{text-align:left}.cardex-print-sheet header b{display:block;font-size:16px}.cardex-print-customer{display:grid;grid-template-columns:repeat(3,1fr);margin:14px 0;border:1px solid #bbb}.cardex-print-customer>div{padding:8px;border-left:1px solid #ddd;border-bottom:1px solid #ddd}.cardex-print-customer small,.cardex-print-customer b{display:block}.cardex-print-customer small{font-size:8px;color:#555}.cardex-print-customer b{font-size:10px}.cardex-print-table{width:100%;border-collapse:collapse;font-size:9px}.cardex-print-table th,.cardex-print-table td{padding:7px 5px;border:1px solid #888;text-align:center}.cardex-print-table th{background:#eee}.cardex-print-sheet footer{margin-top:12px;text-align:center;font-size:8px;color:#555}
@media(max-width:991px){.access-layout{grid-template-columns:1fr}.permission-checks{grid-template-columns:1fr}}@media(max-width:767px){.settings-tabs{top:70px;flex-wrap:nowrap;overflow-x:auto}.settings-tabs .nav-link{white-space:nowrap}.access-assign{min-width:260px}.access-assign .form-select{min-width:170px}}
@media print{body:has(.cardex-print-sheet) .app-content>*:not(.cardex-print-sheet){display:none!important}.cardex-print-sheet{display:block!important}.cardex-print-sheet *{font-family:var(--app-font-family),Tahoma,sans-serif!important}body:has(.cardex-print-sheet){margin:0;background:#fff}.cardex-print-sheet{page-break-inside:auto}.cardex-print-table tr{page-break-inside:avoid}}

/* v0.7.1 — resumable shared-hosting web migrations */
.migration-panel{position:relative;overflow:hidden;margin-bottom:16px;border-color:color-mix(in srgb,var(--app-primary) 28%,var(--app-border));background:linear-gradient(145deg,color-mix(in srgb,var(--app-primary) 7%,var(--app-surface)),var(--app-surface) 54%)}
.migration-panel::before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--app-primary);opacity:.9}
.migration-head,.migration-actions,.migration-meta{display:flex;align-items:center;justify-content:space-between;gap:16px}.migration-identity{display:flex;align-items:center;gap:13px}.migration-identity h2{margin:0 0 4px;font-size:14px}.migration-identity p{margin:0;color:var(--app-muted);font-size:9px}.migration-identity code{direction:ltr;display:inline-block;color:var(--app-primary);font-weight:800}.migration-percent{min-width:72px;text-align:center;padding:8px 13px;border-radius:14px;background:color-mix(in srgb,var(--app-primary) 12%,var(--app-surface));color:var(--app-primary);font-size:18px;font-weight:950;font-variant-numeric:tabular-nums}.migration-progress{display:block;width:100%;height:13px;margin:20px 0 11px;border:0;border-radius:999px;overflow:hidden;background:var(--app-surface-2);appearance:none}.migration-progress::-webkit-progress-bar{background:var(--app-surface-2);border-radius:999px}.migration-progress::-webkit-progress-value{border-radius:999px;background:linear-gradient(90deg,var(--app-primary),#22c55e);transition:width .35s ease}.migration-progress::-moz-progress-bar{border-radius:999px;background:linear-gradient(90deg,var(--app-primary),#22c55e);transition:width .35s ease}.migration-meta{justify-content:flex-start;flex-wrap:wrap;color:var(--app-muted);font-size:8px}.migration-meta span{padding:5px 9px;border:1px solid var(--app-border);border-radius:9px;background:color-mix(in srgb,var(--app-surface) 82%,transparent)}.migration-meta b{color:var(--app-text);font-size:10px}.migration-status-line{display:flex;align-items:center;gap:9px;margin:14px 0 12px;padding:10px 12px;border-radius:11px;background:var(--app-surface-2)}.migration-status-line p{margin:0;font-size:9px;font-weight:800}.migration-pulse{width:9px;height:9px;flex:0 0 9px;border-radius:50%;background:var(--app-muted)}.migration-panel.is-running .migration-pulse{background:var(--app-primary);box-shadow:0 0 0 0 color-mix(in srgb,var(--app-primary) 45%,transparent);animation:migrationPulse 1.2s infinite}.migration-panel.is-complete::before,.migration-panel.is-complete .migration-pulse{background:#22c55e}.migration-panel.is-failed::before,.migration-panel.is-failed .migration-pulse{background:#ef4444}.migration-error{direction:rtl;margin:-4px 0 12px;padding:10px 12px;border-radius:10px;border:1px solid color-mix(in srgb,#ef4444 30%,var(--app-border));background:color-mix(in srgb,#ef4444 8%,var(--app-surface));color:#dc2626;font-size:8px;overflow-wrap:anywhere}.migration-actions p{display:flex;align-items:center;gap:6px;margin:0;color:var(--app-muted);font-size:8px}.migration-actions p .app-icon{color:#22c55e}.migration-actions .btn{min-width:235px;justify-content:center}@keyframes migrationPulse{70%{box-shadow:0 0 0 9px transparent}100%{box-shadow:0 0 0 0 transparent}}
@media(max-width:767px){.migration-head,.migration-actions{align-items:stretch;flex-direction:column}.migration-head .migration-percent{align-self:flex-end}.migration-actions .btn{width:100%;min-width:0}.migration-actions p{justify-content:center;text-align:center}.migration-meta{gap:6px}.migration-identity{align-items:flex-start}}

/* v0.7.3 visual site builder */
.site-builder-layout{align-items:start}.widget-sort-list,.page-admin-list{display:grid;gap:9px}.widget-sort-item,.page-admin-list article{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--app-border);border-radius:13px;background:var(--app-surface-2);transition:.18s}.widget-sort-item>div,.page-admin-list article>div{display:grid;min-width:0;flex:1}.widget-sort-item small,.page-admin-list small{color:var(--app-muted);font-size:9px}.widget-sort-item.is-disabled{opacity:.58}.widget-sort-item.is-dragging{opacity:.45;transform:scale(.99);border-style:dashed}.drag-handle{width:32px;height:38px;border:0;border-radius:9px;background:transparent;color:var(--app-muted);cursor:grab}.drag-handle:active{cursor:grabbing}.content-tabs{display:flex;gap:7px;flex-wrap:wrap}.content-tab{display:inline-flex;align-items:center;gap:7px;padding:9px 13px;border:1px solid var(--app-border);border-radius:11px;background:var(--app-surface);color:var(--app-muted);font-size:10px;font-weight:800}.content-tab.active,.content-tab:hover{color:var(--app-primary);border-color:rgba(var(--app-primary-rgb),.3);background:rgba(var(--app-primary-rgb),.07)}@media(max-width:767px){.widget-sort-item{display:grid;grid-template-columns:auto auto 1fr auto}.widget-sort-item .status{display:none}}
.testimonial-option-checks{display:flex!important;gap:14px;flex-wrap:wrap;padding:13px;border:1px solid var(--app-border);border-radius:13px;background:var(--app-surface-2)}.testimonial-option-checks .form-check{margin:0}

/* v0.7.5 — simple automatic notifications and financial calendar */
.notification-view-all{display:block;padding:10px;text-align:center;border-top:1px solid var(--app-border);color:var(--app-primary);font-size:9px;font-weight:900}.inbox-list{display:grid;gap:9px}.inbox-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:15px;border:1px solid var(--app-border);border-radius:15px;background:var(--app-surface)}.inbox-item.unread{border-right:4px solid var(--app-primary);background:color-mix(in srgb,var(--app-primary) 5%,var(--app-surface))}.inbox-item.warning{border-right-color:#f59e0b}.inbox-item.danger{border-right-color:#ef4444}.inbox-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:var(--app-surface-2);color:var(--app-primary)}.inbox-item p{margin:5px 0;font-size:10px;line-height:1.8}.inbox-item small{color:var(--app-muted);font-size:8px}
.calendar-toolbar{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:13px}.calendar-toolbar>div{text-align:center}.calendar-toolbar h2{margin:0;font-size:15px}.calendar-toolbar small{color:var(--app-muted);font-size:8px}.calendar-toolbar form{margin-right:auto}.calendar-legend{display:flex;flex-wrap:wrap;gap:11px;margin-bottom:12px}.calendar-dot{display:flex;align-items:center;gap:6px;font-size:8px;font-weight:800}.calendar-dot:before{content:"";width:9px;height:9px;border-radius:3px;background:var(--app-primary)}.calendar-dot.installment:before{background:#f59e0b}.calendar-dot.check:before{background:#3b82f6}.calendar-dot.promise:before{background:#22c55e}.financial-calendar{overflow:auto}.calendar-weekdays,.calendar-grid{min-width:920px;display:grid;grid-template-columns:repeat(7,1fr)}.calendar-weekdays b{padding:9px;text-align:center;color:var(--app-muted);font-size:9px}.calendar-day{min-height:150px;padding:8px;border-top:1px solid var(--app-border);border-left:1px solid var(--app-border);background:var(--app-surface)}.calendar-day:nth-child(7n){border-left:0}.calendar-day.is-empty{background:var(--app-surface-2)}.calendar-day.is-today{box-shadow:inset 0 0 0 2px var(--app-primary)}.calendar-day header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.calendar-day header>b{width:26px;height:26px;display:grid;place-items:center;border-radius:9px;background:var(--app-surface-2);font-size:10px}.calendar-day header span{font-size:7px;color:var(--app-muted)}.day-events{display:grid;gap:4px}.calendar-event{display:grid;padding:6px 7px;border-radius:8px;border-right:3px solid var(--app-primary);background:var(--app-surface-2);color:var(--app-text)}.calendar-event.installment{border-color:#f59e0b}.calendar-event.check{border-color:#3b82f6}.calendar-event.promise{border-color:#22c55e}.calendar-event.danger{background:color-mix(in srgb,#ef4444 8%,var(--app-surface))}.calendar-event b{font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-event small{font-size:6px;color:var(--app-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:600px){.inbox-item{grid-template-columns:auto 1fr}.inbox-actions{grid-column:1/-1}.calendar-toolbar{flex-wrap:wrap}.calendar-toolbar form{width:100%;margin:0}}

/* v0.7.7 — guided case registration */
.calendar-date-selectors{display:flex;gap:7px;align-items:end}.calendar-date-selectors label{display:grid;gap:3px;color:var(--app-muted);font-size:7px}.calendar-date-selectors select{min-width:90px}.calendar-day.is-selected{box-shadow:inset 0 0 0 3px #8b5cf6;background:color-mix(in srgb,#8b5cf6 7%,var(--app-surface))}
.case-wizard-nav{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:16px 0;position:sticky;top:8px;z-index:20;padding:8px;background:color-mix(in srgb,var(--app-surface) 92%,transparent);backdrop-filter:blur(10px);border:1px solid var(--app-border);border-radius:16px}.case-wizard-nav button{display:flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:11px;padding:10px 7px;background:var(--app-surface-2);color:var(--app-muted);font:inherit;font-size:9px;font-weight:800}.case-wizard-nav button span{width:23px;height:23px;display:grid;place-items:center;border-radius:50%;background:var(--app-border)}.case-wizard-nav button.is-active{background:color-mix(in srgb,var(--app-primary) 13%,var(--app-surface));color:var(--app-primary)}.case-wizard-nav button.is-active span,.case-wizard-nav button.is-done span{background:var(--app-primary);color:#fff}.case-wizard-step{display:none}.case-wizard-step.is-active{display:block;animation:wizard-in .2s ease-out}.wizard-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid var(--app-border)}.case-review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.case-review-grid>div{padding:13px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-2)}.case-review-grid small,.case-review-grid b{display:block}.case-review-grid small{color:var(--app-muted);margin-bottom:5px}.check-row span small{display:block;color:var(--app-muted);font-weight:400;margin-top:3px}@keyframes wizard-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(max-width:760px){.case-wizard-nav{grid-template-columns:repeat(5,minmax(52px,1fr));overflow-x:auto}.case-wizard-nav button{font-size:0}.case-wizard-nav button span{font-size:9px}.case-review-grid{grid-template-columns:1fr 1fr}}

/* v0.7.6 — login alert summary and reminder controls */
.login-alert-modal .modal-content{border:0;border-radius:22px;box-shadow:0 30px 90px rgba(15,23,42,.28);overflow:hidden}.login-alert-modal .modal-header{align-items:flex-start;padding:20px 22px 14px;border:0}.login-alert-modal .modal-title{margin-top:4px;font-size:17px}.login-alert-modal .modal-body{padding:0 22px 18px}.login-alert-note{margin:0 0 12px;padding:10px 12px;border-radius:11px;background:var(--app-surface-2);color:var(--app-muted);font-size:9px;line-height:1.8}.login-alert-list{display:grid;gap:8px}.login-alert-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:12px;border:1px solid var(--app-border);border-radius:13px;background:var(--app-surface);color:var(--app-text)}.login-alert-item:hover{border-color:color-mix(in srgb,var(--app-primary) 35%,var(--app-border));transform:translateY(-1px)}.login-alert-item.warning{border-right:4px solid #f59e0b}.login-alert-item.danger{border-right:4px solid #ef4444}.login-alert-item.info{border-right:4px solid #3b82f6}.login-alert-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:var(--app-surface-2);color:var(--app-primary)}.login-alert-item b,.login-alert-item small{display:block}.login-alert-item b{font-size:10px}.login-alert-item small{margin-top:3px;color:var(--app-muted);font-size:8px;line-height:1.7}.login-alert-modal .modal-footer{padding:14px 22px 20px;border-top:1px solid var(--app-border)}.sms-reminder-setting{padding:14px;border:1px solid var(--app-border);border-radius:14px;background:var(--app-surface-2)}.sms-reminder-setting .switch-card{padding:0;border:0;background:transparent}

/* v0.7.8 — compact collateral navigator and clickable calendar periods */
.calendar-period-title{position:relative;min-width:210px}.calendar-period-pickers{display:flex;align-items:center;justify-content:center;gap:7px}.calendar-period-picker{position:relative}.calendar-period-picker summary{display:flex;align-items:center;gap:5px;padding:7px 10px;border:1px solid transparent;border-radius:10px;list-style:none;cursor:pointer;color:var(--app-text);font-size:14px;font-weight:900}.calendar-period-picker summary::-webkit-details-marker{display:none}.calendar-period-picker summary .app-icon{width:9px;color:var(--app-muted)}.calendar-period-picker[open] summary,.calendar-period-picker summary:hover{border-color:var(--app-border);background:var(--app-surface-2);color:var(--app-primary)}.calendar-period-menu{position:absolute;top:calc(100% + 6px);right:50%;z-index:45;display:grid;gap:4px;width:250px;max-height:310px;padding:9px;overflow:auto;transform:translateX(50%);border:1px solid var(--app-border);border-radius:14px;background:var(--app-surface);box-shadow:var(--app-shadow-lg)}.calendar-period-menu.month-menu{grid-template-columns:repeat(3,1fr)}.calendar-period-menu.year-menu{grid-template-columns:repeat(3,1fr)}.calendar-period-menu a{padding:8px 6px;border-radius:9px;color:var(--app-text);font-size:9px;font-weight:800;text-align:center}.calendar-period-menu a:hover,.calendar-period-menu a.is-current{background:rgba(var(--app-primary-rgb),.1);color:var(--app-primary)}.calendar-quick-actions{display:flex!important;align-items:end;gap:8px;margin-right:auto;text-align:right!important}.calendar-day-selector label{display:grid;gap:3px;color:var(--app-muted);font-size:7px}.calendar-day-selector select{min-width:100px}.calendar-day-number{width:26px;height:26px;display:grid;place-items:center;border-radius:9px;background:var(--app-surface-2);color:var(--app-text);font-size:10px;font-weight:900}.calendar-day-number:hover{background:var(--app-primary);color:#fff}
.calendar-day-detail-list{display:grid;gap:10px;padding:12px}.calendar-day-detail{overflow:hidden;border:1px solid var(--app-border);border-right:4px solid #f59e0b;border-radius:15px;background:var(--app-surface)}.calendar-day-detail.check{border-right-color:#3b82f6}.calendar-day-detail.promise{border-right-color:#22c55e}.calendar-day-detail-main{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:13px}.calendar-detail-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:var(--app-surface-2);color:var(--app-primary)}.calendar-detail-heading{display:flex;align-items:center;gap:8px;margin-bottom:4px}.calendar-detail-heading b{font-size:10px}.calendar-customer-link{display:inline-flex;align-items:center;gap:5px;color:var(--app-primary);font-size:9px;font-weight:900}.calendar-day-detail-main small,.calendar-detail-money small{display:block;color:var(--app-muted);font-size:7px}.calendar-detail-money{text-align:left}.calendar-detail-money strong{display:block;font-size:11px}.calendar-contact-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;border-top:1px solid var(--app-border);background:var(--app-surface-2)}.calendar-contact-row>div:first-child>small{display:block;color:var(--app-muted);font-size:7px}.calendar-phone-link{display:inline-flex;align-items:center;gap:5px;margin-left:8px;color:var(--app-success);font-size:10px;font-weight:900}.calendar-phone-link.secondary{color:var(--app-muted)}.calendar-detail-actions{display:flex;flex-wrap:wrap;gap:6px}.calendar-guarantors{border-top:1px solid var(--app-border)}.calendar-guarantors summary{padding:10px 13px;cursor:pointer;color:var(--app-text);font-size:8px;font-weight:900}.calendar-guarantor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;padding:0 13px 13px}.calendar-guarantor-grid>div{padding:10px;border:1px solid var(--app-border);border-radius:11px;background:var(--app-surface-2)}.calendar-guarantor-grid b,.calendar-guarantor-grid small{display:block}.calendar-guarantor-grid b{font-size:9px}.calendar-guarantor-grid small{color:var(--app-muted);font-size:7px}.calendar-no-guarantor{padding:8px 13px;border-top:1px solid var(--app-border);color:var(--app-muted);font-size:7px}
.instrument-navigator{display:grid;grid-template-columns:minmax(190px,1fr) minmax(170px,1fr) auto;align-items:end;gap:14px;margin-bottom:12px;padding:13px;border:1px solid var(--app-border);border-radius:14px;background:var(--app-surface-2)}.instrument-navigator>div:first-child label{margin-bottom:4px}.instrument-progress{display:grid;gap:5px}.instrument-progress small{color:var(--app-muted);font-size:8px}.instrument-progress b{font-size:10px}.instrument-progress progress{width:100%;height:8px;border:0;border-radius:99px;overflow:hidden;accent-color:var(--app-success)}.instrument-nav-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.instrument-nav-actions .btn{white-space:nowrap}
.sale-instrument-list{display:grid;gap:8px}.sale-instrument-row{display:grid;grid-template-columns:auto 1.2fr 1fr 1fr auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-2)}.sale-instrument-row>span:first-child{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:rgba(var(--app-primary-rgb),.1);color:var(--app-primary);font-weight:900}.sale-instrument-row small{display:block;color:var(--app-muted);font-size:8px}.sale-instrument-row b{font-size:10px}.sale-instrument-filter{display:flex;align-items:center;gap:8px}.sale-instrument-filter select{min-width:150px}
@media(max-width:900px){.instrument-navigator{grid-template-columns:1fr 1fr}.instrument-nav-actions{grid-column:1/-1;justify-content:flex-start}.calendar-quick-actions{width:100%;justify-content:center;margin:0}.sale-instrument-row{grid-template-columns:auto 1fr 1fr}.sale-instrument-row>*:last-child{grid-column:2/-1}}
@media(max-width:600px){.calendar-period-menu{width:220px}.calendar-period-menu.month-menu,.calendar-period-menu.year-menu{grid-template-columns:repeat(2,1fr)}.instrument-navigator{grid-template-columns:1fr}.instrument-nav-actions{grid-column:auto}.sale-instrument-row{grid-template-columns:auto 1fr}.sale-instrument-row>*{grid-column:auto!important}}

/* v0.8.0 — compact banking cardex and unified operational calendar */
.kpi-grid,.stats-grid,.stats-grid.cols-5,.mini-metrics{display:flex;flex-wrap:nowrap;gap:10px;overflow-x:auto;scrollbar-width:thin;padding-bottom:2px}.kpi-grid>* ,.stats-grid>* ,.mini-metrics>*{flex:1 1 0;min-width:0}.kpi-card{min-height:94px;padding:12px 13px;border-radius:13px;color:var(--app-text)}a.kpi-card:hover{color:var(--app-text)}.kpi-icon{width:32px;height:32px;border-radius:10px;font-size:14px}.kpi-value{margin-top:4px;font-size:17px}.kpi-foot{font-size:8px}.stat-card{min-height:94px;padding:12px 13px}.stat-card strong{font-size:18px}.mini-metric{padding:9px 11px;color:var(--app-text)}.mini-metric:hover{color:var(--app-text);border-color:#9bbbd7}.mini-metric>span{width:30px;height:30px}.mini-metric b{font-size:11px}
.bank-cardex-head,.bank-page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;border:1px solid #dbe4f0;border-radius:17px;background:linear-gradient(135deg,#0f2747,#154a7c 62%,#1677a6);color:#fff;box-shadow:0 14px 34px rgba(15,39,71,.17)}.bank-cardex-id,.bank-page-head>div{display:flex;align-items:center;gap:13px}.bank-cardex-id>span,.bank-page-head>div>span{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:rgba(255,255,255,.12);font-size:20px}.bank-cardex-head small,.bank-page-head small{color:#b9d1e9;font-size:8px}.bank-cardex-head h2,.bank-page-head h2{margin:1px 0;font-size:19px}.bank-cardex-head p,.bank-page-head p{margin:0;color:#d8e7f4;font-size:10px}.bank-cardex-head p a{color:#fff;font-weight:900}.bank-cardex-actions{display:flex;gap:7px;flex-wrap:wrap}.bank-cardex-actions .btn{color:#fff;border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.1)}.bank-summary-row{display:flex;gap:1px;margin-top:10px;overflow:auto;border:1px solid var(--app-border);border-radius:14px;background:var(--app-border)}.bank-summary-row a{min-width:155px;flex:1;padding:10px 13px;background:var(--app-surface);color:var(--app-text)}.bank-summary-row a:hover{background:color-mix(in srgb,var(--app-primary) 7%,var(--app-surface))}.bank-summary-row small,.bank-summary-row b{display:block}.bank-summary-row small{color:var(--app-muted);font-size:8px}.bank-summary-row b{font-size:11px;margin-top:2px}
.inline-bank-form{display:flex;align-items:end;gap:9px;margin-bottom:12px;padding:11px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-2)}.inline-bank-form.is-collapsed,.inline-check-form.is-collapsed{display:none}.inline-bank-form label{min-width:145px;font-size:9px;font-weight:800}.inline-bank-form label.grow{flex:1}.bank-ledger-list{display:grid;gap:7px}.bank-ledger-item{border:1px solid var(--app-border);border-radius:13px;background:var(--app-surface);overflow:hidden}.bank-ledger-item>summary{display:grid;grid-template-columns:auto 1fr 1fr 1.15fr .65fr auto auto;align-items:center;gap:12px;padding:11px 13px;cursor:pointer;list-style:none}.bank-ledger-item>summary::-webkit-details-marker{display:none}.bank-ledger-item[open]>summary{background:color-mix(in srgb,#1677a6 6%,var(--app-surface));border-bottom:1px solid var(--app-border)}.bank-ledger-item summary small,.bank-ledger-item summary b{display:block}.bank-ledger-item summary small{color:var(--app-muted);font-size:7px}.bank-ledger-item summary b{font-size:10px}.bank-ledger-item summary b i{font-style:normal}.ledger-number{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:#e8f2fb;color:#155b91;font-weight:900}.ledger-open{color:var(--app-muted);transition:.2s}.bank-ledger-item[open] .ledger-open{transform:rotate(180deg)}.bank-ledger-detail{display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:10px;padding:11px;background:var(--app-surface-2)}.bank-ledger-detail>section{padding:11px;border:1px solid var(--app-border);border-radius:11px;background:var(--app-surface)}.bank-ledger-detail h3,.ledger-checks-head h3{display:flex;align-items:center;gap:6px;margin:0 0 9px;font-size:11px}.compact-edit-form,.compact-collection-form{display:grid;grid-template-columns:1fr 1fr;gap:7px}.compact-edit-form label,.compact-collection-form label{font-size:8px;font-weight:800}.compact-edit-form .wide,.compact-edit-form button,.compact-collection-form button{grid-column:1/-1}.bank-ok{padding:10px;border-radius:9px;background:#e9f9f3;color:#0b815e;font-size:9px}.ledger-checks-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.ledger-checks-head h3{margin:0}.inline-check-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:8px;margin:8px 0;border:1px dashed var(--app-border-strong);border-radius:10px}.inline-check-form .btn{grid-column:1/-1}.inline-check-list{display:grid;gap:5px}.inline-check-list>details{border:1px solid var(--app-border);border-radius:9px}.inline-check-list>details>summary{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:7px;padding:8px;cursor:pointer;list-style:none;font-size:8px}.inline-check-list>details>summary::-webkit-details-marker{display:none}.inline-check-list>details>div{padding:0 8px 8px}.inline-empty{margin:8px 0 0;color:var(--app-muted);font-size:8px}.check-inline-actions,.check-inline-actions form{display:flex;align-items:center;gap:6px}.check-inline-actions{justify-content:space-between;flex-wrap:wrap}.check-inline-actions .form-select{min-width:120px}
.simple-link-list{display:grid;gap:6px}.simple-link-list>a{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:10px;padding:10px;border:1px solid var(--app-border);border-radius:10px;color:var(--app-text)}.simple-link-list>a:hover{border-color:#9bbbd7;background:#f5f9fc}.simple-operation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.simple-operation-grid details{border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-2)}.simple-operation-grid summary{padding:12px;cursor:pointer;font-size:10px;font-weight:900}.simple-operation-grid form{display:grid;gap:7px;padding:0 12px 12px}
.bank-page-head{padding:15px 18px}.bank-page-head .btn{white-space:nowrap}.check-link{display:grid;grid-template-columns:auto 1fr;column-gap:8px;color:var(--app-text)}.check-link>span{grid-row:1/3;width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:#e8f2fb;color:#155b91}.check-link small{color:var(--app-muted)}.row-editor{position:relative}.row-editor>summary{list-style:none;white-space:nowrap}.row-editor>summary::-webkit-details-marker{display:none}.row-editor-popover{position:absolute;z-index:70;left:0;top:calc(100% + 6px);width:420px;padding:12px;border:1px solid var(--app-border);border-radius:13px;background:var(--app-surface);box-shadow:var(--app-shadow-lg)}.table-shell:has(.row-editor[open]),.table-responsive:has(.row-editor[open]){overflow:visible}.row-editor-popover label{font-size:8px;font-weight:800}
@media(max-width:1100px){.bank-ledger-detail{grid-template-columns:1fr 1fr}.ledger-checks{grid-column:1/-1}.bank-ledger-item>summary{grid-template-columns:auto repeat(3,1fr) auto auto}.bank-ledger-item>summary>span:nth-of-type(5){display:none}}
@media(max-width:767px){.kpi-grid>* ,.stats-grid>* ,.mini-metrics>*{flex:0 0 175px}.bank-cardex-head,.bank-page-head{align-items:flex-start;flex-direction:column}.bank-cardex-actions{width:100%}.bank-ledger-item>summary{grid-template-columns:auto 1fr auto}.bank-ledger-item>summary>span:nth-of-type(3),.bank-ledger-item>summary>span:nth-of-type(4),.bank-ledger-item>summary>span:nth-of-type(5){display:none}.bank-ledger-detail{grid-template-columns:1fr}.ledger-checks{grid-column:auto}.inline-bank-form{align-items:stretch;flex-direction:column}.inline-bank-form label{min-width:0}.simple-operation-grid{grid-template-columns:1fr}.row-editor-popover{position:fixed;inset:80px 12px auto;width:auto;max-height:calc(100vh - 100px);overflow:auto}.bank-check-table{min-width:900px}}
.customer-bank-strip{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:1px;overflow:hidden;border:1px solid var(--app-border);border-radius:14px;background:var(--app-border)}.customer-bank-strip>a{display:flex;flex-direction:column;justify-content:center;padding:11px 14px;background:var(--app-surface);color:var(--app-text)}.customer-bank-strip>a:hover{background:#f5f9fc}.customer-bank-strip small{color:var(--app-muted);font-size:8px}.customer-bank-strip b{font-size:11px}.customer-bank-main{flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:10px}.customer-bank-main h3{margin:0;font-size:13px}.customer-bank-main p{margin:0;color:var(--app-muted);font-size:8px}.case-file-list{display:grid;gap:7px}.case-file-row{display:grid;grid-template-columns:auto 1fr 1.2fr 1.2fr .8fr .9fr auto;align-items:center;gap:12px;padding:11px;border:1px solid var(--app-border);border-radius:12px;color:var(--app-text);background:var(--app-surface)}.case-file-row:hover{border-color:#9bbbd7;background:#f7fafc;transform:translateX(-2px)}.case-file-row small,.case-file-row b,.case-file-row em{display:block}.case-file-row small{color:var(--app-muted);font-size:7px}.case-file-row b{font-size:10px}.case-file-row em{font-style:normal;color:var(--app-muted);font-size:7px}.case-file-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#e8f2fb;color:#155b91}.case-file-arrow{color:#155b91}@media(max-width:900px){.customer-bank-strip{grid-template-columns:1.4fr repeat(3,minmax(150px,1fr));overflow:auto}.case-file-row{grid-template-columns:auto 1fr 1fr 1fr auto}.case-file-row>span:nth-of-type(5),.case-file-row>span:nth-of-type(6){display:none}}@media(max-width:600px){.customer-bank-strip{display:flex}.customer-bank-strip>a{min-width:155px}.customer-bank-strip .customer-bank-main{min-width:230px}.case-file-row{grid-template-columns:auto 1fr auto}.case-file-row>span:nth-of-type(3),.case-file-row>span:nth-of-type(4){display:none}}

/* v0.8.2: visible branch context and compact daily action center */
.topbar-branch{display:block}.topbar-branch .branch-trigger{display:flex}.action-center{display:flex;align-items:stretch;gap:8px;margin:0 0 16px;padding:8px;border:1px solid var(--app-border);border-radius:15px;background:var(--app-surface);box-shadow:var(--app-shadow-sm);overflow-x:auto}.action-center-title{min-width:185px;display:flex;align-items:center;gap:10px;padding:7px 9px}.action-center-title>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:#fff;background:linear-gradient(135deg,var(--app-secondary),var(--app-primary))}.action-center-title>div,.action-center>a>span:nth-child(2){display:grid}.action-center-title b,.action-center>a b{font-size:10px}.action-center-title small,.action-center>a small{font-size:8px;color:var(--app-muted)}.action-center>a{min-width:205px;flex:1;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:8px 10px;border:1px solid var(--app-border);border-radius:11px;color:var(--app-text);background:var(--app-surface-2)}.action-center>a:hover{border-color:rgba(var(--app-primary-rgb),.3);background:rgba(var(--app-primary-rgb),.04)}.action-center>a>.app-icon{width:8px;color:var(--app-muted)}.action-count{width:33px;height:33px;display:grid;place-items:center;border-radius:10px;font-size:12px;font-weight:900}.action-count.warning{color:#a26608;background:#fff3d8}.action-count.danger{color:#bd3852;background:#ffe9ed}.action-count.info{color:#256ac5;background:#e8f2ff}
@media(max-width:767px){.topbar-branch .branch-trigger{display:flex;width:42px;height:42px;padding:0;justify-content:center}.topbar-branch .branch-trigger span,.topbar-branch .branch-trigger .app-icon:last-child{display:none}.topbar-actions{gap:6px}.topbar-button{width:39px;height:39px}.topbar-create{width:39px;height:39px;padding:0;justify-content:center}.action-center{margin-inline:-2px}.action-center-title{min-width:165px}.action-center>a{min-width:190px}}
/* v0.8.3 live financial notifications */
.notification-button.has-unread{color:#dc2626}.notification-button.has-unread>span{background:#dc2626!important;color:#fff!important}.notification-button.live-flash{animation:notification-ring .65s ease-in-out 4}.live-notification-toast{position:fixed;z-index:1090;left:1.25rem;bottom:1.25rem;width:min(420px,calc(100vw - 2rem));display:flex;gap:.8rem;align-items:center;padding:1rem;border-radius:16px;background:var(--bs-body-bg);color:var(--bs-body-color);box-shadow:0 18px 60px rgba(15,23,42,.25);border:1px solid rgba(220,38,38,.3);text-decoration:none;transform:translateY(130%);opacity:0;transition:.3s}.live-notification-toast.show{transform:none;opacity:1}.live-notification-toast small{display:block;color:var(--bs-secondary-color);margin-top:.25rem}.live-notification-check{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:50%;background:#dc2626;color:#fff;font-size:1.35rem;font-weight:900}.live-notification-toast.success .live-notification-check{background:#16a34a}.live-notification-toast.warning .live-notification-check{background:#ea580c}@keyframes notification-ring{0%,100%{transform:rotate(0)}25%{transform:rotate(12deg);filter:drop-shadow(0 0 5px #dc2626)}75%{transform:rotate(-12deg)}}
@media(max-width:576px){.live-notification-toast{left:1rem;bottom:1rem}}

/* v0.8.9: persistent branch context, clearer navigation and interactive dashboard */
.nav-group-icon{width:27px;height:27px;display:grid;place-items:center;flex:0 0 27px;border-radius:8px;color:#c9ccef;background:rgba(255,255,255,.07)}
.nav-section.is-open>.nav-section-toggle .nav-group-icon,.nav-section-toggle:hover .nav-group-icon{color:#fff;background:rgba(var(--app-primary-rgb),.35)}
.sidebar-collapsed .nav-group-icon{display:grid}
.dashboard-hero-live{position:relative;overflow:hidden}.dashboard-hero-live:after{content:"";position:absolute;inset:auto -45px -80px auto;width:190px;height:190px;border:34px solid rgba(255,255,255,.08);border-radius:50%}
.dashboard-live{display:inline-flex;align-items:center;gap:7px;margin-bottom:7px;padding:5px 9px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.09);font-size:9px;font-weight:800}.dashboard-live i{width:7px;height:7px;border-radius:50%;background:#6ee7b7;box-shadow:0 0 0 5px rgba(110,231,183,.13);animation:dashboard-live-pulse 2s infinite}
@keyframes dashboard-live-pulse{50%{box-shadow:0 0 0 9px rgba(110,231,183,0)}}
.dashboard-analytics{align-items:stretch;margin-top:16px}.dashboard-analytics>.panel-card{min-height:430px}
.interactive-sales-card{position:relative}.chart-toolbar{display:flex;gap:7px;flex-wrap:wrap}.chart-legend{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid var(--app-border);border-radius:9px;background:var(--app-surface);color:var(--app-muted);font:inherit;font-size:9px;font-weight:800;cursor:pointer;opacity:.45}.chart-legend.is-active{opacity:1;border-color:rgba(var(--app-primary-rgb),.22);background:var(--app-surface-2)}
.bar-chart{--chart-plot-height:210px;display:grid;grid-template-columns:repeat(6,minmax(58px,1fr));align-items:end;gap:10px;margin-top:8px;padding:18px 12px 0;border-bottom:1px solid var(--app-border);background:repeating-linear-gradient(to bottom,transparent 0,transparent 52px,var(--app-border) 53px);overflow-x:auto}
.bar-group{display:flex;flex-direction:column;gap:7px;min-width:0}.bar-pair{height:var(--chart-plot-height);flex:0 0 var(--chart-plot-height);display:flex;align-items:flex-end;justify-content:center;gap:5px}.chart-bar{display:block;flex:0 1 25px;width:min(25px,42%);min-height:0;padding:0;border:0;border-radius:8px 8px 3px 3px;cursor:pointer;transition:height .35s ease,transform .16s ease,opacity .18s ease,filter .18s ease}.chart-bar:not([style*="height:0.00%"]){min-height:5px}.chart-bar.sales{background:linear-gradient(180deg,var(--app-primary),var(--app-primary-strong));box-shadow:0 8px 18px rgba(var(--app-primary-rgb),.16)}.chart-bar.received{background:linear-gradient(180deg,#20bf8f,#0f9f73);box-shadow:0 8px 18px rgba(15,159,115,.16)}.chart-bar:hover,.chart-bar:focus-visible{transform:scaleX(1.13) translateY(-3px);filter:saturate(1.14);outline:0}.bar-group>span{text-align:center;color:var(--app-muted);font-size:8px;white-space:nowrap}.series-hidden{opacity:.08!important;pointer-events:none}.chart-empty-state{min-height:245px;display:grid;place-items:center;align-content:center;gap:8px;text-align:center;color:var(--app-muted);border:1px dashed var(--app-border-strong);border-radius:13px;background:var(--app-surface-2)}.chart-empty-state .app-icon{width:34px;height:34px;color:var(--app-primary)}.chart-empty-state b{color:var(--app-text);font-size:11px}.chart-empty-state span{font-size:9px}
.chart-tooltip{position:absolute;z-index:5;min-width:145px;display:grid;gap:2px;padding:9px 11px;border:1px solid rgba(var(--app-primary-rgb),.18);border-radius:11px;background:var(--app-text);color:var(--app-surface);box-shadow:var(--app-shadow);transform:translate(-50%,-100%);pointer-events:none}.chart-tooltip b,.chart-tooltip strong{font-size:10px}.chart-tooltip span{font-size:8px;opacity:.72}.chart-tooltip[hidden]{display:none}
.chart-data-table{display:grid;margin-top:14px;border:1px solid var(--app-border);border-radius:11px;overflow:hidden;font-size:8px}.chart-data-table>[role=row]{display:grid;grid-template-columns:72px repeat(6,minmax(70px,1fr));transition:opacity .18s}.chart-data-table>[role=row]+[role=row]{border-top:1px solid var(--app-border)}.chart-data-table b,.chart-data-table span{padding:7px 8px;white-space:nowrap;text-align:center}.chart-data-table b{background:var(--app-surface-2);text-align:right}.chart-data-table span+span{border-right:1px solid var(--app-border)}
.installment-status-card{display:flex;flex-direction:column}.installment-status-card .donut-wrap{flex:1}.interactive-donut{overflow:visible}.donut-segment{cursor:pointer;transition:opacity .18s ease,stroke-width .18s ease,filter .18s ease}.donut-segment:hover,.donut-segment:focus{stroke-width:22;filter:drop-shadow(0 5px 6px rgba(20,24,45,.14));outline:0}.donut-segment.is-muted{opacity:.18}.donut-center{max-width:110px;text-align:center}.donut-center small{line-height:1.5}.donut-list{display:grid;grid-template-columns:1fr 1fr;gap:7px}.donut-list-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;width:100%;padding:9px 10px;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface-2);color:var(--app-text);font:inherit;font-size:9px;text-align:right;transition:.18s}.donut-list-item:hover,.donut-list-item.is-active{border-color:rgba(var(--app-primary-rgb),.3);transform:translateY(-2px);box-shadow:var(--app-shadow-sm)}.donut-list-item i{width:8px;height:8px;border-radius:50%}
.sms-pattern-tools{display:grid;grid-template-columns:1fr 230px;gap:10px;margin:0 0 14px}.sms-pattern-tools .filter-field{min-width:0}
@media(max-width:767px){.nav-group-icon{width:23px;height:23px;flex-basis:23px}.dashboard-analytics>.panel-card{min-height:0}.bar-chart{--chart-plot-height:170px;grid-template-columns:repeat(6,minmax(52px,1fr));gap:4px;padding-inline:2px}.chart-bar{width:min(18px,43%)}.chart-data-table{overflow-x:auto}.chart-data-table>[role=row]{min-width:610px}.installment-status-card .donut-wrap{margin-block:5px}.sms-pattern-tools{grid-template-columns:1fr}.dashboard-lists{gap:14px}.topbar-branch .branch-trigger{width:42px;padding:0;justify-content:center}.topbar-branch .branch-trigger>span,.topbar-branch .branch-trigger>svg:last-child{display:none}.topbar-branch .branch-menu{max-width:calc(100vw - 24px)}}

/* v0.9.1 site visual editor and testimonial moderation */
.form-section fieldset{padding:14px;border:1px solid var(--app-border);border-radius:14px;background:var(--app-surface-2)}.form-section fieldset legend{float:none;width:auto;margin:0 0 10px;padding:0 7px;font-size:11px;font-weight:900;color:var(--app-primary)}.widget-media-preview{display:flex;align-items:center;gap:12px;margin-bottom:12px}.widget-media-preview img{width:130px;height:76px;object-fit:cover;border-radius:11px;border:1px solid var(--app-border)}.testimonial-admin-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.testimonial-admin-card{padding:16px;border:1px solid var(--app-border);border-radius:16px;background:var(--app-surface-2)}.testimonial-admin-head{display:flex;align-items:center;gap:10px}.testimonial-admin-head>div:nth-child(2){display:grid;flex:1}.testimonial-admin-head small{color:var(--app-muted)}.testimonial-admin-avatar{width:48px;height:48px;flex:0 0 48px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:rgba(var(--app-primary-rgb),.1);color:var(--app-primary)}.testimonial-admin-avatar img{width:100%;height:100%;object-fit:cover}.testimonial-admin-card blockquote{margin:14px 0;padding:12px;border-radius:12px;background:var(--app-surface);line-height:1.9}.testimonial-stars{color:#e99b18;letter-spacing:1px}.testimonial-stars i{color:#d5d8df;font-style:normal}@media(max-width:900px){.testimonial-admin-list{grid-template-columns:1fr}}@media(max-width:767px){.widget-media-preview{align-items:flex-start;flex-direction:column}.testimonial-admin-head{align-items:flex-start}.testimonial-admin-head>.status{display:none}}

/* v0.9.7 menu-only notification indicator */
.nav-notification-badge{display:grid;place-items:center;min-width:22px;height:22px;margin-right:auto;padding:0 6px;border:2px solid rgba(255,255,255,.92);border-radius:99px;background:#dc2626;color:#fff;font-size:9px;font-weight:950;line-height:1;box-shadow:0 0 0 3px rgba(220,38,38,.14)}.nav-notification-badge[hidden]{display:none!important}.nav-item.nav-notification-unread{color:#ff8b98}.nav-item.nav-notification-unread .nav-icon{color:#ff5b6d;animation:notification-menu-pulse 1.8s ease-in-out infinite}.sidebar-collapsed .nav-notification-badge{position:absolute;top:3px;left:2px;min-width:18px;height:18px;padding:0 4px;border-width:1px;font-size:8px}@keyframes notification-menu-pulse{0%,70%,100%{transform:scale(1);filter:none}80%{transform:scale(1.12);filter:drop-shadow(0 0 5px var(--menu-badge-shadow,rgba(239,68,68,.72)))}90%{transform:scale(.98)}}@media(prefers-reduced-motion:reduce){.nav-item.nav-notification-unread .nav-icon{animation:none}}
.nav-group-badge{display:grid;place-items:center;min-width:20px;height:20px;margin-right:auto;padding:0 5px;border-radius:99px;background:#dc2626;color:#fff;font-size:8px;font-weight:950;box-shadow:0 0 0 3px rgba(220,38,38,.13)}.nav-group-badge[hidden]{display:none!important}.nav-section-toggle.nav-notification-unread .nav-group-icon{color:#ff6b78;animation:notification-menu-pulse 1.8s ease-in-out infinite}.sidebar-collapsed .nav-group-badge{position:absolute;top:2px;left:2px;min-width:17px;height:17px;padding:0 3px;font-size:7px}@media(prefers-reduced-motion:reduce){.nav-section-toggle.nav-notification-unread .nav-group-icon{animation:none}}

/* v0.9.17: collapsed navigation keeps semantic icons and removes disclosure arrows. */
.nav-section-toggle{position:relative}
.sidebar-collapsed .nav-section-arrow-box{display:none}

/* v0.9.10 — instant dashboard shell while heavy analytics load asynchronously */
.dashboard-fast-loader{display:grid;gap:18px;min-height:460px}.dashboard-fast-head{display:flex;align-items:center;gap:12px;padding:18px 20px;border:1px solid var(--app-border);border-radius:var(--app-radius);background:var(--app-surface)}.dashboard-fast-head div{display:grid;gap:3px}.dashboard-fast-head b{font-size:14px}.dashboard-fast-head small{color:var(--app-muted);font-size:10px}.dashboard-fast-spinner{width:25px;height:25px;border:3px solid rgba(var(--app-primary-rgb),.16);border-top-color:var(--app-primary);border-radius:50%;animation:dashboard-fast-spin .8s linear infinite}.dashboard-skeleton-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.dashboard-skeleton-grid i,.dashboard-skeleton-panels i{display:block;min-height:128px;border:1px solid var(--app-border);border-radius:var(--app-radius);background:linear-gradient(100deg,var(--app-surface) 25%,var(--app-surface-2) 42%,var(--app-surface) 58%);background-size:220% 100%;animation:dashboard-skeleton 1.25s ease-in-out infinite}.dashboard-skeleton-panels{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(340px,.85fr);gap:18px}.dashboard-skeleton-panels i{min-height:270px}@keyframes dashboard-fast-spin{to{transform:rotate(360deg)}}@keyframes dashboard-skeleton{0%{background-position:100% 0}100%{background-position:-100% 0}}@media(max-width:900px){.dashboard-skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-skeleton-panels{grid-template-columns:1fr}}@media(max-width:520px){.dashboard-skeleton-grid{grid-template-columns:1fr 1fr;gap:10px}.dashboard-skeleton-grid i{min-height:96px}.dashboard-fast-head{padding:14px}}@media(prefers-reduced-motion:reduce){.dashboard-fast-spinner,.dashboard-skeleton-grid i,.dashboard-skeleton-panels i{animation:none}}

/* v0.9.11 — contextual colors and exact attention rows */
/* v0.9.12 — unread action rows are stronger; viewed but unresolved rows stay softly visible */
.table tbody tr.attention-item.attention-seen>td:first-child:after{content:"دیده‌شده · هنوز باز";display:inline-flex;margin:5px 7px 0 0;padding:3px 7px;border:1px solid color-mix(in srgb,var(--attention-color) 18%,transparent);border-radius:99px;color:color-mix(in srgb,var(--attention-color) 74%,var(--app-muted));background:transparent;font-size:7px;font-weight:850;white-space:nowrap}
.attention-item{--attention-color:#64748b;--attention-new-bg:#f1f5f9;--attention-seen-bg:#f8fafc}.attention-item.attention-installments{--attention-color:#e24c63;--attention-new-bg:#fff0f3;--attention-seen-bg:#fff8f9}.attention-item.attention-collections{--attention-color:#d88916;--attention-new-bg:#fff7e8;--attention-seen-bg:#fffbf4}.attention-item.attention-checks{--attention-color:#2786c0;--attention-new-bg:#eaf7ff;--attention-seen-bg:#f5fbff}.attention-item.attention-receipts{--attention-color:#596fd6;--attention-new-bg:#eef1ff;--attention-seen-bg:#f8f9ff}.attention-item.attention-payment_reviews{--attention-color:#8755c8;--attention-new-bg:#f5edff;--attention-seen-bg:#fbf8ff}.attention-item.attention-wallets{--attention-color:#139b72;--attention-new-bg:#eafaf4;--attention-seen-bg:#f5fcf9}.attention-item.attention-products{--attention-color:#df7628;--attention-new-bg:#fff2e9;--attention-seen-bg:#fff9f5}.attention-item.attention-testimonials{--attention-color:#cf5c91;--attention-new-bg:#fff0f7;--attention-seen-bg:#fff8fb}.attention-item.attention-operations{--attention-color:#62758d;--attention-new-bg:#eef3f8;--attention-seen-bg:#f8fafc}.table tbody tr.attention-item.attention-unread>*{background:var(--attention-new-bg)!important;border-block-color:color-mix(in srgb,var(--attention-color) 32%,var(--app-border))}.table tbody tr.attention-item.attention-seen>*{background:var(--attention-seen-bg)!important}.table tbody tr.attention-item.attention-unread>td:first-child{box-shadow:inset -4px 0 var(--attention-color)}.table tbody tr.attention-item.attention-seen>td:first-child{box-shadow:inset -2px 0 color-mix(in srgb,var(--attention-color) 55%,transparent)}.table tbody tr.attention-item.attention-unread>td:first-child:after{content:"جدید · نیازمند بررسی";display:inline-flex;margin:5px 7px 0 0;padding:3px 7px;border:1px solid color-mix(in srgb,var(--attention-color) 32%,transparent);border-radius:99px;color:var(--attention-color);background:color-mix(in srgb,var(--attention-color) 10%,#fff);font-size:7px;font-weight:950;white-space:nowrap}.table tbody tr.attention-item.attention-seen{opacity:.92}.attention-item.attention-unread .attention-chip{box-shadow:0 0 0 3px color-mix(in srgb,var(--attention-color) 14%,transparent)}html[data-bs-theme="dark"] .table tbody tr.attention-item.attention-unread>*{background:color-mix(in srgb,var(--attention-color) 15%,var(--app-surface))!important}html[data-bs-theme="dark"] .table tbody tr.attention-item.attention-seen>*{background:color-mix(in srgb,var(--attention-color) 6%,var(--app-surface))!important}
.nav-item[data-menu-badge-key="installments"],[data-menu-group-tone="installments"]{--menu-badge:#e24c63;--menu-badge-soft:#ff9aaa;--menu-badge-shadow:rgba(226,76,99,.2)}.nav-item[data-menu-badge-key="collections"],[data-menu-group-tone="collections"]{--menu-badge:#d88916;--menu-badge-soft:#ffc66b;--menu-badge-shadow:rgba(216,137,22,.2)}.nav-item[data-menu-badge-key="checks"],[data-menu-group-tone="checks"]{--menu-badge:#2786c0;--menu-badge-soft:#77c8f5;--menu-badge-shadow:rgba(39,134,192,.22)}.nav-item[data-menu-badge-key="receipts"],[data-menu-group-tone="receipts"]{--menu-badge:#596fd6;--menu-badge-soft:#9cacf6;--menu-badge-shadow:rgba(89,111,214,.22)}.nav-item[data-menu-badge-key="payment_reviews"],[data-menu-group-tone="payment_reviews"]{--menu-badge:#8755c8;--menu-badge-soft:#c29aef;--menu-badge-shadow:rgba(135,85,200,.22)}.nav-item[data-menu-badge-key="wallets"],[data-menu-group-tone="wallets"]{--menu-badge:#139b72;--menu-badge-soft:#62d5b2;--menu-badge-shadow:rgba(19,155,114,.22)}.nav-item[data-menu-badge-key="products"],[data-menu-group-tone="products"]{--menu-badge:#df7628;--menu-badge-soft:#f4ad77;--menu-badge-shadow:rgba(223,118,40,.22)}.nav-item[data-menu-badge-key="testimonials"],[data-menu-group-tone="testimonials"]{--menu-badge:#cf5c91;--menu-badge-soft:#ef9fc4;--menu-badge-shadow:rgba(207,92,145,.22)}.nav-item[data-menu-badge-key="operations"],[data-menu-group-tone="operations"]{--menu-badge:#62758d;--menu-badge-soft:#aab8c8;--menu-badge-shadow:rgba(98,117,141,.22)}.nav-item .nav-notification-badge,.nav-group-badge{background:var(--menu-badge,#dc2626);box-shadow:0 0 0 3px var(--menu-badge-shadow,rgba(220,38,38,.14))}.nav-item.nav-notification-unread{color:var(--menu-badge-soft,#ff8b98)}.nav-item.nav-notification-unread .nav-icon,.nav-section-toggle.nav-notification-unread .nav-group-icon{color:var(--menu-badge-soft,#ff6b78);filter:drop-shadow(0 0 4px var(--menu-badge-shadow,rgba(239,68,68,.4)))}.attention-explainer{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid;border-radius:14px}.attention-explainer>svg{width:26px;height:26px;flex:none}.attention-explainer>div{display:grid;gap:3px;flex:1}.attention-explainer b{font-size:12px}.attention-explainer span{font-size:10px}.attention-explainer a{font-size:10px;font-weight:800;white-space:nowrap}.attention-explainer.attention-checks{color:#155f8f;background:#edf8ff;border-color:#bcdff3}.table tbody tr.attention-row.attention-checks>*{background:#f0f9ff!important;border-block-color:#c9e7f7}.table tbody tr.attention-row.attention-checks>td:first-child{box-shadow:inset -4px 0 #2786c0}.check-link>span{grid-row:1/4}.attention-chip{display:inline-flex;width:max-content;padding:3px 7px;border-radius:99px;font-style:normal;font-size:8px;font-weight:900}.attention-chip.attention-checks{grid-column:2;color:#12618f;background:#d8f0fd;border:1px solid #a9d8f2}html[data-bs-theme="dark"] .attention-explainer.attention-checks{color:#9ddaff;background:rgba(39,134,192,.12);border-color:rgba(39,134,192,.35)}html[data-bs-theme="dark"] .table tbody tr.attention-row.attention-checks>*{background:rgba(39,134,192,.09)!important}@media(max-width:600px){.attention-explainer{align-items:flex-start;flex-wrap:wrap}.attention-explainer a{margin-right:38px}}

/* v0.9.13 — commercial reports, unmistakable check attention, navigation feedback */
.attention-item.attention-checks{--attention-color:#d97706;--attention-new-bg:#fff1d6;--attention-seen-bg:#fff8eb}.nav-item[data-menu-badge-key="checks"],[data-menu-group-tone="checks"]{--menu-badge:#d97706;--menu-badge-soft:#ffbd59;--menu-badge-shadow:rgba(217,119,6,.26)}.attention-explainer.attention-checks{color:#8a4b05;background:#fff5df;border-color:#f2c26b}.attention-chip.attention-checks{color:#8a4b05;background:#ffe2a8;border-color:#edae3b}html[data-bs-theme="dark"] .attention-explainer.attention-checks{color:#ffd18a;background:rgba(217,119,6,.14);border-color:rgba(245,158,11,.42)}

/* v0.9.20 stable.2: explicit semantic colors even if vendor variables are stale. */
.btn-primary{color:#fff;background-color:var(--app-primary);border-color:var(--app-primary)}
.btn-primary:hover,.btn-primary:focus,.btn-primary:active{color:#fff;background-color:var(--app-primary-strong);border-color:var(--app-primary-strong)}
.btn-success{color:#fff;background-color:var(--app-success);border-color:var(--app-success)}
.btn-danger{color:#fff;background-color:var(--app-danger);border-color:var(--app-danger)}
.btn-warning{color:#231b08;background-color:var(--app-warning);border-color:var(--app-warning)}
.dashboard-hero,.dashboard-hero-live{color:#fff;background:linear-gradient(125deg,#292c57 0%,var(--app-primary) 56%,var(--app-secondary) 100%)}
.dashboard-hero .hero-actions .btn{color:#fff;background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.24)}

/* v0.9.20 stable.3: lightweight header search and invoice identity. */
.panel-search{position:relative;width:min(420px,34vw);z-index:1060}.panel-search-field{height:42px;display:flex;align-items:center;gap:9px;padding:0 12px;border:1px solid var(--app-border);border-radius:13px;background:var(--app-surface-2);color:var(--app-muted);transition:.18s}.panel-search-field:focus-within{border-color:rgba(var(--app-primary-rgb),.38);background:var(--app-surface);box-shadow:0 0 0 3px rgba(var(--app-primary-rgb),.08)}.panel-search-field input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--app-text);font:inherit;font-size:11px}.panel-search-field kbd{padding:2px 6px;border:1px solid var(--app-border);border-radius:6px;background:var(--app-surface);color:var(--app-muted);font:inherit;font-size:8px}.panel-search-spinner{width:14px;height:14px;flex:none;border:2px solid var(--app-border-strong);border-top-color:var(--app-primary);border-radius:50%;animation:button-spin .7s linear infinite}.panel-search-results{position:absolute;inset:calc(100% + 8px) 0 auto;width:min(560px,calc(100vw - 32px));max-height:min(65vh,540px);overflow:auto;padding:8px;border:1px solid var(--app-border);border-radius:16px;background:var(--app-surface);box-shadow:var(--app-shadow-lg)}.panel-search-results[hidden]{display:none}.panel-search-results section+section{margin-top:5px;padding-top:5px;border-top:1px solid var(--app-border)}.panel-search-group{display:block;padding:5px 9px;color:var(--app-muted);font-size:8px}.panel-search-results a{display:flex;align-items:center;gap:10px;padding:9px;border-radius:11px;color:var(--app-text)}.panel-search-results a:hover,.panel-search-results a.is-active{background:var(--app-surface-2);color:var(--app-primary)}.panel-search-mark{width:32px;height:32px;display:grid;place-items:center;flex:none;border-radius:10px;background:rgba(var(--app-primary-rgb),.09);color:var(--app-primary);font-weight:900}.panel-search-results a>span:last-child{min-width:0;display:grid}.panel-search-results a b{font-size:10px}.panel-search-results a small{overflow:hidden;color:var(--app-muted);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.panel-search-hint{padding:24px;text-align:center;color:var(--app-muted);font-size:10px}
.invoice-brand-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.signature-preview img{object-fit:contain!important;background:#fff}.invoice-logo{width:58px;height:58px;object-fit:contain;border-radius:12px;background:#fff}.invoice-signature{width:145px;height:62px;object-fit:contain;order:2}.invoice-signature-block,.receipt-footer>.invoice-signature-block{display:grid;grid-auto-flow:row;justify-items:center;gap:3px;min-width:170px;text-align:center}.invoice-signature-block small{order:1;font-size:8px;color:var(--app-muted)}
.receipt-bank-brand .invoice-brand-mark{overflow:hidden;background:#fff;border:1px solid var(--app-border)}.receipt-bank-brand .invoice-brand-mark .invoice-logo{width:100%;height:100%;border-radius:0}.invoice-print-brand{display:flex;align-items:center;gap:12px}.invoice-print-brand .invoice-logo{width:62px;height:62px;border:1px solid #ddd}.cardex-print-sheet footer{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.cardex-print-sheet footer>span{flex:1;text-align:right}.sales-invoice-print{direction:rtl;padding:6px;color:#111;background:#fff}.sales-invoice-print header{display:flex;justify-content:space-between;gap:24px;padding-bottom:14px;border-bottom:2px solid #222}.sales-invoice-print h1{margin:0 0 4px;font-size:18px}.sales-invoice-print p,.sales-invoice-print span{display:block;margin:2px 0;font-size:9px}.sales-invoice-number{text-align:left}.sales-invoice-number b{display:block;font-size:17px}.sales-invoice-customer{display:grid;grid-template-columns:repeat(3,1fr);margin:14px 0;border:1px solid #aaa}.sales-invoice-customer>div{padding:8px;border-left:1px solid #ddd;border-bottom:1px solid #ddd}.sales-invoice-customer>div:last-child{grid-column:span 3}.sales-invoice-customer small,.sales-invoice-customer b{display:block}.sales-invoice-customer small{font-size:8px;color:#555}.sales-invoice-customer b{font-size:10px}.sales-invoice-table{width:100%;border-collapse:collapse;font-size:9px}.sales-invoice-table th,.sales-invoice-table td{padding:7px 6px;border:1px solid #888;text-align:center}.sales-invoice-table th{background:#eee}.sales-invoice-table td:nth-child(2){text-align:right}.sales-invoice-table td small{display:block;color:#555}.sales-invoice-summary{display:grid;grid-template-columns:repeat(5,1fr);margin-top:12px;border:1px solid #999}.sales-invoice-summary>div{padding:8px;border-left:1px solid #ccc}.sales-invoice-summary small,.sales-invoice-summary b{display:block}.sales-invoice-summary small{font-size:8px;color:#555}.sales-invoice-summary b{font-size:10px}.sales-invoice-print footer{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;min-height:90px;margin-top:16px;padding-top:12px;border-top:1px dashed #999}.sales-invoice-print footer>div:first-child{display:grid;gap:3px;font-size:9px}.invoice-signature-placeholder{min-width:180px;padding:26px 8px 6px;border-bottom:1px solid #777;text-align:center;font-size:9px}
@media(max-width:767px){.panel-search{position:static;width:auto}.panel-search-field{width:42px;padding:0;justify-content:center}.panel-search-field input,.panel-search-field kbd,.panel-search-spinner{display:none}.panel-search.is-open{position:fixed;inset:10px 10px auto;z-index:1080}.panel-search.is-open .panel-search-field{width:100%;padding:0 12px}.panel-search.is-open .panel-search-field input,.panel-search.is-open .panel-search-spinner{display:block}.panel-search.is-open .panel-search-results{width:100%}.invoice-brand-settings{grid-template-columns:1fr}}
@media print{body:has(.sales-invoice-print) .app-content>*:not(.sales-invoice-print){display:none!important}.sales-invoice-print{display:block!important}.sales-invoice-print *{font-family:var(--app-font-family),Tahoma,sans-serif!important}.sales-invoice-table tr{page-break-inside:avoid}.invoice-logo,.invoice-signature{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
.report-filter{position:sticky;top:70px;z-index:7}.report-presets{display:flex;gap:6px;margin-right:auto}.report-presets a{padding:7px 10px;border:1px solid var(--app-border);border-radius:9px;color:var(--app-muted);font-size:9px;font-weight:800}.report-export-center{display:flex;align-items:center;justify-content:space-between;gap:18px;border-color:rgba(var(--app-primary-rgb),.2);background:linear-gradient(135deg,var(--app-surface),rgba(var(--app-primary-rgb),.055))}.report-export-center>div:first-child{display:flex;align-items:center;gap:12px}.report-export-center h2{margin:0 0 3px;font-size:14px}.report-export-center p{margin:0;color:var(--app-muted);font-size:9px}.report-export-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:rgba(var(--app-primary-rgb),.1);color:var(--app-primary)}.report-export-actions{display:flex;gap:9px}.report-export-link{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;min-width:205px;padding:11px 13px;border:1px solid;border-radius:12px;transition:.18s}.report-export-link>svg{width:20px;height:20px}.report-export-link>svg:last-child{width:13px;height:13px}.report-export-link span{display:grid}.report-export-link small{font-size:8px;opacity:.72}.report-export-link.excel{color:#087c55;background:#edfbf5;border-color:#b7e7d3}.report-export-link.pdf{color:#b42332;background:#fff1f2;border-color:#f4c5ca}.report-export-link:hover{transform:translateY(-2px);box-shadow:var(--app-shadow-sm)}.report-export-denied{padding:10px 12px;border-radius:10px;background:var(--app-surface-2);color:var(--app-muted);font-size:9px}.mini-metric-link{color:inherit;text-decoration:none}.mini-metric-link:hover{border-color:rgba(var(--app-primary-rgb),.28);transform:translateY(-2px)}
.app-navigation-progress{position:fixed;z-index:99999;top:0;right:0;width:0;height:3px;opacity:0;background:linear-gradient(90deg,var(--app-primary),#22c55e);box-shadow:0 0 9px rgba(var(--app-primary-rgb),.45);transition:width .25s ease,opacity .2s}.app-navigation-progress.is-loading{width:72%;opacity:1}.app-navigation-progress.is-done{width:100%;opacity:0}
@media(max-width:900px){.report-export-center{align-items:stretch;flex-direction:column}.report-export-actions{display:grid;grid-template-columns:1fr 1fr}.report-export-link{min-width:0}}@media(max-width:600px){.report-filter{position:static}.report-presets{width:100%;margin:0}.report-export-actions{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.report-export-link,.app-navigation-progress{transition:none}}

/* v0.9.20 stable — settings-driven branding without inline styles */
.brand-mark img,.login-brand .brand-mark img{width:100%;height:100%;object-fit:contain;border-radius:inherit}.brand-logo-setting{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:16px;padding:15px;border:1px solid var(--app-border);border-radius:14px;background:var(--app-surface-2)}.brand-logo-preview{width:92px;height:92px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--app-border);border-radius:20px;background:var(--app-surface);color:var(--app-primary);font-size:30px;font-weight:950}.brand-logo-preview img{width:100%;height:100%;object-fit:contain}.brand-color-input{min-height:48px;padding:5px}.login-brand .brand-mark{overflow:hidden}@media(max-width:600px){.brand-logo-setting{grid-template-columns:1fr}.brand-logo-preview{width:76px;height:76px}}
