:root{
  --brand:#14243a;
  --accent:#d99b45;
  --surface:#fff;
  --background:#f5f6f8;
  --text:#172033;
  --muted:#667085;
  --border:#e3e7ed;
  --danger:#b42318;
  --success:#087a4b;
  --warning:#b65c00;
  --sidebar-width:264px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{min-height:100%}
body{margin:0;background:var(--background);color:var(--text)}
button,input,select,textarea{font:inherit}
button{border:0;border-radius:10px;padding:.75rem 1rem;background:var(--brand);color:#fff;font-weight:750;cursor:pointer}
button:hover{filter:brightness(.98)}
button:disabled{opacity:.6;cursor:wait}
button.secondary{background:transparent;color:var(--brand);border:1px solid var(--border)}
button.icon{padding:.25rem .6rem;background:transparent;color:var(--text);font-size:1.6rem}
button.text-button,.text-link{padding:0;background:transparent;color:var(--muted);font-size:.86rem;font-weight:700}
button.text-link{color:var(--brand)}
.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}
.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:0 8px 28px rgba(20,36,58,.045)}
.brand{color:var(--accent);font-weight:850;letter-spacing:.02em}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(1.7rem,2vw,2.15rem);letter-spacing:-.025em}
h2{font-size:1.08rem}
.muted{color:var(--muted)}
.small{font-size:.84rem}
.eyebrow{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:.72rem;font-weight:850;margin-bottom:6px}
.error{color:var(--danger)}
.num{text-align:right}
label{display:grid;gap:.4rem;font-weight:650}
input,select,textarea{width:100%;border:1px solid var(--border);border-radius:10px;padding:.75rem;background:#fff;color:var(--text)}
input:focus,select:focus,textarea:focus{outline:3px solid color-mix(in srgb,var(--accent) 20%,transparent);border-color:var(--accent)}
textarea{resize:vertical}
form{display:grid;gap:1rem}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.full{grid-column:1/-1}

/* Auth */
#app{min-height:100vh}
.auth-card{width:min(440px,calc(100% - 32px));margin:10vh auto;padding:34px}
.boot-card{min-height:180px;display:grid;align-content:center;justify-items:center;text-align:center;gap:.5rem}
.boot-card p{margin:0}
.login-mark,.sidebar-logo,.mobile-logo{display:grid;place-items:center;background:var(--accent);color:var(--brand);font-weight:900;border-radius:12px}
.login-mark{width:48px;height:48px;margin-bottom:8px}
.auth-card h1{margin:6px 0 8px}

/* Application shell */
.app-frame{min-height:100vh}
.app-sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);display:flex;flex-direction:column;background:var(--brand);color:#fff;z-index:40;box-shadow:12px 0 34px rgba(15,28,45,.1)}
.sidebar-head{height:86px;display:flex;align-items:center;gap:12px;padding:18px 18px;border-bottom:1px solid rgba(255,255,255,.1)}
.sidebar-logo{width:42px;height:42px;flex:0 0 auto}
.sidebar-brand{font-weight:850}.sidebar-product{font-size:.78rem;color:rgba(255,255,255,.6);margin-top:2px}
.sidebar-close{display:none;margin-left:auto;padding:7px;background:transparent;color:#fff}.sidebar-close svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}
.sidebar-nav{display:grid;gap:4px;padding:18px 12px;overflow-y:auto}
.nav-item{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:12px;width:100%;padding:11px 13px;background:transparent;color:rgba(255,255,255,.72);text-align:left;border-radius:10px;font-weight:690}
.nav-item svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.nav-item:hover{background:rgba(255,255,255,.07);color:#fff;filter:none}
.nav-item.is-active{background:rgba(255,255,255,.12);color:#fff;box-shadow:inset 3px 0 0 var(--accent)}
.nav-count{display:grid;place-items:center;min-width:24px;height:22px;padding:0 6px;background:rgba(255,255,255,.12);border-radius:999px;font-size:.72rem}
.nav-item.is-active .nav-count{background:var(--accent);color:var(--brand)}
.notification-tools{position:fixed;z-index:45;top:18px;right:24px}.notification-button{position:relative;display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid var(--border);border-radius:50%;background:#fff;color:var(--brand);box-shadow:0 6px 20px rgba(15,23,42,.1)}.notification-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8}.notification-button span{position:absolute;top:-5px;right:-5px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:#dc2626;color:#fff;font-size:.7rem;line-height:20px}.notification-panel{position:absolute;top:50px;right:0;width:min(390px,calc(100vw - 32px));max-height:70vh;overflow:auto;padding:0}.notification-panel header{position:sticky;top:0;display:flex;justify-content:space-between;gap:15px;padding:16px;background:#fff;border-bottom:1px solid var(--border)}.notification-panel header>div{display:grid}.notification-item{display:grid;grid-template-columns:9px 1fr;gap:10px;width:100%;padding:13px 16px;background:#f8fbff;color:var(--brand);text-align:left;border-bottom:1px solid var(--border);border-radius:0}.notification-item.is-read{background:#fff;color:#64748b}.notification-dot{width:8px;height:8px;margin-top:6px;border-radius:50%;background:var(--accent)}.notification-item.is-read .notification-dot{background:#cbd5e1}.notification-item strong,.notification-item small{display:block}.notification-item small{margin-top:3px;color:#64748b}
#quote-stats>div{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.calendar-toolbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:14px 18px;margin-bottom:16px}.calendar-toolbar>div{display:flex;align-items:end;gap:8px}.calendar-toolbar h2{text-align:center;text-transform:capitalize}.calendar-toolbar label{font-size:.72rem}.calendar-toolbar select{min-width:110px;padding:7px}.calendar-grid{padding:0;overflow:auto}.calendar-body{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));min-width:840px}.calendar-day-head{display:flex;justify-content:space-between;margin:-7px -7px 7px;padding:10px;border-bottom:1px solid var(--border);text-transform:capitalize}.calendar-day{min-height:130px;padding:7px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:#fff}.calendar-day.is-today{background:#fffaf1}.calendar-event{display:grid;width:100%;margin-bottom:5px;padding:6px 8px;border:0;border-left:4px solid var(--event-color);border-radius:6px;background:color-mix(in srgb,var(--event-color) 12%,white);color:#172033;text-align:left;font-size:.72rem}.calendar-event span{font-size:.66rem;opacity:.72}.calendar-event strong{overflow:hidden;text-overflow:ellipsis}.calendar-event i{font-size:.6rem;font-style:normal;opacity:.7}.calendar-week .calendar-day,.calendar-day .calendar-day{min-height:560px}.calendar-week .calendar-body{grid-template-columns:repeat(7,minmax(120px,1fr))}.calendar-day .calendar-body{grid-template-columns:1fr;min-width:0}.calendar-dialog{width:min(760px,94vw)}.calendar-dialog footer{display:grid;grid-template-columns:auto 1fr auto auto auto;gap:10px}.danger{background:#b91c1c}
.sidebar-bottom{display:grid;gap:4px;margin-top:auto;padding:10px 12px 14px;border-top:1px solid rgba(255,255,255,.1)}
.sidebar-user{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;margin-top:10px;padding:12px 8px 0}
.user-avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.12);font-weight:800}.sidebar-user strong,.sidebar-user span{display:block}.sidebar-user strong{font-size:.84rem}.sidebar-user span{font-size:.7rem;color:rgba(255,255,255,.55)}.sidebar-user .text-button{color:rgba(255,255,255,.72)}
.app-workspace{min-height:100vh;margin-left:var(--sidebar-width)}
.app-content{width:min(1500px,100%);margin:0 auto;padding:34px clamp(22px,3vw,48px) 60px}
.mobile-topbar{display:none}
.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.page-header h1{margin-bottom:6px}.page-header p:last-child{margin-bottom:0}
.app-view{animation:view-in .16s ease-out}@keyframes view-in{from{opacity:.2;transform:translateY(3px)}to{opacity:1;transform:none}}
.sidebar-backdrop{position:fixed;inset:0;background:rgba(15,25,40,.45);z-index:35}

/* Dashboard */
.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.kpi-card{position:relative;min-height:126px;padding:18px;overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:15px;box-shadow:0 8px 26px rgba(20,36,58,.04)}
.kpi-card::after{content:"";position:absolute;width:80px;height:80px;border-radius:50%;right:-28px;bottom:-36px;background:color-mix(in srgb,var(--kpi-color,var(--brand)) 10%,transparent)}
.kpi-label{display:block;color:var(--muted);font-size:.8rem;font-weight:720}.kpi-value{display:block;margin-top:10px;font-size:1.7rem;line-height:1;font-weight:850;letter-spacing:-.025em}.kpi-detail{display:block;margin-top:10px;color:var(--muted);font-size:.75rem}.kpi-card.is-alert{border-color:#f3c9c6}.kpi-card.is-alert .kpi-value{color:var(--danger)}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);gap:18px;margin-top:18px}.dashboard-grid-wide{grid-template-columns:1fr 1fr}.dashboard-card,.dashboard-table{padding:20px}.dashboard-table{padding:0;overflow:hidden}.dashboard-table .card-heading{padding:20px 20px 10px}.dashboard-table table{min-width:0}
.card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.card-heading h2{margin-bottom:4px}.card-heading p{margin-bottom:0}
.pipeline-list{display:grid;gap:14px;margin-top:20px}.pipeline-row{display:grid;grid-template-columns:140px 1fr 34px;align-items:center;gap:12px;font-size:.84rem}.pipeline-row strong{text-align:right}.pipeline-track{height:8px;background:#eef1f5;border-radius:999px;overflow:hidden}.pipeline-fill{height:100%;min-width:4px;background:var(--brand);border-radius:999px}
.attention-list{display:grid;gap:10px;margin-top:16px}.attention-item{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:12px;padding:13px;border:1px solid var(--border);border-radius:12px;background:#fbfcfd}.attention-number{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:#eef2f7;font-weight:850}.attention-item.is-danger .attention-number{background:#fff0ef;color:var(--danger)}.attention-item.is-warning .attention-number{background:#fff5e7;color:var(--warning)}.attention-item strong,.attention-item span{display:block}.attention-item span{color:var(--muted);font-size:.76rem;margin-top:3px}

/* Lists and tables */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.stat{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:16px}.stat strong{display:block;font-size:1.7rem;margin-top:4px}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--border);vertical-align:top}th{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.table-card{overflow-x:auto}.table-card table{min-width:760px}.dashboard-table table{min-width:520px}.lead-row,.invoice-row{cursor:pointer}.lead-row:hover,.lead-row:focus,.invoice-row:hover,.invoice-row:focus{background:#fafbfc;outline:none}.badge{display:inline-block;border-radius:999px;padding:.3rem .6rem;background:#eef1f5;font-size:.78rem;font-weight:750}.empty{padding:32px;text-align:center;color:var(--muted)}

/* Placeholder pages */
.coming-soon{min-height:380px;display:grid;place-items:center;align-content:center;text-align:center;padding:48px;max-width:920px}.coming-soon>svg{width:54px;height:54px;margin-bottom:18px;fill:none;stroke:var(--brand);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.soon-label{display:inline-block;margin-bottom:12px;padding:6px 9px;border-radius:999px;background:#fff4df;color:#9a5b00;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.coming-soon h2{font-size:1.4rem;margin-bottom:8px}.coming-soon p{max-width:620px;color:var(--muted)}.coming-stat{margin-top:18px;display:flex;align-items:baseline;gap:8px}.coming-stat strong{font-size:1.8rem}.coming-stat span{color:var(--muted);font-size:.84rem}

/* Settings */
.settings-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:18px}.settings-main{display:grid;gap:16px}.settings-card{padding:22px}.settings-heading{display:flex;justify-content:space-between;margin-bottom:18px}.settings-heading h2{margin:3px 0 4px}.settings-kicker{font-size:.7rem;text-transform:uppercase;letter-spacing:.09em;color:var(--accent);font-weight:850}.settings-note{margin:16px 0 0;padding:12px;border-radius:10px;background:#f7f8fa;color:var(--muted);font-size:.8rem}.settings-actions{position:sticky;bottom:0;z-index:4;display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:14px 16px;background:rgba(245,246,248,.93);backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:14px}.settings-actions #settings-save-status{margin-right:auto}.settings-actions .error{margin:0}.settings-side{display:grid;gap:16px;position:sticky;top:24px}.invoice-brand-preview,.settings-status{padding:18px}.preview-paper{aspect-ratio:1/1.35;padding:20px;background:#fff;border:1px solid #dce1e8;box-shadow:0 12px 30px rgba(20,36,58,.08)}.preview-brand-bar{height:8px;margin:-20px -20px 18px;background:var(--brand)}.preview-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.preview-head>div:first-child{max-width:55%}.preview-head img{display:block;max-width:120px;max-height:42px;object-fit:contain}.preview-head strong{font-size:.82rem}.preview-head b{display:block;color:var(--brand);font-size:1rem;letter-spacing:.03em}.preview-head span{display:block;text-align:right;font-size:.56rem;color:var(--muted)}.preview-rule{height:2px;background:var(--brand);margin:14px 0 18px}.preview-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.preview-columns small{font-size:.48rem;color:var(--muted);letter-spacing:.08em}.preview-columns i,.preview-lines i{display:block;height:5px;margin-top:7px;background:#e9edf2;border-radius:3px}.preview-columns i:nth-child(2){width:78%}.preview-columns i:nth-child(3){width:62%}.preview-lines{margin-top:28px}.preview-lines i{height:8px;margin-top:9px}.preview-lines i:nth-child(2){width:90%}.preview-lines i:nth-child(3){width:72%}.preview-payment{margin-top:30px;padding:12px;border-left:4px solid var(--accent);background:#f4f2ed;font-size:.56rem;font-weight:700}.invoice-brand-preview>p{margin:12px 0 0}.settings-status h3{margin-bottom:14px}.settings-status dl{margin:0}.settings-status dl>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--border)}.settings-status dt{color:var(--muted);font-size:.8rem}.settings-status dd{margin:0;font-size:.8rem;font-weight:750;text-align:right}.readiness-good{color:var(--success)}.readiness-bad{color:var(--danger)}

/* Dialogs and forms */
dialog{width:min(760px,calc(100% - 32px));border:0;border-radius:16px;padding:0;box-shadow:0 24px 80px rgba(0,0,0,.25);color:var(--text)}dialog::backdrop{background:rgba(16,24,40,.52)}dialog>form{padding:24px}dialog header,dialog footer{display:flex;justify-content:space-between;align-items:center;gap:1rem}dialog footer{justify-content:flex-end}.detail-dialog{width:min(1120px,calc(100% - 32px));max-height:calc(100vh - 32px);overflow:auto}.dialog-header{position:sticky;top:0;z-index:2;background:#fff;border-bottom:1px solid var(--border);padding:20px 24px}.dialog-header h2{margin:3px 0 0}.detail-loading{padding:36px}.detail-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.8fr)}.detail-layout>section{padding:24px}.timeline-panel{padding:24px;border-left:1px solid var(--border);background:#faf9f6}.section-heading{display:flex;justify-content:space-between;gap:1rem;align-items:baseline}.section-heading h3{margin-bottom:14px}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:1rem}.note-form{padding-bottom:20px;border-bottom:1px solid var(--border)}.timeline{display:grid;gap:0;margin-top:18px}.timeline-item{position:relative;padding:0 0 20px 24px}.timeline-item:before{content:"";position:absolute;left:4px;top:6px;width:9px;height:9px;border-radius:50%;background:var(--accent)}.timeline-item:after{content:"";position:absolute;left:8px;top:17px;bottom:0;width:1px;background:var(--border)}.timeline-item:last-child:after{display:none}.timeline-item p{margin:.25rem 0;white-space:pre-wrap}.timeline-meta{font-size:.78rem;color:var(--muted)}
.split-actions{justify-content:space-between}.right-actions{display:flex;justify-content:flex-end;align-items:center;gap:.75rem}.compact{padding:.55rem .75rem}.customer-invoices-panel{margin-top:24px;padding:18px;border:1px solid var(--border);border-radius:14px;background:#f8f9fb}.customer-invoices-panel .section-heading{align-items:flex-start;margin-bottom:12px}.customer-invoices-panel h3{margin-bottom:4px}.customer-invoice-list{display:grid;gap:8px}.customer-invoice-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--brand);text-align:left;box-shadow:none}.customer-invoice-item:hover{border-color:#9aa5b9;background:#fdfdfd}.customer-invoice-item span:first-child{display:grid;gap:3px}.customer-invoice-item small{font-weight:400;color:var(--muted)}.customer-invoice-total{white-space:nowrap;font-weight:700}.invoice-section #invoice-owner{margin:4px 0 0}

/* Invoice editor */
.invoice-dialog{width:min(1180px,calc(100% - 32px));max-height:calc(100vh - 32px);overflow:auto}.invoice-form{padding:0}.invoice-section{padding:24px;border-bottom:1px solid var(--border)}.invoice-lines-wrap{overflow-x:auto}.invoice-lines-table{min-width:900px}.invoice-lines-table th,.invoice-lines-table td{padding:10px 8px}.invoice-lines-table input,.invoice-lines-table select{padding:.65rem}.invoice-lines-table th:nth-child(1){width:38%}.invoice-lines-table th:nth-child(2){width:100px}.invoice-lines-table th:nth-child(3){width:160px}.invoice-lines-table th:nth-child(4){width:110px}.invoice-lines-table th:nth-child(5){width:170px}.invoice-lines-table th:nth-child(6){width:48px}.invoice-totals{width:min(420px,100%);margin:22px 0 0 auto;display:grid;gap:8px}.invoice-totals>div{display:flex;justify-content:space-between;gap:16px;padding:4px 0}.invoice-grand-total{font-size:1.15rem;border-top:2px solid var(--brand);padding-top:12px!important}.invoice-form-actions{padding:20px 24px;position:sticky;bottom:0;background:#fff;border-top:1px solid var(--border);z-index:2;justify-content:space-between}.invoice-form-actions #invoice-save-status{margin-right:0}.invoice-lifecycle-section{padding:22px 24px 26px;border-bottom:1px solid var(--border);background:#fbfbfc}.lifecycle-heading{align-items:flex-start}.lifecycle-heading h3{margin-bottom:4px}.lifecycle-heading p{margin:0}.invoice-lifecycle{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:0;min-width:620px}.lifecycle-step{position:relative;display:grid;justify-items:center;text-align:center;gap:9px;padding:0 8px}.lifecycle-step:not(:last-child)::after{content:"";position:absolute;top:17px;left:calc(50% + 25px);right:calc(-50% + 25px);height:3px;background:#d8dde6;z-index:0}.lifecycle-step.is-complete:not(:last-child)::after{background:var(--brand)}.lifecycle-marker{position:relative;z-index:1;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;border:3px solid #cfd5df;background:#fff;color:#7a8495;font-weight:800}.lifecycle-step.is-complete .lifecycle-marker{background:var(--brand);border-color:var(--brand);color:#fff}.lifecycle-step.is-current .lifecycle-marker{border-color:var(--accent);background:#fff8ed;color:var(--brand);box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 18%,transparent)}.lifecycle-copy{display:grid;gap:2px}.lifecycle-copy strong{font-size:.92rem}.lifecycle-copy small{min-height:1.1em;color:var(--muted);font-size:.75rem}.lifecycle-step.is-upcoming .lifecycle-copy{color:#8b94a3}.invoice-footer-buttons,.invoice-draft-actions{display:flex;align-items:center;justify-content:flex-end;gap:.75rem}.invoice-form input:disabled,.invoice-form textarea:disabled,.invoice-form select:disabled{background:#f3f4f6;color:#485164;border-color:#e5e7eb;opacity:1}.invoice-form-actions #invoice-next-status{background:var(--accent);color:#172033}.invoice-history-section{background:#faf9f6}.invoice-history-section h3{margin-bottom:4px}.invoice-timeline{max-width:760px;margin-top:12px}.send-invoice-dialog{width:min(660px,calc(100% - 32px))}.send-invoice-dialog>form{padding:24px}.invoice-footer-buttons{flex-wrap:wrap}.invoice-footer-buttons #invoice-send{background:var(--accent);color:var(--text)}

@media(max-width:1180px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.settings-layout{grid-template-columns:1fr}.settings-side{position:static;grid-template-columns:minmax(280px,420px) 1fr}.dashboard-grid{grid-template-columns:1fr}.dashboard-grid-wide{grid-template-columns:1fr 1fr}}
@media(max-width:900px){
  .notification-tools{top:10px;right:68px}.notification-button{width:40px;height:40px}.calendar-toolbar{grid-template-columns:1fr}.calendar-toolbar h2{text-align:left}.calendar-toolbar>div:last-child{flex-wrap:wrap}.calendar-body{display:block;min-width:0}.calendar-day{min-height:70px}.calendar-day-head{margin:-7px -7px 7px}
  .app-sidebar{transform:translateX(-105%);transition:transform .2s ease}.app-sidebar.is-open{transform:translateX(0)}.sidebar-close{display:grid}.app-workspace{margin-left:0}.mobile-topbar{position:sticky;top:0;z-index:25;height:62px;display:grid;grid-template-columns:44px 1fr 34px;align-items:center;gap:10px;padding:0 16px;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.mobile-menu-button{display:grid;place-items:center;width:40px;height:40px;padding:0;background:transparent;color:var(--brand)}.mobile-menu-button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8}.mobile-logo{width:32px;height:32px;border-radius:9px}.app-content{padding-top:24px}.kpi-grid{grid-template-columns:repeat(2,1fr)}.settings-side{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .page-header{align-items:flex-start;flex-direction:column}.page-header>button{width:100%}.kpi-grid,.stats{grid-template-columns:1fr 1fr}.dashboard-grid-wide{grid-template-columns:1fr}.grid{grid-template-columns:1fr}.full{grid-column:auto}.pipeline-row{grid-template-columns:108px 1fr 30px}.settings-side{grid-template-columns:1fr}.settings-actions{align-items:stretch;flex-direction:column}.settings-actions #settings-save-status{margin-right:0}.settings-actions button{width:100%}.coming-soon{padding:34px 22px}.detail-layout{grid-template-columns:1fr}.timeline-panel{border-left:0;border-top:1px solid var(--border)}.detail-dialog,.invoice-dialog,.send-invoice-dialog{width:calc(100% - 16px)}.detail-layout>section,.timeline-panel,.invoice-section{padding:18px}.customer-invoices-panel .section-heading{display:grid;gap:12px}.customer-invoice-item{align-items:flex-start;flex-direction:column}.customer-invoice-total{align-self:flex-end}.invoice-lifecycle-section{padding:18px;overflow-x:auto}.invoice-lifecycle{margin-top:18px}.invoice-form-actions{align-items:stretch;flex-direction:column;flex-wrap:wrap}.invoice-footer-buttons{width:100%;display:grid;grid-template-columns:1fr}.invoice-draft-actions{display:grid;grid-template-columns:1fr 1fr}.invoice-footer-buttons button{width:100%}.send-invoice-dialog .form-actions{align-items:stretch;flex-direction:column}.send-invoice-dialog .form-actions button{width:100%}.right-actions{flex-wrap:wrap}.right-actions button{flex:1}
}
@media(max-width:520px){.app-content{padding:20px 14px 46px}.kpi-grid,.stats{grid-template-columns:1fr}.kpi-card{min-height:auto}.dashboard-card{padding:16px}.dashboard-table .card-heading{padding:16px 16px 8px}.sidebar-user{grid-template-columns:34px 1fr}.sidebar-user .text-button{grid-column:2;text-align:left}.invoice-draft-actions{grid-template-columns:1fr}}

/* 0.8 dashboard, inquiry inbox and customer directory */
.page-actions{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;flex-wrap:wrap}
.kpi-order-help{margin:-10px 0 14px;padding:10px 12px;border:1px dashed color-mix(in srgb,var(--accent) 60%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--accent) 7%,#fff)}
.kpi-card{transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.kpi-card[data-kpi-id]{user-select:none}
.kpi-card .kpi-drag-handle{position:absolute;top:10px;right:10px;width:30px;height:30px;display:grid;place-items:center;padding:0;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--muted);font-size:1rem;line-height:1;opacity:0;cursor:grab;z-index:2}
.kpi-grid.is-ordering .kpi-card{border-style:dashed;cursor:grab}
.kpi-grid.is-ordering .kpi-drag-handle{opacity:1}
.kpi-card.is-dragging{opacity:.45;transform:scale(.98)}
.kpi-card.is-drop-target{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}
.kpi-card.is-warning .kpi-value{color:var(--warning)}
.kpi-card.is-overdue{border-color:#efbbb6;background:#fffafa}.kpi-card.is-overdue .kpi-value{color:var(--danger)}
.kpi-card.is-upcoming{border-color:#ecd5ab;background:#fffdf8}.kpi-card.is-upcoming .kpi-value{color:var(--warning)}

.list-toolbar{display:grid;grid-template-columns:minmax(240px,1.4fr) minmax(170px,.7fr) minmax(190px,.8fr) auto;align-items:end;gap:14px;padding:16px;margin-bottom:16px;box-shadow:none}
.completed-toolbar{grid-template-columns:minmax(240px,1.4fr) repeat(4,minmax(145px,.6fr)) auto}.completed-row{cursor:pointer}.completed-row:hover,.completed-row:focus{background:#fafbfc;outline:none}.completed-kind{display:inline-flex;align-items:center;border-radius:999px;padding:.3rem .6rem;background:#edf4ff;color:#234b8b;font-size:.78rem;font-weight:750}.completed-title{display:block;margin-top:3px;color:var(--muted);font-size:.82rem}.status-completed,.status-won,.status-accepted,.status-paid{background:#e8f7ee;color:#17643a}.status-cancelled,.status-lost,.status-rejected,.status-expired{background:#f7ecec;color:#8a2d2d}
.toolbar-search-wide{grid-column:span 3}.toolbar-result{display:grid;justify-items:end;align-content:center;min-width:110px;padding-bottom:4px}.toolbar-result strong{font-size:1.3rem}.toolbar-result span{display:block}
.lead-table{min-width:1040px}.customer-table{min-width:1180px}.source-label{display:inline-flex;align-items:center;gap:6px;padding:.3rem .55rem;border:1px solid var(--border);border-radius:999px;background:#fff;font-size:.76rem;font-weight:720;white-space:nowrap}.source-label::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent)}
.lead-subject{display:grid;gap:4px}.lead-subject small,.contact-stack small{color:var(--muted);font-size:.78rem}.contact-stack{display:grid;gap:3px}.next-action.is-overdue{color:var(--danger);font-weight:750}.next-action.is-upcoming{color:var(--warning);font-weight:700}
.customer-row{cursor:pointer}.customer-row:hover,.customer-row:focus{background:#fafbfc;outline:none}.customer-name{display:grid;gap:3px}.customer-name small{color:var(--muted)}.customer-metric{display:grid;gap:2px}.customer-metric small{color:var(--muted)}

.customer-dialog{width:min(1160px,calc(100% - 32px))}.customer-detail-form{padding:0}.customer-detail-main{padding:24px}.customer-detail-stats{margin:22px 0}.customer-related-section{margin-top:24px}.embedded-table{border:1px solid var(--border);border-radius:12px;overflow:auto}.embedded-table table{min-width:680px}.customer-detail-actions{position:sticky;bottom:0;padding:18px 24px;background:#fff;border-top:1px solid var(--border);z-index:2}.customer-detail-actions #customer-save-status{margin-right:auto}.customer-related-row{cursor:pointer}.customer-related-row:hover,.customer-related-row:focus{background:#fafbfc;outline:none}

.checkbox-row{display:flex;grid-template-columns:none;align-items:center;gap:10px}.checkbox-row input{width:auto}.integration-fields{margin-top:14px}.integration-fields input[readonly]{background:#f5f6f8;color:#4b5565}.integration-actions{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;margin-top:12px}.settings-heading>button{flex:0 0 auto}
@media(max-width:980px){.list-toolbar{grid-template-columns:1fr 1fr}.toolbar-search-wide{grid-column:1/-1}.toolbar-result{justify-items:start}}
@media(max-width:760px){.page-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.page-actions button{width:100%}.list-toolbar{grid-template-columns:1fr}.toolbar-search-wide{grid-column:auto}.toolbar-result{justify-items:start}.customer-detail-main{padding:18px}.customer-detail-actions{align-items:stretch;flex-wrap:wrap}.customer-detail-actions button{flex:1}.integration-actions{display:grid;grid-template-columns:1fr}.integration-actions button{width:100%}}
@media(max-width:520px){.page-actions{grid-template-columns:1fr}.customer-detail-actions{display:grid;grid-template-columns:1fr}.customer-detail-actions #customer-save-status{margin:0}}
.kpi-drag-handle{touch-action:none}
.button-like{display:inline-flex;align-items:center;justify-content:center;background:var(--brand);color:#fff;border-radius:8px;padding:.72rem 1rem;font-weight:700;cursor:pointer}.receipt-months{display:grid;gap:18px}.receipt-month{padding:20px}.receipt-month .card-heading{padding:0 0 14px}.receipt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}.receipt-item{display:grid;gap:12px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fff}.receipt-preview{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;background:#f7f8fa;color:var(--text);text-align:left}.receipt-preview span{font-size:1.7rem}.receipt-preview strong{overflow-wrap:anywhere}.receipt-item>div:nth-child(2){display:grid;gap:5px}.receipt-item small{color:var(--muted)}.receipt-actions{display:grid;gap:8px}.status-inbox{background:#fff4dd;color:#7a4b00}.status-manual_transferred,.status-dinero_transferred{background:#e8f7ee;color:#17643a}@media(max-width:620px){.receipt-grid{grid-template-columns:1fr}.button-like{width:100%}}

/* 1.5.1 accounting spacing */
.accounting-layout .settings-heading{margin-bottom:0}
.accounting-layout .table-card .card-heading{padding:20px 22px 10px}
.accounting-layout .settings-side .settings-card>button{margin-top:14px}
.accounting-layout .settings-side .settings-card>p:last-child,
.accounting-layout .settings-side .settings-status>p:last-child{margin-bottom:0}
@media(max-width:520px){.accounting-layout .table-card .card-heading{padding:16px 16px 8px}}
.audit-toolbar{grid-template-columns:repeat(6,minmax(130px,1fr))}.audit-table{min-width:1120px}.audit-result{display:inline-flex;padding:.28rem .55rem;border-radius:999px;font-size:.76rem;font-weight:750}.audit-result-success{background:#e8f7ee;color:#17643a}.audit-result-failed{background:#f7ecec;color:#8a2d2d}.audit-fields{display:flex;flex-wrap:wrap;gap:4px}.audit-fields span{padding:.2rem .38rem;border-radius:5px;background:#f1f3f6;font-size:.72rem}.audit-pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:14px}@media(max-width:1100px){.audit-toolbar{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.audit-toolbar{grid-template-columns:1fr}.audit-pagination{justify-content:space-between}}
.job-dialog{width:min(900px,calc(100% - 32px));max-height:calc(100vh - 32px);overflow:auto}.job-dialog footer{display:flex;justify-content:flex-end;gap:10px;padding:18px 24px}.job-notes{border-top:1px solid var(--border);padding-top:18px}.job-notes>div:first-of-type{display:grid;gap:8px;max-height:220px;overflow:auto}.job-notes article{display:grid;gap:3px;padding:10px 12px;border-radius:8px;background:#f7f8fa}.job-notes article span{font-size:.72rem;color:var(--muted)}.job-notes article p{margin:4px 0 0;white-space:pre-wrap}.inline-note{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px;margin-top:12px}.job-priority{font-weight:750}.priority-high{color:#b45309}.priority-urgent{color:var(--danger)}#job-rows tr{cursor:pointer}#job-rows td:first-child{display:grid;gap:3px}#job-rows td:first-child small{color:var(--muted)}
@media(max-width:760px){.job-dialog{width:calc(100% - 16px)}.inline-note{grid-template-columns:1fr}.job-dialog footer{display:grid;grid-template-columns:1fr}.job-dialog footer button{width:100%}}
.smtp-account{border:1px solid var(--line,#dbe1e8);border-radius:12px;padding:16px;margin-top:12px}.smtp-account .smtp-users{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}.smtp-account .smtp-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}
.review-candidates{margin-top:18px;padding:20px}.review-candidates .card-heading{padding:0 0 12px}.review-candidate{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 4px;border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;color:var(--text);text-align:left}.review-candidate:last-child{border-bottom:0}.review-candidate span:first-child{display:grid;gap:3px}.review-candidate small,#review-rows td:first-child small{display:block;color:var(--muted);font-size:.78rem}.review-actions{white-space:nowrap}.status-draft{background:#eef1f5;color:#475569}.status-sent{background:#edf4ff;color:#234b8b}.report-toolbar{display:flex;align-items:end;gap:14px;padding:16px;margin-bottom:16px}.report-toolbar label{min-width:180px}.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.report-card{padding:20px}.report-card h2{margin-bottom:18px}.report-bars{display:grid;gap:12px}.report-bar{display:grid;grid-template-columns:minmax(90px,130px) 1fr minmax(100px,auto);align-items:center;gap:12px;font-size:.84rem}.report-bar i{height:10px;border-radius:999px;background:#edf0f4;overflow:hidden}.report-bar b{display:block;height:100%;border-radius:inherit;background:var(--accent)}.report-bar strong{text-align:right;font-size:.8rem}.report-kpis{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){.report-grid{grid-template-columns:1fr}.report-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.report-toolbar{display:grid;grid-template-columns:1fr}.report-toolbar label,.report-toolbar button{width:100%}.report-bar{grid-template-columns:90px 1fr}.report-bar strong{grid-column:2;text-align:left}.review-candidate{align-items:flex-start;flex-direction:column}.report-kpis{grid-template-columns:1fr}}
