:root { --sidebar-w: 270px; --ink:#0f172a; --muted:#64748b; --line:rgba(15,23,42,.08); }
body { background:#f4f6fb; font-family: Inter, Arial, sans-serif; color:var(--ink); }
.app-shell { min-height:100vh; display:flex; }
.sidebar{ width:var(--sidebar-w); background:linear-gradient(180deg,#0b1220 0%, #0f172a 100%); color:#cbd5e1; position:sticky; top:0; height:100vh; overflow:auto; box-shadow:20px 0 40px rgba(15,23,42,.12); }
.sidebar .brand{ padding:18px 18px; border-bottom:1px solid rgba(255,255,255,.06); }
.sidebar .brand .title{ color:#fff; font-weight:700; letter-spacing:.2px; line-height:1.25; }
.sidebar .brand .small,.sidebar .text-muted{ color:rgba(255,255,255,.70)!important; }
.sidebar a{ color:#cbd5e1; text-decoration:none; display:flex; align-items:center; gap:10px; padding:11px 14px; border-radius:12px; margin:0 8px 6px; transition:all .18s ease; }
.sidebar a:hover{ background:rgba(255,255,255,.06); color:#fff; transform:translateX(2px); }
.sidebar a.active{ background:linear-gradient(90deg,rgba(59,130,246,.24), rgba(59,130,246,.08)); color:#fff; border:1px solid rgba(96,165,250,.18); }
.sidebar .section{ padding:14px 16px 8px; font-size:.72rem; text-transform:uppercase; letter-spacing:.1em; color:rgba(203,213,225,.58); }
.sidebar .text-dark{ color:#fff!important; }
.sidebar-userbox{ background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.10); backdrop-filter: blur(8px); }
.content-area{ flex:1; display:flex; flex-direction:column; min-width:0; }
.topbar{ background:rgba(255,255,255,.78); border-bottom:1px solid rgba(15,23,42,.06); padding:14px 22px; display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; backdrop-filter:blur(14px); }
.orm-topbar{ position:sticky; top:0; z-index:20; }
.topbar-kicker{ font-size:.72rem; text-transform:uppercase; letter-spacing:.1em; color:#64748b; font-weight:700; }
.topbar-title{ font-size:1.05rem; font-weight:700; color:#0f172a; }
.orm-badge{ border:1px solid rgba(15,23,42,.08); border-radius:999px; padding:.38rem .7rem; font-weight:600; font-size:.76rem; background:#fff; color:#334155; }
.user-chip{ display:flex; align-items:center; gap:.7rem; padding:.35rem .55rem; border-radius:999px; background:#fff; border:1px solid rgba(15,23,42,.08); }
.user-chip-avatar{ width:34px; height:34px; border-radius:50%; display:grid; place-items:center; background:linear-gradient(135deg,#dbeafe,#eff6ff); color:#2563eb; }
.logout-btn{ border-radius:999px; }
.page-content{ padding:22px; }
.page-footer{ padding:12px 18px 18px; text-align:center; color:#94a3b8; font-size:.82rem; }
.card,.card-soft{ border:1px solid rgba(15,23,42,.06); box-shadow:0 12px 30px rgba(15,23,42,.06); border-radius:20px; background:#fff; }
.table thead th{ font-size:.78rem; color:#64748b; font-weight:700; border-bottom:1px solid rgba(15,23,42,.08); white-space:nowrap; text-transform:uppercase; letter-spacing:.04em; }
.table > :not(caption) > * > * { padding:1rem .8rem; vertical-align:middle; }
.form-control,.form-select{ border-radius:14px; border:1px solid rgba(15,23,42,.10); padding:.7rem .95rem; background:#fff; }
.form-control:focus,.form-select:focus{ border-color:#93c5fd; box-shadow:0 0 0 .2rem rgba(59,130,246,.12); }
.btn{ border-radius:14px; padding:.62rem 1rem; font-weight:600; }
.btn-primary{ box-shadow:0 12px 24px rgba(37,99,235,.20); background:linear-gradient(135deg,#3b82f6,#2563eb); border-color:#2563eb; }
.btn-light{ background:#fff; border:1px solid rgba(15,23,42,.1); }
.page-kicker{ font-size:.73rem; text-transform:uppercase; letter-spacing:.09em; color:#64748b; font-weight:700; margin-bottom:.25rem; }
.page-title{ font-size:1.85rem; font-weight:800; line-height:1.08; margin-bottom:.2rem; }
.page-subtitle{ color:#64748b; font-size:.96rem; }
.page-hero{ display:flex; align-items:flex-end; justify-content:space-between; gap:12px; margin-bottom:18px; }
.hero-metrics{ display:flex; gap:.6rem; flex-wrap:wrap; }
.hero-chip{ display:inline-flex; align-items:center; gap:.45rem; padding:.55rem .82rem; border-radius:999px; background:#fff; border:1px solid rgba(15,23,42,.08); color:#334155; font-weight:600; font-size:.84rem; box-shadow:0 8px 18px rgba(15,23,42,.04); }
.stat-card{ padding:1.15rem; height:100%; }
.stat-icon{ width:42px; height:42px; border-radius:16px; display:grid; place-items:center; background:#eff6ff; color:#2563eb; font-size:1.15rem; }
.stat-value{ font-size:1.65rem; font-weight:800; line-height:1; margin-top:.8rem; }
.stat-label{ color:#64748b; font-size:.82rem; margin-top:.3rem; font-weight:700; text-transform:uppercase; letter-spacing:.05em; }
.company-shell-clean{ border-radius:18px; overflow:hidden; }
.company-head-simple{ display:flex; justify-content:space-between; align-items:center; gap:1rem; flex-wrap:wrap; padding:1.2rem 1.4rem .8rem; border-bottom:1px solid #eef2f7; }
.company-head-simple h5{ font-size:1.08rem; font-weight:700; }
.company-toolbar-clean{ padding:.9rem 1.4rem 1rem; }
.company-toolbar-form{ display:grid; grid-template-columns:minmax(320px,1.7fr) auto auto; gap:.75rem; align-items:center; }
.company-table-wrap{ padding:.35rem 1.4rem 1.2rem; overflow:auto; }
.company-table thead th{ background:linear-gradient(180deg,#233249 0%,#1f2a3d 100%); color:#f8fafc; position:sticky; top:0; z-index:5; }
.company-table tbody tr:hover{ background:#f8fbff; }
.action-group .btn{ padding:.5rem .78rem; border-radius:12px; }
.table-tag{ display:inline-flex; align-items:center; padding:.35rem .65rem; border-radius:999px; background:#f8fafc; border:1px solid #e5e7eb; color:#334155; font-size:.82rem; }
.login-body{ min-height:100vh; display:grid; place-items:center; background:radial-gradient(circle at top left,#dbeafe,#f8fafc 45%,#eef2ff); }
.login-card{ width:min(440px,92vw); border-radius:28px; box-shadow:0 28px 70px rgba(15,23,42,.18); border:1px solid rgba(255,255,255,.8); background:rgba(255,255,255,.92); overflow:hidden; }
.login-brand{ padding:2rem 2rem 1rem; }
.item-grid{ display:grid; grid-template-columns:1.2fr .8fr .65fr .65fr .65fr; gap:.75rem; align-items:center; }
.item-grid.header{ color:#64748b; font-weight:700; font-size:.75rem; text-transform:uppercase; }
@media (max-width:991px){ .app-shell{display:block}.sidebar{position:relative;width:100%;height:auto}.page-hero{align-items:flex-start;flex-direction:column}.company-toolbar-form{grid-template-columns:1fr}.item-grid{grid-template-columns:1fr} }
@media (max-width:767px){ .page-content{padding:16px}.page-title{font-size:1.5rem}.action-btn span{display:none} }
.report-filter-grid{display:grid;grid-template-columns:180px 180px auto;gap:.75rem;align-items:end}
.report-note{padding:.85rem 1rem;border:1px solid rgba(15,23,42,.08);border-radius:16px;background:#f8fafc;color:#334155}
.badge.text-bg-warning{color:#573a00!important}
@media (max-width:767px){.report-filter-grid{grid-template-columns:1fr}}

.po-meta-card{border-radius:22px}
.po-entry-card{border-radius:24px}
.po-table-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.35rem;border-bottom:1px solid rgba(15,23,42,.08);background:linear-gradient(180deg,#ffffff 0%,#fbfcff 100%)}
.po-entry-table thead th{background:#f8fafc;color:#334155;text-transform:none;letter-spacing:0;font-size:.82rem}
.po-entry-table tbody tr:hover{background:#fbfdff}
.po-entry-table .form-control-sm,.po-entry-table .form-select-sm{border-radius:12px;padding:.55rem .7rem;font-size:.9rem}
.po-entry-table .input-group-sm>.form-control,.po-entry-table .input-group-sm>.input-group-text{padding:.55rem .7rem;border-radius:12px}
.po-entry-table .input-group-text{background:#f8fafc;border-color:rgba(15,23,42,.10)}
.po-remove-row{width:38px;height:38px;display:inline-grid;place-items:center;padding:0;border-radius:12px}
.po-summary-wrap{display:grid;grid-template-columns:minmax(320px,1.4fr) 380px;gap:1rem;padding:1.15rem 1.35rem 1.35rem;border-top:1px solid rgba(15,23,42,.08);background:#fff}
.po-notes-block{min-width:0}
.po-summary-card{border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fcfdff;padding:1rem 1.05rem;align-self:start}
.po-summary-line{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;color:#334155}
.po-summary-line strong{font-weight:700}
.po-summary-grand{margin-top:.35rem;padding-top:.9rem;border-top:1px solid rgba(15,23,42,.08);font-size:1.05rem}
.po-summary-grand strong{font-size:1.45rem;color:#0f172a}
.po-product-cell,.po-description-cell{min-width:0}
@media (max-width:991px){.po-summary-wrap{grid-template-columns:1fr}.po-table-toolbar{align-items:flex-start;flex-direction:column}}

.sidebar-logo{display:flex;align-items:center;gap:.7rem}
.sidebar-logo img{width:42px;height:42px;border-radius:14px;object-fit:contain;background:#fff;padding:4px;box-shadow:0 10px 22px rgba(0,0,0,.18)}
.settings-logo-box{border:1px dashed rgba(15,23,42,.16);border-radius:20px;padding:1.1rem;background:#f8fafc}
.settings-logo-preview{height:130px;border-radius:16px;background:#fff;display:grid;place-items:center;border:1px solid rgba(15,23,42,.08)}
.settings-logo-preview img{max-width:90%;max-height:100px;object-fit:contain}
.settings-logo-placeholder{height:130px;border-radius:16px;background:#fff;display:grid;place-items:center;border:1px solid rgba(15,23,42,.08);color:#94a3b8;text-align:center}
.settings-logo-placeholder i{font-size:2rem;display:block;margin-bottom:.35rem}
.toggle-panel,.stock-panel{border:1px solid rgba(15,23,42,.08);border-radius:20px;background:#f8fafc;padding:1rem;height:100%}
.switch-line{display:flex;gap:.8rem;align-items:flex-start;padding:.65rem .3rem;margin:0;border-bottom:1px solid rgba(15,23,42,.06)}
.switch-line:last-child{border-bottom:0}
.switch-line .form-check-input{margin-left:0;margin-top:.25rem;min-width:2.6rem;height:1.25rem}
.switch-line span{display:grid;gap:.12rem}
.switch-line small{color:#64748b;line-height:1.35}
.type-chip{display:inline-flex;align-items:center;justify-content:center;min-width:82px;padding:.42rem .65rem;border-radius:999px;font-size:.82rem;font-weight:700;border:1px solid rgba(15,23,42,.08)}
.type-chip-stock{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}
.type-chip-service{background:#f0fdf4;color:#15803d;border-color:#bbf7d0}


.login-body{
  min-height:100vh;
  background:linear-gradient(135deg,#eef3fb 0%,#f7f8ff 48%,#eef1fb 100%);
}
.auth-screen{
  min-height:100vh;
  width:100%;
  display:flex;
  align-items:stretch;
  justify-content:stretch;
  padding:0;
  overflow:hidden;
}
.auth-screen-premium{position:relative;}
.auth-shell-premium{
  width:100%;
  min-height:100vh;
  display:grid;
  grid-template-columns:minmax(560px,55vw) 1fr;
  align-items:stretch;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  overflow:hidden;
}
.auth-shell-login-showcase{min-height:100vh;}
.auth-visual-panel{
  position:relative;
  overflow:hidden;
  color:#fff;
  background:linear-gradient(180deg,#4f63ff 0%,#6657ef 44%,#4a47dc 100%);
}
.auth-visual-panel-showcase{
  padding:52px 56px 42px;
  min-height:100vh;
}
.auth-visual-grid{
  position:absolute;
  inset:0;
  background-image:radial-gradient(rgba(255,255,255,.16) 1px, transparent 1px);
  background-size:18px 18px;
  opacity:.16;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.42),transparent 90%);
}
.auth-visual-blob{position:absolute;border-radius:999px;pointer-events:none;}
.auth-visual-blob-one{
  width:560px;height:560px;right:10%;top:-70px;
  background:radial-gradient(circle,rgba(255,255,255,.16),rgba(255,255,255,.03) 58%,transparent 72%);
}
.auth-visual-blob-two{
  width:500px;height:500px;right:-140px;bottom:5%;
  background:radial-gradient(circle,rgba(140,181,255,.18),rgba(140,181,255,.04) 58%,transparent 74%);
}
.auth-visual-content{
  position:relative;
  z-index:2;
  min-height:calc(100vh - 94px);
  display:flex;
  flex-direction:column;
  gap:34px;
}
.auth-brand-top{
  display:flex;
  align-items:flex-start;
  gap:16px;
}
.auth-logo-orb{
  width:58px;height:58px;border-radius:18px;
  display:grid;place-items:center;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.28);
  box-shadow:0 12px 28px rgba(15,23,42,.16);
  backdrop-filter:blur(8px);
  color:#fff;
}
.auth-logo-orb-large{width:64px;height:64px;font-size:1.45rem;}
.auth-brand-title{
  margin:0;
  font-size:2rem;
  font-weight:900;
  letter-spacing:-.03em;
  line-height:1.05;
}
.auth-brand-subtitle{
  margin-top:4px;
  color:rgba(255,255,255,.88);
  font-size:1.02rem;
  line-height:1.35;
}
.auth-hero-copy{max-width:570px;}
.auth-hero-copy h2{
  margin:0 0 16px;
  font-size:4.35rem;
  line-height:.94;
  font-weight:900;
  letter-spacing:-.06em;
  color:#fff;
}
.auth-hero-copy p{
  margin:0;
  max-width:500px;
  font-size:1.18rem;
  line-height:1.75;
  color:rgba(255,255,255,.93);
}
.auth-showcase-stage{
  position:relative;
  min-height:404px;
  display:flex;
  align-items:flex-end;
  padding:48px 0 18px;
}
.auth-showcase-stage-recovery{padding-top:28px;}
.auth-dashboard-card{
  width:min(100%,620px);
  margin-left:118px;
  position:relative;
  z-index:2;
}
.auth-dashboard-card:after{
  content:"";
  position:absolute;
  left:42px;right:42px;bottom:-16px;
  height:24px;
  background:rgba(14,18,77,.22);
  filter:blur(18px);
  border-radius:999px;
}
.auth-dashboard-shell{
  display:grid;
  grid-template-columns:120px 1fr;
  background:rgba(255,255,255,.97);
  border:1px solid rgba(255,255,255,.68);
  border-radius:26px;
  overflow:hidden;
  box-shadow:0 26px 48px rgba(27,35,89,.24);
}
.auth-dashboard-sidebar{
  background:linear-gradient(180deg,#2a3187 0%,#26307b 100%);
  padding:18px 14px;
  display:grid;
  align-content:start;
  gap:9px;
  color:rgba(255,255,255,.74);
  font-size:.83rem;
  font-weight:700;
}
.auth-dashboard-sidebar .auth-dashboard-brand{
  font-size:.94rem;
  font-weight:900;
  color:#fff;
  margin-bottom:8px;
}
.auth-dashboard-sidebar span{
  display:flex;
  align-items:center;
  gap:8px;
  padding:7px 10px;
  border-radius:12px;
}
.auth-dashboard-sidebar span.active{background:rgba(255,255,255,.12);color:#fff;}
.auth-dashboard-main{
  padding:18px 18px 16px;
  display:grid;
  gap:14px;
  background:linear-gradient(180deg,#fdfdff 0%,#f5f7ff 100%);
}
.auth-dashboard-topline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.auth-dashboard-kpi{
  padding:12px 14px;
  border-radius:16px;
  background:#fff;
  border:1px solid #edf0ff;
  box-shadow:0 10px 20px rgba(99,102,241,.08);
}
.auth-dashboard-kpi small{
  display:block;
  color:#7a86aa;
  font-size:.72rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:6px;
}
.auth-dashboard-kpi strong{font-size:1rem;font-weight:900;color:#18223f;}
.auth-dashboard-chart{
  position:relative;height:128px;border-radius:18px;
  background:linear-gradient(180deg,#eef1ff 0%,#e5eaff 100%);
  overflow:hidden;border:1px solid #e3e9ff;
}
.auth-dashboard-chart:before{
  content:"";position:absolute;inset:20px 18px 18px 18px;
  background:linear-gradient(90deg,rgba(255,255,255,.55) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.55) 1px,transparent 1px);
  background-size:46px 30px;border-radius:14px;opacity:.85;
}
.auth-dashboard-chart:after{
  content:"";position:absolute;left:26px;right:26px;bottom:24px;height:56px;border-radius:999px;
  background:linear-gradient(90deg,#6777ff 0%,#8c73ff 40%,#78b3ff 100%);
  clip-path:polygon(0 82%,8% 66%,18% 72%,29% 42%,40% 50%,52% 24%,66% 40%,76% 18%,88% 28%,100% 0,100% 100%,0 100%);
  opacity:.96;
}
.auth-dashboard-panels{display:grid;grid-template-columns:1.2fr .8fr;gap:12px;}
.auth-dashboard-panel{height:92px;border-radius:18px;background:#fff;border:1px solid #edf0ff;position:relative;overflow:hidden;}
.auth-dashboard-panel-table:before{
  content:"";position:absolute;left:14px;right:14px;top:16px;height:8px;border-radius:999px;background:#d7deff;
  box-shadow:0 18px 0 #e7ecff,0 36px 0 #e7ecff;
}
.auth-dashboard-panel-ring:before{
  content:"";position:absolute;left:50%;top:50%;width:56px;height:56px;transform:translate(-50%,-50%);
  border-radius:50%;border:11px solid #dfe4ff;border-top-color:#6777ff;border-right-color:#8c73ff;
}
.auth-feature-tile{
  position:absolute;
  width:148px;
  padding:16px 14px;
  border-radius:18px;
  background:rgba(255,255,255,.95);
  color:#2b3158;
  box-shadow:0 18px 34px rgba(25,32,78,.22);
  border:1px solid rgba(255,255,255,.76);
  display:grid;
  gap:6px;
  z-index:3;
}
.auth-feature-tile i{font-size:1.22rem;color:#5f67ff;}
.auth-feature-tile strong{font-size:.94rem;font-weight:900;line-height:1.2;}
.auth-feature-tile span{font-size:.8rem;line-height:1.4;color:#5f6788;}
.auth-feature-left-top{left:0;top:88px;}
.auth-feature-left-bottom{left:0;bottom:54px;}
.auth-feature-right-top{right:0;top:104px;}
.auth-feature-right-bottom{right:0;bottom:64px;}
.auth-feature-tile.compact{width:154px;}
.auth-visual-bottom-note{
  margin-top:auto;
  display:flex;
  align-items:center;
  gap:14px;
  color:#fff;
}
.auth-bottom-icon{
  width:52px;height:52px;border-radius:18px;
  display:grid;place-items:center;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.24);
  font-size:1.3rem;
}
.auth-visual-bottom-note strong{display:block;font-size:1.12rem;font-weight:900;margin-bottom:2px;}
.auth-visual-bottom-note p{margin:0;color:rgba(255,255,255,.82);font-size:.95rem;}
.auth-feature-badges{display:flex;flex-wrap:wrap;gap:10px;}
.auth-feature-badges span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:12px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.24);
  font-weight:700;
  color:#fff;
}
.auth-form-side{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:54px 7vw;
  background:linear-gradient(135deg,#fafbff 0%,#f5f7fc 55%,#eef3ff 100%);
}
.auth-form-side-showcase:before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 65% 22%,rgba(109,92,255,.08),transparent 18%),radial-gradient(circle at 78% 82%,rgba(97,124,255,.10),transparent 20%);
  pointer-events:none;
}
.auth-glass-card{
  position:relative;
  z-index:2;
  width:100%;
  max-width:540px;
  padding:34px;
  border-radius:30px;
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(18px);
  border:1px solid rgba(255,255,255,.96);
  box-shadow:0 28px 70px rgba(31,41,55,.10);
}
.auth-login-card-showcase{max-width:560px;}
.auth-form-brand{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:28px;
}
.auth-form-brand-tight{margin-bottom:22px;}
.auth-form-brand-icon{
  width:62px;height:62px;border-radius:18px;
  display:grid;place-items:center;
  background:linear-gradient(135deg,#eef1ff,#dfe5ff);
  border:1px solid #d7ddff;
  color:#5666ff;
  font-size:1.45rem;
  box-shadow:0 10px 24px rgba(99,102,241,.11);
}
.auth-form-brand-title{font-size:1.12rem;font-weight:900;color:#121f4d;line-height:1.2;}
.auth-form-brand-subtitle{font-size:.92rem;color:#7580a8;line-height:1.4;margin-top:3px;}
.auth-form-head{margin-bottom:18px;}
.auth-form-head-left{text-align:left;}
.auth-form-head h2{margin:0 0 8px;font-size:2.05rem;font-weight:900;letter-spacing:-.04em;color:#10204d;}
.auth-form-head p{margin:0;color:#7b85a8;line-height:1.6;font-size:1rem;}
.auth-alert{border-radius:16px;padding:.85rem 1rem;font-weight:600;margin-bottom:1rem;}
.auth-form-premium{display:grid;gap:18px;}
.auth-form-premium .form-label{font-size:.92rem;font-weight:800;color:#22325e;margin-bottom:8px;}
.auth-input-wrap{position:relative;display:flex;align-items:center;}
.auth-input-wrap-soft{border-radius:18px;}
.auth-field-icon{position:absolute;left:16px;color:#8a94b2;font-size:1rem;z-index:2;}
.auth-input{
  min-height:58px;
  border-radius:18px;
  border:1px solid #d8deec;
  background:rgba(255,255,255,.94);
  padding-left:46px;
  padding-right:18px;
  font-size:1rem;
  box-shadow:none;
}
.auth-password-input{padding-right:54px;}
.auth-input:focus{border-color:#8f88ff;box-shadow:0 0 0 .22rem rgba(109,92,255,.12);background:#fff;}
.auth-input-readonly .auth-input{background:#f7f9ff;color:#7080aa;}
.auth-password-toggle{
  position:absolute;
  right:10px;
  width:40px;height:40px;
  border:0;background:transparent;
  color:#7c67ff;
  border-radius:12px;
  display:grid;place-items:center;
  z-index:3;
}
.auth-password-toggle:hover{background:rgba(124,103,255,.10);}
.auth-row-between{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;}
.auth-row-between-tight{margin-top:-2px;}
.auth-check-pill{display:inline-flex;align-items:center;gap:10px;font-size:.94rem;font-weight:700;color:#4a587b;cursor:pointer;user-select:none;}
.auth-check-pill input{position:absolute;opacity:0;pointer-events:none;}
.auth-check-pill span{width:18px;height:18px;border-radius:6px;border:1px solid #c6d0e3;display:grid;place-items:center;background:#fff;color:transparent;transition:all .2s ease;}
.auth-check-pill span i{font-size:.78rem;}
.auth-check-pill input:checked + span{background:#6b63ff;border-color:#6b63ff;color:#fff;box-shadow:0 8px 18px rgba(107,99,255,.24);}
.auth-inline-link{text-decoration:none;color:#675cff;font-weight:800;}
.auth-inline-link:hover{color:#5347df;text-decoration:underline;}
.auth-submit-btn{min-height:58px;border-radius:18px;font-weight:800;border:none;letter-spacing:.01em;}
.auth-submit-premium{background:linear-gradient(90deg,#5f7cff 0%,#6a63ff 46%,#8a49ff 100%);box-shadow:0 16px 30px rgba(107,99,255,.28);}
.auth-submit-premium:hover,.auth-submit-premium:focus{background:linear-gradient(90deg,#546fff 0%,#5f58f2 46%,#7e3df8 100%);}
.auth-security-note{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:24px;color:#7f89ab;font-weight:700;font-size:.96rem;}
.auth-security-note i{color:#6472ff;font-size:1.05rem;}
.auth-footer-links{margin-top:18px;display:flex;justify-content:flex-start;align-items:center;}
.auth-center-link{justify-content:center;}
.auth-empty-state{display:grid;gap:14px;text-align:center;padding:6px 0 2px;}
.auth-empty-icon{width:66px;height:66px;margin:0 auto;border-radius:22px;display:grid;place-items:center;background:#f1efff;color:#665cff;font-size:1.6rem;}
.auth-empty-state h3{font-size:1.15rem;margin:0;font-weight:800;}
.auth-empty-state p{margin:0;color:#64748b;line-height:1.6;}
.auth-success-state{text-align:center;display:grid;gap:18px;}
.auth-success-orbit{
  width:118px;
  height:118px;
  border-radius:999px;
  margin:0 auto 2px;
  display:grid;
  place-items:center;
  background:radial-gradient(circle,#eefcf1 0%,#eefcf1 34%,rgba(104,210,126,.13) 35%,rgba(104,210,126,.13) 58%,rgba(104,210,126,.05) 59%,rgba(104,210,126,.05) 76%,transparent 77%);
}
.auth-success-orbit span{
  width:54px;height:54px;
  border-radius:999px;
  display:grid;place-items:center;
  background:#48b465;
  color:#fff;
  font-size:1.5rem;
  box-shadow:0 14px 28px rgba(72,180,101,.22);
}
.auth-success-state h2{margin:0;font-size:2.2rem;font-weight:900;letter-spacing:-.04em;color:#10204d;}
.auth-success-state p{margin:0;color:#6b789f;line-height:1.65;}
.auth-success-info{
  display:grid;
  grid-template-columns:54px 1fr;
  align-items:center;
  gap:14px;
  text-align:left;
  padding:18px;
  border-radius:18px;
  background:#f1f5ff;
  border:1px solid #dfe7ff;
  color:#2d3b66;
  line-height:1.55;
  font-weight:600;
}
.auth-success-info-icon{
  width:48px;height:48px;
  border-radius:16px;
  display:grid;place-items:center;
  color:#6b63ff;
  background:#e7ebff;
  font-size:1.2rem;
}
.auth-success-expire{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:#7682a9;
  font-weight:700;
}
.auth-resend-form{margin:0;}
.auth-resend-btn{
  border:0;
  background:transparent;
  color:#675cff;
  font-weight:900;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 8px;
}
.auth-resend-btn:hover{text-decoration:underline;}
@media (max-width: 1199px){
  .auth-shell-premium{grid-template-columns:minmax(470px,52vw) 1fr;}
  .auth-hero-copy h2{font-size:3.55rem;}
  .auth-dashboard-card{margin-left:86px;}
  .auth-form-side{padding:40px 4vw;}
}
@media (max-width: 991px){
  .auth-shell-premium{grid-template-columns:1fr;}
  .auth-visual-panel-showcase{min-height:auto;padding:32px 26px;}
  .auth-visual-content{min-height:auto;}
  .auth-showcase-stage{min-height:360px;padding-top:34px;}
  .auth-dashboard-card{margin-left:88px;max-width:560px;}
  .auth-form-side{padding:28px 18px;min-height:auto;}
}
@media (max-width: 767px){
  .auth-visual-panel-showcase,.auth-form-side{padding:18px;}
  .auth-glass-card{padding:24px 20px 22px;border-radius:24px;}
  .auth-brand-title{font-size:1.6rem;}
  .auth-brand-subtitle{font-size:.92rem;}
  .auth-hero-copy h2{font-size:2.65rem;}
  .auth-hero-copy p{font-size:1rem;}
  .auth-showcase-stage{display:block;min-height:auto;padding:22px 0 0;}
  .auth-dashboard-card{margin:0;max-width:none;}
  .auth-dashboard-shell{grid-template-columns:88px 1fr;}
  .auth-dashboard-sidebar{padding:14px 10px;font-size:.74rem;}
  .auth-dashboard-topline{grid-template-columns:1fr;}
  .auth-dashboard-panels{grid-template-columns:1fr;}
  .auth-feature-tile{position:static;width:auto;margin-top:12px;}
  .auth-visual-bottom-note{margin-top:20px;}
  .auth-form-head h2,.auth-success-state h2{font-size:1.72rem;}
}
@media (max-width: 575px){
  .auth-logo-orb-large,.auth-form-brand-icon{width:54px;height:54px;border-radius:16px;}
  .auth-brand-top,.auth-form-brand{gap:12px;}
  .auth-hero-copy h2{font-size:2.2rem;}
  .auth-row-between{align-items:flex-start;}
  .auth-dashboard-shell{grid-template-columns:1fr;}
  .auth-dashboard-sidebar{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .auth-dashboard-sidebar .auth-dashboard-brand{grid-column:1 / -1;}
  .auth-input,.auth-submit-btn{min-height:54px;}
  .auth-security-note{font-size:.9rem;text-align:center;}
}

.print-body{background:#e8edf5;color:#0f172a;font-family:Inter,Arial,sans-serif;padding:24px}
.print-toolbar{max-width:980px;margin:0 auto 16px;display:flex;justify-content:space-between;gap:12px;align-items:center}
.print-page{max-width:980px;margin:0 auto;background:#fff;border-radius:18px;box-shadow:0 22px 60px rgba(15,23,42,.15);padding:34px;border:1px solid rgba(15,23,42,.08)}
.print-header{display:flex;justify-content:space-between;gap:24px;border-bottom:2px solid #e2e8f0;padding-bottom:22px;margin-bottom:22px}
.print-company{display:flex;gap:16px;align-items:flex-start;color:#475569;font-size:.9rem}
.print-company h2{font-size:1.35rem;color:#0f172a;font-weight:800;margin:0 0 6px}
.print-logo{width:86px;height:86px;object-fit:contain;border:1px solid #e2e8f0;border-radius:14px;padding:8px;background:#fff}
.print-doc-title{text-align:right;min-width:240px}
.print-doc-type{text-transform:uppercase;letter-spacing:.12em;color:#64748b;font-size:.78rem;font-weight:800}
.print-doc-title h1{font-size:2rem;font-weight:900;margin:.25rem 0 .5rem;color:#0f172a}
.print-info-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-bottom:22px}
.print-info-box{border:1px solid #e2e8f0;background:#f8fafc;border-radius:16px;padding:16px;color:#475569}
.print-label{text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-size:.72rem;font-weight:800;margin-bottom:8px}
.print-info-line{display:flex;justify-content:space-between;gap:14px;padding:5px 0;border-bottom:1px dashed #e2e8f0}
.print-info-line:last-child{border-bottom:0}
.print-table{border:1px solid #e2e8f0;border-radius:14px;overflow:hidden}
.print-table thead th{background:#0f172a;color:#fff;font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;border:0;padding:.78rem}
.print-table tbody td{padding:.72rem;border-color:#e2e8f0;color:#334155}
.print-bottom-grid{display:grid;grid-template-columns:1fr 340px;gap:22px;margin-top:18px}
.print-notes{border:1px solid #e2e8f0;border-radius:16px;padding:16px;min-height:130px;color:#475569;background:#fcfdff}
.print-totals{border:1px solid #e2e8f0;border-radius:16px;padding:14px;background:#fcfdff;align-self:start}
.print-total-line{display:flex;justify-content:space-between;gap:18px;padding:8px 0;border-bottom:1px solid #e2e8f0;color:#334155}
.print-total-line:last-child{border-bottom:0}
.print-total-line.strong{font-size:1.05rem;color:#0f172a}
.print-total-line.strong strong{font-size:1.15rem}
.print-signatures{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:48px;text-align:center;color:#475569}
.print-signatures span{display:block;border-top:1px solid #94a3b8;height:1px;margin-bottom:10px}
@media print{.no-print{display:none!important}.print-body{background:#fff;padding:0}.print-page{max-width:none;box-shadow:none;border:0;border-radius:0;padding:0}.badge{border:1px solid #94a3b8!important;color:#0f172a!important;background:#fff!important}.print-table thead th{background:#f1f5f9!important;color:#0f172a!important}.print-signatures{break-inside:avoid}}
@media (max-width:767px){.print-body{padding:14px}.print-page{padding:18px}.print-header,.print-info-grid,.print-bottom-grid,.print-signatures{grid-template-columns:1fr;display:grid}.print-doc-title{text-align:left}.print-company{flex-direction:column}}


.statement-total-box{border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#f8fafc;padding:1rem;display:flex;justify-content:space-between;gap:1rem;align-items:center}
.statement-total-box span{color:#64748b;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.statement-total-box strong{font-size:1.1rem;color:#0f172a}
.statement-total-box.balance{background:#eff6ff;border-color:#bfdbfe}
.statement-table thead th{background:#0f172a;color:#fff;border:0}
.aging-card .stat-value{font-size:1.05rem}
.aging-card.danger{border-color:#fecaca;background:#fff7f7}
@media print{.no-print,.sidebar,.topbar,.page-footer,.page-hero .btn{display:none!important}.content-area{display:block}.page-content{padding:0}.card{box-shadow:none!important}.statement-print-card{border:0!important}}

/* ORMS CRM-style dashboard/action hub */
.dashboard-action-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;padding:1.35rem 1.45rem;border:1px solid rgba(15,23,42,.06);border-radius:26px;background:linear-gradient(135deg,#fff 0%,#f8fbff 60%,#eef6ff 100%);box-shadow:0 16px 40px rgba(15,23,42,.06)}
.dashboard-action-toolbar{display:flex;gap:.65rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.dashboard-main-action,.dashboard-secondary-action{display:inline-flex;align-items:center;gap:.45rem;white-space:nowrap}
.dashboard-action-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem}
.dashboard-action-kpi{display:flex;gap:.9rem;align-items:flex-start;padding:1rem;border-radius:22px;background:#fff;text-decoration:none;color:#0f172a;border:1px solid rgba(15,23,42,.06);box-shadow:0 12px 28px rgba(15,23,42,.05);transition:all .18s ease;min-height:132px}
.dashboard-action-kpi:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(15,23,42,.09);color:#0f172a}
.dashboard-action-kpi-icon{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;font-size:1.2rem;flex:0 0 44px;background:#eff6ff;color:#2563eb}
.dashboard-action-kpi-body{display:grid;gap:.25rem;min-width:0}
.dashboard-action-kpi-body small{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;color:#64748b;font-weight:800}
.dashboard-action-kpi-body strong{font-size:1.25rem;font-weight:900;line-height:1.15;word-break:break-word}
.dashboard-action-kpi-body em{font-style:normal;font-size:.78rem;color:#64748b;font-weight:700;margin-top:.15rem}
.dashboard-action-kpi.green .dashboard-action-kpi-icon{background:#ecfdf5;color:#059669}.dashboard-action-kpi.orange .dashboard-action-kpi-icon{background:#fff7ed;color:#ea580c}.dashboard-action-kpi.purple .dashboard-action-kpi-icon{background:#f5f3ff;color:#7c3aed}.dashboard-action-kpi.red .dashboard-action-kpi-icon{background:#fff1f2;color:#e11d48}.dashboard-action-kpi.teal .dashboard-action-kpi-icon{background:#f0fdfa;color:#0d9488}
.dashboard-alert-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}
.dashboard-alert-pill{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1rem;border-radius:18px;background:#fff;border:1px solid rgba(15,23,42,.06);text-decoration:none;color:#334155;box-shadow:0 10px 24px rgba(15,23,42,.045)}
.dashboard-alert-pill strong{font-size:1.25rem;color:#0f172a}.dashboard-alert-pill span{font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#64748b}
.dashboard-alert-pill.danger{background:#fff7f7;border-color:#fecaca}.dashboard-alert-pill.warning{background:#fffbeb;border-color:#fde68a}.dashboard-alert-pill.primary{background:#eff6ff;border-color:#bfdbfe}.dashboard-alert-pill.dark{background:#f8fafc}
.dashboard-action-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem}
.dashboard-action-card{grid-column:span 4;border:1px solid rgba(15,23,42,.06);background:#fff;border-radius:24px;box-shadow:0 12px 30px rgba(15,23,42,.055);padding:1.15rem;min-height:260px;overflow:hidden}
.dashboard-action-card.trend-card{grid-column:span 8}.dashboard-action-card.pipeline-card{grid-column:span 4}
.dashboard-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}
.dashboard-card-head h5{font-weight:800;margin:0;font-size:1.02rem}.dashboard-card-head p{font-size:.82rem;color:#64748b;margin:.15rem 0 0}.dashboard-view-link{font-size:.8rem;font-weight:800;color:#2563eb;text-decoration:none;white-space:nowrap}
.dashboard-chart-wrap{height:245px;position:relative}.dashboard-chart-stat-row{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:.8rem}.dashboard-chart-stat-row span{font-size:.8rem;color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:.42rem .65rem}.dashboard-chart-stat-row strong{color:#0f172a}
.dashboard-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.dashboard-quick-action{display:flex;align-items:center;gap:.65rem;padding:.8rem;border-radius:16px;background:#f8fafc;border:1px solid #e2e8f0;color:#334155;text-decoration:none;font-weight:800;font-size:.84rem}.dashboard-quick-action:hover{background:#eff6ff;color:#2563eb}
.dashboard-list-group{display:grid;gap:.65rem}.dashboard-list-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;text-decoration:none;color:#0f172a;border:1px solid #eef2f7;background:#fbfdff;border-radius:16px;padding:.72rem .85rem}.dashboard-list-row:hover{background:#f8fbff}.dashboard-list-row span{display:grid;gap:.1rem}.dashboard-list-row small{color:#64748b;font-size:.76rem}.dashboard-list-row em{font-style:normal;font-weight:900;color:#334155;white-space:nowrap}.dashboard-empty-compact{display:flex;align-items:center;gap:.55rem;color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:16px;padding:1rem}.dashboard-empty-compact i{font-size:1.25rem;color:#94a3b8}
.reports-hub-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1.25rem}.report-hub-card{display:flex;gap:.85rem;align-items:flex-start;text-decoration:none;color:#0f172a;background:#fff;border:1px solid rgba(15,23,42,.06);border-radius:22px;padding:1rem;box-shadow:0 12px 28px rgba(15,23,42,.05);transition:all .18s ease}.report-hub-card:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(15,23,42,.08);color:#0f172a}.report-hub-icon{width:42px;height:42px;border-radius:16px;display:grid;place-items:center;background:#eff6ff;color:#2563eb;font-size:1.1rem;flex:0 0 42px}.report-hub-card strong{display:block;font-size:.96rem;margin-bottom:.15rem}.report-hub-card small{color:#64748b;line-height:1.35}.reports-section-title{font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin:1.2rem 0 .75rem}
@media(max-width:1400px){.dashboard-action-kpis{grid-template-columns:repeat(3,1fr)}.reports-hub-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:991px){.dashboard-action-hero{align-items:flex-start;flex-direction:column}.dashboard-action-kpis,.dashboard-alert-strip,.reports-hub-grid{grid-template-columns:1fr 1fr}.dashboard-action-card,.dashboard-action-card.trend-card,.dashboard-action-card.pipeline-card{grid-column:span 12}.dashboard-chart-wrap{height:220px}}
@media(max-width:650px){.dashboard-action-kpis,.dashboard-alert-strip,.reports-hub-grid,.dashboard-quick-grid{grid-template-columns:1fr}.dashboard-action-toolbar{justify-content:flex-start}}
.org-switcher{display:flex;align-items:center;gap:.35rem;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:999px;padding:.25rem;box-shadow:0 8px 18px rgba(15,23,42,.04)}
.org-switcher .form-select{width:auto;min-width:145px;border:0;background-color:#fff;padding:.35rem 1.8rem .35rem .7rem;font-size:.76rem;font-weight:600;color:#334155}
.org-switcher .btn{border-radius:999px;padding:.32rem .55rem}
@media(max-width:767px){.org-switcher{width:100%;border-radius:16px;flex-wrap:wrap}.org-switcher .form-select{flex:1;min-width:130px}}

.payroll-style-topbar{min-height:58px;padding:8px 12px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;background:#fff;border-bottom:1px solid rgba(15,23,42,.08)}
.topbar-left-badges{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.topbar-pill{display:inline-flex;align-items:center;gap:.35rem;border:1px solid rgba(15,23,42,.12);border-radius:999px;padding:.32rem .62rem;font-size:.72rem;font-weight:700;color:#334155;background:#fff}.topbar-pill i{color:#64748b}.topbar-workspace{display:flex;justify-content:center;min-width:0}.payroll-company-switcher{display:flex;align-items:center;gap:.4rem;padding:.28rem .38rem;border:1px solid #dbeafe;border-radius:16px;background:#f8fbff;box-shadow:0 8px 18px rgba(37,99,235,.07);max-width:100%}.workspace-icon{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:#eff6ff;color:#2563eb}.active-company-pill{display:inline-flex;align-items:center;border-radius:999px;padding:.45rem .8rem;background:#2563eb;color:#fff;font-size:.76rem;font-weight:800;white-space:nowrap}.payroll-company-switcher .form-select{width:auto;min-width:230px;max-width:340px;border:1px solid #dbeafe;border-radius:12px;background-color:#fff;font-size:.78rem;font-weight:700;color:#0f172a}.payroll-company-switcher .branch-select{min-width:160px;max-width:230px}.topbar-user-area{display:flex;align-items:center;gap:.55rem;justify-content:flex-end}.logout-btn{white-space:nowrap;border-color:#0f172a;color:#0f172a}.access-multiselect{border-radius:14px;min-height:unset}.access-multiselect option{padding:.32rem .45rem}.settings-logo-box{border:1px solid rgba(15,23,42,.1);border-radius:14px;background:#fff;min-height:128px;display:grid;place-items:center;padding:10px}.settings-logo-placeholder{color:#94a3b8;text-align:center;font-weight:700}.settings-logo-placeholder i{font-size:2rem;display:block;margin-bottom:.35rem}
@media(max-width:1100px){.payroll-style-topbar{grid-template-columns:1fr}.topbar-left-badges,.topbar-workspace,.topbar-user-area{justify-content:flex-start}.payroll-company-switcher{width:100%;flex-wrap:wrap}.payroll-company-switcher .form-select{flex:1;min-width:170px}}

/* Payroll-style company administration page */
.company-admin-layout .card-soft{border:1px solid rgba(15,23,42,.06);box-shadow:0 12px 30px rgba(15,23,42,.06);border-radius:18px;background:#fff}
.company-list-group .list-group-item{border-color:#dbe3ee;padding:.78rem .95rem;font-size:.9rem}
.company-list-group .list-group-item.active{background:#0d6efd;border-color:#0d6efd;color:#fff;font-weight:700}
.company-logo-preview{min-height:112px;display:flex;align-items:center;justify-content:center;border:1px solid #e5e7eb;border-radius:12px;background:#fff;padding:8px}
.company-logo-preview img{max-width:100%;max-height:135px;object-fit:contain}

.access-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.7rem;border:1px solid rgba(15,23,42,.08);border-radius:18px;padding:.85rem;background:#f8fafc;max-height:260px;overflow:auto}
.access-check-card{display:flex;gap:.75rem;align-items:flex-start;padding:.85rem;border:1px solid rgba(15,23,42,.08);border-radius:16px;background:#fff;cursor:pointer;transition:all .15s ease;margin:0}
.access-check-card:hover{border-color:#93c5fd;box-shadow:0 8px 18px rgba(15,23,42,.06);transform:translateY(-1px)}
.access-check-card input{margin-top:.18rem;width:1.05rem;height:1.05rem;flex:0 0 auto}
.access-check-card span{display:grid;gap:.15rem;line-height:1.25}
.access-check-card strong{font-size:.9rem;color:#0f172a}
.access-check-card small{font-size:.75rem;color:#64748b}
.access-check-card:has(input:checked){background:#eff6ff;border-color:#93c5fd}
.access-check-card:has(input:disabled){opacity:.78;cursor:not-allowed}
.access-branch-grid{max-height:330px}
@media(max-width:767px){.access-card-grid{grid-template-columns:1fr}}

.admin-page{max-width:1520px;margin:0 auto}.admin-hero{align-items:center;background:linear-gradient(135deg,#ffffff 0%,#f8fbff 100%);border:1px solid rgba(15,23,42,.06);border-radius:24px;padding:1.25rem 1.35rem;box-shadow:0 14px 34px rgba(15,23,42,.06)}.admin-hero-actions{display:flex;gap:.65rem;flex-wrap:wrap;align-items:center}.admin-stat-card{height:100%;display:flex;align-items:center;gap:.9rem;border:1px solid rgba(15,23,42,.06);border-radius:20px;background:#fff;padding:1rem 1.1rem;box-shadow:0 12px 28px rgba(15,23,42,.05)}.admin-stat-icon{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;background:#eff6ff;color:#2563eb;font-size:1.2rem}.admin-stat-value{font-size:1.45rem;font-weight:800;line-height:1;color:#0f172a}.admin-stat-label{font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:#64748b;font-weight:800;margin-top:.25rem}.admin-card{overflow:hidden;border-radius:24px}.admin-card-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1.1rem 1.25rem;border-bottom:1px solid rgba(15,23,42,.08);background:linear-gradient(180deg,#fff,#fbfdff)}.admin-card-head h5,.admin-form-section-head h5{margin:0;font-size:1.02rem;font-weight:800}.admin-card-head p,.admin-form-section-head p{margin:.2rem 0 0;color:#64748b;font-size:.86rem}.admin-searchbox{position:relative;width:min(370px,100%)}.admin-searchbox i{position:absolute;left:.9rem;top:50%;transform:translateY(-50%);color:#94a3b8}.admin-searchbox .form-control{padding-left:2.45rem}.admin-table-wrap{overflow:auto}.admin-table{margin:0}.admin-table thead th{background:#f8fafc;color:#475569;border-bottom:1px solid rgba(15,23,42,.08)}.admin-table tbody tr:hover{background:#fbfdff}.identity-cell{display:flex;align-items:center;gap:.75rem;min-width:220px}.identity-avatar{width:40px;height:40px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,#e0f2fe,#eef2ff);color:#2563eb;font-weight:800;flex:0 0 auto}.stacked-tags{display:flex;gap:.35rem;flex-wrap:wrap;max-width:460px}.mini-access-pill{display:inline-flex;align-items:center;gap:.32rem;border:1px solid #e5e7eb;background:#fff;border-radius:999px;padding:.32rem .55rem;font-size:.77rem;color:#334155}.mini-access-pill.is-default{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8;font-weight:700}.admin-form-card{border-radius:24px;padding:1.25rem;background:#fff}.admin-form-section-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(15,23,42,.08)}.admin-form-section-head.compact{display:block}.admin-side-panel{top:92px}.admin-switch-line{display:flex;gap:.75rem;padding:.9rem;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#f8fafc;cursor:pointer}.admin-switch-line .form-check-input{margin:0;margin-top:.25rem;flex:0 0 auto}.admin-switch-line span{display:grid;gap:.15rem}.admin-switch-line small{color:#64748b}.form-text{color:#64748b}.access-card-grid{border-radius:20px}.access-check-card{min-height:72px}.access-check-card strong{font-size:.92rem}.access-check-card small{font-size:.78rem}.btn-primary,.btn-dark{border-radius:14px}.page-hero .btn{white-space:nowrap}
@media(max-width:991px){.admin-side-panel{position:relative!important;top:auto}.admin-card-head{align-items:flex-start}.admin-searchbox{width:100%}.identity-cell{min-width:180px}.stacked-tags{max-width:300px}}
@media(max-width:767px){.admin-hero{align-items:flex-start;flex-direction:column;padding:1rem}.admin-hero-actions{width:100%}.admin-hero-actions .btn{width:100%;justify-content:center}.admin-stat-card{padding:.9rem}.admin-card-head{padding:1rem}.admin-table-wrap{padding:0}.admin-table{min-width:920px}.admin-form-card{padding:1rem;border-radius:20px}}

.module-hero{align-items:center;background:linear-gradient(135deg,#ffffff 0%,#f8fbff 60%,#eef6ff 100%);border:1px solid rgba(15,23,42,.06);border-radius:24px;padding:1.15rem 1.25rem;box-shadow:0 14px 34px rgba(15,23,42,.055)}
.module-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.module-stat-card{display:flex;align-items:center;gap:.9rem;border:1px solid rgba(15,23,42,.06);border-radius:20px;background:#fff;padding:1rem 1.05rem;box-shadow:0 12px 28px rgba(15,23,42,.05);min-height:94px}.module-stat-icon{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;background:#eff6ff;color:#2563eb;font-size:1.15rem;flex:0 0 44px}.module-stat-card strong{display:block;font-size:1.28rem;line-height:1.12;font-weight:900;color:#0f172a;word-break:break-word}.module-stat-card small{display:block;margin-top:.25rem;font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:#64748b;font-weight:800}.module-stat-card.green .module-stat-icon{background:#ecfdf5;color:#059669}.module-stat-card.warning .module-stat-icon{background:#fffbeb;color:#d97706}.module-stat-card.danger .module-stat-icon{background:#fff1f2;color:#e11d48}
.module-filter-card{padding:1rem 1.1rem;border-radius:22px}.module-filter-grid{display:grid;gap:.75rem;align-items:end}.invoice-filter-grid{grid-template-columns:minmax(210px,1.4fr) minmax(190px,1fr) 165px 190px 150px 150px auto}.payment-filter-grid{grid-template-columns:minmax(250px,1.5fr) 180px 150px 150px auto}.credit-filter-grid{grid-template-columns:minmax(240px,1.4fr) 160px 160px 150px 150px auto}.stock-filter-grid{grid-template-columns:minmax(260px,1.4fr) 190px auto}.module-filter-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.module-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;padding:1.1rem 1.35rem .85rem;border-bottom:1px solid rgba(15,23,42,.08);background:linear-gradient(180deg,#fff,#fbfdff)}.module-card-head h5{margin:0;font-size:1.02rem;font-weight:900;color:#0f172a}.module-card-head p{margin:.2rem 0 0;color:#64748b;font-size:.84rem}.module-table-card .company-table-wrap{padding-top:.75rem}.module-empty-state{display:grid;place-items:center;text-align:center;gap:.3rem;padding:2rem;color:#64748b}.module-empty-state i{font-size:2rem;color:#94a3b8}.module-empty-state strong{color:#334155;font-size:1rem}.module-empty-state span{font-size:.88rem}.company-table td a{font-weight:800;text-decoration:none;color:#1d4ed8}.company-table td a:hover{text-decoration:underline}
@media(max-width:1400px){.invoice-filter-grid,.payment-filter-grid,.credit-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stock-filter-grid{grid-template-columns:1fr 220px auto}.module-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.module-stats-grid,.invoice-filter-grid,.payment-filter-grid,.credit-filter-grid,.stock-filter-grid{grid-template-columns:1fr}.module-hero{align-items:flex-start}.module-filter-actions .btn{flex:1}.module-stat-card strong{font-size:1.15rem}}
.quotation-filter-grid,.delivery-filter-grid,.expense-filter-grid,.purchase-filter-grid{grid-template-columns:minmax(240px,1.35fr) minmax(180px,1fr) 170px 150px 150px auto}.recurring-filter-grid{grid-template-columns:minmax(280px,1.45fr) minmax(180px,1fr) 170px auto}.product-filter-grid{grid-template-columns:minmax(280px,1.6fr) 180px auto}.simple-filter-grid{grid-template-columns:minmax(280px,1fr) auto}.module-pagination{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding:1rem 1.35rem;border-top:1px solid rgba(15,23,42,.08);background:#fff}.module-pagination-size{display:flex;align-items:center;gap:.5rem;color:#64748b;font-size:.84rem;font-weight:800}.module-pagination-size select{width:auto;min-width:84px}.module-pagination-pages{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.module-pagination-pages .btn.active{background:#0f172a;color:#fff;border-color:#0f172a}.module-pagination-pages .btn.disabled{pointer-events:none;opacity:.45}.pagination-ellipsis{color:#94a3b8;font-weight:800;padding:0 .25rem}@media(max-width:1400px){.quotation-filter-grid,.delivery-filter-grid,.expense-filter-grid,.purchase-filter-grid,.recurring-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.product-filter-grid{grid-template-columns:1fr 180px auto}.simple-filter-grid{grid-template-columns:1fr auto}}@media(max-width:767px){.quotation-filter-grid,.delivery-filter-grid,.expense-filter-grid,.purchase-filter-grid,.recurring-filter-grid,.product-filter-grid,.simple-filter-grid{grid-template-columns:1fr}.module-pagination{align-items:stretch}.module-pagination-size,.module-pagination-pages{justify-content:center}.module-pagination-pages .btn{flex:1}}

.report-filter-grid{display:grid;grid-template-columns:160px 150px 150px max-content;gap:.75rem;align-items:end;width:100%}
.report-filter-grid .form-label{font-size:.76rem;font-weight:800;color:#64748b;margin-bottom:.35rem}
.report-filter-grid .form-control,.report-filter-grid .form-select{height:42px;padding:.55rem .8rem;border-radius:12px}
.report-filter-actions{display:flex;align-items:end;gap:.55rem;white-space:nowrap}
.report-filter-actions .btn{height:42px;padding:.55rem .9rem;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:.3rem}
.report-filter-card{padding:1rem 1.1rem!important;border-radius:20px}
.report-kpi-grid{--bs-gutter-x:.9rem;--bs-gutter-y:.9rem}
.report-kpi-grid .stat-card{padding:.95rem 1rem;min-height:118px;border-radius:18px;display:flex;flex-direction:column;justify-content:space-between}
.report-kpi-grid .stat-icon{width:36px;height:36px;border-radius:13px;font-size:1rem;margin-bottom:.45rem}
.report-kpi-grid .stat-value{font-size:1.36rem;line-height:1.12;margin-top:.2rem;word-break:break-word;letter-spacing:-.02em}
.report-kpi-grid .stat-label{font-size:.70rem;line-height:1.2;margin-top:.35rem;letter-spacing:.065em}
.report-chart-card{min-height:390px}
.report-chart-wrap{position:relative;height:305px;width:100%;padding:.75rem 1rem 1rem}
.report-chart-wrap canvas{width:100%!important;height:100%!important;display:block}
.reports-hub-grid{gap:.8rem!important;margin-bottom:1rem!important}.report-hub-card{border-radius:18px!important;padding:.85rem .9rem!important;min-height:76px}.report-hub-icon{width:36px!important;height:36px!important;border-radius:13px!important;font-size:1rem!important;flex-basis:36px!important}.report-hub-card strong{font-size:.90rem!important}.report-hub-card small{font-size:.76rem!important;line-height:1.3!important}
@media(max-width:1199px){.report-filter-grid{grid-template-columns:1fr 1fr 1fr max-content}.report-chart-card{min-height:360px}.report-chart-wrap{height:280px}}
@media(max-width:767px){.report-filter-grid{grid-template-columns:1fr}.report-filter-actions{width:100%}.report-filter-actions .btn{flex:1}.report-kpi-grid .stat-card{min-height:104px}.report-chart-wrap{height:260px}.reports-hub-grid{grid-template-columns:1fr!important}}

.export-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:14px}
.export-card{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid rgba(148,163,184,.22);border-radius:18px;padding:14px;box-shadow:0 10px 28px rgba(15,23,42,.05)}
.export-icon{width:42px;height:42px;border-radius:14px;background:#eff6ff;color:#2563eb;display:flex;align-items:center;justify-content:center;font-size:1.15rem;flex:0 0 auto}
.export-body{min-width:0;flex:1}.export-body strong{display:block;color:#0f172a;font-size:.95rem}.export-body span{display:block;color:#64748b;font-size:.78rem;margin-top:2px}.export-actions{display:flex;align-items:center;gap:6px;white-space:nowrap}
.compact-report-filter{grid-template-columns:160px 160px minmax(240px,1fr) auto!important;align-items:end}
@media (max-width:1100px){.export-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-report-filter{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:700px){.export-grid{grid-template-columns:1fr}.export-card{align-items:flex-start}.export-actions{flex-direction:column;align-items:stretch}.compact-report-filter{grid-template-columns:1fr!important}}

.audit-stats-grid .module-stat-card{min-height:88px}
.audit-filter-card{padding:1rem 1.1rem;border-radius:22px}
.audit-filter-grid{grid-template-columns:minmax(280px,1.7fr) minmax(180px,1fr) 160px 160px auto;gap:.8rem;align-items:end}
.audit-filter-grid label{display:block;font-size:.76rem;font-weight:800;color:#64748b;margin-bottom:.35rem}
.audit-filter-actions{justify-content:flex-start}
.audit-card-meta{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap}
.audit-card-meta span{display:inline-flex;align-items:center;gap:.4rem;border:1px solid #e2e8f0;background:#f8fafc;color:#475569;border-radius:999px;padding:.42rem .72rem;font-size:.76rem;font-weight:800}
.audit-table-wrap{padding-top:0}
.audit-table tbody td{vertical-align:middle}
.audit-date{font-weight:900;color:#0f172a;line-height:1.2}
.audit-time{font-size:.8rem;color:#64748b;margin-top:.15rem}
.audit-action-title{font-weight:800;color:#0f172a;line-height:1.25}
.audit-action-details{font-size:.82rem;color:#64748b;margin-top:.18rem;max-width:520px;line-height:1.35}
.audit-ref{font-weight:800;color:#334155}
.audit-workspace{font-weight:800;color:#0f172a;line-height:1.2}
.audit-workspace-sub{font-size:.79rem;color:#64748b;margin-top:.12rem}
.audit-ip{display:inline-block;padding:.28rem .5rem;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0;color:#475569;font-size:.78rem}
.identity-cell.compact{display:flex;align-items:center;gap:.65rem;min-width:0}
.identity-cell.compact .identity-avatar{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:#eff6ff;color:#2563eb;font-weight:800;flex:0 0 34px}
.identity-cell.compact .identity-name{font-weight:800;color:#0f172a;line-height:1.2}
.identity-cell.compact .identity-sub{font-size:.78rem;color:#64748b;line-height:1.2;word-break:break-word}
@media(max-width:1400px){.audit-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767px){.audit-filter-grid{grid-template-columns:1fr}.audit-filter-actions .btn{flex:1}.audit-card-meta{width:100%}.audit-card-meta span{flex:1;justify-content:center}.audit-table{min-width:1050px}}

.admin-refine-stats .module-stat-card{min-height:88px;overflow:hidden}.admin-refine-stats .module-stat-card strong{max-width:230px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-refine-filter-card{padding:1rem 1.1rem;border-radius:22px}.admin-refine-filter-card label{display:block;font-size:.76rem;font-weight:800;color:#64748b;margin-bottom:.35rem}.admin-refine-info{box-shadow:0 10px 24px rgba(15,23,42,.04)}.admin-refine-info-icon{width:42px;height:42px;border-radius:15px;background:#eff6ff;color:#2563eb;display:grid;place-items:center;flex:0 0 42px;font-size:1.1rem}.admin-refine-info-icon.warning{background:#fff7ed;color:#d97706}.admin-refine-table-wrap{padding-top:0}.admin-refine-table thead th{white-space:nowrap}.admin-refine-table tbody td{vertical-align:middle}.admin-refine-footer-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding:1rem 1.25rem;border-top:1px solid rgba(15,23,42,.08);background:#fff}.document-sequence-filter-grid{grid-template-columns:160px auto;gap:.8rem;align-items:end}.document-sequence-table input{min-height:38px}.document-sequence-table .font-monospace{font-size:.78rem}.admin-preview-pill{display:inline-flex;align-items:center;border-radius:999px;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;padding:.45rem .7rem;font-size:.78rem;font-weight:900;white-space:nowrap}.admin-code-pill{display:inline-block;padding:.42rem .6rem;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0;color:#334155;font-size:.78rem}.export-filter-grid{grid-template-columns:160px 160px minmax(280px,1fr) auto;gap:.8rem;align-items:end}.export-centre-card .module-card-head{align-items:center}.refined-export-grid{padding:1rem;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.refined-export-card{border-radius:20px;min-height:96px;transition:all .16s ease}.refined-export-card:hover{border-color:#bfdbfe;box-shadow:0 16px 32px rgba(15,23,42,.08);transform:translateY(-1px)}.refined-export-card .export-body strong{font-size:.98rem}.refined-export-card .export-body span{font-size:.78rem}.permission-filter-grid{grid-template-columns:280px minmax(280px,1fr) auto;gap:.8rem;align-items:end}.permission-filter-note{display:flex;align-items:center;gap:.45rem;color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:.7rem .85rem;font-size:.84rem;font-weight:700;min-height:42px}.permission-groups-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.permission-group-card{padding:0;overflow:hidden}.permission-group-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.15rem;border-bottom:1px solid rgba(15,23,42,.08);background:linear-gradient(180deg,#fff,#fbfdff)}.permission-group-head h5{margin:0;font-size:1.02rem;font-weight:900;color:#0f172a}.permission-group-head p{margin:.2rem 0 0;color:#64748b;font-size:.82rem}.permission-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;padding:1rem}.permission-check-card{display:flex;align-items:flex-start;gap:.7rem;padding:.78rem .85rem;border:1px solid #e2e8f0;background:#fff;border-radius:16px;cursor:pointer;min-height:76px;transition:all .15s ease;margin:0}.permission-check-card:hover{border-color:#93c5fd;box-shadow:0 8px 18px rgba(15,23,42,.06)}.permission-check-card:has(input:checked){background:#eff6ff;border-color:#93c5fd}.permission-check-card input{margin-top:.15rem;flex:0 0 auto}.permission-check-card span{display:grid;gap:.15rem;min-width:0}.permission-check-card strong{font-size:.87rem;line-height:1.25;color:#0f172a}.permission-check-card small{font-size:.72rem;color:#64748b;word-break:break-word}.admin-refine-sticky-save{position:sticky;bottom:12px;z-index:5;margin-top:1rem;padding:1rem 1.15rem;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border:1px solid rgba(15,23,42,.08);border-radius:20px;box-shadow:0 12px 32px rgba(15,23,42,.12);display:flex;align-items:center;justify-content:space-between;gap:1rem}.system-update-table tbody tr:hover,.document-sequence-table tbody tr:hover{background:#fbfdff}@media(max-width:1400px){.refined-export-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.permission-groups-grid{grid-template-columns:1fr}.permission-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:991px){.export-filter-grid,.permission-filter-grid{grid-template-columns:1fr 1fr}.permission-filter-note{grid-column:1/-1}.document-sequence-table,.system-update-table{min-width:980px}}@media(max-width:767px){.document-sequence-filter-grid,.export-filter-grid,.permission-filter-grid{grid-template-columns:1fr}.permission-check-grid,.refined-export-grid{grid-template-columns:1fr}.admin-refine-sticky-save{position:relative;bottom:auto;align-items:stretch;flex-direction:column}.admin-refine-sticky-save .btn{width:100%}.admin-refine-footer-actions{align-items:stretch;flex-direction:column}.admin-refine-footer-actions .btn{width:100%}.admin-refine-stats .module-stat-card strong{max-width:100%}}
.print-footer-note{margin-top:24px;border-top:1px solid #e2e8f0;padding-top:12px;color:#64748b;font-size:.78rem;text-align:center}
@media print{.print-footer-note{position:fixed;bottom:8mm;left:0;right:0;border-top:0;color:#64748b}}

.portal-body{min-height:100vh;background:#f4f6fb;font-family:Inter,Arial,sans-serif;color:#0f172a;}
.portal-print-wrap{width:100%;max-width:210mm;margin:0 auto;padding:18px 0 32px;}
.portal-print-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 10px;}
.a4-document{width:210mm;min-height:297mm;margin:0 auto;background:#fff;border:1px solid #e5e7eb;border-radius:14px;box-shadow:0 18px 50px rgba(15,23,42,.08);padding:13mm 13mm 12mm;box-sizing:border-box;color:#0f172a;}
.a4-document-header{display:flex;justify-content:space-between;gap:18mm;border-bottom:1px solid #dbe2ea;padding-bottom:7mm;margin-bottom:6mm;align-items:flex-start;}
.a4-company h2{font-size:21px;line-height:1.15;margin:0 0 4px;font-weight:800;color:#0f172a;}
.a4-company .company-name{font-weight:700;color:#334155;margin-bottom:2px;}
.a4-company .company-address,.a4-muted{font-size:12px;color:#64748b;line-height:1.45;}
.a4-doc-ref{text-align:right;min-width:48mm;}
.a4-doc-ref strong{display:block;font-size:16px;line-height:1.25;color:#0f172a;}
.a4-doc-ref span{font-size:12px;color:#64748b;}
.a4-info-grid{display:grid;grid-template-columns:1fr 52mm;gap:10mm;margin-bottom:6mm;align-items:start;}
.a4-box-label{font-size:11px;color:#64748b;text-transform:uppercase;letter-spacing:.06em;font-weight:800;margin-bottom:3px;}
.a4-party strong{display:block;font-size:13px;color:#0f172a;margin-bottom:1px;}
.a4-party div{font-size:12px;line-height:1.45;}
.a4-status{text-align:right;}
.a4-table{width:100%;border-collapse:collapse;margin-top:2mm;font-size:12px;table-layout:fixed;}
.a4-table th{background:#f8fafc;color:#0f172a;font-size:10.5px;text-transform:uppercase;letter-spacing:.045em;font-weight:800;padding:9px 8px;border:1px solid #dfe5ec;}
.a4-table td{padding:9px 8px;border:1px solid #dfe5ec;vertical-align:top;line-height:1.35;}
.a4-table th:first-child,.a4-table td:first-child{text-align:left;}
.a4-table .num{text-align:right;white-space:nowrap;}
.a4-totals-wrap{display:flex;justify-content:flex-end;margin-top:7mm;}
.a4-totals{width:78mm;font-size:12px;}
.a4-total-line{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #e2e8f0;}
.a4-total-line.strong{font-weight:900;color:#0f172a;border-bottom:2px solid #cbd5e1;}
.a4-notes{margin-top:7mm;border:1px solid #e2e8f0;background:#fbfdff;border-radius:8px;padding:9px 10px;font-size:12px;color:#475569;}
.a4-payment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:6mm;}
.a4-payment-box{border:1px solid #e2e8f0;border-radius:8px;padding:10px;background:#fbfdff;}
.a4-payment-box span{display:block;color:#64748b;font-size:10.5px;text-transform:uppercase;font-weight:800;letter-spacing:.04em;margin-bottom:3px;}
.a4-payment-box strong{font-size:12px;}
.a4-statement-title{font-size:20px;font-weight:850;margin:0;}

@page{size:A4;margin:10mm;}
@media print{
  html,body{width:210mm;background:#fff!important;}
  .no-print,.portal-print-toolbar,.print-toolbar,.sidebar,.topbar,.page-footer{display:none!important;}
  .portal-body,.login-body,.print-body{background:#fff!important;display:block!important;min-height:0!important;padding:0!important;margin:0!important;}
  .portal-print-wrap{max-width:none;width:auto;padding:0!important;margin:0!important;}
  .a4-document,.print-page{width:auto!important;min-height:auto!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;}
  .a4-document{font-size:11.5px;}
  .a4-table th{background:#f8fafc!important;color:#0f172a!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;}
  .a4-table tr,.print-table tr{break-inside:avoid;page-break-inside:avoid;}
  .a4-totals-wrap,.a4-notes,.print-bottom-grid,.print-signatures{break-inside:avoid;page-break-inside:avoid;}
  .badge{border:1px solid #94a3b8!important;color:#0f172a!important;background:#fff!important;}
}
@media(max-width:900px){.portal-print-wrap{padding:12px}.a4-document{width:100%;min-height:auto;padding:18px}.a4-document-header,.a4-info-grid{grid-template-columns:1fr;display:grid;gap:12px}.a4-doc-ref,.a4-status{text-align:left}.a4-payment-grid{grid-template-columns:1fr 1fr}.a4-totals{width:100%}.portal-print-toolbar{padding:0}}
@media(max-width:575px){.a4-payment-grid{grid-template-columns:1fr}.a4-table{font-size:11px}.a4-table th,.a4-table td{padding:7px 6px}.portal-print-toolbar{align-items:stretch;flex-direction:column}.portal-print-toolbar .btn{width:100%}}
.print-body .print-toolbar{width:210mm;max-width:calc(100vw - 32px);}
.print-body .print-page{width:210mm;max-width:calc(100vw - 32px);min-height:297mm;box-sizing:border-box;padding:13mm;}
@media print{.print-body .print-page{width:auto!important;max-width:none!important;min-height:auto!important;padding:0!important}.print-body .print-toolbar{display:none!important}}


.a4-master-document{position:relative;overflow:hidden;padding:13mm 13mm 18mm;background:#fff;border:1px solid #dde5ee;border-radius:16px;box-shadow:0 18px 50px rgba(15,23,42,.08)}
.a4-fixed-header,.a4-fixed-footer{position:static}
.a4-header-shell{border-bottom:1px solid #d5dde7;padding-bottom:7mm;margin-bottom:6mm;align-items:flex-start}
.a4-brand-block{display:flex;align-items:flex-start;gap:14px;min-width:0;flex:1}
.a4-logo-box{width:54px;height:54px;border-radius:14px;padding:8px;border:1px solid #d9e2ec;background:#fff;object-fit:contain;flex:0 0 auto}
.a4-company{min-width:0}
.a4-company h2{font-size:18px;line-height:1.15;margin:0 0 5px;font-weight:800;color:#0f172a}
.a4-company .company-address{font-size:11px;line-height:1.45;color:#475569;margin-bottom:1px}
.a4-doc-ref-tight{min-width:76mm;max-width:84mm;text-align:right}
.a4-doc-type{font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:#64748b;font-weight:800;margin-bottom:8px}
.a4-doc-number{display:block;font-size:21px;line-height:1.15;font-weight:900;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.a4-status-pill-wrap{margin-top:8px}
.a4-status-pill-wrap .badge{border-radius:999px;padding:5px 10px;font-weight:700;font-size:11px}
.a4-info-grid-wide{grid-template-columns:1.15fr .75fr;gap:10mm;margin-bottom:7mm}
.a4-info-card{border:1px solid #dce4ed;background:#fafcff;border-radius:14px;padding:12px 14px;color:#475569;min-height:82px}
.a4-party-card strong{display:block;font-size:12px;color:#0f172a;margin-bottom:3px}
.a4-party-card div{font-size:11px;line-height:1.5}
.a4-meta-card{display:flex;flex-direction:column;justify-content:center}
.a4-meta-line{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px dashed #dbe4ec;font-size:11px;color:#475569}
.a4-meta-line:last-child{border-bottom:0}
.a4-meta-line strong{color:#334155;font-weight:800;text-align:right}
.a4-table-darkhead{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border-radius:12px;border:1px solid #d9e2ec;margin-top:4px}
.a4-table-darkhead thead th{background:#0f172a;color:#fff;border-color:#0f172a;font-size:10px;letter-spacing:.06em;padding:10px 8px}
.a4-table-darkhead tbody td{font-size:11px;color:#334155;padding:10px 8px;border-color:#dde5ee;background:#fff}
.a4-table-darkhead thead th:first-child{border-top-left-radius:12px}
.a4-table-darkhead thead th:last-child{border-top-right-radius:12px}
.a4-table-darkhead .num{text-align:right}
.a4-th-center{text-align:center}
.a4-bottom-grid{display:grid;grid-template-columns:1fr 96mm;gap:10mm;margin-top:8mm;align-items:start}
.a4-bottom-grid-single{grid-template-columns:1fr 90mm}
.a4-notes-card,.a4-totals-card{border:1px solid #dce4ed;border-radius:14px;background:#fbfdff;min-height:120px;padding:12px 14px;color:#475569}
.a4-notes-card{font-size:11px;line-height:1.55}
.a4-totals-card{min-height:120px}
.a4-totals-card .a4-total-line{font-size:11px;padding:8px 0}
.a4-totals-card .a4-total-line.strong{font-size:12px}
.a4-signatures{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:14mm;text-align:center;color:#475569;break-inside:avoid;page-break-inside:avoid}
.a4-sign-block span{display:block;border-top:1px solid #a8b6c7;height:1px;margin-bottom:8px}
.a4-sign-block strong{font-size:11px;color:#475569}
.a4-master-document .print-footer-note{margin-top:10mm;border-top:1px solid #dbe4ec;padding-top:10px;color:#64748b;font-size:10.5px;text-align:center}
.a4-table-inner{margin-top:0}

.print-body .a4-master-document{width:210mm;max-width:calc(100vw - 32px);min-height:297mm;margin:0 auto}
@media print{
  @page{size:A4;margin:10mm}
  .a4-master-document{width:auto!important;min-height:auto!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}
  .a4-fixed-header{position:fixed;top:0;left:0;right:0;padding:0 0 0 0;background:#fff;z-index:5}
  .a4-fixed-footer{position:fixed;left:0;right:0;bottom:0;background:#fff;z-index:5}
  .a4-fixed-header .a4-header-shell{margin:0;padding:0 0 6mm;border-bottom:1px solid #d5dde7}
  .a4-fixed-footer .print-footer-note{margin:0;padding-top:0;border-top:0}
  .a4-print-content{padding-top:44mm;padding-bottom:18mm}
  .a4-table-darkhead thead th{background:#0f172a!important;color:#fff!important;border-color:#0f172a!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .a4-signatures,.a4-bottom-grid,.a4-notes-card,.a4-totals-card,.a4-info-grid-wide{break-inside:avoid;page-break-inside:avoid}
  .a4-info-card,.a4-notes-card,.a4-totals-card{background:#fff!important}
}
@media (max-width:900px){
  .a4-doc-ref-tight{min-width:0;max-width:none;text-align:left}
  .a4-doc-number{white-space:normal;overflow:visible;text-overflow:clip}
  .a4-info-grid-wide,.a4-bottom-grid,.a4-bottom-grid-single,.a4-signatures{grid-template-columns:1fr}
}


.a4-header-shell{gap:10mm}
.a4-brand-block{gap:10px}
.a4-logo-box{width:46px;height:46px;padding:6px;border-radius:12px}
.a4-company h2{font-size:17px;margin-bottom:3px}
.a4-company .company-address{font-size:10.5px;line-height:1.35}
.a4-doc-type{margin-bottom:6px}
.a4-doc-number{font-size:19px;line-height:1.1}
.a4-info-card{padding:10px 12px}
.a4-meta-line{padding:4px 0}
.a4-watermark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-30deg);font-size:48px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:rgba(15,23,42,.08);pointer-events:none;z-index:2;white-space:nowrap}
.a4-master-document > :not(.a4-watermark){position:relative;z-index:3}
.statement-print-shell{margin-bottom:24px}
.statement-master-document{width:210mm;max-width:calc(100vw - 32px);min-height:297mm;margin:0 auto}
@media print{
  .page-hero,.statement-filter-card{display:none!important}
  .content-area{display:block!important}
  .page-content{padding:0!important}
  .statement-print-shell{margin:0!important}
  .statement-master-document{width:auto!important;max-width:none!important;min-height:auto!important;margin:0!important}
  .a4-watermark{color:rgba(15,23,42,.1)!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
@media (max-width:900px){
  .statement-master-document{width:100%;max-width:100%}
}


.a4-master-document{padding:11mm 11mm 12mm;border-radius:18px;background:#fff;border:1px solid #d9e2ec;box-shadow:0 18px 42px rgba(15,23,42,.06)}
.a4-header-shell{gap:8mm;padding-bottom:6mm;margin-bottom:6mm;border-bottom:1px solid #d7e0ea}
.a4-brand-block{gap:8px;align-items:flex-start}
.a4-logo-box{width:42px;height:42px;padding:5px;border-radius:12px}
.a4-company h2{font-size:16px;line-height:1.12;margin-bottom:2px}
.a4-company .company-address{font-size:10px;line-height:1.32;color:#475569}
.a4-doc-ref-tight{min-width:92mm;max-width:96mm;text-align:right}
.a4-doc-type{font-size:10px;letter-spacing:.2em;margin-bottom:5px;color:#64748b}
.a4-doc-number{font-size:16px;line-height:1.06;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;letter-spacing:.01em}
.a4-status-pill-wrap{margin-top:7px}
.a4-status-pill-wrap .badge{font-size:10px;padding:4px 9px;border-radius:999px}
.a4-info-grid-wide{grid-template-columns:1.35fr .9fr;gap:8mm;margin-bottom:6mm}
.a4-info-card{padding:11px 12px;border-radius:14px;background:#fbfcfe;border:1px solid #d9e2ec;min-height:72px}
.a4-box-label{font-size:10px;letter-spacing:.16em;margin-bottom:7px;color:#64748b}
.a4-party-card strong{font-size:11px;margin-bottom:3px}
.a4-party-card div,.a4-meta-line{font-size:10px;line-height:1.45}
.a4-meta-line{padding:4px 0;border-bottom:1px dashed #e1e8ef}
.a4-table-darkhead{border:0;border-radius:14px;overflow:hidden;margin-top:2px}
.a4-table-darkhead thead th{background:#0f172a;border:0;color:#fff;font-size:10px;padding:11px 10px;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.a4-table-darkhead tbody td{padding:11px 10px;font-size:10.5px;color:#334155;border:0;border-bottom:1px solid #e5ebf2;background:#fff;vertical-align:top}
.a4-table-darkhead tbody tr:last-child td{border-bottom:0}
.a4-bottom-grid{grid-template-columns:1fr 96mm;gap:8mm;margin-top:8mm}
.a4-bottom-grid-single{grid-template-columns:1fr 92mm}
.a4-notes-card,.a4-totals-card{border-radius:14px;border:1px solid #d9e2ec;background:#fbfcfe;padding:11px 12px;min-height:126px}
.a4-notes-card{font-size:10px;line-height:1.5}
.a4-totals-card .a4-total-line{font-size:10px;padding:7px 0;border-bottom:1px solid #e3e9f0}
.a4-totals-card .a4-total-line:last-child{border-bottom:0}
.a4-totals-card .a4-total-line.strong{font-size:11px;font-weight:900}
.a4-signatures{margin-top:11mm;gap:14px}
.a4-sign-block span{margin-bottom:9px;border-top:1px solid #b8c4d3}
.a4-sign-block strong{font-size:10px;color:#475569}
.a4-master-document .print-footer-note{margin-top:8mm;padding-top:10px;border-top:1px solid #d9e2ec;font-size:9.5px;color:#64748b}
.a4-watermark{font-size:46px}
.statement-master-document .a4-doc-number{font-size:15px}

@media print{
  @page{size:A4;margin:10mm}
  html,body{background:#fff!important}
  .a4-master-document{padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;width:auto!important;max-width:none!important;min-height:auto!important}
  .a4-fixed-header,.a4-fixed-footer{position:static!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;background:transparent!important}
  .a4-fixed-header .a4-header-shell{margin-bottom:6mm!important;padding-bottom:6mm!important}
  .a4-fixed-footer .print-footer-note{margin-top:8mm!important;padding-top:10px!important;border-top:1px solid #d9e2ec!important}
  .a4-print-content{padding-top:0!important;padding-bottom:0!important}
  .a4-info-card,.a4-notes-card,.a4-totals-card{background:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .a4-table-darkhead thead{display:table-header-group}
  .a4-table-darkhead thead th{background:#0f172a!important;color:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .a4-table-darkhead tbody tr,.a4-info-grid-wide,.a4-bottom-grid,.a4-signatures{break-inside:avoid;page-break-inside:avoid}
}

@media (max-width:900px){
  .a4-master-document{padding:18px 14px}
  .a4-doc-ref-tight{min-width:0;max-width:none;text-align:left}
  .a4-doc-number{white-space:normal;overflow:visible;text-overflow:clip}
  .a4-info-grid-wide,.a4-bottom-grid,.a4-bottom-grid-single,.a4-signatures{grid-template-columns:1fr}
}


@media screen and (min-width:760px){
  .print-body .a4-document-header,
  .portal-body .a4-document-header,
  .statement-print-shell .a4-document-header{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;flex-wrap:nowrap!important}

  .print-body .a4-doc-ref-tight,
  .portal-body .a4-doc-ref-tight,
  .statement-print-shell .a4-doc-ref-tight{min-width:92mm!important;max-width:96mm!important;text-align:right!important}

  .print-body .a4-doc-number,
  .portal-body .a4-doc-number,
  .statement-print-shell .a4-doc-number{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}

  .print-body .a4-info-grid-wide,
  .portal-body .a4-info-grid-wide,
  .statement-print-shell .a4-info-grid-wide{display:grid!important;grid-template-columns:1.35fr .9fr!important;gap:8mm!important}

  .print-body .a4-bottom-grid,
  .portal-body .a4-bottom-grid,
  .statement-print-shell .a4-bottom-grid{display:grid!important;grid-template-columns:1fr 96mm!important;gap:8mm!important}

  .print-body .a4-bottom-grid-single,
  .portal-body .a4-bottom-grid-single,
  .statement-print-shell .a4-bottom-grid-single{display:grid!important;grid-template-columns:1fr 92mm!important}

  .print-body .a4-signatures,
  .portal-body .a4-signatures,
  .statement-print-shell .a4-signatures{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:14px!important}
}

@media screen and (max-width:759px){
  .print-body .a4-doc-ref-tight,
  .portal-body .a4-doc-ref-tight,
  .statement-print-shell .a4-doc-ref-tight{min-width:0!important;max-width:none!important;text-align:left!important}

  .print-body .a4-doc-number,
  .portal-body .a4-doc-number,
  .statement-print-shell .a4-doc-number{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}

  .print-body .a4-info-grid-wide,
  .portal-body .a4-info-grid-wide,
  .statement-print-shell .a4-info-grid-wide,
  .print-body .a4-bottom-grid,
  .portal-body .a4-bottom-grid,
  .statement-print-shell .a4-bottom-grid,
  .print-body .a4-bottom-grid-single,
  .portal-body .a4-bottom-grid-single,
  .statement-print-shell .a4-bottom-grid-single,
  .print-body .a4-signatures,
  .portal-body .a4-signatures,
  .statement-print-shell .a4-signatures{grid-template-columns:1fr!important}
}


.doc-desc-col{width:42%;min-width:240px;white-space:normal!important;line-height:1.35}
.company-table .doc-desc-col{width:46%}
.a4-table-darkhead th.a4-col-no,
.a4-table-darkhead td.a4-col-no{width:6%;min-width:32px;text-align:left!important}
.a4-table-darkhead th.a4-col-description,
.a4-table-darkhead td.a4-col-description{width:42%;white-space:normal!important;word-break:normal;overflow-wrap:anywhere;line-height:1.35;text-align:left!important}
.a4-table-darkhead th.a4-col-qty{width:9%}
.a4-table-darkhead th.a4-col-money{width:14%}
.portal-body .a4-table-darkhead th.a4-col-description,
.portal-body .a4-table-darkhead td.a4-col-description,
.print-body .a4-table-darkhead th.a4-col-description,
.print-body .a4-table-darkhead td.a4-col-description{width:44%}
@media(max-width:760px){.doc-desc-col{min-width:180px}.a4-table-darkhead th.a4-col-description,.a4-table-darkhead td.a4-col-description{min-width:210px}}

.doc-page-hero{align-items:flex-start;background:linear-gradient(135deg,#ffffff 0%,#f8fbff 100%);border:1px solid rgba(15,23,42,.06);border-radius:24px;padding:1.2rem 1.35rem;box-shadow:0 14px 34px rgba(15,23,42,.05)}
.doc-page-hero .page-title{margin-bottom:.35rem}
.doc-hero-actions{display:flex;gap:.65rem;flex-wrap:wrap;align-items:center;justify-content:flex-end}
.doc-status-strip{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.8rem}
.doc-status-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.48rem .78rem;border-radius:999px;background:#fff;border:1px solid rgba(15,23,42,.08);font-size:.82rem;color:#334155;font-weight:700;box-shadow:0 8px 20px rgba(15,23,42,.04)}
.doc-panel{overflow:hidden;border-radius:24px}
.doc-panel-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding:1.15rem 1.3rem .9rem;border-bottom:1px solid rgba(15,23,42,.08);background:linear-gradient(180deg,#fff,#fbfdff)}
.doc-panel-head h5{margin:0;font-size:1.04rem;font-weight:800}
.doc-panel-head p{margin:.18rem 0 0;color:#64748b;font-size:.84rem}
.doc-panel-body{padding:1.15rem 1.3rem}
.doc-table-wrap{padding:.65rem 1.3rem 1.2rem;overflow:auto}
.doc-table{margin:0}
.doc-table thead th{background:#f8fafc;color:#475569;border-bottom:1px solid rgba(15,23,42,.08)}
.doc-table tbody tr:hover{background:#fbfdff}
.doc-desc-cell{min-width:260px}
.doc-keyvals{display:grid;gap:.8rem}
.doc-kv{display:flex;justify-content:space-between;gap:1rem;padding-bottom:.8rem;border-bottom:1px solid rgba(15,23,42,.08)}
.doc-kv:last-child{padding-bottom:0;border-bottom:0}
.doc-kv span{color:#64748b;font-size:.85rem}
.doc-kv strong{font-weight:800;color:#0f172a;text-align:right}
.doc-meta-box{border:1px solid rgba(15,23,42,.08);border-radius:20px;background:#fcfdff;padding:1rem 1.05rem;height:100%}
.doc-meta-box h6{margin:0 0 .9rem;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:#64748b;font-weight:800}
.doc-customer-name{font-weight:800;font-size:1.02rem;color:#0f172a}
.doc-customer-contact{display:grid;gap:.32rem;margin-top:.6rem;color:#475569;font-size:.9rem}
.doc-summary-total{margin-top:.65rem;padding-top:.85rem;border-top:1px solid rgba(15,23,42,.08);display:flex;justify-content:space-between;gap:1rem;align-items:flex-end}
.doc-summary-total span{font-size:.86rem;color:#64748b;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.doc-summary-total strong{font-size:1.42rem;color:#0f172a;line-height:1}
.doc-mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}
.doc-mini-stat{border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fff;padding:.95rem 1rem}
.doc-mini-stat .label{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-weight:800}
.doc-mini-stat .value{display:block;margin-top:.55rem;font-size:1.25rem;font-weight:900;color:#0f172a}
.doc-empty{display:grid;place-items:center;text-align:center;gap:.35rem;padding:1.7rem;color:#64748b}
.doc-empty i{font-size:1.7rem;color:#94a3b8}
.doc-empty strong{color:#334155}
.doc-action-set{display:flex;gap:.45rem;flex-wrap:wrap;justify-content:flex-end}
.doc-action-set .btn{white-space:nowrap}
.doc-note-box{white-space:pre-line;color:#334155;line-height:1.6}
.doc-related-card + .doc-related-card{margin-top:1rem}
.doc-link{font-weight:800;text-decoration:none;color:#2563eb}
.doc-link:hover{text-decoration:underline}
@media (max-width:1199px){.doc-mini-stats{grid-template-columns:repeat(2,1fr)}}
@media (max-width:767px){.doc-page-hero{padding:1rem 1rem 1.05rem}.doc-hero-actions{width:100%;justify-content:flex-start}.doc-table-wrap,.doc-panel-body{padding-left:1rem;padding-right:1rem}.doc-mini-stats{grid-template-columns:1fr}}


.doc-sidebar-stack{position:sticky;top:96px;display:grid;gap:1rem}
.doc-summary-card{border:1px solid rgba(15,23,42,.08);border-radius:24px;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);box-shadow:0 14px 34px rgba(15,23,42,.05);overflow:hidden}
.doc-summary-head{padding:1rem 1.1rem .8rem;border-bottom:1px solid rgba(15,23,42,.08);display:flex;align-items:center;justify-content:space-between;gap:.75rem}
.doc-summary-head h5{margin:0;font-size:1rem;font-weight:900;color:#0f172a}
.doc-summary-head span{font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:#64748b;font-weight:800}
.doc-summary-section{padding:.9rem 1.1rem}
.doc-summary-section + .doc-summary-section{border-top:1px solid rgba(15,23,42,.08)}
.doc-summary-label{display:block;margin-bottom:.7rem;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#64748b;font-weight:800}
.doc-summary-customer{display:grid;gap:.28rem}
.doc-summary-customer .name{font-size:1.12rem;font-weight:900;color:#0f172a;line-height:1.25}
.doc-summary-customer .line{color:#475569;font-size:.93rem;line-height:1.45}
.doc-meta-grid-compact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}
.doc-meta-chip{border:1px solid rgba(15,23,42,.07);border-radius:18px;background:#fff;padding:.72rem .8rem;min-width:0}
.doc-meta-chip span{display:block;font-size:.71rem;letter-spacing:.08em;text-transform:uppercase;color:#64748b;font-weight:800;margin-bottom:.3rem}
.doc-meta-chip strong{display:block;font-size:.9rem;line-height:1.35;color:#0f172a;word-break:break-word}
.doc-totals-compact{display:grid;gap:.15rem}
.doc-total-line{display:flex;justify-content:space-between;gap:1rem;padding:.45rem 0;color:#334155;border-bottom:1px dashed rgba(15,23,42,.08)}
.doc-total-line:last-child{border-bottom:0}
.doc-total-line span{font-size:.86rem;color:#64748b}
.doc-total-line strong{font-weight:800;color:#0f172a;text-align:right}
.doc-total-line.balance{margin-top:.15rem;padding-top:.75rem;border-top:1px solid rgba(15,23,42,.08);border-bottom:0;align-items:flex-end}
.doc-total-line.balance span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.doc-total-line.balance strong{font-size:1.42rem;line-height:1}
.doc-stat-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}
.doc-stat-pill{border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fff;padding:.75rem .8rem;text-align:center}
.doc-stat-pill span{display:block;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:#64748b;font-weight:800}
.doc-stat-pill strong{display:block;margin-top:.35rem;font-size:1.08rem;color:#0f172a;font-weight:900}
@media (max-width:1199px){.doc-sidebar-stack{position:static}.doc-meta-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:575px){.doc-meta-grid-compact,.doc-stat-strip{grid-template-columns:1fr}}


.table-actions-icon{display:inline-flex;align-items:center;gap:.45rem;flex-wrap:wrap}.action-icon-btn{width:38px;height:38px;border-radius:14px;border:1px solid #dbe3ee;background:#fff;color:#2563eb;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 8px 18px rgba(15,23,42,.04);transition:all .18s ease}.action-icon-btn:hover{transform:translateY(-1px);background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.action-icon-btn i{font-size:1rem}.doc-summary-card{max-height:none}.doc-sidebar-stack{position:sticky;top:12px}@media(max-width:1199px){.doc-sidebar-stack{position:static}}


.module-filter-card{
  padding:1rem 1.15rem!important;
  border-radius:22px!important;
}
.module-filter-grid{
  display:grid!important;
  gap:.75rem!important;
  align-items:end!important;
}
.module-filter-grid .form-label{
  margin-bottom:.35rem;
  color:#0f172a;
}
.module-filter-grid .form-control,
.module-filter-grid .form-select{
  height:48px;
}
.module-filter-actions{
  display:flex!important;
  align-items:end!important;
  gap:.55rem!important;
  flex-wrap:nowrap!important;
  justify-content:flex-start!important;
}
.module-filter-actions .btn{
  height:48px;
  min-width:104px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.35rem;
  white-space:nowrap;
}
.invoice-filter-grid{grid-template-columns:minmax(220px,1.45fr) minmax(190px,1.05fr) minmax(150px,.75fr) minmax(170px,.85fr) 150px 150px auto!important}
.quotation-filter-grid{grid-template-columns:minmax(250px,1.55fr) minmax(200px,1fr) minmax(170px,.85fr) 150px 150px auto!important}
.recurring-filter-grid{grid-template-columns:minmax(280px,1.5fr) minmax(190px,1fr) minmax(170px,.85fr) auto!important}
.delivery-filter-grid{grid-template-columns:minmax(260px,1.5fr) minmax(180px,1fr) 150px 150px auto!important}
.payment-filter-grid{grid-template-columns:minmax(260px,1.5fr) minmax(180px,1fr) 150px 150px auto!important}
.credit-filter-grid{grid-template-columns:minmax(260px,1.5fr) minmax(170px,.9fr) minmax(170px,.9fr) 150px 150px auto!important}
.expense-filter-grid,.purchase-filter-grid{grid-template-columns:minmax(260px,1.5fr) minmax(180px,1fr) 150px 150px auto!important}
.product-filter-grid{grid-template-columns:minmax(280px,1.6fr) 180px auto!important}
.stock-filter-grid{grid-template-columns:minmax(280px,1.6fr) 190px auto!important}
.simple-filter-grid{grid-template-columns:minmax(280px,1fr) auto!important}

@media(max-width:1400px){
  .invoice-filter-grid,
  .quotation-filter-grid,
  .recurring-filter-grid,
  .delivery-filter-grid,
  .payment-filter-grid,
  .credit-filter-grid,
  .expense-filter-grid,
  .purchase-filter-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .product-filter-grid,
  .stock-filter-grid,
  .simple-filter-grid{
    grid-template-columns:1fr auto!important;
  }
  .module-filter-actions{
    grid-column:auto;
  }
}
@media(max-width:900px){
  .invoice-filter-grid,
  .quotation-filter-grid,
  .recurring-filter-grid,
  .delivery-filter-grid,
  .payment-filter-grid,
  .credit-filter-grid,
  .expense-filter-grid,
  .purchase-filter-grid,
  .product-filter-grid,
  .stock-filter-grid,
  .simple-filter-grid{
    grid-template-columns:1fr!important;
  }
  .module-filter-actions{
    width:100%;
    flex-wrap:wrap!important;
  }
  .module-filter-actions .btn{
    flex:1 1 120px;
  }
}

.type-chip-rental{background:#fff7ed;color:#c2410c;border-color:#fed7aa}.tds-options-card{border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fff7ed;padding:.9rem 1rem}.tds-options-card .form-check-label{font-weight:800;color:#7c2d12}.tds-options-card small{display:block;color:#9a3412;margin-top:.15rem}


.item-type-toggle{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.35rem;
  min-width:260px;
}
.item-type-option{
  border:1px solid #dbe3ee;
  background:#fff;
  color:#334155;
  border-radius:14px;
  padding:.55rem .5rem;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.35rem;
  font-weight:800;
  font-size:.82rem;
  transition:all .18s ease;
}
.item-type-option:hover{
  background:#f8fbff;
  border-color:#bfdbfe;
  color:#1d4ed8;
}
.item-type-option.active{
  background:#2563eb;
  border-color:#2563eb;
  color:#fff;
  box-shadow:0 10px 22px rgba(37,99,235,.18);
}
.item-type-option i{font-size:.95rem}
@media(max-width:900px){
  .item-type-toggle{min-width:0}
}


.type-chip-tds{display:inline-flex;background:#fef3c7;color:#92400e;border:1px solid #fde68a;margin-left:.15rem}


.po-product-cell{max-width:260px}
.po-product-picker{
  min-width:190px;
  width:100%;
  border-color:#dbe3ee;
  background:#fff;
  font-size:.82rem;
}
.po-product-picker:focus{
  background:#fff;
  border-color:#93c5fd;
  box-shadow:0 0 0 .16rem rgba(37,99,235,.10);
}
.po-description-cell .form-control{min-width:260px}


@media(min-width:1200px){
  .invoice-meta-row{
    display:grid!important;
    grid-template-columns:minmax(280px,2fr) minmax(150px,.9fr) minmax(150px,.9fr) minmax(130px,.75fr) minmax(150px,.9fr);
    gap:.8rem!important;
  }
  .invoice-meta-row>[class*="col-"]{width:auto!important;max-width:none!important;flex:none!important}
}


.searchable-select-wrap{
  position:relative;
  width:100%;
}
.searchable-select-hidden{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
  left:-9999px!important;
}
.searchable-select-input{
  min-height:48px;
  border-color:#dbe3ee;
  background:#fff;
}
.searchable-select-input:focus{
  border-color:#93c5fd;
  box-shadow:0 0 0 .16rem rgba(37,99,235,.10);
}
.po-entry-table .searchable-select-input,
.po-entry-table .form-control-sm.searchable-select-input{
  min-height:36px;
  font-size:.82rem;
}


.login-body{min-height:100vh;background:#f3f5fa;}
.auth-screen-clean{min-height:100vh;width:100%;display:flex;align-items:stretch;justify-content:stretch;}
.auth-clean-shell{width:100%;min-height:100vh;display:grid;grid-template-columns:54% 46%;}
.auth-clean-left{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;padding:42px 36px 24px;color:#fff;background:linear-gradient(180deg,#0b5f50 0%,#157364 42%,#53b49f 100%);}
.auth-clean-left:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 18%,rgba(255,255,255,.08),transparent 22%),radial-gradient(circle at 82% 85%,rgba(255,255,255,.10),transparent 22%);pointer-events:none;}
.auth-clean-left-inner,.auth-clean-footer{position:relative;z-index:2;}
.auth-clean-badge{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.14);color:rgba(255,255,255,.96);font-size:.72rem;font-weight:800;letter-spacing:.06em;margin-bottom:24px;}
.auth-clean-title{margin:0;font-size:4rem;line-height:1.02;font-weight:900;letter-spacing:-.05em;}
.auth-clean-subtitle{margin-top:8px;font-size:1.9rem;line-height:1.22;font-weight:800;color:rgba(255,255,255,.96);}
.auth-clean-copy{margin-top:26px;max-width:520px;font-size:1.14rem;line-height:1.8;color:rgba(255,255,255,.92);}
.auth-clean-footer{font-size:.95rem;color:rgba(255,255,255,.9);}
.auth-clean-right{display:flex;align-items:center;justify-content:center;padding:40px 5vw;background:#f3f5fa;}
.auth-clean-card{width:100%;max-width:470px;background:rgba(255,255,255,.88);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.88);border-radius:28px;padding:34px;box-shadow:0 22px 60px rgba(15,23,42,.08);}
.auth-form-brand-clean{margin-bottom:22px;}
.auth-form-head-clean h2{font-size:2rem;}
.auth-submit-dark{background:linear-gradient(90deg,#111827 0%,#101827 55%,#1f2937 100%) !important;box-shadow:0 16px 30px rgba(17,24,39,.18) !important;}
.auth-submit-dark:hover,.auth-submit-dark:focus{background:linear-gradient(90deg,#0f172a 0%,#111827 55%,#1f2937 100%) !important;}
.auth-inline-link{color:#0f766e;}
.auth-inline-link:hover{color:#115e59;}
.auth-password-toggle{color:#0f766e;}
.auth-success-state-clean h2{font-size:2rem;}
@media (max-width: 991px){.auth-clean-shell{grid-template-columns:1fr;}.auth-clean-left{min-height:38vh;padding:28px 22px;}.auth-clean-title{font-size:2.75rem;}.auth-clean-subtitle{font-size:1.45rem;}.auth-clean-copy{font-size:1rem;line-height:1.65;}.auth-clean-right{padding:24px 18px;}}
@media (max-width: 575px){.auth-clean-left{padding:22px 18px;}.auth-clean-card{padding:24px 20px;border-radius:22px;}.auth-clean-title{font-size:2.1rem;}.auth-clean-subtitle{font-size:1.2rem;}.auth-clean-copy{margin-top:16px;}}


.auth-clean-left{
  background:
    radial-gradient(circle at 18% 12%, rgba(147,197,253,.22), transparent 26%),
    linear-gradient(180deg,#0b1f4d 0%,#123f82 45%,#2563eb 100%) !important;
}
.auth-clean-badge{
  background:rgba(255,255,255,.14) !important;
  color:#eaf2ff !important;
}
.auth-clean-title{color:#fff;}
.auth-clean-subtitle{color:rgba(255,255,255,.94);}
.auth-clean-left-inner{max-width:680px;}
.auth-clean-footer{color:rgba(255,255,255,.88);}
.auth-inline-link{color:#1d4ed8 !important;}
.auth-inline-link:hover{color:#1e40af !important;}
.auth-password-toggle{color:#1d4ed8 !important;}
.auth-submit-dark{
  background:linear-gradient(90deg,#0f172a 0%,#172554 55%,#1d4ed8 100%) !important;
  box-shadow:0 16px 30px rgba(37,99,235,.20) !important;
}
.auth-submit-dark:hover,.auth-submit-dark:focus{
  background:linear-gradient(90deg,#020617 0%,#0f172a 55%,#1e40af 100%) !important;
}
.auth-clean-left .auth-clean-copy{display:none!important;}
@media (min-width: 992px){
  .auth-clean-left{padding-top:48px;}
}

.login-body{
  min-height:100vh!important;
  display:block!important;
  background:#f4f7fc!important;
  overflow-x:hidden;
}
.auth-screen-clean{
  min-height:100vh!important;
  width:100%!important;
  display:flex!important;
  align-items:stretch!important;
  justify-content:stretch!important;
  overflow:hidden;
  background:#f4f7fc;
}
.auth-clean-shell{
  width:100%!important;
  min-height:100vh!important;
  display:grid!important;
  grid-template-columns:minmax(560px,52.2vw) 1fr!important;
}
.auth-clean-left{
  position:relative!important;
  min-height:100vh!important;
  padding:86px 6.6vw 54px 4.25vw!important;
  overflow:hidden!important;
  color:#fff!important;
  background:
    radial-gradient(circle at 76% 11%, rgba(51,144,255,.36) 0 2px, transparent 3px),
    radial-gradient(circle at 45% 49%, rgba(55,138,255,.55) 0 2px, transparent 4px),
    radial-gradient(circle at 16% 19%, rgba(64,121,198,.25), transparent 28%),
    linear-gradient(160deg,#071944 0%,#0a245c 38%,#0d3f8f 70%,#2369e8 100%)!important;
}
.auth-clean-left:before{
  content:""!important;
  position:absolute!important;
  inset:-18% -26% -12% -14%!important;
  pointer-events:none!important;
  background:
    radial-gradient(ellipse at center, transparent 0 41%, rgba(81,143,255,.32) 41.25%, transparent 41.65%),
    radial-gradient(ellipse at 24% 18%, transparent 0 30%, rgba(86,137,245,.20) 30.2%, transparent 30.55%),
    radial-gradient(circle at 64% 68%, rgba(5,67,170,.36), transparent 25%);
  opacity:.95!important;
}
.auth-clean-left:after{
  content:"";
  position:absolute;
  right:-10%;
  bottom:-7%;
  width:64%;
  height:48%;
  pointer-events:none;
  opacity:.72;
  background:
    radial-gradient(circle at center, rgba(80,154,255,.72) 0 1px, transparent 1.7px) 0 0/12px 12px,
    linear-gradient(135deg, transparent 18%, rgba(22,116,255,.24) 54%, rgba(255,255,255,.03) 100%);
  transform:skewY(-14deg) rotate(-2deg);
  mask-image:radial-gradient(ellipse at center, #000 0 46%, transparent 76%);
}
.auth-clean-left-inner,
.auth-clean-footer{
  position:relative!important;
  z-index:2!important;
}
.auth-clean-left-inner{max-width:720px!important;}
.auth-clean-badge{
  display:inline-flex!important;
  align-items:center!important;
  min-height:45px!important;
  padding:0 28px!important;
  border-radius:999px!important;
  margin-bottom:50px!important;
  color:#f7fbff!important;
  background:rgba(255,255,255,.055)!important;
  border:1px solid rgba(96,165,250,.46)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 0 24px rgba(37,99,235,.20)!important;
  font-size:1.02rem!important;
  line-height:1!important;
  font-weight:850!important;
  letter-spacing:.075em!important;
}
.auth-clean-title{
  margin:0!important;
  color:#fff!important;
  font-size:clamp(4rem, 6vw, 6.35rem)!important;
  line-height:.95!important;
  font-weight:950!important;
  letter-spacing:-.065em!important;
  text-shadow:0 10px 28px rgba(0,0,0,.18)!important;
}
.auth-clean-subtitle{
  margin-top:30px!important;
  max-width:620px!important;
  color:rgba(226,237,255,.88)!important;
  font-size:clamp(1.75rem,2.25vw,2.55rem)!important;
  line-height:1.25!important;
  font-weight:500!important;
  letter-spacing:-.035em!important;
}
.auth-clean-short-line{
  width:76px;
  height:2px;
  margin-top:58px;
  border-radius:99px;
  background:rgba(19,91,180,.26);
  box-shadow:0 0 0 1px rgba(255,255,255,.02);
}
.auth-clean-footer-premium{
  display:flex!important;
  align-items:center!important;
  gap:22px!important;
  margin-bottom:38px!important;
  color:rgba(207,224,255,.78)!important;
  font-size:1.06rem!important;
  line-height:1.35!important;
  font-weight:500!important;
}
.auth-footer-shield{
  width:54px;
  height:54px;
  border-radius:50%;
  display:grid;
  place-items:center;
  flex:0 0 54px;
  color:#fff;
  border:1px solid rgba(96,165,250,.35);
  background:rgba(37,99,235,.32);
  box-shadow:0 0 0 8px rgba(37,99,235,.13), 0 12px 34px rgba(13,83,199,.35);
}
.auth-footer-shield i{font-size:1.25rem;}
.auth-clean-right{
  min-height:100vh!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:56px clamp(36px,6vw,120px)!important;
  background:
    radial-gradient(circle at 50% 50%, rgba(255,255,255,.92), transparent 34%),
    linear-gradient(135deg,#f9fbff 0%,#f4f7fc 46%,#eef2f9 100%)!important;
}
.auth-clean-card{
  width:100%!important;
  max-width:580px!important;
  min-height:0!important;
  padding:52px!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.82)!important;
  border:1px solid rgba(255,255,255,.98)!important;
  box-shadow:0 38px 80px rgba(15,23,42,.08), 0 2px 8px rgba(15,23,42,.035)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}
.auth-form-brand-clean{
  align-items:center!important;
  gap:24px!important;
  margin-bottom:36px!important;
  padding-bottom:26px!important;
  border-bottom:1px solid #dce4f1!important;
}
.auth-form-brand-icon{
  width:86px!important;
  height:86px!important;
  border-radius:22px!important;
  display:grid!important;
  place-items:center!important;
  color:#2f57f3!important;
  font-size:2rem!important;
  background:linear-gradient(135deg,#f1f4ff 0%,#e9eeff 100%)!important;
  border:1px solid #e0e7ff!important;
  box-shadow:0 18px 38px rgba(70,94,229,.12)!important;
}
.auth-form-brand-title{
  font-size:1.55rem!important;
  font-weight:900!important;
  color:#172b58!important;
  letter-spacing:-.03em!important;
}
.auth-form-brand-subtitle{
  margin-top:8px!important;
  font-size:1.1rem!important;
  color:#6f7da5!important;
  font-weight:650!important;
}
.auth-form-head-clean{
  margin-bottom:30px!important;
}
.auth-form-head-clean h2{
  margin-bottom:10px!important;
  font-size:2.2rem!important;
  line-height:1.05!important;
  color:#12214d!important;
  font-weight:950!important;
  letter-spacing:-.055em!important;
}
.auth-form-head-clean p,
.auth-form-head p{
  color:#6e7ca5!important;
  font-size:1.06rem!important;
  line-height:1.55!important;
  font-weight:500!important;
}
.auth-form-premium{gap:24px!important;}
.auth-form-premium .form-label{
  margin-bottom:10px!important;
  font-size:.98rem!important;
  font-weight:850!important;
  color:#1c315f!important;
}
.auth-input{
  min-height:66px!important;
  border-radius:14px!important;
  padding-left:60px!important;
  padding-right:22px!important;
  border:1px solid #cfd8e8!important;
  background:rgba(255,255,255,.80)!important;
  color:#172b58!important;
  font-size:1.02rem!important;
  font-weight:650!important;
  box-shadow:0 1px 0 rgba(255,255,255,.75)!important;
}
.auth-password-input{padding-right:62px!important;}
.auth-input::placeholder{color:#7886a9!important;font-weight:600!important;}
.auth-input:focus{
  border-color:#94b5ff!important;
  background:#fff!important;
  box-shadow:0 0 0 .24rem rgba(37,99,235,.11), 0 14px 30px rgba(37,99,235,.06)!important;
}
.auth-field-icon{
  left:22px!important;
  color:#7583a5!important;
  font-size:1.24rem!important;
}
.auth-password-toggle{
  right:13px!important;
  width:46px!important;
  height:46px!important;
  border-radius:14px!important;
  color:#6b7ca3!important;
}
.auth-password-toggle:hover{background:#eef4ff!important;color:#1d4ed8!important;}
.auth-row-between{
  margin-top:0!important;
  gap:16px!important;
  align-items:center!important;
}
.auth-check-pill{
  color:#273d6a!important;
  font-size:1.02rem!important;
  font-weight:750!important;
}
.auth-check-pill span{
  width:21px!important;
  height:21px!important;
  border-radius:6px!important;
  border-color:#9db3db!important;
}
.auth-check-pill input:checked + span{
  background:#fff!important;
  border-color:#2e62d7!important;
  color:#2e62d7!important;
  box-shadow:none!important;
}
.auth-check-pill span i{font-size:.95rem!important;font-weight:900!important;}
.auth-inline-link{
  color:#075bf7!important;
  font-weight:850!important;
  text-decoration:none!important;
}
.auth-inline-link:hover{color:#0d46ba!important;text-decoration:underline!important;}
.auth-submit-btn{
  min-height:66px!important;
  border-radius:14px!important;
  font-size:1.18rem!important;
  font-weight:900!important;
}
.auth-submit-dark{
  background:linear-gradient(90deg,#081633 0%,#17295f 49%,#0d5bff 100%)!important;
  border:0!important;
  box-shadow:0 18px 34px rgba(13,91,255,.19), 0 8px 18px rgba(15,23,42,.10)!important;
}
.auth-submit-dark:hover,.auth-submit-dark:focus{
  background:linear-gradient(90deg,#020b1d 0%,#111f4a 50%,#034de7 100%)!important;
  transform:translateY(-1px);
}
.auth-security-note{
  margin-top:32px!important;
  padding-top:28px!important;
  border-top:1px solid #eef2f7!important;
  color:#7382a5!important;
  gap:16px!important;
  font-size:1rem!important;
  font-weight:750!important;
}
.auth-security-note i{
  width:42px;
  height:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#edf5ff;
  color:#2460ff!important;
  font-size:1.05rem!important;
}
.auth-alert{
  border-radius:14px!important;
  border:0!important;
  font-weight:700!important;
  margin-bottom:22px!important;
}
.auth-success-state-clean h2{
  font-size:2.05rem!important;
  color:#12214d!important;
  font-weight:950!important;
  letter-spacing:-.04em!important;
}
.auth-success-state-clean p,
.auth-empty-state p{color:#6e7ca5!important;}
.auth-success-orbit span,
.auth-empty-icon{
  background:#edf5ff!important;
  color:#2563eb!important;
}
.auth-success-info{
  border-radius:16px!important;
  background:#f8fbff!important;
  border:1px solid #e6edf7!important;
}
@media (max-width:1199px){
  .auth-clean-shell{grid-template-columns:minmax(460px,48vw) 1fr!important;}
  .auth-clean-card{max-width:540px!important;padding:42px!important;}
  .auth-clean-title{font-size:4.2rem!important;}
  .auth-clean-subtitle{font-size:1.85rem!important;}
}
@media (max-width:991px){
  .auth-clean-shell{grid-template-columns:1fr!important;}
  .auth-clean-left{min-height:44vh!important;padding:38px 28px 34px!important;}
  .auth-clean-title{font-size:3.35rem!important;}
  .auth-clean-subtitle{font-size:1.55rem!important;margin-top:20px!important;}
  .auth-clean-short-line{margin-top:28px!important;}
  .auth-clean-footer-premium{margin-top:32px!important;margin-bottom:0!important;}
  .auth-clean-right{min-height:auto!important;padding:34px 20px 44px!important;}
  .auth-clean-card{max-width:580px!important;}
}
@media (max-width:575px){
  .auth-clean-left{padding:28px 20px 26px!important;}
  .auth-clean-badge{min-height:38px!important;padding:0 18px!important;margin-bottom:34px!important;font-size:.78rem!important;}
  .auth-clean-title{font-size:2.65rem!important;letter-spacing:-.05em!important;}
  .auth-clean-subtitle{font-size:1.25rem!important;}
  .auth-clean-card{padding:28px 22px!important;border-radius:20px!important;}
  .auth-form-brand-clean{gap:14px!important;margin-bottom:26px!important;padding-bottom:20px!important;}
  .auth-form-brand-icon{width:62px!important;height:62px!important;font-size:1.45rem!important;border-radius:18px!important;}
  .auth-form-brand-title{font-size:1.18rem!important;}
  .auth-form-brand-subtitle{font-size:.92rem!important;}
  .auth-form-head-clean h2{font-size:1.75rem!important;}
  .auth-input,.auth-submit-btn{min-height:58px!important;}
  .auth-row-between{align-items:flex-start!important;flex-direction:column!important;}
  .auth-security-note{font-size:.9rem!important;text-align:left!important;}
}


.auth-clean-left{
  background:
    radial-gradient(circle at 79% 12%, rgba(75,157,255,.92) 0 2px, transparent 4px),
    radial-gradient(circle at 47% 48%, rgba(90,163,255,.95) 0 2.4px, transparent 4px),
    radial-gradient(circle at 28% 20%, rgba(255,255,255,.06) 0 14%, transparent 32%),
    linear-gradient(180deg, #031235 0%, #08245d 38%, #0d3e95 72%, #235fe1 100%) !important;
}
.auth-clean-left:before{
  inset:-18% -18% -14% -16% !important;
  background:
    radial-gradient(ellipse at 19% 23%, transparent 0 27.9%, rgba(84,145,255,.20) 28.1%, transparent 28.45%),
    radial-gradient(ellipse at 56% 40%, transparent 0 42.8%, rgba(84,145,255,.20) 43.0%, transparent 43.35%),
    radial-gradient(ellipse at 74% 10%, rgba(35,96,225,.12), transparent 18%),
    radial-gradient(circle at 64% 68%, rgba(4,53,151,.28), transparent 26%) !important;
  opacity:1 !important;
}
.auth-clean-left:after{
  right:-10% !important;
  bottom:-7% !important;
  width:64% !important;
  height:48% !important;
  opacity:.85 !important;
  background:
    radial-gradient(circle at center, rgba(80,154,255,.9) 0 1px, transparent 1.7px) 0 0/12px 12px,
    linear-gradient(135deg, transparent 18%, rgba(22,116,255,.32) 54%, rgba(255,255,255,.03) 100%) !important;
  transform:skewY(-14deg) rotate(-2deg) !important;
  -webkit-mask-image:radial-gradient(ellipse at center, #000 0 46%, transparent 76%);
  mask-image:radial-gradient(ellipse at center, #000 0 46%, transparent 76%);
}
.auth-clean-title{
  font-size:clamp(4.3rem, 6vw, 6.6rem) !important;
  line-height:.94 !important;
  letter-spacing:-.075em !important;
}
.auth-clean-subtitle{
  margin-top:26px !important;
  color:rgba(230,238,255,.9) !important;
  font-size:clamp(1.65rem,2.12vw,2.45rem) !important;
  line-height:1.27 !important;
  font-weight:500 !important;
}
.auth-clean-short-line{
  width:64px !important;
  height:3px !important;
  margin-top:52px !important;
  background:rgba(66,145,255,.8) !important;
  box-shadow:0 0 18px rgba(37,99,235,.18) !important;
}
.auth-clean-footer-premium{
  gap:18px !important;
  font-size:1rem !important;
  color:rgba(231,239,255,.92) !important;
}
.auth-footer-powered{
  display:block;
  white-space:nowrap;
  font-weight:600;
  letter-spacing:-.01em;
}
.auth-footer-shield{
  box-shadow:0 0 0 8px rgba(37,99,235,.10), 0 10px 28px rgba(13,83,199,.28) !important;
}
@media (max-width: 991px){
  .auth-footer-powered{white-space:normal;}
}

:root{
  --sidebar-w:280px;
  --sidebar-collapsed-w:84px;
  --mobile-safe-pad:16px;
}
html{scroll-behavior:smooth;}
body{overflow-x:hidden;}
.app-shell{position:relative;background:#f4f7fb;}
.sidebar{z-index:1040;transition:width .24s ease, transform .24s ease, box-shadow .24s ease;scrollbar-width:thin;}
.sidebar::-webkit-scrollbar{width:7px;}
.sidebar::-webkit-scrollbar-thumb{background:rgba(148,163,184,.35);border-radius:999px;}
.sidebar-close-btn{display:none;position:absolute;right:12px;top:12px;width:38px;height:38px;border:0;border-radius:12px;background:rgba(255,255,255,.08);color:#fff;z-index:3;}
.sidebar-close-btn:hover{background:rgba(255,255,255,.14);}
.sidebar a i{min-width:22px;text-align:center;font-size:1.05rem;}
.sidebar .brand{min-height:76px;display:flex;align-items:center;}
.content-area{transition:margin .24s ease;width:100%;}
.topbar{min-height:72px;position:sticky;top:0;z-index:1030;box-shadow:0 12px 28px rgba(15,23,42,.045);}
.topbar-mobile-actions{display:none;align-items:center;gap:12px;min-width:0;}
.sidebar-toggle-btn{width:44px;height:44px;display:inline-grid;place-items:center;padding:0;border-radius:14px;box-shadow:0 8px 18px rgba(15,23,42,.06);}
.sidebar-toggle-btn i{font-size:1.45rem;line-height:1;}
.mobile-topbar-brand{display:grid;min-width:0;line-height:1.1;}
.mobile-topbar-brand span{font-weight:850;color:#0f172a;max-width:42vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.mobile-topbar-brand small{font-size:.75rem;color:#64748b;font-weight:650;margin-top:3px;}
.sidebar-mobile-backdrop{display:none;position:fixed;inset:0;background:rgba(15,23,42,.48);z-index:1035;backdrop-filter:blur(3px);}
body.sidebar-open .sidebar-mobile-backdrop{display:block;}

/* Desktop collapsible menu */
@media (min-width: 992px){
  body.sidebar-collapsed .sidebar{width:var(--sidebar-collapsed-w)!important;}
  body.sidebar-collapsed .sidebar .brand{padding:18px 10px;justify-content:center;}
  body.sidebar-collapsed .sidebar-logo{justify-content:center;width:100%;}
  body.sidebar-collapsed .sidebar-logo > div{display:none;}
  body.sidebar-collapsed .sidebar .section{display:none;}
  body.sidebar-collapsed .sidebar a{justify-content:center;gap:0;margin:0 10px 8px;padding:13px 10px;font-size:0;}
  body.sidebar-collapsed .sidebar a i{font-size:1.18rem;min-width:0;}
  body.sidebar-collapsed .sidebar-userbox{display:none;}
  body.sidebar-collapsed .sidebar .mt-3{display:none;}
  body.sidebar-collapsed .topbar-left-badges{display:flex;}
  .topbar-mobile-actions{display:flex;}
}

/* Tablet and mobile drawer */
@media (max-width: 991px){
  .app-shell{display:block;min-height:100vh;}
  .sidebar{position:fixed!important;left:0;top:0;bottom:0;width:min(86vw,330px)!important;height:100dvh!important;max-height:100dvh!important;transform:translateX(-105%);box-shadow:26px 0 60px rgba(15,23,42,.26)!important;border-right:1px solid rgba(255,255,255,.08);}
  body.sidebar-open .sidebar{transform:translateX(0);}
  .sidebar-close-btn{display:grid;place-items:center;}
  .sidebar .brand{padding-right:54px;}
  .content-area{min-height:100vh;}
  .topbar{padding:12px 14px;gap:12px;align-items:center;}
  .topbar-mobile-actions{display:flex;flex:1 1 auto;}
  .topbar-left-badges{display:none!important;}
  .topbar-user-area{margin-left:auto;display:flex;gap:8px;align-items:center;}
  .logout-btn{width:44px;height:44px;padding:0;display:inline-grid;place-items:center;border-radius:14px;font-size:0;}
  .logout-btn i{font-size:1.2rem;margin:0!important;}
  .topbar-workspace{order:3;width:100%;}
  .payroll-company-switcher{width:100%;display:grid!important;grid-template-columns:1fr 1fr;gap:8px;align-items:center;}
  .payroll-company-switcher .workspace-icon,.payroll-company-switcher .active-company-pill{display:none!important;}
  .payroll-company-switcher .form-select{min-width:0;width:100%;font-size:.82rem;padding:.62rem .75rem;border-radius:12px;}
  .page-content{padding:18px var(--mobile-safe-pad) 24px!important;}
  .page-footer{padding:12px var(--mobile-safe-pad) 20px;}
}

/* Mobile friendly content patterns */
@media (max-width: 767px){
  body{background:#f5f7fb;}
  .page-content{padding:14px 12px 22px!important;}
  .page-hero{gap:14px;margin-bottom:14px;}
  .page-title{font-size:1.42rem!important;line-height:1.18;letter-spacing:-.02em;}
  .page-subtitle{font-size:.88rem;line-height:1.45;}
  .page-kicker{font-size:.68rem;}
  .hero-metrics{width:100%;gap:8px;}
  .hero-chip{flex:1 1 100%;justify-content:flex-start;border-radius:14px;padding:.68rem .78rem;font-size:.82rem;}
  .card,.card-soft,.company-shell-clean,.po-entry-card,.po-meta-card{border-radius:16px!important;box-shadow:0 10px 24px rgba(15,23,42,.055)!important;}
  .card-body{padding:1rem!important;}
  .row.g-3,.row.g-4{--bs-gutter-x:.8rem;--bs-gutter-y:.8rem;}
  .btn{min-height:42px;border-radius:12px;padding:.58rem .82rem;}
  .btn-sm{min-height:36px;padding:.42rem .65rem;}
  .form-control,.form-select{min-height:44px;border-radius:12px;padding:.62rem .78rem;font-size:16px;}
  textarea.form-control{min-height:96px;}
  .input-group .form-control,.input-group .btn,.input-group .input-group-text{border-radius:12px!important;}
  .table-responsive,.company-table-wrap,.po-table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch;}
  .table{min-width:720px;font-size:.86rem;}
  .table > :not(caption) > * > *{padding:.72rem .65rem;}
  .table thead th{font-size:.7rem;}
  .company-head-simple,.po-table-toolbar{padding:1rem!important;align-items:flex-start!important;flex-direction:column!important;}
  .company-toolbar-clean{padding:.8rem 1rem!important;}
  .company-table-wrap{padding:.2rem 1rem 1rem!important;}
  .company-toolbar-form{grid-template-columns:1fr!important;}
  .action-group{display:flex;flex-wrap:wrap;gap:6px;}
  .action-group .btn{flex:1 1 auto;}
  .modal-dialog{margin:.75rem;}
  .modal-content{border-radius:18px;}
}

@media (max-width: 480px){
  .mobile-topbar-brand span{max-width:48vw;}
  .payroll-company-switcher{grid-template-columns:1fr!important;}
  .topbar{min-height:auto;}
  .page-title{font-size:1.32rem!important;}
  .stat-card{padding:1rem!important;}
  .stat-value{font-size:1.42rem;}
  .auth-clean-card{max-width:100%!important;}
}

@media (prefers-reduced-motion: reduce){
  .sidebar,.content-area,.sidebar a,.btn,.auth-submit-dark{transition:none!important;}
}

.topbar-refined{
  min-height:84px;
  padding:14px 18px;
  display:grid;
  grid-template-columns:minmax(280px,1.15fr) minmax(320px,1fr) auto;
  align-items:center;
  gap:16px;
  background:linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(248,250,255,.95) 100%);
  border-bottom:1px solid rgba(37,99,235,.08);
  box-shadow:0 14px 34px rgba(15,23,42,.05);
}
.topbar-section{min-width:0;display:flex;align-items:center;}
.topbar-section-left{gap:14px;flex-wrap:wrap;}
.topbar-section-center{justify-content:center;}
.topbar-section-right{justify-content:flex-end;}
.topbar-brand-panel{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}
.topbar-brand-icon{
  width:46px;
  height:46px;
  flex:0 0 46px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:linear-gradient(135deg,#eff4ff 0%, #dfeaff 100%);
  color:#2563eb;
  box-shadow:0 10px 25px rgba(37,99,235,.12);
  font-size:1.15rem;
}
.topbar-brand-copy{display:grid;line-height:1.08;min-width:0;}
.topbar-brand-kicker{
  font-size:.68rem;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-weight:800;
  color:#64748b;
  margin-bottom:4px;
}
.topbar-brand-copy strong{
  font-size:1.12rem;
  color:#0f172a;
  font-weight:900;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.topbar-brand-copy small{
  margin-top:4px;
  color:#64748b;
  font-size:.79rem;
  font-weight:600;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.topbar-badges-refined{gap:8px;}
.topbar-pill-soft{
  padding:.42rem .72rem;
  background:#f8fafc;
  border-color:#e2e8f0;
  color:#334155;
  box-shadow:0 1px 2px rgba(15,23,42,.03);
}
.topbar-pill-soft i{color:#2563eb;}
.payroll-company-switcher-refined{
  width:100%;
  max-width:720px;
  display:grid;
  grid-template-columns:auto minmax(200px,1fr) minmax(170px,.9fr);
  gap:10px;
  align-items:end;
  padding:10px 12px;
  border:1px solid #dbe7ff;
  border-radius:20px;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  box-shadow:0 16px 34px rgba(37,99,235,.08);
}
.workspace-switcher-heading{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  padding-right:4px;
}
.workspace-heading-copy{display:grid;line-height:1.1;min-width:0;}
.workspace-heading-label{
  font-size:.7rem;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-weight:800;
  color:#64748b;
}
.workspace-heading-value{
  margin-top:4px;
  color:#0f172a;
  font-weight:800;
  font-size:.92rem;
}
.payroll-company-switcher-refined .workspace-icon{
  width:40px;
  height:40px;
  border-radius:14px;
  background:linear-gradient(135deg,#edf4ff 0%,#dbeafe 100%);
  color:#2563eb;
  box-shadow:none;
}
.workspace-field{display:grid;gap:6px;min-width:0;}
.workspace-field label{
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#64748b;
  padding-left:2px;
}
.payroll-company-switcher-refined .form-select{
  width:100%;
  min-width:0;
  max-width:none;
  min-height:44px;
  border-radius:14px;
  border:1px solid #dbe7ff;
  background-color:#fff;
  font-size:.87rem;
  font-weight:700;
  color:#0f172a;
  box-shadow:none;
}
.payroll-company-switcher-refined .form-select:focus{
  border-color:#93c5fd;
  box-shadow:0 0 0 .22rem rgba(37,99,235,.10);
}
.topbar-user-refined{gap:12px;}
.topbar-user-card{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  padding:8px 10px;
  border-radius:18px;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
  border:1px solid rgba(148,163,184,.18);
}
.topbar-user-avatar{
  width:42px;
  height:42px;
  flex:0 0 42px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:linear-gradient(135deg,#0f172a 0%, #2563eb 100%);
  color:#fff;
  font-size:.88rem;
  font-weight:900;
  letter-spacing:.04em;
  box-shadow:0 10px 22px rgba(37,99,235,.18);
}
.topbar-user-meta{display:grid;line-height:1.08;min-width:0;}
.topbar-user-meta strong{
  font-size:.9rem;
  font-weight:900;
  color:#0f172a;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.topbar-user-meta span{
  margin-top:4px;
  font-size:.77rem;
  color:#64748b;
  font-weight:600;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:260px;
}
.logout-btn-refined{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:0 16px;
  border-radius:14px;
  border:1px solid #dbe7ff;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  color:#0f172a;
  font-weight:800;
  box-shadow:0 8px 20px rgba(15,23,42,.04);
}
.logout-btn-refined:hover,
.logout-btn-refined:focus{
  color:#0f172a;
  border-color:#bfd6ff;
  background:#fff;
}
@media (max-width: 1280px){
  .topbar-refined{grid-template-columns:minmax(240px,1fr) minmax(300px,1.1fr) auto;}
  .topbar-brand-copy small{display:none;}
  .topbar-user-meta span{max-width:180px;}
}
@media (max-width: 1100px){
  .topbar-refined{
    grid-template-columns:1fr;
    align-items:stretch;
  }
  .topbar-section-left,.topbar-section-center,.topbar-section-right{justify-content:flex-start;}
  .topbar-section-right{justify-content:flex-start;}
  .payroll-company-switcher-refined{max-width:none;}
}
@media (max-width: 991px){
  .topbar-refined{
    padding:12px 14px;
    gap:12px;
  }
  .topbar-brand-panel,
  .topbar-badges-refined{display:none !important;}
  .topbar-mobile-actions{display:flex;flex:1 1 auto;}
  .topbar-section-left{justify-content:space-between;}
  .topbar-section-right{justify-content:flex-end;}
  .topbar-user-card{display:none;}
  .logout-btn-refined{
    width:44px;
    height:44px;
    padding:0;
    justify-content:center;
  }
  .logout-btn-refined span{display:none;}
  .payroll-company-switcher-refined{
    grid-template-columns:1fr 1fr;
    padding:12px;
    border-radius:18px;
  }
  .workspace-switcher-heading{grid-column:1 / -1;}
}
@media (max-width: 575px){
  .topbar-refined{min-height:auto;}
  .mobile-topbar-brand span{max-width:52vw;}
  .payroll-company-switcher-refined{grid-template-columns:1fr;}
  .workspace-switcher-heading{padding-bottom:2px;}
  .workspace-heading-value{font-size:.88rem;}
  .payroll-company-switcher-refined .form-select{min-height:42px;font-size:.84rem;}
}

.topbar-compact-refined{
  min-height:68px !important;
  padding:8px 14px !important;
  grid-template-columns:minmax(250px, 1fr) minmax(360px, auto) auto !important;
  gap:10px !important;
}
.topbar-title-group{
  display:grid;
  line-height:1.05;
  min-width:0;
}
.topbar-title-group strong{
  font-size:1rem;
  font-weight:900;
  color:#0f172a;
  white-space:nowrap;
}
.topbar-title-group small{
  margin-top:3px;
  font-size:.72rem;
  color:#64748b;
  font-weight:700;
}
.sidebar-toggle-btn-brand{
  width:38px !important;
  height:38px !important;
  border-radius:12px !important;
  border:1px solid #dbe7ff !important;
  background:linear-gradient(135deg,#eef4ff 0%,#e0eaff 100%) !important;
  color:#2563eb !important;
  box-shadow:0 8px 18px rgba(37,99,235,.10) !important;
}
.sidebar-toggle-btn-brand i{font-size:1.1rem !important;}
.topbar-compact-refined .topbar-badges-refined{gap:6px;}
.topbar-compact-refined .topbar-pill-soft{
  padding:.28rem .58rem;
  font-size:.69rem;
}
.topbar-compact-refined .topbar-section-left{gap:10px !important;}
.topbar-compact-refined .topbar-section-center{justify-content:center;}
.payroll-company-switcher-compact{
  width:100%;
  max-width:580px;
  display:flex;
  align-items:center;
  gap:.42rem;
  padding:.28rem .38rem;
  border:1px solid #dbeafe;
  border-radius:16px;
  background:#f8fbff;
  box-shadow:0 8px 18px rgba(37,99,235,.07);
}
.payroll-company-switcher-compact .workspace-icon{
  width:32px;
  height:32px;
  border-radius:11px;
  display:grid;
  place-items:center;
  background:#eff6ff;
  color:#2563eb;
  flex:0 0 32px;
}
.payroll-company-switcher-compact .active-company-pill{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:.42rem .76rem;
  background:#2563eb;
  color:#fff;
  font-size:.76rem;
  font-weight:800;
  white-space:nowrap;
}
.payroll-company-switcher-compact .form-select{
  width:auto;
  min-width:190px;
  max-width:270px;
  min-height:38px;
  border:1px solid #dbeafe;
  border-radius:12px;
  background-color:#fff;
  font-size:.78rem;
  font-weight:700;
  color:#0f172a;
  padding-top:.35rem;
  padding-bottom:.35rem;
}
.payroll-company-switcher-compact .branch-select{
  min-width:160px;
  max-width:190px;
}
.topbar-user-card-compact{
  padding:6px 8px;
  border-radius:16px;
  gap:8px;
}
.topbar-user-card-compact .topbar-user-avatar{
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:12px;
  font-size:.78rem;
}
.topbar-user-meta-compact strong{
  font-size:.84rem;
  font-weight:900;
}
.topbar-user-meta-compact span{
  margin-top:3px;
  font-size:.71rem;
  max-width:220px;
}
.topbar-compact-refined .logout-btn-refined{
  min-height:38px;
  padding:0 14px;
  border-radius:12px;
  font-size:.82rem;
}
.topbar-compact-refined .logout-btn-refined i{font-size:.95rem;}
@media (max-width: 1200px){
  .topbar-compact-refined{
    grid-template-columns:minmax(220px,1fr) minmax(300px,auto) auto !important;
  }
  .payroll-company-switcher-compact{max-width:520px;}
  .payroll-company-switcher-compact .form-select{min-width:160px;}
  .payroll-company-switcher-compact .branch-select{min-width:130px;}
}
@media (max-width: 991px){
  .topbar-compact-refined{
    grid-template-columns:1fr !important;
    min-height:auto !important;
    padding:10px 12px !important;
    gap:10px !important;
  }
  .topbar-compact-refined .topbar-section-left,
  .topbar-compact-refined .topbar-section-center,
  .topbar-compact-refined .topbar-section-right{
    justify-content:flex-start;
  }
  .topbar-title-group{display:grid;}
  .topbar-compact-refined .topbar-badges-refined{display:none !important;}
  .topbar-compact-refined .topbar-user-card{display:flex;}
  .topbar-compact-refined .logout-btn-refined{
    width:38px;
    height:38px;
    padding:0;
    justify-content:center;
  }
  .topbar-compact-refined .logout-btn-refined span{display:none;}
  .topbar-compact-refined .topbar-section-left{justify-content:flex-start;}
  .topbar-compact-refined .topbar-section-right{justify-content:space-between;}
  .payroll-company-switcher-compact{
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    padding:10px;
  }
  .payroll-company-switcher-compact .workspace-icon,
  .payroll-company-switcher-compact .active-company-pill{
    display:none !important;
  }
  .payroll-company-switcher-compact .form-select{
    width:100%;
    min-width:0;
    max-width:none;
  }
}
@media (max-width: 575px){
  .topbar-compact-refined{padding:10px !important;}
  .topbar-title-group strong{font-size:.95rem;}
  .topbar-user-meta-compact span{max-width:150px;}
  .payroll-company-switcher-compact{grid-template-columns:1fr;}
  .topbar-compact-refined .topbar-section-right{gap:8px;align-items:center;}
  .topbar-user-card-compact{min-width:0;flex:1;}
}


:root{
  --inv-orange:#f97316;
  --inv-orange-dark:#c2410c;
  --inv-amber:#f59e0b;
  --inv-gold:#fbbf24;
  --inv-brown:#3b1d0a;
  --inv-soft:#fff7ed;
}
body{background:#fff8f0;color:#2b1708;}
.sidebar{background:linear-gradient(180deg,#2b1607 0%,#4a2307 48%,#7c2d12 100%) !important;box-shadow:20px 0 40px rgba(120,53,15,.18);}
.sidebar .brand{border-bottom:1px solid rgba(251,191,36,.18);}
.sidebar a.active{background:linear-gradient(90deg,rgba(249,115,22,.34),rgba(251,191,36,.14)) !important;border:1px solid rgba(251,191,36,.24) !important;color:#fff !important;}
.sidebar a:hover{background:rgba(251,191,36,.10) !important;color:#fff7ed !important;}
.sidebar .section{color:rgba(255,237,213,.62) !important;}
.sidebar-userbox{background:rgba(255,247,237,.08) !important;border-color:rgba(251,191,36,.18) !important;}
.topbar{background:rgba(255,251,245,.86) !important;border-bottom:1px solid rgba(249,115,22,.12) !important;}
.topbar-title,.topbar-title-group strong,.page-title{color:#3b1d0a !important;}
.topbar-kicker,.page-kicker{color:#ea580c !important;}
.orm-badge,.hero-chip,.topbar-pill,.user-chip{border-color:rgba(249,115,22,.16) !important;background:#fffaf3 !important;color:#7c2d12 !important;}
.card,.card-soft{border-color:rgba(249,115,22,.10) !important;box-shadow:0 14px 34px rgba(124,45,18,.07) !important;}
.btn-primary{background:linear-gradient(135deg,#f97316,#f59e0b) !important;border-color:#f97316 !important;box-shadow:0 12px 24px rgba(249,115,22,.22) !important;color:#fff !important;}
.btn-primary:hover,.btn-primary:focus{background:linear-gradient(135deg,#ea580c,#f97316) !important;border-color:#ea580c !important;}
.btn-outline-primary{border-color:#f97316 !important;color:#ea580c !important;}
.btn-outline-primary:hover{background:#f97316 !important;color:#fff !important;}
.form-control:focus,.form-select:focus{border-color:#fdba74 !important;box-shadow:0 0 0 .2rem rgba(249,115,22,.14) !important;}
.stat-icon{background:#ffedd5 !important;color:#ea580c !important;}
.user-chip-avatar{background:linear-gradient(135deg,#ffedd5,#fff7ed) !important;color:#ea580c !important;}
.table thead th,.company-table thead th{background:linear-gradient(180deg,#4a2307 0%,#7c2d12 100%) !important;color:#fff7ed !important;}
.badge.text-bg-primary{background:#f97316 !important;}
.text-primary{color:#ea580c !important;}
a{color:#ea580c;} a:hover{color:#c2410c;}

.login-body,.auth-screen-clean{background:#fff8f0 !important;}
.auth-clean-shell{grid-template-columns:minmax(560px,52.2vw) 1fr!important;}
.auth-clean-left{
  background:
    radial-gradient(circle at 63% 83%, rgba(255,255,255,.72) 0 2px, transparent 3px),
    radial-gradient(circle at 18% 19%, rgba(255,255,255,.14), transparent 24%),
    radial-gradient(circle at 78% 74%, rgba(251,191,36,.30), transparent 30%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='156' height='136' viewBox='0 0 156 136'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='2.2' opacity='.28'%3E%3Cpath d='M39 2 76 23v43L39 87 2 66V23z'/%3E%3Cpath d='M117 2l37 21v43l-37 21-37-21V23z'/%3E%3Cpath d='M78 69l37 21v43l-37 21-37-21V90z'/%3E%3C/g%3E%3C/svg%3E"),
    linear-gradient(145deg,#fff2c2 0%,#fbd06a 38%,#f59e0b 70%,#fb923c 100%) !important;
  background-size:auto,auto,auto,210px 184px,auto !important;
  color:#3b1d0a !important;
}
.auth-clean-left:before{
  inset:-18% -20% -14% -18% !important;
  background:
    radial-gradient(ellipse at 21% 23%, transparent 0 28%, rgba(255,255,255,.33) 28.25%, transparent 28.55%),
    radial-gradient(ellipse at 56% 39%, transparent 0 43%, rgba(255,255,255,.24) 43.2%, transparent 43.55%),
    linear-gradient(115deg,rgba(255,255,255,.34),transparent 52%) !important;
  opacity:.82 !important;
}
.auth-clean-left:after{
  content:"" !important;
  position:absolute !important;
  right:-10% !important;
  bottom:-8% !important;
  width:66% !important;
  height:50% !important;
  pointer-events:none !important;
  opacity:.58 !important;
  background:radial-gradient(circle at center, rgba(255,255,255,.82) 0 1.2px, transparent 1.9px) 0 0/13px 13px !important;
  transform:skewY(-14deg) rotate(-2deg) !important;
  -webkit-mask-image:radial-gradient(ellipse at center, #000 0 46%, transparent 76%);
  mask-image:radial-gradient(ellipse at center, #000 0 46%, transparent 76%);
}
.auth-clean-badge{
  gap:12px !important;
  min-height:48px !important;
  padding:0 24px !important;
  margin-bottom:100px !important;
  color:#3b1d0a !important;
  background:rgba(255,255,255,.42) !important;
  border:1px solid rgba(194,65,12,.28) !important;
  box-shadow:0 16px 34px rgba(180,83,9,.10), inset 0 1px 0 rgba(255,255,255,.55) !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  font-size:1.05rem !important;
}
.auth-clean-badge strong{font-weight:900;}
.honeycomb-mini,.honeycomb-brand-icon{position:relative;display:inline-block;width:34px;height:30px;flex:0 0 34px;}
.honeycomb-mini span,.honeycomb-brand-icon span{position:absolute;width:12px;height:13px;background:linear-gradient(135deg,#f59e0b,#fbbf24);clip-path:polygon(25% 5%,75% 5%,100% 50%,75% 95%,25% 95%,0 50%);}
.honeycomb-mini span:nth-child(1),.honeycomb-brand-icon span:nth-child(1){left:0;top:8px}.honeycomb-mini span:nth-child(2),.honeycomb-brand-icon span:nth-child(2){left:11px;top:1px}.honeycomb-mini span:nth-child(3),.honeycomb-brand-icon span:nth-child(3){left:22px;top:8px}.honeycomb-mini span:nth-child(4),.honeycomb-brand-icon span:nth-child(4){left:0;top:21px}.honeycomb-mini span:nth-child(5),.honeycomb-brand-icon span:nth-child(5){left:11px;top:14px}.honeycomb-mini span:nth-child(6),.honeycomb-brand-icon span:nth-child(6){left:22px;top:21px}
.auth-clean-title{color:#3b1d0a !important;text-shadow:0 14px 26px rgba(124,45,18,.10) !important;letter-spacing:-.065em !important;}
.auth-clean-subtitle{display:none !important;}
.auth-clean-short-line{width:72px !important;height:4px !important;margin-top:36px !important;background:#f97316 !important;box-shadow:0 0 20px rgba(249,115,22,.22) !important;}
.auth-clean-footer-premium{color:#3b1d0a !important;}
.auth-footer-powered{display:none !important;}
.auth-footer-shield{color:#ea580c !important;background:rgba(255,255,255,.28) !important;border-color:rgba(249,115,22,.22) !important;box-shadow:0 0 0 8px rgba(255,255,255,.10),0 10px 26px rgba(194,65,12,.12) !important;}
.auth-clean-right{background:radial-gradient(circle at 47% 47%,rgba(255,255,255,.96),transparent 34%),linear-gradient(135deg,#fffdf8 0%,#fff8ed 48%,#fff3df 100%) !important;}
.auth-clean-card{background:rgba(255,255,255,.84) !important;border:1px solid rgba(255,255,255,.96) !important;box-shadow:0 38px 84px rgba(124,45,18,.10),0 2px 8px rgba(124,45,18,.035) !important;}
.auth-form-brand-clean{border-bottom-color:#f3dfc5 !important;}
.auth-form-brand-icon{width:72px!important;height:72px!important;border-radius:20px!important;background:linear-gradient(135deg,#fff7ed,#ffedd5)!important;border:1px solid #fed7aa!important;box-shadow:0 18px 38px rgba(249,115,22,.13)!important;}
.honeycomb-brand-icon span{transform:scale(1.15);transform-origin:center;}
.auth-form-brand-title,.auth-form-head-clean h2{color:#3b1d0a !important;}
.auth-form-brand-subtitle{display:none !important;}
.auth-form-head-clean p,.auth-form-head p{color:#8a6a4a !important;}
.auth-form-premium .form-label{color:#4a2307 !important;}
.auth-input{border-color:#efd4b7 !important;color:#3b1d0a !important;background:rgba(255,255,255,.78) !important;}
.auth-input::placeholder{color:#9a826d !important;}
.auth-input:focus{border-color:#fdba74 !important;box-shadow:0 0 0 .24rem rgba(249,115,22,.13),0 14px 30px rgba(249,115,22,.07)!important;}
.auth-field-icon,.auth-password-toggle{color:#b0835c !important;}
.auth-password-toggle:hover{background:#fff7ed!important;color:#ea580c!important;}
.auth-check-pill{color:#4a2307!important;}
.auth-check-pill span{border-color:#f5b77a!important;}
.auth-check-pill input:checked + span{border-color:#f97316!important;color:#f97316!important;background:#fff7ed!important;}
.auth-inline-link{color:#ea580c!important;}
.auth-inline-link:hover{color:#c2410c!important;}
.auth-submit-dark{background:linear-gradient(90deg,#f97316 0%,#fb923c 52%,#fbbf24 100%)!important;border:0!important;box-shadow:0 18px 34px rgba(249,115,22,.26),0 8px 18px rgba(124,45,18,.10)!important;color:#fff!important;}
.auth-submit-dark:hover,.auth-submit-dark:focus{background:linear-gradient(90deg,#ea580c 0%,#f97316 54%,#f59e0b 100%)!important;}
.auth-security-note{border-top-color:#f4dfc8!important;color:#8a6a4a!important;}
.auth-security-note i{background:#fff7ed!important;color:#f97316!important;}
.auth-success-state-clean h2{color:#3b1d0a!important;}
.auth-success-orbit span,.auth-empty-icon{background:#fff7ed!important;color:#f97316!important;}
.auth-success-info{background:#fffaf3!important;border-color:#f3dfc5!important;}
@media (max-width:991px){.auth-clean-shell{grid-template-columns:1fr!important}.auth-clean-badge{margin-bottom:42px!important}.auth-clean-left{min-height:42vh!important}.auth-clean-title{font-size:3.35rem!important}.auth-clean-right{background:#fff8f0!important}}
@media (max-width:575px){.auth-clean-badge{margin-bottom:34px!important}.auth-clean-title{font-size:2.7rem!important}.auth-form-brand-icon{width:60px!important;height:60px!important}.honeycomb-brand-icon span{transform:scale(.92)}}


.login-body,.auth-screen-clean{background:#fff8f0 !important;}
.auth-clean-left{
  background:
    linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,.10)) 0 0/100% 100% no-repeat,
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='156' viewBox='0 0 180 156'%3E%3Cg fill='none' stroke='%23fff7ed' stroke-width='2' opacity='.9'%3E%3Cpath d='M45 3 87 27v48L45 99 3 75V27z'/%3E%3Cpath d='M135 3l42 24v48l-42 24-42-24V27z'/%3E%3Cpath d='M90 78l42 24v48l-42 24-42-24v-48z'/%3E%3C/g%3E%3C/svg%3E"),
    linear-gradient(135deg,#fbf2d5 0%,#f8d87d 34%,#f8b53c 70%,#f59e0b 100%) !important;
  background-size:100% 100%,180px 156px,100% 100% !important;
  color:#3b1d0a !important;
}
.auth-clean-left:before{display:none !important;}
.auth-clean-left:after{
  content:"" !important;
  position:absolute !important;
  right:-4% !important;
  bottom:-8% !important;
  width:54% !important;
  height:40% !important;
  pointer-events:none !important;
  opacity:.48 !important;
  background:radial-gradient(circle at center, rgba(255,255,255,.92) 0 1px, transparent 1.65px) 0 0/12px 12px !important;
  transform:skewY(-12deg) !important;
  -webkit-mask-image:radial-gradient(ellipse at center, #000 0 45%, transparent 74%);
  mask-image:radial-gradient(ellipse at center, #000 0 45%, transparent 74%);
}
.auth-clean-left-inner{max-width:920px !important;}
.auth-clean-badge{
  display:inline-flex !important;
  align-items:center !important;
  gap:12px !important;
  min-height:46px !important;
  padding:0 24px !important;
  margin-bottom:88px !important;
  color:#4a2307 !important;
  background:rgba(255,248,237,.72) !important;
  border:1px solid rgba(194,120,30,.28) !important;
  border-radius:999px !important;
  box-shadow:0 16px 34px rgba(180,83,9,.08), inset 0 1px 0 rgba(255,255,255,.70) !important;
  font-size:.95rem !important;
}
.auth-clean-title{
  max-width:780px !important;
  color:#3b1d0a !important;
  font-size:5.15rem !important;
  line-height:.94 !important;
  letter-spacing:-.08em !important;
  text-shadow:0 12px 24px rgba(124,45,18,.08) !important;
}
.auth-clean-subtitle,.auth-clean-short-line{display:none !important;}
.auth-clean-footer-premium{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  color:#4a2307 !important;
}
.auth-footer-powered{display:inline-flex !important;color:#4a2307 !important;font-weight:800 !important;font-size:1rem !important;}
.auth-footer-shield{color:#f97316 !important;background:rgba(255,247,237,.58) !important;border-color:rgba(249,115,22,.18) !important;box-shadow:0 0 0 8px rgba(255,255,255,.12),0 10px 26px rgba(194,65,12,.10) !important;}
.honeycomb-mini,.honeycomb-brand-icon{position:relative;display:inline-block;width:36px;height:31px;flex:0 0 36px;}
.honeycomb-mini span,.honeycomb-brand-icon span{position:absolute;width:12px;height:13px;background:linear-gradient(135deg,#f59e0b,#fbbf24);clip-path:polygon(25% 5%,75% 5%,100% 50%,75% 95%,25% 95%,0 50%);}
.honeycomb-mini::after,.honeycomb-brand-icon::after{content:"";position:absolute;left:11px;top:10px;width:12px;height:12px;border-radius:50%;background:repeating-linear-gradient(180deg,#4a2307 0 2px,#6b3412 2px 4px);box-shadow:0 0 0 2px #f7d06a;}
.auth-clean-right{background:radial-gradient(circle at 46% 45%,rgba(255,255,255,.96),transparent 33%),linear-gradient(135deg,#fffdf8 0%,#fff8ed 48%,#fff3df 100%) !important;}
.auth-clean-card{background:rgba(255,255,255,.86) !important;border:1px solid rgba(255,255,255,.96) !important;box-shadow:0 38px 84px rgba(124,45,18,.10),0 2px 8px rgba(124,45,18,.035) !important;}
.auth-form-brand-clean{border-bottom-color:#f3dfc5 !important;}
.auth-form-brand-icon{width:72px !important;height:72px !important;border-radius:20px !important;background:linear-gradient(135deg,#fff7ed,#ffedd5) !important;border:1px solid #fed7aa !important;box-shadow:0 18px 38px rgba(249,115,22,.13) !important;}
.auth-form-brand-title,.auth-form-head-clean h2{color:#3b1d0a !important;}
.auth-form-head-clean p,.auth-form-head p,.auth-security-note{color:#8a6a4a !important;}
.auth-submit-dark{background:linear-gradient(90deg,#f97316 0%,#fb923c 56%,#fbbf24 100%) !important;border:0 !important;box-shadow:0 18px 34px rgba(249,115,22,.26),0 8px 18px rgba(124,45,18,.10) !important;color:#fff !important;}
.auth-submit-dark:hover,.auth-submit-dark:focus{background:linear-gradient(90deg,#ea580c 0%,#f97316 54%,#f59e0b 100%) !important;}

/* Orange top header bar */
.payroll-style-topbar,.topbar-refined,.topbar-compact-refined{
  background:linear-gradient(180deg,#fffaf3 0%,#fff2df 100%) !important;
  border-bottom:1px solid rgba(249,115,22,.12) !important;
  box-shadow:0 14px 34px rgba(124,45,18,.06) !important;
}
.topbar-title-group strong{color:#4a2307 !important;}
.topbar-title-group small{color:#9a6a3a !important;}
.sidebar-toggle-btn-brand{
  border:1px solid #fed7aa !important;
  background:linear-gradient(135deg,#fff7ed 0%,#ffedd5 100%) !important;
  color:#ea580c !important;
  box-shadow:0 8px 18px rgba(249,115,22,.10) !important;
}
.topbar-badges-refined{gap:8px !important;}
.topbar-pill-soft{
  background:rgba(255,247,237,.95) !important;
  border:1px solid #fed7aa !important;
  color:#9a3412 !important;
  box-shadow:0 1px 2px rgba(124,45,18,.04) !important;
}
.topbar-pill-soft i{color:#f97316 !important;}
.payroll-company-switcher-compact{
  border:1px solid #fbd7a4 !important;
  background:linear-gradient(180deg,#fffaf4 0%,#fff2e0 100%) !important;
  box-shadow:0 12px 24px rgba(249,115,22,.08) !important;
}
.payroll-company-switcher-compact .workspace-icon{
  background:linear-gradient(135deg,#fff7ed 0%,#ffedd5 100%) !important;
  color:#f97316 !important;
}
.payroll-company-switcher-compact .active-company-pill{
  background:linear-gradient(90deg,#f97316 0%,#fb923c 100%) !important;
  color:#fff !important;
  box-shadow:0 10px 20px rgba(249,115,22,.18) !important;
}
.payroll-company-switcher-compact .form-select{
  border:1px solid #fed7aa !important;
  background:#fffdfa !important;
  color:#4a2307 !important;
  box-shadow:none !important;
}
.payroll-company-switcher-compact .form-select:focus{border-color:#fdba74 !important;box-shadow:0 0 0 .18rem rgba(249,115,22,.12) !important;}
.topbar-user-card,.topbar-user-card-compact{
  background:linear-gradient(180deg,#ffffff 0%,#fff7ed 100%) !important;
  border:1px solid rgba(251,146,60,.18) !important;
}
.topbar-user-avatar{
  background:linear-gradient(135deg,#7c2d12 0%,#f97316 100%) !important;
  box-shadow:0 10px 22px rgba(249,115,22,.18) !important;
}
.topbar-user-meta strong{color:#4a2307 !important;}
.topbar-user-meta span{color:#9a6a3a !important;}
.logout-btn-refined{
  border:1px solid #fed7aa !important;
  background:linear-gradient(180deg,#ffffff 0%,#fff7ed 100%) !important;
  color:#7c2d12 !important;
  box-shadow:0 8px 20px rgba(124,45,18,.05) !important;
}
.logout-btn-refined:hover,.logout-btn-refined:focus{border-color:#fdba74 !important;background:#fff4e6 !important;color:#7c2d12 !important;}
@media (max-width:991px){
  .auth-clean-title{font-size:3.65rem !important;}
  .auth-clean-badge{margin-bottom:44px !important;}
}
@media (max-width:575px){
  .auth-clean-title{font-size:2.65rem !important;}
  .auth-footer-powered{font-size:.92rem !important;}
}


.auth-brand-mark-inline{width:28px;height:28px;object-fit:contain;display:block;filter:drop-shadow(0 8px 20px rgba(249,115,22,.12));}
.auth-form-brand-logo{display:grid;place-items:center;padding:0 !important;overflow:hidden;}
.auth-brand-mark-large{width:42px;height:42px;object-fit:contain;display:block;}
.topbar-title-group{display:flex;align-items:center;gap:.8rem !important;}
.topbar-title-group > div{display:grid;gap:.05rem;}
.topbar-brand-logo{width:42px;height:42px;object-fit:contain;flex:0 0 42px;filter:drop-shadow(0 10px 22px rgba(249,115,22,.12));}
.sidebar-brand-logo-img{width:38px;height:38px;object-fit:contain;display:block;}
.sidebar-powered-box{display:flex;align-items:center;gap:.85rem;padding:1rem;border-radius:20px;border:1px solid rgba(251,191,36,.28);background:linear-gradient(145deg,#fffaf1 0%,#fff0cf 100%);box-shadow:0 12px 28px rgba(245,158,11,.10);position:relative;overflow:hidden;}
.sidebar-powered-box:after{content:"";position:absolute;right:-18px;bottom:-18px;width:88px;height:88px;background:radial-gradient(circle at center, rgba(255,255,255,.55) 0 1px, transparent 1.4px) 0 0/8px 8px;opacity:.7;border-radius:50%;}
.sidebar-powered-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#fff7ed,#ffedd5);color:#f97316;box-shadow:0 10px 24px rgba(249,115,22,.12);font-size:1.05rem;}
.sidebar-powered-label{font-size:.76rem;color:#9a6a3a;font-weight:700;}
.sidebar-powered-title{font-size:1.08rem;font-weight:900;color:#4a2307;line-height:1.1;}

.bee-dashboard-page{display:block;}
.bee-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(340px,.92fr);gap:1.2rem;align-items:start;}
.bee-dashboard-main,.bee-dashboard-side{display:grid;gap:1.2rem;}
.bee-dashboard-card{border:1px solid rgba(251,191,36,.24);background:linear-gradient(180deg,#fffdfa 0%,#ffffff 100%);border-radius:28px;box-shadow:0 18px 44px rgba(124,45,18,.06);padding:1.25rem 1.35rem;}
.bee-dashboard-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:1.25rem;align-items:stretch;overflow:hidden;position:relative;background:linear-gradient(135deg,#fffdf8 0%,#fff7e8 58%,#ffefca 100%);}
.bee-dashboard-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 0%,transparent 55%,rgba(251,191,36,.08) 100%);pointer-events:none;}
.bee-dashboard-hero-copy{position:relative;z-index:1;}
.bee-kicker{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .75rem;border-radius:999px;background:#fff7ed;color:#c2410c;border:1px solid #fed7aa;font-size:.74rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;}
.bee-dashboard-hero h1{font-size:2.15rem;line-height:1.05;font-weight:900;color:#2f1608;margin:1rem 0 .45rem;}
.bee-dashboard-hero h1 span{font-size:1.8rem;}
.bee-dashboard-hero p{margin:0;color:#7c5a3a;font-size:1rem;max-width:620px;}
.bee-hero-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.35rem;}
.bee-metric-tile{display:flex;gap:.85rem;align-items:flex-start;padding:1rem;border-radius:22px;background:#fff;border:1px solid rgba(251,191,36,.22);box-shadow:0 12px 26px rgba(124,45,18,.05);}
.bee-metric-tile.gold{background:linear-gradient(180deg,#fffaf0 0%,#fff4dd 100%);}
.bee-metric-tile.soft{background:linear-gradient(180deg,#fffdfa 0%,#fff7ed 100%);}
.bee-metric-tile.highlight{background:linear-gradient(180deg,#fff8ea 0%,#ffefcf 100%);}
.bee-metric-icon{width:48px;height:48px;flex:0 0 48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#f59e0b,#fbbf24);color:#fff;font-size:1.2rem;box-shadow:0 12px 24px rgba(249,115,22,.18);}
.bee-metric-tile small,.bee-mini-stat-card small{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:#9a6a3a;font-weight:800;margin-bottom:.2rem;}
.bee-metric-tile strong,.bee-mini-stat-card strong{display:block;font-size:1.3rem;line-height:1.15;color:#2f1608;font-weight:900;word-break:break-word;}
.bee-metric-tile em,.bee-mini-stat-card em{display:block;margin-top:.25rem;font-style:normal;color:#8b6b4c;font-size:.8rem;}
.bee-dashboard-hero-art{position:relative;min-height:320px;border-radius:24px;background:radial-gradient(circle at top left, rgba(255,255,255,.94), rgba(255,255,255,.22) 52%, transparent 72%),linear-gradient(135deg,#fff5d9 0%,#ffe09a 100%);border:1px solid rgba(251,191,36,.24);overflow:hidden;}
.bee-hero-honeycomb{position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='138' viewBox='0 0 160 138'%3E%3Cg fill='none' stroke='%23f6c65d' stroke-width='2' opacity='.55'%3E%3Cpath d='M40 3 78 25v44L40 91 2 69V25z'/%3E%3Cpath d='M118 3l38 22v44l-38 22-38-22V25z'/%3E%3Cpath d='M79 69l38 22v44l-38 22-38-22V91z'/%3E%3C/g%3E%3C/svg%3E");background-size:160px 138px;opacity:.86;}
.bee-hero-logo-mark{position:absolute;right:24px;top:24px;width:78px;height:78px;object-fit:contain;filter:drop-shadow(0 16px 30px rgba(217,119,6,.18));}
.bee-hero-badge{position:absolute;left:24px;bottom:24px;max-width:220px;padding:.75rem .9rem;border-radius:18px;background:rgba(255,255,255,.82);backdrop-filter:blur(6px);border:1px solid rgba(251,191,36,.24);font-size:.84rem;font-weight:700;color:#7c5a3a;box-shadow:0 10px 26px rgba(124,45,18,.07);}
.bee-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem;}
.bee-card-head h3{margin:0;color:#2f1608;font-size:1.18rem;font-weight:900;}
.bee-card-head p{margin:.25rem 0 0;color:#8b6b4c;font-size:.86rem;}
.bee-card-link{display:inline-flex;align-items:center;justify-content:center;padding:.65rem .95rem;border-radius:14px;text-decoration:none;background:#fff7ed;border:1px solid #fed7aa;color:#ea580c;font-size:.82rem;font-weight:800;white-space:nowrap;}
.bee-card-link:hover{background:#ffedd5;color:#c2410c;}
.bee-table-wrap{border-radius:22px;border:1px solid rgba(251,191,36,.18);overflow:hidden;background:#fff;}
 .bee-dashboard-table{margin:0;}
.bee-dashboard-table thead th{background:#fff9ef;border-bottom:1px solid #fde6b6;color:#7c5a3a;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:.95rem 1rem;white-space:nowrap;}
.bee-dashboard-table tbody td{padding:.95rem 1rem;vertical-align:middle;border-color:#f7ecd1;color:#41210a;}
.bee-dashboard-table tbody tr:hover{background:#fffcf4;}
.bee-status-pill{font-size:.76rem;font-weight:800;padding:.45rem .7rem;border-radius:999px;}
.bee-table-action{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:#fff7ed;border:1px solid #fed7aa;color:#c2410c;text-decoration:none;}
.bee-empty-inline{display:flex;align-items:center;gap:.65rem;padding:1rem;border-radius:16px;background:#fffaf0;color:#8b6b4c;font-weight:700;}
.bee-empty-inline i{font-size:1.15rem;color:#f59e0b;}
.bee-overview-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;}
.bee-chart-box{max-width:260px;margin:0 auto;}
.bee-overview-legend{display:grid;gap:.75rem;}
.bee-legend-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.78rem .9rem;border-radius:16px;background:#fffaf0;border:1px solid rgba(251,191,36,.18);}
.bee-legend-row span{font-weight:800;color:#7c5a3a;display:flex;align-items:center;gap:.55rem;}
.bee-legend-row strong{color:#2f1608;font-size:1rem;font-weight:900;white-space:nowrap;}
.bee-legend-row em{font-style:normal;color:#8b6b4c;font-weight:700;font-size:.85rem;}
.bee-legend-row span:before{content:"";width:10px;height:10px;border-radius:50%;display:inline-block;background:#f59e0b;}
.bee-legend-row.unpaid span:before{background:#fbbf24;}
.bee-legend-row.overdue span:before{background:#f97316;}
.bee-list-stack{display:grid;gap:.75rem;}
.bee-list-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.88rem .92rem;border-radius:18px;background:#fffaf4;border:1px solid rgba(251,191,36,.18);text-decoration:none;}
.bee-list-item:hover{background:#fff7ed;}
.bee-list-item-icon{width:38px;height:38px;border-radius:14px;display:grid;place-items:center;background:rgba(34,197,94,.12);color:#16a34a;font-size:1rem;}
.bee-list-item-icon.warning{background:rgba(249,115,22,.10);color:#f97316;}
.bee-list-item-body,.bee-list-item-meta{display:grid;}
.bee-list-item-body strong,.bee-list-item-meta strong{color:#2f1608;font-size:.95rem;font-weight:900;}
.bee-list-item-body small,.bee-list-item-meta small{color:#8b6b4c;font-size:.78rem;}
.bee-list-item-meta{text-align:right;white-space:nowrap;}
.bee-actions-card .bee-card-head{margin-bottom:.85rem;}
.bee-quick-actions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;}
.bee-quick-action-btn{display:grid;justify-items:center;gap:.55rem;text-align:center;padding:1rem .75rem;border-radius:18px;background:#fff;border:1px solid rgba(251,191,36,.24);box-shadow:0 10px 24px rgba(124,45,18,.04);text-decoration:none;color:#7c5a3a;font-size:.84rem;font-weight:800;}
.bee-quick-action-btn i{font-size:1.3rem;color:#f97316;}
.bee-quick-action-btn:hover{background:#fff7ed;color:#c2410c;}
.bee-dashboard-bottom-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;}
.bee-mini-stat-card{display:flex;align-items:flex-start;gap:.9rem;}
.bee-mini-stat-icon{width:46px;height:46px;flex:0 0 46px;border-radius:16px;display:grid;place-items:center;background:#fff7ed;color:#f97316;font-size:1.15rem;box-shadow:0 10px 24px rgba(249,115,22,.10);}
@media (max-width: 1400px){.bee-dashboard-grid{grid-template-columns:1fr;}.bee-dashboard-side{grid-template-columns:repeat(2,minmax(0,1fr));}.bee-dashboard-bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width: 991px){.bee-dashboard-hero{grid-template-columns:1fr;}.bee-hero-metric-grid,.bee-dashboard-side,.bee-dashboard-bottom-grid{grid-template-columns:1fr;}.bee-quick-actions-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width: 640px){.bee-dashboard-card{padding:1rem;}.bee-dashboard-hero h1{font-size:1.7rem;}.bee-hero-metric-grid,.bee-dashboard-bottom-grid,.bee-quick-actions-grid{grid-template-columns:1fr;}.bee-list-item{grid-template-columns:auto minmax(0,1fr);}.bee-list-item-meta{grid-column:2;text-align:left;}}


.auth-clean-left{
  background: url("../img/login-honeycomb-background.png") center center / cover no-repeat !important;
  color:#3b1d0a !important;
}
.auth-clean-left:before,
.auth-clean-left:after{
  display:none !important;
  content:none !important;
}

.print-body .a4-logo-box,
.portal-body .a4-logo-box,
.statement-print-shell .a4-logo-box{
  width:70px!important;
  height:70px!important;
  padding:6px!important;
  border-radius:16px!important;
}
.print-body .a4-brand-block,
.portal-body .a4-brand-block,
.statement-print-shell .a4-brand-block{
  gap:12px!important;
}
@media print{
  .a4-logo-box{
    width:68px!important;
    height:68px!important;
    padding:6px!important;
    border-radius:16px!important;
  }
  .a4-print-content{padding-top:48mm!important;}
}

.print-body{
  background:#eef2f7!important;
  color:#0f172a;
}
.print-body .a4-master-document{
  width:210mm;
  max-width:calc(100vw - 32px);
  min-height:297mm;
  padding:12mm!important;
  border:1px solid #d8e1eb!important;
  border-radius:20px!important;
  box-shadow:0 22px 50px rgba(15,23,42,.08)!important;
}
.print-body .a4-header-shell{
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:10mm!important;
  padding-bottom:7mm!important;
  margin-bottom:7mm!important;
  border-bottom:1px solid #d7e0ea!important;
}
.print-body .a4-logo-box,
.portal-body .a4-logo-box,
.statement-print-shell .a4-logo-box{
  width:84px!important;
  height:84px!important;
  padding:7px!important;
  border-radius:16px!important;
}
.print-body .a4-brand-block{
  gap:14px!important;
  align-items:flex-start!important;
}
.print-body .a4-company h2{
  font-size:19px!important;
  line-height:1.12!important;
  margin-bottom:4px!important;
}
.print-body .a4-company .company-address{
  font-size:11px!important;
  line-height:1.35!important;
}
.print-body .a4-doc-ref-tight{
  min-width:72mm!important;
  max-width:82mm!important;
  text-align:right!important;
}
.print-body .a4-doc-type{
  font-size:10px!important;
  letter-spacing:.22em!important;
  margin-bottom:7px!important;
}
.print-body .a4-doc-number{
  font-size:22px!important;
  line-height:1.05!important;
}
.print-body .a4-info-grid-wide{
  display:grid!important;
  grid-template-columns:1.25fr .85fr!important;
  gap:8mm!important;
  margin-bottom:6mm!important;
}
.print-body .a4-info-card{
  min-height:0!important;
  padding:11px 13px!important;
  border-radius:14px!important;
}
.print-body .a4-table-darkhead{
  margin-top:0!important;
  border-radius:14px!important;
  overflow:hidden!important;
}
.print-body .a4-table-darkhead thead th{
  padding:10px 9px!important;
  font-size:9.5px!important;
}
.print-body .a4-table-darkhead tbody td{
  padding:9px!important;
  font-size:10.5px!important;
}
.print-body .a4-bottom-grid{
  display:grid!important;
  grid-template-columns:1fr 82mm!important;
  gap:7mm!important;
  margin-top:6mm!important;
  align-items:start!important;
}
.print-body .a4-notes-card,
.print-body .a4-totals-card{
  min-height:0!important;
  padding:11px 13px!important;
  border-radius:14px!important;
}
.print-body .a4-totals-card .a4-total-line{
  display:flex!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:5px 0!important;
  font-size:10.5px!important;
}
.print-body .a4-totals-card .a4-total-line.strong{
  font-size:11.5px!important;
}
.print-body .a4-signatures{
  margin-top:9mm!important;
  gap:14px!important;
}
.print-body .a4-master-document .print-footer-note{
  margin-top:8mm!important;
  padding-top:8px!important;
  font-size:9px!important;
}

@media print{
  @page{size:A4;margin:8mm}
  html,body{
    width:auto!important;
    min-height:0!important;
    background:#fff!important;
  }
  .print-body{
    padding:0!important;
    margin:0!important;
    background:#fff!important;
  }
  .print-body .a4-master-document{
    width:auto!important;
    max-width:none!important;
    min-height:auto!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  .print-body .a4-fixed-header,
  .print-body .a4-fixed-footer{
    position:static!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    background:transparent!important;
  }
  .print-body .a4-header-shell{
    display:flex!important;
    justify-content:space-between!important;
    align-items:flex-start!important;
    gap:8mm!important;
    margin:0 0 5mm!important;
    padding:0 0 5mm!important;
    border-bottom:1px solid #d5dde7!important;
  }
  .print-body .a4-print-content{
    padding-top:0!important;
    padding-bottom:0!important;
  }
  .print-body .a4-logo-box{
    width:76px!important;
    height:76px!important;
    padding:6px!important;
    border-radius:15px!important;
  }
  .print-body .a4-company h2{
    font-size:18px!important;
    margin-bottom:3px!important;
  }
  .print-body .a4-company .company-address{
    font-size:10.5px!important;
    line-height:1.28!important;
  }
  .print-body .a4-doc-ref-tight{
    min-width:68mm!important;
    max-width:76mm!important;
    text-align:right!important;
  }
  .print-body .a4-doc-number{
    font-size:20px!important;
    white-space:nowrap!important;
  }
  .print-body .a4-status-pill-wrap{
    margin-top:6px!important;
  }
  .print-body .a4-info-grid-wide{
    display:grid!important;
    grid-template-columns:1.25fr .85fr!important;
    gap:7mm!important;
    margin-bottom:5mm!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }
  .print-body .a4-info-card{
    padding:10px 12px!important;
    min-height:0!important;
    background:#fff!important;
    -webkit-print-color-adjust:exact;
    print-color-adjust:exact;
  }
  .print-body .a4-table-darkhead{
    border-radius:12px!important;
    margin-top:0!important;
    break-inside:auto!important;
    page-break-inside:auto!important;
  }
  .print-body .a4-table-darkhead thead{display:table-header-group!important;}
  .print-body .a4-table-darkhead thead th{
    background:#0f172a!important;
    color:#fff!important;
    padding:8px 8px!important;
    font-size:9px!important;
    -webkit-print-color-adjust:exact;
    print-color-adjust:exact;
  }
  .print-body .a4-table-darkhead tbody td{
    padding:7px 8px!important;
    font-size:10px!important;
  }
  .print-body .a4-bottom-grid{
    display:grid!important;
    grid-template-columns:1fr 78mm!important;
    gap:6mm!important;
    margin-top:5mm!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }
  .print-body .a4-notes-card,
  .print-body .a4-totals-card{
    min-height:0!important;
    padding:10px 12px!important;
    background:#fff!important;
    -webkit-print-color-adjust:exact;
    print-color-adjust:exact;
  }
  .print-body .a4-totals-card .a4-total-line{
    padding:4px 0!important;
    font-size:9.8px!important;
  }
  .print-body .a4-signatures{
    display:grid!important;
    grid-template-columns:repeat(3,1fr)!important;
    gap:12px!important;
    margin-top:8mm!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }
  .print-body .a4-sign-block span{
    margin-bottom:7px!important;
  }
  .print-body .a4-master-document .print-footer-note{
    margin-top:6mm!important;
    padding-top:7px!important;
    border-top:1px solid #d9e2ec!important;
    font-size:8.5px!important;
  }
}


.print-body .a4-logo-box,
.portal-body .a4-logo-box,
.statement-print-shell .a4-logo-box,
.print-body .print-logo{
  width:120px!important;
  height:120px!important;
  padding:8px!important;
  border-radius:20px!important;
}
.print-body .a4-brand-block,
.portal-body .a4-brand-block,
.statement-print-shell .a4-brand-block{
  gap:16px!important;
  align-items:flex-start!important;
}
@media print{
  .print-body .a4-logo-box,
  .portal-body .a4-logo-box,
  .statement-print-shell .a4-logo-box,
  .print-body .print-logo{
    width:120px!important;
    height:120px!important;
    padding:8px!important;
    border-radius:20px!important;
  }
}

.a4-conditions-card{
    margin-top:8mm;
    border:1px solid #dbe4ec;
    background:#f8fafc;
    border-radius:12px;
    padding:10px 12px;
    color:#334155;
    font-size:11px;
    line-height:1.55;
    break-inside:avoid;
    page-break-inside:avoid;
}
@media print{
    .a4-conditions-card{margin-top:6mm;font-size:9.8px;padding:8px 10px;}
}

.doc-page-hero{align-items:flex-start;}
.doc-hero-actions{align-items:center;align-content:flex-start;row-gap:.55rem;max-width:100%;}
.doc-hero-actions form{margin:0;display:inline-flex;}
.doc-hero-actions .btn{display:inline-flex;align-items:center;justify-content:center;min-height:38px;line-height:1;}
.doc-panel-head>.btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;}
@media (min-width:992px){.doc-hero-actions{max-width:58%;}}

.invoice-customer-field .searchable-select-input{
  min-height:44px;
  border-radius:12px;
  font-weight:600;
}
.customer-invoice-preview{
  border:1px solid #e5edf7;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  border-radius:16px;
  padding:14px 16px;
  box-shadow:0 10px 28px rgba(15,23,42,.04);
}
.customer-invoice-preview-title{
  font-size:.73rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:800;
  color:#64748b;
  margin-bottom:10px;
}
.customer-invoice-preview-grid{
  display:grid;
  grid-template-columns:2fr 1fr 1.6fr 1fr 1fr;
  gap:10px;
}
.customer-invoice-preview-grid div{
  min-height:50px;
  border:1px solid #edf2f7;
  background:#fff;
  border-radius:12px;
  padding:8px 10px;
}
.customer-invoice-preview-grid span{
  display:block;
  font-size:.68rem;
  color:#64748b;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:4px;
}
.customer-invoice-preview-grid strong{
  display:block;
  color:#0f172a;
  font-size:.84rem;
  line-height:1.25;
  word-break:break-word;
}
.po-entry-table input[data-line-qty]{
  font-weight:700;
}
@media(max-width:991px){
  .customer-invoice-preview-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:575px){
  .customer-invoice-preview-grid{grid-template-columns:1fr;}
}
