:root{--bg:#f3f4f6;--panel:#fff;--ink:#111827;--muted:#6b7280;--line:#e5e7eb;--ok:#166534;--bad:#b91c1c}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,Arial,sans-serif;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}.hidden{display:none!important}.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:0 6px 24px rgba(0,0,0,.04)}.login{min-height:100vh;display:grid;place-items:center;padding:16px}.login-card{width:min(430px,100%)}.brand{font-size:36px;font-weight:900}.login-card label{margin:14px 0}.primary{background:#111827;color:#fff;border-color:#111827}button{padding:10px 14px;border:1px solid #d1d5db;border-radius:10px;background:#fff;cursor:pointer}label{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:13px}input,select,textarea{padding:10px;border:1px solid #d1d5db;border-radius:9px;background:#fff}.msg{margin-top:10px;font-size:13px}.ok{color:var(--ok)}.bad{color:var(--bad)}.app{display:grid;grid-template-columns:245px 1fr;min-height:100vh}aside{background:#111827;color:#fff;padding:16px;display:flex;flex-direction:column}.logo{display:flex;gap:8px;align-items:baseline;margin-bottom:18px}.logo b{font-size:26px}nav{display:grid;gap:4px}nav button{background:transparent;color:#d1d5db;border:0;text-align:left}nav button.active,nav button:hover{background:#1f2937;color:#fff}.aside-bottom{margin-top:auto}.aside-bottom>div{font-size:12px;background:#1f2937;padding:9px;border-radius:9px;margin-bottom:8px}main{min-width:0}header{position:sticky;top:0;z-index:5;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:14px 20px;gap:12px}header h2{margin:0}.head-right{display:flex;gap:10px;align-items:center}#content{padding:20px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}.metric small{color:var(--muted)}.metric b{display:block;font-size:25px;margin-top:7px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.toolbar{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin-bottom:12px}.toolbar input{min-width:220px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.full{grid-column:1/-1}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}th{font-size:12px;color:var(--muted)}.modal{position:fixed;inset:0;background:rgba(17,24,39,.6);display:grid;place-items:center;padding:14px;z-index:20}.modal-card{width:min(700px,100%);max-height:92vh;overflow:auto;position:relative}.x{position:absolute;right:10px;top:10px;border:0;font-size:22px}.payrow{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:8px}.report-head{text-align:center;padding:10px 0}.actions{display:flex;gap:8px;flex-wrap:wrap}.pill{padding:4px 8px;border-radius:99px;background:#f3f4f6;font-size:12px}.danger{color:#b91c1c}.section-title{display:flex;justify-content:space-between;align-items:center;gap:10px}.bar{height:9px;background:#e5e7eb;border-radius:99px;overflow:hidden;margin:4px 0 11px}.bar i{display:block;height:100%;background:#374151}.mix{display:flex;justify-content:space-between;gap:8px}
@media(max-width:950px){
.app{display:block}.menu-toggle{display:inline-flex}
aside{position:fixed;left:0;top:0;bottom:0;width:min(82vw,310px);z-index:40;padding:16px;transform:translateX(-105%);transition:transform .22s ease;box-shadow:10px 0 30px rgba(0,0,0,.22);overflow:auto}
aside.drawer-open{transform:translateX(0)}.logo,.aside-bottom{display:flex}.aside-bottom{margin-top:24px}nav{display:grid;grid-template-columns:1fr;overflow:visible}nav button{font-size:14px;text-align:left;padding:11px 12px}
.drawer-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:35}
#content{padding:12px 10px 30px}.metrics{grid-template-columns:1fr 1fr}.grid2{grid-template-columns:1fr}.formgrid{grid-template-columns:1fr}.payrow{grid-template-columns:1fr}
header{padding:10px}.head-right{max-width:58%;flex-direction:row;align-items:center}.head-right select{max-width:150px}
}
@media(max-width:520px){.metrics{grid-template-columns:1fr}.toolbar{align-items:stretch;flex-direction:column}.toolbar input{min-width:0}.head-right span{display:none}}
@media print{aside,header,.no-print,.actions,.toolbar{display:none!important}.app{display:block}#content{padding:0}.card{border:0;box-shadow:none}}

.order-list{display:grid;gap:10px;margin-top:14px}
.order-card{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;border:1px solid var(--line);border-radius:14px;padding:14px;background:#fff}
.order-card.done{opacity:.68}.order-card.done .order-title{text-decoration:line-through}
.order-card.cancelled{opacity:.5}
.order-check input{width:20px;height:20px;margin-top:2px}
.order-title{font-weight:800;font-size:15px;line-height:1.35}
.order-notes{margin-top:6px;white-space:normal;line-height:1.5;color:#374151}
.order-meta{margin-top:8px;font-size:11px;color:var(--muted)}
.order-actions{display:flex;gap:6px;flex-wrap:wrap}
.pending-chip{display:inline-block;margin-left:6px;padding:2px 7px;border-radius:99px;background:#fef3c7;color:#92400e;font-size:10px;text-decoration:none!important}
.empty{text-align:center;color:var(--muted);padding:28px 12px}
textarea{font:inherit;padding:11px 12px;border:1px solid #d1d5db;border-radius:10px;resize:vertical;min-height:90px}
@media(max-width:650px){.order-card{grid-template-columns:auto 1fr}.order-actions{grid-column:2}.order-actions button{padding:7px 10px}}
@media print{.order-card{break-inside:avoid}.order-list{gap:5px}}

.notify-bell{position:relative;padding:8px 10px}.notify-count{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:#b91c1c;color:#fff;font-size:10px;display:grid;place-items:center}
.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:14px 0}
.branding-preview{display:flex;align-items:center;gap:12px}.branding-preview img{max-width:150px;max-height:90px;object-fit:contain;border:1px solid var(--line);border-radius:12px;padding:6px;background:#fff}
.check{flex-direction:row;align-items:center;font-weight:600}.check input{width:auto}
.note-box{margin-top:12px;padding:10px 12px;background:#f9fafb;border:1px solid var(--line);border-radius:10px;color:#4b5563;font-size:12px}
.password-wrap{display:flex;gap:6px}.password-wrap input{flex:1}.pwd-toggle{padding:8px 10px}
.branch-checks{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.notification-list{display:grid;gap:10px}.notification-card{display:flex;justify-content:space-between;gap:14px;background:#fff;border:1px solid var(--line);border-left:5px solid #6b7280;border-radius:12px;padding:14px}.notification-card.read{opacity:.65}.severity-success{border-left-color:#166534}.severity-warning{border-left-color:#b45309}.severity-danger{border-left-color:#b91c1c}.notification-msg{margin:5px 0 7px;white-space:pre-wrap}.notification-card small{color:var(--muted)}
.report-logo{display:block;max-width:130px;max-height:70px;object-fit:contain;margin:0 auto 8px}.report-footer{text-align:center;margin-top:18px;padding-top:10px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
@media(max-width:900px){.admin-grid{grid-template-columns:1fr}}

.backup-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.warning-box{padding:12px 14px;border:1px solid #f59e0b;background:#fffbeb;color:#92400e;border-radius:10px;margin:10px 0}
.restore-summary{max-height:260px;overflow:auto;background:#f9fafb;border:1px solid var(--line);border-radius:10px;padding:12px;font-size:12px;line-height:1.5}
.danger-button{background:#b91c1c;color:#fff;border-color:#b91c1c}
.danger-button:disabled{opacity:.45;cursor:not-allowed}
.small-status{margin-top:8px;font-size:12px;color:var(--muted)}


.totals{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;background:#f9fafb;border:1px solid var(--line);border-radius:10px}
.muted-row{opacity:.58}.actions-cell{display:flex;gap:6px;flex-wrap:wrap}
button:disabled{opacity:.48;cursor:not-allowed}
hr{border:0;border-top:1px solid var(--line);margin:18px 0}

.system-check-list{display:grid;gap:8px;margin-top:12px}.system-check-row{display:grid;grid-template-columns:58px 1fr;gap:10px;align-items:start;padding:10px;border:1px solid var(--line);border-radius:10px}.system-check-row>b{font-size:11px}.system-check-row small{display:block;color:var(--muted);margin-top:3px}.status-pass{border-left:5px solid #166534}.status-warn{border-left:5px solid #b45309}.status-fail{border-left:5px solid #b91c1c}

.quick-periods{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 14px}.quick-periods button{padding:7px 10px}

.trend-list{display:grid;gap:10px}.trend-row{display:grid;grid-template-columns:52px minmax(120px,1fr) 110px minmax(120px,1fr) 110px;gap:10px;align-items:center}.trend-row>div>span{font-size:10px;color:var(--muted)}.trend-bar{height:9px;background:#e5e7eb;border-radius:99px;overflow:hidden}.trend-bar i{display:block;height:100%;background:#2563eb;border-radius:99px}.trend-bar.expense i{background:#b45309}.trend-row>b{text-align:right;font-size:12px}
@media(max-width:700px){.trend-row{grid-template-columns:42px 1fr 85px;}.trend-row>div:nth-of-type(2){grid-column:2}.trend-row>b:nth-of-type(2){grid-column:3}.trend-row>b{font-size:10px}}

.upload-hint{display:block;margin-top:6px;color:var(--muted);font-size:11px;font-weight:400;line-height:1.4}

.menu-toggle{display:none;align-items:center;justify-content:center;font-size:21px;padding:7px 10px}.head-title{min-width:0}
.formgrid label,.payrow label{min-width:0}select,input,textarea{max-width:100%;width:100%;min-width:0}.person-select{overflow:hidden;text-overflow:ellipsis}
.employee-avatar{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--line);font-weight:800}
.statement-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:end}.statement-toolbar label{min-width:150px;flex:1}.statement-toolbar .actions{align-self:end}
.report-preview{padding:20px;border:1px solid var(--line);border-radius:12px;background:#fff}
.report-design-1{border-top:6px solid #111827}.report-design-2{border-left:7px solid #1d4ed8}.report-design-3{border-top:6px double #047857}.report-design-4{box-shadow:inset 0 0 0 3px #6d28d9}.report-design-5{border-top:8px solid #c2410c}.report-design-6{border:2px solid #64748b}.report-design-7{border-top:7px solid #a16207}.report-design-8{border-left:7px solid #be123c}.report-design-9{border-top:7px solid #0f766e}.report-design-10{border:1px solid #111}
.report-design-2 .report-head,.report-design-4 .report-head,.report-design-6 .report-head,.report-design-8 .report-head,.report-design-10 .report-head{text-align:left}
.theme-pills{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.theme-chip{padding:12px;border:1px solid var(--line);border-radius:10px;text-align:center;font-weight:700}
.secret-card{border:1px solid #fecaca;background:#fff7f7}.secret-card h3{color:#991b1b}
body[data-theme="classic"]{--bg:#f3f4f6;--panel:#fff;--ink:#111827;--muted:#6b7280;--line:#e5e7eb}
body[data-theme="ocean"]{--bg:#eef6ff;--panel:#fff;--ink:#0f2748;--muted:#58708d;--line:#cfe0f5}body[data-theme="ocean"] aside{background:#0b3b70}body[data-theme="ocean"] .primary{background:#155eaa;border-color:#155eaa}
body[data-theme="emerald"]{--bg:#eefbf5;--panel:#fff;--ink:#103c2d;--muted:#55756a;--line:#cde9dc}body[data-theme="emerald"] aside{background:#0d4b37}body[data-theme="emerald"] .primary{background:#08785a;border-color:#08785a}
body[data-theme="royal"]{--bg:#f6f1ff;--panel:#fff;--ink:#2e1954;--muted:#76668f;--line:#e1d5f4}body[data-theme="royal"] aside{background:#3e216b}body[data-theme="royal"] .primary{background:#673ab7;border-color:#673ab7}
body[data-theme="sunset"]{--bg:#fff5ed;--panel:#fff;--ink:#4a2514;--muted:#8a6b5b;--line:#f2d8c5}body[data-theme="sunset"] aside{background:#5a2915}body[data-theme="sunset"] .primary{background:#d95d16;border-color:#d95d16}
body[data-theme] .card,body[data-theme] header{background:var(--panel);color:var(--ink)}
@media(max-width:600px){.theme-pills{grid-template-columns:1fr 1fr}.statement-toolbar{flex-direction:column;align-items:stretch}.statement-toolbar label{width:100%}}

body[data-theme="midnight"]{--bg:#0b1220;--panel:#111827;--ink:#f3f4f6;--muted:#9ca3af;--line:#334155}body[data-theme="midnight"] aside{background:#020617}body[data-theme="midnight"] header,body[data-theme="midnight"] .card{background:#111827;color:#f3f4f6}body[data-theme="midnight"] input,body[data-theme="midnight"] select,body[data-theme="midnight"] textarea{background:#0f172a;color:#f3f4f6;border-color:#475569}body[data-theme="midnight"] button{background:#1e293b;color:#f8fafc;border-color:#475569}body[data-theme="midnight"] .primary{background:#2563eb;border-color:#2563eb}

/* DOZ V4 independent scrolling + stable pickers + HR UI */
html,body{height:100%;overflow:hidden}.app{height:100vh;min-height:0}aside{height:100vh;overflow-y:auto;overscroll-behavior:contain}main{height:100vh;overflow-y:auto;overscroll-behavior:contain;min-width:0}.smart-picker{position:relative;min-width:0}.smart-picker-list{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:120;background:var(--panel,#fff);border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.18);max-height:260px;overflow-y:auto;padding:5px}.smart-picker-list button{display:block;width:100%;text-align:left;border:0;background:transparent;padding:9px;border-radius:7px;white-space:normal}.smart-picker-list button:hover{background:var(--bg)}.smart-empty{padding:10px;color:var(--muted)}.doc-pills{display:flex;gap:4px;flex-wrap:wrap}.doc-pill{font-size:10px;padding:3px 6px;border-radius:99px;border:1px solid}.doc-pill.ok{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.doc-pill.warning{color:#92400e;background:#fffbeb;border-color:#fde68a}.doc-pill.expired{color:#991b1b;background:#fef2f2;border-color:#fecaca}.doc-pill.neutral{color:#475569;background:#f8fafc;border-color:#cbd5e1}.employee-photo-sm{width:42px;height:42px;object-fit:cover;border-radius:50%;border:1px solid var(--line)}.employee-photo-lg{width:92px;height:92px;object-fit:cover;border-radius:14px;border:1px solid var(--line)}.employee-photo-lg.placeholder{display:grid;place-items:center;background:#e5e7eb;font-weight:800}.employee-card-top{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center}.qr-box svg{width:150px;height:150px}.employee-card-info{display:grid;gap:7px;margin-top:14px}.payroll-layout{display:grid;grid-template-columns:1fr 1fr;gap:14px}.compact-metrics{grid-template-columns:repeat(6,minmax(120px,1fr))}.statement-table td.num,.statement-table th.num{text-align:right}.statement-table tfoot th{border-top:2px solid var(--ink);font-weight:800}.statement-person{margin-top:8px;padding:7px;background:var(--bg);border-radius:8px}.modal-card{overscroll-behavior:contain}@media(max-width:950px){html,body{overflow:hidden}main{height:100vh;overflow-y:auto}.payroll-layout{grid-template-columns:1fr}.compact-metrics{grid-template-columns:1fr 1fr}.employee-card-top{grid-template-columns:1fr;text-align:center}.qr-box{display:grid;place-items:center}}

/* ================= DOZ V5 MOBILE NAVIGATION FIX ================= */
.drawer-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.drawer-close{display:none}
.drawer-user{font-size:12px;font-weight:800;color:#e5e7eb;background:#374151!important}
.logout-btn{width:100%;font-weight:800;background:#fff!important;color:#111827!important;border-color:#fff!important}
.menu-toggle{display:none}
.menu-bars{font-size:22px;line-height:1}
.menu-text{font-size:13px;font-weight:800}
html,body{width:100%;max-width:100%}

@media(max-width:950px){
  .app{height:100dvh;min-height:100dvh;overflow:hidden}
  main{
    height:100dvh!important;
    max-height:100dvh;
    overflow-y:auto!important;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-y:contain;
  }
  header{
    position:sticky;
    top:0;
    z-index:20;
    min-height:58px;
    padding-top:max(10px,env(safe-area-inset-top));
    padding-left:10px;
    padding-right:10px;
    gap:8px;
  }
  .menu-toggle{
    display:inline-flex!important;
    visibility:visible!important;
    opacity:1!important;
    flex:0 0 auto;
    align-items:center;
    justify-content:center;
    gap:6px;
    min-width:46px;
    min-height:42px;
    padding:8px 10px;
    background:#111827;
    color:#fff;
    border-color:#111827;
    position:relative;
    z-index:25;
  }
  .head-title{flex:1 1 auto;min-width:0;overflow:hidden}
  .head-title h2{font-size:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #companyLine{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .head-right{flex:0 1 auto;min-width:0;max-width:48%;gap:6px;justify-content:flex-end}
  .head-right #branch{max-width:130px;min-width:0}
  .notify-bell{flex:0 0 auto}

  aside#sidebar{
    position:fixed!important;
    left:0!important;
    top:0!important;
    bottom:auto!important;
    width:min(86vw,320px)!important;
    height:100dvh!important;
    max-height:100dvh!important;
    z-index:60!important;
    display:flex!important;
    flex-direction:column!important;
    padding:
      max(14px,env(safe-area-inset-top))
      14px
      max(10px,env(safe-area-inset-bottom))!important;
    overflow:hidden!important;
    transform:translate3d(-105%,0,0)!important;
    transition:transform .22s ease!important;
    box-shadow:12px 0 35px rgba(0,0,0,.28)!important;
    overscroll-behavior:contain;
  }
  aside#sidebar.drawer-open{transform:translate3d(0,0,0)!important}
  .drawer-top{flex:0 0 auto;margin-bottom:8px}
  .drawer-top .logo{margin-bottom:0!important;min-width:0;overflow:hidden}
  .drawer-top .logo b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .drawer-close{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    flex:0 0 40px;
    width:40px;
    height:40px;
    padding:0;
    border-radius:10px;
    background:#1f2937;
    color:#fff;
    border:1px solid #374151;
    font-size:24px;
  }
  #nav{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    display:block!important;
    padding:4px 2px 12px 0;
    scrollbar-width:thin;
  }
  #nav button{
    display:block!important;
    width:100%!important;
    margin:2px 0;
    padding:12px 12px!important;
    font-size:14px!important;
    text-align:left!important;
    white-space:normal;
  }
  .aside-bottom{
    flex:0 0 auto!important;
    margin-top:0!important;
    padding-top:10px;
    border-top:1px solid #374151;
    background:#111827;
  }
  .aside-bottom>div{margin-bottom:7px}
  .logout-btn{
    min-height:44px;
    width:100%;
    display:block!important;
  }
  .drawer-backdrop{
    position:fixed!important;
    inset:0!important;
    z-index:55!important;
    background:rgba(0,0,0,.5)!important;
    touch-action:none;
  }
  #content{
    min-width:0;
    width:100%;
    overflow-x:hidden;
    padding-bottom:max(34px,env(safe-area-inset-bottom));
  }
  .card{max-width:100%;overflow-wrap:anywhere}
  .tablewrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
}

@media(max-width:520px){
  .menu-text{display:none}
  .menu-toggle{min-width:42px;padding:8px}
  .head-right{max-width:42%}
  .head-right #branch{max-width:110px}
  #who{display:none!important}
}

@media(min-width:951px){
  .drawer-close{display:none!important}
}
/* ================= END DOZ V5 MOBILE NAVIGATION FIX ================= */

/* ================= DOZ V6 PROFESSIONAL UI ================= */
.menu-user-row{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;gap:9px;align-items:center}
.menu-avatar{width:34px;height:34px;border-radius:10px;background:#374151;display:grid;place-items:center;font-weight:900;color:#fff;font-size:12px}
.menu-user-copy{min-width:0}.menu-user-copy b,.menu-user-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-user-copy b{font-size:12px;color:#fff}.menu-user-copy small{font-size:10px;color:#9ca3af;text-transform:capitalize}
.logout-icon-btn{width:34px!important;height:34px!important;min-height:34px!important;padding:0!important;display:grid!important;place-items:center;background:#1f2937!important;color:#e5e7eb!important;border:1px solid #374151!important;border-radius:9px!important;font-size:16px!important}
.logout-icon-btn:hover{background:#7f1d1d!important;border-color:#991b1b!important;color:#fff!important}.menu-sync{font-size:10px!important;color:#9ca3af!important;margin:7px 0 0!important;padding:0!important;background:transparent!important}
.aside-bottom{padding-top:10px!important}

.login{min-height:100dvh;padding:24px;background:radial-gradient(circle at 15% 10%,#293448 0,#111827 36%,#080d16 100%);display:grid;place-items:center}
.login-shell{width:min(960px,100%);min-height:560px;display:grid;grid-template-columns:1.05fr .95fr;background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.login-brand-panel{padding:54px;display:flex;flex-direction:column;justify-content:center;color:#fff;background:linear-gradient(145deg,#111827,#1f2937 55%,#0f172a);position:relative;overflow:hidden}
.login-brand-panel:after{content:"";position:absolute;width:300px;height:300px;border-radius:50%;right:-130px;bottom:-150px;background:rgba(255,255,255,.05)}
.login-logo{max-width:180px;max-height:110px;object-fit:contain;object-position:left center;margin-bottom:24px}.login-logo-fallback{width:82px;height:82px;border-radius:20px;background:#fff;color:#111827;display:grid;place-items:center;font-size:27px;font-weight:1000;margin-bottom:24px}
.login-brand-panel h1{font-size:31px;line-height:1.15;margin:0 0 13px}.login-brand-panel p{color:#cbd5e1;max-width:390px;margin:0}.login-features{display:flex;gap:8px;flex-wrap:wrap;margin-top:30px}.login-features span{font-size:11px;background:rgba(255,255,255,.08);padding:7px 10px;border:1px solid rgba(255,255,255,.1);border-radius:999px}
.login-card{border:0!important;border-radius:0!important;box-shadow:none!important;padding:54px!important;display:flex;flex-direction:column;justify-content:center;background:#fff!important}
.login-card h2{font-size:27px;margin:5px 0}.login-card>p{color:#6b7280;margin:0 0 23px}.login-kicker{font-size:10px;letter-spacing:.16em;color:#6b7280;font-weight:900}.login-card label{font-size:12px;font-weight:800;margin-bottom:13px}.login-card input{height:46px;margin-top:6px}.login-password{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:6px}.login-password input{margin-top:0}.login-password button{height:46px;padding:0 12px}.login-submit{height:47px;margin-top:6px;font-weight:900}.login-security{text-align:center;color:#9ca3af;font-size:10px;margin-top:18px}.login-mobile-brand{display:none;align-items:center;gap:9px;margin-bottom:20px}.login-mobile-logo{width:42px;height:42px;object-fit:contain;border-radius:9px}

.settings-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}.settings-tabs button.active{background:#111827;color:#fff;border-color:#111827}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.setting-section-title{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px}.setting-section-title h3{margin:0}.setting-help{color:var(--muted);font-size:11px}
.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.module-toggle{display:flex;gap:7px;align-items:center;padding:8px 9px;background:var(--bg);border:1px solid var(--line);border-radius:9px;font-size:11px}.module-toggle input{width:auto;margin:0}
.setting-preview{padding:12px;border:1px dashed var(--line);border-radius:10px;background:var(--bg)}
body[data-density="compact"] .card{padding:12px}body[data-density="compact"] th,body[data-density="compact"] td{padding:6px 7px}body[data-density="compact"] nav button{padding:8px 10px}
body[data-table-compact="1"] th,body[data-table-compact="1"] td{padding:6px 7px;font-size:11px}
body[data-menu-style="icons_only"] nav button{font-size:0}body[data-menu-style="icons_only"] nav button:before{font-size:16px}

@media(max-width:950px){
  .login{padding:14px}.login-shell{grid-template-columns:1fr;width:min(520px,100%);min-height:auto;border-radius:18px}.login-brand-panel{display:none}.login-card{padding:28px!important}.login-mobile-brand{display:flex}
  .settings-grid{grid-template-columns:1fr}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .login{padding:0;background:#fff;place-items:stretch}.login-shell{border-radius:0;min-height:100dvh;box-shadow:none}.login-card{padding:28px 20px!important;min-height:100dvh}.login-card h2{font-size:24px}
  .module-grid{grid-template-columns:1fr}.settings-tabs{display:grid;grid-template-columns:1fr 1fr}.settings-tabs button{width:100%}
  .menu-user-row{grid-template-columns:32px minmax(0,1fr) 32px}.menu-avatar,.logout-icon-btn{width:32px!important;height:32px!important}
}
@media(min-width:951px) and (max-width:1180px){.settings-grid{grid-template-columns:1fr}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* ================= END DOZ V6 PROFESSIONAL UI ================= */

.nav-ico{display:inline-grid;width:20px;place-items:center;margin-right:7px;font-weight:900}.nav-label{vertical-align:middle}
body[data-menu-style="icons_only"] nav .nav-label{display:none}body[data-menu-style="icons_only"] nav button{font-size:14px;text-align:center}body[data-menu-style="icons_only"] nav .nav-ico{margin:0;width:auto}

/* ================= DOZ V7 LOGIN + APPROVAL UI ================= */
.login-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:4px 0 16px;padding:4px;background:#f3f4f6;border-radius:11px}
.login-mode-tabs button{border:0;background:transparent;color:#6b7280;font-size:11px;font-weight:900;padding:9px;border-radius:8px}
.login-mode-tabs button.active{background:#111827;color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.12)}
.login-remember{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;margin:2px 0 9px!important;font-size:11px!important;color:#4b5563}.login-remember input{width:16px!important;height:16px!important;margin:0!important}
.approval-badge{display:inline-flex;min-width:20px;height:20px;align-items:center;justify-content:center;border-radius:999px;background:#dc2626;color:#fff;font-size:10px;font-weight:900;padding:0 6px}
.approval-card{border-left:4px solid #f59e0b}.approval-card .actions{margin-top:10px}.approval-json{display:grid;grid-template-columns:1fr 1fr;gap:10px}.approval-json pre{white-space:pre-wrap;word-break:break-word;background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;padding:10px;font-size:11px;max-height:320px;overflow:auto}
.txn-actions{display:flex;gap:5px;flex-wrap:wrap}.txn-actions button{padding:6px 8px;font-size:10px}
.pending-request-chip{display:inline-block;padding:4px 7px;border-radius:999px;background:#fff7ed;color:#9a3412;font-size:10px;font-weight:800}
@media(max-width:600px){.approval-json{grid-template-columns:1fr}.login-mode-tabs{grid-template-columns:1fr 1fr}.txn-actions{display:grid;grid-template-columns:1fr 1fr}.txn-actions button{width:100%}}
/* ================= END DOZ V7 LOGIN + APPROVAL UI ================= */

/* ================= DOZ V8 ACCESSIBLE THEME VISIBILITY ================= */
/*
   Theme rule:
   Every major UI surface gets its background + foreground from variables.
   Reports/print preview intentionally remain white with dark text.
*/
body[data-theme="classic"]{
  --bg:#f3f4f6;--panel:#ffffff;--surface-2:#f8fafc;--surface-3:#eef2f7;
  --ink:#111827;--heading:#0f172a;--muted:#4b5563;--line:#d1d5db;
  --input-bg:#ffffff;--input-ink:#111827;--placeholder:#6b7280;
  --button-bg:#ffffff;--button-ink:#111827;--button-hover:#f3f4f6;
  --table-head:#f8fafc;--row-hover:#f9fafb;
  --sidebar-bg:#111827;--sidebar-ink:#f9fafb;--sidebar-muted:#d1d5db;--sidebar-hover:#1f2937;
  --primary-bg:#111827;--primary-ink:#ffffff;--link:#1d4ed8;
  --ok:#166534;--bad:#b91c1c;--warning:#92400e;
}
body[data-theme="ocean"]{
  --bg:#eef6ff;--panel:#ffffff;--surface-2:#f3f8ff;--surface-3:#e4effc;
  --ink:#0f2748;--heading:#0a1f3b;--muted:#435f7d;--line:#c3d7ee;
  --input-bg:#ffffff;--input-ink:#0f2748;--placeholder:#58708d;
  --button-bg:#f5f9ff;--button-ink:#0f2748;--button-hover:#e7f1fc;
  --table-head:#edf5ff;--row-hover:#f4f9ff;
  --sidebar-bg:#0b3b70;--sidebar-ink:#ffffff;--sidebar-muted:#d8e9fb;--sidebar-hover:#12518f;
  --primary-bg:#155eaa;--primary-ink:#ffffff;--link:#155eaa;
  --ok:#166534;--bad:#b42318;--warning:#8a4b08;
}
body[data-theme="emerald"]{
  --bg:#eefbf5;--panel:#ffffff;--surface-2:#f3fbf7;--surface-3:#e1f3ea;
  --ink:#103c2d;--heading:#0b3023;--muted:#4b675e;--line:#c4e2d5;
  --input-bg:#ffffff;--input-ink:#103c2d;--placeholder:#5b746b;
  --button-bg:#f4fbf7;--button-ink:#103c2d;--button-hover:#e5f5ed;
  --table-head:#edf9f3;--row-hover:#f5fbf8;
  --sidebar-bg:#0d4b37;--sidebar-ink:#ffffff;--sidebar-muted:#d5eee4;--sidebar-hover:#126249;
  --primary-bg:#08785a;--primary-ink:#ffffff;--link:#087052;
  --ok:#166534;--bad:#b42318;--warning:#8a4b08;
}
body[data-theme="royal"]{
  --bg:#f6f1ff;--panel:#ffffff;--surface-2:#faf7ff;--surface-3:#eee6fa;
  --ink:#2e1954;--heading:#271447;--muted:#67547f;--line:#d9cbee;
  --input-bg:#ffffff;--input-ink:#2e1954;--placeholder:#78688e;
  --button-bg:#faf7ff;--button-ink:#2e1954;--button-hover:#eee6fa;
  --table-head:#f5effd;--row-hover:#faf7ff;
  --sidebar-bg:#3e216b;--sidebar-ink:#ffffff;--sidebar-muted:#eadffc;--sidebar-hover:#56308a;
  --primary-bg:#673ab7;--primary-ink:#ffffff;--link:#5b31a6;
  --ok:#166534;--bad:#b42318;--warning:#8a4b08;
}
body[data-theme="sunset"]{
  --bg:#fff5ed;--panel:#ffffff;--surface-2:#fff9f5;--surface-3:#fbe9dc;
  --ink:#4a2514;--heading:#3b1d10;--muted:#705548;--line:#ecd0bd;
  --input-bg:#ffffff;--input-ink:#4a2514;--placeholder:#806658;
  --button-bg:#fff9f5;--button-ink:#4a2514;--button-hover:#fbe9dc;
  --table-head:#fff3e9;--row-hover:#fff9f5;
  --sidebar-bg:#5a2915;--sidebar-ink:#ffffff;--sidebar-muted:#f7dfd2;--sidebar-hover:#74371d;
  --primary-bg:#ad430b;--primary-ink:#ffffff;--link:#a33d09;
  --ok:#166534;--bad:#b42318;--warning:#854306;
}
body[data-theme="midnight"]{
  --bg:#0b1220;--panel:#111827;--surface-2:#172033;--surface-3:#1e293b;
  --ink:#f8fafc;--heading:#ffffff;--muted:#cbd5e1;--line:#475569;
  --input-bg:#0f172a;--input-ink:#f8fafc;--placeholder:#94a3b8;
  --button-bg:#1e293b;--button-ink:#f8fafc;--button-hover:#334155;
  --table-head:#172033;--row-hover:#182235;
  --sidebar-bg:#020617;--sidebar-ink:#ffffff;--sidebar-muted:#cbd5e1;--sidebar-hover:#172033;
  --primary-bg:#2563eb;--primary-ink:#ffffff;--link:#93c5fd;
  --ok:#86efac;--bad:#fca5a5;--warning:#fcd34d;
}

/* Main document + headings */
body[data-theme]{background:var(--bg);color:var(--ink)}
body[data-theme] h1,body[data-theme] h2,body[data-theme] h3,body[data-theme] h4,body[data-theme] h5,body[data-theme] h6,
body[data-theme] strong,body[data-theme] b{color:var(--heading)}
body[data-theme] p,body[data-theme] label,body[data-theme] td,body[data-theme] .section-title,body[data-theme] .setting-section-title{color:var(--ink)}
body[data-theme] small,body[data-theme] .muted,body[data-theme] .setting-help,body[data-theme] .small-status,
body[data-theme] .smart-empty,body[data-theme] .order-meta,body[data-theme] .report-footer{color:var(--muted)!important}
body[data-theme] a{color:var(--link)}

/* Cards / popup / sections */
body[data-theme] .card,
body[data-theme] header,
body[data-theme] .metric,
body[data-theme] .order-card,
body[data-theme] .notification-card,
body[data-theme] .modal-card,
body[data-theme] .smart-picker-list{
  background:var(--panel)!important;color:var(--ink)!important;border-color:var(--line)!important;
}
body[data-theme] .note-box,
body[data-theme] .setting-preview,
body[data-theme] .module-toggle,
body[data-theme] .system-check-row,
body[data-theme] .approval-json pre{
  background:var(--surface-2)!important;color:var(--ink)!important;border-color:var(--line)!important;
}
body[data-theme] .note-box{color:var(--muted)!important}
body[data-theme] .modal-card h1,body[data-theme] .modal-card h2,body[data-theme] .modal-card h3,body[data-theme] .modal-card h4{color:var(--heading)!important}

/* Forms, native dropdowns and placeholders */
body[data-theme] input,
body[data-theme] select,
body[data-theme] textarea{
  background:var(--input-bg)!important;color:var(--input-ink)!important;border-color:var(--line)!important;
  caret-color:var(--input-ink);
}
body[data-theme] input::placeholder,
body[data-theme] textarea::placeholder{color:var(--placeholder)!important;opacity:1}
body[data-theme] select option{background:var(--input-bg);color:var(--input-ink)}
body[data-theme] input:disabled,body[data-theme] select:disabled,body[data-theme] textarea:disabled{opacity:.72}

/* Buttons */
body[data-theme] button:not(.primary):not(.danger-button):not(.logout-icon-btn):not(.menu-toggle):not(.drawer-close){
  background:var(--button-bg);color:var(--button-ink);border-color:var(--line);
}
body[data-theme] button:not(.primary):not(.danger-button):not(.logout-icon-btn):not(.menu-toggle):not(.drawer-close):hover{
  background:var(--button-hover);color:var(--button-ink);
}
body[data-theme] .primary{background:var(--primary-bg)!important;color:var(--primary-ink)!important;border-color:var(--primary-bg)!important}
body[data-theme] .danger{color:var(--bad)!important}
body[data-theme] .danger-button{background:#b91c1c!important;color:#fff!important;border-color:#b91c1c!important}
body[data-theme] .ok{color:var(--ok)!important}
body[data-theme] .bad{color:var(--bad)!important}

/* Tables */
body[data-theme] table{color:var(--ink)}
body[data-theme] th{background:var(--table-head);color:var(--muted)!important;border-color:var(--line)}
body[data-theme] td{color:var(--ink)!important;border-color:var(--line)}
body[data-theme] tbody tr:hover td{background:var(--row-hover)}
body[data-theme] table tfoot th{color:var(--heading)!important;border-top-color:var(--ink)}
body[data-theme] .muted-row{opacity:.72}

/* Sidebar / drawer: always high contrast */
body[data-theme] aside#sidebar,body[data-theme] aside{background:var(--sidebar-bg)!important;color:var(--sidebar-ink)!important}
body[data-theme] aside .logo,body[data-theme] aside .logo b,
body[data-theme] aside .drawer-top,body[data-theme] aside .menu-user-copy b{color:var(--sidebar-ink)!important}
body[data-theme] aside .menu-user-copy small,body[data-theme] aside .menu-sync{color:var(--sidebar-muted)!important}
body[data-theme] aside nav button{background:transparent!important;color:var(--sidebar-muted)!important}
body[data-theme] aside nav button:hover,body[data-theme] aside nav button.active{background:var(--sidebar-hover)!important;color:var(--sidebar-ink)!important}
body[data-theme] .aside-bottom{background:var(--sidebar-bg)!important;border-color:color-mix(in srgb,var(--sidebar-muted) 25%,transparent)!important}
body[data-theme] .menu-avatar{background:var(--sidebar-hover)!important;color:var(--sidebar-ink)!important}
body[data-theme] .logout-icon-btn,body[data-theme] .drawer-close{background:var(--sidebar-hover)!important;color:var(--sidebar-ink)!important;border-color:color-mix(in srgb,var(--sidebar-muted) 30%,transparent)!important}
body[data-theme] .logout-icon-btn:hover{background:#7f1d1d!important;color:#fff!important}

/* Header/mobile controls */
@media(max-width:950px){
  body[data-theme] .menu-toggle{background:var(--sidebar-bg)!important;color:var(--sidebar-ink)!important;border-color:var(--sidebar-bg)!important}
}

/* Settings/theme controls */
body[data-theme] .settings-tabs button.active{background:var(--primary-bg)!important;color:var(--primary-ink)!important;border-color:var(--primary-bg)!important}
body[data-theme] .theme-chip{background:var(--surface-2);color:var(--ink);border-color:var(--line)}
body[data-theme] .login-mode-tabs{background:var(--surface-3)}
body[data-theme] .login-mode-tabs button.active{background:var(--primary-bg)!important;color:var(--primary-ink)!important}

/* Picker */
body[data-theme] .smart-picker-list button{color:var(--ink)!important;background:transparent!important}
body[data-theme] .smart-picker-list button:hover{background:var(--row-hover)!important;color:var(--ink)!important}

/* Notification and approval */
body[data-theme] .notification-card small{color:var(--muted)!important}
body[data-theme] .approval-card{background:var(--panel)!important;color:var(--ink)!important}
body[data-theme] .pending-request-chip{background:#fff7ed!important;color:#9a3412!important;border:1px solid #fed7aa}
body[data-theme="midnight"] .pending-request-chip{background:#422006!important;color:#fde68a!important;border-color:#854d0e}
body[data-theme="midnight"] .pending-chip{background:#422006!important;color:#fde68a!important}
body[data-theme="midnight"] .notification-card.read{opacity:.78}

/* HR document pills keep explicit readable contrast in all themes */
body[data-theme] .doc-pill.ok{color:#166534!important;background:#f0fdf4!important}
body[data-theme] .doc-pill.warning{color:#92400e!important;background:#fffbeb!important}
body[data-theme] .doc-pill.expired{color:#991b1b!important;background:#fef2f2!important}
body[data-theme] .doc-pill.neutral{color:#334155!important;background:#f8fafc!important}

/* Code/pre in dark theme */
body[data-theme] code{color:var(--ink);background:var(--surface-2)}
body[data-theme] pre{color:var(--ink)}

/*
  REPORTS: fixed paper preview colors.
  This prevents white text disappearing on a white PDF/print page when Midnight is active.
*/
body[data-theme] .report-preview,
body[data-theme] .report-preview .card{
  background:#ffffff!important;color:#111827!important;border-color:#d1d5db!important;
}
body[data-theme] .report-preview h1,body[data-theme] .report-preview h2,body[data-theme] .report-preview h3,
body[data-theme] .report-preview h4,body[data-theme] .report-preview p,body[data-theme] .report-preview b,
body[data-theme] .report-preview strong,body[data-theme] .report-preview td{color:#111827!important}
body[data-theme] .report-preview th{background:#f3f4f6!important;color:#4b5563!important;border-color:#d1d5db!important}
body[data-theme] .report-preview .report-footer,body[data-theme] .report-preview small{color:#6b7280!important}
body[data-theme] .report-preview tbody tr:hover td{background:#ffffff!important}

@media print{
  body,main,#content,.report-preview,.card{background:#fff!important;color:#111!important}
  h1,h2,h3,h4,h5,h6,p,label,td,b,strong{color:#111!important}
  th{background:#f3f4f6!important;color:#444!important;border-color:#ccc!important}
  input,select,textarea{background:#fff!important;color:#111!important;border-color:#ccc!important}
}

/* Browser/native controls improve in dark mode */
body[data-theme="midnight"]{color-scheme:dark}
body:not([data-theme="midnight"]){color-scheme:light}
/* ================= END DOZ V8 ACCESSIBLE THEME VISIBILITY ================= */

/* ================= DOZ V9 REALTIME TOAST ================= */
.toast-host{position:fixed;right:16px;top:max(16px,env(safe-area-inset-top));z-index:9999;width:min(390px,calc(100vw - 32px));display:grid;gap:9px;pointer-events:none}
.live-toast{pointer-events:auto;display:grid;grid-template-columns:34px minmax(0,1fr) 28px;gap:9px;align-items:start;padding:12px;background:var(--panel,#fff);color:var(--ink,#111827);border:1px solid var(--line,#d1d5db);border-left:5px solid #2563eb;border-radius:13px;box-shadow:0 14px 40px rgba(0,0,0,.22);opacity:0;transform:translateY(-10px) scale(.98);transition:.2s ease}
.live-toast.show{opacity:1;transform:none}.live-toast-success{border-left-color:#16a34a}.live-toast-warning{border-left-color:#d97706}.live-toast-danger{border-left-color:#dc2626}.live-toast-info{border-left-color:#2563eb}
.live-toast-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:var(--surface-2,#f3f4f6);font-weight:1000}.live-toast-copy{min-width:0;font-size:12px}.live-toast-copy b{display:block;margin-bottom:3px;color:var(--heading,var(--ink))}.live-toast-copy div{color:var(--ink);line-height:1.4;overflow-wrap:anywhere}
.live-toast-x{width:28px!important;height:28px!important;min-height:28px!important;padding:0!important;border:0!important;background:transparent!important;color:var(--muted)!important;font-size:18px!important}
body[data-theme="midnight"] .live-toast{box-shadow:0 14px 45px rgba(0,0,0,.55)}
.realtime-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#16a34a;box-shadow:0 0 0 3px rgba(22,163,74,.15)}
@media(max-width:600px){.toast-host{left:10px;right:10px;top:max(10px,env(safe-area-inset-top));width:auto}.live-toast{grid-template-columns:30px minmax(0,1fr) 26px;padding:10px}.live-toast-icon{width:28px;height:28px}}
/* ================= END DOZ V9 REALTIME TOAST ================= */

/* ================= DOZ V10 PROFESSIONAL LEDGER STATEMENT ================= */
.pro-statement-screen{display:grid;gap:20px;margin-top:12px}
.pro-ledger-sheet{--ledger-accent:#111827;background:#fff!important;color:#111!important;border:1px solid #cbd5e1;border-radius:3px;padding:18px 20px 16px;min-width:1050px;box-shadow:0 4px 18px rgba(15,23,42,.07);font-family:Arial,Helvetica,sans-serif}
.pro-ledger-sheet.report-design-2{--ledger-accent:#1d4ed8}.pro-ledger-sheet.report-design-3{--ledger-accent:#047857}.pro-ledger-sheet.report-design-4{--ledger-accent:#6d28d9}.pro-ledger-sheet.report-design-5{--ledger-accent:#c2410c}.pro-ledger-sheet.report-design-6{--ledger-accent:#475569}.pro-ledger-sheet.report-design-7{--ledger-accent:#a16207}.pro-ledger-sheet.report-design-8{--ledger-accent:#be123c}.pro-ledger-sheet.report-design-9{--ledger-accent:#0f766e}.pro-ledger-sheet.report-design-10{--ledger-accent:#000}
.pro-ledger-topline{height:7px;background:var(--ledger-accent);margin:-2px 0 10px}
.pro-ledger-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:start;padding:0 4px 9px}
.pro-ledger-brand{display:flex;gap:12px;align-items:center;min-width:0}.pro-ledger-logo{width:62px;height:52px;object-fit:contain}.pro-ledger-brand h1{font:700 25px/1.05 Arial!important;margin:0 0 5px!important;color:#111!important}.pro-ledger-brand div,.pro-ledger-brand small{color:#222!important;font-size:11px}.pro-ledger-company-meta{text-align:right;color:#222!important;font-size:10px;line-height:1.55;white-space:nowrap}
.pro-ledger-title{display:flex;justify-content:center;align-items:baseline;gap:22px;padding:9px 10px 10px;border-top:1px solid #222;border-bottom:1px solid #222;color:#111!important;font-size:13px}.pro-ledger-title b{color:#111!important;font-size:14px;letter-spacing:.02em}.pro-ledger-title span{font-weight:700}
.pro-ledger-personbar{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:12px;padding:10px 8px 8px;border-bottom:1px solid #222;font-size:10px;color:#111!important}.pro-ledger-personbar b{color:#111!important}.pro-ledger-person-extra{grid-column:1/-1;color:#475569!important;font-size:9px}
.pro-ledger-tablewrap{width:100%;overflow:visible}
.pro-ledger-table{width:100%;border-collapse:collapse;table-layout:fixed;color:#111!important;font-size:9px}
.pro-ledger-table th{background:#fff!important;color:#111!important;font-weight:700!important;border-bottom:1px solid #222!important;padding:8px 5px!important;text-align:left}
.pro-ledger-table td{background:#fff!important;color:#111!important;border-bottom:0!important;padding:7px 5px!important;vertical-align:top;overflow-wrap:anywhere}
.pro-ledger-table th:nth-child(1),.pro-ledger-table td:nth-child(1){width:9%}.pro-ledger-table th:nth-child(2),.pro-ledger-table td:nth-child(2){width:25%}.pro-ledger-table th:nth-child(3),.pro-ledger-table td:nth-child(3){width:10%}.pro-ledger-table th:nth-child(4),.pro-ledger-table td:nth-child(4){width:7%}.pro-ledger-table th:nth-child(5),.pro-ledger-table td:nth-child(5){width:13%}.pro-ledger-table th:nth-child(6),.pro-ledger-table td:nth-child(6){width:9%}.pro-ledger-table th:nth-child(7),.pro-ledger-table td:nth-child(7),.pro-ledger-table th:nth-child(8),.pro-ledger-table td:nth-child(8){width:9%}.pro-ledger-table th:nth-child(9),.pro-ledger-table td:nth-child(9){width:10%}
.pro-ledger-table .num{text-align:right!important;font-variant-numeric:tabular-nums}.pro-ledger-table .opening-row td{font-weight:600}.pro-ledger-table tbody tr:hover td{background:#fff!important}
.pro-ledger-summary{display:grid;grid-template-columns:minmax(180px,1fr) 300px 90px 90px 110px;align-items:center;margin-top:10px;font-size:10px;color:#111!important}.pro-ledger-summary>div{padding:8px 5px}.pro-ledger-summary .summary-label{text-align:left}.pro-ledger-summary .summary-debit,.pro-ledger-summary .summary-credit,.pro-ledger-summary .summary-balance{text-align:right;font-variant-numeric:tabular-nums;border-top:1px dashed #555}.pro-ledger-summary .strong{font-weight:800;border-top:2px double #222!important}
.pro-ledger-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #cbd5e1;margin-top:14px;padding-top:8px;color:#64748b!important;font-size:8px}
body[data-theme] .pro-ledger-sheet,body[data-theme] .pro-ledger-sheet *{color:#111!important}
body[data-theme] .pro-ledger-sheet{background:#fff!important}.pro-statement-screen{overflow-x:auto;-webkit-overflow-scrolling:touch}
@media(max-width:700px){.pro-ledger-sheet{min-width:980px;padding:14px}.pro-ledger-header{grid-template-columns:1fr}.pro-ledger-company-meta{text-align:left}.pro-ledger-title{justify-content:flex-start}.pro-ledger-personbar{grid-template-columns:1fr 220px}}
@media print{
  .pro-statement-screen{display:block!important;overflow:visible!important}.pro-ledger-sheet{min-width:0!important;width:100%!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important;page-break-after:always}.pro-ledger-sheet:last-child{page-break-after:auto}
  .pro-ledger-table{font-size:8px!important}.pro-ledger-header{padding-top:0}.pro-ledger-topline{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  @page{size:A4 landscape;margin:9mm}
}
/* ================= END DOZ V10 PROFESSIONAL LEDGER STATEMENT ================= */

/* ================= DOZ V11 COMPACT CENTERED REPORT + WATERMARK ================= */
.compact-report-preview,.pro-ledger-sheet{position:relative;isolation:isolate;overflow:hidden}
.report-page-watermark,.pro-ledger-watermark{
  position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;
  width:min(34%,250px)!important;height:min(30%,190px)!important;object-fit:contain!important;opacity:.12!important;
  filter:grayscale(1)!important;z-index:0!important;pointer-events:none!important;user-select:none!important;
}
.compact-report-preview>*:not(.report-page-watermark),.pro-ledger-sheet>*:not(.pro-ledger-watermark){position:relative;z-index:1}
.compact-report-preview{padding:10px 12px 8px!important;border-radius:2px!important}
.compact-report-head{text-align:center!important;margin:0 0 5px!important;padding:0 0 5px!important;border-bottom:1px solid #111827}
.compact-report-logo{display:block!important;width:42px!important;height:30px!important;object-fit:contain!important;margin:0 auto 2px!important}
.compact-report-head h2{font-size:18px!important;line-height:1.05!important;margin:0 0 2px!important}
.compact-report-head h3{font-size:13px!important;line-height:1.05!important;margin:5px 0 1px!important}
.compact-report-head div,.compact-report-head small{font-size:9px!important;line-height:1.25!important;color:#222!important}
.compact-report-preview table th{padding:5px 4px!important}.compact-report-preview table td{padding:4px!important}
.compact-report-preview .report-footer{margin-top:7px!important;padding-top:4px!important}
.pro-ledger-header-center{display:block!important;text-align:center!important;padding:0 3px 5px!important}
.pro-ledger-logo-center{display:block!important;width:42px!important;height:30px!important;margin:0 auto 2px!important}
.pro-ledger-header-center h1{font-size:19px!important;line-height:1.02!important;margin:0 0 2px!important}
.pro-ledger-header-center div,.pro-ledger-header-center small{display:block!important;font-size:8.5px!important;line-height:1.22!important;color:#222!important}
.pro-ledger-title{padding:5px 7px 6px!important;gap:14px!important;font-size:10px!important}
.pro-ledger-title b{font-size:11px!important}.pro-ledger-personbar{padding:6px!important}.pro-ledger-table th{padding:5px 4px!important}.pro-ledger-table td{padding:4px!important}.pro-ledger-summary{margin-top:5px!important}.pro-ledger-summary>div{padding:5px 4px!important}.pro-ledger-footer{margin-top:7px!important;padding-top:5px!important}
@media print{
  .report-page-watermark,.pro-ledger-watermark{opacity:.12!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
  .compact-report-preview{padding:0!important;border:0!important}
  .compact-report-head{margin-bottom:4px!important;padding-bottom:4px!important}
  .pro-ledger-logo-center,.compact-report-logo{width:38px!important;height:27px!important}
  .pro-ledger-sheet{padding:0!important}
  @page{margin:7mm}
}
/* ================= END DOZ V11 COMPACT CENTERED REPORT + WATERMARK ================= */

/* ================= DOZ V12 WATERMARK LAYER FIX ================= */
/* ONLY the logo watermark is transparent. All report/table/text layers stay at 100%. */
.report-page-watermark,.pro-ledger-watermark{
  opacity:.12!important;
  z-index:0!important;
  pointer-events:none!important;
  mix-blend-mode:multiply;
}
.compact-report-preview>*:not(.report-page-watermark),
.pro-ledger-sheet>*:not(.pro-ledger-watermark){
  position:relative!important;
  z-index:2!important;
  opacity:1!important;
}
.compact-report-preview,.compact-report-preview table,.compact-report-preview th,.compact-report-preview td,
.compact-report-preview h1,.compact-report-preview h2,.compact-report-preview h3,.compact-report-preview div,.compact-report-preview small,
.pro-ledger-sheet,.pro-ledger-sheet table,.pro-ledger-sheet th,.pro-ledger-sheet td,
.pro-ledger-sheet h1,.pro-ledger-sheet h2,.pro-ledger-sheet h3,.pro-ledger-sheet div,.pro-ledger-sheet small{
  opacity:1!important;
}
body[data-theme] .compact-report-preview,
body[data-theme] .pro-ledger-sheet{background:#fff!important;color:#111!important}
body[data-theme] .compact-report-preview *:not(.report-page-watermark),
body[data-theme] .pro-ledger-sheet *:not(.pro-ledger-watermark){color:#111!important}
@media print{
  .report-page-watermark,.pro-ledger-watermark{
    opacity:.12!important;
    z-index:0!important;
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }
  .compact-report-preview>*:not(.report-page-watermark),
  .pro-ledger-sheet>*:not(.pro-ledger-watermark){opacity:1!important;z-index:2!important}
}
/* ================= END DOZ V12 WATERMARK LAYER FIX ================= */

/* ================= DOZ V13 NO REPORT WATERMARK ================= */
.report-page-watermark,.pro-ledger-watermark{display:none!important;opacity:0!important}
@media print{.report-page-watermark,.pro-ledger-watermark{display:none!important}}
/* ================= END DOZ V13 NO REPORT WATERMARK ================= */

/* ================= DOZ V14 DASHBOARD ================= */
.business-flow-card{margin-top:12px;padding:14px!important}
.flow-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.flow-head h3{margin:0 0 2px}.flow-head small{color:var(--muted)}
.flow-controls{display:flex;align-items:center;gap:8px}.flow-controls input{padding:7px 9px;min-width:136px}
.flow-tabs{display:inline-flex;padding:3px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2,#f8fafc)}.flow-tabs button{padding:6px 10px;border:0!important;border-radius:7px!important;background:transparent!important;font-size:11px}.flow-tabs button.active{background:var(--primary-bg,#111827)!important;color:var(--primary-ink,#fff)!important}
.flow-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:8px 0 4px}.flow-kpis>div{padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2,#f8fafc);min-width:0}.flow-kpis small{display:block;color:var(--muted);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flow-kpis b{display:block;margin-top:2px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flow-kpis .positive{color:var(--ok)!important}.flow-kpis .negative{color:var(--bad)!important}
.flow-legend{display:flex;justify-content:flex-end;gap:14px;font-size:10px;color:var(--muted);padding:4px 3px}.flow-legend span{display:flex;align-items:center;gap:5px}.flow-legend i{width:9px;height:9px;border-radius:2px;display:inline-block}.flow-legend i.sales{background:#2563eb}.flow-legend i.expenses{background:#f59e0b}
.flow-chart-wrap{width:100%;overflow:hidden}.business-flow-svg{display:block;width:100%;height:auto;min-height:190px;max-height:310px}.flow-grid{stroke:var(--line);stroke-width:1}.flow-y-label,.flow-x-label{fill:var(--muted);font-size:9px}.flow-sales{fill:#2563eb}.flow-expenses{fill:#f59e0b}.flow-bar{transition:opacity .15s}.flow-bar:hover{opacity:.72}
.flow-loading{opacity:.65;pointer-events:none}

.compact-approval-card{padding:9px 12px!important;margin-bottom:9px!important;border-left:3px solid #f59e0b!important;box-shadow:none!important}.approval-mini{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:38px}.approval-mini-title{display:flex;align-items:center;gap:8px;white-space:nowrap}.approval-mini-title b{font-size:12px}.approval-mini-title small{display:block;font-size:9px;color:var(--muted)}.approval-mini-dot{width:8px;height:8px;border-radius:50%;background:#f59e0b;box-shadow:0 0 0 3px rgba(245,158,11,.15)}.approval-mini-items{display:flex;gap:5px;overflow:hidden;min-width:0}.approval-mini-item{font-size:9px;padding:4px 7px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2,#f8fafc);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.approval-mini-empty{font-size:10px;color:var(--muted)}.approval-mini-btn{padding:6px 9px!important;font-size:10px!important;min-height:30px!important}.compact-approval-card .approval-badge{height:17px;min-width:17px;font-size:9px;padding:0 5px}

.dashboard-users-card{margin-top:12px;padding:14px!important}.dashboard-user-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.dashboard-user-head h3{margin:0 0 2px}.dashboard-user-head small{color:var(--muted);font-size:9px}.dashboard-user-head button{padding:6px 9px;font-size:10px}
.user-status-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:10px 0}.user-status-kpis>div{padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2,#f8fafc)}.user-status-kpis small{font-size:9px;color:var(--muted)}.user-status-kpis b{display:block;font-size:15px;margin-top:1px}
.active-user-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:6px}.active-user-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto auto;align-items:center;gap:7px;padding:7px 8px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.active-user-avatar{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:var(--surface-3,#e5e7eb);font-size:9px;font-weight:900}.active-user-copy{min-width:0}.active-user-copy b{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.active-user-copy small{display:block;font-size:8px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.user-account-badge,.presence-badge{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:800;white-space:nowrap;border:1px solid transparent}.user-account-badge i,.presence-badge i{width:6px;height:6px;border-radius:50%}
.user-account-badge.active{background:#ecfdf5;color:#166534;border-color:#bbf7d0}.user-account-badge.active i{background:#16a34a}.user-account-badge.inactive{background:#f1f5f9;color:#64748b;border-color:#cbd5e1}.user-account-badge.inactive i{background:#94a3b8}
.presence-badge.online{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.presence-badge.online i{background:#2563eb;box-shadow:0 0 0 2px rgba(37,99,235,.12)}.presence-badge.offline{background:#f8fafc;color:#64748b;border-color:#e2e8f0}.presence-badge.offline i{background:#94a3b8}
body[data-theme="midnight"] .user-account-badge.active{background:#052e22;color:#86efac;border-color:#166534}body[data-theme="midnight"] .user-account-badge.inactive,body[data-theme="midnight"] .presence-badge.offline{background:#172033;color:#cbd5e1;border-color:#475569}body[data-theme="midnight"] .presence-badge.online{background:#172554;color:#bfdbfe;border-color:#1d4ed8}

@media(max-width:900px){.flow-kpis{grid-template-columns:repeat(3,1fr)}.approval-mini{grid-template-columns:1fr auto}.approval-mini-items{grid-column:1/-1;order:3}.active-user-list{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.flow-head{align-items:stretch;flex-direction:column}.flow-controls{justify-content:space-between}.flow-controls input{min-width:125px}.flow-kpis{grid-template-columns:1fr 1fr}.business-flow-svg{min-width:720px}.flow-chart-wrap{overflow-x:auto}.approval-mini{grid-template-columns:minmax(0,1fr) auto}.approval-mini-items{display:none}.active-user-list{grid-template-columns:1fr}.active-user-row{grid-template-columns:30px minmax(0,1fr) auto}.active-user-row .user-account-badge{display:none}}
/* ================= END DOZ V14 DASHBOARD ================= */

/* ================= DOZ V16 ACCOUNTING REPORT SUMMARY ================= */
.report-summary-grid{display:grid;gap:4px;margin-top:8px;border-top:2px solid #111827;padding-top:6px}
.report-summary-row{display:grid;grid-template-columns:minmax(180px,1fr) repeat(auto-fit,minmax(110px,160px));align-items:center;gap:7px;padding:6px 8px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;color:#111!important}
.report-summary-row>b{font-size:10px;color:#111!important}.report-summary-row span{text-align:right}.report-summary-row small{display:block;font-size:8px;color:#64748b!important}.report-summary-row strong{font-size:10px;color:#111!important}
.report-note{margin-top:8px;padding:8px 10px;border-left:3px solid #d97706;background:#fffbeb;color:#78350f!important;font-size:9px;line-height:1.4}
body[data-theme="midnight"] .report-summary-row,body[data-theme="midnight"] .report-note{background:#fff!important;color:#111!important}
@media(max-width:620px){.report-summary-row{grid-template-columns:1fr 1fr}.report-summary-row>b{grid-column:1/-1}}
@media print{.report-summary-row{break-inside:avoid;background:#fff!important}.report-note{background:#fff!important;color:#111!important;border-color:#111!important}}
/* ================= END DOZ V16 ACCOUNTING REPORT SUMMARY ================= */

/* ================= DOZ V17 REPORT ENDING ================= */
.report-ending{margin-top:8px;display:block;break-inside:avoid;page-break-inside:avoid}
.report-ending .report-note{max-width:100%;margin:8px 0}
.report-ending .report-summary-grid{width:min(56%,620px);margin-left:auto;margin-right:0;border-top:2px solid #111827;padding-top:4px;gap:0}
.report-ending .report-summary-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(110px,1fr);padding:5px 6px;border:0;border-bottom:1px solid #d1d5db;border-radius:0;background:transparent!important}
.report-ending .report-summary-row>b{text-align:left}
.report-ending .report-summary-row span{text-align:right}
.report-ending .report-summary-row span+span{grid-column:2}
.report-ending .report-footer{width:min(56%,620px);margin:6px 0 0 auto;padding:4px 0 0;border-top:0!important;text-align:right!important}
@media(max-width:720px){
  .report-ending .report-summary-grid,.report-ending .report-footer{width:100%}
  .report-ending .report-summary-row{grid-template-columns:1fr 1fr}
}
@media print{
  .report-ending{break-inside:avoid!important;page-break-inside:avoid!important}
  .report-ending .report-summary-grid,.report-ending .report-footer{width:56%!important;margin-left:auto!important;margin-right:0!important}
  .report-ending .report-footer{text-align:right!important}
}
/* ================= END DOZ V17 REPORT ENDING ================= */

/* ================= DOZ V18 REPORT HEADER ================= */
.compact-report-preview{border-top:0!important}
.compact-report-logo{width:56px!important;height:40px!important;margin:0 auto 3px!important}
@media print{
  .compact-report-preview{border-top:0!important}
  .compact-report-logo{width:52px!important;height:37px!important}
}
/* ================= END DOZ V18 REPORT HEADER ================= */

/* ================= DOZ V19 DEFAULT CONTROL CENTER ================= */
.default-control-center{margin:0 0 14px;border:1px solid var(--line);box-shadow:0 10px 30px rgba(15,23,42,.05)}
.default-control-center>hr{border:0;border-top:1px solid var(--line);margin:16px 0}
.default-control-section{padding:12px 0;border-bottom:1px dashed var(--line)}
.default-control-section:last-child{border-bottom:0}
.default-control-section h4{margin:0 0 5px}
.default-control-section label small{display:block;margin-top:3px;color:var(--muted)}
.default-control-scope{display:flex;justify-content:flex-end;margin:4px 0 8px}
.default-control-scope label{min-width:260px}
@media(max-width:720px){.default-control-scope{justify-content:stretch}.default-control-scope label{width:100%;min-width:0}}
/* ================= END DOZ V19 DEFAULT CONTROL CENTER ================= */

/* ================= DOZ V20 PROFESSIONAL MESSAGES ================= */
.toast-host{
  position:fixed!important;
  top:max(18px,env(safe-area-inset-top))!important;
  right:18px!important;
  left:auto!important;
  width:min(420px,calc(100vw - 36px))!important;
  display:grid!important;
  gap:10px!important;
  z-index:99999!important;
  pointer-events:none!important;
}
.live-toast{
  position:relative!important;
  pointer-events:auto!important;
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr) 30px!important;
  gap:11px!important;
  align-items:center!important;
  min-height:72px!important;
  padding:12px 12px 12px 13px!important;
  overflow:hidden!important;
  background:var(--panel,#fff)!important;
  color:var(--ink,#111827)!important;
  border:1px solid color-mix(in srgb,var(--line,#d1d5db) 90%,transparent)!important;
  border-left-width:4px!important;
  border-radius:15px!important;
  box-shadow:0 18px 46px rgba(15,23,42,.18),0 2px 7px rgba(15,23,42,.08)!important;
  opacity:0!important;
  transform:translateY(-8px) scale(.985)!important;
  transition:opacity .2s ease,transform .2s ease!important;
}
.live-toast.show{opacity:1!important;transform:none!important}
.live-toast-success{border-left-color:#16a34a!important}
.live-toast-warning{border-left-color:#d97706!important}
.live-toast-danger{border-left-color:#dc2626!important}
.live-toast-info{border-left-color:#2563eb!important}

.live-toast-icon{
  width:38px!important;
  height:38px!important;
  border-radius:11px!important;
  display:grid!important;
  place-items:center!important;
  font-size:18px!important;
  font-weight:900!important;
  line-height:1!important;
  background:#eff6ff!important;
  color:#1d4ed8!important;
}
.live-toast-success .live-toast-icon{background:#ecfdf3!important;color:#15803d!important}
.live-toast-warning .live-toast-icon{background:#fffbeb!important;color:#b45309!important}
.live-toast-danger .live-toast-icon{background:#fef2f2!important;color:#b91c1c!important}

.live-toast-copy{
  min-width:0!important;
  padding:1px 0!important;
  overflow:hidden!important;
}
.live-toast-kicker{
  margin-bottom:2px!important;
  font-size:10px!important;
  line-height:1.2!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  letter-spacing:.055em!important;
  color:var(--muted,#64748b)!important;
}
.live-toast-copy b{
  display:block!important;
  margin:0!important;
  color:var(--heading,var(--ink,#111827))!important;
  font-size:13.5px!important;
  line-height:1.3!important;
  font-weight:800!important;
  overflow-wrap:anywhere!important;
}
.live-toast-message{
  margin-top:3px!important;
  color:var(--muted,#475569)!important;
  font-size:12px!important;
  line-height:1.42!important;
  overflow-wrap:anywhere!important;
}
.live-toast-x{
  align-self:start!important;
  justify-self:end!important;
  width:28px!important;
  height:28px!important;
  min-height:28px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:var(--muted,#64748b)!important;
  font-size:19px!important;
  line-height:1!important;
  transition:background .15s ease,color .15s ease!important;
}
.live-toast-x:hover{background:var(--surface-2,#f1f5f9)!important;color:var(--ink,#111827)!important}
.live-toast-progress{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:2px!important;
  transform-origin:left center!important;
  background:currentColor!important;
  opacity:.38!important;
  animation:dozToastProgress linear forwards!important;
}
.live-toast-success .live-toast-progress{color:#16a34a!important}
.live-toast-warning .live-toast-progress{color:#d97706!important}
.live-toast-danger .live-toast-progress{color:#dc2626!important}
.live-toast-info .live-toast-progress{color:#2563eb!important}
@keyframes dozToastProgress{from{transform:scaleX(1)}to{transform:scaleX(0)}}

body[data-theme="midnight"] .live-toast{
  box-shadow:0 18px 48px rgba(0,0,0,.52)!important;
}
body[data-theme="midnight"] .live-toast-message,
body[data-theme="midnight"] .live-toast-kicker{color:var(--muted)!important}

@media(max-width:600px){
  .toast-host{
    top:max(10px,env(safe-area-inset-top))!important;
    left:10px!important;
    right:10px!important;
    width:auto!important;
  }
  .live-toast{
    grid-template-columns:36px minmax(0,1fr) 28px!important;
    gap:9px!important;
    min-height:64px!important;
    padding:10px 10px 10px 11px!important;
    border-radius:13px!important;
  }
  .live-toast-icon{width:34px!important;height:34px!important;border-radius:10px!important;font-size:16px!important}
  .live-toast-copy b{font-size:13px!important}
  .live-toast-message{font-size:11.5px!important}
}
/* ================= END DOZ V20 PROFESSIONAL MESSAGES ================= */

/* ================= DOZ V21 DASHBOARD TOP RECORDS ================= */
.dashboard-top-records{margin-top:14px;overflow:hidden}
.top-record-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.top-record-head h3{margin:0}.top-record-head small{color:var(--muted)}
.top-record-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.top-record-controls select{width:auto;min-width:92px;padding:8px 30px 8px 10px}
.top-record-controls button{min-width:38px;padding:8px 10px}
.top-custom-dates{display:none;align-items:end;gap:8px;justify-content:flex-end;margin:0 0 10px;padding:9px;background:var(--surface-2);border:1px solid var(--line);border-radius:11px}
.top-custom-dates.show{display:flex}.top-custom-dates label{max-width:170px}.top-custom-dates input{padding:8px}
.top-record-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 10px}
.top-record-kpis>div{padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}
.top-record-kpis small,.top-record-kpis span{display:block;color:var(--muted);font-size:11px}.top-record-kpis b{display:block;margin:2px 0;font-size:16px;color:var(--heading,var(--ink))}
.top-record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.top-record-panel{min-width:0;border:1px solid var(--line);border-radius:14px;background:var(--panel);overflow:hidden}
.top-panel-title{display:flex;justify-content:space-between;align-items:end;gap:8px;padding:11px 12px 9px;border-bottom:1px solid var(--line);background:var(--surface-2)}
.top-panel-title h4{margin:0;font-size:13px}.top-panel-title span{font-size:10.5px;color:var(--muted);text-align:right}
.top-record-list{display:grid}.top-record-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 11px;border-bottom:1px solid var(--line)}
.top-record-row:last-child{border-bottom:0}.top-record-rank{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;background:var(--surface-2);color:var(--muted);font-size:11px;font-weight:800}
.top-record-row:first-child .top-record-rank{background:#fff7ed;color:#c2410c}
.top-record-main{min-width:0}.top-record-main b,.top-record-value b{display:block;color:var(--heading,var(--ink));font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.top-record-main small,.top-record-value small{display:block;margin-top:2px;color:var(--muted);font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.top-record-value{text-align:right;min-width:90px}.top-record-value .positive{color:#15803d!important}.top-record-value .negative{color:#b91c1c!important}
.top-record-empty{padding:22px 14px;text-align:center;color:var(--muted);font-size:11px}.top-record-empty b{display:block;color:var(--heading,var(--ink));margin-bottom:4px}.top-record-empty small{display:block;line-height:1.45}
.top-record-empty.future{background:linear-gradient(135deg,var(--surface-2),transparent)}
.top-record-loading{opacity:.7;pointer-events:none}
@media(max-width:850px){.top-record-grid{grid-template-columns:1fr}.top-record-head{align-items:flex-start}.top-record-kpis{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:600px){
  .top-record-head{display:grid}.top-record-controls{display:grid;grid-template-columns:1fr 1fr auto}.top-record-controls select{width:100%}
  .top-record-kpis{grid-template-columns:1fr}.top-custom-dates.show{display:grid;grid-template-columns:1fr 1fr}.top-custom-dates button{grid-column:1/-1}.top-custom-dates label{max-width:none}
  .top-record-row{grid-template-columns:26px minmax(0,1fr);align-items:start}.top-record-value{grid-column:2;text-align:left;min-width:0}
}
/* ================= END DOZ V21 DASHBOARD TOP RECORDS ================= */

/* ================= DOZ V23 DASHBOARD PERMISSION ================= */
.dashboard-section-hidden{display:none!important}
.dashboard-visibility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
.dashboard-visibility-item{display:grid;grid-template-columns:minmax(0,1fr) 155px;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}
.dashboard-visibility-item>span{font-size:12px;font-weight:650;color:var(--heading,var(--ink))}
.dashboard-visibility-item select{margin:0;padding:7px 28px 7px 8px;min-height:34px}
.dashboard-visibility-control .actions{display:flex;gap:6px;flex-wrap:wrap}
@media(max-width:760px){.dashboard-visibility-grid{grid-template-columns:1fr}.dashboard-visibility-item{grid-template-columns:minmax(0,1fr) 135px}}
@media(max-width:420px){.dashboard-visibility-item{grid-template-columns:1fr}.dashboard-visibility-item select{width:100%}}
/* ================= END DOZ V23 DASHBOARD PERMISSION ================= */

.dashboard-customize-bar{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:0 0 10px;color:var(--muted);font-size:11px}
.dashboard-customize-bar button{padding:7px 10px;min-height:34px}
@media(max-width:600px){.dashboard-customize-bar{justify-content:space-between}.dashboard-customize-bar span{max-width:58%}}

/* ================= DOZ V24 CAPITAL OWNER ================= */
.owner-profile-head{display:grid;grid-template-columns:76px minmax(0,1fr) 190px;gap:14px;align-items:center}
.owner-profile-image{width:72px;height:72px;border-radius:16px;object-fit:cover;border:1px solid var(--line)}
.owner-placeholder{display:grid;place-items:center;background:var(--surface-2);font-size:28px}.owner-qr{justify-self:end}.owner-qr svg{width:150px;height:150px;display:block}
.owner-profile-metrics{margin:12px 0}.card-flat{padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);line-height:1.7}
.profit-preview{margin-top:10px}.profit-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:8px}.profit-preview-grid span{padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}.profit-preview-grid b{display:block;margin-top:3px}
@media(max-width:700px){.owner-profile-head{grid-template-columns:64px 1fr}.owner-qr{grid-column:1/-1;justify-self:center}.profit-preview-grid{grid-template-columns:1fr}}
/* ================= END DOZ V24 CAPITAL OWNER ================= */

/* ================= DOZ V25 OWNER MERGE ================= */
.owner-duplicate-pair{margin:10px 0;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}
.owner-duplicate-pair>div:first-child{display:flex;justify-content:space-between;gap:8px}.owner-duplicate-pair small{display:block;color:var(--muted);margin-top:3px}
.owner-duplicate-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:9px 0}.owner-duplicate-grid>div{padding:9px;border:1px solid var(--line);border-radius:9px;background:var(--panel)}
@media(max-width:650px){.owner-duplicate-grid{grid-template-columns:1fr}.owner-duplicate-pair>div:first-child{display:block}}
/* ================= END DOZ V25 OWNER MERGE ================= */

/* ================= DOZ V27 SAFE DATABASE EMPTY ================= */
.danger-modal-head{display:flex;align-items:center;gap:12px;margin:0 0 12px}.danger-modal-head h3{margin:0}.danger-modal-head small{color:var(--muted)}
.danger-modal-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#fef2f2;color:#b91c1c;font-size:23px;font-weight:900;border:1px solid #fecaca;flex:0 0 auto}
.danger-modal-head.final .danger-modal-icon{width:48px;height:48px;font-size:26px}
.destructive-check-state{padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--muted);font-size:12px}
.destructive-check-state.ok{border-color:#86efac;background:#f0fdf4;color:#166534}.destructive-check-state.bad{border-color:#fca5a5;background:#fef2f2;color:#991b1b}
.destructive-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.destructive-info-grid>div{padding:10px 11px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}
.destructive-info-grid small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}.destructive-info-grid b{display:block;font-size:12px;line-height:1.45}
.destructive-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.destructive-actions button:disabled{opacity:.45;cursor:not-allowed}
.final-delete-summary{display:grid;gap:10px}.final-delete-summary p{margin:0}.ok-box{padding:10px 12px;border:1px solid #86efac;border-radius:11px;background:#f0fdf4;color:#166534}
.final-understand{margin:14px 0!important;padding:11px!important;border:1px solid #fbbf24!important;border-radius:11px!important;background:#fffbeb!important}
.success-confirmation{text-align:center;padding:18px 10px}.success-confirmation-icon{width:56px;height:56px;margin:0 auto 10px;display:grid;place-items:center;border-radius:50%;background:#ecfdf3;color:#15803d;font-size:28px;font-weight:900}.success-confirmation h3{margin:0 0 8px}.success-confirmation p{margin:4px 0}
@media(max-width:600px){.destructive-info-grid{grid-template-columns:1fr}.destructive-actions{display:grid;grid-template-columns:1fr}.destructive-actions button{width:100%}}
/* ================= END DOZ V27 SAFE DATABASE EMPTY ================= */

/* ================= DOZ V28 BRANCH DATA EMPTY ================= */
#emptyBranchWrap small{display:block;margin-top:4px;color:var(--muted);font-size:11px;line-height:1.4}
#emptyScope,#emptyBranch{font-weight:650}
.final-delete-summary .destructive-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:600px){.final-delete-summary .destructive-info-grid{grid-template-columns:1fr}}
/* ================= END DOZ V28 BRANCH DATA EMPTY ================= */

/* ================= DOZ V29 SAFE RESTORE ================= */
.restore-modal-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}.restore-modal-head h3{margin:0}.restore-modal-head small{color:var(--muted)}
.restore-modal-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;font-size:25px;font-weight:800}.restore-modal-icon.danger{background:#fef2f2;border-color:#fecaca;color:#b91c1c}
.restore-scope-box{padding:11px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);margin-bottom:10px}.restore-scope-box>label{margin:0}
.restore-branch-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:10px}.restore-branch-grid .full{grid-column:1/-1}
.restore-shared-note{padding:9px 11px;border:1px solid #bfdbfe;border-radius:10px;background:#eff6ff;color:#1e3a8a;font-size:12px;line-height:1.45}
.restore-impact-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.restore-impact-grid>div{padding:10px 11px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}.restore-impact-grid small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}.restore-impact-grid b{font-size:12px;line-height:1.45}
.restore-summary.valid{padding:11px 12px;border:1px solid #86efac;border-radius:11px;background:#f0fdf4;color:#14532d}.restore-valid-head{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px}.restore-valid-head span{font-size:11px;border:1px solid #86efac;border-radius:999px;padding:2px 8px}
.restore-backup-branches{display:grid;gap:5px;margin-top:8px}.restore-branch-summary{padding:7px 9px;border:1px solid rgba(22,101,52,.2);border-radius:8px;background:rgba(255,255,255,.55)}.restore-branch-summary small{display:block;margin-top:3px;line-height:1.4}
@media(max-width:650px){.restore-branch-grid,.restore-impact-grid{grid-template-columns:1fr}.restore-branch-grid .full{grid-column:auto}.restore-valid-head{display:block}.restore-valid-head span{display:inline-block;margin-top:5px}}
/* ================= END DOZ V29 SAFE RESTORE ================= */

/* ================= DOZ V30 GLOBAL DROPDOWN FIX ================= */
/*
  Windows Edge/Chrome can show clipped/black native select artifacts when a select
  is empty or its line box is allowed to collapse inside a scrolling modal.
  Keep every normal single-select on one stable native control box.
*/
select{
  display:block;
  width:100%;
  min-width:0;
  min-height:42px;
  height:42px;
  padding:9px 34px 9px 11px;
  line-height:1.2;
  vertical-align:middle;
  white-space:nowrap;
  text-overflow:ellipsis;
  border-style:solid;
  border-width:1px;
  border-radius:9px;
  background-clip:padding-box;
  -webkit-appearance:auto;
  appearance:auto;
}
select[multiple],select[size]:not([size="1"]){
  height:auto;
  min-height:90px;
  overflow:auto;
  white-space:normal;
}
select option{min-height:28px}
.modal-card select,.formgrid select,.restore-branch-grid select,.restore-scope-box select{
  max-width:100%;
  overflow:hidden;
}
label>select{margin:0}
/* Keep intentionally compact dashboard selectors compact without clipping. */
.top-record-controls select,.dashboard-visibility-item select{
  height:36px;
  min-height:36px;
}
/* ================= END DOZ V30 GLOBAL DROPDOWN FIX ================= */

/* ================= DOZ V31 SUPER ADMIN RECOVERY ================= */
.login-recovery-link{margin-top:7px;padding:4px 0!important;border:0!important;background:transparent!important;color:#2563eb!important;font-size:11px!important;font-weight:750!important;text-align:left!important;box-shadow:none!important}
.login-recovery-link:hover{text-decoration:underline}
.recovery-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}.recovery-head h3{margin:0}.recovery-head small{color:var(--muted)}
.recovery-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;font-size:24px;font-weight:900}
@media(max-width:600px){.recovery-head{align-items:flex-start}.recovery-icon{width:40px;height:40px}}
/* ================= END DOZ V31 SUPER ADMIN RECOVERY ================= */

/* ================= DOZ V32 LOGIN BUTTON FIX ================= */
.login-submit:disabled{opacity:.7;cursor:wait}
.login-card input:disabled,.login-card select:disabled{pointer-events:none}
.login-card .msg:not(:empty){margin-top:8px}
.login-card .msg.ok{color:#166534}
body[data-theme="midnight"] .login-card .msg.ok{color:#86efac}
/* ================= END DOZ V32 LOGIN BUTTON FIX ================= */


/* DOZ V34 MENU ORDER ORGANIZER */
.menu-order-organizer{padding-top:2px}
.menu-order-toolbar{display:grid;grid-template-columns:minmax(210px,1fr) minmax(210px,1fr);gap:12px;align-items:end;margin:10px 0 8px}
.menu-order-toolbar-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}
.menu-order-status{margin:8px 0 10px;padding:9px 11px;border:1px solid var(--border,#dbe2ea);border-radius:10px;background:var(--soft,#f8fafc)}
.menu-order-list{display:flex;flex-direction:column;gap:7px;max-width:850px}
.menu-order-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--border,#dbe2ea);border-radius:12px;padding:8px 10px;background:var(--card,#fff)}
.menu-order-index{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;font-weight:800;background:var(--soft,#f1f5f9)}
.menu-order-name{display:flex;flex-direction:column;min-width:0}
.menu-order-name b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.menu-order-name small{opacity:.68;margin-top:2px}
.menu-order-actions{display:flex;gap:6px}
.menu-order-actions button{min-width:76px;padding:7px 9px}
.menu-order-actions button:disabled{opacity:.35;cursor:not-allowed}
@media(max-width:700px){
  .menu-order-toolbar{grid-template-columns:1fr}
  .menu-order-toolbar-actions{grid-column:1}
  .menu-order-row{grid-template-columns:34px minmax(0,1fr)}
  .menu-order-actions{grid-column:1/-1;padding-left:44px}
  .menu-order-actions button{flex:1}
}
/* END DOZ V34 MENU ORDER ORGANIZER */

/* ================= DOZ V36 OWNER MULTI-BRANCH ================= */
.owner-multi-branches{padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}
.owner-branch-checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:6px;margin:8px 0}
.owner-branch-checks .check{margin:0;padding:7px 8px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
/* ================= END DOZ V36 OWNER MULTI-BRANCH ================= */

/* ================= DOZ V40 DASHBOARD EMPTY/PERMISSION FIX ================= */
.dashboard-empty-permission,.dashboard-load-fallback{max-width:900px}
.dashboard-empty-permission p,.dashboard-load-fallback p{margin:8px 0 0;color:var(--muted)}
.dashboard-partial-warning{margin-top:12px}
/* ================= END DOZ V40 DASHBOARD FIX ================= */




/* ================= DOZ V54 GLOBAL SELECT STABILITY ================= */
select:not([multiple]):not([size]),select[size="1"]{
  -webkit-appearance:none!important;
  appearance:none!important;
  background-image:
    linear-gradient(45deg,transparent 50%,currentColor 50%),
    linear-gradient(135deg,currentColor 50%,transparent 50%)!important;
  background-position:
    calc(100% - 16px) 50%,
    calc(100% - 11px) 50%!important;
  background-size:5px 5px,5px 5px!important;
  background-repeat:no-repeat!important;
  padding-right:34px!important;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  box-shadow:none!important;
}
select:not([multiple]):not([size]):focus,select[size="1"]:focus{outline:2px solid rgba(37,99,235,.18);outline-offset:1px}
select:not([multiple]):not([size]):disabled,select[size="1"]:disabled{cursor:not-allowed;background-image:none!important}
select[multiple],select[size]:not([size="1"]){
  -webkit-appearance:auto!important;
  appearance:auto!important;
  background-image:none!important;
  padding-right:11px!important;
}
.formgrid label,.toolbar label,.statement-toolbar label,.modal-card label{overflow:visible}
.select-empty-note{margin-top:6px;font-size:11px;color:var(--bad)}
/* ================= END DOZ V54 GLOBAL SELECT STABILITY ================= */

body[data-theme] select:not([multiple]):not([size]),select[size="1"]{
  -webkit-appearance:none!important;
  appearance:none!important;
  background-image:
    linear-gradient(45deg,transparent 50%,currentColor 50%),
    linear-gradient(135deg,currentColor 50%,transparent 50%)!important;
  background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%!important;
  background-size:5px 5px,5px 5px!important;
  background-repeat:no-repeat!important;
}
body[data-theme] select:not([multiple]):not([size]):disabled,select[size="1"]:disabled{background-image:none!important}

@media print{select:not([multiple]):not([size]),select[size="1"]{background-image:none!important;padding-right:8px!important}}
body[data-animation="soft"] #content>.card{animation:v60soft .22s ease-out}body[data-animation="slide"] #content>.card{animation:v60slide .28s ease-out}body[data-animation="bounce"] #content>.card{animation:v60bounce .38s ease-out}@keyframes v60soft{from{opacity:.25;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes v60slide{from{opacity:.2;transform:translateX(14px)}to{opacity:1;transform:none}}@keyframes v60bounce{0%{opacity:.2;transform:scale(.97)}70%{transform:scale(1.01)}100%{opacity:1;transform:scale(1)}}.v60-branch-picker{padding:10px 14px;margin-bottom:12px}.v60-branch-picker label{max-width:420px}.settings-search-card{position:sticky;top:64px;z-index:12}.settings-search-card .toolbar{margin:0}
.whatsapp-share{background:#16a34a!important;color:#fff!important;border-color:#15803d!important}
.whatsapp-share:hover{background:#15803d!important}
