/* EmarApp — base visual (estilo Apple: tipografia do sistema, muito respiro, um azul pra ação) */
:root{
  --paper:#ffffff; --mist:#f5f5f7; --ink:#1d1d1f; --ink-2:#424245; --graphite:#6e6e73; --hair:#d2d2d7; --hair-2:#e8e8ed;
  --action:#0071e3; --action-h:#0077ed; --link:#0066cc; --zap:#1f8f4e; --zap-h:#1a7c43; --danger:#d70015; --warn:#b25000;
  --sheet:#ffffff; --field:#ffffff; --overlay:rgba(0,0,0,.34);
  --r-xs:8px; --r-s:12px; --r-m:18px; --r-l:28px; --pill:980px;
  --font:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI Variable Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --font-d:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI Variable Display","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --wrap:1024px;
  color-scheme: light;
}
@media (prefers-color-scheme: dark){
  :root.app-escuro{
    --paper:#000000; --mist:#161617; --ink:#f5f5f7; --ink-2:#d2d2d7; --graphite:#a1a1a6; --hair:#424245; --hair-2:#2c2c2e;
    --link:#2997ff; --sheet:#1c1c1e; --field:#1c1c1e; --overlay:rgba(0,0,0,.6);
    color-scheme: dark;
  }
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.47;letter-spacing:-.022em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
img{max-width:100%;display:block}
a{color:var(--link);text-decoration:none}
a:hover{text-decoration:underline}
button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}
:focus-visible{outline:3px solid rgba(0,113,227,.55);outline-offset:2px;border-radius:6px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 22px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* tipografia */
.d1{font-family:var(--font-d);font-size:clamp(44px,7.2vw,84px);line-height:1.04;font-weight:700;letter-spacing:-.035em;margin:0}
.d2{font-family:var(--font-d);font-size:clamp(34px,4.8vw,56px);line-height:1.07;font-weight:700;letter-spacing:-.03em;margin:0}
.d3{font-family:var(--font-d);font-size:clamp(26px,3vw,32px);line-height:1.12;font-weight:600;letter-spacing:-.022em;margin:0}
.lead{font-size:clamp(19px,2.1vw,24px);line-height:1.38;color:var(--ink-2);letter-spacing:-.02em;margin:0}
.muted{color:var(--graphite)}
.small{font-size:14px;line-height:1.43;letter-spacing:-.016em}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 22px;border:0;border-radius:var(--pill);background:var(--action);color:#fff;font-size:17px;font-weight:500;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .15s}
.btn:hover{background:var(--action-h);text-decoration:none}
.btn:disabled{opacity:.45;cursor:default}
.btn-g{background:var(--mist);color:var(--ink)}
.btn-g:hover{background:var(--hair-2)}
.btn-zap{background:var(--zap)}
.btn-zap:hover{background:var(--zap-h)}
.btn-s{min-height:32px;padding:0 14px;font-size:14px}
.btn-l{min-height:52px;padding:0 30px;font-size:18px}
.btn-x{background:none;color:var(--danger);padding:0 6px}
.btn-x:hover{background:none;text-decoration:underline}
.lnk{background:none;border:0;padding:0;color:var(--link);cursor:pointer;font-size:inherit}
.lnk:hover{text-decoration:underline}

/* campos (estilo formulário do iPhone: grupo arredondado com linhas) */
.campo{display:block;margin-bottom:14px}
.campo>span{display:block;font-size:13px;color:var(--graphite);margin:0 0 6px 4px;letter-spacing:-.01em}
.inp{width:100%;min-height:46px;padding:11px 14px;border:1px solid var(--hair);border-radius:var(--r-s);background:var(--field);font-size:17px;outline:none;transition:border-color .15s, box-shadow .15s}
.inp:focus{border-color:var(--action);box-shadow:0 0 0 4px rgba(0,113,227,.16)}
textarea.inp{min-height:96px;resize:vertical;line-height:1.45}
select.inp{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%236e6e73' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}
.grupo{background:var(--field);border:1px solid var(--hair);border-radius:var(--r-s);overflow:hidden}
.grupo .inp{border:0;border-radius:0;box-shadow:none}
.grupo .inp~.inp{border-top:1px solid var(--hair)}
.grupo:focus-within{border-color:var(--action);box-shadow:0 0 0 4px rgba(0,113,227,.16)}
.msg{font-size:14px;min-height:20px;margin:10px 2px 0}
.msg.erro{color:var(--danger)}
.msg.ok{color:var(--zap)}

/* navegação do topo (vidro) */
.topo{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.78);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(0,0,0,.08)}
.topo .wrap{display:flex;align-items:center;gap:20px;height:52px}
.marca{font-family:var(--font-d);font-weight:700;font-size:19px;letter-spacing:-.03em;color:var(--ink);text-decoration:none}
.marca:hover{text-decoration:none}
.topo nav{display:flex;gap:22px;margin-left:auto;font-size:13px}
.topo nav a{color:var(--ink-2)}
.topo nav a:hover{color:var(--ink);text-decoration:none}
@media (max-width:760px){.topo nav a:not(.sempre){display:none}.topo nav{gap:14px}.topo .wrap{gap:14px}}
html,body{overflow-x:clip}

/* folha (modal) */
dialog.folha{border:0;padding:0;border-radius:var(--r-l);background:var(--sheet);color:var(--ink);width:min(560px,calc(100vw - 24px));max-height:calc(100dvh - 48px);box-shadow:0 30px 80px rgba(0,0,0,.25)}
dialog.folha::backdrop{background:var(--overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
dialog.folha[open]{animation:folha .28s cubic-bezier(.2,.8,.2,1)}
@keyframes folha{from{transform:translateY(24px) scale(.98);opacity:0}to{transform:none;opacity:1}}
@media (max-width:600px){
  dialog.folha{width:100vw;max-width:100vw;margin:auto 0 0;border-radius:var(--r-l) var(--r-l) 0 0;max-height:92dvh}
  dialog.folha[open]{animation:folhaM .3s cubic-bezier(.2,.8,.2,1)}
  @keyframes folhaM{from{transform:translateY(100%)}to{transform:none}}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* aviso flutuante */
#toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:rgba(29,29,31,.92);color:#fff;padding:11px 18px;border-radius:var(--pill);font-size:15px;opacity:0;pointer-events:none;transition:opacity .2s, transform .2s;z-index:200;max-width:calc(100vw - 32px)}
#toast.on{opacity:1;transform:translate(-50%,0)}

/* rodapé */
.rodape{background:var(--mist);color:var(--graphite);font-size:12px;line-height:1.5;padding:22px 0 34px}
.rodape .wrap{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center}
.rodape a{color:var(--ink-2)}
.rodape .copy{margin-right:auto}

/* páginas de texto (termos, privacidade, suporte) */
.texto{max-width:720px;margin:0 auto;padding:64px 22px 96px}
.texto h1{margin-bottom:10px}
.texto h2{font-family:var(--font-d);font-size:24px;line-height:1.2;letter-spacing:-.02em;margin:40px 0 8px}
.texto p,.texto li{color:var(--ink-2)}
.texto ul{padding-left:20px}
