/* Generado por scripts/build_ui_theme.py; editar shared/ui. */
/* HidroSystem: fuente común de la interfaz, sin dependencias externas. */
@media screen {
  :root {
    --hs-ui-font: "Segoe UI", Inter, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
    --hs-ui-brand: #003f80;
    --hs-ui-brand-hover: #002d5e;
    --hs-ui-gold: #bba757;
    --hs-ui-bg: #f5f7fb;
    --hs-ui-surface: #ffffff;
    --hs-ui-soft: #edf3fb;
    --hs-ui-text: #182b42;
    --hs-ui-muted: #52667d;
    --hs-ui-line: #dce5ef;
    --hs-ui-radius: 16px;
    --hs-ui-control-radius: 10px;
    --hs-ui-shadow: 0 3px 16px rgb(24 43 66 / 5%);
    --hs-ui-focus: #247ec7;
  }
  html.theme-dark {
    --hs-ui-bg: #0f1c2e;
    --hs-ui-surface: #192a40;
    --hs-ui-soft: #233951;
    --hs-ui-text: #f1f6fc;
    --hs-ui-muted: #b4c5d8;
    --hs-ui-line: #354b65;
    --hs-ui-focus: #78bdf3;
  }
}

@media screen {
  :root { --bg-dark: #0f1c2e; --bg-card: #192a40; --bg-nav: #13243a; --border-color: #354b65; --text-secondary: #b4c5d8; }
  body { font-family: var(--hs-ui-font); font-weight: 400; line-height: 1.5; -webkit-font-smoothing: antialiased; }
  body::before { background: none; }
  .app-container { max-width: 540px; }
  .app-header { background: var(--bg-nav); padding: 14px 18px; border-bottom-color: var(--border-color); }
  .app-logo { font-family: var(--hs-ui-font); font-size: 1.1rem; letter-spacing: -.025em; }
  .app-content { gap: 16px; padding: 18px; }
  .card { background: var(--bg-card); border-radius: 16px; box-shadow: 0 3px 14px #00000016; backdrop-filter: none; }
  .card::before { display: none; }
  :is(h1,h2,h3,.section-title) { font-family: var(--hs-ui-font); letter-spacing: -.025em; line-height: 1.25; }
  :is(p,code,.card strong,.card span) { user-select: text; }
  .btn { border-radius: var(--hs-ui-control-radius); min-height: 46px; font-weight: 600; }
  .btn-primary { background: #176aaa; color: #fff; box-shadow: none; }
  .btn-primary:active { box-shadow: none; }
  .input-control { background: #0f1c2e; border-color: var(--border-color); border-radius: 10px; min-height: 46px; }
  .input-control:focus { border-color: #78bdf3; box-shadow: 0 0 0 3px #78bdf322; }
  .app-navigation { max-width: 540px; background: var(--bg-nav); }
  .nav-tab { min-height: 44px; font-size: .72rem; border-radius: 10px; }
  .nav-tab.active { color: #a4d4fa; background: #1c3857; text-shadow: none; }
  .nav-tab.active svg { color: #a4d4fa; filter: none; }
  :is(button,a,input,select,textarea):focus-visible { outline: 3px solid #78bdf3; outline-offset: 3px; }
  @media (prefers-reduced-motion: reduce) { .btn,.nav-tab,.nav-tab svg,.card { transition: none; } }
}
