/* Tema "Lucrota v2": papel quente + verde floresta + amarelo da marca */
:root{
  --bg:#F3F0E8; --raised:#FFFFFF; --ink:#0D1F18; --muted:#5E6E66; --line:#E3DED2;
  --accent:#0B6E4F; --on-accent:#FFFFFF; --accent-soft:#DDEFE6;
  --warn:#8F5A00; --warn-soft:#FBEBC8;
  --bad:#C23B30; --on-bad:#FFFFFF; --bad-soft:#F8DEDA;
  --bar:#BFD9CD; --map-bg:#E6E9E1;
  --cta:#F5B83D; --on-cta:#2A1B00;
  --shadow:0 1px 2px rgba(13,31,24,.06),0 8px 24px -10px rgba(13,31,24,.18);
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#08130F; --raised:#10201A; --ink:#EAF3EE; --muted:#8FA79B; --line:#1F332B;
  --accent:#5BD9A0; --on-accent:#05140D; --accent-soft:#16302A;
  --warn:#F2B44A; --warn-soft:#352810;
  --bad:#FF7B6E; --on-bad:#1E0906; --bad-soft:#3A1B17;
  --bar:#24493B; --map-bg:#0E1C17;
  --cta:#F5B83D; --on-cta:#2A1B00;
  --shadow:0 1px 0 rgba(255,255,255,.03) inset,0 10px 30px -12px rgba(0,0,0,.6);}}
:root[data-theme="dark"]{
  --bg:#08130F; --raised:#10201A; --ink:#EAF3EE; --muted:#8FA79B; --line:#1F332B;
  --accent:#5BD9A0; --on-accent:#05140D; --accent-soft:#16302A;
  --warn:#F2B44A; --warn-soft:#352810;
  --bad:#FF7B6E; --on-bad:#1E0906; --bad-soft:#3A1B17;
  --bar:#24493B; --map-bg:#0E1C17;
  --cta:#F5B83D; --on-cta:#2A1B00;
  --shadow:0 1px 0 rgba(255,255,255,.03) inset,0 10px 30px -12px rgba(0,0,0,.6);}

body{background:var(--bg)}
/* cartão principal: verde profundo com brilho amarelo */
.hero{background:radial-gradient(120% 90% at 100% 0%,rgba(245,184,61,.28),transparent 55%),linear-gradient(155deg,#0F8A63 0%,#0B6E4F 45%,#07503A 100%);
  color:#fff;border-radius:24px;padding:22px 22px 20px;gap:12px;box-shadow:0 18px 40px -18px rgba(7,80,58,.7);position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;right:-40px;bottom:-60px;width:180px;height:180px;border-radius:50%;border:26px solid rgba(255,255,255,.07)}
.hero .k{opacity:.8;letter-spacing:.09em;font-weight:600}
.hero .big{font-size:clamp(44px,14vw,60px);letter-spacing:-.03em}
.hero.neg{background:linear-gradient(155deg,#D9483B,#A82E25);color:#fff}
/* cartões e métricas */
.formcard,.cost-box,.pbar,.plan{background:var(--raised);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}
.stat-grid,.metrics{gap:10px}
.metric{background:var(--raised);border:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:16px;padding:14px;box-shadow:var(--shadow)}
.metric small{font-weight:500}
.metric b{font-size:23px;letter-spacing:-.01em}
/* botões: amarelo da marca como chamada principal */
.btn{border-radius:14px}
.btn.primary{background:var(--cta);border-color:var(--cta);color:var(--on-cta);font-weight:800;box-shadow:0 8px 18px -8px rgba(245,184,61,.7)}
.chip[aria-pressed="true"]{background:var(--accent);color:var(--on-accent)}
.guide{background:var(--accent-soft);border:1px solid var(--line)}
/* menu inferior flutuante */
.tabbar{left:12px;right:12px;bottom:max(10px,env(safe-area-inset-bottom,0px));border:1px solid var(--line);border-radius:24px;box-shadow:0 14px 34px -12px rgba(0,0,0,.35);background:color-mix(in srgb,var(--raised) 92%,transparent);backdrop-filter:blur(14px)}
.tab-btn[aria-selected="true"]{background:var(--accent);color:var(--on-accent)}
h2{font-size:20px;letter-spacing:-.02em}
.pbar{padding:12px 14px}

.daybar{display:flex;gap:8px;align-items:center}
.daybar input[type=date]{flex:1;min-height:36px;border-radius:10px;border:1px solid var(--line);background:var(--raised);padding:0 10px;color-scheme:light dark}
.daybar .btn{min-width:40px;font-size:20px;line-height:1}

.forgot-row{display:flex;justify-content:flex-end;margin-top:-4px}
.forgot-row[hidden]{display:none}
textarea{width:100%;padding:12px;border-radius:10px;border:1px solid var(--line);background:var(--bg);font:inherit;font-size:16px;color:inherit;resize:vertical;min-height:96px}
