:root{--bg:#f5f7fb;--card:#fff;--ink:#07142f;--text:#101828;--muted:#667085;--line:#dce6f4;--blue:#155EEF;--blue2:#4f8cff;--cyan:#19c7f3;--violet:#7c3aed;--green:#12B76A;--red:#F04438;--amber:#F79009;--shadow:0 22px 70px rgba(9,31,82,.12);--soft:0 10px 28px rgba(9,31,82,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(circle at top right,#fff1fb 0,#f4f8ff 36%,#f8fbff 100%);color:var(--text);letter-spacing:-.01em}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.blue{color:var(--blue)}.muted{color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(135deg,var(--blue),#0d45d8);color:#fff;border:0;border-radius:16px;padding:13px 20px;font-weight:900;cursor:pointer;box-shadow:0 14px 32px rgba(21,94,239,.26);transition:.2s}.btn:hover{transform:translateY(-1px);box-shadow:0 20px 42px rgba(21,94,239,.31)}.btn.secondary{background:#fff;color:#0b1b34;border:1px solid var(--line);box-shadow:var(--soft)}.btn.danger{background:var(--red)}.btn.big{padding:17px 28px;border-radius:999px;font-size:17px}.btn.full{width:100%;height:58px;border-radius:999px}.pill{padding:7px 11px;border-radius:999px;font-weight:950;font-size:12px;background:#eafaf1;color:#027A48}.pill.draft{background:#eef4ff;color:var(--blue)}.pill.unpaid{background:#fff7ed;color:#c2410c}.pill.overdue{background:#fff1f3;color:#c01048}.alert{padding:14px 16px;border-radius:16px;background:#fff4e5;border:1px solid #fedf89;color:#93370d;font-weight:800}.footer-note{margin-top:30px;color:var(--muted);font-size:13px}.center{text-align:center}
/* Landing */.marketing-site{background:#fff;color:var(--ink);overflow-x:hidden}.marketing-nav{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 7vw;background:rgba(255,255,255,.78);backdrop-filter:blur(18px);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(220,230,244,.7)}.marketing-brand,.auth-logo{display:flex;align-items:center;gap:12px;font-size:25px;font-weight:950;letter-spacing:-.045em}.mark{width:42px;height:42px;border-radius:15px;background:linear-gradient(135deg,var(--blue),#21d4fd);display:inline-grid;place-items:center;color:#fff;font-size:14px;font-weight:950;box-shadow:0 16px 34px rgba(21,94,239,.28)}.marketing-links{display:flex;align-items:center;gap:30px;font-weight:850;color:#102a6b}.nav-cta{padding:12px 18px;border-radius:999px}.hero-premium{position:relative;display:grid;grid-template-columns:1.02fr .98fr;gap:54px;align-items:center;padding:96px 7vw 92px;background:radial-gradient(circle at 84% 15%,rgba(255,230,247,.95) 0,rgba(255,255,255,0) 38%),linear-gradient(180deg,#fff,#fbfdff)}.hero-premium:before{content:"";position:absolute;inset:auto 0 0 0;height:180px;background:linear-gradient(180deg,rgba(255,255,255,0),#d9f2ff);z-index:0}.hero-premium>*{position:relative}.rating{display:flex;gap:10px;align-items:center;color:#102a6b;font-weight:900;margin-bottom:26px}.stars{letter-spacing:.08em;color:#061846}.rating span:last-child{color:#58677d;font-weight:750}.eyebrow{letter-spacing:.27em;text-transform:uppercase;font-size:12px;color:#667085;font-weight:950}.hero-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:86px;line-height:.94;margin:14px 0 25px;letter-spacing:-.075em;color:#061846}.hero-copy h1 span{font-family:inherit}.lead{font-size:23px;line-height:1.55;color:#39506f;max-width:720px}.hero-actions{display:flex;gap:15px;margin:34px 0 26px}.trust-row{display:flex;gap:12px;flex-wrap:wrap;color:#5d6c83;font-weight:850}.trust-row span{padding:10px 14px;border:1px solid #e0e8f5;border-radius:999px;background:rgba(255,255,255,.84)}.hero-product{background:rgba(255,255,255,.75);border:1px solid #dce7f7;border-radius:34px;padding:14px;box-shadow:0 44px 100px rgba(9,31,82,.14);backdrop-filter:blur(18px);transform:perspective(1200px) rotateY(-4deg) rotateX(2deg)}.browser-top{height:48px;display:flex;align-items:center;gap:8px;padding:0 10px;color:#697891;font-weight:900}.browser-top i{width:12px;height:12px;border-radius:99px;background:#d9e5f5}.browser-top strong{margin-left:auto}.dashboard-mock{display:grid;grid-template-columns:150px 1fr;border:1px solid #e3edf9;border-radius:24px;overflow:hidden;background:#fff}.mock-sidebar{padding:18px;background:#f8fbff;border-right:1px solid #e6eef9;display:grid;gap:10px;align-content:start}.mock-sidebar b{margin-bottom:8px}.mock-sidebar span{padding:10px;border-radius:12px;color:#61708b;font-weight:800}.mock-sidebar .mock-active{background:#eaf3ff;color:var(--blue)}.mock-main{padding:18px}.mock-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.mock-header small{color:#667085;text-transform:uppercase;font-weight:900;letter-spacing:.14em}.mock-header h3{margin:5px 0 0;font-size:22px}.mock-header button,.mock-card button{background:var(--blue);color:#fff;border:0;border-radius:12px;padding:10px 14px;font-weight:900}.mock-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.mock-kpis div,.mock-card{border:1px solid #e2ecf8;border-radius:18px;background:#fbfdff;padding:14px}.mock-kpis small{color:#697891;font-weight:800}.mock-kpis b{display:block;font-size:22px;margin:7px 0}.mock-kpis em{color:#039855;font-style:normal;font-weight:900;font-size:12px}.mock-lower{display:grid;grid-template-columns:1.1fr .9fr;gap:12px;margin-top:12px}.mock-chart{height:190px;display:flex;align-items:end;gap:12px;padding:20px;background:linear-gradient(180deg,#eef8ff,#fff);border-radius:18px;border:1px solid #e2ecf8}.mock-chart i{flex:1;border-radius:9px 9px 0 0;background:linear-gradient(180deg,var(--blue),var(--cyan));box-shadow:0 12px 24px rgba(21,94,239,.16)}.mock-card h4{margin:0 0 10px}.mock-card p{font-size:14px;color:#506078}.proof-strip{display:flex;justify-content:space-around;gap:20px;flex-wrap:wrap;padding:28px 7vw;background:#cfeeff;color:#08286d;font-weight:950}.section,.pricing-section,.faq-section{padding:96px 7vw}.section-head{text-align:center;max-width:850px;margin:0 auto 48px}.section h2,.interactive-section h2,.workflow h2,.pricing-section h2,.faq-section h2{font-family:Georgia,"Times New Roman",serif;font-size:58px;line-height:1.02;letter-spacing:-.06em;color:#061846;margin:10px 0}.section-head p{font-size:19px;line-height:1.65;color:#52627b}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.feature-grid article,.scan-demo,.pricing-card,.faq details,.steps div{background:#fff;border:1px solid #dfe8f6;border-radius:28px;padding:28px;box-shadow:var(--soft);transition:.22s}.feature-grid article:hover,.steps div:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.feature-grid h3,.steps h3{font-size:23px;margin:18px 0 10px}.feature-grid p,.interactive-section p,.pricing-card p,.steps p,.faq p{color:#54657e;line-height:1.65}.icon{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#edf5ff,#e7fbff);color:var(--blue);font-weight:950;font-size:23px}.interactive-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center;padding:96px 7vw;background:#f7fbff}.checklist{list-style:none;padding:0;margin:24px 0;display:grid;gap:13px}.checklist li:before{content:'✓';color:var(--green);font-weight:950;margin-right:10px}.scan-demo{background:linear-gradient(135deg,#fff,#f0f8ff)}.scan-tabs{display:flex;background:#eaf3ff;border-radius:16px;padding:6px;margin-bottom:18px}.scan-tabs button{flex:1;border:0;background:transparent;border-radius:12px;padding:12px;font-weight:950;color:#42526a;cursor:pointer}.scan-tabs button.active{background:#fff;color:var(--blue);box-shadow:var(--soft)}.scan-panel{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.scan-panel div{background:#fff;border:1px solid #deebf8;border-radius:18px;padding:16px}.scan-panel small{display:block;color:#667085;font-weight:800}.scan-panel b{display:block;color:#061846;margin-top:8px;font-size:18px}.confidence{grid-column:1/-1;height:12px;padding:0!important;overflow:hidden;background:#e3edf8!important}.confidence span{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--cyan));border-radius:999px;transition:.35s}.scan-panel .btn{grid-column:1/-1}.workflow{padding:96px 7vw;background:#fff}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.steps b{color:var(--blue);font-size:14px;letter-spacing:.22em}.pricing-card{max-width:1050px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;background:radial-gradient(circle at right,#dff5ff 0,#fff 46%)}.pricing-card h2{font-size:48px}.faq{max-width:850px;margin:0 auto;display:grid;gap:12px}.faq summary{font-size:18px;font-weight:950;cursor:pointer}.marketing-footer{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:32px 7vw;border-top:1px solid #e6edf7;color:#4d5d75}.marketing-footer a{color:var(--blue);font-weight:950}.reveal{opacity:0;transform:translateY(18px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}
/* Auth */.auth-page{min-height:100vh;background:radial-gradient(circle at 70% 5%,#ffeaf7 0,#fff 38%,#f5fbff 100%);padding:42px}.auth-logo{justify-content:center;margin-bottom:34px}.auth-shell{max-width:1060px;margin:0 auto;display:grid;grid-template-columns:1fr .78fr;gap:24px;align-items:stretch}.auth-card,.auth-benefits{background:rgba(255,255,255,.9);border:1px solid #dfe8f6;border-radius:34px;padding:38px;box-shadow:0 30px 80px rgba(8,36,92,.11)}.auth-card h1{font-family:Georgia,"Times New Roman",serif;font-size:46px;margin:10px 0 8px;letter-spacing:-.055em}.auth-sub{font-size:18px;color:#64748b;line-height:1.55}.social-btn{height:58px;border:1.5px solid #cad7e8;border-radius:999px;display:flex;align-items:center;justify-content:center;gap:12px;font-weight:950;margin:24px 0 10px;background:#fff}.social-btn.disabled{opacity:.55;pointer-events:none}.google-dot{font-weight:950;color:var(--blue)}.setup-note{font-size:13px;color:#7a4b00;background:#fff8e6;border:1px solid #fedf89;border-radius:14px;padding:12px}.or{display:flex;align-items:center;gap:12px;color:#7a8798;margin:22px 0}.or span{height:1px;background:#d9e3f1;flex:1}.password-row{display:flex;position:relative}.password-row input{padding-right:72px}.password-row button{position:absolute;right:8px;top:8px;bottom:8px;border:0;background:#eef5ff;color:var(--blue);border-radius:10px;font-weight:900;padding:0 13px}.optional{border:1px solid #e0e8f5;border-radius:16px;padding:14px}.optional summary{font-weight:900;cursor:pointer}.optional label{margin-top:14px}.auth-benefits{background:linear-gradient(135deg,#08276f,var(--blue));color:#fff;display:grid;align-content:center;gap:22px}.auth-benefits h2{font-family:Georgia,"Times New Roman",serif;font-size:40px;letter-spacing:-.05em;line-height:1.05}.auth-benefits div{padding:18px;border:1px solid rgba(255,255,255,.22);border-radius:20px;background:rgba(255,255,255,.08)}.auth-benefits b,.auth-benefits span{display:block}.auth-benefits span{opacity:.84;margin-top:6px;line-height:1.5}
/* App */.app{display:grid;grid-template-columns:292px 1fr;min-height:100vh}.sidebar{background:rgba(255,255,255,.88);border-right:1px solid var(--line);padding:30px;position:sticky;top:0;height:100vh;box-shadow:10px 0 40px rgba(9,31,82,.04)}.logo{display:flex;align-items:center;gap:13px;margin-bottom:42px}.logo-badge{width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;display:grid;place-items:center;font-weight:950;box-shadow:0 14px 34px rgba(21,94,239,.24)}.brand{font-weight:950;font-size:24px;letter-spacing:-.05em}.menu{display:grid;gap:8px}.menu a{padding:14px 16px;border-radius:16px;font-weight:900;color:#24334a;display:flex;gap:12px;align-items:center}.menu a span{width:22px;text-align:center;color:#64748b}.menu a.active,.menu a:hover{background:#eef5ff;color:var(--blue);box-shadow:inset 3px 0 0 var(--blue)}.sidebar-footer{position:absolute;bottom:28px;left:28px;right:28px;padding:18px}.logout{display:block;color:var(--blue);font-weight:900;margin-top:10px}.main{padding:38px 44px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:18px}.title{font-family:Georgia,"Times New Roman",serif;font-size:42px;margin:5px 0 0;letter-spacing:-.055em}.actions{display:flex;gap:12px;flex-wrap:wrap}.grid{display:grid;gap:18px}.grid.cols-4{grid-template-columns:repeat(4,1fr)}.grid.cols-2{grid-template-columns:repeat(2,1fr)}.card{background:rgba(255,255,255,.9);border:1px solid var(--line);border-radius:28px;box-shadow:var(--soft);backdrop-filter:blur(16px);padding:24px}.kpi{position:relative;overflow:hidden}.kpi:after{content:"";position:absolute;right:-35px;top:-45px;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,rgba(21,94,239,.16),transparent 70%)}.kpi small{font-weight:900;color:var(--muted)}.kpi b{font-size:32px;display:block;margin:9px 0}.green{color:var(--green)}.red{color:var(--red)}table{width:100%;border-collapse:separate;border-spacing:0}th{text-align:left;color:#667085;font-size:12px;text-transform:uppercase;letter-spacing:.08em}td,th{padding:16px;border-bottom:1px solid var(--line)}tr:hover td{background:#fbfdff}.form{display:grid;gap:16px}.form.two{grid-template-columns:repeat(2,1fr)}label{display:grid;gap:8px;font-weight:850;color:#53627a}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:16px;padding:14px 15px;background:#fff;color:#101828;outline:none;transition:.16s}input:focus,select:focus,textarea:focus{border-color:#94bfff;box-shadow:0 0 0 4px rgba(21,94,239,.1)}textarea{min-height:115px}.invoice-paper{background:#fff;border-radius:22px;border:1px solid var(--line);overflow:hidden;box-shadow:var(--soft)}.invoice-head{background:linear-gradient(135deg,#e3f8ff,#f7fcff);padding:48px 58px}.invoice-head-top{display:flex;justify-content:space-between;align-items:flex-start}.invoice-head h1{font-family:Inter,ui-sans-serif,sans-serif;font-size:52px;color:#0984d8;margin:0;letter-spacing:-.04em}.jp-logo{border:2px solid #111827;padding:12px 24px;font-weight:950;font-size:25px;letter-spacing:.08em;background:#fff}.invoice-columns{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:50px;margin-top:42px}.invoice-columns h3{color:#0984d8;margin:0 0 16px}.details-row{display:flex;justify-content:space-between;border-bottom:1px solid #bfe8f7;padding:12px 0}.invoice-body{padding:42px 58px}.totals{margin-left:auto;width:42%}.total-due{background:#e6f8ff;font-weight:950}.doc-preview{height:430px;overflow:auto;border:1px solid var(--line);border-radius:18px;background:#fff;padding:18px}.hide{display:none}@media(max-width:1080px){.marketing-links a:not(.btn){display:none}.hero-premium,.interactive-section,.auth-shell{grid-template-columns:1fr}.hero-product{transform:none}.feature-grid,.steps{grid-template-columns:repeat(2,1fr)}.hero-copy h1{font-size:62px}.section h2,.interactive-section h2,.workflow h2,.pricing-section h2,.faq-section h2{font-size:44px}.app{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.sidebar-footer{position:static;margin-top:24px}.main{padding:28px 22px}.grid.cols-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.marketing-nav{padding:0 22px}.marketing-links .btn{display:none}.hero-premium,.section,.interactive-section,.workflow,.pricing-section,.faq-section{padding-left:22px;padding-right:22px}.hero-copy h1{font-size:46px}.lead{font-size:18px}.hero-actions,.pricing-card{display:grid}.dashboard-mock,.mock-lower,.feature-grid,.steps,.grid.cols-4,.grid.cols-2,.form.two,.invoice-columns,.scan-panel{grid-template-columns:1fr}.mock-sidebar{display:none}.invoice-head,.invoice-body{padding:28px}.totals{width:100%}.auth-page{padding:22px}}

/* =========================================================
   Klarvo Lime Edition — black / white / lime theme
   Modern crisp SaaS visual system
   ========================================================= */
:root{
  --bg:#f7f8f3;
  --card:#ffffff;
  --ink:#050706;
  --text:#0a0d0b;
  --muted:#697064;
  --line:#e3e8dc;
  --blue:#b7ff37;
  --blue2:#d9ff7a;
  --cyan:#b7ff37;
  --violet:#0a0d0b;
  --green:#8ee600;
  --red:#ef4444;
  --amber:#f59e0b;
  --shadow:0 26px 80px rgba(10,13,11,.10);
  --soft:0 12px 34px rgba(10,13,11,.07);
}
body{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  background:radial-gradient(circle at 78% 0%,rgba(183,255,55,.18),transparent 34%),linear-gradient(180deg,#fbfcf8,#f6f8f2);
  color:var(--text);
  letter-spacing:-.025em;
}
.blue{color:#111}
.eyebrow,.eyebrow.blue{color:#6d7664;letter-spacing:.24em;font-weight:950}
.btn{
  background:#0a0d0b;
  color:#fff;
  border:1px solid #0a0d0b;
  border-radius:999px;
  box-shadow:0 14px 32px rgba(10,13,11,.18);
}
.btn:hover{box-shadow:0 20px 45px rgba(10,13,11,.22)}
.btn.secondary{background:#fff;color:#0a0d0b;border-color:#d8dfcf;box-shadow:var(--soft)}
.btn.big{border-radius:999px;padding:18px 30px}
.pill{background:#eaffc7;color:#274300;border:1px solid #c9fb67}.pill.draft{background:#f1f5e9;color:#111}.pill.unpaid{background:#fff8e6;color:#8a5200}.pill.overdue{background:#fff1f1;color:#b42318}

/* Landing lime edition */
.marketing-site{background:#fbfcf8;color:#050706}.marketing-nav{background:rgba(251,252,248,.86);border-bottom:1px solid #e6ebdf;backdrop-filter:blur(22px)}
.marketing-brand,.auth-logo{font-weight:950;letter-spacing:-.06em}.mark,.logo-badge{background:#0a0d0b;color:#b7ff37;border:1px solid rgba(183,255,55,.55);box-shadow:0 18px 42px rgba(10,13,11,.18)}
.marketing-links{color:#101410}.nav-cta{background:#b7ff37;color:#0a0d0b;border-color:#b7ff37;box-shadow:0 14px 34px rgba(183,255,55,.35)}
.hero-premium{background:radial-gradient(circle at 80% 12%,rgba(183,255,55,.22),transparent 36%),linear-gradient(180deg,#fbfcf8,#fff);gap:68px}.hero-premium:before{height:220px;background:linear-gradient(180deg,rgba(255,255,255,0),#0a0d0b)}
.rating{color:#121512}.stars{color:#b7ff37;text-shadow:0 0 20px rgba(183,255,55,.25)}.rating span:last-child{color:#6b7468}.hero-copy h1,.section h2,.interactive-section h2,.workflow h2,.pricing-section h2,.faq-section h2,.auth-card h1,.auth-benefits h2,.title{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  color:#050706;
  font-weight:950;
  letter-spacing:-.085em;
}
.hero-copy h1{font-size:88px;line-height:.9}.hero-copy h1 span{color:#151a15}.lead{color:#4f594b}.trust-row span{background:rgba(255,255,255,.72);border-color:#dfe6d6;color:#55604f}.hero-product{background:rgba(255,255,255,.8);border:1px solid #dfe7d5;box-shadow:0 46px 120px rgba(10,13,11,.13)}
.browser-top i{background:#dbe4d2}.dashboard-mock{border-color:#dfe7d5}.mock-sidebar{background:#f7faf1;border-color:#e5ecd9}.mock-sidebar .mock-active{background:#eaffc7;color:#0a0d0b}.mock-header small{color:#707a6b}.mock-header button,.mock-card button{background:#0a0d0b;color:#b7ff37;border-radius:999px}.mock-kpis div,.mock-card,.feature-grid article,.scan-demo,.pricing-card,.faq details,.steps div{border-color:#e0e7d8;border-radius:32px;background:#fff}.mock-kpis em{color:#3c6500}.mock-chart{background:linear-gradient(180deg,#f2ffd9,#fff);border-color:#e2ead8}.mock-chart i{background:linear-gradient(180deg,#0a0d0b,#b7ff37);box-shadow:0 12px 24px rgba(10,13,11,.16)}
.proof-strip{background:#0a0d0b;color:#b7ff37}.feature-grid article:hover,.steps div:hover{transform:translateY(-5px)}.icon{background:#efffd4;color:#0a0d0b;border:1px solid #d6ff8a}.interactive-section{background:#0a0d0b;color:#fff}.interactive-section h2,.interactive-section .eyebrow,.interactive-section .eyebrow.blue{color:#fff}.interactive-section p,.interactive-section .checklist{color:#cfd8c7}.checklist li:before{color:#b7ff37}.scan-demo{background:#fbfcf8;color:#0a0d0b}.scan-tabs{background:#eef4e7}.scan-tabs button.active{color:#0a0d0b}.scan-panel div{border-color:#e0e7d8}.confidence span{background:linear-gradient(90deg,#0a0d0b,#b7ff37)}.workflow{background:#fbfcf8}.pricing-card{background:radial-gradient(circle at 94% 12%,rgba(183,255,55,.35),transparent 42%),#fff}.marketing-footer{background:#0a0d0b;color:#d9e2d1;border-top:0}.marketing-footer a{color:#b7ff37}

/* Auth lime edition */
.auth-page{background:radial-gradient(circle at 75% 4%,rgba(183,255,55,.22),transparent 36%),#fbfcf8}.auth-card,.auth-benefits{border-color:#e1e8d9;border-radius:36px}.auth-benefits{background:#0a0d0b;color:#fff}.auth-benefits div{border-color:rgba(183,255,55,.25);background:rgba(183,255,55,.08)}.social-btn{border-color:#d9e1d0}.password-row button{background:#ecffd0;color:#0a0d0b}.setup-note{background:#f6ffe5;border-color:#d7ff8a;color:#354c00}

/* App lime edition */
.app{background:radial-gradient(circle at 92% 0%,rgba(183,255,55,.18),transparent 30%),#f7f8f3}.sidebar{background:rgba(255,255,255,.88);border-right:1px solid #e1e8d9;box-shadow:14px 0 42px rgba(10,13,11,.04)}.brand{letter-spacing:-.065em}.menu a{color:#1b211b;border-radius:999px}.menu a span{color:#737d6f}.menu a.active,.menu a:hover{background:#0a0d0b;color:#b7ff37;box-shadow:none}.menu a.active span,.menu a:hover span{color:#b7ff37}.card{border-color:#e1e8d9;background:rgba(255,255,255,.92);border-radius:30px}.kpi:after{background:radial-gradient(circle,rgba(183,255,55,.25),transparent 70%)}.kpi b{color:#080b08}th{color:#667060}td,th{border-color:#e1e8d9}tr:hover td{background:#fbfff3}input,select,textarea{border-color:#dce5d4;border-radius:18px}input:focus,select:focus,textarea:focus{border-color:#b7ff37;box-shadow:0 0 0 4px rgba(183,255,55,.23)}.invoice-paper{border-color:#e1e8d9;border-radius:28px}.invoice-head{background:linear-gradient(135deg,#f3ffe0,#fff)}.invoice-head h1{font-family:Inter,ui-sans-serif,sans-serif;color:#0a0d0b;font-weight:950}.jp-logo{border-radius:999px;border-color:#0a0d0b;background:#fff}.invoice-columns h3{color:#0a0d0b}.details-row{border-color:#dfe8d3}.total-due{background:#efffd3}.doc-preview{border-color:#e1e8d9;border-radius:24px}

@media(max-width:1080px){.hero-copy h1{font-size:64px}}@media(max-width:720px){.hero-copy h1{font-size:48px}}

/* =========================================================
   Klarvo Lime Edition v2 — refined typography + black hero
   Cleaner spacing, lighter sans typography, premium crisp contrast
   ========================================================= */
:root{
  --lime:#b7ff37;
  --black:#050706;
  --charcoal:#0b0f0c;
  --offwhite:#fbfcf8;
  --softline:#e4ebdc;
}
body{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  letter-spacing:-.012em;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.marketing-nav{height:82px;background:rgba(251,252,248,.9)}
.marketing-brand,.auth-logo{font-weight:760;letter-spacing:-.035em}.marketing-brand span:last-child{font-weight:760}.marketing-links{gap:28px;font-weight:650;letter-spacing:-.01em}.mark{font-weight:760;border-radius:14px}.btn{font-weight:700;letter-spacing:-.01em;border-radius:999px}.btn.big{font-size:16px;padding:16px 26px}.nav-cta{padding:12px 20px}
.hero-premium{
  min-height:760px;
  grid-template-columns:.92fr 1.08fr;
  align-items:center;
  gap:76px;
  padding:104px 7vw 106px;
  background:
    radial-gradient(circle at 16% 18%,rgba(183,255,55,.20),transparent 26%),
    radial-gradient(circle at 86% 18%,rgba(183,255,55,.12),transparent 34%),
    linear-gradient(135deg,#050706 0%,#0d120e 52%,#11170f 100%);
  overflow:hidden;
}
.hero-premium:before{
  inset:0;
  height:auto;
  background:
    linear-gradient(90deg,rgba(183,255,55,.08) 1px,transparent 1px),
    linear-gradient(180deg,rgba(183,255,55,.06) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(circle at 20% 15%,black,transparent 70%);
  opacity:.45;
}
.hero-premium:after{
  content:"";
  position:absolute;
  right:-120px;
  bottom:-180px;
  width:620px;
  height:620px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(183,255,55,.20),transparent 64%);
  filter:blur(8px);
}
.hero-copy{max-width:690px}.rating{margin-bottom:22px;color:#d9e4d1;font-weight:560}.rating span:last-child{color:#b8c5b0;font-weight:520}.stars{color:var(--lime);letter-spacing:.04em;text-shadow:0 0 26px rgba(183,255,55,.18)}
.hero-copy .eyebrow,.hero-copy .eyebrow.blue{color:var(--lime);font-size:12px;font-weight:720;letter-spacing:.22em;margin-bottom:18px}.hero-copy h1{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  color:#fff;
  font-size:clamp(56px,5.4vw,88px);
  line-height:.98;
  font-weight:680;
  letter-spacing:-.062em;
  margin:0 0 28px;
  max-width:760px;
}
.hero-copy h1 span{color:#e8f1e3;font-weight:680}.lead{font-size:21px;line-height:1.65;color:#c3cebd;max-width:670px;font-weight:420;letter-spacing:-.012em}.hero-actions{margin:38px 0 28px;gap:14px}.hero-actions .btn{background:var(--lime);color:#050706;border-color:var(--lime);box-shadow:0 18px 44px rgba(183,255,55,.22)}.hero-actions .btn.secondary{background:rgba(255,255,255,.06);color:#f6fff2;border-color:rgba(255,255,255,.14);box-shadow:none}.hero-actions .btn.secondary:hover{background:rgba(255,255,255,.10)}.trust-row{gap:10px;color:#d3decf;font-weight:560}.trust-row span{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.13);color:#d9e5d4;padding:10px 13px}
.hero-product{
  background:rgba(255,255,255,.96);
  border:1px solid rgba(255,255,255,.18);
  border-radius:34px;
  transform:perspective(1200px) rotateY(-2deg) rotateX(1deg);
  box-shadow:0 40px 120px rgba(0,0,0,.38),0 0 0 1px rgba(183,255,55,.08);
}
.browser-top{font-weight:600;color:#66705f}.dashboard-mock{border-radius:24px}.mock-sidebar b,.mock-header h3,.mock-kpis b,.mock-card h4{font-weight:720;letter-spacing:-.025em}.mock-sidebar span,.mock-header small,.mock-kpis small,.mock-kpis em,.mock-card p{font-weight:560}.mock-header button,.mock-card button{font-weight:700}.mock-kpis b{font-size:21px}.mock-chart i{background:linear-gradient(180deg,#11170f,var(--lime))}
.proof-strip{padding:24px 7vw;font-weight:680;letter-spacing:-.01em}.section,.pricing-section,.faq-section,.workflow{padding-top:104px;padding-bottom:104px}.section h2,.interactive-section h2,.workflow h2,.pricing-section h2,.faq-section h2,.auth-card h1,.auth-benefits h2,.title{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  font-weight:680;
  letter-spacing:-.055em;
  line-height:1.06;
}
.section h2,.interactive-section h2,.workflow h2,.pricing-section h2,.faq-section h2{font-size:clamp(42px,4vw,64px)}.section-head p{font-size:18px;line-height:1.7;font-weight:420}.feature-grid article,.scan-demo,.pricing-card,.faq details,.steps div{border-radius:30px;padding:30px}.feature-grid h3,.steps h3{font-size:22px;font-weight:680;letter-spacing:-.035em}.feature-grid p,.interactive-section p,.pricing-card p,.steps p,.faq p{font-weight:420}.icon{font-weight:700}.scan-tabs button,.scan-panel small,.scan-panel b,.faq summary,label,th{font-weight:650}.pricing-card h2{font-size:clamp(40px,3.5vw,56px)}
.app .title{font-weight:680;letter-spacing:-.045em}.sidebar .brand{font-weight:760}.menu a{font-weight:650}.card{border-radius:28px}.kpi small{font-weight:650}.kpi b{font-weight:680;letter-spacing:-.045em}.btn.full{font-weight:700}input,select,textarea{font-weight:450}.invoice-head h1{font-weight:680}.jp-logo{font-weight:720}
@media(max-width:1080px){.hero-premium{grid-template-columns:1fr;min-height:auto;gap:42px}.hero-product{transform:none}.hero-copy h1{font-size:clamp(52px,8vw,74px)}}
@media(max-width:720px){.hero-premium{padding-top:72px;padding-bottom:76px}.hero-copy h1{font-size:46px}.lead{font-size:18px}.trust-row span{width:100%}.marketing-brand{font-size:22px}}

/* =========================================================
   Klarvo Final Minimal — less green, premium logo, calmer hero
   ========================================================= */
:root{
  --accent:#d7ff5f;
  --accent-soft:rgba(215,255,95,.10);
  --accent-line:rgba(215,255,95,.18);
  --deep:#050607;
  --deep2:#0b0d0f;
}
.marketing-brand,.logo{gap:14px}.mark,.logo-badge{
  width:40px;height:40px;border-radius:13px;
  background:linear-gradient(145deg,#fff,#dfe7da);
  color:#050607;border:1px solid rgba(255,255,255,.55);
  box-shadow:0 12px 28px rgba(0,0,0,.18), inset 0 0 0 1px rgba(255,255,255,.5);
  font-weight:760;letter-spacing:-.06em;
}
.marketing-brand span:last-child,.brand{font-weight:720;letter-spacing:-.045em;color:inherit}.marketing-nav{background:rgba(251,252,248,.92);backdrop-filter:blur(22px)}
.hero-premium{
  background:
    radial-gradient(circle at 18% 18%,rgba(215,255,95,.105),transparent 25%),
    radial-gradient(circle at 88% 10%,rgba(255,255,255,.075),transparent 30%),
    linear-gradient(135deg,#040505 0%,#0a0c0d 48%,#101214 100%);
}
.hero-premium:before{
  background:
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.028) 1px,transparent 1px);
  background-size:72px 72px;opacity:.55;
}
.hero-premium:after{background:radial-gradient(circle,rgba(215,255,95,.09),transparent 67%);filter:blur(16px)}
.hero-copy .eyebrow,.hero-copy .eyebrow.blue{color:#d7ff5f;opacity:.92;letter-spacing:.20em}.stars{color:#d7ff5f;text-shadow:none}.rating{color:#d7e0d0}.rating span:last-child{color:#aeb8aa}.hero-copy h1{font-weight:620;letter-spacing:-.058em;color:#fbfff7}.hero-copy h1 span{color:#dce8d5}.lead{color:#bac5b6;font-weight:400}.hero-actions .btn{background:#f6fff0;color:#050607;box-shadow:0 18px 50px rgba(255,255,255,.10)}.hero-actions .btn:hover{box-shadow:0 22px 60px rgba(255,255,255,.16)}.hero-actions .btn.secondary{background:rgba(255,255,255,.055);color:#eef7ea;border-color:rgba(255,255,255,.13)}.trust-row span{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.115);color:#c7d1c4}
.hero-product{box-shadow:0 38px 118px rgba(0,0,0,.42),0 0 0 1px rgba(255,255,255,.08);border-color:rgba(255,255,255,.12)}.mock-chart{background:linear-gradient(180deg,#f8faf4,#fff)}.mock-chart i{background:linear-gradient(180deg,#111315,#cfe86f)}.mock-header button,.mock-card button{background:#0b0d0f;color:#f4ffe8}.mock-sidebar .mock-active{background:#f3f8e8;color:#0b0d0f}.proof-strip{background:#050607;color:#e4eddc}.icon{background:#f3f8e8;border-color:#e3eadc;color:#0b0d0f}.interactive-section{background:#060708}.confidence span{background:linear-gradient(90deg,#111315,#d8ec7a)}.pricing-card{background:radial-gradient(circle at 94% 12%,rgba(215,255,95,.12),transparent 40%),#fff}.menu a.active,.menu a:hover{background:#0b0d0f;color:#f1ffe0}.menu a.active span,.menu a:hover span{color:#d7ff5f}.btn{background:#0b0d0f;color:#f6fff0;box-shadow:0 14px 32px rgba(8,10,12,.14)}.btn.secondary{background:#fff;color:#0b0d0f;border-color:#e0e7d8}.btn.danger{background:#ef4444;color:#fff}.btn.full{height:56px}.card,.feature-grid article,.scan-demo,.pricing-card,.faq details,.steps div{box-shadow:0 16px 50px rgba(12,16,20,.07)}

/* =========================================================
   Klarvo Dark Premium Final — customer-facing hero polish
   Inspired by premium SaaS landing pages. Less fake gradient,
   proper lime CTA, readable text, dark professional product mockup.
   ========================================================= */
:root{--lp-lime:#d9ff63;--lp-dark:#050608;--lp-panel:#0b0d10;--lp-border:rgba(255,255,255,.12);--lp-muted:#aeb7aa;}
.marketing-site{background:#050608;color:#f7faf4}.marketing-nav{background:rgba(5,6,8,.82);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(24px);color:#f8fff2}.marketing-links a{color:#e8eee4}.marketing-links a:not(.btn):hover{color:var(--lp-lime)}.marketing-brand{color:#fff}.mark{background:transparent;color:var(--lp-lime);border:1.5px solid var(--lp-lime);box-shadow:none;font-weight:700}.nav-cta{background:var(--lp-lime)!important;color:#050608!important;box-shadow:0 14px 34px rgba(217,255,99,.20)!important}
.hero-premium{min-height:820px;padding:110px 7vw 100px;grid-template-columns:.9fr 1.1fr;gap:72px;background:radial-gradient(circle at 70% 22%,rgba(217,255,99,.08),transparent 28%),radial-gradient(circle at 10% 10%,rgba(255,255,255,.06),transparent 32%),linear-gradient(180deg,#050608 0%,#07090b 58%,#050608 100%)}.hero-premium:before{opacity:.22;background:linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:86px 86px;mask-image:linear-gradient(90deg,black,transparent 88%)}.hero-premium:after{display:none}.hero-copy h1{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:clamp(62px,6vw,96px);line-height:1.02;font-weight:430;letter-spacing:-.075em;color:#fff;margin-bottom:30px}.hero-copy h1 span{font-weight:430;color:#fff}.hero-copy .eyebrow,.hero-copy .eyebrow.blue{color:var(--lp-lime);font-weight:650;letter-spacing:.16em}.rating{color:#dbe2d7;font-weight:500}.rating span:last-child{color:#aab5a6;font-weight:450}.lead{font-size:20px;line-height:1.7;color:#c1cabd;font-weight:400;max-width:640px}.hero-actions .btn:first-child{background:var(--lp-lime)!important;color:#050608!important;box-shadow:0 18px 50px rgba(217,255,99,.22)!important}.hero-actions .btn:first-child:after{content:'→';font-size:22px;margin-left:6px}.hero-actions .btn.secondary{background:rgba(255,255,255,.05)!important;color:#fff!important;border:1px solid rgba(255,255,255,.14)!important;box-shadow:none!important}.trust-row span{background:transparent;border:0;color:#c8d1c3;padding:8px 0;margin-right:14px}.trust-row span:before{content:'✓';color:var(--lp-lime);margin-right:8px}.hero-product{background:#0a0c0f;border:1px solid rgba(255,255,255,.13);border-radius:28px;padding:0;overflow:hidden;box-shadow:0 40px 120px rgba(0,0,0,.55),0 0 0 1px rgba(217,255,99,.035);transform:none}.browser-top{height:58px;padding:0 20px;border-bottom:1px solid rgba(255,255,255,.08);color:#c6cec0;background:rgba(255,255,255,.02)}.browser-top i{background:rgba(255,255,255,.12)}.browser-top strong{color:#818a7c;font-weight:500}.dashboard-mock{border:0;border-radius:0;background:#0a0c0f;grid-template-columns:190px 1fr;min-height:520px}.mock-sidebar{background:#080a0c;border-right:1px solid rgba(255,255,255,.08);padding:22px;gap:8px}.mock-sidebar b{color:#f8fff2;font-weight:650;margin-bottom:14px}.mock-sidebar span{color:#adb7aa;font-weight:450;border-radius:12px}.mock-sidebar .mock-active{background:rgba(255,255,255,.10);color:#fff}.mock-main{padding:30px}.mock-header small{color:#808a7b;font-weight:600}.mock-header h3{color:#fff;font-weight:550;font-size:24px}.mock-header button,.mock-card button{background:#fff;color:#080a0c;border-radius:12px;font-weight:550;box-shadow:none}.mock-kpis{gap:14px}.mock-kpis div,.mock-card{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);border-radius:18px}.mock-kpis small{color:#c4cec0;font-weight:450}.mock-kpis b{color:#fff;font-weight:560}.mock-kpis em{color:var(--lp-lime);font-weight:500}.mock-lower{grid-template-columns:1.2fr .8fr;gap:16px;margin-top:16px}.mock-chart{height:250px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08);border-radius:18px;position:relative;overflow:hidden}.mock-chart:before{content:'';position:absolute;inset:18px;background:linear-gradient(180deg,transparent 24%,rgba(255,255,255,.06) 25%,transparent 26%,transparent 49%,rgba(255,255,255,.06) 50%,transparent 51%,transparent 74%,rgba(255,255,255,.06) 75%,transparent 76%)}.mock-chart i{background:linear-gradient(180deg,#151916 0%,rgba(217,255,99,.72) 100%);box-shadow:0 0 26px rgba(217,255,99,.12)}.mock-card h4{color:#fff;font-weight:560}.mock-card p{color:#c5cec1;font-weight:420}.mock-card button{background:var(--lp-lime);color:#050608}.proof-strip{background:#050608;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);color:#777f74;letter-spacing:.16em;text-transform:uppercase;font-size:12px}.section,.workflow,.pricing-section,.faq-section{background:#fbfcf8;color:#07110b}.interactive-section{background:#050608;color:#fff}.interactive-section h2,.interactive-section .section-copy h2{color:#fff}.interactive-section p,.interactive-section .checklist li{color:#c6cec1}.scan-demo{background:#0b0d10;border-color:rgba(255,255,255,.10);box-shadow:0 26px 80px rgba(0,0,0,.36)}.scan-panel div{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.10)}.scan-panel small{color:#aeb7aa}.scan-panel b{color:#fff}.scan-tabs{background:rgba(255,255,255,.06)}.scan-tabs button{color:#b9c2b5}.scan-tabs button.active{background:#fff;color:#050608}.confidence span{background:var(--lp-lime)}.pricing-card .btn{background:var(--lp-lime)!important;color:#050608!important;box-shadow:0 14px 34px rgba(217,255,99,.22)!important}.marketing-footer{background:#050608;border-top:1px solid rgba(255,255,255,.08);color:#c8d1c3}.marketing-footer a{color:var(--lp-lime)}
@media(max-width:1080px){.hero-premium{grid-template-columns:1fr}.dashboard-mock{grid-template-columns:150px 1fr}}@media(max-width:720px){.dashboard-mock{grid-template-columns:1fr}.mock-sidebar{display:none}.hero-copy h1{font-size:48px}.marketing-links{gap:12px}.marketing-links a:not(.btn){display:none}}

/* =========================================================
   Klarvo Dark Product UI Final
   Dark premium login + invoicing app polish.
   Keeps the invoice document itself white and print/PDF friendly.
   ========================================================= */
:root{
  --premium-bg:#050608;
  --premium-bg-2:#080a0d;
  --premium-card:rgba(255,255,255,.045);
  --premium-card-2:rgba(255,255,255,.075);
  --premium-line:rgba(255,255,255,.105);
  --premium-text:#f7faf4;
  --premium-soft:#b8c2b3;
  --premium-muted:#7f897a;
  --premium-lime:#d9ff63;
  --premium-lime-2:#bff43d;
}

/* Auth screens */
.auth-page{
  background:
    radial-gradient(circle at 78% 18%,rgba(217,255,99,.12),transparent 26%),
    radial-gradient(circle at 12% 10%,rgba(255,255,255,.065),transparent 32%),
    linear-gradient(180deg,#050608 0%,#07090b 54%,#050608 100%) !important;
  color:var(--premium-text);
  min-height:100vh;
}
.auth-page:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:88px 88px;mask-image:linear-gradient(180deg,black,transparent 85%)}
.auth-logo{color:#fff;font-weight:650;letter-spacing:-.04em;position:relative;z-index:1}.auth-logo .mark{border-color:var(--premium-lime);color:var(--premium-lime);background:transparent;box-shadow:none}.auth-shell{position:relative;z-index:1;max-width:1120px;gap:28px}.auth-card,.auth-benefits{background:rgba(10,12,15,.82)!important;border:1px solid var(--premium-line)!important;border-radius:30px!important;box-shadow:0 36px 110px rgba(0,0,0,.48)!important;backdrop-filter:blur(22px)}
.auth-card h1{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;font-weight:520!important;letter-spacing:-.06em!important;color:#fff!important}.auth-sub{color:#c5cec1!important}.auth-card .eyebrow,.auth-card .blue{color:var(--premium-lime)!important}.auth-benefits{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(217,255,99,.04))!important}.auth-benefits h2{color:#fff;font-weight:520;letter-spacing:-.05em}.auth-benefits div{background:rgba(255,255,255,.04);border:1px solid var(--premium-line);border-radius:20px;padding:18px;margin-top:14px}.auth-benefits b{color:#fff}.auth-benefits span{color:#c5cec1}.social-btn{background:#fff!important;color:#050608!important;border:0!important;box-shadow:0 16px 44px rgba(255,255,255,.08);height:60px}.social-btn.disabled{opacity:.5;cursor:not-allowed}.or{color:#7f897a}.or span{background:rgba(255,255,255,.12)!important}.auth-form label,.form label{color:#dfe7da}.auth-form input,.auth-form select,.auth-form textarea,.password-row input{background:rgba(255,255,255,.06)!important;color:#fff!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:16px!important}.auth-form input:focus,.auth-form textarea:focus,.auth-form select:focus{outline:2px solid rgba(217,255,99,.34);border-color:rgba(217,255,99,.45)!important}.password-row button{background:transparent;color:var(--premium-lime);border:0;font-weight:650}.auth-form .btn.full,.auth-card .btn.full{background:var(--premium-lime)!important;color:#050608!important;box-shadow:0 18px 48px rgba(217,255,99,.20)!important;font-weight:650!important}.footer-note,.setup-note{color:#aeb7aa!important}.footer-note a,.setup-note b{color:var(--premium-lime)!important}.optional{border:1px solid var(--premium-line);border-radius:18px;padding:14px 16px;color:#dbe4d7;background:rgba(255,255,255,.035)}.optional summary{cursor:pointer;font-weight:650}.alert{background:rgba(239,68,68,.12)!important;border-color:rgba(239,68,68,.35)!important;color:#fecaca!important}

/* Product app */
.app{background:
  radial-gradient(circle at 78% 0%,rgba(217,255,99,.075),transparent 28%),
  radial-gradient(circle at 0% 12%,rgba(255,255,255,.05),transparent 26%),
  linear-gradient(180deg,#050608 0%,#07090b 100%)!important;color:var(--premium-text);min-height:100vh}.sidebar{background:rgba(5,6,8,.88)!important;border-right:1px solid var(--premium-line)!important;box-shadow:none!important;backdrop-filter:blur(22px)}.logo{color:#fff}.logo-badge{background:transparent!important;color:var(--premium-lime)!important;border:1.5px solid var(--premium-lime)!important;box-shadow:none!important}.brand{font-weight:650!important;color:#fff}.sidebar .eyebrow{color:#818a7c!important}.menu a{color:#bfc9bb!important;border:1px solid transparent;border-radius:16px;font-weight:520!important}.menu a:hover{background:rgba(255,255,255,.055)!important;color:#fff!important}.menu a.active{background:rgba(255,255,255,.10)!important;color:#fff!important;border-color:rgba(217,255,99,.16);box-shadow:inset 0 0 0 1px rgba(217,255,99,.06)}.menu a span{color:var(--premium-lime)}.sidebar-footer.card{background:rgba(255,255,255,.045)!important;border-color:var(--premium-line)!important;color:#fff}.sidebar-footer small,.muted{color:#99a494!important}.logout{color:var(--premium-lime)!important}.main{background:transparent!important}.topbar{border-color:var(--premium-line)!important}.topbar .title,.title,h1,h2{color:#fff}.topbar .eyebrow,.eyebrow{color:#8d9888!important;letter-spacing:.18em}.actions{display:flex;gap:12px;align-items:center}.btn{background:var(--premium-lime)!important;color:#050608!important;border-radius:14px!important;font-weight:650!important;box-shadow:0 16px 42px rgba(217,255,99,.16)!important}.btn:hover{transform:translateY(-1px);box-shadow:0 24px 58px rgba(217,255,99,.20)!important}.btn.secondary{background:rgba(255,255,255,.055)!important;color:#fff!important;border:1px solid var(--premium-line)!important;box-shadow:none!important}.btn.danger{background:#ef4444!important;color:#fff!important}.card{background:rgba(255,255,255,.045)!important;border:1px solid var(--premium-line)!important;border-radius:24px!important;box-shadow:0 26px 80px rgba(0,0,0,.22)!important;color:#f7faf4}.kpi small{color:#aeb7aa!important;font-weight:500}.kpi b{font-weight:560;color:#fff}.green{color:var(--premium-lime)!important}.red{color:#ff7a7a!important}.grid.cols-4 .card{min-height:132px}.form input,.form select,.form textarea{background:rgba(255,255,255,.055)!important;color:#fff!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:14px!important}.form input:focus,.form textarea:focus,.form select:focus{outline:2px solid rgba(217,255,99,.28);border-color:rgba(217,255,99,.42)!important}.form label{color:#dce6d8}.form.two{align-items:end}table{width:100%;border-collapse:separate!important;border-spacing:0 8px!important}th{color:#8f9a8a!important;font-weight:600!important;text-transform:uppercase;letter-spacing:.08em;font-size:12px;border:0!important}td{background:rgba(255,255,255,.035);border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);padding:16px 14px!important;color:#edf4ea}td:first-child{border-left:1px solid rgba(255,255,255,.06);border-radius:14px 0 0 14px}td:last-child{border-right:1px solid rgba(255,255,255,.06);border-radius:0 14px 14px 0}td a{color:var(--premium-lime);font-weight:650}.pill{background:rgba(217,255,99,.13)!important;color:var(--premium-lime)!important;border:1px solid rgba(217,255,99,.2);font-weight:650}.pill.unpaid,.pill.draft{background:rgba(255,255,255,.08)!important;color:#e5ebdf!important;border-color:rgba(255,255,255,.12)}.pill.overdue{background:rgba(239,68,68,.14)!important;color:#ffb4b4!important;border-color:rgba(239,68,68,.28)}

/* Invoice view: app dark, invoice document premium white */
.invoice-paper{background:#fff!important;color:#07111f!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:24px!important;box-shadow:0 36px 100px rgba(0,0,0,.34)!important;overflow:hidden}.invoice-head{background:#eaf8ff!important;color:#111827!important}.invoice-head h1{color:#0984d8!important;font-weight:650!important}.invoice-head h2{color:#111827!important}.jp-logo{color:#111827!important;background:#fff;border:2px solid #111827}.invoice-columns h3{color:#0984d8!important}.invoice-columns p,.details-row span{color:#111827!important}.invoice-body{background:#fff!important}.invoice-body table{border-spacing:0!important}.invoice-body th{color:#374151!important;border-bottom:1px solid #d7dee8!important}.invoice-body td{background:#fff!important;color:#111827!important;border:0!important;border-bottom:1px solid #e4e9f0!important;border-radius:0!important}.invoice-body td b{color:#111827}.totals td{background:#fff!important}.total-due td{background:#eaf8ff!important;font-weight:700!important}.invoice-body h3{color:#0984d8!important}

/* Payment and expense action polish */
.card .topbar{padding:0!important;margin-bottom:18px}.card .topbar h2{margin:0;font-weight:560}.payment-summary,.expense-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.payment-summary div,.expense-summary div{background:rgba(255,255,255,.045);border:1px solid var(--premium-line);border-radius:18px;padding:16px}.payment-summary small,.expense-summary small{color:#aeb7aa}.payment-summary b,.expense-summary b{display:block;color:#fff;font-size:22px;margin-top:6px}.main > .card:first-of-type{margin-top:4px}

@media(max-width:900px){.auth-shell{grid-template-columns:1fr!important}.auth-benefits{display:none}.app{display:block}.sidebar{position:relative;width:auto;min-height:auto}.main{padding:22px}.grid.cols-4{grid-template-columns:1fr 1fr}.actions{flex-wrap:wrap}.invoice-columns{grid-template-columns:1fr!important}}
@media(max-width:620px){.grid.cols-4{grid-template-columns:1fr}.topbar{display:block}.topbar .actions{margin-top:16px}.auth-page{padding:22px}.auth-card{padding:26px!important}}


/* Klarvo publish polish — balanced spacing, aligned controls, crisp UI */
:root{--lime:#c8ff5f;--lime-soft:rgba(200,255,95,.12);--ink:#070907;--panel:#10130f;--panel-2:#151912;--line:rgba(255,255,255,.09);--muted:#a7aea0;--text:#f5f7ef;--white:#fff;--radius:18px;--radius-sm:12px;--shadow:0 24px 80px rgba(0,0,0,.35)}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:-.01em}
.mark,.logo-badge{background:linear-gradient(135deg,#f7ffe4,var(--lime));color:#10130f;font-weight:800;box-shadow:0 0 0 1px rgba(255,255,255,.18) inset}
.mark{border-radius:14px}
.brand{font-weight:720;letter-spacing:-.03em}.eyebrow{letter-spacing:.12em;font-weight:700}
.hero,.marketing-hero{background:radial-gradient(circle at 72% 18%,rgba(200,255,95,.10),transparent 32%),linear-gradient(180deg,#050605 0%,#0b0d0a 72%,#11150f 100%)}
.hero h1,.marketing-hero h1{font-weight:690;letter-spacing:-.065em;line-height:.96}.hero p,.marketing-hero p{line-height:1.72;color:#c7cec0}
.btn,button,input[type=submit],.button{height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:0 18px;font-weight:700;white-space:nowrap;line-height:1;border:1px solid rgba(255,255,255,.10);transition:.18s ease;box-sizing:border-box}
.btn:hover,button:hover,input[type=submit]:hover,.button:hover{transform:translateY(-1px);box-shadow:0 14px 32px rgba(0,0,0,.24)}
.btn.primary,.btn.big,.btn:not(.ghost):not(.secondary),button.primary,input[type=submit]{background:var(--lime);color:#0d110a;border-color:var(--lime)}
.btn.ghost,.btn.secondary{background:rgba(255,255,255,.05);color:var(--text);border-color:rgba(255,255,255,.12)}
.topbar,.page-header,.toolbar,.filters,.form-actions,.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.page-header,.topbar{justify-content:space-between;margin-bottom:22px}.toolbar,.filters{justify-content:space-between;margin-bottom:18px}
.card,.panel,.stat,.table-card,.form-card{background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 20px 70px rgba(0,0,0,.18);padding:22px}
.grid,.stats-grid{gap:18px}.content,main{padding:28px}.sidebar{border-right:1px solid var(--line)}
input,select,textarea{height:44px;border-radius:13px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.055);color:var(--text);padding:0 13px;box-sizing:border-box;outline:none}textarea{height:auto;min-height:110px;padding:13px}label{display:grid;gap:7px;color:#d8ded1;font-size:13px;font-weight:650}
table{width:100%;border-collapse:separate;border-spacing:0}th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#90998a;font-weight:750;text-align:left;padding:13px 14px;border-bottom:1px solid var(--line)}td{padding:15px 14px;border-bottom:1px solid rgba(255,255,255,.06);vertical-align:middle}tr:hover td{background:rgba(255,255,255,.025)}td .btn,td button,.table-actions .btn{height:36px;padding:0 13px;font-size:13px}.table-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.auth-card{border-radius:24px}.auth-benefits{border-radius:24px;background:linear-gradient(180deg,rgba(200,255,95,.11),rgba(255,255,255,.035));border:1px solid rgba(200,255,95,.14)}
.mock-card,.mockup,.dashboard-preview{border-radius:24px;border:1px solid rgba(255,255,255,.10);box-shadow:var(--shadow);background:linear-gradient(180deg,#151914,#0d100c)}
@media(max-width:800px){.content,main{padding:18px}.hero h1,.marketing-hero h1{font-size:42px}.topbar,.page-header,.toolbar,.filters{align-items:stretch}.btn,button,input[type=submit]{width:100%}}

/* Klarvo final multi-user branding polish */
:root{--klarvo-bg:#f7f7f3;--klarvo-ink:#10120f;--klarvo-muted:#73786f;--klarvo-line:#e7e7dc;--klarvo-lime:#c8ff5f;--klarvo-card:#ffffff;--klarvo-dark:#080a07}
body{background:var(--klarvo-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--klarvo-ink)}
.main{background:var(--klarvo-bg)}.topbar,.actions,.filters{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.align-start{align-items:start}.wide{grid-column:1/-1}.right{text-align:right}.success{background:#effbe7;border-color:#c7f5a0;color:#234800}.small{height:36px!important;padding:0 13px!important;font-size:13px!important;border-radius:999px!important}.btn{height:46px;border-radius:999px;padding:0 20px;font-weight:750;letter-spacing:-.01em;box-shadow:none}.btn:not(.secondary):not(.danger){background:var(--klarvo-lime);color:#10120f;border:1px solid rgba(0,0,0,.08)}.btn.secondary{background:#fff;color:#10120f;border:1px solid var(--klarvo-line)}.btn.danger{background:#ffe8e6;color:#b42318;border:1px solid #ffc9c4}.card{background:#fff;border:1px solid var(--klarvo-line);border-radius:24px;box-shadow:0 16px 40px rgba(16,18,15,.045)}.form.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form{display:grid;gap:14px}.form label{font-size:13px;font-weight:720;color:#33382f}.check{display:flex!important;align-items:center;gap:10px;background:#f8f8f2;border:1px solid var(--klarvo-line);border-radius:14px;padding:12px}.check input{height:auto}input,select,textarea{background:#fff;color:#10120f;border:1px solid var(--klarvo-line);border-radius:14px;min-height:46px}textarea{min-height:118px}.grid{display:grid;gap:18px}.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.cols-4{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.kpi small{color:var(--klarvo-muted);font-weight:750}.kpi b{font-size:28px;letter-spacing:-.04em}.green{color:#12805c}.red{color:#d92d20}.brand-logo{width:74px;height:74px;border-radius:22px;object-fit:contain;background:#fff;border:1px solid var(--klarvo-line)}.brand-logo.fallback,.invoice-logo.fallback{display:grid;place-items:center;background:var(--klarvo-dark);color:#fff;font-weight:850;letter-spacing:-.04em}.invoice-preview-mini{border:1px solid var(--klarvo-line);border-radius:28px;background:#fff;padding:24px}.mini-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.mini-head h3{margin:0;font-size:38px;color:var(--brand)}.mini-line{height:4px;background:var(--brand);border-radius:999px;margin:24px 0}.mini-row{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--klarvo-line)}
.invoice-paper.polished{background:#fff;border:1px solid #eeeeea;border-radius:30px;overflow:hidden;box-shadow:0 24px 70px rgba(16,18,15,.08);max-width:980px;margin:0 auto}.invoice-hero{background:linear-gradient(135deg,var(--invoice-brand),color-mix(in srgb,var(--invoice-brand) 72%,#000));color:#fff;padding:42px 48px;display:flex;align-items:flex-start;justify-content:space-between;gap:30px}.invoice-title-block{text-align:left}.invoice-label{text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:850;opacity:.75}.invoice-title-block h1{margin:12px 0 8px;font-size:52px;line-height:1;letter-spacing:-.055em;color:#fff}.invoice-title-block p{margin:0;color:rgba(255,255,255,.82);font-size:18px}.invoice-logo{width:86px;height:86px;border-radius:24px;object-fit:contain;background:#fff;padding:8px}.invoice-logo.fallback{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.24);font-size:30px;padding:0}.invoice-meta-grid{display:grid;grid-template-columns:1fr 1fr .95fr;gap:28px;padding:38px 48px;background:#fbfbf7;border-bottom:1px solid #ecece4}.invoice-meta-grid h3,.invoice-notes h3{margin:0 0 12px;color:var(--invoice-brand);font-size:13px;text-transform:uppercase;letter-spacing:.16em}.invoice-meta-grid p{margin:0;line-height:1.64;color:#30352d}.details-row{display:flex;justify-content:space-between;gap:20px;padding:9px 0;border-bottom:1px solid #e8e8df}.details-row span{color:#777d72}.invoice-body{padding:38px 48px}.invoice-items th{background:#f5f5ee;color:#62675f}.invoice-items th:first-child,.invoice-items td:first-child{text-align:left}.invoice-items th:not(:first-child),.invoice-items td:not(:first-child){text-align:right}.invoice-items td{font-weight:650}.invoice-bottom{display:grid;grid-template-columns:1fr 340px;gap:34px;margin-top:30px;align-items:start}.totals{margin:0}.totals table{width:100%}.totals td{padding:10px 0;border-bottom:1px solid #ecece4}.totals td:last-child{text-align:right;font-weight:760}.total-due td{font-size:18px;color:var(--invoice-brand);font-weight:850!important}.invoice-notes p{line-height:1.65;color:#42483f}.payment-card{margin-top:20px}@media(max-width:900px){.cols-2,.cols-4,.invoice-meta-grid,.invoice-bottom{grid-template-columns:1fr}.invoice-hero{padding:30px;flex-direction:column}.invoice-body,.invoice-meta-grid{padding:28px}.form.two{grid-template-columns:1fr}.invoice-title-block h1{font-size:40px}}

/* Klarvo v5 final fixes — contrast, expense review, invoice preview */
.invoice-preview-mini, .invoice-preview-mini *{color:#10120f!important}
.invoice-preview-mini .mini-head h3{color:var(--brand,#111111)!important}
.invoice-preview-mini .mini-head p{color:#5f675c!important;background:transparent!important}
.invoice-preview-mini .mini-row.muted, .invoice-preview-mini .mini-row.muted *{color:#73786f!important;background:transparent!important}
.invoice-preview-mini ::selection{background:rgba(200,255,95,.35)!important;color:#10120f!important}

.expense-review-grid .card{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.035))!important;color:#f6f8f2!important;border-color:rgba(255,255,255,.12)!important}
.expense-review-card label,.expense-review-grid label{color:#dfe7d7!important;font-weight:720!important}
.expense-review-card input,.expense-review-card select,.expense-review-card textarea{background:rgba(255,255,255,.075)!important;color:#fff!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:18px!important;min-height:54px!important;font-size:16px!important}
.expense-review-card input:focus,.expense-review-card textarea:focus{border-color:rgba(200,255,95,.55)!important;box-shadow:0 0 0 4px rgba(200,255,95,.14)!important}
.review-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:22px}.review-head h2{margin:4px 0 10px;color:#fff!important;font-weight:650}.review-head .muted{max-width:620px}.expense-file-card h2{font-size:24px;word-break:break-word;color:#fff!important}.doc-frame{width:100%;height:560px;border:1px solid rgba(255,255,255,.16);border-radius:22px;background:#fff}.extracted-text{margin-top:18px;color:#dfe7d7}.extracted-text pre{white-space:pre-wrap;max-height:280px;overflow:auto;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:16px;color:#dfe7d7}.small-note{font-size:13px;line-height:1.5}

.invoice-paper.polished,.invoice-paper.polished *{color:#10120f!important}.invoice-paper.polished .invoice-hero,.invoice-paper.polished .invoice-hero *{color:#fff!important}.invoice-paper.polished .invoice-logo.fallback{color:#fff!important}.invoice-paper.polished .invoice-meta-grid h3,.invoice-paper.polished .invoice-notes h3{color:var(--invoice-brand)!important}.invoice-paper.polished .details-row span,.invoice-paper.polished .invoice-notes p,.invoice-paper.polished .invoice-meta-grid p{color:#30352d!important}.invoice-paper.polished .total-due td{color:var(--invoice-brand)!important}.invoice-paper.polished .invoice-items th{color:#62675f!important}.invoice-paper.polished .invoice-items td{color:#10120f!important}

@media(max-width:900px){.expense-review-grid{grid-template-columns:1fr!important}.doc-frame{height:420px}}

/* Klarvo v6 production polish */
.invoice-preview-mini{background:#fff!important;color:#111!important;border:1px solid #e6e6dc!important;box-shadow:0 14px 44px rgba(0,0,0,.06)!important}
.invoice-preview-mini *{background:transparent!important;color:#111!important;text-shadow:none!important}
.invoice-preview-mini .mini-head h3{color:var(--brand,#111)!important}
.invoice-preview-mini .mini-head p{color:#555c52!important}
.invoice-preview-mini .mini-row span,.invoice-preview-mini .mini-row b{color:#111!important}
.invoice-preview-mini .mini-row.muted span{color:#697064!important}
.invoice-preview-mini .brand-logo.fallback{color:inherit!important;background:var(--brand,#111)!important}
.expense-review-card input,.expense-review-card select,.expense-review-card textarea{display:block!important;width:100%!important;box-sizing:border-box!important}
.expense-review-card label{display:grid!important;gap:8px!important;opacity:1!important;visibility:visible!important}
.expense-review-card .btn,.expense-file-card .btn{display:inline-flex!important;align-items:center!important;justify-content:center!important}
.alert{border-radius:18px;padding:16px 20px;font-weight:700;margin:16px 0}.alert.warning{background:rgba(255,198,87,.11);border:1px solid rgba(255,198,87,.32);color:#ffe1a3}.alert.info{background:rgba(200,255,95,.08);border:1px solid rgba(200,255,95,.24);color:#d8ff77}
.feature-list{display:grid;gap:12px;padding-left:18px;color:var(--muted)}
@media(max-width:900px){.sidebar{position:static;width:auto}.app{display:block}.main{padding:22px}.topbar{align-items:flex-start}.btn{width:auto}.cols-2,.cols-4{grid-template-columns:1fr!important}}

/* Klarvo final fixes: invoice preview contrast and expense polish */
.invoice-preview-mini{background:#fff!important;color:#111!important;border:1px solid #e5e7eb!important;border-radius:28px!important;padding:28px!important;box-shadow:none!important}
.invoice-preview-mini *{color:#111!important;text-shadow:none!important}
.invoice-preview-mini p{color:#4b5563!important;background:transparent!important}
.invoice-preview-mini h3{color:#111!important;background:transparent!important}
.invoice-preview-mini .mini-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e5e7eb;padding:14px 0;color:#111!important}
.invoice-preview-mini .mini-row span,.invoice-preview-mini .mini-row b{color:#111!important;background:transparent!important}
.invoice-preview-mini .mini-row.muted span{color:#6b7280!important}
.invoice-preview-mini .mini-line{height:4px;border-radius:999px;background:var(--brand,#111)!important;margin:28px 0}
.invoice-preview-mini .brand-logo.fallback{color:#fff!important}
.invoice-preview-mini .mini-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}
.expense-review-card .form input,.expense-review-card .form textarea,.expense-review-card .form select{color:#fff!important;background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.16)!important}
.expense-review-card .form label{color:#dfe7d9!important}.expense-file-card iframe.doc-frame{width:100%;height:560px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:#fff}.extracted-text pre{white-space:pre-wrap;max-height:260px;overflow:auto;background:rgba(0,0,0,.25);padding:16px;border-radius:14px;color:#dce7d6}.right{text-align:right}.wide{grid-column:1/-1}.form.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.align-start{align-items:start}.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:900px){.form.two,.cols-2{grid-template-columns:1fr!important}}
/* Klarvo v8 polish: saved themes, plans, client cards */
body.theme-light{background:#f7f8f3;color:#101214}
body.theme-light .app{background:#f7f8f3;color:#101214}
body.theme-light .sidebar{background:#ffffff;border-right:1px solid #e6eadf;color:#101214}
body.theme-light .main{background:#f7f8f3;color:#101214}
body.theme-light .card,body.theme-light .dashboard-card,body.theme-light .client-box,body.theme-light .plan-card{background:#fff;color:#101214;border-color:#e1e6d8;box-shadow:0 18px 44px rgba(20,24,18,.07)}
body.theme-light .title,body.theme-light h1,body.theme-light h2,body.theme-light h3,body.theme-light .brand{color:#101214}
body.theme-light .muted,body.theme-light .eyebrow{color:#64705f}
body.theme-light input,body.theme-light textarea,body.theme-light select{background:#fff;color:#101214;border-color:#d9dfd1}
body.theme-light table th{color:#64705f} body.theme-light table td{color:#101214;border-color:#e6eadf}
body.theme-light .menu a{color:#25301f} body.theme-light .menu a.active,body.theme-light .menu a:hover{background:#101214;color:#f6ffe8}
body.theme-light .btn.secondary{background:#fff;color:#101214;border:1px solid #d9dfd1}
body.theme-light .invoice-preview *{color:inherit}.invoice-preview .invoice-subtitle,.invoice-preview .invoice-meta{color:#4b5563!important}.invoice-preview .invoice-card{background:#fff!important;color:#111!important}.invoice-preview .preview-muted{color:#6b7280!important}.invoice-preview .fallback{color:inherit!important}
.client-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px;margin-top:24px}.client-box{position:relative;padding:22px;border-radius:26px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.045);display:flex;gap:16px;align-items:flex-start;min-height:145px}.client-avatar{width:54px;height:54px;border-radius:18px;background:var(--premium-lime,#d9ff63);color:#050608;display:flex;align-items:center;justify-content:center;font-weight:800;letter-spacing:-.04em}.client-box h3{margin:0 0 8px;font-size:18px}.client-box p{margin:3px 0;color:var(--premium-soft,#b8c2b3)}.small-link{position:absolute;right:18px;bottom:14px;font-size:13px}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:24px 0}.plan-card{padding:30px;border:1px solid rgba(255,255,255,.12);border-radius:30px;background:rgba(255,255,255,.045)}.plan-card.featured{border-color:rgba(217,255,99,.55);box-shadow:0 20px 70px rgba(217,255,99,.10)}.plan-card h2{font-size:46px;letter-spacing:-.06em;margin:10px 0}.plan-card h2 span{font-size:18px;color:var(--premium-soft)}.plan-card ul{margin:22px 0;padding:0;list-style:none}.plan-card li{margin:12px 0;color:var(--premium-soft)}.plan-card li:before{content:'✓';color:var(--premium-lime);margin-right:10px}.btn.full{width:100%;justify-content:center}.feature-list{padding-left:0;list-style:none}.feature-list li{margin:12px 0;color:var(--premium-soft)}.feature-list li:before{content:'✓';color:var(--premium-lime);margin-right:10px}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.small{height:38px;padding:0 14px;border-radius:14px;font-size:14px}.align-start{align-items:start}@media(max-width:960px){.pricing-grid{grid-template-columns:1fr}.client-grid{grid-template-columns:1fr}.grid.cols-2{grid-template-columns:1fr}}
.invoice-preview-mini{background:#fff!important;color:#111!important;border-radius:30px;padding:34px;border:1px solid #e5e7eb}.invoice-preview-mini h3,.invoice-preview-mini b{color:#111!important}.invoice-preview-mini p,.invoice-preview-mini span{color:#59615a!important}.invoice-preview-mini .mini-row{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #e5e7eb;padding:16px 0}.invoice-preview-mini .mini-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.invoice-preview-mini .mini-line{height:6px;border-radius:999px;background:var(--brand,#111);margin:30px 0}.invoice-preview-mini .brand-logo,.invoice-preview-mini .brand-logo.fallback{width:80px;height:80px;border-radius:22px;object-fit:contain;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:24px;color:inherit!important}

/* Klarvo v10 fixes: persistent theme switch + stronger light mode + report-only exports */
.theme-toggle-form{margin-top:14px}.theme-switch{width:100%;height:42px;border-radius:999px;background:rgba(255,255,255,.055)!important;border:1px solid rgba(255,255,255,.11)!important;color:#eef5e9!important;display:flex!important;align-items:center!important;justify-content:space-between!important;padding:0 12px!important;box-shadow:none!important;font-size:13px}.switch-track{width:42px;height:24px;border-radius:999px;background:rgba(255,255,255,.16);position:relative;display:inline-block;flex:0 0 auto}.switch-knob{width:18px;height:18px;border-radius:50%;background:#fff;position:absolute;top:3px;left:3px;transition:.2s ease}.switch-track.on{background:#c8ff5f}.switch-track.on .switch-knob{left:21px;background:#10120f}
body.theme-light,body.theme-light .app{background:#f6f7f1!important;color:#10130f!important}body.theme-light .sidebar{background:#ffffff!important;border-right:1px solid #e4e9de!important;color:#10130f!important}body.theme-light .main{background:#f6f7f1!important;color:#10130f!important}body.theme-light .card,body.theme-light .panel,body.theme-light .stat,body.theme-light .table-card,body.theme-light .form-card,body.theme-light .client-box,body.theme-light .plan-card{background:#fff!important;color:#10130f!important;border-color:#e1e7d9!important;box-shadow:0 18px 44px rgba(20,24,18,.07)!important}body.theme-light .title,body.theme-light h1,body.theme-light h2,body.theme-light h3,body.theme-light .brand,body.theme-light .kpi b,body.theme-light .payment-summary b,body.theme-light .expense-summary b{color:#10130f!important}body.theme-light .muted,body.theme-light .eyebrow,body.theme-light small{color:#64705f!important}body.theme-light input,body.theme-light textarea,body.theme-light select{background:#fff!important;color:#10130f!important;border-color:#d9dfd1!important}body.theme-light label{color:#263020!important}body.theme-light table th{color:#64705f!important}body.theme-light table td{background:#fff!important;color:#10130f!important;border-color:#e6eadf!important}body.theme-light .menu a{color:#25301f!important}body.theme-light .menu a.active,body.theme-light .menu a:hover{background:#101214!important;color:#f6ffe8!important}body.theme-light .btn.secondary,body.theme-light .theme-switch{background:#fff!important;color:#10130f!important;border:1px solid #d9dfd1!important}body.theme-light .sidebar-footer.card{background:#fff!important;border-color:#e1e7d9!important;color:#10130f!important}body.theme-light .logout{color:#244400!important}body.theme-light .logo{color:#10130f!important}body.theme-light .alert{color:#991b1b!important;background:#fee2e2!important;border-color:#fecaca!important}.success-card input{font-size:14px}.report-export-panel{display:flex;align-items:end;justify-content:space-between;gap:18px;flex-wrap:wrap}.report-export-panel .filters{margin:0;flex:1}
.row-actions{
    display:flex;
    gap:10px;
}

.btn.ghost{
    background:#f3f4f6;
    color:#111;
}
/* =========================================================
   Klarvo publish patch — IN-1091 invoice style + light contrast
   ========================================================= */
.invoice-paper.in1091-template{
  --invoice-bg:#e5f4ff;
  --invoice-blue:#0f8fe8;
  --invoice-navy:#111a35;
  --invoice-accent:#9eb7d4;
  --invoice-soft:#f5f4ef;
  width:100%;
  max-width:980px;
  margin:0 auto;
  background:#fff;
  color:#111;
  border:1px solid #e7edf2;
  border-radius:0;
  overflow:hidden;
  box-shadow:0 24px 80px rgba(15,30,45,.08);
}
.invoice-paper.in1091-template *{box-sizing:border-box;color:inherit}
.invoice-hero-solid{
  background:#e5f4ff!important;
  min-height:216px;
  padding:44px 56px 46px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:40px;
}
.invoice-title-block .invoice-label{
  color:rgba(255,255,255,.95)!important;
  font-size:14px;
  line-height:1;
  text-transform:uppercase;
  letter-spacing:.28em;
  font-weight:800;
  margin-bottom:22px;
}
.invoice-title-block h1{
  margin:0;
  color:#0f8fe8!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:56px;
  line-height:.96;
  font-weight:500;
  letter-spacing:-.045em;
}
.invoice-title-block p{
  margin:16px 0 0;
  color:#111a35!important;
  font-size:27px;
  line-height:1.12;
  font-weight:800;
  letter-spacing:-.04em;
}
.invoice-logo-area{
  margin-top:6px;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:150px;
  min-height:94px;
}
.invoice-logo-area.has-uploaded-logo{
  min-width:180px;
  min-height:94px;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.invoice-uploaded-logo{
  display:block;
  max-width:180px;
  max-height:92px;
  object-fit:contain;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.invoice-logo-area.has-fallback-logo{
  width:132px;
  height:104px;
  border-radius:28px;
  background:#fff;
  box-shadow:0 12px 38px rgba(85,112,140,.10);
}
.invoice-fallback-logo{
  width:96px;
  height:54px;
  border:2px solid #111;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#111!important;
  font-weight:900;
  letter-spacing:.12em;
  background:#fff;
  font-size:21px;
}
.invoice-meta-grid.in1091-meta{
  display:grid;
  grid-template-columns:1fr 1fr 1.05fr;
  gap:62px;
  padding:56px 56px 48px;
  background:#fff;
  border-bottom:1px solid #ecedf0;
}
.in1091-meta h3,.in1091-body .invoice-notes h3{
  margin:0 0 22px;
  color:#dff3ff!important;
  text-transform:uppercase;
  letter-spacing:.28em;
  font-size:14px;
  line-height:1;
  font-weight:900;
}
.in1091-meta p{
  margin:0;
  color:#272727!important;
  font-size:17px;
  line-height:1.55;
  font-weight:450;
}
.in1091-meta p b{
  color:#111!important;
  font-weight:850;
}
.in1091-meta .details-row{
  display:grid;
  grid-template-columns:1fr auto;
  gap:20px;
  align-items:center;
  border-bottom:1px solid #dde1dc!important;
  padding:12px 0;
  color:#111!important;
  font-size:16px;
}
.in1091-meta .details-row:first-of-type{padding-top:0}
.in1091-meta .details-row span{color:#222!important;font-weight:450}
.in1091-meta .details-row b{color:#111!important;font-weight:850;text-align:right}
.invoice-body.in1091-body{padding:38px 56px 60px;background:#fff}
.in1091-items{width:100%;border-collapse:collapse;border-spacing:0}
.in1091-items thead th{
  background:#f5f4ef!important;
  color:#5b5f5d!important;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-weight:900;
  padding:17px 18px;
  border-bottom:1px solid #d7dee5!important;
}
.in1091-items th:first-child,.in1091-items td:first-child{text-align:left}
.in1091-items th:not(:first-child),.in1091-items td:not(:first-child){text-align:right}
.in1091-items tbody td{
  padding:22px 18px;
  border-bottom:1px solid #dde5ec!important;
  color:#111!important;
  font-size:17px;
  font-weight:800;
}
.in1091-bottom{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:64px;
  margin-top:40px;
  align-items:start;
}
.in1091-bottom .invoice-notes p{
  margin:0;
  color:#222!important;
  font-size:16px;
  line-height:1.55;
}
.in1091-totals{width:100%;margin:0}
.in1091-totals table{width:100%;border-collapse:collapse}
.in1091-totals td{
  padding:17px 18px;
  border-bottom:1px solid #dde5ec!important;
  color:#111!important;
  font-size:16px;
}
.in1091-totals td:last-child{text-align:right;font-weight:850}
.in1091-totals .total-due td{
  background:#e5f4ff!important;
  border-bottom:0!important;
  font-weight:900;
  color:#111!important;
  padding:21px 18px;
}
.in1091-totals .total-due td:first-child{color:#0f8fe8!important}
.in1091-totals .total-due td:last-child{font-size:28px;letter-spacing:-.04em}

body.theme-light .btn:not(.secondary):not(.danger),
body.theme-light button.btn:not(.secondary):not(.danger){
  background:#101214!important;
  color:#ffffff!important;
  border-color:#101214!important;
  box-shadow:0 14px 32px rgba(16,18,20,.16)!important;
}
body.theme-light .btn.secondary{background:#fff!important;color:#101214!important;border-color:#d9dfd1!important}
body.theme-light .pill{background:#edf7dc!important;color:#223500!important;border-color:#d7eab5!important}
body.theme-light .alert.success{background:#dcfce7!important;color:#166534!important;border-color:#86efac!important}
body.theme-light .alert:not(.success){background:#fee2e2!important;color:#991b1b!important;border-color:#fecaca!important}

.export-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:end}.export-actions .btn{min-height:48px}
@media(max-width:820px){.invoice-hero-solid,.invoice-meta-grid.in1091-meta,.invoice-body.in1091-body{padding-left:28px;padding-right:28px}.invoice-meta-grid.in1091-meta,.in1091-bottom{grid-template-columns:1fr}.invoice-title-block h1{font-size:44px}.invoice-title-block p{font-size:22px}.invoice-logo-area{min-width:auto}}

.reports-actions,
.filters{
  display:grid;
  grid-template-columns: repeat(5, minmax(180px, 1fr));
  gap:22px;
  align-items:end;
}

.reports-actions label,
.filters label{
  display:flex;
  flex-direction:column;
  gap:10px;
  font-weight:700;
}

.reports-actions input,
.filters input,
.reports-actions .btn,
.filters .btn{
  width:100%;
  height:64px;
  border-radius:24px;
  font-size:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
}

@media(max-width:1100px){
  .reports-actions,
  .filters{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:650px){
  .reports-actions,
  .filters{
    grid-template-columns:1fr;
  }
}

/* JP final product polish: light billing, dashboard filters, clients, invoice statuses */
:root{--jp-lime-soft:#E9F6B8;--jp-lime:#C9FF16;--jp-ink:#0A0C0D;--jp-muted:#66705F;--jp-line:#E1E6D8;--jp-bg:#F7F8F3;}
body.theme-light{background:var(--jp-bg)!important;color:var(--jp-ink)!important;overflow-x:hidden;}
body.theme-light .main{background:var(--jp-bg)!important;}

/* Sidebar: readable white menu, no truncation */
body.theme-light .sidebar{background:#070807!important;color:#fff!important;border-right:1px solid #171917!important;}
body.theme-light .logo,body.theme-light .brand{color:#fff!important;}
body.theme-light .sidebar .eyebrow{color:rgba(255,255,255,.58)!important;}
body.theme-light .menu{display:flex;flex-direction:column;gap:6px;}
body.theme-light .menu a{color:rgba(255,255,255,.88)!important;background:transparent!important;border:1px solid transparent!important;border-radius:14px!important;font-size:13px!important;font-weight:560!important;line-height:1!important;letter-spacing:-.01em!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;padding:11px 10px!important;gap:9px!important;display:flex!important;align-items:center!important;}
body.theme-light .menu a span{color:rgba(255,255,255,.70)!important;font-size:15px!important;line-height:1!important;width:18px!important;min-width:18px!important;text-align:center!important;}
body.theme-light .menu a:hover{background:rgba(201,255,22,.12)!important;color:#fff!important;border-color:rgba(201,255,22,.22)!important;}
body.theme-light .menu a:hover span{color:var(--jp-lime)!important;}
body.theme-light .menu a.active{background:#fff!important;color:#090b0a!important;border-color:#fff!important;}
body.theme-light .menu a.active span{color:#090b0a!important;}
body.theme-light .sidebar-footer.card{background:#101210!important;color:#fff!important;border-color:#232720!important;box-shadow:none!important;}
body.theme-light .sidebar-footer.card b{color:#fff!important;}
body.theme-light .theme-switch{background:#181b18!important;color:#fff!important;border-color:#2b3029!important;}
body.theme-light .logout{color:#fff!important;}

/* Dashboard filter bar: full-width, balanced controls */
body.theme-light .filters.card{padding:26px!important;border-radius:28px!important;}
body.theme-light .filters{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:20px!important;align-items:end!important;width:100%!important;}
body.theme-light .filters label{min-width:0!important;width:100%!important;}
body.theme-light .filters input,body.theme-light .filters .btn{width:100%!important;height:62px!important;border-radius:22px!important;font-size:17px!important;}
@media(max-width:1050px){body.theme-light .filters{grid-template-columns:1fr 1fr!important;}}
@media(max-width:640px){body.theme-light .filters{grid-template-columns:1fr!important;}}

/* Light cards/widgets: clean white with black text, no green spotlight */
body.theme-light .card,body.theme-light .client-stat,body.theme-light .clients-hero-card,body.theme-light .clients-side-card,body.theme-light .client-card,body.theme-light .dashboard-card,body.theme-light .stat,body.theme-light .table-card,body.theme-light .form-card{background:#fff!important;background-image:none!important;color:var(--jp-ink)!important;border:1px solid var(--jp-line)!important;box-shadow:0 16px 42px rgba(16,18,20,.055)!important;}
body.theme-light .card:before,body.theme-light .card:after,body.theme-light .client-card:before,body.theme-light .clients-hero-card:after{display:none!important;}
body.theme-light .client-stat small,body.theme-light .client-stat span,body.theme-light .muted,body.theme-light small{color:#8A9285!important;}
body.theme-light .client-stat b,body.theme-light .client-main h3,body.theme-light h1,body.theme-light h2,body.theme-light h3{color:var(--jp-ink)!important;}
body.theme-light .usage-line{background:#edf0e9!important;}
body.theme-light .usage-line i{background:#111!important;}

/* Client cards: aligned subtle delete button and consistent bottom spacing */
.clients-grid{align-items:stretch!important;}
.client-card{display:flex!important;flex-direction:column!important;padding:28px!important;min-height:310px!important;}
.client-details{flex:1 1 auto!important;margin-top:18px!important;}
.client-quick-stats{margin-top:18px!important;display:flex!important;gap:10px!important;flex-wrap:wrap!important;}
.client-actions{margin-top:auto!important;padding-top:18px!important;display:flex!important;justify-content:flex-start!important;align-items:center!important;}
.client-actions .btn.secondary{display:none!important;}
.client-actions .btn.danger,.client-delete-only{background:transparent!important;color:#D92D20!important;border:1.5px solid rgba(217,45,32,.55)!important;box-shadow:none!important;border-radius:999px!important;min-height:42px!important;padding:0 22px!important;font-size:15px!important;font-weight:700!important;}
.client-actions .btn.danger:hover,.client-delete-only:hover{background:rgba(217,45,32,.06)!important;border-color:#D92D20!important;transform:none!important;}
body.theme-light .client-avatar{background:#050505!important;color:#fff!important;}
body.theme-light .client-quick-stats span{background:#fff!important;color:#4B5646!important;border:1px solid #dfe6d8!important;}

/* Invoice status and invoice numbers */
body.theme-light td a[href*="invoice_view.php"],body.theme-light table td a{color:#111!important;}
body.theme-light .pill.paid{background:rgba(201,255,22,.18)!important;color:#234000!important;border:1px solid rgba(132,180,0,.28)!important;}
body.theme-light .pill.draft,body.theme-light .pill.unpaid,body.theme-light .pill.overdue{background:rgba(217,45,32,.09)!important;color:#B42318!important;border:1px solid rgba(217,45,32,.24)!important;}

/* Billing cards */
body.theme-light .app-pricing .plan-card{background:#fff!important;background-image:none!important;color:#111!important;border:1px solid var(--jp-line)!important;box-shadow:0 16px 42px rgba(16,18,20,.055)!important;}
body.theme-light .app-pricing .plan-card *{color:#111!important;}
body.theme-light .app-pricing .plan-card .muted,body.theme-light .app-pricing .plan-card li,body.theme-light .app-pricing .plan-card h2 span{color:#5E685A!important;}
body.theme-light .app-pricing .plan-card li:before{color:#111!important;}
body.theme-light .app-pricing .plan-card.featured{background:var(--jp-lime-soft)!important;background-image:none!important;border-color:#DDEBB3!important;box-shadow:0 18px 44px rgba(143,165,73,.12)!important;}
body.theme-light .app-pricing .plan-card.featured .btn{background:#101214!important;color:#fff!important;border-color:#101214!important;}
body.theme-light .app-pricing .plan-card:nth-child(3){background:#0A0C0D!important;border-color:#0A0C0D!important;box-shadow:0 22px 58px rgba(0,0,0,.18)!important;}
body.theme-light .app-pricing .plan-card:nth-child(3) *,body.theme-light .app-pricing .plan-card:nth-child(3) .muted,body.theme-light .app-pricing .plan-card:nth-child(3) li,body.theme-light .app-pricing .plan-card:nth-child(3) h2 span{color:#fff!important;}
body.theme-light .app-pricing .plan-card:nth-child(3) li:before{color:var(--jp-lime)!important;}
body.theme-light .app-pricing .plan-card:nth-child(3) .btn{background:#fff!important;color:#111!important;border-color:#fff!important;}

/* Accountant readability / spacing */
body.theme-light .accountant-card,body.theme-light .email-card{background:#fff!important;background-image:none!important;color:#111!important;border-color:var(--jp-line)!important;}
body.theme-light .accountant-card *,body.theme-light .email-card *{color:#111!important;}
body.theme-light #invite-accountant,.invite-accountant,.accountant-invite{margin-bottom:28px!important;}


/* JP Bulk AI Upload light-mode accent card */
body.theme-light .bulk-ai-card{
  background:#E9F6B8!important;
  background-image:none!important;
  border:1px solid #DCE8B2!important;
  box-shadow:0 18px 44px rgba(143,165,73,.12)!important;
  color:#111!important;
}
body.theme-light .bulk-ai-card h1,
body.theme-light .bulk-ai-card h2,
body.theme-light .bulk-ai-card h3,
body.theme-light .bulk-ai-card strong{
  color:#111!important;
}
body.theme-light .bulk-ai-card p,
body.theme-light .bulk-ai-card .muted,
body.theme-light .bulk-ai-card small{
  color:#4f5b48!important;
}
body.theme-light .bulk-ai-card .drop-zone{
  background:rgba(255,255,255,.62)!important;
  border:2px dashed rgba(17,17,17,.22)!important;
  color:#111!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5)!important;
}
body.theme-light .bulk-ai-card .drop-zone:hover,
body.theme-light .bulk-ai-card .drop-zone.dragover{
  background:rgba(255,255,255,.82)!important;
  border-color:#111!important;
  transform:translateY(-1px);
}
body.theme-light .bulk-ai-card .btn{
  background:#111!important;
  color:#fff!important;
  border-color:#111!important;
  box-shadow:none!important;
}
body.theme-light .bulk-ai-card .btn:hover{
  background:#000!important;
  color:#fff!important;
}
body.theme-light .bulk-ai-card .file-pill{
  background:rgba(255,255,255,.65)!important;
  color:#111!important;
  border:1px solid rgba(17,17,17,.10)!important;
}


/* =========================================================
   Klarvo Dashboard Theme Pack — Dark / Midnight / Graphite
   Added for modern Gen Z-friendly dashboard personalization.
   Website/landing styles are untouched.
   ========================================================= */
body.theme-midnight,
body.theme-graphite,
body.theme-dark{
  --app-bg:#050608;
  --app-surface:rgba(255,255,255,.045);
  --app-card:rgba(255,255,255,.055);
  --app-card-solid:#11151b;
  --app-border:rgba(255,255,255,.105);
  --app-text:#f8fafc;
  --app-muted:#9ca3af;
  --app-primary:#d7ff5c;
  --app-primary-2:#bde842;
  --app-success:#22c55e;
  --app-danger:#ef4444;
  --app-shadow:0 22px 70px rgba(0,0,0,.28);
}
body.theme-midnight{
  --app-bg:#08111f;
  --app-surface:rgba(255,255,255,.045);
  --app-card:rgba(255,255,255,.06);
  --app-card-solid:#111c31;
  --app-border:rgba(148,163,184,.18);
  --app-text:#f8fafc;
  --app-muted:#94a3b8;
  --app-primary:#4ea8ff;
  --app-primary-2:#8fd0ff;
  --app-success:#3ddc97;
  --app-danger:#ff6b6b;
  --app-shadow:0 24px 75px rgba(0,7,20,.35);
}
body.theme-graphite{
  --app-bg:#101010;
  --app-surface:rgba(255,255,255,.045);
  --app-card:rgba(255,255,255,.065);
  --app-card-solid:#1b1b1f;
  --app-border:rgba(255,255,255,.12);
  --app-text:#fafafa;
  --app-muted:#a1a1aa;
  --app-primary:#a855f7;
  --app-primary-2:#d8b4fe;
  --app-success:#22c55e;
  --app-danger:#fb7185;
  --app-shadow:0 24px 80px rgba(0,0,0,.32);
}

body.theme-midnight,
body.theme-graphite{
  background:
    radial-gradient(circle at 84% -10%, color-mix(in srgb, var(--app-primary) 20%, transparent), transparent 34%),
    radial-gradient(circle at 12% 10%, rgba(255,255,255,.05), transparent 28%),
    var(--app-bg)!important;
  color:var(--app-text)!important;
}
body.theme-midnight .app,
body.theme-graphite .app,
body.theme-dark .app{
  background:
    linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.022) 1px,transparent 1px),
    radial-gradient(circle at 88% 0%, color-mix(in srgb, var(--app-primary) 12%, transparent), transparent 30%),
    var(--app-bg)!important;
  background-size:72px 72px,72px 72px,auto,auto!important;
}
body.theme-midnight .sidebar,
body.theme-graphite .sidebar{
  background:rgba(5,7,10,.72)!important;
  border-right:1px solid var(--app-border)!important;
  box-shadow:18px 0 60px rgba(0,0,0,.25)!important;
  backdrop-filter:blur(22px)!important;
}
body.theme-midnight .main,
body.theme-graphite .main{color:var(--app-text)!important;}
body.theme-midnight .card,
body.theme-graphite .card{
  background:linear-gradient(145deg,var(--app-card),rgba(255,255,255,.025))!important;
  border:1px solid var(--app-border)!important;
  color:var(--app-text)!important;
  box-shadow:var(--app-shadow)!important;
  backdrop-filter:blur(18px)!important;
}
body.theme-midnight .card *,
body.theme-graphite .card *{border-color:var(--app-border);}
body.theme-midnight .brand,
body.theme-graphite .brand,
body.theme-midnight .title,
body.theme-graphite .title,
body.theme-midnight h1,
body.theme-midnight h2,
body.theme-midnight h3,
body.theme-graphite h1,
body.theme-graphite h2,
body.theme-graphite h3{
  color:var(--app-text)!important;
  font-weight:650!important;
  letter-spacing:-.04em!important;
}
body.theme-midnight .muted,
body.theme-graphite .muted,
body.theme-midnight small,
body.theme-graphite small{color:var(--app-muted)!important;}
body.theme-midnight .eyebrow,
body.theme-graphite .eyebrow{
  color:var(--app-primary-2)!important;
  letter-spacing:.18em!important;
}
body.theme-midnight .logo-badge,
body.theme-graphite .logo-badge{
  background:color-mix(in srgb, var(--app-primary) 16%, transparent)!important;
  color:var(--app-primary-2)!important;
  border:1px solid color-mix(in srgb, var(--app-primary) 48%, transparent)!important;
  box-shadow:0 12px 34px color-mix(in srgb, var(--app-primary) 13%, transparent)!important;
}
body.theme-midnight .menu a,
body.theme-graphite .menu a{color:color-mix(in srgb, var(--app-text) 78%, transparent)!important;}
body.theme-midnight .menu a span,
body.theme-graphite .menu a span{color:var(--app-muted)!important;}
body.theme-midnight .menu a.active,
body.theme-midnight .menu a:hover,
body.theme-graphite .menu a.active,
body.theme-graphite .menu a:hover{
  background:color-mix(in srgb, var(--app-primary) 13%, transparent)!important;
  color:var(--app-text)!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--app-primary) 22%, transparent)!important;
}
body.theme-midnight .menu a.active span,
body.theme-midnight .menu a:hover span,
body.theme-graphite .menu a.active span,
body.theme-graphite .menu a:hover span{color:var(--app-primary-2)!important;}
body.theme-midnight .btn,
body.theme-graphite .btn{
  background:var(--app-primary)!important;
  color:#071016!important;
  border:1px solid color-mix(in srgb, var(--app-primary) 85%, transparent)!important;
  box-shadow:0 15px 38px color-mix(in srgb, var(--app-primary) 18%, transparent)!important;
}
body.theme-graphite .btn{color:#fff!important;}
body.theme-midnight .btn.secondary,
body.theme-graphite .btn.secondary,
body.theme-midnight .btn.ghost,
body.theme-graphite .btn.ghost{
  background:rgba(255,255,255,.06)!important;
  color:var(--app-text)!important;
  border:1px solid var(--app-border)!important;
  box-shadow:none!important;
}
body.theme-midnight .btn.danger,
body.theme-graphite .btn.danger{background:rgba(239,68,68,.14)!important;color:#fecaca!important;border-color:rgba(239,68,68,.35)!important;box-shadow:none!important;}
body.theme-midnight input,
body.theme-midnight select,
body.theme-midnight textarea,
body.theme-graphite input,
body.theme-graphite select,
body.theme-graphite textarea{
  background:rgba(255,255,255,.075)!important;
  color:var(--app-text)!important;
  border:1px solid var(--app-border)!important;
  box-shadow:none!important;
}
body.theme-midnight input::placeholder,
body.theme-midnight textarea::placeholder,
body.theme-graphite input::placeholder,
body.theme-graphite textarea::placeholder{color:color-mix(in srgb, var(--app-muted) 78%, transparent)!important;}
body.theme-midnight input:focus,
body.theme-midnight select:focus,
body.theme-midnight textarea:focus,
body.theme-graphite input:focus,
body.theme-graphite select:focus,
body.theme-graphite textarea:focus{
  border-color:var(--app-primary)!important;
  box-shadow:0 0 0 4px color-mix(in srgb, var(--app-primary) 18%, transparent)!important;
}
body.theme-midnight table,
body.theme-graphite table{color:var(--app-text)!important;}
body.theme-midnight th,
body.theme-graphite th{color:var(--app-muted)!important;}
body.theme-midnight td,
body.theme-midnight th,
body.theme-graphite td,
body.theme-graphite th{border-bottom:1px solid var(--app-border)!important;}
body.theme-midnight tr:hover td,
body.theme-graphite tr:hover td{background:rgba(255,255,255,.035)!important;}
body.theme-midnight .pill,
body.theme-graphite .pill{
  background:color-mix(in srgb, var(--app-primary) 14%, transparent)!important;
  color:var(--app-primary-2)!important;
  border:1px solid color-mix(in srgb, var(--app-primary) 25%, transparent)!important;
}
body.theme-midnight .alert.success,
body.theme-graphite .alert.success{background:rgba(34,197,94,.12)!important;color:#86efac!important;border-color:rgba(34,197,94,.34)!important;}
body.theme-midnight .alert,
body.theme-graphite .alert{background:rgba(251,191,36,.10)!important;color:#fde68a!important;border-color:rgba(251,191,36,.28)!important;}
body.theme-midnight .theme-switch,
body.theme-graphite .theme-switch{color:var(--app-text)!important;}
body.theme-midnight .switch-track.on,
body.theme-graphite .switch-track.on{background:var(--app-primary)!important;}
body.theme-midnight .switch-track.on .switch-knob,
body.theme-graphite .switch-track.on .switch-knob{background:#081016!important;}

/* Dashboard/theme-specific charts and KPI polish */
body.theme-midnight .kpi:after,
body.theme-graphite .kpi:after{background:radial-gradient(circle,color-mix(in srgb, var(--app-primary) 22%, transparent),transparent 70%)!important;}
body.theme-midnight .green,
body.theme-graphite .green{color:var(--app-success)!important;}
body.theme-midnight .red,
body.theme-graphite .red{color:var(--app-danger)!important;}
body.theme-midnight .client-avatar,
body.theme-graphite .client-avatar{
  background:color-mix(in srgb, var(--app-primary) 17%, transparent)!important;
  color:var(--app-primary-2)!important;
  border-color:color-mix(in srgb, var(--app-primary) 38%, transparent)!important;
}
body.theme-midnight .client-search input,
body.theme-graphite .client-search input{
  background:#fff!important;
  color:#111827!important;
  border-color:#e5e7eb!important;
}
body.theme-midnight .client-search svg,
body.theme-graphite .client-search svg{color:#111827!important;}

/* Compact visual selector in settings */
.theme-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:8px 0 4px}.theme-swatch{border-radius:18px;min-height:86px;padding:14px;border:1px solid var(--line);background:#111;color:#fff;display:grid;align-content:end;gap:6px}.theme-swatch b{font-size:13px}.theme-swatch span{font-size:11px;opacity:.72}.theme-swatch.midnight{background:linear-gradient(135deg,#08111f,#162033)}.theme-swatch.graphite{background:linear-gradient(135deg,#111,#2b173e)}.theme-swatch.klarvo{background:linear-gradient(135deg,#050608,#161b12)}
@media(max-width:760px){.theme-choice-grid{grid-template-columns:1fr}.sidebar-footer.card{position:static!important}}


/* =========================================================
   Klarvo mobile polish + camera upload + app noindex support
   Added for production app usability. Does not change backend logic.
   ========================================================= */
@media (max-width: 980px){
  html, body{max-width:100%; overflow-x:hidden;}
  .app{display:block; min-height:100vh;}
  .sidebar{
    position:relative!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    padding:18px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
  }
  .logo{margin-bottom:16px!important;}
  .menu{
    display:flex!important;
    gap:10px!important;
    overflow-x:auto!important;
    padding-bottom:8px!important;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
  }
  .menu a{
    flex:0 0 auto!important;
    white-space:nowrap!important;
    min-height:44px!important;
    padding:11px 14px!important;
    border-radius:999px!important;
    scroll-snap-align:start;
  }
  .sidebar-footer{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    margin-top:14px!important;
    padding:14px!important;
  }
  .main{padding:22px 16px 34px!important; width:100%!important;}
  .topbar{display:flex!important; flex-direction:column!important; align-items:flex-start!important; gap:16px!important; margin-bottom:18px!important;}
  .topbar > *{width:100%;}
  .topbar .actions, .actions{width:100%; display:grid!important; grid-template-columns:1fr!important; gap:10px!important;}
  .topbar .btn, .actions .btn{width:100%; min-height:48px;}
  .title{font-size:clamp(34px,9vw,48px)!important; line-height:1.02!important;}
  .grid.cols-4,.grid.cols-3,.grid.cols-2,.cols-4,.cols-3,.cols-2{grid-template-columns:1fr!important;}
  .card{border-radius:22px!important; padding:18px!important;}
  .form.two,.client-form-grid{grid-template-columns:1fr!important;}
  .wide{grid-column:1 / -1!important;}
  .filters,.report-filter-grid,.export-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    width:100%!important;
  }
  input,select,textarea,.btn{font-size:16px!important;}
  table{display:block!important; width:100%!important; overflow-x:auto!important; white-space:nowrap; -webkit-overflow-scrolling:touch;}
  th,td{padding:13px 12px!important;}
  .invoice-columns,.kv-info,.kv-bottom{grid-template-columns:1fr!important; gap:24px!important;}
  .dashboard-mock,.mock-lower{grid-template-columns:1fr!important;}
  .mock-sidebar{display:none!important;}
  .doc-frame{min-height:420px!important;}
  .expense-review-grid{grid-template-columns:1fr!important;}
  .expense-file-card{order:2;}
  .expense-review-card{order:1;}
}

@media (max-width: 560px){
  .main{padding-left:12px!important; padding-right:12px!important;}
  .card{padding:16px!important; border-radius:20px!important;}
  .btn{width:100%; min-height:48px;}
  .menu a span{display:none;}
  .brand{font-size:20px!important;}
  .kpi b{font-size:28px!important;}
  .client-card-head{grid-template-columns:52px 1fr!important;}
  .client-avatar{width:52px!important; height:52px!important; border-radius:16px!important;}
  .client-actions{display:grid!important; grid-template-columns:1fr!important;}
}

.camera-upload-row{margin-top:14px; display:flex; align-items:center; gap:12px; flex-wrap:wrap;}
.camera-upload-btn{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 16px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.16);
  color:inherit;
  font-weight:800;
  cursor:pointer;
}
.camera-upload-btn:before{content:'📷'; margin-right:8px;}
.camera-input{position:absolute!important; width:1px!important; height:1px!important; overflow:hidden!important; opacity:0!important; pointer-events:none!important;}
.theme-light .camera-upload-btn{background:#fff; border-color:#e5e7eb; color:#111827; box-shadow:0 8px 20px rgba(15,23,42,.06);}


/* =========================================================
   Klarvo unified brand assets and shared UI refinements
   ========================================================= */
:root{--klarvo-lime:#d9ff63;--klarvo-black:#050706;--klarvo-soft-line:#e1e8d9;--klarvo-radius:16px}
.logo.logo-with-image{display:flex;align-items:center;margin-bottom:42px;min-height:54px}.app-logo{display:block;width:auto;max-width:176px;height:42px}.app-logo-dark{display:none}body.theme-light .app-logo-light{display:none}body.theme-light .app-logo-dark{display:block}.site-logo,.legal-logo{display:block;width:auto;height:34px}.brand-logo{display:block;width:auto;max-height:54px}.btn,.btn.secondary,.btn.danger,.btn.ghost,.btn.upgrade{border-radius:var(--klarvo-radius);font-weight:750}.btn.small{min-height:38px;padding:0 13px;border-radius:13px;font-size:13px}.card{border-radius:24px}.table-actions,.actions,.client-actions,.invoice-actions{gap:10px}.right{text-align:right}.stack-actions{display:flex;gap:12px;flex-wrap:wrap}.flush-card{padding:0!important;overflow:hidden!important}.mt-18{margin-top:18px!important}.text-right{text-align:right!important}.empty-state-pad{padding:20px}.inline-preview-brand{--brand:#111111}.theme-light .sidebar .app-logo-dark{display:block}.theme-light .sidebar .app-logo-light{display:none}

/* Extracted from dashboard.php */
.dashboard-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;margin-bottom:18px}.dash-panel{position:relative;overflow:hidden}.dash-panel:before{content:"";position:absolute;right:-90px;top:-90px;width:260px;height:260px;border-radius:999px;background:radial-gradient(circle,rgba(78,168,255,.18),transparent 70%);pointer-events:none}.dash-panel>*{position:relative}.chart-card{padding:24px}.chart-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px}.chart-legend{display:flex;gap:12px;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:13px;font-weight:750}.legend-dot{width:10px;height:10px;border-radius:99px;background:#4ea8ff}.legend-dot.exp{background:#a855f7}.modern-chart{height:290px;display:grid;grid-template-columns:repeat(12,1fr);gap:14px;align-items:end;padding:16px 6px 0;border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));border:1px solid rgba(255,255,255,.08)}.chart-month{height:100%;display:grid;grid-template-rows:1fr auto;gap:12px;min-width:0}.bar-pair{height:100%;display:flex;align-items:end;justify-content:center;gap:5px}.bar{width:14px;min-height:5px;border-radius:999px 999px 5px 5px;background:linear-gradient(180deg,#4ea8ff,#246bfe);position:relative;transition:.18s ease;box-shadow:0 10px 22px rgba(78,168,255,.18)}.bar.expense{background:linear-gradient(180deg,#a855f7,#6d28d9);box-shadow:0 10px 22px rgba(168,85,247,.16)}.bar:hover{filter:brightness(1.12);transform:translateY(-3px)}.bar:hover:after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 10px);transform:translateX(-50%);white-space:nowrap;background:#fff;color:#0b1020;padding:8px 10px;border-radius:12px;font-size:12px;font-weight:850;box-shadow:0 14px 32px rgba(0,0,0,.24);z-index:20}.chart-label{text-align:center;color:var(--muted);font-size:12px;font-weight:800}.activity-list{display:grid;gap:12px}.activity-item{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;padding:14px;border-radius:18px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08)}.activity-icon{width:42px;height:42px;border-radius:15px;background:rgba(78,168,255,.13);display:grid;place-items:center;color:#7cc1ff;font-weight:900}.activity-item b{display:block}.activity-item small{color:var(--muted)}.theme-light .modern-chart,.theme-light .activity-item{background:#fff;border-color:#e5e7eb}.theme-light .bar:hover:after{background:#111827;color:#fff}@media(max-width:980px){.dashboard-hero{grid-template-columns:1fr}.modern-chart{gap:8px}.bar{width:10px}.chart-card{padding:18px}}@media(max-width:680px){.modern-chart{overflow-x:auto;grid-template-columns:repeat(12,42px);justify-content:start}.chart-head{display:block}.chart-legend{margin-top:12px}.activity-item{grid-template-columns:36px 1fr}.activity-item .pill{grid-column:2}}


/* Extracted from contacts.php */
.clients-page{display:grid;gap:26px}.clients-top{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:stretch}.clients-hero-card,.clients-side-card{position:relative;overflow:hidden;border-radius:34px;padding:30px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.035));border:1px solid rgba(255,255,255,.11);box-shadow:0 22px 70px rgba(0,0,0,.16)}.clients-hero-card:after{content:"";position:absolute;right:-120px;top:-140px;width:330px;height:330px;border-radius:999px;background:radial-gradient(circle,rgba(215,255,92,.15),transparent 68%);pointer-events:none}.clients-hero-card>*{position:relative}.clients-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.client-count{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:999px;background:#f4f7ef;border:2px solid #dfe8d4;font-weight:950;color:#1f3511;white-space:nowrap;font-size:20px;line-height:1;letter-spacing:-.04em;box-shadow:0 12px 30px rgba(31,53,17,.06)}.clients-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}.client-stat{position:relative;padding:18px;border-radius:22px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09);min-height:118px}.client-stat small{display:block;color:var(--muted);font-weight:850}.client-stat b{display:block;margin-top:10px;font-size:30px;letter-spacing:-.06em;color:#fff}.client-stat span{display:block;margin-top:3px;color:var(--muted);font-size:13px}.client-stat.featured{background:linear-gradient(145deg,rgba(215,255,92,.13),rgba(255,255,255,.04));border-color:rgba(215,255,92,.22)}.usage-line{height:9px;background:rgba(255,255,255,.10);border-radius:999px;overflow:hidden;margin-top:18px}.usage-line i{display:block;height:100%;width:var(--usage);border-radius:999px;background:linear-gradient(90deg,#f3ffb2,#b8ff00)}.clients-side-card{display:flex;flex-direction:column;justify-content:space-between;gap:18px}.clients-side-card h2{margin:0}.limit-box{padding:16px;border-radius:22px;background:rgba(215,255,92,.10);border:1px solid rgba(215,255,92,.18)}.limit-box strong{display:block;margin-bottom:6px;color:#f0ffb0}.upgrade-actions{display:flex;gap:10px;flex-wrap:wrap}.upgrade-actions .btn{min-height:46px;border-radius:16px}.btn.upgrade{background:#d7ff5c!important;color:#080b07!important;border:1px solid rgba(215,255,92,.9)!important;box-shadow:0 12px 30px rgba(215,255,92,.14)!important}.btn.ghost{background:rgba(255,255,255,.06)!important;color:#fff!important;border:1px solid rgba(255,255,255,.14)!important}.section-title-row{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-top:4px}.section-title-row h2{margin:0}.section-title-row p{margin:6px 0 0}.clients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:22px;align-items:stretch}.client-card{position:relative;overflow:hidden;border-radius:30px;padding:26px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.035));border:1px solid rgba(255,255,255,.12);box-shadow:0 20px 70px rgba(0,0,0,.14);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.client-card:before{content:"";position:absolute;inset:-1px;background:radial-gradient(circle at 16% 0%,rgba(215,255,92,.10),transparent 34%),linear-gradient(180deg,rgba(255,255,255,.04),transparent);pointer-events:none}.client-card>*{position:relative}.client-card:hover{transform:translateY(-3px);border-color:rgba(215,255,92,.28);box-shadow:0 26px 80px rgba(0,0,0,.22)}.client-card-head{display:grid;grid-template-columns:64px 1fr;gap:18px;align-items:start}.client-avatar{width:64px;height:64px;border-radius:20px;background:#f3ffe8;color:#111;display:grid;place-items:center;font-weight:950;font-size:18px;letter-spacing:-.035em;border:1px solid rgba(215,255,92,.65);box-shadow:0 10px 28px rgba(215,255,92,.08)}.client-main h3{font-size:22px;line-height:1.08;margin:4px 0 10px;letter-spacing:-.045em;color:#fff}.client-meta-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.client-type,.client-country{display:inline-flex;align-items:center;min-height:28px;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:850}.client-type{background:rgba(255,255,255,.08);color:rgba(255,255,255,.68);text-transform:capitalize}.client-country{background:rgba(215,255,92,.10);border:1px solid rgba(215,255,92,.18);color:#e8ffad}.client-details{display:grid;gap:10px;margin-top:22px;color:var(--muted);font-size:14px;line-height:1.45}.client-detail{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start}.client-detail span:first-child{opacity:.72;text-align:center;font-size:13px}.client-detail span:last-child{min-width:0;overflow-wrap:anywhere}.client-actions{display:flex;gap:12px;margin-top:24px;align-items:center;flex-wrap:wrap}.client-actions .btn{min-height:46px;padding:0 18px;border-radius:16px;font-weight:850}.client-actions .btn.secondary{background:rgba(255,255,255,.065)!important;color:#fff!important;border:1px solid rgba(255,255,255,.16)!important;box-shadow:none!important}.client-actions .btn.secondary:hover{background:rgba(255,255,255,.10)!important;border-color:rgba(215,255,92,.28)!important}.client-actions .btn.danger{background:rgba(240,68,56,.10)!important;color:#ff8c84!important;border:1px solid rgba(240,68,56,.28)!important;box-shadow:none!important}.client-actions .btn.danger:hover{background:rgba(240,68,56,.18)!important;color:#fff!important}.client-add-card{border-radius:34px;margin-top:4px}.client-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.client-form-grid .wide{grid-column:1/-1}.client-form-grid input,.client-form-grid select,.client-form-grid textarea{min-height:52px}.client-form-grid textarea{min-height:96px}.empty-clients{padding:48px;text-align:center}.clients-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:16px;align-items:center;margin-top:-6px}.client-search{position:relative}.client-search svg{position:absolute;left:18px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--muted);pointer-events:none}.client-search input{height:58px;padding-left:52px;border-radius:20px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.13);color:#fff;font-weight:650}.client-search input::placeholder{color:rgba(255,255,255,.48)}.client-search input:focus{border-color:rgba(215,255,92,.42);box-shadow:0 0 0 4px rgba(215,255,92,.08)}.client-quick-stats{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.client-quick-stats span{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.10);color:rgba(255,255,255,.74);font-size:12px;font-weight:850}.client-no-results{display:none;text-align:center;padding:44px;border-radius:30px;border:1px dashed rgba(255,255,255,.16);color:var(--muted);background:rgba(255,255,255,.035)}.theme-light .client-search input{background:#fff;color:#10130f;border-color:#d9dfd1}.theme-light .client-search input::placeholder{color:#7b8375}.theme-light .client-quick-stats span{background:#f8faf5;border-color:#e2e8d8;color:#536047}.theme-light .client-no-results{background:#fff;border-color:#e2e8d8}.alert.success{background:rgba(34,197,94,.14);border:1px solid rgba(34,197,94,.42);color:#86efac}.theme-light .clients-hero-card,.theme-light .clients-side-card,.theme-light .client-card{background:#fff;border-color:#e5e7eb;box-shadow:0 14px 40px rgba(15,23,42,.06)}.theme-light .client-stat{background:#f8faf5;border-color:#e6ecdf}.theme-light .client-stat b,.theme-light .client-main h3{color:#10130f}.theme-light .client-count{background:#f4f7ef;color:#1f3511;border-color:#dfe8d4}.theme-light .client-type{background:#eef2e8;color:#63705b}.theme-light .client-country{background:#f4f9e8;color:#33420f;border-color:#dfe8c4}.theme-light .client-actions .btn.secondary,.theme-light .btn.ghost{background:#f8faf5!important;color:#10130f!important;border-color:#d9dfd1!important}.theme-light .client-actions .btn.danger{background:#fff5f5!important;color:#c0322b!important;border-color:#ffd0cc!important}.theme-light .client-search svg{color:#111827}.theme-light .btn.upgrade,.theme-light .upgrade-actions .btn.upgrade{background:#d7ff5c!important;color:#080b07!important;border-color:#d7ff5c!important}.theme-light .upgrade-actions .btn[href*="stripe_checkout"],.theme-light a.btn[href*="stripe_checkout"]{background:#d7ff5c!important;color:#080b07!important;border-color:#d7ff5c!important} .client-card[hidden]{display:none!important} 
/* Klarvo light-mode client capacity polish */
.theme-light .clients-side-card{
    background:#ffffff!important;
    border:1px solid #dfe8d4!important;
    box-shadow:0 24px 70px rgba(31,53,17,.08)!important;
}
.theme-light .clients-side-card .eyebrow{
    color:#111827!important;
    letter-spacing:.18em;
}
.theme-light .clients-side-card h2{
    color:#111827!important;
    font-weight:850;
    letter-spacing:-.055em;
    line-height:1.08;
}
.theme-light .clients-side-card p,
.theme-light .clients-side-card .muted{
    color:#475569!important;
}
.theme-light .limit-box{
    background:#f4fde8!important;
    border:2px solid #d8efbd!important;
    color:#223a12!important;
    border-radius:26px!important;
}
.theme-light .limit-box strong{
    color:#2f4d0d!important;
    font-weight:900;
}
.theme-light .upgrade-actions .btn.upgrade,
.theme-light a.btn.upgrade,
.theme-light .upgrade-actions a[href*="stripe_checkout.php?plan=pro"]:first-child{
    background:#d7ff5c!important;
    color:#05070d!important;
    border:1px solid #d7ff5c!important;
    box-shadow:0 16px 34px rgba(162,213,35,.28)!important;
}
.theme-light .upgrade-actions .btn.ghost,
.theme-light .upgrade-actions a.btn.ghost{
    background:#080b10!important;
    color:#ffffff!important;
    border:1px solid #080b10!important;
    box-shadow:0 16px 34px rgba(15,23,42,.16)!important;
}
.theme-light .upgrade-actions .btn.ghost:hover,
.theme-light .upgrade-actions a.btn.ghost:hover{
    background:#111827!important;
    color:#ffffff!important;
}
.theme-light .client-count{
    background:#f4f7ef!important;
    border:2px solid #dfe8d4!important;
    color:#1f3511!important;
    box-shadow:0 16px 34px rgba(31,53,17,.07)!important;
}
@media(max-width:1080px){.clients-top{grid-template-columns:1fr}.clients-stats{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.clients-title-row,.section-title-row{display:block}.clients-toolbar{grid-template-columns:1fr}.clients-toolbar .btn{width:100%}.client-count{margin-top:14px;font-size:17px;padding:12px 18px}.clients-stats{grid-template-columns:1fr}.clients-grid{grid-template-columns:1fr}.client-form-grid{grid-template-columns:1fr}.client-card{padding:22px}.client-card-head{grid-template-columns:56px 1fr}.client-avatar{width:56px;height:56px}.client-actions .btn{flex:1;justify-content:center}}


/* Extracted from reports.php */
/* Klarvo Reports UX polish */
.report-page-shell{
    display:flex;
    flex-direction:column;
    gap:22px;
}

.report-hero{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    margin-bottom:4px;
}

.report-hero .title{
    margin-bottom:8px;
}

.report-range-card{
    padding:26px;
    border-radius:30px;
}

.report-control-grid{
    display:grid;
    grid-template-columns:minmax(190px,1fr) minmax(190px,1fr) minmax(190px,1fr) minmax(230px,1.15fr) minmax(230px,1.15fr);
    gap:16px;
    align-items:end;
}

.report-field{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.report-field span{
    font-size:13px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:var(--muted,#9ca3af);
}

.report-field input{
    width:100%;
    height:58px;
    border-radius:20px;
    padding:0 18px;
    font-size:16px;
    font-weight:700;
}

.report-control-grid .btn{
    width:100%;
    min-height:58px;
    border-radius:20px;
    padding:0 18px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    white-space:nowrap;
}

.report-download-primary{
    background:#c8ff3d!important;
    color:#0b0b0c!important;
    box-shadow:0 18px 45px rgba(200,255,61,.18);
}

.report-download-secondary{
    background:rgba(255,255,255,.06)!important;
    color:var(--text,#fff)!important;
    border:1px solid rgba(255,255,255,.12)!important;
}

body.theme-light .report-download-secondary,
.theme-light .report-download-secondary{
    background:#ffffff!important;
    color:#111!important;
    border:1px solid #dfe4dc!important;
}

.report-helper-row{
    margin-top:16px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    color:var(--muted,#9ca3af);
    font-size:14px;
}

.report-kpi-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
}

.report-kpi{
    min-height:132px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    border-radius:28px;
}

.report-kpi small{
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:800;
    color:var(--muted,#9ca3af);
}

.report-kpi b{
    font-size:30px;
    line-height:1.1;
    letter-spacing:-.04em;
}

.report-summary-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
}

.report-summary-card{
    border-radius:28px;
    padding:28px;
    min-height:210px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
}

.report-summary-card h2{
    margin-top:0;
}

.report-summary-actions{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    margin-top:18px;
}

.report-summary-actions .btn{
    min-height:48px;
    border-radius:16px;
}


.report-kpi-link{
    color:inherit;
    text-decoration:none;
    display:flex;
}
.report-kpi-link .report-kpi{
    width:100%;
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.report-kpi-link:hover .report-kpi{
    transform:translateY(-2px);
    border-color:rgba(200,255,61,.36);
    box-shadow:0 20px 50px rgba(0,0,0,.16);
}
body.theme-light .report-kpi-link:hover .report-kpi,
.theme-light .report-kpi-link:hover .report-kpi{
    border-color:#c8ff3d;
    box-shadow:0 18px 44px rgba(15,23,42,.08);
}
.report-kpi .click-hint{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin-top:8px;
    font-size:13px;
    font-weight:800;
    color:#c8ff3d;
}
body.theme-light .report-kpi .click-hint,
.theme-light .report-kpi .click-hint{
    color:#365314;
}
.report-helper-row a{
    color:inherit;
    font-weight:800;
    text-decoration:none;
}
.report-helper-row a:hover{
    text-decoration:underline;
}

@media(max-width:1250px){
    .report-control-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .report-control-grid .btn{
        grid-column:auto;
    }
}

@media(max-width:900px){
    .report-hero{
        flex-direction:column;
        align-items:flex-start;
    }

    .report-kpi-grid,
    .report-summary-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:640px){
    .report-control-grid{
        grid-template-columns:1fr;
    }

    .report-range-card{
        padding:20px;
    }
}


/* Extracted from contact_view.php */
.client-profile{display:grid;gap:24px}.client-hero{position:relative;overflow:hidden;display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:28px;border-radius:36px;background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.035));border:1px solid rgba(255,255,255,.13);box-shadow:0 24px 80px rgba(0,0,0,.16)}.client-hero:before{content:"";position:absolute;inset:-1px;background:radial-gradient(circle at 0 0,rgba(215,255,92,.16),transparent 34%);pointer-events:none}.client-hero>*{position:relative}.client-avatar{width:62px;height:62px;border-radius:22px;display:grid;place-items:center;background:#d7ff5c;color:#080b07;font-weight:950;font-size:25px;box-shadow:0 16px 38px rgba(215,255,92,.16)}.client-title-wrap{display:flex;gap:16px;align-items:center}.client-title-wrap .title{margin:0}.client-type{display:inline-flex;align-items:center;margin-top:9px;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);color:var(--muted);font-weight:900;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.client-actions{display:flex;gap:10px;align-items:center;flex-wrap:nowrap}.client-actions .btn{white-space:nowrap}.client-summary{display:grid;grid-template-columns:minmax(310px,1.05fr) repeat(3,minmax(150px,.65fr));gap:16px}.client-panel,.client-stat{position:relative;overflow:hidden;padding:22px;border-radius:32px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.034));border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 55px rgba(0,0,0,.12)}.client-panel h2{margin:0 0 18px;font-size:22px;letter-spacing:-.04em}.client-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.client-detail{min-height:74px;padding:14px;border-radius:20px;background:rgba(255,255,255,.052);border:1px solid rgba(255,255,255,.09)}.client-detail.wide{grid-column:1/-1}.client-detail small{display:block;color:var(--muted);font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.13em}.client-detail b,.client-detail a{display:block;margin-top:7px;color:#fff;text-decoration:none;font-weight:850;line-height:1.45;word-break:break-word}.client-detail a:hover{color:#d7ff5c}.client-empty{padding:18px;border-radius:22px;background:rgba(255,255,255,.045);border:1px dashed rgba(255,255,255,.14);color:var(--muted);font-weight:750}.client-stat{display:flex;flex-direction:column;justify-content:space-between;min-height:130px}.client-stat small{display:block;color:var(--muted);font-weight:950;text-transform:uppercase;letter-spacing:.12em}.client-stat strong{display:block;margin-top:12px;font-size:27px;color:#fff;letter-spacing:-.055em}.client-stat.balance strong{color:#d7ff5c}.client-invoices{border-radius:36px;padding:18px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.034));border:1px solid rgba(255,255,255,.12);box-shadow:0 22px 70px rgba(0,0,0,.13)}.client-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:4px 4px 18px}.client-section-head h2{margin:0;letter-spacing:-.04em}.client-invoice-head,.client-invoice-row{display:grid;grid-template-columns:120px 120px minmax(170px,1fr) 125px 175px;gap:16px;align-items:center}.client-invoice-head{padding:6px 18px 14px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.18em;font-weight:950}.client-invoice-row{padding:16px 18px;margin-bottom:10px;border-radius:24px;border:1px solid rgba(255,255,255,.095);background:rgba(255,255,255,.040);transition:.18s ease}.client-invoice-row:hover{transform:translateY(-2px);border-color:rgba(215,255,92,.23);box-shadow:0 18px 42px rgba(0,0,0,.14)}.client-invoice-row:last-child{margin-bottom:0}.client-invoice-row a{color:inherit;text-decoration:none;font-weight:950}.client-invoice-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:nowrap}.client-invoice-actions .btn{min-height:38px;padding:0 12px;border-radius:14px;font-size:12px;white-space:nowrap}.btn.danger,.btn.delete-polished{background:linear-gradient(180deg,#ff6b5f,#e3372c)!important;color:#fff!important;border:1px solid rgba(255,255,255,.16)!important;box-shadow:0 12px 28px rgba(227,55,44,.24)!important}.btn.danger:hover,.btn.delete-polished:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(227,55,44,.30)!important}.theme-light .client-hero,.theme-light .client-panel,.theme-light .client-stat,.theme-light .client-invoices,.theme-light .client-invoice-row{background:#fff;border-color:#e1e8da;box-shadow:0 18px 50px rgba(15,23,42,.06)}.theme-light .client-type,.theme-light .client-detail{background:#f8faf5;border-color:#e2e8d8}.theme-light .client-detail b,.theme-light .client-detail a,.theme-light .client-stat strong{color:#111827}.theme-light .client-stat.balance strong{color:#557500}.theme-light .client-empty{background:#fff;border-color:#d9dfd1}@media(max-width:1100px){.client-summary{grid-template-columns:1fr 1fr}.client-panel{grid-column:1/-1}}@media(max-width:760px){.client-hero{display:grid;padding:22px}.client-title-wrap{align-items:flex-start}.client-actions{display:grid;grid-template-columns:1fr;width:100%}.client-actions .btn{width:100%;justify-content:center}.client-summary{grid-template-columns:1fr}.client-detail-grid{grid-template-columns:1fr}.client-invoice-head{display:none}.client-invoice-row{grid-template-columns:1fr;gap:8px}.client-invoice-actions{display:grid;grid-template-columns:1fr 1fr;justify-content:stretch}.client-invoice-actions .btn{width:100%;justify-content:center}}


/* Extracted from invoices.php */
.invoice-list-shell{display:grid;gap:20px}
.invoice-list-top{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}
.invoice-list-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.invoice-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10);color:var(--muted);font-size:13px;font-weight:800}
.invoice-range-card{padding:18px;border-radius:24px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.invoice-range-form{display:grid;grid-template-columns:1fr 1fr auto auto;gap:12px;align-items:end}
.invoice-range-form label{display:grid;gap:8px}
.invoice-range-form span{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.invoice-range-form input{height:48px;border-radius:16px}
.invoice-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.invoice-kpi{padding:18px;border-radius:22px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.10)}
.invoice-kpi small{display:block;color:var(--muted);font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.invoice-kpi b{display:block;margin-top:8px;font-size:24px;letter-spacing:-.04em}
.invoice-table-wrap{overflow-x:auto;border-radius:24px;border:1px solid rgba(255,255,255,.10)}
.invoice-table{min-width:820px}
.invoice-table td,.invoice-table th{vertical-align:middle}
.invoice-table tbody tr:hover td{background:rgba(255,255,255,.045)}
.invoice-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.invoice-empty{padding:38px;text-align:center;color:var(--muted)}
tr.invoice-cancelled-row{opacity:.72}
.pill.cancelled{background:rgba(239,68,68,.14)!important;color:#fca5a5!important;border:1px solid rgba(239,68,68,.35)!important}
.invoice-cancel-action{background:rgba(239,68,68,.10)!important;color:#ffb4ae!important;border:1px solid rgba(239,68,68,.28)!important;box-shadow:none!important}
.theme-light .invoice-chip,.theme-light .invoice-range-card,.theme-light .invoice-kpi,.theme-light .invoice-table-wrap{background:#fff;border-color:#e5e7eb;box-shadow:0 10px 26px rgba(15,23,42,.04)}
.theme-light .invoice-table tbody tr:hover td{background:#f8fafc}
@media(max-width:850px){.invoice-list-top{display:block}.invoice-list-top .btn{width:100%;margin-top:14px}.invoice-range-form{grid-template-columns:1fr}.invoice-range-form .btn{width:100%}.invoice-kpis{grid-template-columns:1fr}}


/* Extracted from export_invoices.php */
@page{size:A4;margin:0}html,body{margin:0;padding:0;background:#fff}*{box-sizing:border-box}


/* Extracted from expenses.php */
.expense-entry-grid{display:grid;grid-template-columns:1.05fr .95fr 1fr;gap:18px;align-items:start}
.drop-zone,.camera-zone{border:1px dashed rgba(255,255,255,.22);border-radius:24px;padding:28px;text-align:center;background:rgba(255,255,255,.055);transition:.2s ease;cursor:pointer;color:#fff;display:block}
.drop-zone strong,.camera-zone strong{display:block;color:#fff;font-size:18px;line-height:1.25}
.drop-zone .help,.camera-zone .help{display:block;margin-top:8px;color:#c7d0c0!important;font-size:14px;line-height:1.45}
.drop-zone:hover,.drop-zone.dragover,.camera-zone:hover{background:rgba(255,255,255,.085);border-color:rgba(200,255,61,.65);transform:translateY(-1px)}
.drop-zone input,.camera-zone input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.camera-zone{min-height:178px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.035));border-style:solid}
.camera-icon{width:54px;height:54px;border-radius:18px;background:#fff;color:#0b0d0f;display:grid;place-items:center;font-size:24px;margin:0 auto 4px;box-shadow:0 12px 28px rgba(0,0,0,.22)}
.camera-preview-name{margin-top:12px;display:none;padding:10px 12px;border-radius:14px;background:rgba(200,255,61,.12);color:#eaffad;font-size:13px;font-weight:700;word-break:break-word}
.file-list{display:grid;gap:8px;margin-top:14px}.file-pill{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.08);color:var(--text,#fff);font-size:14px}.loading-overlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.72);z-index:9999;backdrop-filter:blur(8px)}.loading-box{background:#151518;border:1px solid rgba(255,255,255,.1);border-radius:28px;padding:34px;max-width:420px;text-align:center;box-shadow:0 30px 90px rgba(0,0,0,.45)}.spinner{width:44px;height:44px;border:4px solid rgba(255,255,255,.12);border-top-color:#c8ff3d;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 18px}@keyframes spin{to{transform:rotate(360deg)}}.alert.success{background:rgba(34,197,94,.14);border:1px solid rgba(34,197,94,.45);color:#86efac;padding:16px 18px;border-radius:18px;font-weight:700}.alert.error{background:rgba(239,68,68,.14);border:1px solid rgba(239,68,68,.45);color:#fca5a5;padding:16px 18px;border-radius:18px;font-weight:700}.bulk-review-stack{display:grid;gap:18px}.mini-file-name{font-size:14px;color:#a1a1aa;margin-top:6px}.review-index{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:12px;background:rgba(200,255,61,.12);color:#c8ff3d;font-weight:800;margin-right:8px}
.theme-light .drop-zone,.theme-light .camera-zone{background:#fff;color:#111827;border-color:#d8dfcf}.theme-light .drop-zone strong,.theme-light .camera-zone strong{color:#111827}.theme-light .drop-zone .help,.theme-light .camera-zone .help{color:#667085!important}.theme-light .camera-icon{background:#0b0d0f;color:#fff}
@media(max-width:1180px){.expense-entry-grid{grid-template-columns:1fr 1fr}}@media(max-width:780px){.expense-entry-grid{grid-template-columns:1fr}.drop-zone,.camera-zone{padding:22px}.camera-zone{min-height:160px}}


/* Extracted from accountant_portal.php */
body{
            margin:0;
            min-height:100vh;
            background:#0b0b0c;
            color:#ffffff;
            font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
        }

        .portal-wrap{
            max-width:760px;
            margin:60px auto;
            padding:24px;
        }

        .portal-card{
            background:#151518;
            border:1px solid rgba(255,255,255,.08);
            border-radius:28px;
            padding:40px;
            box-shadow:0 30px 80px rgba(0,0,0,.35);
            color:#ffffff;
        }

        .portal-card h1,
        .portal-card h2,
        .portal-card h3,
        .portal-card p{
            color:#ffffff;
        }

        .portal-card .muted{
            color:#a1a1aa;
            line-height:1.6;
        }

        .eyebrow{
            display:inline-flex;
            align-items:center;
            gap:8px;
            padding:8px 12px;
            border-radius:999px;
            background:rgba(199,255,61,.12);
            color:#c8ff3d;
            font-size:12px;
            letter-spacing:.08em;
            text-transform:uppercase;
            font-weight:700;
            margin-bottom:18px;
        }

        .btn{
            display:inline-flex;
            align-items:center;
            justify-content:center;
            min-height:48px;
            padding:0 20px;
            border-radius:16px;
            background:#c8ff3d;
            color:#111111 !important;
            text-decoration:none;
            font-weight:700;
            margin-top:18px;
        }

        .small-note{
            font-size:14px;
            margin-top:18px;
        }

        .status-pill{
            display:inline-flex;
            align-items:center;
            gap:8px;
            margin-top:18px;
            padding:10px 14px;
            border-radius:999px;
            background:rgba(34,197,94,.12);
            color:#4ade80;
            font-weight:700;
            font-size:14px;
        }


/* Extracted from contact_edit.php */
.contact-edit-shell{display:grid;gap:22px}
.contact-edit-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}
.contact-edit-card{border-radius:34px;padding:28px}
.contact-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contact-edit-grid .wide{grid-column:1/-1}
.contact-edit-grid input,.contact-edit-grid select,.contact-edit-grid textarea{min-height:54px}
.contact-edit-grid textarea{min-height:120px}
.contact-edit-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}
.contact-edit-actions .btn{min-height:50px;border-radius:16px}
@media(max-width:760px){.contact-edit-hero{display:block}.contact-edit-hero .btn{width:100%;margin-top:14px}.contact-edit-grid{grid-template-columns:1fr}.contact-edit-actions{display:grid}.contact-edit-actions .btn{width:100%;justify-content:center}}


/* Extracted from invoice_view.php */
.inline-editor{margin:22px 0}.invoice-view-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:nowrap;white-space:nowrap}.invoice-view-actions .btn{min-height:42px;padding:0 15px;border-radius:15px;font-size:13px}.invoice-client-link{display:inline-flex;margin-top:8px;color:var(--muted);font-weight:800;text-decoration:none;border-bottom:1px solid rgba(215,255,92,.35)}.invoice-client-link:hover{color:#d7ff5c}.inline-items{display:grid;gap:12px}.inline-item{display:grid;grid-template-columns:1.5fr .55fr .75fr;gap:12px}.inline-editor summary{cursor:pointer;font-weight:800}.inline-editor details{padding:0}.inline-editor .editor-inner{margin-top:18px}@media(max-width:760px){.inline-item{grid-template-columns:1fr}.invoice-view-actions{width:100%;display:grid;grid-template-columns:repeat(2,1fr);white-space:normal}.invoice-view-actions .btn{width:100%;justify-content:center}}.btn.danger,.btn.delete-polished{background:linear-gradient(180deg,#ff6b5f,#e3372c)!important;color:#fff!important;border:1px solid rgba(255,255,255,.16)!important;box-shadow:0 12px 28px rgba(227,55,44,.24)!important}.btn.danger:hover,.btn.delete-polished:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(227,55,44,.30)!important}.cancelled-banner{margin:16px 0;padding:18px 22px;border-radius:22px;background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.35);color:#fca5a5;font-weight:900;letter-spacing:.08em;text-transform:uppercase;text-align:center}.pill.cancelled{background:rgba(239,68,68,.14)!important;color:#fca5a5!important;border:1px solid rgba(239,68,68,.35)!important}.cancel-action{background:rgba(239,68,68,.10)!important;color:#ffb4ae!important;border:1px solid rgba(239,68,68,.28)!important;box-shadow:none!important}


/* Extracted from expenses-single.php */
.alert.success{
  background:rgba(34,197,94,.14) !important;
  border:1px solid rgba(34,197,94,.45) !important;
  color:#86efac !important;
  padding:16px 18px;
  border-radius:18px;
  font-weight:800;
}
.alert.error{
  background:rgba(239,68,68,.14) !important;
  border:1px solid rgba(239,68,68,.45) !important;
  color:#fecaca !important;
  padding:16px 18px;
  border-radius:18px;
  font-weight:800;
}
.klarvo-loading-overlay{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
  align-items:center;
  justify-content:center;
  background:rgba(0,0,0,.72);
  backdrop-filter:blur(10px);
}
.klarvo-loading-box{
  width:min(420px,calc(100vw - 40px));
  border-radius:28px;
  padding:30px;
  background:#151518;
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  text-align:center;
  box-shadow:0 30px 80px rgba(0,0,0,.45);
}
.klarvo-spinner{
  width:42px;
  height:42px;
  border:4px solid rgba(255,255,255,.18);
  border-top-color:#c8ff3d;
  border-radius:50%;
  margin:0 auto 18px;
  animation:klarvoSpin .8s linear infinite;
}
@keyframes klarvoSpin{to{transform:rotate(360deg)}}
button[disabled]{cursor:not-allowed;opacity:.75}


/* Extracted from invoice_edit.php */
.invoice-edit-lines{display:grid;gap:12px}.invoice-line{display:grid;grid-template-columns:minmax(220px,1fr) 120px 140px 44px;gap:12px;align-items:end;padding:14px;border-radius:20px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08)}.invoice-line button{height:46px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#fff;cursor:pointer}.edit-actions{display:flex;gap:12px;flex-wrap:nowrap;margin-top:18px;align-items:center}.edit-actions .btn{white-space:nowrap}.theme-light .invoice-line{background:#f8faf5;border-color:#e5e7eb}.theme-light .invoice-line button{background:#fff;color:#111;border-color:#d1d5db}@media(max-width:800px){.invoice-line{grid-template-columns:1fr 1fr}.invoice-line label:first-child{grid-column:1/-1}.invoice-line button{width:100%;grid-column:1/-1}.edit-actions{display:grid;grid-template-columns:1fr;white-space:normal}.edit-actions .btn{width:100%;justify-content:center}}
.btn.danger,.btn.delete-polished{background:linear-gradient(180deg,#ff6b5f,#e3372c)!important;color:#fff!important;border:1px solid rgba(255,255,255,.16)!important;box-shadow:0 12px 28px rgba(227,55,44,.24)!important}.btn.danger:hover,.btn.delete-polished:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(227,55,44,.30)!important}



/* =========================================================
   Klarvo unified app design system — dashboard-led polish
   Two themes only: dark + light. Neutral black/white/lime.
   ========================================================= */

:root{
  --k-bg:#f4f5f1;
  --k-surface:#ffffff;
  --k-surface-2:#f8faf5;
  --k-ink:#070807;
  --k-text:#10130f;
  --k-muted:#667064;
  --k-line:#dfe6d8;
  --k-line-soft:#edf1e9;
  --k-lime:#c8ff2e;
  --k-lime-2:#efffd1;
  --k-danger:#ef4444;
  --k-success:#1f9d55;
  --k-radius-xl:34px;
  --k-radius-lg:24px;
  --k-radius-md:16px;
  --k-shadow:0 28px 80px rgba(17,24,39,.09);
  --k-soft-shadow:0 12px 34px rgba(17,24,39,.06);
}

body.theme-light,
body.theme-midnight,
body.theme-graphite{
  --bg:var(--k-bg);
  --card:var(--k-surface);
  --ink:var(--k-ink);
  --text:var(--k-text);
  --muted:var(--k-muted);
  --line:var(--k-line);
  --blue:var(--k-ink);
  --green:var(--k-success);
  --red:var(--k-danger);
  --shadow:var(--k-shadow);
  background:
    radial-gradient(circle at 82% 12%, rgba(200,255,46,.16), transparent 24%),
    linear-gradient(180deg,#fbfcf8 0%,#f3f5ef 100%) !important;
  color:var(--k-text)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
}

body.theme-dark{
  --bg:#050705;
  --card:#10130f;
  --ink:#f7faf3;
  --text:#f7faf3;
  --muted:#aab4a4;
  --line:rgba(255,255,255,.10);
  --blue:#c8ff2e;
  --green:#c8ff2e;
  --red:#ff7777;
  --shadow:0 30px 90px rgba(0,0,0,.34);
  background:
    radial-gradient(circle at 84% 10%, rgba(200,255,46,.13), transparent 26%),
    linear-gradient(180deg,#050705 0%,#090c08 100%)!important;
  color:var(--text)!important;
}

body.theme-midnight,
body.theme-graphite{background:linear-gradient(180deg,#fbfcf8,#f3f5ef)!important;color:var(--k-text)!important}

.app{
  display:grid!important;
  grid-template-columns:280px minmax(0,1fr)!important;
  min-height:100vh!important;
}

.sidebar{
  background:rgba(255,255,255,.92)!important;
  border-right:1px solid var(--k-line)!important;
  box-shadow:8px 0 36px rgba(17,24,39,.04)!important;
  padding:32px 28px!important;
  position:sticky!important;
  top:0!important;
  height:100vh!important;
}

.theme-dark .sidebar{
  background:#050705!important;
  border-right:1px solid rgba(255,255,255,.08)!important;
  box-shadow:none!important;
}

.logo-text-brand{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:0 0 30px!important;
  color:#050705!important;
  text-decoration:none!important;
}

.theme-dark .logo-text-brand{color:#fff!important}

.logo-dot{
  width:22px!important;
  height:22px!important;
  border-radius:999px!important;
  background:var(--k-lime)!important;
  box-shadow:0 0 0 8px rgba(200,255,46,.18)!important;
  display:inline-block!important;
}

.logo-word{
  font-size:27px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.07em!important;
}

.logo-with-image img{display:none!important}

.menu{
  display:grid!important;
  gap:9px!important;
}

.menu a{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  min-height:52px!important;
  padding:0 20px!important;
  color:#111827!important;
  border-radius:18px!important;
  font-size:16px!important;
  font-weight:850!important;
  text-decoration:none!important;
  border:1px solid transparent!important;
  transition:background .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease!important;
}

.theme-dark .menu a{color:#f8faf4!important}

.menu a span{
  width:18px!important;
  color:#6f796d!important;
  text-align:center!important;
}

.menu a:hover{
  background:#f3f6ef!important;
  transform:translateX(2px)!important;
}

.theme-dark .menu a:hover{background:rgba(255,255,255,.06)!important}

.menu a.active{
  background:#050705!important;
  color:#fff!important;
  border-color:#1d241a!important;
  box-shadow:0 14px 34px rgba(0,0,0,.12)!important;
}

.menu a.active span{color:var(--k-lime)!important}

.theme-dark .menu a.active{
  background:#10140f!important;
  border-color:rgba(200,255,46,.25)!important;
}

.sidebar-footer{
  position:absolute!important;
  left:28px!important;
  right:28px!important;
  bottom:30px!important;
  border-radius:28px!important;
  background:#fff!important;
  border:1px solid var(--k-line)!important;
  box-shadow:var(--k-soft-shadow)!important;
  padding:22px!important;
}

.theme-dark .sidebar-footer{
  background:#0d110d!important;
  border-color:rgba(255,255,255,.08)!important;
  box-shadow:none!important;
}

.main{
  padding:40px 48px 64px!important;
  max-width:1480px!important;
  width:100%!important;
  margin:0 auto!important;
}

.topbar,.section-title-row,.client-section-head,.invoice-list-top,.contact-edit-hero{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin-bottom:24px!important;
}

.title,h1.title{
  margin:10px 0 10px!important;
  color:var(--text)!important;
  font-size:clamp(42px,4vw,62px)!important;
  line-height:.98!important;
  letter-spacing:-.08em!important;
  font-weight:950!important;
}

h1,h2,h3{
  color:var(--text)!important;
  letter-spacing:-.06em!important;
}

h2{font-size:28px!important;line-height:1.08!important}

.eyebrow{
  display:inline-flex!important;
  align-items:center!important;
  min-height:32px!important;
  padding:7px 14px!important;
  border-radius:999px!important;
  background:#eff8df!important;
  color:#6c7966!important;
  font-size:12px!important;
  font-weight:950!important;
  letter-spacing:.22em!important;
  text-transform:uppercase!important;
}

.theme-dark .eyebrow{
  background:rgba(200,255,46,.10)!important;
  color:#d9ff69!important;
}

.muted{color:var(--muted)!important}

.card,
.client-card,
.clients-hero-card,
.clients-side-card,
.client-panel,
.client-stat,
.client-invoices,
.invoice-kpi,
.invoice-range-card,
.invoice-table-wrap,
.contact-edit-card{
  background:var(--card)!important;
  border:1px solid var(--line)!important;
  border-radius:var(--k-radius-xl)!important;
  box-shadow:var(--shadow)!important;
  color:var(--text)!important;
}

.theme-dark .card,
.theme-dark .client-card,
.theme-dark .clients-hero-card,
.theme-dark .clients-side-card,
.theme-dark .client-panel,
.theme-dark .client-stat,
.theme-dark .client-invoices,
.theme-dark .invoice-kpi,
.theme-dark .invoice-range-card,
.theme-dark .invoice-table-wrap,
.theme-dark .contact-edit-card{
  background:#0d110d!important;
  border-color:rgba(255,255,255,.08)!important;
}

.card{padding:28px!important}

.btn,button.btn,a.btn{
  min-height:52px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  padding:0 24px!important;
  border-radius:18px!important;
  background:#050705!important;
  color:#fff!important;
  border:1px solid #050705!important;
  box-shadow:0 18px 44px rgba(0,0,0,.14)!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}

.btn:hover{transform:translateY(-1px)!important;box-shadow:0 22px 54px rgba(0,0,0,.18)!important}

.btn.secondary,
a.btn.secondary,
button.btn.secondary{
  background:#fff!important;
  color:#050705!important;
  border:1px solid var(--line)!important;
  box-shadow:var(--k-soft-shadow)!important;
}

.theme-dark .btn.secondary,
.theme-dark a.btn.secondary,
.theme-dark button.btn.secondary{
  background:#151915!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.10)!important;
}

.btn.upgrade,
.btn.primary,
button[type="submit"].btn{
  background:#050705!important;
  color:#fff!important;
  border-color:#050705!important;
}

.btn.danger,.btn.delete-polished{
  background:#141414!important;
  color:#fff!important;
  border-color:#141414!important;
}

.btn.small,.client-invoice-actions .btn{
  min-height:40px!important;
  border-radius:14px!important;
  padding:0 14px!important;
  font-size:13px!important;
}

input,select,textarea{
  width:100%!important;
  min-height:52px!important;
  border-radius:18px!important;
  border:1px solid var(--line)!important;
  background:#fff!important;
  color:#111827!important;
  padding:13px 16px!important;
  box-shadow:none!important;
  font-weight:750!important;
}

.theme-dark input,.theme-dark select,.theme-dark textarea{
  background:#080b08!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.10)!important;
}

textarea{min-height:110px!important;resize:vertical!important}

label{
  color:#4e5b4d!important;
  font-weight:850!important;
  display:grid!important;
  gap:8px!important;
}

.theme-dark label{color:#b8c2b0!important}

.filters,
.invoice-range-form,
.client-form-grid,
.contact-edit-grid,
.form.two{
  gap:16px!important;
}

.filters{
  display:grid!important;
  grid-template-columns:220px 220px auto auto!important;
  align-items:end!important;
  margin-bottom:22px!important;
}

.grid.cols-4{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
  margin-bottom:18px!important;
}

.kpi{
  min-height:126px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  background:
    radial-gradient(circle at 88% 16%, rgba(200,255,46,.20), transparent 32%),
    #fff!important;
}

.theme-dark .kpi{
  background:radial-gradient(circle at 88% 16%, rgba(200,255,46,.13), transparent 34%),#0d110d!important;
}

.kpi small{
  color:#8a9688!important;
  font-weight:950!important;
  text-transform:none!important;
}

.kpi b{
  display:block!important;
  margin-top:10px!important;
  color:var(--text)!important;
  font-size:30px!important;
  line-height:1!important;
  letter-spacing:-.07em!important;
}

.kpi b.green,.green{color:#050705!important}
.theme-dark .kpi b.green,.theme-dark .green{color:#d9ff69!important}
.kpi b.red,.red{color:#ff6b6b!important}

.dashboard-flow-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1.45fr) minmax(330px,.78fr)!important;
  gap:22px!important;
  align-items:start!important;
}

.dashboard-side-stack{
  display:grid!important;
  gap:22px!important;
}

.chart-card,.dash-panel{
  border-radius:34px!important;
}

.chart-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:20px!important;
  margin-bottom:22px!important;
}

.chart-legend,.client-quick-stats{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}

.legend-item,.client-quick-stats span{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  padding:7px 11px!important;
  border-radius:999px!important;
  background:#f3f6ef!important;
  color:#596555!important;
  border:1px solid var(--line-soft)!important;
  font-size:12px!important;
  font-weight:850!important;
}

.theme-dark .legend-item,.theme-dark .client-quick-stats span{
  background:rgba(255,255,255,.05)!important;
  color:#c5cebe!important;
  border-color:rgba(255,255,255,.08)!important;
}

.legend-dot{
  width:10px!important;
  height:10px!important;
  border-radius:999px!important;
  background:#050705!important;
  display:inline-block!important;
}

.legend-dot.exp{background:#b7c1b0!important}

.modern-chart{
  height:260px!important;
  display:grid!important;
  grid-template-columns:repeat(12,1fr)!important;
  gap:12px!important;
  align-items:end!important;
}

.chart-month{
  min-width:0!important;
  height:100%!important;
  display:grid!important;
  grid-template-rows:1fr auto!important;
  gap:10px!important;
  align-items:end!important;
}

.bar-pair{
  height:100%!important;
  display:flex!important;
  align-items:end!important;
  justify-content:center!important;
  gap:5px!important;
}

.bar{
  width:15px!important;
  min-height:4px!important;
  border-radius:999px 999px 6px 6px!important;
  background:#050705!important;
}

.bar.expense{background:#cfd8c9!important}
.theme-dark .bar{background:#c8ff2e!important}
.theme-dark .bar.expense{background:#596154!important}

.chart-label{
  color:var(--muted)!important;
  font-size:12px!important;
  font-weight:850!important;
  text-align:center!important;
}

.distribution-card{
  display:grid!important;
  justify-items:center!important;
  gap:18px!important;
}

.distribution-donut{
  width:210px!important;
  height:210px!important;
  border-radius:999px!important;
  display:grid!important;
  place-items:center!important;
  background:
    radial-gradient(circle,#fff 0 50%,transparent 52%),
    conic-gradient(#050705 0 calc(var(--income-share)*1%), #c8ff2e calc(var(--income-share)*1%) 100%)!important;
  box-shadow:inset 0 0 0 18px rgba(255,255,255,.08)!important;
}

.theme-dark .distribution-donut{
  background:
    radial-gradient(circle,#0d110d 0 50%,transparent 52%),
    conic-gradient(#c8ff2e 0 calc(var(--income-share)*1%), #3f463a calc(var(--income-share)*1%) 100%)!important;
}

.distribution-donut span{
  font-weight:950!important;
  letter-spacing:-.04em!important;
  line-height:1.12!important;
  text-align:center!important;
  color:var(--text)!important;
}

.distribution-list{
  width:100%!important;
  display:grid!important;
  gap:9px!important;
}

.distribution-list div{
  display:grid!important;
  grid-template-columns:8px 1fr auto!important;
  gap:10px!important;
  align-items:center!important;
  min-height:42px!important;
  padding:9px 12px!important;
  border-radius:14px!important;
  background:#f6f8f2!important;
  color:var(--text)!important;
}

.theme-dark .distribution-list div{background:rgba(255,255,255,.05)!important}

.distribution-list i{
  width:8px!important;
  height:26px!important;
  border-radius:999px!important;
  background:#050705!important;
}

.distribution-list i.expense{background:#c8ff2e!important}
.distribution-list i.profit{background:#a8b39f!important}

.distribution-list span{color:var(--muted)!important;font-weight:850!important}
.distribution-list b{font-weight:950!important;letter-spacing:-.03em!important}

.panel-title-row{
  display:flex!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin-bottom:18px!important;
}

.activity-list{display:grid!important;gap:10px!important}

.activity-item{
  display:grid!important;
  grid-template-columns:44px 1fr auto!important;
  align-items:center!important;
  gap:12px!important;
  padding:12px!important;
  border-radius:18px!important;
  background:#f7f9f4!important;
  border:1px solid var(--line-soft)!important;
}

.theme-dark .activity-item{
  background:rgba(255,255,255,.05)!important;
  border-color:rgba(255,255,255,.07)!important;
}

.activity-icon{
  width:44px!important;
  height:44px!important;
  border-radius:14px!important;
  background:#050705!important;
  color:#c8ff2e!important;
  display:grid!important;
  place-items:center!important;
  font-weight:950!important;
  font-size:12px!important;
}

table{
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0 10px!important;
}

th{
  color:#687465!important;
  font-size:12px!important;
  text-transform:uppercase!important;
  letter-spacing:.16em!important;
  font-weight:950!important;
  padding:10px 14px!important;
  text-align:left!important;
}

td{
  background:#fff!important;
  border-top:1px solid var(--line-soft)!important;
  border-bottom:1px solid var(--line-soft)!important;
  padding:16px 14px!important;
  color:var(--text)!important;
  font-weight:750!important;
}

.theme-dark td{
  background:#0d110d!important;
  border-color:rgba(255,255,255,.06)!important;
}

td:first-child{border-left:1px solid var(--line-soft)!important;border-radius:18px 0 0 18px!important}
td:last-child{border-right:1px solid var(--line-soft)!important;border-radius:0 18px 18px 0!important}

.pill{
  display:inline-flex!important;
  align-items:center!important;
  min-height:30px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  background:#eef6df!important;
  color:#31420f!important;
  font-size:12px!important;
  font-weight:950!important;
  border:1px solid #dcebc4!important;
}

.pill.paid{background:#effbdc!important;color:#365314!important;border-color:#d8efbd!important}
.pill.unpaid,.pill.overdue{background:#fff5f5!important;color:#991b1b!important;border-color:#fecaca!important}
.pill.draft{background:#f3f6ef!important;color:#4e5b4d!important;border-color:#dfe6d8!important}
.pill.cancelled{background:#f1f1f1!important;color:#6b7280!important;border-color:#d1d5db!important}

.clients-grid,
.invoice-kpis{
  gap:20px!important;
}

.client-card{
  transition:transform .18s ease, box-shadow .18s ease!important;
}

.client-card:hover{
  transform:translateY(-3px)!important;
  box-shadow:0 34px 90px rgba(17,24,39,.10)!important;
}

.client-main h3{
  color:var(--text)!important;
  font-size:24px!important;
}

.client-avatar{
  background:#f3ffe1!important;
  color:#050705!important;
  border-color:#d7ff70!important;
}

.theme-dark .client-avatar{
  background:#c8ff2e!important;
  color:#050705!important;
}

.client-actions,.invoice-actions,.contact-edit-actions,.upgrade-actions,.actions{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  flex-wrap:wrap!important;
}

.client-actions .btn,
.invoice-actions .btn{
  flex:0 0 auto!important;
}

.client-search input{
  height:58px!important;
  padding-left:52px!important;
}

.theme-switch{
  width:100%!important;
  min-height:44px!important;
  border-radius:999px!important;
  padding:0 12px!important;
  background:#fff!important;
  border:1px solid var(--line)!important;
  color:#050705!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  font-weight:850!important;
}

.theme-dark .theme-switch{
  background:#151915!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.10)!important;
}

.switch-track{
  width:46px!important;
  height:24px!important;
  border-radius:999px!important;
  background:#c8ff2e!important;
  padding:3px!important;
  display:flex!important;
  align-items:center!important;
}

.switch-track.on{justify-content:flex-end!important}

.switch-knob{
  width:18px!important;
  height:18px!important;
  border-radius:999px!important;
  background:#fff!important;
  box-shadow:0 2px 8px rgba(0,0,0,.15)!important;
}

.logout{
  display:block!important;
  margin-top:14px!important;
  color:var(--text)!important;
  font-weight:950!important;
  text-decoration:none!important;
}

@media(max-width:1180px){
  .app{grid-template-columns:1fr!important}
  .sidebar{position:relative!important;height:auto!important;padding:22px!important}
  .sidebar-footer{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;margin-top:18px!important}
  .main{padding:28px 22px 46px!important}
  .filters{grid-template-columns:1fr 1fr!important}
  .grid.cols-4{grid-template-columns:repeat(2,1fr)!important}
  .dashboard-flow-layout{grid-template-columns:1fr!important}
}

@media(max-width:720px){
  .topbar,.section-title-row,.client-section-head,.invoice-list-top,.contact-edit-hero{display:block!important}
  .actions,.client-actions,.invoice-actions,.contact-edit-actions{display:grid!important;grid-template-columns:1fr!important}
  .btn{width:100%!important}
  .filters,.grid.cols-4,.client-form-grid,.contact-edit-grid,.invoice-kpis{grid-template-columns:1fr!important}
  .title,h1.title{font-size:42px!important}
  .modern-chart{gap:6px!important}
  .bar{width:10px!important}
}


/* =========================================================
   UX polish: tables, mobile app shell, login, contacts avatar
   ========================================================= */

html,body{max-width:100%;overflow-x:hidden}

.mobile-menu-btn{display:none}

.row-main-link{
  font-weight:950!important;
  color:var(--text)!important;
  text-decoration:none!important;
}
.row-main-link:hover{text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:4px!important}

.app-list-card{padding:24px!important}
.app-table-scroll{
  width:100%!important;
  overflow-x:auto!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior-x:contain!important;
  padding-bottom:4px!important;
}
.app-table-scroll::-webkit-scrollbar,.row-actions-scroll::-webkit-scrollbar{height:6px}
.app-table-scroll::-webkit-scrollbar-thumb,.row-actions-scroll::-webkit-scrollbar-thumb{background:#d7decf;border-radius:999px}
.theme-dark .app-table-scroll::-webkit-scrollbar-thumb,.theme-dark .row-actions-scroll::-webkit-scrollbar-thumb{background:#333b31}

.app-data-table,.invoice-table{
  width:100%!important;
  min-width:860px!important;
  border-collapse:separate!important;
  border-spacing:0 10px!important;
}
.app-data-table th,.invoice-table th{
  position:sticky!important;
  top:0!important;
  z-index:1!important;
  background:var(--card)!important;
}
.app-data-table td,.invoice-table td{
  vertical-align:middle!important;
}
.table-actions,.invoice-actions{
  min-width:180px!important;
}
.invoice-actions,.table-actions .row-actions-scroll,.client-actions.row-actions-scroll{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  flex-wrap:nowrap!important;
}
.row-actions-scroll{
  overflow-x:auto!important;
  -webkit-overflow-scrolling:touch!important;
  white-space:nowrap!important;
  scroll-snap-type:x proximity!important;
  max-width:100%!important;
  padding-bottom:2px!important;
}
.row-actions-scroll .btn,.invoice-actions .btn{
  flex:0 0 auto!important;
  scroll-snap-align:start!important;
}
.invoice-table .right,.app-data-table .right{text-align:right!important}

.client-avatar{
  background:#fff!important;
  color:#050705!important;
  border:1px solid #dfe6d8!important;
  box-shadow:0 10px 24px rgba(17,24,39,.08)!important;
}
.theme-dark .client-avatar{
  background:#fff!important;
  color:#050705!important;
  border-color:rgba(255,255,255,.22)!important;
}

.auth-page-premium{
  min-height:100vh!important;
  background:
    radial-gradient(circle at 17% 16%, rgba(200,255,46,.18), transparent 28%),
    radial-gradient(circle at 82% 8%, rgba(255,255,255,.08), transparent 30%),
    linear-gradient(135deg,#050705 0%,#0b0f0a 47%,#f5f6f1 47.1%,#fbfcf8 100%)!important;
  display:grid!important;
  place-items:center!important;
  padding:34px!important;
  color:#050705!important;
}
.auth-premium-shell{
  width:min(1120px,100%)!important;
  display:grid!important;
  grid-template-columns:1fr 460px!important;
  gap:24px!important;
  align-items:stretch!important;
}
.auth-premium-brand{
  min-height:680px!important;
  border-radius:38px!important;
  background:
    radial-gradient(circle at 12% 18%, rgba(200,255,46,.25), transparent 30%),
    linear-gradient(180deg,#070807 0%,#0d110d 100%)!important;
  color:#fff!important;
  padding:40px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  overflow:hidden!important;
  position:relative!important;
}
.auth-premium-brand:after{
  content:""!important;
  position:absolute!important;
  right:-90px!important;
  bottom:-90px!important;
  width:330px!important;
  height:330px!important;
  border-radius:999px!important;
  border:42px solid rgba(200,255,46,.18)!important;
  animation:klarvoFloat 7s ease-in-out infinite!important;
}
.auth-premium-brand .logo-word,.auth-premium-brand h1,.auth-premium-brand p{color:#fff!important}
.auth-premium-logo{position:relative!important;z-index:2!important;color:#fff!important}
.auth-premium-copy{position:relative!important;z-index:2!important;max-width:620px!important}
.auth-premium-copy h1{
  font-size:clamp(44px,5vw,76px)!important;
  line-height:.92!important;
  letter-spacing:-.085em!important;
  margin:22px 0!important;
  color:#fff!important;
}
.auth-premium-copy p{font-size:20px!important;line-height:1.45!important;color:#c9d0c5!important;max-width:560px!important}
.auth-mini-grid{
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:14px!important;
}
.auth-mini-grid div{
  min-height:112px!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  padding:18px!important;
}
.auth-mini-grid b{display:block!important;color:#fff!important;margin-bottom:8px!important}
.auth-mini-grid span{display:block!important;color:#b9c3b1!important;font-size:13px!important;line-height:1.35!important}
.auth-premium-card{
  padding:38px!important;
  align-self:center!important;
}
.auth-premium-card h2{
  font-size:46px!important;
  margin:14px 0 8px!important;
}
.auth-premium-card .social-btn{
  margin:22px 0 14px!important;
  width:100%!important;
  min-height:54px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  border-radius:18px!important;
  border:1px solid var(--line)!important;
  background:#fff!important;
  color:#050705!important;
  font-weight:950!important;
  box-shadow:var(--k-soft-shadow)!important;
}
.auth-premium-card .or{
  display:grid!important;
  grid-template-columns:1fr auto 1fr!important;
  align-items:center!important;
  gap:12px!important;
  color:var(--muted)!important;
  margin:16px 0!important;
}
.auth-premium-card .or span{height:1px;background:var(--line)}
.auth-premium-card .or b{font-size:12px;text-transform:uppercase;letter-spacing:.14em}
.auth-foot{text-align:center!important;color:var(--muted)!important;margin:18px 0 0!important}
.auth-foot a{color:#050705!important;font-weight:950!important}

.marketing-site{
  background:#050705!important;
  color:#fff!important;
}
.marketing-site .marketing-nav{
  background:rgba(5,7,5,.78)!important;
  color:#fff!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
}
.marketing-site .brand-wordmark,.marketing-site .nav-links a{color:#fff!important}
.marketing-site .hero{
  background:
    radial-gradient(circle at 78% 18%, rgba(200,255,46,.20), transparent 25%),
    radial-gradient(circle at 14% 20%, rgba(255,255,255,.08), transparent 28%),
    linear-gradient(180deg,#050705 0%,#0b1008 100%)!important;
  color:#fff!important;
  position:relative!important;
  overflow:hidden!important;
}
.marketing-site .hero:before{
  content:""!important;
  position:absolute!important;
  inset:auto -120px -160px auto!important;
  width:460px!important;
  height:460px!important;
  border-radius:999px!important;
  border:58px solid rgba(200,255,46,.14)!important;
  animation:klarvoFloat 8s ease-in-out infinite!important;
}
.marketing-site .hero h1,.marketing-site .hero p{color:#fff!important}
.marketing-site .hero .muted,.marketing-site .hero-sub{color:#cbd5c4!important}
@keyframes klarvoFloat{0%,100%{transform:translate3d(0,0,0) rotate(0)}50%{transform:translate3d(-16px,18px,0) rotate(5deg)}}

@media(max-width:1180px){
  .mobile-menu-btn{
    display:flex!important;
    position:fixed!important;
    left:18px!important;
    top:18px!important;
    z-index:1001!important;
    width:48px!important;
    height:48px!important;
    border-radius:16px!important;
    background:#050705!important;
    border:1px solid rgba(255,255,255,.10)!important;
    box-shadow:0 16px 36px rgba(0,0,0,.18)!important;
    align-items:center!important;
    justify-content:center!important;
    flex-direction:column!important;
    gap:5px!important;
    padding:0!important;
  }
  .mobile-menu-btn span{
    width:19px!important;
    height:2px!important;
    background:#c8ff2e!important;
    border-radius:999px!important;
    display:block!important;
  }
  .mobile-menu-overlay{
    position:fixed!important;
    inset:0!important;
    z-index:999!important;
    background:rgba(0,0,0,.38)!important;
    opacity:0!important;
    pointer-events:none!important;
    transition:opacity .22s ease!important;
  }
  .sidebar{
    position:fixed!important;
    top:0!important;
    left:0!important;
    bottom:0!important;
    width:min(86vw,330px)!important;
    height:100vh!important;
    z-index:1000!important;
    transform:translateX(-105%)!important;
    transition:transform .25s ease!important;
    overflow-y:auto!important;
    padding-top:86px!important;
  }
  body.mobile-menu-open .sidebar{transform:translateX(0)!important}
  body.mobile-menu-open .mobile-menu-overlay{opacity:1!important;pointer-events:auto!important}
  body.mobile-menu-open{overflow:hidden!important}
  .main{padding-top:88px!important}
  .topbar,.invoice-list-top,.client-section-head{
    gap:14px!important;
  }
}

@media(max-width:760px){
  .invoice-table,.app-data-table{min-width:760px!important}
  .app-list-card,.invoice-table-wrap{border-radius:24px!important;padding:18px!important}
  .invoice-list-meta{overflow-x:auto!important;flex-wrap:nowrap!important;padding-bottom:6px!important}
  .filters{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .row-actions-scroll{
    justify-content:flex-start!important;
    max-width:220px!important;
  }
  .table-actions,.invoice-actions{min-width:170px!important;justify-content:flex-start!important}
  .auth-page-premium{padding:18px!important;background:#f5f6f1!important}
  .auth-premium-shell{grid-template-columns:1fr!important}
  .auth-premium-brand{min-height:auto!important;padding:28px!important;border-radius:30px!important}
  .auth-premium-copy h1{font-size:46px!important}
  .auth-mini-grid{grid-template-columns:1fr!important}
  .auth-premium-card{padding:28px!important}
  .auth-premium-card h2{font-size:38px!important}
}


/* =========================================================
   Mobile polish pass: dashboard, expenses, reports and logo
   ========================================================= */

.mobile-top-brand{display:none}

.mobile-number-strip{
  display:none;
}

@media(max-width:1180px){
  .mobile-top-brand{
    position:fixed!important;
    top:14px!important;
    left:14px!important;
    right:14px!important;
    height:56px!important;
    z-index:1002!important;
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    pointer-events:none!important;
  }
  .mobile-top-brand .mobile-menu-btn{
    position:relative!important;
    left:auto!important;
    top:auto!important;
    flex:0 0 48px!important;
    pointer-events:auto!important;
  }
  .mobile-logo-text{
    pointer-events:auto!important;
    min-height:48px!important;
    display:inline-flex!important;
    align-items:center!important;
    gap:9px!important;
    padding:0 15px!important;
    border-radius:18px!important;
    background:rgba(255,255,255,.88)!important;
    border:1px solid var(--line)!important;
    box-shadow:0 14px 34px rgba(17,24,39,.09)!important;
    color:#050705!important;
    text-decoration:none!important;
    backdrop-filter:blur(16px)!important;
  }
  .theme-dark .mobile-logo-text{
    background:rgba(5,7,5,.82)!important;
    border-color:rgba(255,255,255,.10)!important;
    color:#fff!important;
  }
  .mobile-logo-text .logo-dot{
    width:16px!important;
    height:16px!important;
    box-shadow:0 0 0 6px rgba(200,255,46,.18)!important;
  }
  .mobile-logo-text .logo-word{
    font-size:21px!important;
  }
  .main{
    padding-top:92px!important;
  }
}

@media(max-width:760px){
  body.theme-light, body.theme-midnight, body.theme-graphite{
    background:#f5f6f1!important;
  }
  .main{
    padding-left:14px!important;
    padding-right:14px!important;
    padding-bottom:34px!important;
  }
  .topbar,.expenses-topbar,.invoice-list-top,.client-section-head{
    margin-bottom:16px!important;
  }
  .title,h1.title{
    font-size:38px!important;
    line-height:1!important;
    letter-spacing:-.075em!important;
    margin-top:8px!important;
  }
  .topbar p.muted,.expenses-topbar p.muted{
    font-size:15px!important;
    line-height:1.35!important;
  }
  .topbar .actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    margin-top:14px!important;
  }
  .card{
    border-radius:24px!important;
    padding:18px!important;
  }
  .filters{
    border-radius:24px!important;
    padding:16px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  .grid.cols-4{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    margin-bottom:10px!important;
  }
  .kpi{
    min-height:118px!important;
    border-radius:22px!important;
    padding:15px!important;
  }
  .kpi small{
    font-size:12px!important;
    line-height:1.15!important;
  }
  .kpi b{
    font-size:22px!important;
    word-break:break-word!important;
  }
  .mobile-number-strip{
    display:flex!important;
    gap:10px!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
    padding:2px 0 14px!important;
    margin:0 0 8px!important;
    scroll-snap-type:x proximity!important;
  }
  .mobile-number-card{
    flex:0 0 72%!important;
    min-height:104px!important;
    scroll-snap-align:start!important;
    border-radius:24px!important;
    background:#fff!important;
    border:1px solid var(--line)!important;
    box-shadow:var(--k-soft-shadow)!important;
    padding:18px!important;
    display:grid!important;
    align-content:space-between!important;
  }
  .mobile-number-card.dark{
    background:#050705!important;
    color:#fff!important;
    border-color:#050705!important;
  }
  .mobile-number-card span{
    color:var(--muted)!important;
    font-weight:900!important;
    font-size:12px!important;
  }
  .mobile-number-card.dark span{color:#d8dfd3!important}
  .mobile-number-card b{
    font-size:26px!important;
    line-height:1!important;
    letter-spacing:-.06em!important;
  }
  .dashboard-flow-layout{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  .dashboard-side-stack{
    gap:14px!important;
  }
  .chart-card,.dash-panel{
    border-radius:24px!important;
  }
  .chart-head{
    display:block!important;
    margin-bottom:14px!important;
  }
  .chart-legend{
    margin-top:12px!important;
    overflow-x:auto!important;
    flex-wrap:nowrap!important;
  }
  .modern-chart{
    height:210px!important;
    grid-template-columns:repeat(12,minmax(28px,1fr))!important;
    overflow-x:auto!important;
    gap:8px!important;
    padding-bottom:6px!important;
  }
  .bar{width:10px!important}
  .distribution-card{
    align-items:center!important;
  }
  .distribution-donut{
    width:164px!important;
    height:164px!important;
  }
  .activity-item{
    grid-template-columns:40px 1fr!important;
    position:relative!important;
    padding-right:12px!important;
  }
  .activity-item .pill{
    grid-column:2!important;
    justify-self:start!important;
    margin-top:4px!important;
  }

  /* Expenses mobile */
  .expenses-topbar .btn,
  .expenses-topbar a.btn{
    width:100%!important;
  }
  .expense-upload-grid,
  .expense-review-grid,
  .grid.cols-2.align-start{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  .dropzone,
  .camera-card,
  .expense-review-card{
    border-radius:24px!important;
  }
  .file-list{
    max-height:180px!important;
    overflow-y:auto!important;
  }
  .file-pill{
    display:grid!important;
    grid-template-columns:1fr auto!important;
    gap:10px!important;
    align-items:center!important;
    max-width:100%!important;
  }
  .file-pill span:first-child{
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .expense-review-card .form.two,
  .form.two,
  .client-form-grid,
  .contact-edit-grid{
    grid-template-columns:1fr!important;
  }
  .stack-actions{
    display:flex!important;
    overflow-x:auto!important;
    gap:10px!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .stack-actions .btn{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:150px!important;
  }
  .expenses-list-card{
    padding:14px!important;
  }
  .expenses-list-card .filters{
    margin-bottom:12px!important;
  }
  .app-table-scroll{
    margin-left:-6px!important;
    margin-right:-6px!important;
    padding-left:6px!important;
    padding-right:6px!important;
  }
  .app-data-table,.invoice-table{
    min-width:720px!important;
    border-spacing:0 8px!important;
  }
  .app-data-table th,.invoice-table th{
    font-size:11px!important;
    padding:8px 10px!important;
  }
  .app-data-table td,.invoice-table td{
    padding:12px 10px!important;
    font-size:14px!important;
  }
  .row-actions-scroll{
    max-width:190px!important;
    overflow-x:auto!important;
  }
  .row-actions-scroll .btn,.invoice-actions .btn{
    min-width:auto!important;
    width:auto!important;
  }

  /* Reports mobile and number contrast */
  .reports-polish-shell .grid,
  .reports-polish-shell .grid.cols-4,
  .reports-polish-shell .grid.cols-3,
  .reports-polish-shell .grid.cols-2{
    grid-template-columns:1fr!important;
  }
  .reports-polish-shell .kpi,
  .reports-polish-shell .report-card,
  .reports-polish-shell .card.kpi{
    background:#050705!important;
    color:#fff!important;
    border-color:#050705!important;
    box-shadow:0 18px 46px rgba(0,0,0,.14)!important;
  }
  .reports-polish-shell .kpi small,
  .reports-polish-shell .report-card small{
    color:#d7dfd2!important;
  }
  .reports-polish-shell .kpi b,
  .reports-polish-shell .report-card b,
  .reports-polish-shell .kpi strong{
    color:#fff!important;
  }
  .reports-polish-shell .kpi:after,
  .reports-polish-shell .report-card:after{
    content:""!important;
    display:block!important;
    width:42px!important;
    height:6px!important;
    border-radius:999px!important;
    background:#c8ff2e!important;
    margin-top:14px!important;
  }
}

/* Desktop report number contrast too, only on light theme */
body.theme-light .reports-polish-shell .kpi,
body.theme-light .reports-polish-shell .report-card,
body.theme-light .reports-polish-shell .card.kpi{
  background:#050705!important;
  color:#fff!important;
  border-color:#050705!important;
}
body.theme-light .reports-polish-shell .kpi small,
body.theme-light .reports-polish-shell .report-card small{color:#d7dfd2!important}
body.theme-light .reports-polish-shell .kpi b,
body.theme-light .reports-polish-shell .report-card b,
body.theme-light .reports-polish-shell .kpi strong{color:#fff!important}
body.theme-light .reports-polish-shell .kpi:after,
body.theme-light .reports-polish-shell .report-card:after{
  content:""!important;
  display:block!important;
  width:48px!important;
  height:6px!important;
  border-radius:999px!important;
  background:#c8ff2e!important;
  margin-top:16px!important;
}


/* =========================================================
   UX enhancement pass: title spacing, sticky nav, dashboard activity,
   reports distribution/top clients.
   ========================================================= */

.title,h1.title{
  letter-spacing:-.065em!important;
  line-height:1.06!important;
  margin-top:16px!important;
  margin-bottom:18px!important;
}

.topbar .muted,
.report-hero .muted{
  margin-top:4px!important;
}

.sidebar{
  position:sticky!important;
  top:0!important;
  align-self:start!important;
  height:100vh!important;
  overflow-y:auto!important;
}

.menu a{
  font-size:17px!important;
  letter-spacing:-.025em!important;
}

.logo-word{
  font-size:29px!important;
}

.latest-invoices-panel .panel-title-row{
  align-items:flex-start!important;
}

.latest-invoice-list{
  gap:12px!important;
}

.latest-invoice-item{
  text-decoration:none!important;
  color:inherit!important;
  transition:transform .18s ease, background .18s ease, border-color .18s ease!important;
}

.latest-invoice-item:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(200,255,46,.34)!important;
}

.latest-invoice-item b{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

.latest-invoice-item small{
  display:block!important;
  color:var(--muted)!important;
  margin-top:4px!important;
}

.report-insight-grid{
  display:grid!important;
  grid-template-columns:.85fr 1.15fr!important;
  gap:20px!important;
  margin:20px 0!important;
  align-items:stretch!important;
}

.report-distribution-card{
  min-height:100%!important;
}

.top-clients-card{
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
}

.top-client-list{
  display:grid!important;
  gap:14px!important;
  margin-top:18px!important;
}

.top-client-row{
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr)!important;
  gap:14px!important;
  align-items:center!important;
  padding:14px!important;
  border-radius:22px!important;
  background:#f6f8f2!important;
  border:1px solid var(--line-soft)!important;
}

.theme-dark .top-client-row{
  background:rgba(255,255,255,.05)!important;
  border-color:rgba(255,255,255,.08)!important;
}

.top-client-rank{
  width:48px!important;
  height:48px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:16px!important;
  background:#050705!important;
  color:#c8ff2e!important;
  font-weight:950!important;
  font-size:18px!important;
}

.theme-dark .top-client-rank{
  background:#c8ff2e!important;
  color:#050705!important;
}

.top-client-main{
  min-width:0!important;
}

.top-client-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
}

.top-client-head b{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:var(--text)!important;
  font-size:18px!important;
}

.top-client-head span{
  color:var(--text)!important;
  font-weight:950!important;
  letter-spacing:-.04em!important;
}

.top-client-meta{
  color:var(--muted)!important;
  font-size:13px!important;
  font-weight:850!important;
  margin-top:4px!important;
}

.top-client-bar{
  height:8px!important;
  border-radius:999px!important;
  background:#e9eee3!important;
  overflow:hidden!important;
  margin-top:12px!important;
}

.theme-dark .top-client-bar{
  background:rgba(255,255,255,.09)!important;
}

.top-client-bar i{
  display:block!important;
  height:100%!important;
  border-radius:999px!important;
  background:#c8ff2e!important;
}

body.theme-light .report-insight-grid .distribution-card,
body.theme-light .top-clients-card{
  background:#fff!important;
  color:#050705!important;
  border-color:var(--line)!important;
}

body.theme-light .report-insight-grid .distribution-card:after,
body.theme-light .top-clients-card:after{
  content:none!important;
}

@media(max-width:1180px){
  .sidebar{
    position:fixed!important;
    height:100vh!important;
  }
}

@media(max-width:860px){
  .report-insight-grid{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:760px){
  .title,h1.title{
    letter-spacing:-.055em!important;
    line-height:1.08!important;
    margin-top:12px!important;
    margin-bottom:16px!important;
  }

  .menu a{
    font-size:17px!important;
  }

  .latest-invoice-item{
    grid-template-columns:40px minmax(0,1fr)!important;
  }

  .latest-invoice-item .pill{
    grid-column:2!important;
    justify-self:start!important;
  }

  .top-client-row{
    grid-template-columns:42px minmax(0,1fr)!important;
    padding:12px!important;
    gap:12px!important;
  }

  .top-client-rank{
    width:42px!important;
    height:42px!important;
    border-radius:14px!important;
  }

  .top-client-head{
    display:grid!important;
    gap:4px!important;
  }

  .top-client-head b{
    white-space:normal!important;
  }
}


/* =========================================================
   Dashboard polish: sticky menu, no empty space, clean activity
   ========================================================= */

.app{
  min-height:100vh!important;
  align-items:start!important;
}

.sidebar{
  position:sticky!important;
  top:0!important;
  height:100vh!important;
  min-height:100vh!important;
  overflow-y:auto!important;
}

.main{
  min-height:100vh!important;
}

.dashboard-flow-layout{
  align-items:stretch!important;
}

.chart-card,
.dashboard-side-stack{
  min-height:100%!important;
}

.dashboard-side-stack{
  align-content:start!important;
}

.latest-activity-panel,
.recent-invoices-panel{
  overflow:hidden!important;
}

.latest-activity-list,
.recent-invoice-list{
  display:grid!important;
  gap:10px!important;
}

.latest-activity-item{
  grid-template-columns:44px minmax(0,1fr) auto!important;
  text-decoration:none!important;
  color:inherit!important;
}

.latest-activity-item > div:nth-child(2){
  min-width:0!important;
}

.latest-activity-item b{
  display:block!important;
  color:var(--text)!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

.latest-activity-item small{
  display:block!important;
  color:var(--muted)!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  margin-top:4px!important;
}

.recent-invoice-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  gap:12px!important;
  align-items:center!important;
  padding:13px!important;
  border-radius:18px!important;
  background:#f7f9f4!important;
  border:1px solid var(--line-soft)!important;
  color:var(--text)!important;
  text-decoration:none!important;
  transition:transform .18s ease, border-color .18s ease, background .18s ease!important;
}

.theme-dark .recent-invoice-row{
  background:rgba(255,255,255,.05)!important;
  border-color:rgba(255,255,255,.07)!important;
}

.recent-invoice-row:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(200,255,46,.36)!important;
}

.recent-invoice-row div{
  min-width:0!important;
}

.recent-invoice-row b,
.recent-invoice-row span{
  display:block!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

.recent-invoice-row b{
  font-weight:950!important;
  color:var(--text)!important;
}

.recent-invoice-row span{
  color:var(--muted)!important;
  font-size:13px!important;
  margin-top:3px!important;
}

.recent-invoice-row strong{
  font-weight:950!important;
  color:var(--text)!important;
  white-space:nowrap!important;
  letter-spacing:-.04em!important;
}

.recent-invoice-row em{
  font-style:normal!important;
}

@media(min-width:1181px){
  .sidebar-footer{
    position:absolute!important;
    bottom:30px!important;
  }
}

@media(max-width:1180px){
  .sidebar{
    position:fixed!important;
    height:100vh!important;
  }
}

@media(max-width:760px){
  .dashboard-flow-layout{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
  }

  .chart-card{
    min-height:auto!important;
  }

  .dashboard-side-stack{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
  }

  .latest-activity-item{
    grid-template-columns:40px minmax(0,1fr)!important;
    gap:10px!important;
  }

  .latest-activity-item .pill{
    grid-column:2!important;
    justify-self:start!important;
    margin-top:4px!important;
  }

  .latest-activity-item b,
  .latest-activity-item small{
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }

  .recent-invoice-row{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:8px!important;
    padding:12px!important;
  }

  .recent-invoice-row strong{
    grid-column:2!important;
    grid-row:1!important;
    font-size:14px!important;
  }

  .recent-invoice-row .pill{
    grid-column:1 / -1!important;
    justify-self:start!important;
  }

  .recent-invoice-row b,
  .recent-invoice-row span{
    white-space:normal!important;
  }

  .distribution-card{
    min-height:auto!important;
  }
}
