/* Shared visual language: action blue, semantic status, content-specific surfaces. */
:root {
  --bg: #f7f8fa;
  --panel: #fff;
  --text: #20252d;
  --muted: #626c7a;
  --line: #e0e4e9;
  --blue: #4285f4;
  --blue-dark: #255cb4;
  --blue-soft: #edf4ff;
  --green: #217653;
  --status-warm: #94621b;
}
body { background: var(--bg); }
.site-nav { background: #fff; }
.app-topbar { background: #fff; backdrop-filter: none; }
.logo-symbol { color: var(--blue-dark); border-color: #91b5ed; background: var(--blue-soft); }
.main-menu > a.selected { color: var(--blue-dark); background: var(--blue-soft); box-shadow: inset 3px 0 var(--blue); }
.main-menu > a.selected > span:first-child { color: var(--blue-dark); }
.global-search-trigger { background: #f8fafc; border-color: #d4dbe5; }
.global-search-trigger:hover { background: var(--blue-soft); border-color: #aac6ef; }
.page-heading h1 { letter-spacing: -.025em; }
.section-heading h2 { display:flex; align-items:center; gap:9px; }
.section-block > .section-heading h2::before { content:""; width:4px; height:16px; border-radius:2px; background:var(--blue); }
.entry-card:hover { background:#f5f8fd; }
.entry-icon { width:38px; height:38px; border:0; background:var(--blue-soft); color:var(--blue-dark); border-radius:10px; }
.entry-icon svg { width:20px; height:20px; }
.entry-copy > strong { font-weight:600; }
.entry-copy > p { color:var(--muted); }
.tax-tile { min-height:100px; gap:13px; }
.tax-tile:hover { background:var(--blue-soft); }
.tax-tile-title svg { color:var(--blue-dark); }
.tax-tile-title strong { font-weight:550; }
.tile-caption { color:var(--muted); }
.update-icon { color:var(--blue-dark); }
.badge.active-badge { color:var(--green); background:#edf7f1; border-color:#cce6d6; }
.primary-button { background:var(--blue); color:white; border-color:var(--blue); }
.primary-button:hover { background:var(--blue-dark); border-color:var(--blue-dark); }
.policy-filters, .guide-filter { background:#fff; border-color:var(--line); }
.reader-article { background:#fff; }
.doc-metadata { background:#f6f8fb; }
.tax-summary, .pt-summary { border-top:3px solid var(--blue); background:#fff; box-shadow:0 2px 8px #20252d06; }
.tax-summary > :first-child, .pt-summary > :first-child { color:var(--muted); }
.tax-project-footer { background:#f5f8fd; }
.tax-summary button, .pt-summary button { transition:background .15s; }
.tax-summary button:hover, .pt-summary button:hover { background:var(--blue-soft); }
/* Preserve the single gray input border, including focus and mobile date fields. */
:is(input,select,textarea):focus { outline:none; box-shadow:none; }
@media(max-width:760px) {
 .tax-summary, .pt-summary { border-top:1px solid #b9cdee; box-shadow:0 -3px 14px #20252d0b; }
}
@media(prefers-reduced-motion:reduce) { *, *::before, *::after { transition:none!important; scroll-behavior:auto!important; } }
