/* Guarda Pet — temas claro e escuro. Tokens usados em toda a interface. */
:root {
  --bg: #fffdf8; --card: #ffffff; --text: #302b23; --muted: #71665a;
  --line: #e8dfd2; --accent: #b74713; --on-accent: #ffffff;
  --soft: #f6efe3; --green: #26734d; --gold: #946b16;
  --positive-soft: #e7f2e9; --purple: #946b16;
  --hero: linear-gradient(115deg, #fff0d8, #f6e2bd);
  --hero-text: #422e16; --hero-muted: #765730;
  --hero-button: #26734d; --hero-on-button: #ffffff;
  --wallet: linear-gradient(120deg, #245d42, #173d2e);
  --wallet-text: #ffffff; --wallet-muted: #d7e8da;
  --gold-soft: #fbf1d9; --gold-text: #795512;
  --shadow: 0 8px 25px #67421608;
  color: var(--text); background: var(--bg); color-scheme: light;
}
[data-theme=dark] {
  --bg: #080b14; --card: #111624; --text: #f4effa; --muted: #b5aec4;
  --line: #303047; --accent: #e4bd69; --on-accent: #211808;
  --soft: #242039; --green: #c0a3ff; --gold: #e4bd69;
  --positive-soft: #2b2140; --purple: #c0a3ff;
  --hero: linear-gradient(115deg, #241b3b, #161426);
  --hero-text: #f5edfF; --hero-muted: #c5badb;
  --hero-button: #b798f0; --hero-on-button: #1b102b;
  --wallet: linear-gradient(120deg, #2e214a, #171526);
  --wallet-text: #fff5e3; --wallet-muted: #c9bfd9;
  --gold-soft: #302817; --gold-text: #e4bd69;
  --shadow: none;
  color: var(--text); background: var(--bg); color-scheme: dark;
}
.primary,.fab,.toast,.sidebar nav button.active,.chips button.active,.calendar-grid button.active {
  background: var(--accent); color: var(--on-accent);
}
.toast .icon-btn { color: var(--on-accent); }
.chips button.active { border-color: var(--accent); }
.primary:hover,.fab:hover { filter: brightness(.94); }
.secondary { color: var(--green); border-color: var(--line); background: var(--card); }
.secondary:hover { background: var(--positive-soft); }
.text-btn,[data-theme=dark] .text-btn,.file-button { color: var(--accent); }
.today-hero,.activity-feature,.welcome-art,.premium-panel,.premium-strip {
  background: var(--hero); color: var(--hero-text);
}
.today-hero .eyebrow,.today-hero p,.hero-bottom,.activity-feature .eyebrow,.activity-feature p,
.sample p,.premium-panel>.eyebrow,.premium-panel>p,.premium-strip .eyebrow,.premium-decline {
  color: var(--hero-muted);
}
.activity-feature .secondary { background: var(--hero-button); color: var(--hero-on-button); border-color: transparent; }
.welcome h1 em { color: var(--accent); }
.photo-art:after { background: linear-gradient(transparent 35%,#14291be8); }
[data-theme=dark] .photo-art:after { background: linear-gradient(transparent 35%,#140d29ee); }
.photo-art,.photo-art .eyebrow,.photo-art .sample p { color: #fff; }
.sample { background: #ffffff35; border-color: #ffffff40; }
[data-theme=dark] .sample { background: #ffffff08; border-color: var(--line); }
.progress,.routine-progress .progress { background: var(--soft); }
.today-hero .progress { background: #00000018; }
[data-theme=dark] .today-hero .progress { background: #ffffff18; }
.progress>span,.routine-progress .progress>span,.calendar-grid .has-care:after { background: var(--green); }
.avatar,.tutor-avatar,.top-avatar { color: var(--green); background: var(--positive-soft); }
.stat svg,.symbol,.routine-group h2 svg,.reminder>svg,.empty>svg,
.season-banner>svg,.activity-icon,.gate>svg { color: var(--green); }
.symbol,.symbol.Água,.symbol.Passeio,.activity-icon,.tone-1,
[data-theme=dark] .symbol,[data-theme=dark] .activity-icon { background: var(--positive-soft); color: var(--green); }
.symbol.Refeição,.tone-2 { background: var(--gold-soft); color: var(--gold-text); }
.completed .check-btn:before,.checked .check-btn:before { background: var(--green); border-color: var(--green); }
[data-theme=dark] .completed .check-btn,[data-theme=dark] .checked .check-btn { color: #1b102b; }
.wallet-teaser,[data-theme=dark] .wallet-teaser { background: var(--gold-soft); color: var(--text); border-color: var(--line); }
.wallet-teaser p,.wallet-teaser .eyebrow,[data-theme=dark] .wallet-teaser p,[data-theme=dark] .wallet-teaser .eyebrow { color: var(--gold-text); }
.pet-wallet { background: var(--wallet); color: var(--wallet-text); }
.wallet-identity p,.wallet-data dt,.pet-wallet footer { color: var(--wallet-muted); }
.wallet-header>span { color: #f1d085; }
.season-guide>.section-head>svg,.premium-panel>svg,.premium-benefits svg { color: var(--gold); }
.activity-card:hover { border-color: var(--green); }
.badge.warning,[data-theme=dark] .badge.warning { background: var(--gold-soft); color: var(--gold-text); }
.gp-scene,.gp-season-photo,.gp-activity-photo { background: var(--soft); }
.breadcrumb>span { color: var(--muted); }
.modal::backdrop { background: #100d2088; }
.emergency-actions .primary,.destructive { background: #a7353d; color: #fff; }
[data-theme=dark] .emergency-actions .primary,[data-theme=dark] .destructive { background: #f0a1ad; color: #30121a; }
[data-theme=dark] .sidebar nav .emergency-nav,[data-theme=dark] .settings-list>button:last-child,[data-theme=dark] .error { color: #f0a1ad; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible {
  outline: 3px solid var(--accent); outline-offset: 3px;
}
input[type=checkbox],input[type=radio] { accent-color: var(--green); }
::selection { background: var(--accent); color: var(--on-accent); }
