:root{
  --bg:#f5f5f4;--surface:#fff;--surface-2:#fafaf9;--ink:#171717;--muted:#737373;--line:#e7e5e4;
  --brand:#ff6b00;--brand-2:#ff8a32;--brand-soft:#fff2e8;--good:#16803c;--good-soft:#ecfdf3;
  --warn:#b45309;--warn-soft:#fff7ed;--bad:#c62828;--bad-soft:#fff1f2;--info:#2563eb;--info-soft:#eff6ff;
  --shadow:0 18px 45px rgba(0,0,0,.07);--shadow-sm:0 7px 20px rgba(0,0,0,.055);--r:20px;--r-sm:14px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.45}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}
.shell{max-width:1500px;margin:auto;padding:0 28px 56px}.topbar{position:sticky;top:0;z-index:60;background:rgba(245,245,244,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(231,229,228,.85)}.topbar-inner{max-width:1500px;margin:auto;height:78px;padding:0 28px;display:flex;align-items:center;gap:22px}.brand{display:flex;align-items:center;gap:12px;min-width:220px}.brand img{width:43px;height:43px;object-fit:contain}.brand-copy strong{display:block;font-size:15px;letter-spacing:.04em}.brand-copy span{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.nav{display:flex;gap:6px;margin-left:auto}.nav a{padding:10px 14px;border-radius:12px;color:var(--muted);font-weight:750;font-size:14px}.nav a:hover,.nav a.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.nav a.active:after{content:"";display:block;width:18px;height:3px;background:var(--brand);border-radius:9px;margin:5px auto -5px}.top-actions{display:flex;align-items:center;gap:8px}.icon-btn,.btn{border:0;border-radius:12px;font-weight:800}.icon-btn{width:42px;height:42px;background:var(--surface);box-shadow:var(--shadow-sm);font-size:18px}.btn{padding:11px 15px;background:var(--ink);color:#fff}.btn:hover{transform:translateY(-1px)}.btn.brand{background:linear-gradient(135deg,var(--brand),var(--brand-2));box-shadow:0 10px 24px rgba(255,107,0,.22)}.btn.ghost{background:var(--surface);color:var(--ink);border:1px solid var(--line);box-shadow:none}.btn.soft{background:var(--brand-soft);color:#a74400}.btn.danger{background:var(--bad-soft);color:var(--bad)}.btn.small{padding:8px 11px;font-size:12px}.mobile-nav{display:none}
.hero{padding:42px 0 24px;display:flex;align-items:flex-end;justify-content:space-between;gap:22px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:var(--brand);font-weight:900}.hero h1{font-size:clamp(30px,4vw,48px);letter-spacing:-.045em;margin:7px 0 6px;line-height:1}.hero p{margin:0;color:var(--muted);max-width:750px}.hero-side{text-align:right;color:var(--muted);font-size:13px}.hero-side strong{display:block;color:var(--ink);font-size:16px}
.grid{display:grid;gap:18px}.metrics{grid-template-columns:repeat(5,1fr)}.metric,.card{background:var(--surface);border:1px solid rgba(231,229,228,.9);border-radius:var(--r);box-shadow:var(--shadow-sm)}.metric{padding:20px;min-height:124px;position:relative;overflow:hidden}.metric:before{content:"";position:absolute;right:-22px;top:-28px;width:80px;height:80px;border-radius:50%;background:var(--brand-soft)}.metric .label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:850}.metric .value{font-size:28px;font-weight:900;letter-spacing:-.035em;margin-top:11px}.metric .sub{font-size:12px;color:var(--muted);margin-top:3px}.metric.good .value{color:var(--good)}.metric.bad .value{color:var(--bad)}.metric.warn .value{color:var(--warn)}
.section{margin-top:22px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.section-head h2{font-size:19px;margin:0;letter-spacing:-.02em}.section-head p{margin:2px 0 0;color:var(--muted);font-size:13px}.card{padding:21px}.attention{background:linear-gradient(145deg,#1b1b1b,#292929);color:white;border:0;box-shadow:0 18px 38px rgba(0,0,0,.16)}.attention .section-head p{color:#bdbdbd}.attention-list{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.attention-item{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.09);border-radius:16px;padding:15px;transition:.15s}.attention-item:hover{background:rgba(255,255,255,.11);transform:translateY(-1px)}.attention-item .big{font-size:22px;font-weight:900;margin:4px 0}.attention-item .hint{font-size:12px;color:#c6c6c6}.dot{width:9px;height:9px;border-radius:50%;display:inline-block;margin-right:7px}.dot.red{background:#ef4444}.dot.amber{background:#f59e0b}.dot.green{background:#22c55e}.dot.orange{background:var(--brand)}
.charts{grid-template-columns:1.5fr 1fr 1fr}.chart-card{height:360px}.chart-wrap{height:280px;position:relative}.two-col{grid-template-columns:1.1fr .9fr}.three-col{grid-template-columns:repeat(3,1fr)}
.list{display:flex;flex-direction:column}.list-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 2px;border-bottom:1px solid var(--line)}.list-row:last-child{border:0}.list-main{min-width:0}.list-main strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-main span{font-size:12px;color:var(--muted)}.amount{font-weight:900}.status{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:900;text-transform:capitalize}.status.paid,.status.approved,.status.accepted{background:var(--good-soft);color:var(--good)}.status.part-paid,.status.sent,.status.pending{background:var(--warn-soft);color:var(--warn)}.status.overdue,.status.rejected,.status.declined{background:var(--bad-soft);color:var(--bad)}.status.draft{background:#f1f5f9;color:#475569}.status.unpaid{background:var(--bad-soft);color:var(--bad)}
.tabs{display:flex;gap:6px;padding:5px;background:#eae8e6;border-radius:15px;width:max-content;max-width:100%;overflow:auto}.tab{border:0;background:transparent;padding:10px 14px;border-radius:11px;font-weight:850;color:var(--muted);white-space:nowrap}.tab.active{background:var(--surface);color:var(--ink);box-shadow:0 4px 12px rgba(0,0,0,.07)}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0}.filters{display:flex;gap:7px;overflow:auto}.chip{border:1px solid var(--line);background:var(--surface);color:var(--muted);padding:8px 11px;border-radius:999px;font-size:12px;font-weight:850;white-space:nowrap}.chip.active{border-color:#ffcfad;background:var(--brand-soft);color:#9a4204}.search{position:relative;min-width:250px}.search input{width:100%;padding:11px 13px 11px 36px;border:1px solid var(--line);background:var(--surface);border-radius:13px;outline:none}.search:before{content:"⌕";position:absolute;left:12px;top:8px;color:var(--muted);font-size:20px}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:16px;background:var(--surface)}table{width:100%;border-collapse:collapse;min-width:760px}th{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;text-align:left;padding:12px 14px;background:var(--surface-2)}td{padding:13px 14px;border-top:1px solid var(--line);vertical-align:middle;font-size:13px}tbody tr{cursor:pointer}tbody tr:hover{background:#fffaf6}.row-actions{display:flex;gap:5px;justify-content:flex-end}.row-actions button{border:1px solid var(--line);background:#fff;border-radius:9px;padding:6px 9px;font-size:11px;font-weight:800}.mobile-cards{display:none}.empty{padding:46px;text-align:center;color:var(--muted)}
.customer-layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:18px}.customer-list{padding:10px;max-height:calc(100vh - 180px);overflow:auto;position:sticky;top:98px}.customer-card{padding:13px;border-radius:14px;cursor:pointer;border:1px solid transparent;margin-bottom:5px}.customer-card:hover{background:var(--surface-2)}.customer-card.active{background:var(--brand-soft);border-color:#ffd4b6}.customer-card strong{display:flex;justify-content:space-between;gap:7px}.customer-card span{display:block;color:var(--muted);font-size:12px;margin-top:4px}.customer-detail{min-height:600px}.customer-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:18px}.contact-actions{display:flex;flex-wrap:wrap;gap:7px}.contact-actions a{padding:8px 11px;background:var(--surface-2);border:1px solid var(--line);border-radius:11px;font-size:12px;font-weight:800}.mini-metrics{grid-template-columns:repeat(4,1fr)}.mini{background:var(--surface-2);border-radius:14px;padding:14px}.mini span{font-size:10px;text-transform:uppercase;color:var(--muted);font-weight:850;letter-spacing:.08em}.mini strong{display:block;font-size:20px;margin-top:6px}.checks{grid-template-columns:1fr 1fr}.check-card{border:1px solid var(--line);border-radius:15px;padding:15px}.check-card.overdue{border-color:#fecdd3;background:var(--bad-soft)}.check-card.soon{border-color:#fed7aa;background:var(--warn-soft)}.check-card.good{border-color:#bbf7d0;background:var(--good-soft)}.check-top{display:flex;justify-content:space-between;gap:10px}.check-date{font-size:20px;font-weight:900;margin-top:5px}.timeline-item{display:grid;grid-template-columns:34px 1fr auto;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.timeline-item:last-child{border:0}.timeline-icon{width:30px;height:30px;border-radius:10px;background:var(--surface-2);display:grid;place-items:center}.timeline-item span{font-size:12px;color:var(--muted)}
.modal{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(0,0,0,.48);backdrop-filter:blur(5px)}.modal.show{display:flex}.modal-card{width:min(780px,100%);max-height:92vh;overflow:auto;background:var(--surface);border-radius:24px;box-shadow:0 30px 80px rgba(0,0,0,.25)}.modal-card.wide{width:min(1050px,100%)}.modal-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.modal-head h3{margin:0;font-size:19px}.modal-body{padding:22px}.modal-foot{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:8px;padding:15px 22px;border-top:1px solid var(--line);background:rgba(255,255,255,.97)}.close{border:0;background:#f3f4f6;width:34px;height:34px;border-radius:10px;font-size:19px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:var(--muted)}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;padding:11px 12px;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:#ffb27a;box-shadow:0 0 0 3px var(--brand-soft)}.field textarea{min-height:90px;resize:vertical}.line-items{display:flex;flex-direction:column;gap:8px}.line-item{display:grid;grid-template-columns:1fr 90px 120px 34px;gap:7px}.line-item button{border:0;border-radius:10px;background:#f3f4f6}.total-bar{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:10px;font-size:14px}.total-bar strong{font-size:24px}.divider{height:1px;background:var(--line);margin:18px 0}.detail-title{display:flex;justify-content:space-between;gap:20px}.detail-title h2{margin:0;font-size:26px}.detail-title .doc-total{text-align:right;font-size:30px;font-weight:900}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.doc-preview{border:1px solid var(--line);border-radius:18px;padding:26px;background:#fff}.doc-preview .doc-logo{height:58px}.doc-items{width:100%;min-width:0;margin-top:22px}.doc-items th,.doc-items td{padding:10px}.payments{padding:0;margin:0;list-style:none}.payments li{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--line)}
.new-menu{position:fixed;z-index:80;right:28px;top:70px;width:240px;padding:8px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);display:none}.new-menu.show{display:block}.new-menu button{width:100%;text-align:left;border:0;background:transparent;padding:11px 12px;border-radius:11px;font-weight:800}.new-menu button:hover{background:var(--brand-soft)}.more-menu{position:absolute;right:0;top:46px;width:220px;background:#fff;border:1px solid var(--line);border-radius:15px;padding:7px;box-shadow:var(--shadow);display:none}.more-wrap{position:relative}.more-menu.show{display:block}.more-menu button{width:100%;text-align:left;border:0;background:#fff;border-radius:9px;padding:10px;font-weight:750}.more-menu button:hover{background:var(--surface-2)}
.toast{position:fixed;bottom:25px;right:25px;background:#171717;color:#fff;padding:12px 15px;border-radius:12px;box-shadow:var(--shadow);z-index:200;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}.toast.bad{background:var(--bad)}
@media(max-width:1050px){.metrics{grid-template-columns:repeat(3,1fr)}.attention-list{grid-template-columns:repeat(2,1fr)}.charts{grid-template-columns:1fr 1fr}.chart-card:first-child{grid-column:1/-1}.customer-layout{grid-template-columns:300px 1fr}.mini-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){body{padding-bottom:76px}.shell{padding:0 14px 30px}.topbar-inner{height:66px;padding:0 14px}.brand{min-width:0}.brand-copy{display:none}.brand img{width:39px;height:39px}.nav{display:none}.top-actions .icon-btn{display:none}.top-actions{margin-left:auto}.btn.brand.global-new{padding:10px 13px}.hero{padding:27px 0 18px;align-items:flex-start}.hero-side{display:none}.hero h1{font-size:34px}.metrics{grid-template-columns:1fr 1fr;gap:10px}.metric{padding:16px;min-height:105px}.metric .value{font-size:23px}.attention-list{grid-template-columns:1fr 1fr}.charts,.two-col,.three-col{grid-template-columns:1fr}.chart-card:first-child{grid-column:auto}.chart-card{height:330px}.toolbar{align-items:stretch;flex-direction:column}.search{min-width:0}.table-wrap{display:none}.mobile-cards{display:grid;gap:9px}.mobile-row{background:#fff;border:1px solid var(--line);border-radius:15px;padding:14px;display:grid;grid-template-columns:1fr auto;gap:8px}.mobile-row .meta{color:var(--muted);font-size:12px;margin-top:4px}.mobile-row .right{text-align:right}.customer-layout{display:block}.customer-list{position:static;max-height:310px;margin-bottom:12px}.customer-detail{min-height:0}.customer-head{flex-direction:column}.mini-metrics{grid-template-columns:1fr 1fr}.checks{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.line-item{grid-template-columns:1fr 70px 92px 34px}.detail-grid{grid-template-columns:1fr}.modal{padding:8px}.modal-card{border-radius:18px;max-height:96vh}.modal-body{padding:16px}.new-menu{right:14px;top:60px}.mobile-nav{display:grid;position:fixed;z-index:70;bottom:0;left:0;right:0;grid-template-columns:repeat(3,1fr);height:66px;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.mobile-nav a{display:grid;place-items:center;font-size:11px;font-weight:850;color:var(--muted)}.mobile-nav a span{display:block;font-size:19px;line-height:1}.mobile-nav a.active{color:var(--brand)}.attention-item .big{font-size:18px}.section{margin-top:16px}.card{padding:16px}}
@media print{.topbar,.mobile-nav,.hero,.no-print,.modal-head,.modal-foot{display:none!important}body{background:#fff}.modal{position:static;display:block!important;background:#fff;padding:0}.modal-card{box-shadow:none;max-height:none;width:100%;overflow:visible}.modal-body{padding:0}.doc-preview{border:0;padding:0}.detail-grid>.card{display:none}.shell{padding:0}.doc-preview{font-size:12px}}
