/* Sabrina Restum Pratas — base visual compartilhada
   Conceito: joalheria monocromática, geometria do octograma do logo,
   prata fria como neutro e ouro envelhecido só para peças banhadas. */
:root{
  --bg:#f6f6f4; --surface:#ffffff; --sunken:#eeeeeb;
  --ink:#141414; --muted:#686b70; --line:#e1e1dd;
  --prata:#8d949b; --ouro:#a9834a;
  --btn:#141414; --btn-ink:#ffffff;
  --ok:#2e7d5b; --warn:#a96e14; --danger:#b23b3b;
  --logo-filter:none;
  --f-display:"Arvo", Rockwell, "Roboto Slab", Georgia, serif;
  --f-body:"Jost", "Futura", "Century Gothic", system-ui, sans-serif;
  --r:2px;
  --shadow:0 18px 40px -24px rgba(20,20,20,.35);
}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]){
  --bg:#111213; --surface:#1a1b1d; --sunken:#232427;
  --ink:#f0f0ee; --muted:#9a9ea3; --line:#2d2f32;
  --prata:#b3b9bf; --ouro:#cfa96b; --btn:#f0f0ee; --btn-ink:#111213;
  --ok:#5fbf91; --warn:#e0a54b; --danger:#e07b7b; --logo-filter:invert(1);
  --shadow:0 18px 40px -24px rgba(0,0,0,.8); color-scheme:dark;
}}
:root[data-theme="dark"]{
  --bg:#111213; --surface:#1a1b1d; --sunken:#232427;
  --ink:#f0f0ee; --muted:#9a9ea3; --line:#2d2f32;
  --prata:#b3b9bf; --ouro:#cfa96b; --btn:#f0f0ee; --btn-ink:#111213;
  --ok:#5fbf91; --warn:#e0a54b; --danger:#e07b7b; --logo-filter:invert(1);
  --shadow:0 18px 40px -24px rgba(0,0,0,.8); color-scheme:dark;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:16px;line-height:1.55;margin:0}
h1,h2,h3{font-family:var(--f-display);font-weight:400;line-height:1.15;text-wrap:balance;margin:0}
a{color:inherit}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit;color:inherit}
.logo{filter:var(--logo-filter)}
.eyebrow{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-weight:500}
.num{font-variant-numeric:tabular-nums}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:44px;padding:0 1.25em;border:1px solid var(--btn);background:var(--btn);color:var(--btn-ink);border-radius:var(--r);font-weight:500;letter-spacing:.06em;text-transform:uppercase;font-size:.8rem;cursor:pointer;text-decoration:none;transition:opacity .15s,transform .15s}
.btn:hover{opacity:.88}
.btn:active{transform:translateY(1px)}
.btn.sec{background:transparent;color:var(--ink);border-color:var(--line)}
.btn.sec:hover{border-color:var(--ink);opacity:1}
.btn.perigo{background:transparent;color:var(--danger);border-color:var(--line)}
.btn.bloco{width:100%}
.btn[disabled]{opacity:.4;cursor:not-allowed}
:focus-visible{outline:2px solid var(--ink);outline-offset:2px}

.campo{display:flex;flex-direction:column;gap:6px;min-width:0}
.campo label{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:500}
.campo input,.campo select,.campo textarea{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line);background:var(--surface);border-radius:var(--r);font-size:16px}
.campo textarea{min-height:96px;resize:vertical}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:none;border-color:var(--ink)}
.check{display:flex;align-items:center;gap:10px;font-size:.95rem;cursor:pointer;min-height:36px}
.check input{width:18px;height:18px;accent-color:var(--ink)}

.selo{display:inline-flex;align-items:center;height:22px;padding:0 8px;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;background:var(--btn);color:var(--btn-ink)}
.selo.novo{background:var(--surface);color:var(--ink);border:1px solid var(--ink)}
.selo.ouro{background:var(--ouro);color:#fff}
.selo.esgotado{background:var(--sunken);color:var(--muted)}
.pill{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font-size:.75rem;font-weight:500;background:var(--sunken);color:var(--muted);white-space:nowrap}
.pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.pill.ok{color:var(--ok)} .pill.warn{color:var(--warn)} .pill.danger{color:var(--danger)}

.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translate(-50%,20px);background:var(--btn);color:var(--btn-ink);padding:12px 18px;font-size:.92rem;opacity:0;pointer-events:none;transition:.25s;z-index:200;max-width:calc(100% - 32px);box-shadow:var(--shadow)}
.toast.on{opacity:1;transform:translate(-50%,0)}
.demo-aviso{background:var(--sunken);color:var(--muted);font-size:.8rem;text-align:center;padding:6px 16px}
@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}
