/*
 * SEYLAC UI REFRESH 2026
 * Visual-only enhancement layer. It deliberately leaves routes, controllers,
 * request names and database behavior untouched.
 */
:root{
  --blue:#1738ff;
  --blue-strong:#0f2fe8;
  --blue-soft:#edf2ff;
  --blue-softer:#f6f8ff;
  --navy:#071433;
  --ink:#0b1635;
  --ink-2:#293451;
  --muted:#707b96;
  --muted-2:#98a1b5;
  --line:#e1e7f0;
  --line-strong:#d2dbea;
  --surface:#ffffff;
  --surface-2:#f8faff;
  --canvas:#f3f6fb;
  --green:#058b62;
  --green-soft:#e8f8f2;
  --red:#d13f4b;
  --red-soft:#fff0f2;
  --amber:#a96b00;
  --amber-soft:#fff7e7;
  --shadow-xs:0 1px 2px rgba(13,28,67,.04);
  --shadow-sm:0 8px 24px rgba(16,35,82,.055);
  --shadow-md:0 18px 52px rgba(15,34,85,.09);
  --shadow-lg:0 28px 90px rgba(6,20,58,.18);
  --radius-sm:12px;
  --radius-md:16px;
  --radius-lg:22px;
  --sidebar-width:282px;
}

html{background:var(--canvas);-webkit-text-size-adjust:100%}
body.seylac-app{
  color:var(--ink);
  background:
    radial-gradient(circle at 88% -10%,rgba(23,56,255,.07),transparent 30rem),
    var(--canvas);
  font-size:14px;
  line-height:1.45;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
body.dialog-open,body.sidebar-open{overflow:hidden}
.ui-icon{display:block;flex:0 0 auto}
button,input,select,textarea{font-family:inherit}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{
  outline:3px solid rgba(23,56,255,.22);
  outline-offset:2px;
}

/* Buttons and fields */
.btn{
  min-height:46px;
  padding:0 18px;
  border-radius:13px;
  font-size:13px;
  font-weight:760;
  letter-spacing:-.01em;
  box-shadow:none;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease;
}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:translateY(0)}
.btn-primary{background:linear-gradient(135deg,var(--blue),#294aff);box-shadow:0 12px 27px rgba(23,56,255,.2)}
.btn-primary:hover{background:linear-gradient(135deg,var(--blue-strong),#2444f0);box-shadow:0 15px 32px rgba(23,56,255,.24)}
.btn-secondary{background:rgba(255,255,255,.94);border-color:var(--line-strong);box-shadow:var(--shadow-xs)}
.btn-secondary:hover{border-color:#b8c3d6;background:#fff}
.btn-danger{background:var(--red-soft);border-color:#ffd5da;color:#b52f3a}
.btn-sm{min-height:40px;padding:0 14px;border-radius:11px}
.link-button,.link-danger{font-size:12px;min-height:34px;display:inline-flex;align-items:center}

input,select,textarea,.form-control{
  min-width:0;
  border-color:var(--line-strong);
  border-radius:13px;
  background:#fff;
  color:var(--ink);
  font-size:13px;
  box-shadow:inset 0 1px 0 rgba(7,20,51,.015);
}
input,select,.form-control{min-height:48px;padding-inline:14px}
select{
  appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%236f7891' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 13px center;
  padding-right:42px;
}
textarea{min-height:112px;padding:13px 14px;line-height:1.55}
input::placeholder,textarea::placeholder{color:#9aa3b5}
input:focus,select:focus,textarea:focus,.form-control:focus{
  border-color:#7890ff;
  box-shadow:0 0 0 4px rgba(23,56,255,.09);
}
label,.form-label{gap:8px;color:#34405e;font-size:12px;font-weight:720;letter-spacing:-.005em}
.form-grid{gap:17px}
.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.form-group{margin-bottom:17px}
.file-label{border-color:#bcc9df;background:var(--surface-2);padding:16px}
.checkbox,.checkbox-row{font-weight:650;color:var(--ink-2)}
.checkbox input,.checkbox-row input{accent-color:var(--blue)}
.field-help{line-height:1.55}

/* Main frame */
.app-shell{grid-template-columns:var(--sidebar-width) minmax(0,1fr)}
.sidebar{
  width:var(--sidebar-width);
  padding:22px 17px 18px;
  border-right:1px solid rgba(215,223,237,.9);
  box-shadow:8px 0 40px rgba(26,45,91,.025);
}
.sidebar-brand{display:flex;align-items:center;justify-content:space-between;padding:0 8px 21px}
.sidebar-close{display:none;width:38px;height:38px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink)}
.brand-sm{font-size:21px}
.brand-mark{width:42px;height:42px;border-radius:13px;box-shadow:0 11px 24px rgba(23,56,255,.2)}
.company-switcher{
  margin:17px 2px 20px;
  padding:14px 15px;
  border-color:#dbe2ee;
  border-radius:15px;
  background:linear-gradient(145deg,#f8faff,#f2f5fb);
}
.company-switcher small{font-size:9px;color:#7f899e}
.company-switcher strong{font-size:13px;margin-top:6px}
.company-options{min-width:220px;border-radius:14px;box-shadow:var(--shadow-md)}
.company-option{min-height:40px;font-weight:650;color:var(--ink)}
.nav-label{padding-inline:11px;margin-top:10px;color:#8d97ab}
.side-nav{gap:4px}
.side-link{
  min-height:45px;
  padding:0 12px;
  border-radius:12px;
  gap:11px;
  font-size:12px;
  color:#5d6881;
  transition:background .16s ease,color .16s ease,transform .16s ease;
}
.side-link:hover{background:#f3f6fb;transform:translateX(1px)}
.side-link.active{background:linear-gradient(90deg,#e8eeff,#f0f4ff);color:var(--blue)}
.side-icon{width:30px;height:30px;border-radius:9px;background:#f0f3f8;color:#64718d}
.side-link.active .side-icon{background:#dce5ff;color:var(--blue)}
.sidebar-user{padding:17px 5px 0}
.avatar{border-radius:12px;box-shadow:0 9px 20px rgba(23,56,255,.18)}
.logout-btn{width:36px;height:36px;display:grid;place-items:center;border-radius:10px}
.logout-btn:hover{background:#f1f4f9;color:var(--red)}
.sidebar-backdrop{display:none}

.app-main{grid-column:2;min-width:0}
.topbar{
  height:76px;
  padding:0 32px;
  border-bottom-color:rgba(218,225,237,.9);
  background:rgba(255,255,255,.88);
  -webkit-backdrop-filter:blur(18px);
  backdrop-filter:blur(18px);
  transition:box-shadow .2s ease;
}
.topbar.is-scrolled{box-shadow:0 10px 30px rgba(16,35,82,.06)}
.topbar-left{min-width:0}
.topbar-title{min-width:0}
.topbar-title strong{font-size:13px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.topbar-title span{font-size:10px}
.topbar-actions{gap:9px}
.top-action{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:0 11px;
  border-radius:11px;
  color:var(--blue);
  font-size:12px;
}
.top-action:hover{background:var(--blue-soft)}
.status-badge,.role-badge{min-height:34px;padding:0 12px}
.status-badge{gap:7px}
.status-badge i{width:7px;height:7px;border-radius:50%;background:#12a376;box-shadow:0 0 0 4px rgba(18,163,118,.1)}
.mobile-menu{width:43px;height:43px;border-radius:13px;color:var(--ink)}

.app-content{width:100%;max-width:1580px;padding:34px 36px 60px}
.app-content>*{min-width:0}
.page-head{align-items:center;margin-bottom:26px}
.page-head>div:first-child{min-width:0}
.page-head h1{font-size:clamp(31px,3vw,42px);line-height:1.05;letter-spacing:-.055em;margin-bottom:10px}
.page-head p{font-size:14px;max-width:720px}
.eyebrow{font-size:10px;letter-spacing:.14em;margin-bottom:11px}
.page-actions{justify-content:flex-end}
.alert{box-shadow:var(--shadow-xs);border-radius:15px}

/* Surface and data components */
.panel,.card,.card-pad{
  border-color:var(--line);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-sm);
  background:rgba(255,255,255,.96);
}
.panel{padding:24px}
.card-pad{padding:24px}
.panel-head{align-items:center;margin-bottom:20px}
.panel-head h2{font-size:19px;line-height:1.2}
.panel-head p{font-size:12px;line-height:1.5}
.panel-head>a{display:inline-flex;align-items:center;min-height:32px}
.two-col{gap:20px}
.split-grid,.dashboard-grid{gap:20px;margin-bottom:20px}
.dashboard-grid{grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr)}
.dashboard-grid.lower{grid-template-columns:repeat(2,minmax(0,1fr))}

.metric-grid{gap:16px;margin-bottom:20px}
.metric-card{
  min-height:168px;
  padding:22px;
  border-radius:20px;
  border-color:var(--line);
  box-shadow:var(--shadow-sm);
  position:relative;
  overflow:hidden;
}
.metric-card::after{
  content:"";
  position:absolute;
  width:120px;height:120px;border-radius:50%;
  right:-65px;top:-70px;
  background:rgba(23,56,255,.055);
}
.metric-top{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ink-2)}
.metric-top i{font-style:normal;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--blue-soft);color:var(--blue)}
.metric-card>strong{font-size:28px;margin:22px 0 6px;position:relative;z-index:1}
.metric-card>small{font-size:11px}

.metric-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:0 0 18px;
}
.metric-strip>div{
  min-height:105px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:18px 20px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:17px;
  box-shadow:var(--shadow-xs);
}
.metric-strip span,.metric-strip strong{display:block}
.metric-strip span{font-size:10px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.metric-strip strong{font-size:22px;letter-spacing:-.04em;margin-top:9px}

.accounting-summary{gap:14px}
.summary-tile{border-radius:18px;box-shadow:var(--shadow-xs);padding:19px}
.summary-tile strong{font-size:25px}
.account-strip{gap:15px}
.account-card{border-radius:19px;padding:20px;box-shadow:var(--shadow-xs)}
.account-card h3{font-size:15px}
.account-card>strong{font-size:25px}

.toolbar{margin-bottom:18px;gap:12px;align-items:center}
.search-form{
  width:min(100%,780px);
  display:grid;
  grid-template-columns:minmax(220px,1fr) minmax(165px,210px) auto;
  gap:10px;
}
.search-form input,.search-form select,.search-form button{width:100%}
.inline-filter{flex-wrap:wrap}
.date-filter{border-radius:17px!important}

.table-wrap{
  width:100%;
  border-radius:16px;
  overflow:auto;
  scrollbar-width:thin;
  scrollbar-color:#cbd4e5 transparent;
}
.panel>.table-wrap{margin:-4px 0}
table{min-width:650px}
th{
  padding:13px 14px;
  font-size:9px;
  color:#8791a6;
  background:#fbfcfe;
  border-bottom-color:#dfe5ef;
}
th:first-child{border-radius:11px 0 0 11px}
th:last-child{border-radius:0 11px 11px 0}
td{padding:15px 14px;font-size:12px;border-bottom-color:#edf1f6}
tbody tr{transition:background .14s ease}
tbody tr:not(.empty-row):hover{background:#fafbfe}
.cell-sub{font-size:10px!important;line-height:1.45}
.empty-cell{font-size:12px;padding:54px 20px!important}
.table-link{font-weight:760}
.row-menu>div{border-radius:13px;box-shadow:var(--shadow-md)}
.pagination{font-size:11px}

.status{min-height:28px;padding:0 10px;font-size:9px;letter-spacing:.01em}
.empty-state{border-radius:17px;line-height:1.6}

/* Dashboard */
.chart-panel{min-height:385px}
.bar-chart{height:250px;gap:20px;padding:26px 12px 0}
.bar{width:12px}
.chart-legend{margin-top:16px}
.quick-panel{padding-bottom:10px}
.quick-action{
  min-height:76px;
  padding:13px 4px;
  border-radius:13px;
  border-bottom:0;
  margin-bottom:4px;
  transition:background .16s ease,transform .16s ease;
}
.quick-action:hover{background:#f7f9fe;transform:translateX(2px)}
.quick-action>span{width:44px;height:44px;border-radius:13px}
.quick-action strong{font-size:13px}
.quick-action small{font-size:10px}
.activity-item{padding:14px 0}

/* Invoicing */
.invoice-builder{display:grid;gap:20px}
.invoice-builder>.panel,.invoice-builder>.split-grid{margin:0}
.invoice-lines{border:1px solid var(--line);border-radius:16px}
.invoice-lines table{min-width:900px}
.invoice-lines th{background:#f8faff}
.invoice-lines td{padding:11px 9px;vertical-align:top}
.invoice-lines td:first-child{min-width:280px}
.invoice-lines td:nth-child(2){width:110px}
.invoice-lines td:nth-child(3){width:150px}
.invoice-lines td:nth-child(4),.invoice-lines td:nth-child(5){width:125px}
.product-picker{margin-top:8px;min-height:42px;font-size:11px}
.remove-line{
  width:36px;height:36px;border:1px solid #ffd4d8;border-radius:10px;
  background:var(--red-soft);color:var(--red);font-size:19px;
}
.invoice-summary{
  align-self:start;
  position:sticky;
  top:96px;
  padding:25px;
  background:linear-gradient(160deg,#fff,#f8faff);
}
.invoice-summary>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:11px 0;
  color:var(--muted);
}
.invoice-summary>div strong{font-size:15px;color:var(--ink)}
.invoice-summary .summary-total{margin-top:5px;padding-top:17px;border-top:1px solid var(--line);color:var(--ink);font-weight:750}
.invoice-summary .summary-total strong{font-size:22px;letter-spacing:-.035em}
.invoice-summary .btn{margin-top:15px}
.invoice-page{border-radius:24px;box-shadow:var(--shadow-md)}

/* Forms, lists and cards */
.product-grid,.card-grid,.integration-grid{gap:16px}
.mini-card,.integration-card{border-radius:19px;padding:20px;box-shadow:var(--shadow-xs);background:#fff}
.mini-card h3{font-size:15px}
.mini-card p,.integration-card p{font-size:11px;line-height:1.65}
.info-banner,.warning-banner,.security-panel{
  border-radius:17px;
  padding:16px 18px;
  margin-bottom:18px;
  line-height:1.55;
}
.warning-banner{background:var(--amber-soft);border:1px solid #f5deb2;color:#73500e}
.banking-actions{display:flex;gap:10px;flex-wrap:wrap}
.compact-list>div{padding:14px 0}

.card-showcase{gap:20px}
.payment-card{height:242px;border-radius:24px;box-shadow:0 25px 55px rgba(15,39,123,.25)}
.card-details{min-width:0}
.stat-row>div{padding:15px;border-radius:14px}

.journal-editor,.budget-editor{border-radius:16px}
.journal-row,.budget-row{padding:10px}
.progress{height:8px}

.report-tabs{gap:9px;padding-bottom:3px}
.report-tabs a{min-height:38px;display:flex;align-items:center;padding:0 14px;border-radius:999px;font-size:10px}
.report-tabs a:hover{border-color:#b9c5da;background:#fff}
.report-section{border-radius:20px}
.aging-grid{gap:12px}
.aging-grid>div{background:#fff;border-radius:16px;padding:17px;box-shadow:var(--shadow-xs)}
.net-result{border-radius:15px;background:var(--blue-soft)}

/* AI */
.ai-layout{gap:20px;height:calc(100dvh - 145px)}
.ai-history,.ai-chat{border-radius:22px}
.ai-chat-head{padding:20px 22px}
.ai-orb{width:44px;height:44px;border-radius:14px}
.ai-messages{padding:24px}
.ai-message>div:last-child{padding:14px 16px;border-radius:16px}
.ai-message p{font-size:12px}
.ai-composer{margin:0 20px 12px;border-radius:17px;padding:11px;box-shadow:0 -10px 35px rgba(12,33,80,.055)}
.prompt-chips button{min-height:36px;padding:0 13px;font-weight:650}

/* Native dialog / modal */
dialog.modal{
  position:fixed;
  inset:0;
  box-sizing:border-box;
  width:100vw;
  max-width:none;
  height:100dvh;
  max-height:none;
  margin:0;
  padding:24px;
  border:0!important;
  outline:0!important;
  background:transparent;
  overflow:hidden;
}
dialog.modal[open]{display:flex;align-items:center;justify-content:center}
dialog.modal::backdrop{
  background:rgba(5,15,43,.58);
  -webkit-backdrop-filter:blur(7px);
  backdrop-filter:blur(7px);
}
dialog.modal,dialog.modal *{box-sizing:border-box}
.modal-card{
  display:block;
  width:min(calc(100vw - 48px),700px);
  max-width:700px;
  max-height:calc(100dvh - 48px);
  margin:0;
  padding:26px;
  border:1px solid rgba(222,228,239,.96);
  border-radius:24px;
  background:#fff;
  box-shadow:0 34px 100px rgba(4,14,42,.3);
  overflow:auto;
  overscroll-behavior:contain;
  isolation:isolate;
}
.modal-card.wide{width:min(calc(100vw - 48px),960px);max-width:960px}
.modal-card.modal-card-compact{width:min(calc(100vw - 48px),560px);max-width:560px}
.modal-card>*{min-width:0}
.modal-card .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.modal-card .form-stack{display:grid;gap:16px}
.modal-card label{min-width:0}
.modal-card input,.modal-card select,.modal-card textarea{display:block;width:100%;max-width:100%}
.modal-card textarea{min-height:112px;resize:vertical}
.modal-head{
  position:sticky;
  top:-26px;
  z-index:4;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin:-26px -26px 22px;
  padding:24px 26px 18px;
  border-bottom:1px solid var(--line);
  background:rgba(255,255,255,.97);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
}
.modal-head>div{min-width:0}
.modal-kicker{display:block;margin:0 0 5px;color:var(--blue);font-size:9px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.modal-head h2{margin:0;font-size:24px;line-height:1.16;letter-spacing:-.035em}
.modal-head p{max-width:560px;margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.55}
.modal-head>button{
  flex:0 0 auto;
  width:40px;
  height:40px;
  padding:0;
  border:0;
  border-radius:13px;
  background:#f0f3f8;
  color:#5e6880;
  display:grid;
  place-items:center;
  font-size:22px;
  line-height:1;
  cursor:pointer;
}
.modal-head>button:hover{background:#e6ebf3;color:var(--ink)}
.modal-actions{
  position:sticky;
  bottom:-26px;
  z-index:3;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  margin:22px -26px -26px;
  padding:16px 26px 24px;
  border-top:1px solid var(--line);
  background:linear-gradient(to bottom,rgba(255,255,255,.94),#fff 28%);
}
.modal-actions .btn{min-width:128px}
.modal-card[aria-busy="true"],.modal-card form[aria-busy="true"]{cursor:progress}
body.dialog-open{overflow:hidden}

/* Settings/team compatibility */
.card-title{margin-bottom:18px}
.card-title h2,.card-title h3{margin:0}
.member-cell{gap:11px}
.member-avatar{width:40px;height:40px;border-radius:12px}
.inline-form{gap:8px}
.settings-layout{gap:20px}
.settings-save{border-radius:20px}
.danger-zone{padding-top:10px}

@media (max-width:1280px){
  :root{--sidebar-width:264px}
  .app-content{padding-inline:28px}
  .dashboard-grid{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr)}
  .metric-card{padding:19px}
  .metric-card>strong{font-size:25px}
}

@media (max-width:1100px){
  .metric-grid,.account-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .metric-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
  .dashboard-grid,.dashboard-grid.lower,.split-grid,.accounting-grid{grid-template-columns:1fr}
  .invoice-summary{position:static}
  .card-showcase{grid-template-columns:minmax(300px,380px) minmax(0,1fr)}
  .form-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:960px){
  .app-shell{display:block}
  .app-main{grid-column:auto}
  .sidebar{
    width:min(86vw,310px);
    transform:translateX(-105%);
    transition:transform .24s cubic-bezier(.2,.8,.2,1);
    box-shadow:none;
    z-index:100;
  }
  body.sidebar-open .sidebar,.sidebar.open{transform:translateX(0);box-shadow:35px 0 95px rgba(5,16,48,.22)}
  .sidebar-close{display:grid;place-items:center}
  .sidebar-backdrop{
    display:block;
    position:fixed;
    inset:0;
    z-index:90;
    border:0;
    background:rgba(6,17,48,.42);
    opacity:0;
    visibility:hidden;
    transition:opacity .2s ease,visibility .2s ease;
  }
  body.sidebar-open .sidebar-backdrop{opacity:1;visibility:visible}
  .mobile-menu{display:grid;place-items:center;flex:0 0 auto}
  .topbar{padding-inline:18px}
  .topbar-actions .top-action{display:inline-flex}
  .app-content{padding:27px 20px 55px}
  .page-head{align-items:flex-start}
  .page-actions{width:auto}
  .ai-layout{height:auto;grid-template-columns:1fr}
  .ai-history{display:none}
  .ai-chat{height:calc(100dvh - 130px)}
}

@media (max-width:720px){
  body.seylac-app{font-size:13px}
  .topbar{height:72px;padding-inline:14px}
  .topbar-left,.topbar-actions{gap:8px}
  .topbar-title strong{max-width:150px;font-size:12px}
  .topbar-title span{display:none}
  .top-action{padding:0 7px;font-size:12px}
  .status-badge{padding:0 10px}
  .role-badge{display:none}
  .app-content{padding:23px 15px 48px}
  .page-head{flex-direction:column;gap:18px;margin-bottom:22px}
  .page-head h1{font-size:32px}
  .page-head p{font-size:13px}
  .page-head>.btn,.page-head>.page-actions{width:100%}
  .page-head>.btn{justify-content:center}
  .page-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .page-actions .btn{width:100%;padding-inline:10px}
  .panel,.card-pad{padding:19px;border-radius:18px}
  .panel-head{align-items:flex-start;gap:12px}
  .panel-head h2{font-size:18px}

  .metric-grid,.metric-grid.three{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
  .metric-card{min-height:142px;padding:16px;border-radius:17px}
  .metric-top{font-size:11px}
  .metric-top i{width:32px;height:32px}
  .metric-card>strong{font-size:21px;margin:18px 0 5px;white-space:nowrap}
  .metric-card>small{font-size:9px;line-height:1.4}
  .metric-strip{grid-template-columns:1fr;gap:10px}
  .metric-strip>div{min-height:84px;padding:15px 17px}
  .metric-strip strong{font-size:20px}

  .toolbar{align-items:stretch}
  .search-form{
    width:100%;
    grid-template-columns:minmax(0,1fr) auto;
  }
  .search-form input{grid-column:1/-1}
  .search-form select{grid-column:1}
  .search-form button{grid-column:2;min-width:96px}
  .inline-filter,.date-filter{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .inline-filter>*:first-child,.date-filter>*:first-child{grid-column:1/-1}

  /* Generic mobile table cards, data-label values are supplied by the UI JS. */
  .table-wrap:has(.responsive-data-table){overflow:visible;border-radius:0}
  .responsive-data-table{min-width:0!important;border-collapse:separate;border-spacing:0 11px}
  .responsive-data-table thead{display:none}
  .responsive-data-table tbody{display:grid;gap:11px}
  .responsive-data-table tbody tr{
    display:block;
    padding:8px 14px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:16px;
    box-shadow:var(--shadow-xs);
  }
  .responsive-data-table tbody tr:hover{background:#fff}
  .responsive-data-table td{
    display:grid;
    grid-template-columns:minmax(96px,.75fr) minmax(0,1.25fr);
    align-items:center;
    gap:12px;
    width:100%;
    padding:10px 0;
    border-bottom:1px solid #edf1f6;
    text-align:left!important;
    overflow-wrap:anywhere;
  }
  .responsive-data-table td:last-child{border-bottom:0}
  .responsive-data-table td::before{
    content:attr(data-label);
    color:#8993a7;
    font-size:9px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
  }
  .responsive-data-table td.num{justify-content:stretch}
  .responsive-data-table .empty-row{padding:0}
  .responsive-data-table .empty-row td{
    display:block;
    padding:34px 18px!important;
    text-align:center!important;
    border:0;
  }
  .responsive-data-table .empty-row td::before{display:none}
  .responsive-data-table .row-menu{justify-self:end}
  .pagination{margin-top:14px}

  .chart-panel{min-height:auto}
  .bar-chart{height:220px;gap:10px;padding-inline:0}
  .bar{width:9px}
  .quick-action{min-height:72px}
  .dashboard-grid.lower{gap:14px}

  .form-grid,.form-grid.three{grid-template-columns:1fr}
  .span-2{grid-column:auto}
  .invoice-builder{gap:14px}
  .invoice-lines{overflow:visible;border:0}
  .invoice-lines table,.invoice-lines tbody{display:block;min-width:0;width:100%}
  .invoice-lines thead{display:none}
  .invoice-lines tbody{display:grid;gap:12px}
  .invoice-lines .line-row{
    position:relative;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    padding:16px;
    border:1px solid var(--line);
    border-radius:17px;
    background:#fff;
    box-shadow:var(--shadow-xs);
  }
  .invoice-lines .line-row td{display:block;width:auto!important;min-width:0!important;padding:0;border:0}
  .invoice-lines .line-row td::before{display:block;margin-bottom:6px;color:#8993a7;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
  .invoice-lines .line-row td:nth-child(1){grid-column:1/-1;padding-right:42px}
  .invoice-lines .line-row td:nth-child(1)::before{content:"Description"}
  .invoice-lines .line-row td:nth-child(2)::before{content:"Quantity"}
  .invoice-lines .line-row td:nth-child(3)::before{content:"Price"}
  .invoice-lines .line-row td:nth-child(4)::before{content:"Discount %"}
  .invoice-lines .line-row td:nth-child(5)::before{content:"VAT %"}
  .invoice-lines .line-row td:last-child{position:absolute;right:14px;top:14px}
  .invoice-lines .line-row td:last-child::before{display:none}
  .invoice-lines input,.invoice-lines select{min-height:44px}
  .invoice-summary{padding:20px}

  .account-strip,.card-grid,.product-grid,.integration-grid{grid-template-columns:1fr}
  .banking-actions{display:grid;grid-template-columns:1fr}
  .banking-actions .btn{width:100%}
  .card-showcase{grid-template-columns:1fr}
  .payment-card{max-width:none;width:100%;height:224px;padding:21px}
  .accounting-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .summary-tile{padding:15px}
  .summary-tile strong{font-size:20px}
  .aging-grid,.aging-grid.three{grid-template-columns:1fr}
  .report-columns,.report-columns.three{grid-template-columns:1fr}
  .settings-layout{grid-template-columns:1fr}
  .settings-save{grid-column:auto;align-items:flex-start;flex-direction:column;gap:15px}

  dialog.modal{padding:0;align-items:flex-end!important}
  .modal-card,.modal-card.wide,.modal-card.modal-card-compact{
    width:100%;
    max-width:none;
    max-height:91dvh;
    border-radius:25px 25px 0 0;
    border-bottom:0;
    padding:22px 17px calc(22px + env(safe-area-inset-bottom));
  }
  .modal-head{
    top:-22px;
    margin:-22px -17px 19px;
    padding:19px 17px 15px;
    border-radius:25px 25px 0 0;
  }
  .modal-head::before{
    content:"";
    position:absolute;
    top:7px;left:50%;transform:translateX(-50%);
    width:42px;height:4px;border-radius:999px;background:#d9dfeb;
  }
  .modal-head h2{font-size:22px;margin-top:5px}
  .modal-head>button{margin-top:3px}
  .modal-card .form-grid{grid-template-columns:1fr}
  .modal-card .span-2{grid-column:auto}
  .modal-actions{bottom:calc(-22px - env(safe-area-inset-bottom));margin:20px -17px calc(-22px - env(safe-area-inset-bottom));padding:14px 17px calc(18px + env(safe-area-inset-bottom))}
  .modal-actions .btn{flex:1;min-width:0}
  .ai-chat{height:calc(100dvh - 112px)}
  .ai-messages{padding:17px}
  .ai-message>div:last-child{max-width:88%}
  .ai-composer{margin-inline:12px}
}

@media (max-width:480px){
  .topbar-title strong{max-width:132px}
  .top-action span{display:inline}
  .status-badge span{display:none}
  .status-badge{width:34px;padding:0;justify-content:center}
  .status-badge i{margin:0}
  .app-content{padding-inline:12px}
  .page-head h1{font-size:29px}
  .page-actions{grid-template-columns:1fr 1fr}
  .btn{min-height:45px;padding-inline:13px}
  .metric-grid,.metric-grid.three{grid-template-columns:1fr 1fr}
  .metric-card{min-height:135px;padding:14px}
  .metric-card>strong{font-size:19px}
  .metric-top i{display:none}
  .panel{padding:17px}
  .panel-head{flex-direction:column}
  .panel-head>a,.panel-head>form,.panel-head>.page-actions{width:100%}
  .panel-head form select{width:100%}
  .search-form{grid-template-columns:minmax(0,1fr) auto}
  .responsive-data-table td{grid-template-columns:86px minmax(0,1fr);gap:8px}
  .invoice-lines .line-row{grid-template-columns:1fr}
  .invoice-lines .line-row td:nth-child(1){grid-column:auto}
  .accounting-summary{grid-template-columns:1fr 1fr}
  .journal-total{align-items:flex-end;flex-direction:column;gap:7px}
  .payment-card{height:215px}
  .card-number{font-size:15px}
}

@media (max-width:370px){
  .topbar-title{display:none}
  .metric-grid,.metric-grid.three,.accounting-summary{grid-template-columns:1fr}
  .page-actions{grid-template-columns:1fr}
}

@media print{
  .sidebar-backdrop{display:none!important}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}

/* SEYLAC INVOICE WIDTH FIX V2 */
body.route-invoices-create .app-main{
    min-width:0;
    overflow-x:hidden;
}

body.route-invoices-create .app-content{
    width:100%;
    max-width:1320px;
    margin-inline:auto;
    overflow-x:clip;
}

body.route-invoices-create .invoice-builder,
body.route-invoices-create .invoice-builder > *,
body.route-invoices-create .invoice-builder .panel,
body.route-invoices-create .invoice-builder .split-grid{
    width:100%;
    max-width:100%;
    min-width:0;
}

body.route-invoices-create .form-grid.three{
    grid-template-columns:repeat(3,minmax(0,1fr));
}

body.route-invoices-create .invoice-lines{
    width:100%;
    max-width:100%;
    overflow-x:auto;
    overflow-y:hidden;
}

body.route-invoices-create .invoice-lines table{
    width:100%;
    min-width:900px;
    table-layout:fixed;
}

body.route-invoices-create .invoice-lines th:first-child,
body.route-invoices-create .invoice-lines td:first-child{
    width:36%;
}

body.route-invoices-create .invoice-lines th:nth-child(2),
body.route-invoices-create .invoice-lines td:nth-child(2){
    width:11%;
}

body.route-invoices-create .invoice-lines th:nth-child(3),
body.route-invoices-create .invoice-lines td:nth-child(3){
    width:16%;
}

body.route-invoices-create .invoice-lines th:nth-child(4),
body.route-invoices-create .invoice-lines td:nth-child(4),
body.route-invoices-create .invoice-lines th:nth-child(5),
body.route-invoices-create .invoice-lines td:nth-child(5){
    width:14%;
}

body.route-invoices-create .invoice-lines th:last-child,
body.route-invoices-create .invoice-lines td:last-child{
    width:64px;
}

body.route-invoices-create .invoice-lines input,
body.route-invoices-create .invoice-lines select,
body.route-invoices-create textarea{
    width:100%;
    max-width:100%;
    min-width:0;
}

body.route-invoices-create .split-grid{
    grid-template-columns:minmax(0,1fr) minmax(300px,340px);
    align-items:start;
}

body.route-invoices-create .invoice-summary{
    width:100%;
    min-width:0;
    position:sticky;
    top:96px;
}

body.route-invoices-create .invoice-summary > div{
    width:100%;
}

body.route-invoices-create .invoice-summary .btn{
    width:100%;
}

@media (max-width:1250px){
    body.route-invoices-create .app-content{
        max-width:100%;
    }

    body.route-invoices-create .form-grid.three{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    body.route-invoices-create .split-grid{
        grid-template-columns:1fr;
    }

    body.route-invoices-create .invoice-summary{
        position:static;
    }
}

@media (max-width:720px){
    body.route-invoices-create .form-grid.three{
        grid-template-columns:1fr;
    }

    body.route-invoices-create .invoice-lines table{
        min-width:0;
        table-layout:auto;
    }
}
/* END SEYLAC INVOICE WIDTH FIX V2 */

/* SEYLAC AI WORKSPACE 2026 — shared dashboard, assistant and confirmation UI */
.ai-layout-2026{
    grid-template-columns:minmax(225px,270px) minmax(0,1fr);
    min-height:620px;
}
.ai-layout-2026 .ai-history{
    display:flex;
    flex-direction:column;
    padding:18px;
}
.ai-layout-2026 .conversation-list{
    flex:1;
    max-height:none;
    margin-top:4px;
}
.ai-layout-2026 .conversation-list a{
    border:1px solid transparent;
    padding:12px;
}
.ai-layout-2026 .conversation-list a.active{
    border-color:#dbe5ff;
    background:linear-gradient(135deg,#f0f4ff,#f7f9ff);
}
.ai-privacy-2026{
    border:1px solid #e4e9f4;
    background:linear-gradient(145deg,#f8faff,#f1f5fb);
}
.ai-workspace{
    min-width:0;
    background:linear-gradient(180deg,#fff 0%,#fbfcff 100%);
}
.ai-safety-strip{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    padding:11px 20px;
    border-bottom:1px solid var(--line);
    background:#f7f9fd;
}
.ai-safety-strip span{
    display:flex;
    align-items:center;
    min-height:35px;
    padding:8px 10px;
    border:1px solid #e4e9f3;
    border-radius:11px;
    background:#fff;
    color:#647089;
    font-size:9px;
    line-height:1.4;
}
.ai-safety-strip b{color:#172a4a;margin-right:3px}
.ai-ui-messages{
    scroll-behavior:smooth;
    scrollbar-width:thin;
    scrollbar-color:#cdd6e7 transparent;
}
.ai-workspace .ai-ui-messages{
    flex:1;
    min-height:260px;
    overflow:auto;
    padding:24px;
}
.ai-ui-message{
    display:flex;
    align-items:flex-end;
    gap:10px;
    margin:0 0 16px;
}
.ai-ui-message.user{justify-content:flex-end}
.ai-ui-avatar{
    flex:0 0 34px;
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border-radius:12px;
    background:linear-gradient(145deg,#102e7b,#315dff);
    color:#fff;
    font-size:13px;
    box-shadow:0 9px 22px rgba(36,77,228,.18);
}
.ai-ui-bubble{
    max-width:min(78%,760px);
    padding:13px 15px;
    border:1px solid #e2e7f0;
    border-radius:17px 17px 17px 6px;
    background:#fff;
    color:#33415c;
    box-shadow:0 7px 20px rgba(15,38,85,.04);
}
.ai-ui-message.user .ai-ui-bubble{
    border-color:#244be4;
    border-radius:17px 17px 6px 17px;
    background:linear-gradient(135deg,#1738ff,#315dff);
    color:#fff;
}
.ai-answer{
    font-size:11px;
    line-height:1.72;
    overflow-wrap:anywhere;
}
.ai-answer a.ai-citation{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:20px;
    height:20px;
    margin:0 2px;
    padding:0 6px;
    border-radius:999px;
    background:#eaf0ff;
    color:#1738d5;
    font-size:8px;
    font-weight:850;
    vertical-align:2px;
}
.ai-source-details{
    margin-top:12px;
    padding-top:10px;
    border-top:1px solid #edf0f5;
}
.ai-source-details summary{
    cursor:pointer;
    color:#536987;
    font-size:9px;
    font-weight:820;
    list-style:none;
}
.ai-source-details summary::-webkit-details-marker{display:none}
.ai-source-details summary::before{content:'＋';margin-right:6px;color:#244be4}
.ai-source-details[open] summary::before{content:'−'}
.ai-source-list{
    display:grid;
    gap:7px;
    margin-top:9px;
}
.ai-source-list a{
    padding:8px 10px;
    border:1px solid #e6ebf4;
    border-radius:9px;
    background:#f8faff;
    color:#315a91;
    font-size:8px;
    line-height:1.45;
    overflow-wrap:anywhere;
}
.ai-source-list a:hover{border-color:#cbd8fa;background:#f1f5ff}
.ai-history-note{
    display:block;
    margin-top:10px;
    padding:8px 9px;
    border-radius:9px;
    background:#fff7df;
    color:#7e5a00;
    font-size:8px;
    line-height:1.45;
}
.ai-preview-card{
    margin-top:13px;
    overflow:hidden;
    border:1px solid #cbdafe;
    border-radius:15px;
    background:#f8fbff;
}
.ai-preview-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:11px 12px;
    border-bottom:1px solid #dbe6fb;
    background:#edf4ff;
}
.ai-preview-head small,.ai-preview-head strong{display:block}
.ai-preview-head small{
    color:#74829a;
    font-size:7px;
    font-weight:760;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.ai-preview-head strong{margin-top:2px;color:#122c5c;font-size:10px}
.ai-preview-head>span{
    flex:0 0 auto;
    padding:5px 7px;
    border-radius:999px;
    background:#fff0c8;
    color:#7e5900;
    font-size:7px;
    font-weight:850;
}
.ai-preview-fields{display:grid;padding:5px 12px}
.ai-preview-fields>div{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
    padding:8px 0;
    border-bottom:1px solid #e5edf9;
}
.ai-preview-fields>div:last-child{border-bottom:0}
.ai-preview-fields span{color:#758198;font-size:8px}
.ai-preview-fields strong{color:#152744;font-size:8px;text-align:right;overflow-wrap:anywhere}
.ai-preview-foot{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:11px 12px;
    border-top:1px solid #dbe6fb;
}
.ai-preview-foot small{color:#69768b;font-size:8px;line-height:1.4}
.ai-preview-foot .btn{flex:0 0 auto;min-height:34px;padding:0 12px;font-size:8px}
.ai-preview-card.is-confirmed{border-color:#b9e5d0;background:#f4fcf8}
.ai-preview-card.is-confirmed .ai-preview-head{border-color:#caecdc;background:#eaf8f1}
.ai-preview-card.is-confirmed .ai-preview-head>span{background:#d7f3e5;color:#14613f}
.ai-created-link{
    display:inline-flex;
    margin-top:10px;
    color:#1738e6;
    font-size:9px;
    font-weight:850;
}
.ai-error-text{color:#b42318!important}
.ai-thinking{display:flex;gap:4px;padding:4px 1px}
.ai-thinking i{
    width:5px;
    height:5px;
    border-radius:50%;
    background:#6e82a4;
    animation:seylacAiThinking 1s infinite ease-in-out;
}
.ai-thinking i:nth-child(2){animation-delay:.14s}
.ai-thinking i:nth-child(3){animation-delay:.28s}
@keyframes seylacAiThinking{
    0%,70%,100%{transform:translateY(0);opacity:.38}
    35%{transform:translateY(-4px);opacity:1}
}
.ai-prompt-row{
    display:flex;
    gap:8px;
    padding:0 20px 12px;
    overflow:auto;
    scrollbar-width:none;
}
.ai-prompt-row::-webkit-scrollbar{display:none}
.ai-prompt-row button{
    flex:0 0 auto;
    min-height:32px;
    padding:0 11px;
    border:1px solid #dfe5f0;
    border-radius:999px;
    background:#fff;
    color:#405675;
    font-size:8px;
    font-weight:780;
    cursor:pointer;
    transition:.18s ease;
}
.ai-prompt-row button:hover{transform:translateY(-1px);border-color:#bdcafa;color:#1738d5;background:#f5f7ff}
.ai-composer-2026{
    border-color:#dce3ef;
    box-shadow:0 -12px 34px rgba(13,38,90,.045);
}
.ai-composer-2026 textarea{
    resize:none;
    color:#1b2a44;
    font-size:11px;
    line-height:1.55;
}
.ai-composer-2026 textarea::placeholder{color:#8a96a9}
.ai-composer-2026 .ai-composer-foot>span{color:#8993a5;font-size:8px}
.ai-composer-2026 button:disabled{opacity:.55;cursor:wait}

.dashboard-ai-command{
    margin:18px 0;
    overflow:hidden;
    border-color:#d9e3fb;
    background:
        radial-gradient(circle at 100% 0,rgba(51,93,255,.12),transparent 35%),
        linear-gradient(145deg,#fbfdff,#f5f8ff);
}
.dashboard-ai-intro{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:14px;
    padding:20px 22px;
    border-bottom:1px solid #e0e7f5;
}
.dashboard-ai-mark{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border-radius:16px;
    background:linear-gradient(145deg,#102d79,#315dff);
    color:#fff;
    font-size:18px;
    box-shadow:0 12px 30px rgba(36,77,228,.2);
}
.dashboard-ai-intro h2{margin:3px 0 4px;font-size:18px;letter-spacing:-.025em}
.dashboard-ai-intro p{max-width:720px;margin:0;color:#6b7890;font-size:9px;line-height:1.55}
.dashboard-ai-open{
    display:inline-flex;
    align-items:center;
    gap:6px;
    color:#2448d8;
    font-size:9px;
    font-weight:820;
}
.dashboard-ai-body{padding:16px 20px 18px}
.dashboard-ai-messages{
    max-height:330px;
    min-height:80px;
    overflow:auto;
    padding:2px 2px 0;
}
.dashboard-ai-messages .ai-ui-bubble{max-width:min(82%,820px)}
.dashboard-ai-prompts{padding:0 0 10px}
.dashboard-ai-form{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:end;
    gap:9px;
    margin:0;
    padding:9px;
    border:1px solid #dce3f1;
    border-radius:15px;
    background:#fff;
    box-shadow:0 10px 28px rgba(12,37,82,.045);
}
.dashboard-ai-form textarea{
    min-height:40px;
    max-height:130px;
    padding:10px 11px;
    border:0;
    outline:0;
    resize:none;
    color:#1b2a44;
    background:transparent;
    font:inherit;
    font-size:10px;
    line-height:1.5;
}
.dashboard-ai-form .btn{min-height:40px;gap:7px}

@media(max-width:1000px){
    .ai-layout-2026{grid-template-columns:1fr;min-height:0}
    .ai-layout-2026 .ai-history{display:none}
    .ai-layout-2026 .ai-workspace{height:calc(100dvh - 132px);min-height:560px}
}
@media(max-width:760px){
    .ai-safety-strip{grid-template-columns:1fr;padding:9px 12px}
    .ai-safety-strip span:nth-child(n+2){display:none}
    .ai-workspace .ai-ui-messages{padding:16px 12px}
    .ai-ui-bubble{max-width:88%;padding:11px 12px}
    .ai-prompt-row{padding:0 12px 10px}
    .ai-composer-2026{margin:0 12px 10px}
    .ai-preview-foot{align-items:stretch;flex-direction:column}
    .ai-preview-foot .btn{width:100%}
    .dashboard-ai-intro{grid-template-columns:auto minmax(0,1fr);padding:16px}
    .dashboard-ai-open{grid-column:2}
    .dashboard-ai-body{padding:14px}
    .dashboard-ai-form{grid-template-columns:1fr}
    .dashboard-ai-form .btn{width:100%}
}
@media(max-width:480px){
    .ai-ui-avatar{width:30px;height:30px;flex-basis:30px;border-radius:10px}
    .ai-ui-bubble{max-width:91%}
    .dashboard-ai-mark{width:42px;height:42px;border-radius:14px}
    .dashboard-ai-intro h2{font-size:16px}
}
/* END SEYLAC AI WORKSPACE 2026 */

/* SEYLAC LAUNCHPAD & BUSINESS ONBOARDING 2026 START */
.setup-step-badge{background:rgba(255,255,255,.13);color:#fff;border-color:rgba(255,255,255,.18)}
.setup-form-head{margin-bottom:28px}.setup-form-head h2{margin:6px 0 8px}.setup-form-head p{margin:0;color:var(--muted);line-height:1.65}
.setup-extra{margin:2px 0 19px;border:1px solid var(--line);border-radius:15px;background:#f8faff;overflow:hidden}
.setup-extra summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;cursor:pointer;font-weight:800;font-size:12px;color:var(--ink);list-style:none}
.setup-extra summary::-webkit-details-marker{display:none}.setup-extra summary span{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.setup-extra[open] summary{border-bottom:1px solid var(--line);background:#fff}.setup-extra-grid{padding:16px}.setup-extra-grid .form-group{margin-bottom:0}
.setup-submit{margin-top:4px;min-height:50px}.setup-privacy-note{text-align:center;margin:12px 0 0;color:var(--muted);font-size:10px;line-height:1.6}

.dashboard-onboarding{margin-bottom:18px;padding:22px;background:linear-gradient(135deg,#f7f9ff 0%,#fff 58%,#eef2ff 100%);border-color:#dce3ff;overflow:hidden;position:relative}
.dashboard-onboarding:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;right:-130px;top:-145px;border:42px solid rgba(23,56,255,.05);pointer-events:none}
.dashboard-onboarding.is-ready{background:linear-gradient(135deg,#f3fff9 0%,#fff 58%,#effff8 100%);border-color:#ccefe0}
.dashboard-onboarding-main{display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:28px;position:relative;z-index:1}
.dashboard-onboarding-copy h2{margin:7px 0 7px;font-size:22px;letter-spacing:-.035em}.dashboard-onboarding-copy p{margin:0;max-width:760px;color:var(--muted);font-size:11px;line-height:1.65}
.dashboard-onboarding-score{display:grid;gap:9px}.dashboard-onboarding-score>strong{font-size:33px;line-height:1;letter-spacing:-.055em;text-align:right;color:var(--blue)}
.onboarding-progress{height:8px;background:#e3e8f6;border-radius:999px;overflow:hidden}.onboarding-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1738ff,#6b82ff);transition:width .35s ease}
.dashboard-onboarding.is-ready .onboarding-progress i,.onboarding-hero.is-ready .onboarding-progress i{background:linear-gradient(90deg,#0f9f6e,#52d8a7)}
.dashboard-onboarding-actions{display:flex;align-items:center;gap:9px;margin-top:18px;position:relative;z-index:1}.dashboard-onboarding-actions form{margin-left:auto}
.dashboard-onboarding-hide{border:0;background:transparent;color:var(--muted);font-size:11px;font-weight:750;padding:8px;cursor:pointer}.dashboard-onboarding-hide:hover{color:var(--ink)}

.onboarding-page-head .page-actions form{display:flex}.onboarding-hero{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:35px;align-items:center;margin-bottom:18px;padding:28px;background:linear-gradient(135deg,#07183f,#1738ff);color:#fff;border:0;box-shadow:0 20px 50px rgba(15,40,130,.18)}
.onboarding-hero.is-ready{background:linear-gradient(135deg,#063f32,#0d9a70)}
.onboarding-kicker{display:inline-flex;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.13);font-size:9px;text-transform:uppercase;letter-spacing:.11em;font-weight:850;color:rgba(255,255,255,.92)}
.onboarding-hero-copy h2{font-size:30px;letter-spacing:-.045em;margin:16px 0 8px}.onboarding-hero-copy p{margin:0;max-width:760px;color:rgba(255,255,255,.72);font-size:12px;line-height:1.75}
.onboarding-score{padding:21px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(255,255,255,.1);backdrop-filter:blur(10px)}
.onboarding-score strong,.onboarding-score span{display:block}.onboarding-score strong{font-size:42px;line-height:1;letter-spacing:-.06em}.onboarding-score span{margin:8px 0 14px;color:rgba(255,255,255,.68);font-size:10px}.onboarding-score .onboarding-progress{background:rgba(255,255,255,.18)}.onboarding-score .onboarding-progress i{background:#fff}

.onboarding-task-grid{display:grid;gap:12px;margin-bottom:18px}.onboarding-task{display:grid;grid-template-columns:84px minmax(0,1fr) auto;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:17px;padding:17px 18px;transition:.18s}
.onboarding-task:hover{border-color:#cbd5f7;box-shadow:0 12px 30px rgba(12,32,82,.06);transform:translateY(-1px)}.onboarding-task.is-complete{background:linear-gradient(90deg,#fbfffd,#fff);border-color:#d7eee4}.onboarding-task.is-optional{border-style:dashed}
.onboarding-task-state{display:flex;align-items:center;gap:9px}.onboarding-task-number{width:31px;height:31px;border-radius:10px;background:#eef2ff;color:var(--blue);display:grid;place-items:center;font-size:10px;font-weight:900}.onboarding-task.is-complete .onboarding-task-number{background:#e5f8ef;color:#0c8b60}
.onboarding-task-icon{width:41px;height:41px;border-radius:12px;background:#f5f7fb;color:#42506f;display:grid;place-items:center}.onboarding-task.is-complete .onboarding-task-icon{color:#0c8b60;background:#f0fbf6}
.onboarding-task-title{display:flex;align-items:center;gap:10px}.onboarding-task-title h2{margin:0;font-size:15px;letter-spacing:-.02em}.onboarding-task-title span{padding:4px 7px;border-radius:999px;background:#f1f4f9;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.09em;font-weight:850}
.onboarding-task.is-complete .onboarding-task-title span{background:#e7f8ef;color:#0b855c}.onboarding-task-copy p{margin:6px 0 0;color:var(--muted);font-size:10px;line-height:1.65;max-width:760px}
.onboarding-task-action{min-width:155px;display:flex;justify-content:flex-end}.onboarding-permission-note{max-width:150px;text-align:right;color:var(--muted);font-size:9px;line-height:1.5}

.onboarding-foundation{display:grid;grid-template-columns:minmax(0,.85fr) minmax(420px,1.15fr);gap:28px;align-items:center}.onboarding-foundation h2{margin:7px 0 8px;font-size:22px}.onboarding-foundation p{margin:0;color:var(--muted);font-size:11px;line-height:1.7}
.onboarding-flow{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.onboarding-flow span{padding:9px 11px;border-radius:10px;background:#f2f5ff;border:1px solid #e0e6ff;color:#23335d;font-size:9px;font-weight:800}.onboarding-flow i{font-style:normal;color:#a4aec5}

.settings-wide{grid-column:span 2}.settings-logo-preview{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px;border:1px solid var(--line);border-radius:13px;background:#f8faff}.settings-logo-preview img{max-width:180px;max-height:74px;object-fit:contain}
.side-link[href*="getting-started"] .side-icon{background:#eef2ff;color:var(--blue)}

@media(max-width:1000px){
  .dashboard-onboarding-main{grid-template-columns:minmax(0,1fr) 140px}.onboarding-hero{grid-template-columns:minmax(0,1fr) 180px}.onboarding-foundation{grid-template-columns:1fr}.onboarding-flow{justify-content:flex-start}.settings-wide{grid-column:auto}
}
@media(max-width:760px){
  .dashboard-onboarding-main,.onboarding-hero{grid-template-columns:1fr}.dashboard-onboarding-score>strong{text-align:left}.onboarding-task{grid-template-columns:70px minmax(0,1fr)}.onboarding-task-action{grid-column:2;justify-content:flex-start;min-width:0}.onboarding-task-action .btn{width:100%;justify-content:center}.onboarding-permission-note{text-align:left;max-width:none}.onboarding-score{max-width:none}.onboarding-page-head .page-actions{display:grid;grid-template-columns:1fr}.onboarding-page-head .page-actions form,.onboarding-page-head .page-actions .btn{width:100%}
}
@media(max-width:560px){
  .dashboard-onboarding{padding:17px}.dashboard-onboarding-actions{display:grid;grid-template-columns:1fr}.dashboard-onboarding-actions form{margin-left:0}.dashboard-onboarding-actions .btn{justify-content:center}.dashboard-onboarding-hide{width:100%}.onboarding-hero{padding:22px}.onboarding-hero-copy h2{font-size:25px}.onboarding-task{grid-template-columns:1fr;padding:16px}.onboarding-task-state{justify-content:space-between}.onboarding-task-action{grid-column:auto}.onboarding-foundation{padding:18px}.onboarding-flow{display:grid;grid-template-columns:1fr}.onboarding-flow i{display:none}.onboarding-flow span{text-align:center}.setup-extra-grid{padding:13px}
}
/* SEYLAC LAUNCHPAD & BUSINESS ONBOARDING 2026 END */

/* SEYLAC BANKING FOUNDATION V1 */
.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none}
.field-note{font-size:9px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.danger-link{color:var(--red)!important}

.banking-page-head{margin-bottom:22px}
.banking-metric-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-bottom:20px;
}
.banking-metric-card{
  min-height:130px;
  padding:20px;
  border:1px solid var(--line);
  border-radius:19px;
  background:rgba(255,255,255,.96);
  box-shadow:var(--shadow-xs);
}
.banking-metric-card span,.banking-metric-card strong,.banking-metric-card small{display:block}
.banking-metric-card span{font-size:9px;font-weight:820;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.banking-metric-card strong{margin:15px 0 7px;font-size:30px;line-height:1;letter-spacing:-.055em}
.banking-metric-card small{font-size:10px;line-height:1.5;color:var(--muted)}
.banking-metric-card.needs-attention{border-color:#f0d49b;background:linear-gradient(145deg,#fff,#fff9ec)}
.banking-metric-card.needs-attention strong{color:var(--amber)}

.banking-balance-panel{
  display:grid;
  grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);
  gap:24px;
  align-items:center;
  margin-bottom:22px;
  padding:24px;
  border:1px solid rgba(30,60,180,.16);
  border-radius:22px;
  background:linear-gradient(135deg,#081b56 0%,#1433cf 58%,#2748ff 100%);
  color:#fff;
  box-shadow:0 20px 50px rgba(13,39,130,.16);
}
.banking-section-copy h2{margin:0 0 9px;font-size:25px;letter-spacing:-.04em}
.banking-section-copy p{max-width:430px;margin:0;color:rgba(255,255,255,.7);font-size:12px;line-height:1.65}
.banking-balance-panel .eyebrow{color:#aebcff}
.banking-currency-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:12px}
.banking-currency-card{
  padding:18px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:17px;
  background:rgba(255,255,255,.1);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
}
.banking-currency-card>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}
.banking-currency-card>div span{font-size:11px;font-weight:850;letter-spacing:.1em}
.banking-currency-card>div small{font-size:9px;color:rgba(255,255,255,.66)}
.banking-currency-card>strong{display:block;margin:14px 0 15px;font-size:27px;letter-spacing:-.05em}
.banking-currency-card dl{display:grid;gap:7px;margin:0}
.banking-currency-card dl div{display:flex;justify-content:space-between;gap:12px;font-size:9px;color:rgba(255,255,255,.68)}
.banking-currency-card dt,.banking-currency-card dd{margin:0}
.banking-currency-card dd{font-weight:750;color:#fff}

.banking-account-section{
  margin-bottom:18px;
  padding:24px;
  border:1px solid var(--line);
  border-radius:22px;
  background:rgba(255,255,255,.78);
  box-shadow:var(--shadow-sm);
}
.banking-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:20px}
.banking-section-head h2{margin:0 0 7px;font-size:23px;letter-spacing:-.04em}
.banking-section-head p{margin:0;max-width:680px;color:var(--muted);font-size:12px}
.banking-provider-note{flex:0 0 auto;padding:8px 11px;border:1px solid #d8e0f0;border-radius:999px;background:#f7f9fd;color:#66728c;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.banking-account-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.banking-account-card{
  display:flex;
  flex-direction:column;
  min-height:330px;
  padding:20px;
  border:1px solid #dfe5f0;
  border-radius:19px;
  background:linear-gradient(155deg,#fff,#f9fbff);
  box-shadow:var(--shadow-xs);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.banking-account-card:hover{transform:translateY(-2px);border-color:#cbd6ea;box-shadow:var(--shadow-sm)}
.banking-account-card.is-inactive{opacity:.72;background:#f5f7fa}
.banking-account-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.banking-account-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(135deg,#102fe6,#3151ff);color:#fff;font-size:15px;font-weight:850;box-shadow:0 10px 22px rgba(23,56,255,.2)}
.banking-account-badges{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.banking-default-badge{min-height:28px;display:inline-flex;align-items:center;padding:0 10px;border-radius:999px;background:var(--blue-soft);color:var(--blue);font-size:9px;font-weight:820;text-transform:uppercase;letter-spacing:.05em}
.banking-account-copy{margin:18px 0 16px}
.banking-account-copy>span{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}
.banking-account-copy h3{margin:6px 0 5px;font-size:18px;letter-spacing:-.025em}
.banking-account-copy p{margin:0;color:#64708b;font-size:11px;letter-spacing:.025em;overflow-wrap:anywhere}
.banking-account-balance{padding:16px;border:1px solid #e3e8f2;border-radius:15px;background:#fff}
.banking-account-balance span,.banking-account-balance strong,.banking-account-balance small{display:block}
.banking-account-balance span{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}
.banking-account-balance strong{margin:8px 0 4px;font-size:23px;letter-spacing:-.045em}
.banking-account-balance small{font-size:9px;color:var(--muted)}
.banking-account-details{display:grid;gap:8px;margin:13px 0 0}
.banking-account-details>div{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:9px}
.banking-account-details span{color:var(--muted)}
.banking-account-details strong{font-size:10px;text-align:right;overflow-wrap:anywhere}
.banking-account-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:16px;border-top:1px solid #e8edf5}
.banking-account-actions form{margin:0}
.banking-account-actions .link-button{min-height:28px;padding:0;border:0;background:transparent;color:var(--blue);font-size:10px;font-weight:760;cursor:pointer}
.banking-empty-account{grid-column:1/-1;min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;border:1px dashed #cbd6e8;border-radius:18px;text-align:center;background:#fafcff}
.banking-empty-account h3{margin:12px 0 6px;font-size:19px}
.banking-empty-account p{max-width:440px;margin:0 0 18px;color:var(--muted);font-size:12px}
.banking-empty-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:var(--blue-soft);color:var(--blue);font-size:25px}

.banking-transaction-panel{margin-top:18px}
.banking-transaction-head{gap:16px}
.banking-filter{
  display:grid;
  grid-template-columns:minmax(220px,1.6fr) repeat(3,minmax(125px,.7fr)) repeat(2,minmax(128px,.65fr));
  gap:10px;
  align-items:end;
  margin:0 0 20px;
  padding:15px;
  border:1px solid #e2e8f1;
  border-radius:16px;
  background:#f8faff;
}
.banking-filter label{display:grid;gap:6px}
.banking-filter label>span{font-size:8px;font-weight:820;letter-spacing:.08em;text-transform:uppercase;color:#7d879c}
.banking-filter input,.banking-filter select{min-height:42px;font-size:11px}
.banking-filter-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px}
.banking-posted-mark{font-size:9px;font-weight:760;color:var(--green)}

.banking-import-list{display:grid;gap:9px}
.banking-import-list article{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid #edf1f6}
.banking-import-list article:last-child{border-bottom:0}
.banking-import-list article>div:first-child{min-width:0}
.banking-import-list strong,.banking-import-list span{display:block}
.banking-import-list article>div:first-child strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.banking-import-list article>div:first-child span{margin-top:4px;font-size:9px;color:var(--muted)}
.banking-import-numbers{display:flex;align-items:center;justify-content:flex-end;gap:13px;flex-wrap:wrap}
.banking-import-numbers>span:not(.status){font-size:9px;color:var(--muted)}
.banking-import-numbers b{color:var(--ink)}
.banking-form-note{padding:12px 14px;border:1px solid #dbe3f1;border-radius:13px;background:#f7f9fd;color:#65718a;font-size:10px;line-height:1.55}

@media (max-width:1200px){
  .banking-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .banking-account-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .banking-filter{grid-template-columns:repeat(3,minmax(0,1fr))}
  .banking-search-field{grid-column:1/-1}
}

@media (max-width:900px){
  .banking-balance-panel{grid-template-columns:1fr}
  .banking-section-head{flex-direction:column;gap:12px}
  .banking-account-grid{grid-template-columns:1fr}
}

@media (max-width:720px){
  .banking-metric-grid{gap:10px}
  .banking-metric-card{min-height:112px;padding:15px}
  .banking-metric-card strong{font-size:25px;margin-top:12px}
  .banking-balance-panel,.banking-account-section{padding:18px;border-radius:19px}
  .banking-currency-grid{grid-template-columns:1fr}
  .banking-account-card{min-height:310px;padding:17px}
  .banking-filter{grid-template-columns:1fr 1fr;padding:12px}
  .banking-search-field{grid-column:1/-1}
  .banking-filter-actions{justify-content:stretch}
  .banking-filter-actions .btn{flex:1}
  .banking-import-list article{align-items:flex-start;flex-direction:column}
  .banking-import-numbers{justify-content:flex-start}
}

@media (max-width:480px){
  .banking-page-head .page-actions{grid-template-columns:1fr 1fr}
  .banking-metric-grid{grid-template-columns:1fr 1fr}
  .banking-metric-card small{font-size:8px}
  .banking-section-copy h2,.banking-section-head h2{font-size:21px}
  .banking-account-balance strong{font-size:20px}
  .banking-filter{grid-template-columns:1fr}
  .banking-search-field{grid-column:auto}
  .banking-filter-actions{grid-column:auto;flex-direction:column}
}
/* END SEYLAC BANKING FOUNDATION V1 */

/* SEYLAC Payments & Cards Foundation v1 */
.payment-metric-grid,.card-metric-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin-bottom:20px;
}
.payment-metric-card{min-height:146px;padding:22px;border-radius:22px}
.payment-metric-card>span{display:block;color:var(--muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.payment-metric-card>strong{display:block;margin:17px 0 7px;font-size:26px;line-height:1;letter-spacing:-.045em;color:var(--ink)}
.payment-metric-card>small{display:block;color:var(--muted);font-size:11px;line-height:1.45}
.payments-account-warning,.cards-provider-banner{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.payments-account-warning a,.cards-provider-banner a{margin-left:auto;font-weight:800;color:inherit}
.payments-ready-banner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px}
.payments-ready-banner>span{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:#dff8ed;color:#078b5f;font-weight:900}
.payments-ready-banner p{margin:2px 0 0}
.payments-panel{padding:0;overflow:hidden}
.payments-panel-head{padding:24px 26px 18px;margin:0;border-bottom:1px solid var(--line)}
.payments-net-pill{padding:10px 14px;border:1px solid #cdd8f8;border-radius:999px;background:#f5f7ff;color:#2847c8;font-size:10px;font-weight:850;letter-spacing:.03em}
.payment-filter-grid{
  display:grid;
  grid-template-columns:minmax(210px,1.35fr) repeat(4,minmax(125px,.72fr)) repeat(2,minmax(135px,.72fr));
  gap:12px;
  padding:18px 26px 22px;
  background:#f8faff;
  border-bottom:1px solid var(--line);
}
.payment-filter-grid label{margin:0;color:#6e7a94;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.payment-filter-grid input,.payment-filter-grid select{margin-top:7px;min-height:46px;background:#fff;font-size:11px;text-transform:none;letter-spacing:0}
.payment-filter-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px}
.payment-filter-actions .btn{min-height:42px}
.payment-table-wrap{border:0;border-radius:0}
.payment-table td{vertical-align:middle}
.payment-table td strong{font-size:12px}
.payment-row-actions{min-width:118px;text-align:right}
.payment-row-actions form{display:inline}
.payment-row-actions .link-button{margin-left:8px}
.danger-link{color:#c63f52!important}
.status-cancelled,.status-failed{background:#f3f4f7;color:#697389}
.status-refunded{background:#fff0f2;color:#bd3850}
.payment-form-note,.form-help{display:block;margin:14px 0 0;color:var(--muted);font-size:10px;line-height:1.55}

.cards-foundation-grid{display:grid;gap:22px}
.card-workspace{display:grid;grid-template-columns:minmax(300px,390px) minmax(0,1fr);gap:20px;align-items:start}
.card-workspace.is-cancelled{opacity:.76}
.card-workspace .payment-card{position:sticky;top:96px;width:100%;max-width:none;padding:25px;background:linear-gradient(145deg,#0b1f55,#183acb 58%,#3154ff);color:#fff;overflow:hidden}
.card-workspace .payment-card::before{content:"";position:absolute;width:230px;height:230px;right:-70px;top:-105px;border:35px solid rgba(255,255,255,.09);border-radius:50%}
.card-workspace .payment-card.frozen{filter:saturate(.55);background:linear-gradient(145deg,#26324e,#66728b)}
.card-workspace .payment-card.cancelled{filter:grayscale(.75);background:linear-gradient(145deg,#454b59,#777e8b)}
.card-control-panel{padding:24px;min-width:0}
.card-title-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.card-title-line h2{margin:0}
.card-control-head{align-items:flex-start;margin-bottom:18px}
.card-control-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:17px}
.card-control-stats>div{padding:15px;border:1px solid var(--line);border-radius:15px;background:#fbfcff}
.card-control-stats small{display:block;margin-bottom:7px;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.card-control-stats strong{font-size:13px}
.card-limit-block{padding:16px 17px;border-radius:16px;background:#f1f4ff;border:1px solid #dce4ff}
.card-limit-block>div:first-child{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px;color:#53617e;font-size:10px}
.card-limit-block strong{color:var(--ink)}
.card-limit-track{height:8px;border-radius:999px;background:#dbe2f6;overflow:hidden}
.card-limit-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#173dff,#6680ff)}
.card-unlimited-note{padding:14px 16px;border:1px dashed #cbd5e9;border-radius:15px;background:#fafbfe;color:var(--muted);font-size:10px;line-height:1.55}
.card-action-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:17px 0 22px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.card-action-bar form{margin:0}
.card-action-bar form:last-child{margin-left:auto}
.card-activity-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:8px}
.card-activity-head h3{margin:0;font-size:14px}
.card-activity-head p{margin:4px 0 0;color:var(--muted);font-size:10px}
.card-activity-head>span{padding:7px 10px;border-radius:999px;background:#f1f4fa;color:#68748d;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.card-transaction-list>div{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #edf0f6}
.card-transaction-list>div:last-child{border-bottom:0}
.card-merchant-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:#eef2ff;color:#2448e8;font-size:11px;font-weight:900}
.card-transaction-list strong{font-size:11px}
.card-transaction-list small{display:block;margin-top:3px;color:var(--muted);font-size:9px}
.cards-empty-state{text-align:center;padding:60px 30px}
.cards-empty-state h2{max-width:650px;margin:12px auto;font-size:30px;letter-spacing:-.04em}
.cards-empty-state p{max-width:650px;margin:0 auto 22px;color:var(--muted);line-height:1.7}
.cards-empty-icon{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 20px;border-radius:22px;background:#edf1ff;color:#2448f7;font-size:29px}

@media (max-width:1280px){
  .payment-metric-grid,.card-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .payment-filter-grid{grid-template-columns:minmax(210px,1.4fr) repeat(3,minmax(130px,1fr))}
}
@media (max-width:1050px){
  .card-workspace{grid-template-columns:1fr}
  .card-workspace .payment-card{position:relative;top:auto;max-width:480px}
}
@media (max-width:760px){
  .payment-metric-grid,.card-metric-grid{grid-template-columns:1fr}
  .payment-metric-card{min-height:126px}
  .payments-ready-banner{grid-template-columns:auto minmax(0,1fr)}
  .payments-ready-banner>a{grid-column:1/-1;margin-left:50px}
  .payment-filter-grid{grid-template-columns:1fr;padding:16px}
  .payment-filter-actions{grid-column:auto;display:grid;grid-template-columns:1fr 1fr}
  .payments-panel-head{align-items:flex-start;padding:20px}
  .payments-net-pill{white-space:nowrap}
  .payment-table{min-width:920px}
  .card-control-panel{padding:18px}
  .card-control-stats{grid-template-columns:1fr}
  .card-action-bar form:last-child{margin-left:0;width:100%}
  .card-action-bar form:last-child .link-button{padding-left:0}
  .card-workspace .payment-card{height:218px;padding:21px}
}
/* END SEYLAC Payments & Cards Foundation v1 */

/* SEYLAC Bookkeeping & Reports Foundation v1 */
.card-workspace .payment-card .card-status{display:none}
.card-workspace .payment-card .card-foot{align-items:flex-end;gap:24px}
.card-workspace .payment-card .card-foot>div:last-child{min-width:68px;text-align:right}
.card-workspace .payment-card .card-foot strong{white-space:nowrap;line-height:1.1}

.bookkeeping-health,.report-health-banner{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:16px;
  margin-bottom:20px;
  padding:20px 22px;
  border:1px solid #d6def2;
  border-radius:22px;
  background:#f7f9ff;
}
.bookkeeping-health.is-ready,.report-health-banner.is-ready{border-color:#c4eadc;background:#f2fcf8}
.bookkeeping-health.needs-review,.report-health-banner.needs-review{border-color:#f0d7aa;background:#fffaf0}
.bookkeeping-health-icon,.report-health-icon{
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border-radius:15px;
  background:#e9eeff;
  color:#2146eb;
  font-size:19px;
  font-weight:900;
}
.is-ready>.bookkeeping-health-icon,.is-ready>.report-health-icon{background:#dff8ed;color:#078b5f}
.needs-review>.bookkeeping-health-icon,.needs-review>.report-health-icon{background:#fff0cf;color:#a66d00}
.bookkeeping-health h2,.report-health-banner h2{margin:4px 0 5px;font-size:18px;letter-spacing:-.025em}
.bookkeeping-health p,.report-health-banner p{margin:0;color:var(--muted);font-size:11px;line-height:1.6}
.bookkeeping-health>a,.report-health-banner>a{font-size:11px;font-weight:850;white-space:nowrap}

.bookkeeping-filter{
  display:grid;
  grid-template-columns:minmax(210px,1.35fr) repeat(5,minmax(130px,.8fr));
  gap:12px;
  align-items:end;
  margin-bottom:20px;
  padding:18px;
  background:#f8faff;
}
.bookkeeping-filter label,.report-control-form label{margin:0;color:#6e7a94;font-size:9px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}
.bookkeeping-filter input,.bookkeeping-filter select,.report-control-form input,.report-control-form select{margin-top:7px;min-height:46px;background:#fff;font-size:11px;text-transform:none;letter-spacing:0}
.bookkeeping-filter-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px}
.bookkeeping-filter-actions .btn{min-height:42px}

.bookkeeping-metric-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
  margin-bottom:20px;
}
.bookkeeping-metric-card{min-height:132px;padding:20px;border-radius:20px}
.bookkeeping-metric-card>span{display:block;color:var(--muted);font-size:9px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}
.bookkeeping-metric-card>strong{display:block;margin:17px 0 7px;font-size:22px;line-height:1.05;letter-spacing:-.04em}
.bookkeeping-metric-card>small{display:block;color:var(--muted);font-size:10px;line-height:1.5}
.bookkeeping-metric-card>small a{font-weight:750}

.bookkeeping-main-grid{align-items:start}
.chart-accounts-panel,.journal-activity-panel{min-width:0}
.books-count-pill{padding:8px 11px;border-radius:999px;background:#f0f3fa;color:#68748d;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.journal-detail-table{min-width:720px}
.journal-detail-table tfoot th{background:#f8faff}
.status-reversed{background:#fff0f2;color:#bd3850}
.journal-reversal-box{margin:14px 0 4px;padding:12px 14px;border:1px dashed #efc9cf;border-radius:14px;background:#fff8f9}
.journal-reversal-box>summary{cursor:pointer;color:#b23b4e;font-size:10px;font-weight:850}
.journal-reversal-box form{display:grid;grid-template-columns:180px minmax(220px,1fr) auto;gap:10px;align-items:end;margin-top:12px}
.journal-reversal-box label{margin:0;color:#6e7a94;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.journal-reversal-box input{margin-top:6px;min-height:42px;background:#fff;font-size:10px;text-transform:none;letter-spacing:0}
.journal-origin-note{margin:12px 0 2px;padding:10px 12px;border-radius:12px;background:#f7f8fb;color:var(--muted);font-size:9px;line-height:1.5}

.general-ledger-panel{margin-top:20px}
.ledger-control-strip,.trial-control-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-bottom:16px;
}
.trial-control-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
.ledger-control-strip>div,.trial-control-strip>div{padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#fbfcff}
.ledger-control-strip small,.trial-control-strip small{display:block;color:var(--muted);font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.ledger-control-strip strong,.trial-control-strip strong{display:block;margin-top:7px;font-size:13px}
.general-ledger-table{min-width:900px}
.ledger-opening-row{background:#f6f8ff}
.ledger-opening-row td{color:#5c6882;font-weight:700}

.journal-row{grid-template-columns:1.25fr 1.35fr .58fr .58fr 38px}
.journal-remove-line{width:36px;height:39px;border:1px solid #ffd4d8;border-radius:10px;background:#fff3f4;color:#c23e51;font-size:18px}
.journal-editor-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:-6px 0 13px}
.journal-editor-actions>span{color:var(--muted);font-size:9px}
#postJournalButton:disabled{opacity:.48;cursor:not-allowed;box-shadow:none}

.report-control-form{display:grid;grid-template-columns:180px 180px minmax(240px,1fr) auto;gap:12px;align-items:end}
.report-control-form .btn{min-height:46px}
.report-health-banner{margin-bottom:18px}
.report-section-actions{display:flex;align-items:center;gap:10px}
.report-metric-grid{margin-bottom:18px}

.native-currency-summary{display:grid;gap:12px;margin-bottom:17px}
.native-currency-summary>article{
  display:grid;
  grid-template-columns:90px repeat(4,minmax(0,1fr));
  gap:12px;
  align-items:center;
  padding:15px 17px;
  border:1px solid #dce3f2;
  border-radius:17px;
  background:linear-gradient(145deg,#fff,#f8faff);
}
.native-currency-summary>article>span{font-size:18px;font-weight:900;letter-spacing:-.03em;color:#1c3dd1}
.native-currency-summary article div{padding-left:14px;border-left:1px solid var(--line)}
.native-currency-summary small{display:block;color:var(--muted);font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.native-currency-summary strong{display:block;margin-top:5px;font-size:12px}
.positive{color:#078b5f!important}
.negative{color:#c23e51!important}
.cash-movement-table{min-width:900px}

@media (max-width:1320px){
  .bookkeeping-filter{grid-template-columns:minmax(210px,1.3fr) repeat(3,minmax(135px,1fr))}
  .bookkeeping-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:980px){
  .bookkeeping-health,.report-health-banner{grid-template-columns:auto minmax(0,1fr)}
  .bookkeeping-health>a,.report-health-banner>a{grid-column:2}
  .report-control-form{grid-template-columns:1fr 1fr}
  .report-control-form label:nth-child(3){grid-column:1/-1}
  .report-control-form .btn{grid-column:1/-1}
  .native-currency-summary>article{grid-template-columns:70px repeat(2,minmax(0,1fr))}
  .native-currency-summary article div:nth-last-child(-n+2){margin-top:4px}
}
@media (max-width:760px){
  .bookkeeping-filter{grid-template-columns:1fr;padding:16px}
  .bookkeeping-filter-actions{grid-column:auto;display:grid;grid-template-columns:1fr 1fr}
  .bookkeeping-metric-grid{grid-template-columns:1fr}
  .bookkeeping-metric-card{min-height:118px}
  .bookkeeping-health,.report-health-banner{padding:17px;grid-template-columns:auto minmax(0,1fr)}
  .bookkeeping-health h2,.report-health-banner h2{font-size:15px}
  .bookkeeping-health>a,.report-health-banner>a{grid-column:1/-1;margin-left:62px}
  .ledger-control-strip,.trial-control-strip{grid-template-columns:1fr 1fr}
  .journal-reversal-box form{grid-template-columns:1fr}
  .journal-editor-actions{align-items:flex-start;flex-direction:column}
  .report-control-form{grid-template-columns:1fr}
  .report-control-form label:nth-child(3),.report-control-form .btn{grid-column:auto}
  .native-currency-summary>article{grid-template-columns:1fr 1fr}
  .native-currency-summary>article>span{grid-column:1/-1}
  .native-currency-summary article div{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:10px}
}
/* END SEYLAC Bookkeeping & Reports Foundation v1 */

/* SEYLAC Operations Suite 2026 */
body.route-reconciliation-index,
body.route-accountant-index,
body.route-collections-index,
body.route-people-index,
body.route-developer-index{background:#f5f7fb}

body.route-reconciliation-index .app-content,
body.route-accountant-index .app-content,
body.route-collections-index .app-content,
body.route-people-index .app-content,
body.route-developer-index .app-content{max-width:1420px}

.eyebrow{
  display:inline-flex;
  margin-bottom:9px;
  color:#3151df;
  font-size:9px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}

body.route-reconciliation-index .panel,
body.route-accountant-index .panel,
body.route-collections-index .panel,
body.route-people-index .panel,
body.route-developer-index .panel{margin-bottom:20px}

body.route-reconciliation-index .panel-head,
body.route-accountant-index .panel-head,
body.route-collections-index .panel-head,
body.route-people-index .panel-head,
body.route-developer-index .panel-head{
  padding-bottom:17px;
  border-bottom:1px solid #e8ecf4;
}

body.route-reconciliation-index .panel-head h2,
body.route-accountant-index .panel-head h2,
body.route-collections-index .panel-head h2,
body.route-people-index .panel-head h2,
body.route-developer-index .panel-head h2{margin:0 0 5px}

.badge{
  display:inline-flex;
  align-items:center;
  width:max-content;
  min-height:25px;
  padding:4px 9px;
  border-radius:999px;
  background:#eef2ff;
  color:#3150cb;
  font-size:9px;
  font-weight:850;
  letter-spacing:.02em;
  text-transform:capitalize;
}

.table-actions,.inline-form{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.table-actions form,.inline-form{margin:0}
.inline-form input,.inline-form select{width:auto;min-width:120px;min-height:38px;font-size:10px}
.inline-form .btn{flex:0 0 auto}

body.route-accountant-index .split-grid,
body.route-people-index .split-grid,
body.route-developer-index .split-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}

body.route-accountant-index .panel h3,
body.route-people-index .panel h3,
body.route-developer-index .panel h3{
  margin:25px 0 12px;
  padding-top:20px;
  border-top:1px solid var(--line);
  font-size:13px;
}

body.route-developer-index code{
  display:inline-block;
  max-width:100%;
  padding:4px 7px;
  border:1px solid #dbe2f2;
  border-radius:7px;
  background:#f6f8fc;
  color:#243d9f;
  overflow-wrap:anywhere;
}

body.route-developer-index .card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
body.route-developer-index .mini-card{display:flex;flex-direction:column;min-height:190px}
body.route-developer-index .mini-card .btn{margin-top:auto}

body.route-collections-index .metric-grid,
body.route-reconciliation-index .metric-grid{margin-bottom:20px}

body.route-accountant-index textarea,
body.route-developer-index textarea{min-height:108px}

@media(max-width:1180px){
  body.route-developer-index .card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.route-accountant-index .split-grid,
  body.route-people-index .split-grid,
  body.route-developer-index .split-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  body.route-developer-index .card-grid{grid-template-columns:1fr}
  .inline-form{align-items:stretch;flex-direction:column}
  .inline-form input,.inline-form select,.inline-form .btn{width:100%}
  .table-actions{flex-wrap:nowrap}
}
/* END SEYLAC Operations Suite 2026 */

/* SEYLAC QUOTES FORM WIDTH FIX V1
   Quotes reuse the invoice builder, but the existing width protection was
   scoped only to route-invoices-create. Keep quote create/edit inside the
   Workspace content area without changing invoices or other modules. */
body.route-quotes-create .app-main,
body.route-quotes-edit .app-main{
    min-width:0;
    overflow-x:hidden;
}

body.route-quotes-create .app-content,
body.route-quotes-edit .app-content{
    width:100%;
    max-width:1320px;
    margin-inline:auto;
    overflow-x:clip;
}

body.route-quotes-create .invoice-builder,
body.route-quotes-edit .invoice-builder,
body.route-quotes-create .invoice-builder > *,
body.route-quotes-edit .invoice-builder > *,
body.route-quotes-create .invoice-builder .panel,
body.route-quotes-edit .invoice-builder .panel,
body.route-quotes-create .invoice-builder .split-grid,
body.route-quotes-edit .invoice-builder .split-grid{
    width:100%;
    max-width:100%;
    min-width:0;
}

body.route-quotes-create .form-grid.three,
body.route-quotes-edit .form-grid.three{
    grid-template-columns:repeat(3,minmax(0,1fr));
}

body.route-quotes-create .form-grid > label,
body.route-quotes-edit .form-grid > label,
body.route-quotes-create .invoice-template-grid,
body.route-quotes-edit .invoice-template-grid,
body.route-quotes-create .invoice-template-option,
body.route-quotes-edit .invoice-template-option,
body.route-quotes-create .invoice-template-card,
body.route-quotes-edit .invoice-template-card{
    min-width:0;
    max-width:100%;
}

body.route-quotes-create .invoice-builder input,
body.route-quotes-edit .invoice-builder input,
body.route-quotes-create .invoice-builder select,
body.route-quotes-edit .invoice-builder select,
body.route-quotes-create .invoice-builder textarea,
body.route-quotes-edit .invoice-builder textarea{
    width:100%;
    max-width:100%;
    min-width:0;
}

body.route-quotes-create .invoice-lines,
body.route-quotes-edit .invoice-lines{
    width:100%;
    max-width:100%;
    overflow-x:auto;
    overflow-y:hidden;
}

body.route-quotes-create .invoice-lines table,
body.route-quotes-edit .invoice-lines table{
    width:100%;
    min-width:900px;
    table-layout:fixed;
}

body.route-quotes-create .invoice-lines th:first-child,
body.route-quotes-create .invoice-lines td:first-child,
body.route-quotes-edit .invoice-lines th:first-child,
body.route-quotes-edit .invoice-lines td:first-child{
    width:36%;
}

body.route-quotes-create .invoice-lines th:nth-child(2),
body.route-quotes-create .invoice-lines td:nth-child(2),
body.route-quotes-edit .invoice-lines th:nth-child(2),
body.route-quotes-edit .invoice-lines td:nth-child(2){
    width:11%;
}

body.route-quotes-create .invoice-lines th:nth-child(3),
body.route-quotes-create .invoice-lines td:nth-child(3),
body.route-quotes-edit .invoice-lines th:nth-child(3),
body.route-quotes-edit .invoice-lines td:nth-child(3){
    width:16%;
}

body.route-quotes-create .invoice-lines th:nth-child(4),
body.route-quotes-create .invoice-lines td:nth-child(4),
body.route-quotes-create .invoice-lines th:nth-child(5),
body.route-quotes-create .invoice-lines td:nth-child(5),
body.route-quotes-edit .invoice-lines th:nth-child(4),
body.route-quotes-edit .invoice-lines td:nth-child(4),
body.route-quotes-edit .invoice-lines th:nth-child(5),
body.route-quotes-edit .invoice-lines td:nth-child(5){
    width:14%;
}

body.route-quotes-create .invoice-lines th:last-child,
body.route-quotes-create .invoice-lines td:last-child,
body.route-quotes-edit .invoice-lines th:last-child,
body.route-quotes-edit .invoice-lines td:last-child{
    width:64px;
}

body.route-quotes-create .split-grid,
body.route-quotes-edit .split-grid{
    grid-template-columns:minmax(0,1fr) minmax(300px,340px);
    align-items:start;
}

body.route-quotes-create .invoice-summary,
body.route-quotes-edit .invoice-summary{
    width:100%;
    min-width:0;
    position:sticky;
    top:96px;
}

@media (max-width:1250px){
    body.route-quotes-create .app-content,
    body.route-quotes-edit .app-content{
        max-width:100%;
    }

    body.route-quotes-create .form-grid.three,
    body.route-quotes-edit .form-grid.three{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    body.route-quotes-create .invoice-template-grid,
    body.route-quotes-edit .invoice-template-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    body.route-quotes-create .split-grid,
    body.route-quotes-edit .split-grid{
        grid-template-columns:1fr;
    }

    body.route-quotes-create .invoice-summary,
    body.route-quotes-edit .invoice-summary{
        position:static;
    }
}

@media (max-width:720px){
    body.route-quotes-create .form-grid.three,
    body.route-quotes-edit .form-grid.three,
    body.route-quotes-create .invoice-template-grid,
    body.route-quotes-edit .invoice-template-grid{
        grid-template-columns:1fr;
    }

    body.route-quotes-create .invoice-lines table,
    body.route-quotes-edit .invoice-lines table{
        min-width:760px;
        table-layout:fixed;
    }
}
/* END SEYLAC QUOTES FORM WIDTH FIX V1 */

/* SEYLAC QUOTES LINE ITEMS FIX V1
   The legacy .line-row grid rule was also matching the <tr class="line-row">
   used by Quotes. Restore native table-row/table-cell behaviour on desktop.
   Mobile card layout below 720px remains unchanged. */
@media (min-width:721px){
    body.route-quotes-create .invoice-lines .line-row,
    body.route-quotes-edit .invoice-lines .line-row{
        display:table-row !important;
        min-width:0 !important;
        padding:0 !important;
        border:0 !important;
    }

    body.route-quotes-create .invoice-lines .line-row td,
    body.route-quotes-edit .invoice-lines .line-row td{
        display:table-cell !important;
        min-width:0 !important;
        padding:12px 9px !important;
        vertical-align:middle !important;
        border-top:1px solid var(--line) !important;
    }

    body.route-quotes-create .invoice-lines .line-row td:first-child,
    body.route-quotes-edit .invoice-lines .line-row td:first-child{
        min-width:280px !important;
    }

    body.route-quotes-create .invoice-lines .line-row input,
    body.route-quotes-edit .invoice-lines .line-row input,
    body.route-quotes-create .invoice-lines .line-row select,
    body.route-quotes-edit .invoice-lines .line-row select{
        display:block;
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        min-height:46px !important;
        font-size:13px !important;
    }

    body.route-quotes-create .invoice-lines .product-picker,
    body.route-quotes-edit .invoice-lines .product-picker{
        margin-top:8px !important;
    }

    body.route-quotes-create .invoice-lines .remove-line,
    body.route-quotes-edit .invoice-lines .remove-line{
        display:grid;
        place-items:center;
        width:38px !important;
        height:38px !important;
        margin-inline:auto;
        padding:0 !important;
    }
}
/* END SEYLAC QUOTES LINE ITEMS FIX V1 */

/* SEYLAC BUSINESS WORKFLOW COMPLETION V1 */
body.route-recurring-invoices-index .recurring-panel table{min-width:820px}
body.route-recurring-invoices-index .recurring-metrics .metric-card{min-height:145px}
body.route-recurring-invoices-index .recurring-menu>div{min-width:190px}
.delivery-history-panel{margin-top:20px}
.delivery-history-panel .activity-list{display:grid;gap:0}
.delivery-history-panel .activity-item:last-child{border-bottom:0}
@media(max-width:720px){
  body.route-recurring-invoices-index .recurring-metrics{grid-template-columns:1fr}
  body.route-recurring-invoices-index .recurring-metrics .metric-card{min-height:118px}
  .delivery-history-panel{margin-top:14px}
}
/* END SEYLAC BUSINESS WORKFLOW COMPLETION V1 */
/* SEYLAC INVOICE LINE ITEMS FIX V1
   Keep Invoice items identical to Quote items on desktop.
   Mobile card layout remains unchanged.
*/
@media (min-width:721px){

    body.route-invoices-create .invoice-lines .line-row,
    body.route-invoices-edit .invoice-lines .line-row{
        display:table-row !important;
        min-width:0 !important;
        padding:0 !important;
        border:0 !important;
        background:transparent !important;
        box-shadow:none !important;
    }

    body.route-invoices-create .invoice-lines .line-row td,
    body.route-invoices-edit .invoice-lines .line-row td{
        position:static !important;
        display:table-cell !important;
        min-width:0 !important;
        padding:12px 9px !important;
        vertical-align:middle !important;
        border-top:1px solid var(--line) !important;
    }

    body.route-invoices-create .invoice-lines .line-row td:first-child,
    body.route-invoices-edit .invoice-lines .line-row td:first-child{
        min-width:280px !important;
    }

    body.route-invoices-create .invoice-lines .line-row input,
    body.route-invoices-edit .invoice-lines .line-row input,
    body.route-invoices-create .invoice-lines .line-row select,
    body.route-invoices-edit .invoice-lines .line-row select{
        display:block !important;
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        min-height:48px !important;
        padding-inline:14px !important;
        color:var(--ink) !important;
        -webkit-text-fill-color:var(--ink) !important;
        background:#fff !important;
        opacity:1 !important;
        font-size:13px !important;
    }

    body.route-invoices-create .invoice-lines .product-picker,
    body.route-invoices-edit .invoice-lines .product-picker{
        margin-top:8px !important;
    }

    body.route-invoices-create .invoice-lines .remove-line,
    body.route-invoices-edit .invoice-lines .remove-line{
        display:grid !important;
        place-items:center !important;
        width:38px !important;
        height:38px !important;
        margin-inline:auto !important;
        padding:0 !important;
    }
}
/* END SEYLAC INVOICE LINE ITEMS FIX V1 */
/* SEYLAC FINANCE CONTROL RESPONSIVE WIDTH FIX V1
   Keep Finance operations and Statements & aging inside the Workspace canvas.
   Tables retain their own horizontal scrolling; panels and forms may shrink.
   No controller, route, database, accounting, AI or API behavior is changed. */
body.route-finance-operations-index .app-main,
body.route-finance-control-index .app-main{
  min-width:0;
  overflow-x:clip;
}

body.route-finance-operations-index .app-content,
body.route-finance-control-index .app-content{
  width:100%;
  max-width:1580px;
  overflow-x:clip;
}

body.route-finance-operations-index .split-grid,
body.route-finance-control-index .split-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:start;
}

body.route-finance-operations-index .split-grid > *,
body.route-finance-control-index .split-grid > *,
body.route-finance-operations-index .panel,
body.route-finance-control-index .panel,
body.route-finance-operations-index .panel-head > *,
body.route-finance-control-index .panel-head > *,
body.route-finance-operations-index details,
body.route-finance-control-index details,
body.route-finance-operations-index .form-grid > *,
body.route-finance-control-index .form-grid > *,
body.route-finance-operations-index .table-wrap,
body.route-finance-control-index .table-wrap{
  min-width:0;
  max-width:100%;
}

body.route-finance-operations-index .table-wrap,
body.route-finance-control-index .table-wrap{
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-inline:contain;
}

body.route-finance-operations-index .panel-head h2,
body.route-finance-control-index .panel-head h2,
body.route-finance-operations-index .panel-head p,
body.route-finance-control-index .panel-head p,
body.route-finance-operations-index summary,
body.route-finance-control-index summary{
  overflow-wrap:anywhere;
}

body.route-finance-operations-index .compact-form{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin-top:8px;
}

body.route-finance-operations-index .compact-form input,
body.route-finance-operations-index .compact-form select{
  flex:1 1 150px;
  width:auto;
  min-width:0;
}

body.route-finance-operations-index .compact-form .btn{
  flex:0 0 auto;
}

body.route-finance-operations-index .metric-strip{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

@media (max-width:1280px){
  body.route-finance-operations-index .split-grid,
  body.route-finance-control-index .split-grid{
    grid-template-columns:1fr;
  }

  body.route-finance-operations-index .metric-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:720px){
  body.route-finance-operations-index .metric-strip{
    grid-template-columns:1fr;
  }

  body.route-finance-operations-index .compact-form{
    align-items:stretch;
    flex-direction:column;
  }

  body.route-finance-operations-index .compact-form input,
  body.route-finance-operations-index .compact-form select,
  body.route-finance-operations-index .compact-form .btn{
    width:100%;
    flex-basis:auto;
  }
}
/* END SEYLAC FINANCE CONTROL RESPONSIVE WIDTH FIX V1 */
