/* Autobelle brand tokens. Shared by the product, authentication and Django admin. */
@font-face{font-family:Manrope;src:url("../fonts/manrope-latin.e0a3015a64a8.woff2") format('woff2');font-weight:200 800;font-style:normal;font-display:swap}
:root,html[data-theme=light]{
  --font-ui:Manrope,"Segoe UI",Arial,sans-serif;--font:var(--font-ui);
  /* Ações mantêm o azul royal; links e destaques ganham contraste no escuro. */
  --primary-color:#2563eb;--primary-hover:#1d4ed8;--primary-press:#1e40af;
  --plate:#2563eb;--plate-dark:#1d4ed8;--plate-press:#1e40af;--plate-soft:#eff6ff;--plate-line:#bfdbfe;
  /* Texto e ícones brancos sobre ações primárias em ambos os temas. */
  --on-plate:#fff;
  --brand-filter:none;
  --ink:#111827;--ink-2:#374151;--ink-3:#4b5563;--ink-4:#4b5563;
  --bg:#f3f4f6;--surface:#ffffff;--surface-2:#f3f4f6;--surface-3:#e5e7eb;--sidebar-bg:#ffffff;
  /* Decorative separators stay softer than controls, whose boundary conveys function. */
  --line:#d1d5db;--line-soft:#e5e7eb;--control-line:#6b7280;--control-hover-line:var(--ink-3);
  --ok:#0d7349;--ok-soft:#e8f6ef;--danger:#b7352c;--danger-soft:#fdedeb;--danger-dark:#92211c;
  --warn:#825708;--warn-soft:#fdf3e0;--info:#1d68a8;--info-soft:#eaf3fa;
  --focus-color:var(--plate);--ring:0 0 0 3px #2563eb30;--table-hover-bg:var(--surface-2);
  --disabled-fg:var(--ink-3);--disabled-bg:var(--surface-3);--disabled-line:var(--control-line);
  --motion-fast:120ms;--motion-normal:180ms;--motion-ease:cubic-bezier(.2,.8,.2,1);
  /* Django admin consumes the same palette; it keeps only this light theme. */
  --primary:var(--primary-color);--secondary:var(--primary-hover);--accent:var(--ink);--primary-fg:var(--on-plate);
  --body-fg:var(--ink);--body-bg:var(--bg);--body-quiet-color:var(--ink-2);--body-medium-color:var(--ink-2);--body-loud-color:var(--ink);
  --header-color:var(--ink);--header-branding-color:var(--ink);--header-bg:var(--surface);--header-link-color:var(--plate);
  --breadcrumbs-fg:var(--ink-2);--breadcrumbs-link-fg:var(--plate);--breadcrumbs-bg:var(--bg);
  --link-fg:var(--plate);--link-hover-color:var(--plate-dark);--link-selected-fg:var(--plate-dark);
  --button-fg:var(--on-plate);--button-bg:var(--primary-color);--button-hover-bg:var(--primary-hover);--default-button-bg:var(--primary-color);--default-button-hover-bg:var(--primary-hover);
  --delete-button-bg:var(--danger);--delete-button-hover-bg:var(--danger-dark);--close-button-bg:var(--ink-2);
  --object-tools-fg:var(--plate);--object-tools-bg:var(--surface);--object-tools-hover-bg:var(--plate-soft);
  --selected-bg:var(--plate-soft);--selected-row:var(--plate-soft);--darkened-bg:var(--surface-2);
  --border-color:var(--line);--hairline-color:var(--line-soft);--font-family-primary:var(--font-ui);color-scheme:light;
}
body,input,select,textarea,button{font-family:var(--font-ui)}
/* Explicit opacity avoids browser placeholder defaults and faded disabled labels. */
input::placeholder,textarea::placeholder{color:var(--ink-4);opacity:1}
:is(button,.btn,.ds-button,input,select,textarea):disabled,:is(button,.btn,.ds-button,input,select,textarea):disabled:hover,:is(.btn,.ds-button)[aria-disabled=true],:is(.btn,.ds-button)[aria-disabled=true]:hover,.btn.disabled,.btn.disabled:hover,.bo-field input:not([type=checkbox]):not([type=radio]):disabled,.bo-field select:disabled,.bo-field textarea:disabled{opacity:1;color:var(--disabled-fg);background:var(--disabled-bg);border-color:var(--disabled-line);cursor:not-allowed;-webkit-text-fill-color:var(--disabled-fg)}
button[aria-busy=true]{opacity:1;cursor:progress}
.app-brand{display:block;padding:0 8px;margin-bottom:28px}.app-brand>img{display:block;width:176px;height:auto}.app-brand small{margin:3px 0 0 47px;font-size:10px;letter-spacing:.03em}.app-brand .brand-mark{background:none}
.app-brand>img,.auth-mobile-brand,.error-content .brand>img{filter:var(--brand-filter)}
.bo-admin-brand>img{display:block;width:158px;height:auto}.bo-admin-brand small{font-family:var(--font-ui);color:var(--ink-2);font-size:11px;font-weight:400;margin-left:8px}
.nav-section li a.active{border-left:2px solid var(--plate);padding-left:14px}.nav-section li a{transition:background-color var(--motion-fast) var(--motion-ease)}
.ds-table tbody tr:hover{background:var(--table-hover-bg)}.search-result-photo{width:48px;height:36px;object-fit:cover;flex:none;border-radius:var(--r-sm)}
.search-page-group>.ds-pagination{padding:16px 24px;margin:0;border-top:1px solid var(--line-soft)}
.connection-notice{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-bottom:20px;border:1px solid var(--warn);border-radius:8px;background:var(--warn-soft);color:var(--ink);font-size:13px}.connection-notice[hidden]{display:none}.connection-notice>span{flex:1}
.product-help-link{display:flex;align-items:center;gap:12px;margin:24px 8px 12px;padding:10px 8px;font-size:12px;color:var(--ink-2)}.product-help-link[aria-current=page]{color:var(--plate);font-weight:700}
.belle-welcome{display:flex;align-items:center;gap:24px;max-width:1160px;margin:24px auto 0;padding:20px 24px;border:1px solid var(--plate-line);border-radius:12px;background:var(--plate-soft)}
.belle-welcome>img{display:block;width:88px;height:88px;flex:none;border-radius:18px;object-fit:contain}.belle-welcome>div{flex:1;min-width:0}.belle-welcome .ds-eyebrow{font-size:10px;letter-spacing:.08em;color:var(--plate);margin:0 0 5px}.belle-welcome h2{font-size:20px;letter-spacing:-.035em;margin:0 0 6px;color:var(--ink)}.belle-welcome p:not(.ds-eyebrow){font-size:13px;line-height:1.6;color:var(--ink-2);margin:0}.belle-welcome>button{flex:none;white-space:normal}.belle-welcome [hidden]{display:none}
@media(max-width:680px){.belle-welcome{flex-wrap:wrap;gap:14px;padding:18px;margin-top:20px}.belle-welcome>img{width:64px;height:64px;border-radius:14px}.belle-welcome>button{width:100%}.belle-welcome .ds-eyebrow{font-size:9px}.belle-welcome h2{font-size:18px}}
@media print{.belle-welcome{display:none}}
.ds-button,.ds-icon-button{transition:background-color var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease)}
.bo-admin-brand,.bo-page-header h1,.app-page-heading h1{letter-spacing:-.035em}
body.login .submit-row input{background:var(--primary-color);border-color:var(--primary-color);color:var(--on-plate)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Tema escuro. Só na tela: a impressão continua saindo com a paleta clara
   acima, e o papel do recibo/proposta tem fundo próprio. Os apelidos do
   bloco claro (--focus-color, --disabled-*, e os nomes do admin) apontam
   para os tokens redefinidos aqui e acompanham o tema sozinhos. */
@media screen{html[data-theme=dark]{
  --plate:#93c5fd;--plate-dark:#bfdbfe;--plate-press:#dbeafe;--plate-soft:#1e3a5f;--plate-line:#3b82f6;
  --brand-filter:brightness(0) invert(1);
  --ink:#f9fafb;--ink-2:#e5e7eb;--ink-3:#d1d5db;--ink-4:#c4c9d2;
  --bg:#111827;--surface:#1f2937;--surface-2:#273142;--surface-3:#374151;--sidebar-bg:#1f2937;
  --line:#4b5563;--line-soft:#374151;--control-line:#9ca3af;
  --ok:#4ec98c;--ok-soft:#0f2a20;--danger:#ff8b80;--danger-soft:#331b19;--danger-dark:#ffb3ab;
  --warn:#e2b25c;--warn-soft:#2e2413;--info:#6fb6e8;--info-soft:#12262f;
  --ring:0 0 0 3px #93c5fd55;
  /* Sombra clara some no escuro: a profundidade passa a vir do vidro preto. */
  --shadow-sm:0 1px 2px #0000004d;--shadow:0 1px 2px #0000005e,0 1px 3px #0000004d;
  --shadow-md:0 2px 4px #0000005e,0 8px 20px -6px #0000006b;--shadow-lg:0 12px 34px -10px #00000085;
  color-scheme:dark;
}}
/* Sem JavaScript não há escolha salva; nesse caso vale a preferência do sistema. */
@media screen and (prefers-color-scheme:dark){html:not([data-theme]){
  --plate:#93c5fd;--plate-dark:#bfdbfe;--plate-press:#dbeafe;--plate-soft:#1e3a5f;--plate-line:#3b82f6;
  --brand-filter:brightness(0) invert(1);
  --ink:#f9fafb;--ink-2:#e5e7eb;--ink-3:#d1d5db;--ink-4:#c4c9d2;
  --bg:#111827;--surface:#1f2937;--surface-2:#273142;--surface-3:#374151;--sidebar-bg:#1f2937;
  --line:#4b5563;--line-soft:#374151;--control-line:#9ca3af;
  --ok:#4ec98c;--ok-soft:#0f2a20;--danger:#ff8b80;--danger-soft:#331b19;--danger-dark:#ffb3ab;
  --warn:#e2b25c;--warn-soft:#2e2413;--info:#6fb6e8;--info-soft:#12262f;
  --ring:0 0 0 3px #93c5fd55;
  /* Sombra clara some no escuro: a profundidade passa a vir do vidro preto. */
  --shadow-sm:0 1px 2px #0000004d;--shadow:0 1px 2px #0000005e,0 1px 3px #0000004d;
  --shadow-md:0 2px 4px #0000005e,0 8px 20px -6px #0000006b;--shadow-lg:0 12px 34px -10px #00000085;
  color-scheme:dark;
}}
