:root{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --bg:#060b14;--bg2:#09111f;--panel:#0d1726;--panel2:#101c2d;--panel3:#132135;
  --blue:#13985d;--blue2:#4bdd94;--blue3:#087f49;--blue-soft:rgba(31,122,255,.14);
  --text:#f5f8ff;--muted:#8fa1ba;--muted2:#667892;--line:rgba(148,173,209,.13);
  --green:#35d69a;--amber:#ffbd5a;--red:#ff667a;
  --shadow:0 24px 70px rgba(0,0,0,.28);--radius:20px;
  color:var(--text);background:var(--bg);line-height:1.5;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(circle at 82% 0%,rgba(25,102,220,.13),transparent 28%),linear-gradient(180deg,#060b14 0%,#08101b 100%);color:var(--text)}
button,input,select,textarea{font:inherit}a{color:inherit}.app-shell{min-height:100vh;display:flex}
.sidebar{width:258px;position:fixed;inset:0 auto 0 0;z-index:30;display:flex;flex-direction:column;padding:26px 18px 20px;background:rgba(7,13,23,.9);backdrop-filter:blur(20px);border-right:1px solid var(--line)}
.brand-wrap{display:flex;align-items:center;gap:12px;padding:0 8px 24px}.brand-icon{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:13px;background:linear-gradient(135deg,var(--blue2),var(--blue3));color:#fff;font-size:20px;font-weight:900;box-shadow:0 10px 26px rgba(31,122,255,.32);flex:0 0 auto}.brand-icon.small{width:34px;height:34px;border-radius:10px;font-size:16px}.brand{font-size:16px;font-weight:800;letter-spacing:-.02em}.brand-subtitle{font-size:11px;color:var(--muted);margin-top:1px}
.side-nav{display:flex;flex-direction:column;gap:6px;padding-top:16px;border-top:1px solid var(--line)}.nav-link{position:relative;display:flex;align-items:center;gap:12px;padding:12px 13px;border-radius:12px;color:#8797ad;text-decoration:none;font-size:13px;font-weight:700;transition:.2s ease}.nav-link:hover{color:#eaf2ff;background:rgba(255,255,255,.035)}.nav-link.active{color:#fff;background:linear-gradient(90deg,rgba(31,122,255,.17),rgba(31,122,255,.06));box-shadow:inset 0 0 0 1px rgba(77,163,255,.16)}.nav-link.active:before{content:"";position:absolute;left:-5px;width:3px;height:22px;border-radius:99px;background:var(--blue2);box-shadow:0 0 16px rgba(77,163,255,.65)}.nav-icon{width:22px;text-align:center;font-size:18px}.sidebar-footer{margin-top:auto;padding-top:16px;border-top:1px solid var(--line)}.logout-link{color:#72839a}
.app-content{margin-left:258px;width:calc(100% - 258px);min-height:100vh}.container{max-width:1320px;margin:0 auto;padding:40px 38px 64px}.mobile-topbar,.mobile-nav{display:none}
h1{margin:3px 0 8px;color:#fff;font-size:36px;line-height:1.08;letter-spacing:-.05em}h2{margin:0;font-size:19px;letter-spacing:-.025em;color:#f4f7fd}h3{margin:0}.muted{color:var(--muted)}.muted.compact{margin:4px 0 0;font-size:13px}.eyebrow{display:block;margin-bottom:5px;color:#6f84a1;font-size:10px;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.eyebrow.light{color:#8fbfff}
.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.page-head p{margin:0}.dashboard-head{margin-bottom:20px}
.card{background:linear-gradient(180deg,rgba(17,29,46,.96),rgba(12,22,36,.96));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.toolbar-card{padding:12px 14px;margin-bottom:18px;background:rgba(11,20,33,.72);border:1px solid var(--line);border-radius:15px;backdrop-filter:blur(14px)}.month-filter{display:flex;align-items:center;gap:10px}.filter-label{display:flex;align-items:center;gap:7px;margin-right:4px;color:#a6b5c8;font-size:12px}.month-filter input{max-width:185px}
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0 20px}.metric{position:relative;overflow:hidden;padding:22px}.metric:before{content:"";position:absolute;inset:-1px;background:radial-gradient(circle at 88% 0%,rgba(63,145,255,.13),transparent 35%);pointer-events:none}.metric:after{content:"";position:absolute;left:18px;right:18px;bottom:0;height:2px;border-radius:20px;background:linear-gradient(90deg,transparent,rgba(78,163,255,.7),transparent);opacity:.7}.metric-top{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;margin-bottom:19px}.metric-top>span:first-child{color:#8fa0b8;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.07em}.metric-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:11px;background:rgba(31,122,255,.12);border:1px solid rgba(77,163,255,.18);color:#6eb5ff;font-weight:900;font-size:15px}.metric strong{position:relative;z-index:1;display:block;margin-bottom:7px;color:#fff;font-size:28px;line-height:1.08;letter-spacing:-.04em}.metric small{position:relative;z-index:1;color:#70849e;font-size:11px}.metric-paid .metric-icon{background:rgba(53,214,154,.09);border-color:rgba(53,214,154,.15);color:var(--green)}.metric-paid strong{color:#dffff2}.metric-pending .metric-icon{background:rgba(255,189,90,.08);border-color:rgba(255,189,90,.15);color:var(--amber)}.metric-overdue .metric-icon{background:rgba(255,102,122,.08);border-color:rgba(255,102,122,.15);color:var(--red)}
.section-card{padding:0;margin-top:18px;overflow:hidden}.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px 16px;border-bottom:1px solid var(--line)}.count-pill{padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid var(--line);color:#92a4ba;font-size:11px;font-weight:750}.text-link{color:#6fb5ff;font-size:12px;text-decoration:none;font-weight:750}.text-link:hover{color:#9bceff}
.upcoming-list{padding:0 22px}.expense-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 0;border-bottom:1px solid var(--line)}.expense-row:last-child{border-bottom:0}.expense-main{display:flex;align-items:center;gap:12px;min-width:0}.expense-main strong{display:block;color:#edf4ff}.expense-main small{display:block;margin-top:3px;color:#7488a2}.category-icon,.table-avatar{width:39px;height:39px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:linear-gradient(145deg,rgba(31,122,255,.15),rgba(31,122,255,.05));border:1px solid rgba(77,163,255,.15);color:#7ebcff;font-weight:850;flex:0 0 auto}.expense-side{text-align:right}.expense-side>strong{display:block;margin-bottom:7px;color:#f5f8ff}
.btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:#111c2b;color:#d6e0ee;text-decoration:none;cursor:pointer;font-size:13px;font-weight:750;transition:.18s ease}.btn:hover{transform:translateY(-1px);background:#162337;border-color:rgba(95,134,185,.28);box-shadow:0 8px 24px rgba(0,0,0,.22)}.btn.primary{background:linear-gradient(135deg,#20a766,#087f49);border-color:#2e84f5;color:#fff;box-shadow:0 10px 24px rgba(31,122,255,.26)}.btn.primary:hover{background:linear-gradient(135deg,#4b9cff,#1e71ec);box-shadow:0 12px 28px rgba(31,122,255,.34)}.btn.secondary{background:#111c2b}.btn.success{background:#14865f;border-color:#209c72;color:#fff}.btn.danger{background:#7f3040;border-color:#9d3c4f;color:#fff}.btn.mini{padding:7px 9px;border-radius:8px;font-size:11px}.btn.ghost-success{background:rgba(53,214,154,.08);border-color:rgba(53,214,154,.16);color:#6de4b5}.btn.ghost-danger{background:rgba(255,102,122,.08);border-color:rgba(255,102,122,.16);color:#ff8293}.btn-icon{font-size:16px}.full-btn{width:100%}
.table-wrap{overflow:auto}.table-wrap::-webkit-scrollbar{height:8px}.table-wrap::-webkit-scrollbar-thumb{background:#263852;border-radius:10px}table{width:100%;min-width:800px;border-collapse:collapse}th,td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--line);vertical-align:middle}th{background:rgba(5,10,18,.32);color:#60738c;font-size:10px;text-transform:uppercase;letter-spacing:.09em;font-weight:850}tbody tr:last-child td{border-bottom:0}tbody tr{transition:.15s ease}tbody tr:hover{background:rgba(31,122,255,.025)}.table-name{display:flex;align-items:center;gap:10px}.table-avatar{width:32px;height:32px;border-radius:9px;font-size:11px}.money-cell{color:#ecf4ff;font-weight:800}.category-chip,.recurring-chip{display:inline-flex;padding:5px 8px;border-radius:8px;background:rgba(255,255,255,.045);border:1px solid var(--line);color:#91a2b8;font-size:11px;font-weight:650}.recurring-chip{background:rgba(31,122,255,.08);color:#84baff}
.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:850}.badge i{width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 9px currentColor}.badge.paid{background:rgba(53,214,154,.09);color:#58dca9;border:1px solid rgba(53,214,154,.13)}.badge.pending{background:rgba(255,189,90,.08);color:#ffc56d;border:1px solid rgba(255,189,90,.13)}.badge.overdue{background:rgba(255,102,122,.09);color:#ff7f90;border:1px solid rgba(255,102,122,.13)}.actions{display:flex;gap:6px;flex-wrap:nowrap}.actions form,.expense-side form,.stack-buttons form{margin:0}.done-mark{color:var(--green);font-size:18px;font-weight:900}
.empty-state{text-align:center;padding:56px 20px}.empty-icon{width:60px;height:60px;display:flex;align-items:center;justify-content:center;margin:0 auto 15px;border-radius:18px;background:rgba(31,122,255,.1);border:1px solid rgba(77,163,255,.15);color:#75b8ff;font-size:25px}.empty-state h3{margin-bottom:5px;color:#f0f6ff;font-size:18px}.empty-state p{max-width:420px;margin:0 auto 18px;color:var(--muted)}
.form-card{padding:0;overflow:hidden}.form-card-head{display:flex;align-items:center;gap:12px;padding:20px 22px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.015),transparent)}.form-head-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:11px;background:rgba(31,122,255,.11);border:1px solid rgba(77,163,255,.16);color:#73b8ff;font-weight:850}.modern-form{padding:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid.one{grid-template-columns:1fr}.form-grid .full{grid-column:1/-1}label{display:flex;flex-direction:column;gap:7px;color:#c4d0df;font-size:12px;font-weight:700}label>span{color:#a6b4c7;font-size:11px}input,select,textarea{width:100%;padding:11px 12px;border:1px solid #21324a;border-radius:10px;background:#091321;color:#eaf3ff;outline:none;transition:.17s ease;color-scheme:dark}input::placeholder,textarea::placeholder{color:#51647d}input:focus,select:focus,textarea:focus{border-color:#20a766;box-shadow:0 0 0 3px rgba(49,140,255,.12)}textarea{resize:vertical}.input-prefix{display:flex;overflow:hidden;border:1px solid #21324a;border-radius:10px;background:#091321}.input-prefix:focus-within{border-color:#20a766;box-shadow:0 0 0 3px rgba(49,140,255,.12)}.input-prefix b{padding:11px 0 11px 12px;color:#7f93ac}.input-prefix input{border:0;box-shadow:none!important;padding-left:7px}.toggle-row{flex-direction:row;align-items:center;justify-content:space-between;padding:14px 15px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.02)}.toggle-row strong{display:block;color:#dce6f3;font-size:12px}.toggle-row small{display:block;margin-top:2px;color:#6f839c;font-size:11px;font-weight:500}.toggle-row input{width:20px;height:20px;accent-color:var(--blue)}.form-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:4px}
.settings-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.gmail-status{display:flex;align-items:center;gap:11px;margin:20px 22px 14px;padding:14px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.02)}.gmail-status small,.gmail-status strong{display:block}.gmail-status small{color:#657992;font-size:10px}.gmail-status strong{margin-top:2px;color:#dce7f5;font-size:12px;word-break:break-all}.status-dot{width:9px;height:9px;border-radius:50%;background:#596a80;box-shadow:0 0 0 4px rgba(89,106,128,.1)}.status-dot.online{background:#37d99f;box-shadow:0 0 0 4px rgba(55,217,159,.1),0 0 14px rgba(55,217,159,.45)}.info-box{display:flex;gap:9px;margin:0 22px 14px;padding:12px 13px;border:1px solid rgba(77,163,255,.12);border-radius:11px;background:rgba(31,122,255,.07);color:#8facce;font-size:11px}.info-box p{margin:0}.stack-buttons{display:grid;gap:9px;padding:0 22px 22px}
.alert{display:flex;align-items:center;gap:9px;padding:12px 14px;margin-bottom:16px;border:1px solid rgba(77,163,255,.16);border-radius:12px;background:rgba(31,122,255,.08);color:#a9c9ec;font-size:12px;font-weight:650}.alert.success{background:rgba(53,214,154,.08);border-color:rgba(53,214,154,.15);color:#83e3bd}.alert.danger{background:rgba(255,102,122,.08);border-color:rgba(255,102,122,.15);color:#ff9aa8}.alert-dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:0 0 auto;box-shadow:0 0 10px currentColor}
.login-page{min-height:100vh}.login-layout{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;background:#060b14}.login-hero{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:52px clamp(40px,7vw,100px);background:radial-gradient(circle at 18% 20%,rgba(31,122,255,.26),transparent 28%),radial-gradient(circle at 80% 75%,rgba(13,80,178,.18),transparent 26%),#070d17;color:#fff}.login-hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,transparent,black 20%,black 80%,transparent);pointer-events:none}.login-brand{position:relative;z-index:1;display:flex;align-items:center;gap:12px;font-weight:800}.hero-copy{position:relative;z-index:1;max-width:650px}.hero-copy h1{margin:10px 0 20px;color:#fff;font-size:clamp(42px,4.7vw,70px);line-height:1;letter-spacing:-.06em}.hero-copy p{max-width:560px;color:#9aacbf;font-size:16px;line-height:1.75}.hero-features{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:10px 20px;color:#b9c9dc;font-size:12px;font-weight:650}.login-panel{display:flex;align-items:center;justify-content:center;padding:34px;background:#09111d}.login-card{width:min(460px,100%);padding:38px;background:linear-gradient(180deg,#0f1b2b,#0b1522);border:1px solid var(--line);box-shadow:0 28px 90px rgba(0,0,0,.38)}.login-card h2{margin:5px 0 8px;color:#fff;font-size:29px}.login-card>.muted{margin:0 0 20px}.login-form{padding:0}.login-button{width:100%;margin-top:2px;padding:12px}.login-foot{margin:18px 0 0;text-align:center;color:#63748a;font-size:10px}.login-mobile-logo{display:none}.login-alert{position:fixed;top:20px;right:20px;z-index:50;max-width:420px}
@media(max-width:1050px){.cards{grid-template-columns:repeat(2,1fr)}.settings-grid{grid-template-columns:1fr}.login-layout{grid-template-columns:1fr 1fr}.hero-copy h1{font-size:44px}.sidebar{width:222px}.app-content{margin-left:222px;width:calc(100% - 222px)}.container{padding-left:24px;padding-right:24px}}
@media(max-width:800px){.sidebar{display:none}.app-content{margin-left:0;width:100%}.mobile-topbar{display:flex;height:64px;align-items:center;justify-content:space-between;padding:0 16px;background:rgba(8,15,25,.92);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.mobile-brand{display:flex;align-items:center;gap:9px;color:#edf5ff;font-size:14px}.mobile-settings{color:#7d91aa;text-decoration:none;font-size:20px}.mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:0;right:0;bottom:0;height:70px;z-index:40;padding:5px max(5px,env(safe-area-inset-left)) calc(4px + env(safe-area-inset-bottom));background:rgba(8,15,25,.94);backdrop-filter:blur(20px);border-top:1px solid var(--line);box-shadow:0 -10px 35px rgba(0,0,0,.28)}.mobile-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;color:#6f8299;text-decoration:none}.mobile-nav a>span{font-size:20px;line-height:1}.mobile-nav small{font-size:9px;font-weight:700}.mobile-nav a.active{color:#66adff}.mobile-nav .mobile-add>span{width:40px;height:40px;display:flex;align-items:center;justify-content:center;margin-top:-17px;border-radius:13px;background:linear-gradient(135deg,#4ba0ff,#1568e5);color:#fff;box-shadow:0 8px 24px rgba(31,122,255,.35)}.container{padding:24px 16px 94px}.desktop-only{display:none!important}.page-head{align-items:flex-start}.page-head h1{font-size:29px}.login-layout{display:block;min-height:100vh}.login-hero{display:none}.login-panel{min-height:100vh;padding:20px;background:radial-gradient(circle at 50% 0%,rgba(31,122,255,.12),transparent 28%),#07101b}.login-card{padding:28px;border:1px solid var(--line);background:#0d1827;box-shadow:0 20px 60px rgba(0,0,0,.3)}.login-mobile-logo{display:block;margin-bottom:28px}.login-card h2{font-size:27px}.login-alert{left:16px;right:16px;top:16px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}}
@media(max-width:560px){.cards{grid-template-columns:1fr 1fr;gap:10px}.metric{padding:16px}.metric strong{font-size:20px}.metric small{display:none}.metric-top{margin-bottom:11px}.metric-top>span:first-child{font-size:9px}.metric-icon{width:30px;height:30px;border-radius:9px;font-size:12px}.toolbar-card{padding:10px}.month-filter{display:grid;grid-template-columns:1fr auto;gap:8px}.filter-label{grid-column:1/-1}.month-filter input{max-width:none}.section-head{padding:17px}.section-head h2{font-size:17px}.upcoming-list{padding:0 17px}.expense-row{align-items:flex-start}.expense-side>strong{font-size:13px}.category-icon{width:34px;height:34px}.expense-side .btn{padding:6px 8px;font-size:10px}.settings-grid{gap:14px}.modern-form{padding:18px}.form-card-head{padding:17px}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}.page-head{margin-bottom:18px}.page-head h1{font-size:27px}.count-pill{display:none}.table-wrap{margin:0 -1px}.empty-state{padding:40px 18px}.gmail-status,.info-box{margin-left:17px;margin-right:17px}.stack-buttons{padding-left:17px;padding-right:17px}.login-panel{padding:12px}.login-card{padding:20px}.login-card h2{font-size:25px}}


/* ===== Aparência: Claro Premium / Escuro Premium ===== */
html{background:var(--bg)}
html,body,.sidebar,.app-content,.card,.toolbar-card,.mobile-topbar,.mobile-nav,input,select,textarea,.input-prefix,.login-panel,.login-card,.nav-link,.theme-option{transition:background-color .22s ease,border-color .22s ease,color .22s ease,box-shadow .22s ease}
.appearance-card{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:24px;margin-bottom:18px;overflow:hidden;position:relative}
.appearance-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 88% 12%,rgba(31,122,255,.10),transparent 34%);pointer-events:none}
.appearance-copy{position:relative;z-index:1;max-width:500px}.appearance-copy h2{margin:1px 0 5px;font-size:20px}.theme-selector{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:min(560px,52%)}
.theme-option{position:relative;display:grid;grid-template-columns:58px 1fr 22px;align-items:center;gap:12px;text-align:left;padding:12px;border-radius:15px;border:1px solid var(--line);background:rgba(255,255,255,.025);color:var(--text);cursor:pointer;outline:none}
.theme-option:hover{transform:translateY(-1px);border-color:rgba(77,163,255,.30);background:rgba(31,122,255,.055)}.theme-option.active{border-color:rgba(77,163,255,.56);background:rgba(31,122,255,.10);box-shadow:0 0 0 3px rgba(31,122,255,.07)}
.theme-option-copy{min-width:0}.theme-option-copy strong,.theme-option-copy small{display:block}.theme-option-copy strong{font-size:12px}.theme-option-copy small{margin-top:3px;color:var(--muted);font-size:9.5px;line-height:1.35}.theme-check{width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(31,122,255,.12);color:transparent;font-size:11px;font-weight:900}.theme-option.active .theme-check{background:var(--blue);color:#fff;box-shadow:0 5px 16px rgba(31,122,255,.28)}
.theme-preview{width:58px;height:42px;border-radius:9px;padding:7px;display:grid;grid-template-columns:12px 1fr;grid-template-rows:9px 1fr;gap:4px;border:1px solid rgba(125,145,175,.16);box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}.theme-preview i{display:block;border-radius:3px}.theme-preview i:first-child{grid-row:1/3}.preview-dark{background:#09111d}.preview-dark i:first-child{background:#101d30}.preview-dark i:nth-child(2){background:#13985d}.preview-dark i:nth-child(3){background:#142238}.preview-light{background:#f6f8fb}.preview-light i:first-child{background:#e5eaf2}.preview-light i:nth-child(2){background:#287dff}.preview-light i:nth-child(3){background:#ffffff;border:1px solid #e5eaf2}

:root[data-theme="light"]{
  --bg:#f3f6fa;--bg2:#edf2f7;--panel:#ffffff;--panel2:#f9fbfd;--panel3:#f2f6fa;
  --blue:#10945b;--blue2:#3d8cff;--blue3:#135dc8;--blue-soft:rgba(29,114,243,.10);
  --text:#172033;--muted:#718096;--muted2:#94a3b8;--line:rgba(42,66,102,.11);
  --green:#169b69;--amber:#c98116;--red:#dc4257;
  --shadow:0 18px 55px rgba(30,50,80,.08);color:var(--text);background:var(--bg);
}
:root[data-theme="light"] body{background:radial-gradient(circle at 82% 0%,rgba(39,119,245,.08),transparent 30%),linear-gradient(180deg,#f7f9fc 0%,#eef3f8 100%);color:var(--text)}
:root[data-theme="light"] .sidebar{background:rgba(255,255,255,.90);border-right-color:rgba(45,66,96,.10);box-shadow:8px 0 35px rgba(44,61,88,.03)}
:root[data-theme="light"] .brand{color:#1d2939}:root[data-theme="light"] .brand-subtitle{color:#8a98aa}:root[data-theme="light"] .side-nav,:root[data-theme="light"] .sidebar-footer{border-color:rgba(45,66,96,.09)}
:root[data-theme="light"] .nav-link{color:#738196}:root[data-theme="light"] .nav-link:hover{color:#1f2a3d;background:#f3f7fc}:root[data-theme="light"] .nav-link.active{color:#145fcf;background:linear-gradient(90deg,rgba(29,114,243,.12),rgba(29,114,243,.04));box-shadow:inset 0 0 0 1px rgba(29,114,243,.10)}
:root[data-theme="light"] h1,:root[data-theme="light"] h2,:root[data-theme="light"] .metric strong,:root[data-theme="light"] .empty-state h3{color:#172033}:root[data-theme="light"] .eyebrow{color:#8090a6}
:root[data-theme="light"] .card{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(249,251,253,.98));border-color:rgba(42,66,102,.10);box-shadow:var(--shadow)}
:root[data-theme="light"] .toolbar-card{background:rgba(255,255,255,.78);border-color:rgba(42,66,102,.10);box-shadow:0 9px 30px rgba(30,50,80,.045)}
:root[data-theme="light"] .metric:before{background:radial-gradient(circle at 88% 0%,rgba(39,119,245,.09),transparent 38%)}:root[data-theme="light"] .metric-top>span:first-child{color:#7f8ea3}:root[data-theme="light"] .metric small{color:#94a0b1}
:root[data-theme="light"] .metric-icon{background:rgba(29,114,243,.08);border-color:rgba(29,114,243,.12);color:#287dff}:root[data-theme="light"] .metric-paid .metric-icon{background:rgba(22,155,105,.08);border-color:rgba(22,155,105,.12);color:#169b69}
:root[data-theme="light"] .category-chip,:root[data-theme="light"] .recurring-chip{background:#f5f8fb;border-color:rgba(42,66,102,.09);color:#68778d}:root[data-theme="light"] .recurring-chip{background:rgba(29,114,243,.07);color:#256fcf}
:root[data-theme="light"] .badge.paid{background:rgba(22,155,105,.08);color:#11825a;border-color:rgba(22,155,105,.13)}:root[data-theme="light"] .badge.pending{background:rgba(201,129,22,.08);color:#a9680d;border-color:rgba(201,129,22,.13)}:root[data-theme="light"] .badge.overdue{background:rgba(220,66,87,.08);color:#cc3349;border-color:rgba(220,66,87,.12)}
:root[data-theme="light"] label{color:#4c5b70}:root[data-theme="light"] label>span{color:#65758b}:root[data-theme="light"] input,:root[data-theme="light"] select,:root[data-theme="light"] textarea{background:#fff;color:#1d2939;border-color:#dce4ee;color-scheme:light}:root[data-theme="light"] input::placeholder,:root[data-theme="light"] textarea::placeholder{color:#a6b1bf}:root[data-theme="light"] .input-prefix{background:#fff;border-color:#dce4ee}:root[data-theme="light"] .input-prefix b{color:#8190a5}
:root[data-theme="light"] .toggle-row{background:#f8fafc;border-color:rgba(42,66,102,.09)}:root[data-theme="light"] .toggle-row strong{color:#314056}:root[data-theme="light"] .toggle-row small{color:#8492a6}
:root[data-theme="light"] .form-card-head{background:linear-gradient(180deg,rgba(29,114,243,.025),transparent);border-color:rgba(42,66,102,.09)}:root[data-theme="light"] .form-head-icon{background:rgba(29,114,243,.08);border-color:rgba(29,114,243,.12);color:#287dff}
:root[data-theme="light"] .gmail-status{background:#f8fafc;border-color:rgba(42,66,102,.09)}:root[data-theme="light"] .gmail-status small{color:#8694a7}:root[data-theme="light"] .gmail-status strong{color:#334155}:root[data-theme="light"] .info-box{background:rgba(29,114,243,.055);border-color:rgba(29,114,243,.10);color:#59779d}
:root[data-theme="light"] .alert{background:rgba(29,114,243,.06);border-color:rgba(29,114,243,.12);color:#4b72a5}:root[data-theme="light"] .alert.success{background:rgba(22,155,105,.07);border-color:rgba(22,155,105,.12);color:#347e64}:root[data-theme="light"] .alert.danger{background:rgba(220,66,87,.06);border-color:rgba(220,66,87,.11);color:#a94757}
:root[data-theme="light"] .appearance-card:before{background:radial-gradient(circle at 88% 12%,rgba(29,114,243,.07),transparent 34%)}:root[data-theme="light"] .theme-option{background:#f8fafc;border-color:rgba(42,66,102,.10);color:#233047}:root[data-theme="light"] .theme-option:hover{background:#f3f7fc;border-color:rgba(29,114,243,.24)}:root[data-theme="light"] .theme-option.active{background:rgba(29,114,243,.07);border-color:rgba(29,114,243,.38);box-shadow:0 0 0 3px rgba(29,114,243,.045)}
:root[data-theme="light"] .mobile-topbar{background:rgba(255,255,255,.92);border-color:rgba(42,66,102,.10)}:root[data-theme="light"] .mobile-brand{color:#1f2a3d}:root[data-theme="light"] .mobile-settings{color:#738196}:root[data-theme="light"] .mobile-nav{background:rgba(255,255,255,.95);border-color:rgba(42,66,102,.10);box-shadow:0 -10px 35px rgba(30,50,80,.08)}:root[data-theme="light"] .mobile-nav a{color:#7b899b}:root[data-theme="light"] .mobile-nav a.active{color:#10945b}
:root[data-theme="light"] .login-layout{background:#eef3f8}:root[data-theme="light"] .login-hero{background:radial-gradient(circle at 18% 20%,rgba(29,114,243,.18),transparent 29%),radial-gradient(circle at 80% 75%,rgba(29,114,243,.09),transparent 26%),#eef4fb;color:#172033}:root[data-theme="light"] .login-hero:after{background-image:linear-gradient(rgba(35,64,105,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(35,64,105,.035) 1px,transparent 1px)}:root[data-theme="light"] .login-hero .hero-copy h1{color:#172033}:root[data-theme="light"] .hero-copy p{color:#65758a}:root[data-theme="light"] .hero-features{color:#52667f}:root[data-theme="light"] .login-panel{background:#f4f7fb}:root[data-theme="light"] .login-card{background:linear-gradient(180deg,#fff,#f9fbfd);border-color:rgba(42,66,102,.10);box-shadow:0 28px 80px rgba(30,50,80,.10)}:root[data-theme="light"] .login-card h2{color:#172033}:root[data-theme="light"] .login-foot{color:#8b98aa}

@media(max-width:950px){.appearance-card{align-items:flex-start;flex-direction:column}.theme-selector{width:100%;min-width:0}}
@media(max-width:560px){.appearance-card{padding:18px}.theme-selector{grid-template-columns:1fr}.theme-option{grid-template-columns:54px 1fr 20px}.theme-preview{width:54px}.theme-option-copy small{font-size:9px}}

/* ===== V5: Dashboard, filtros, histórico e dados ===== */
.dashboard-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;margin:0 0 18px}.progress-card,.next-card{padding:22px}.section-head.no-border{padding:0 0 14px;border-bottom:0}.progress-number{font-size:26px;color:var(--blue2)}.progress-track,.bar-track{height:9px;border-radius:999px;background:rgba(127,151,184,.14);overflow:hidden}.progress-track span,.bar-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue3),var(--blue2));box-shadow:0 0 18px rgba(31,122,255,.22)}.progress-card>p{margin:11px 0 0}.next-card{display:flex;flex-direction:column;justify-content:center}.next-due-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:8px}.next-due-row>strong{font-size:22px;color:var(--text);white-space:nowrap}.category-chart{padding:18px 22px 22px;display:grid;gap:15px}.bar-row{display:grid;gap:7px}.bar-label{display:flex;justify-content:space-between;gap:12px;font-size:12px}.bar-label span{color:var(--muted)}.bar-label strong{color:var(--text);font-size:12px}.bar-track{height:7px}.filter-card{display:grid;grid-template-columns:minmax(190px,1.4fr) repeat(3,minmax(130px,.75fr)) auto auto;gap:9px;padding:12px;margin-bottom:18px}.filter-card input,.filter-card select{min-width:0}.head-actions{display:flex;gap:9px}.type-chip{display:inline-flex;padding:5px 8px;border-radius:8px;background:rgba(31,122,255,.065);border:1px solid rgba(77,163,255,.12);color:#84baff;font-size:11px;font-weight:700}.table-name small,.paid-date{display:block;margin-top:3px;color:var(--muted);font-size:10px}.time-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.data-card{margin-top:18px}.data-actions{display:flex;gap:10px;flex-wrap:wrap;padding:22px}.data-actions form{margin:0}.data-actions .btn{min-width:220px}.filter-card .btn{white-space:nowrap}

/* Contraste correto no tema Claro Premium */
:root[data-theme="light"] .money-cell,:root[data-theme="light"] .expense-main strong,:root[data-theme="light"] .expense-side>strong,:root[data-theme="light"] .next-due-row>strong,:root[data-theme="light"] .bar-label strong{color:#111827!important}
:root[data-theme="light"] .type-chip{background:rgba(29,114,243,.07);border-color:rgba(29,114,243,.11);color:#256fcf}
:root[data-theme="light"] .progress-track,:root[data-theme="light"] .bar-track{background:#e7edf5}

@media(max-width:1150px){.filter-card{grid-template-columns:1fr 1fr 1fr}.filter-card input{grid-column:span 2}.dashboard-grid{grid-template-columns:1fr}}
@media(max-width:800px){.filter-card{grid-template-columns:1fr 1fr}.filter-card input{grid-column:1/-1}.data-actions{padding:18px}.data-actions .btn{width:100%}.data-actions form{width:100%}.mobile-nav{grid-template-columns:repeat(5,1fr)}}
@media(max-width:560px){.filter-card{grid-template-columns:1fr}.filter-card input{grid-column:auto}.filter-card .btn{width:100%}.next-due-row{align-items:flex-start;flex-direction:column}.dashboard-grid{gap:10px}.progress-card,.next-card{padding:17px}.time-grid{grid-template-columns:1fr 1fr}}

/* ===== V6: receitas, calendário e visão anual ===== */
.head-actions{display:flex;gap:9px;align-items:center}.v6-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.filter-grid{display:grid;grid-template-columns:2fr 1fr 1fr auto auto;gap:10px;align-items:center}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.progress-card,.next-card{padding:22px}.progress-number{font-size:26px}.progress-track{height:9px;border-radius:999px;background:rgba(127,145,170,.13);overflow:hidden}.progress-track span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--blue3),var(--blue2))}.next-due-row{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.next-due-row>strong{font-size:24px}.year-chart{height:240px;display:grid;grid-template-columns:repeat(12,1fr);gap:10px;padding:28px 22px 12px;align-items:end}.year-col{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:7px}.bars{height:190px;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:4px}.bar{width:11px;min-height:2px;border-radius:7px 7px 2px 2px}.bar.revenue{background:linear-gradient(180deg,#4bdd94,#10945b)}.bar.expense{background:linear-gradient(180deg,#ff8a99,#d94b61)}.year-col small{font-size:10px;color:var(--muted)}.chart-legend,.calendar-legend{display:flex;gap:18px;align-items:center;padding:0 22px 20px;color:var(--muted);font-size:11px}.legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.revenue-dot{background:#20a766}.expense-dot{background:#e45a70}.revenue-icon{color:#6fb2ff}.compact-empty{padding:24px}.calendar-card{overflow:hidden}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-head{background:rgba(255,255,255,.025);border-bottom:1px solid var(--line)}.calendar-head>div{padding:12px;text-align:center;color:var(--muted);font-size:11px;font-weight:800}.calendar-day{min-height:145px;padding:10px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.01)}.calendar-day:nth-child(7n){border-right:0}.calendar-day.empty{background:rgba(0,0,0,.04)}.calendar-day.today{box-shadow:inset 0 0 0 2px rgba(49,140,255,.45)}.day-number{font-size:11px;font-weight:850;color:var(--muted);margin-bottom:8px}.day-items{display:grid;gap:5px}.cal-item{padding:6px 7px;border-radius:8px;font-size:9px;line-height:1.25;border:1px solid var(--line);overflow:hidden}.cal-item span,.cal-item strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-item strong{margin-top:2px}.cal-item.expense{background:rgba(220,66,87,.07);color:#ff8d9d}.cal-item.revenue{background:rgba(29,114,243,.08);color:#80b9ff}.annual-totals{grid-template-columns:repeat(3,1fr)}.positive-money{color:#4fd4a3!important}.negative-money{color:#ff7789!important}
:root[data-theme="light"] .calendar-head{background:#f7f9fc}:root[data-theme="light"] .calendar-day{background:#fff}:root[data-theme="light"] .calendar-day.empty{background:#f6f8fb}:root[data-theme="light"] .cal-item.expense{background:rgba(220,66,87,.07);color:#b9364a}:root[data-theme="light"] .cal-item.revenue{background:rgba(29,114,243,.07);color:#1c67cc}:root[data-theme="light"] .money-cell{color:#111827!important}
@media(max-width:1100px){.v6-cards{grid-template-columns:repeat(2,1fr)}.filter-grid{grid-template-columns:1fr 1fr}.filter-grid>*:first-child{grid-column:1/-1}.calendar-day{min-height:120px}.year-chart{gap:6px}.bar{width:8px}}
@media(max-width:800px){.dashboard-grid{grid-template-columns:1fr}.year-chart{overflow-x:auto;grid-template-columns:repeat(12,44px);justify-content:start}.calendar-card{overflow:auto}.calendar-grid{min-width:760px}.filter-grid{grid-template-columns:1fr}.filter-grid>*:first-child{grid-column:auto}.annual-totals{grid-template-columns:1fr 1fr}.head-actions{flex-wrap:wrap}}
@media(max-width:560px){.v6-cards{grid-template-columns:1fr 1fr}.annual-totals{grid-template-columns:1fr}.next-due-row>strong{font-size:18px}}
[hidden]{display:none!important}.entry-notes{white-space:normal;overflow-wrap:anywhere;max-width:360px}.head-actions{margin-top:8px}.filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.filter-grid input[type=hidden]{display:none}.cal-item{text-decoration:none}.btn.active{border-color:var(--blue2);box-shadow:0 0 0 2px var(--blue-soft)}.section-card+.head-actions{margin-top:18px}.metric strong{overflow-wrap:anywhere}@media(max-width:800px){.filter-grid{grid-template-columns:1fr}.page-head{flex-wrap:wrap}.actions{flex-wrap:wrap}}

/* Calendário: despesas pagas em verde, nos dois temas. */
.cal-item.expense.paid{background:rgba(53,214,154,.12);border-color:rgba(53,214,154,.25);color:#6de4b5}
:root[data-theme="light"] .cal-item.expense.paid{background:rgba(22,155,105,.09);border-color:rgba(22,155,105,.22);color:#11825a}/* Identidade CMD e ajustes responsivos */
.cmd-logo{width:42px;height:48px;object-fit:contain;border-radius:8px;flex-shrink:0}.cmd-hero{background:radial-gradient(ellipse at 20% 30%,rgba(13,167,97,.2),transparent 55%),#09231c}.brand-wrap{gap:10px}.brand{font-size:15px}.btn.primary{background:linear-gradient(135deg,#19a968,#087c47);border-color:#15975b;box-shadow:0 10px 24px rgba(10,145,82,.2)}.nav-link.active{background:rgba(20,162,94,.14);box-shadow:inset 0 0 0 1px rgba(55,190,121,.18)}.nav-link.active:before{background:#38c98b}.metric:after{background:linear-gradient(90deg,transparent,#28b474,transparent)}.distribution{margin-bottom:24px}.distribution>div:first-child{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}.distribution span{color:var(--muted);font-size:13px}.login-form{margin-top:24px}.login-card>.cmd-logo{margin-bottom:20px}.sidebar-footer form{margin-top:15px}.btn[aria-pressed=true]{border-color:#22af74}.actions{flex-wrap:wrap}.entry-notes{max-width:320px}.mobile-topbar a{color:var(--muted);font-size:12px;text-decoration:none}.metric strong{overflow-wrap:anywhere}input[readonly]{opacity:.65}:root[data-theme=light] .cmd-hero{background:radial-gradient(ellipse at 20% 30%,rgba(13,167,97,.12),transparent 55%),#eef8f2}:root[data-theme=light] .nav-link.active{color:#087b46}:root[data-theme=light] .metric-icon{color:#087b46;background:#e6f6ed}.sidebar-footer .muted{overflow-wrap:anywhere}@media(max-width:800px){.distribution>div:first-child{flex-direction:column}.page-head{flex-wrap:wrap}.cmd-hero{display:none}}
