@font-face{font-family:'Nunito';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/nunito-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Nunito';font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/nunito-latin-800-normal.woff2) format('woff2')}
@font-face{font-family:'Atkinson Hyperlegible';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/atkinson-hyperlegible-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Atkinson Hyperlegible';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/atkinson-hyperlegible-latin-700-normal.woff2) format('woff2')}
/* Cuidaliv · paleta Soft Care (Gabriela, 07/11/2026). As cores claras dela vão nos fundos;
   texto e botões usam tons escuros da mesma família (contraste AA conferido). */
:root{
  --fundo:#f5efe5; --cartao:#fffdf9; --cartao-2:#fbf7f0; --linha:#e3dccf; --sombra:0 1px 2px rgba(36,56,74,.06),0 4px 14px rgba(36,56,74,.06);
  --tinta:#24384a; --tinta-2:#4d6273; --tinta-3:#56697a;
  --salvia:#a9c5b3; --salvia-c:#e3eee6; --menta:#b8d2cf; --menta-c:#e4efed; --azul-c:#c8d6e5; --azul-cc:#e6edf5; --pessego:#ebc9b9; --pessego-c:#f8e8df; --lilas-c:#ebe6f3;
  --primaria:#3d6b54; --primaria-t:#ffffff; --azul:#2f5f86; --alerta:#a8432f; --alerta-c:#f8e1da; --atencao:#5a3b10; --atencao-c:#f7e3b5; --ok:#2f6b4c; --ok-c:#dcefe3;
  --raio:18px; --raio-p:12px;
  --fonte:'Atkinson Hyperlegible',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --fonte-t:'Nunito',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --tam:18px;
  color-scheme:light;
}
:root[data-letra="grande"]{--tam:21px}
@media (prefers-color-scheme:dark){:root:not([data-tema="claro"]){
  --fundo:#141d26; --cartao:#1d2934; --cartao-2:#22303c; --linha:#33434f; --sombra:none;
  --tinta:#e9eef2; --tinta-2:#b9c6cf; --tinta-3:#93a3ae;
  --salvia-c:#24382d; --menta-c:#213634; --azul-cc:#1f2f40; --pessego-c:#3a2a22; --lilas-c:#2b2738;
  --primaria:#a9c5b3; --primaria-t:#122019; --azul:#9fc1e0; --alerta:#f0a08d; --alerta-c:#3d221c; --atencao:#f3d58e; --atencao-c:#3a2e14; --ok:#9fd3b2; --ok-c:#1e3628;
  color-scheme:dark;
}}
:root[data-tema="escuro"]{
  --fundo:#141d26; --cartao:#1d2934; --cartao-2:#22303c; --linha:#33434f; --sombra:none;
  --tinta:#e9eef2; --tinta-2:#b9c6cf; --tinta-3:#93a3ae;
  --salvia-c:#24382d; --menta-c:#213634; --azul-cc:#1f2f40; --pessego-c:#3a2a22; --lilas-c:#2b2738;
  --primaria:#a9c5b3; --primaria-t:#122019; --azul:#9fc1e0; --alerta:#f0a08d; --alerta-c:#3d221c; --atencao:#f3d58e; --atencao-c:#3a2e14; --ok:#9fd3b2; --ok-c:#1e3628;
  color-scheme:dark;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;font-size:var(--tam)}
body{margin:0;background:var(--fundo);color:var(--tinta);font:400 1rem/1.5 var(--fonte);min-height:100vh;padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}
h1,h2,h3{font-family:var(--fonte-t);line-height:1.2;margin:0 0 .4em;letter-spacing:-.01em}
h2{font-size:1.35rem;font-weight:800}
h3{font-size:1.1rem;font-weight:800}
p{margin:0 0 .75em}
a{color:var(--azul)}
button,input,select,textarea{font:inherit;color:inherit}
img,svg{max-width:100%}
.pular{position:absolute;left:-999px;top:0;background:var(--cartao);padding:8px 12px;z-index:99}
.pular:focus{left:8px}
:focus-visible{outline:3px solid var(--azul);outline-offset:2px}
[hidden]{display:none!important}

/* topo */
.topo{position:sticky;top:0;z-index:20;background:var(--fundo);padding-top:env(safe-area-inset-top,0px);border-bottom:1px solid var(--linha)}
.topo-in{display:flex;align-items:center;gap:10px;max-width:680px;margin:0 auto;padding:10px 16px;min-height:60px}
.marca{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--tinta);min-width:0}
.marca-simbolo{width:36px;height:38px;flex:none;display:block}
.marca-simbolo svg{width:100%;height:100%;display:block}
.marca-nome{font:800 1.35rem/1 var(--fonte-t);letter-spacing:-.01em}
.marca-nome b{color:#3f73a0;font-weight:800}
.marca-nome i{color:#5b9c78;font-style:normal}
@media (prefers-color-scheme:dark){:root:not([data-tema="claro"]) .marca-nome b{color:#9fc1e0}:root:not([data-tema="claro"]) .marca-nome i{color:#a9d3b8}}
:root[data-tema="escuro"] .marca-nome b{color:#9fc1e0}
:root[data-tema="escuro"] .marca-nome i{color:#a9d3b8}
.topo-voltar{width:44px;height:44px;border:0;background:none;border-radius:50%;display:grid;place-items:center;margin-left:-8px;cursor:pointer;flex:none}
.topo-voltar svg{width:26px;height:26px;fill:none;stroke:var(--tinta);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.topo-titulo{font:800 1.15rem/1.2 var(--fonte-t);margin:0;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.topo-ajuda{margin-left:auto;flex:none;text-decoration:none;font-weight:700;font-size:.85rem;color:var(--alerta);background:var(--alerta-c);border-radius:999px;padding:9px 14px;min-height:44px;display:inline-flex;align-items:center}
.aviso-decubito{max-width:680px;margin:0 auto;padding:0 16px 10px}
.aviso-decubito a{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--atencao);background:var(--atencao-c);border-radius:var(--raio-p);padding:10px 14px;font-weight:700}
.aviso-decubito a.tocando{animation:pulsar 1.2s ease-in-out infinite}
@keyframes pulsar{50%{transform:scale(1.015)}}
@media (prefers-reduced-motion:reduce){.aviso-decubito a.tocando{animation:none}}

.conteudo{max-width:680px;margin:0 auto;padding:16px 16px 24px;outline:none}

/* barra inferior */
.barra{position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--cartao);border-top:1px solid var(--linha);display:flex;justify-content:center;padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px))}
.barra a{flex:1;max-width:136px;display:flex;flex-direction:column;align-items:center;gap:2px;text-decoration:none;color:var(--tinta-3);font-size:.72rem;font-weight:700;padding:4px 0;min-height:56px;justify-content:center;border-radius:12px}
.barra a svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.barra a[aria-current="page"]{color:var(--primaria)}
.barra-circulo{width:52px;height:52px;border-radius:50%;background:var(--primaria);display:grid;place-items:center;margin-top:-22px;box-shadow:0 4px 12px rgba(61,107,84,.35)}
.barra-circulo svg{stroke:var(--primaria-t)!important;width:28px!important;height:28px!important;stroke-width:2.6!important}

/* blocos */
.cartao{background:var(--cartao);border-radius:var(--raio);box-shadow:var(--sombra);border:1px solid var(--linha);padding:16px;margin-bottom:14px}
.cartao>:last-child{margin-bottom:0}
.saudacao{display:flex;align-items:center;gap:14px;margin:4px 0 16px}
.saudacao h2{margin:0}
.saudacao p{margin:0;color:var(--tinta-2)}
.figurinha{width:58px;height:58px;border-radius:50%;flex:none;display:block;overflow:hidden;background:var(--salvia-c)}
.figurinha svg{width:100%;height:100%;display:block}
.figurinha.p{width:40px;height:40px}
.grade{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}
.bloco{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:14px;border-radius:var(--raio);text-decoration:none;color:var(--tinta);min-height:116px;border:1px solid transparent;font-weight:700;line-height:1.25}
.bloco small{font-weight:400;color:var(--tinta-2);font-size:.8rem;line-height:1.3}
.bloco .ic{width:40px;height:40px}
.bloco .ic svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bloco.salvia{background:var(--salvia-c);color:var(--tinta)}.bloco.salvia .ic{color:var(--primaria)}
.bloco.menta{background:var(--menta-c)}.bloco.menta .ic{color:#2f6b66}
.bloco.azul{background:var(--azul-cc)}.bloco.azul .ic{color:var(--azul)}
.bloco.pessego{background:var(--pessego-c)}.bloco.pessego .ic{color:#9a4f2e}
.bloco.lilas{background:var(--lilas-c)}.bloco.lilas .ic{color:#5d4b8a}
@media (prefers-color-scheme:dark){:root:not([data-tema="claro"]) .bloco .ic{color:var(--tinta)!important}}
:root[data-tema="escuro"] .bloco .ic{color:var(--tinta)!important}
.bloco.largo{grid-column:1/-1;min-height:0;flex-direction:row;align-items:center}
.cadeado{position:absolute;top:10px;right:10px;width:22px;height:22px;opacity:.75}
.cadeado svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.titulo-secao{font:800 1rem/1.2 var(--fonte-t);color:var(--tinta-2);margin:20px 2px 10px;text-transform:none}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:12px 20px;border-radius:14px;border:2px solid transparent;background:var(--primaria);color:var(--primaria-t);font-weight:700;text-decoration:none;cursor:pointer;text-align:center;line-height:1.2}
.btn.sec{background:transparent;color:var(--primaria);border-color:var(--primaria)}
.btn.claro{background:var(--salvia-c);color:var(--tinta)}
.btn.perigo{background:var(--alerta);color:#fff}
.btn.bloco-btn,.btn.cheio{width:100%}
.btn:disabled{opacity:.5;cursor:not-allowed}
.btn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.botoes{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}
.botoes .btn{flex:1 1 140px}
.link{background:none;border:0;padding:8px 0;color:var(--azul);text-decoration:underline;cursor:pointer;font-weight:700;min-height:44px}

/* listas */
.lista{list-style:none;margin:0;padding:0}
.lista>li{border-top:1px solid var(--linha)}
.lista>li:first-child{border-top:0}
.item{display:flex;align-items:center;gap:12px;padding:14px 4px;text-decoration:none;color:var(--tinta);min-height:56px;width:100%;background:none;border:0;text-align:left;cursor:pointer}
.item .item-t{flex:1;min-width:0}
.item .item-t b{display:block}
.item .item-t small{display:block;color:var(--tinta-2);font-size:.85rem}
.item .seta,.seta{width:20px;height:20px;flex:none;fill:none;stroke:var(--tinta-3);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.marcadores{margin:0 0 .75em;padding-left:1.25em}
.marcadores li{margin-bottom:.4em}
.passos-num{counter-reset:p;list-style:none;margin:0;padding:0}
.passos-num>li{counter-increment:p;position:relative;padding:0 0 14px 48px;min-height:40px}
.passos-num>li::before{content:counter(p);position:absolute;left:0;top:-2px;width:34px;height:34px;border-radius:50%;background:var(--salvia-c);color:var(--primaria);font:800 1rem/34px var(--fonte-t);text-align:center}

/* níveis de ajuda */
.nivel{border-radius:var(--raio);padding:16px;margin-bottom:14px;border:2px solid transparent}
.nivel h3{display:flex;align-items:center;gap:10px;font-size:1.15rem}
.nivel h3 .bola{width:16px;height:16px;border-radius:50%;flex:none}
.nivel.n192{background:var(--alerta-c);border-color:var(--alerta)}
.nivel.n192 .bola{background:var(--alerta)}
.nivel.equipe{background:var(--atencao-c)}
.nivel.equipe .bola{background:#c98a1e}
.nivel.bem{background:var(--ok-c)}
.nivel.bem .bola{background:var(--ok)}
.nivel ul{margin:0 0 12px;padding-left:1.2em}
.nivel li{margin-bottom:.45em}
.ligar{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:60px;border-radius:14px;font:800 1.2rem/1 var(--fonte-t);text-decoration:none;color:#fff;background:var(--alerta);margin-top:6px}
.ligar svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.ligar.equipe{background:#7a5413}
.ligar.sem{background:transparent;color:var(--atencao);border:2px dashed currentColor;font-size:1rem;font-family:var(--fonte)}

/* formulários */
.campo{display:block;margin-bottom:14px}
.campo>span{display:block;font-weight:700;margin-bottom:6px}
.campo>small{display:block;color:var(--tinta-2);font-size:.82rem;margin-top:4px}
.campo input,.campo select,.campo textarea{width:100%;min-height:52px;border:2px solid var(--linha);border-radius:12px;background:var(--cartao);padding:10px 12px}
.campo textarea{min-height:96px;resize:vertical}
.campo input:focus,.campo select:focus,.campo textarea:focus{border-color:var(--azul);outline:none}
.linha2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.linha3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
.opcoes{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.opcoes legend{font-weight:700;margin-bottom:6px;padding:0;width:100%}
fieldset.opcoes{border:0;padding:0;margin:0 0 14px;min-width:0}
.chip{position:relative;display:inline-flex}
.chip input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.chip>span{display:inline-flex;align-items:center;gap:6px;min-height:48px;padding:10px 16px;border-radius:999px;border:2px solid var(--linha);background:var(--cartao);font-weight:700;cursor:pointer}
.chip input:checked+span{background:var(--salvia-c);border-color:var(--primaria);color:var(--tinta)}
.chip input:focus-visible+span{outline:3px solid var(--azul);outline-offset:2px}
.chip.grande>span{min-height:64px;border-radius:16px;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;padding:10px 14px}
.chip.grande>span small{font-weight:400;color:var(--tinta-2);font-size:.8rem}

/* avisos */
.nota{background:var(--azul-cc);border-radius:var(--raio-p);padding:12px 14px;margin:0 0 14px;font-size:.92rem}
.nota.calma{background:var(--salvia-c)}
.nota.atencao{background:var(--atencao-c);color:var(--atencao)}
.nota b{font-weight:700}
.fonte-ref{font-size:.78rem;color:var(--tinta-3);margin-top:8px}
.vazio{text-align:center;color:var(--tinta-2);padding:24px 8px}

/* desenhos da biblioteca */
.desenho{margin:0 0 14px;background:#fff;border-radius:var(--raio);border:1px solid var(--linha);overflow:hidden}
.desenho-rolo{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.desenho-rolo svg{display:block;height:auto}
.desenho figcaption{padding:10px 14px;font-size:.85rem;color:var(--tinta-2);border-top:1px solid var(--linha);background:var(--cartao-2);display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.desenho figcaption .link{padding:0;min-height:0}
.desenho g[data-peca]{cursor:pointer}
.desenho.tem-ativa g[data-peca]:not(.ativa){opacity:.28;transition:opacity .2s}
.desenho g[data-peca].ativa{filter:drop-shadow(0 0 6px rgba(47,95,134,.55))}
.pecas{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
.pecas button{min-height:44px;border-radius:999px;border:2px solid var(--linha);background:var(--cartao);padding:8px 14px;font-weight:700;font-size:.88rem;cursor:pointer;color:var(--tinta)}
.pecas button[aria-pressed="true"]{background:var(--azul-cc);border-color:var(--azul)}
.peca-info{background:var(--azul-cc);border-radius:var(--raio-p);padding:14px;margin-bottom:14px}
.peca-info h3{margin-bottom:6px}
.peca-info p:last-child{margin-bottom:0}
.amplia{position:fixed;inset:0;z-index:60;background:#fff;display:flex;flex-direction:column}
.amplia-topo{display:flex;align-items:center;gap:8px;padding:calc(8px + env(safe-area-inset-top,0px)) 12px 8px;border-bottom:1px solid #e3dccf;color:#24384a;background:#fbf8f2}
.amplia-topo b{flex:1}
.amplia-topo button{min-width:48px;min-height:48px;border-radius:12px;border:1px solid #d5cdbf;background:#fff;font-weight:800;font-size:1.2rem;color:#24384a}
.amplia-area{flex:1;overflow:auto;-webkit-overflow-scrolling:touch}
.amplia-area svg{display:block;height:auto}

/* relógio de decúbito */
.relogio{text-align:center;padding:20px 16px}
.relogio .tempo{font:800 3.2rem/1 var(--fonte-t);letter-spacing:-.02em;margin:6px 0;font-variant-numeric:tabular-nums}
.relogio .tempo.passou{color:var(--alerta)}
.relogio .pos-atual{font-weight:700;color:var(--tinta-2)}
.anel{width:240px;height:240px;margin:0 auto 8px;position:relative}
.anel .tempo{font-size:2.6rem}
.anel-meio>*{max-width:176px;font-size:.88rem;line-height:1.25}
.anel-meio>.tempo{max-width:none;font-size:2.6rem;line-height:1}
.anel svg{width:100%;height:100%;transform:rotate(-90deg)}
.anel circle{fill:none;stroke-width:14}
.anel .fundo-anel{stroke:var(--salvia-c)}
.anel .prog{stroke:var(--primaria);stroke-linecap:round;transition:stroke-dashoffset .5s linear}
.anel.passou .prog{stroke:var(--alerta)}
.anel-meio{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.posicoes-esc{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
.pos-btn{border:2px solid var(--linha);background:var(--cartao);border-radius:var(--raio-p);padding:8px;cursor:pointer;text-align:center;font-weight:700;color:var(--tinta);display:flex;flex-direction:column;gap:6px;align-items:center}
.pos-btn .mini-des{width:100%;background:#fff;border-radius:8px;overflow:hidden}
.pos-btn .mini-des svg{display:block;width:100%;height:auto}
.pos-btn .mini-des svg .rot-t,.pos-btn .mini-des svg .rot-s,.pos-btn .mini-des svg .rot-l,.pos-btn .mini-des svg .rot-p{display:none}
.pos-btn[aria-pressed="true"]{border-color:var(--primaria);background:var(--salvia-c)}
.pos-btn .sugerida{font-size:.75rem;color:var(--primaria);font-weight:700}

/* registros e linha do tempo */
.reg-grade{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:16px}
.reg-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:96px;border-radius:var(--raio-p);background:var(--cartao);border:1px solid var(--linha);text-decoration:none;color:var(--tinta);font-weight:700;font-size:.82rem;text-align:center;padding:10px 6px;position:relative;line-height:1.2}
.reg-btn svg{width:32px;height:32px;fill:none;stroke:var(--primaria);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.reg-btn .cadeado{top:6px;right:6px;width:16px;height:16px}
.linha-tempo{list-style:none;margin:0;padding:0}
.linha-tempo li{display:grid;grid-template-columns:58px 1fr auto;gap:10px;align-items:start;padding:12px 0;border-top:1px solid var(--linha)}
.linha-tempo li:first-child{border-top:0}
.linha-tempo .hora{font-weight:800;font-family:var(--fonte-t);font-variant-numeric:tabular-nums}
.linha-tempo .tipo{font-size:.78rem;color:var(--tinta-3);font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.linha-tempo .apagar{border:0;background:none;color:var(--tinta-3);min-width:44px;min-height:44px;cursor:pointer;font-size:.8rem;text-decoration:underline}
.dia-titulo{font:800 .95rem/1.2 var(--fonte-t);color:var(--tinta-2);margin:18px 0 6px}
.tarefa{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--linha)}
.tarefa:first-child{border-top:0}
.tarefa .hora{font:800 1rem var(--fonte-t);width:54px;flex:none;font-variant-numeric:tabular-nums}
.tarefa .t{flex:1;min-width:0}
.tarefa .t small{display:block;color:var(--tinta-2);font-size:.82rem}
.tarefa .feito{min-width:52px;min-height:44px;border-radius:12px;border:2px solid var(--primaria);background:transparent;color:var(--primaria);font-weight:800;cursor:pointer;font-size:.85rem;padding:0 10px}
.tarefa.ok .feito{background:var(--primaria);color:var(--primaria-t)}
.tarefa.ok .t b{text-decoration:line-through;opacity:.7}
.tarefa.atrasada .hora{color:var(--alerta)}
.progresso{height:10px;border-radius:999px;background:var(--salvia-c);overflow:hidden;margin:6px 0 2px}
.progresso i{display:block;height:100%;background:var(--primaria);border-radius:999px}
.progresso.azul{background:var(--azul-cc)}.progresso.azul i{background:var(--azul)}
.resumo-linha{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.resumo-linha .t{flex:1}
.resumo-linha .t b{display:flex;justify-content:space-between;gap:8px;font-size:.95rem}
.resumo-linha .t b span{font-weight:400;color:var(--tinta-2);font-size:.85rem}
.numeros{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin-bottom:14px}
.numero{background:var(--cartao-2);border-radius:var(--raio-p);padding:10px 12px}
.numero small{display:block;color:var(--tinta-2);font-size:.78rem;font-weight:700}
.numero b{font:800 1.4rem/1.2 var(--fonte-t)}
.numero.fora{background:var(--atencao-c);color:var(--atencao)}
.numero.fora small{color:inherit}
.bristol{display:grid;grid-template-columns:1fr;gap:8px;margin:0 0 14px;padding:0;border:0;min-width:0}
.bristol .chip{display:flex}.bristol .chip>span{width:100%;justify-content:flex-start;border-radius:14px;gap:12px;padding:8px 12px}.bristol .b-nome{display:block;line-height:1.3}
.bristol svg{width:54px;height:30px;flex:none}

/* corpo para marcar pele */
.corpo-mapa{max-width:360px;margin:0 auto 12px}
.corpo-mapa svg{width:100%;height:auto;display:block}
.corpo-mapa .zona{fill:transparent;stroke:transparent;cursor:pointer}
.corpo-mapa .zona.marcada{fill:rgba(168,67,47,.35);stroke:var(--alerta);stroke-width:2}
.corpo-mapa .zona:focus-visible{stroke:var(--azul);stroke-width:3;outline:none}

/* ficha de emergência para mostrar */
.ficha-mostrar{background:#fff;color:#16212b;border-radius:var(--raio);padding:18px;border:3px solid #a8432f}
.ficha-mostrar h2{color:#a8432f;font-size:1.5rem}
.ficha-mostrar dl{margin:0;display:grid;grid-template-columns:1fr;gap:2px}
.ficha-mostrar dt{font-weight:700;font-size:.85rem;color:#4d6273;margin-top:10px}
.ficha-mostrar dd{margin:0;font-size:1.25rem;font-weight:700;line-height:1.3}

/* passo a passo */
.passo-topo{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.passo-topo .progresso{flex:1}
.passo-n{font-weight:800;color:var(--tinta-2);font-size:.9rem;white-space:nowrap}
.passo-corpo h2{font-size:1.3rem}
.passo-nav{display:flex;gap:10px;margin-top:16px;position:sticky;bottom:calc(84px + env(safe-area-inset-bottom,0px));background:var(--fundo);padding:10px 0}
.passo-nav .btn{flex:1}
.materiais{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px;padding:0;list-style:none}
.materiais li{background:var(--menta-c);border-radius:999px;padding:6px 12px;font-size:.88rem;font-weight:700}

/* premium */
.premium-topo{background:linear-gradient(135deg,var(--salvia-c),var(--azul-cc));border-radius:var(--raio);padding:20px;margin-bottom:14px}
.premium-lista{list-style:none;padding:0;margin:0 0 14px}
.premium-lista li{display:flex;gap:10px;padding:8px 0;align-items:flex-start}
.premium-lista li::before{content:'';width:22px;height:22px;flex:none;margin-top:2px;border-radius:50%;background:var(--primaria) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.selo{display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;background:var(--pessego-c);color:#8a4526;border-radius:999px;padding:3px 9px;vertical-align:middle}
@media (prefers-color-scheme:dark){:root:not([data-tema="claro"]) .selo{color:var(--pessego)}}
:root[data-tema="escuro"] .selo{color:var(--pessego)}

/* figurinhas */
.figs{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:10px;margin-bottom:14px}
.fig-btn{border:3px solid transparent;border-radius:50%;padding:0;background:none;cursor:pointer;aspect-ratio:1;overflow:hidden}
.fig-btn[aria-pressed="true"]{border-color:var(--primaria)}
.fig-btn svg{width:100%;height:100%;display:block}

/* camada (modal) e toast */
.camada{position:fixed;inset:0;z-index:50;background:rgba(20,29,38,.45);display:flex;align-items:flex-end;justify-content:center}
.janela{background:var(--cartao);width:100%;max-width:680px;max-height:88vh;overflow:auto;border-radius:22px 22px 0 0;padding:20px 16px calc(20px + env(safe-area-inset-bottom,0px))}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(96px + env(safe-area-inset-bottom,0px));z-index:70;background:#24384a;color:#fff;border-radius:12px;padding:12px 18px;font-weight:700;max-width:calc(100% - 32px);box-shadow:0 6px 20px rgba(0,0,0,.2)}

/* boas-vindas */
.boasvindas{text-align:center;padding-top:12px}
.boasvindas .logo-grande{width:180px;margin:0 auto 6px}
.boasvindas .logo-grande svg{width:100%;height:auto}
.boasvindas .nome{font:800 2.4rem/1 var(--fonte-t);margin:4px 0}
.boasvindas .nome b{color:#3f73a0}.boasvindas .nome i{color:#3d6b54;font-style:normal}
.boasvindas .slogan{color:var(--tinta-2);font-style:italic;margin-bottom:18px}
.boasvindas .cartao{text-align:left}
.rodape-legal{font-size:.78rem;color:var(--tinta-3);text-align:center;margin-top:18px}

/* impressão do relatório */
@media print{
  .topo,.barra,.nao-imprime,.toast{display:none!important}
  body{background:#fff;color:#000;padding:0}
  .cartao{box-shadow:none;border:1px solid #ccc;break-inside:avoid}
}
@media (min-width:700px){.grade{grid-template-columns:1fr 1fr 1fr}.reg-grade{grid-template-columns:repeat(4,1fr)}}

.maiuscula::first-letter{text-transform:uppercase}

/* modo escuro: botão de ligar e nome na capa */
@media (prefers-color-scheme:dark){:root:not([data-tema="claro"]) .ligar{background:#a8432f;color:#fff}:root:not([data-tema="claro"]) .ligar.equipe{background:#7a5413}:root:not([data-tema="claro"]) .ligar.sem{background:transparent;color:var(--atencao)}:root:not([data-tema="claro"]) .boasvindas .nome b{color:#9fc1e0}:root:not([data-tema="claro"]) .boasvindas .nome i{color:#a9d3b8}:root:not([data-tema="claro"]) .btn.perigo{background:#a8432f;color:#fff}}
:root[data-tema="escuro"] .ligar{background:#a8432f;color:#fff}:root[data-tema="escuro"] .ligar.equipe{background:#7a5413}:root[data-tema="escuro"] .ligar.sem{background:transparent;color:var(--atencao)}:root[data-tema="escuro"] .boasvindas .nome b{color:#9fc1e0}:root[data-tema="escuro"] .boasvindas .nome i{color:#a9d3b8}:root[data-tema="escuro"] .btn.perigo{background:#a8432f;color:#fff}
/* desenhos da biblioteca */
.desenho .pvc-o,.mini-des .pvc-o,.amplia .pvc-o{fill:none;stroke:var(--dv-pvc-borda,#5d8799);stroke-linejoin:round}
.desenho .pvc-i,.mini-des .pvc-i,.amplia .pvc-i{fill:none;stroke:var(--dv-pvc,#e4f0f5);stroke-linejoin:round}
.desenho .pvc-f,.mini-des .pvc-f,.amplia .pvc-f{fill:var(--dv-pvc,#e4f0f5);fill-opacity:.85;stroke:var(--dv-pvc-borda,#5d8799);stroke-width:1.6;stroke-linejoin:round}
.desenho .pvc-in-o,.mini-des .pvc-in-o,.amplia .pvc-in-o{fill:none;stroke:var(--dv-pvc-in-borda,#8fb1c0);stroke-linejoin:round}
.desenho .pvc-in-i,.mini-des .pvc-in-i,.amplia .pvc-in-i{fill:none;stroke:var(--dv-pvc-in,#f3f9fb);stroke-linejoin:round}
.desenho .branco,.mini-des .branco,.amplia .branco{fill:var(--dv-branco,#fbfdfe);stroke:var(--dv-pvc-borda,#5d8799);stroke-width:1.6;stroke-linejoin:round}
.desenho .abertura,.mini-des .abertura,.amplia .abertura{fill:var(--dv-abertura,#c9dde6);stroke:var(--dv-pvc-borda,#5d8799);stroke-width:1.4}
.desenho .fenda,.mini-des .fenda,.amplia .fenda{fill:var(--dv-fenda,#b7cdd7);stroke:var(--dv-pvc-borda,#5d8799);stroke-width:1.2}
.desenho .cuff,.mini-des .cuff,.amplia .cuff{fill:var(--dv-cuff,#c3e1ef);fill-opacity:.55;stroke:var(--dv-cuff-borda,#3f86a8);stroke-width:1.5}
.desenho .linha-o,.mini-des .linha-o,.amplia .linha-o{fill:none;stroke:var(--dv-pvc-borda,#5d8799);stroke-linecap:round;stroke-linejoin:round}
.desenho .linha-i,.mini-des .linha-i,.amplia .linha-i{fill:none;stroke:var(--dv-pvc,#e4f0f5);stroke-linecap:round;stroke-linejoin:round}
.desenho .linha-dentro,.mini-des .linha-dentro,.amplia .linha-dentro{fill:none;stroke:var(--dv-cuff-borda,#3f86a8);stroke-width:1.4;stroke-dasharray:4 3;opacity:.8}
.desenho .brilho,.mini-des .brilho,.amplia .brilho{fill:none;stroke:#ffffff;stroke-linecap:round;opacity:.85}
.desenho .metal-o,.mini-des .metal-o,.amplia .metal-o{fill:none;stroke:var(--dv-metal-borda,#66737b);stroke-linejoin:round}
.desenho .metal-i,.mini-des .metal-i,.amplia .metal-i{fill:none;stroke:var(--dv-metal,#c8d0d5);stroke-linejoin:round}
.desenho .metal-f,.mini-des .metal-f,.amplia .metal-f{fill:var(--dv-metal,#c8d0d5);stroke:var(--dv-metal-borda,#66737b);stroke-width:1.6;stroke-linejoin:round}
.desenho .metal-sombra,.mini-des .metal-sombra,.amplia .metal-sombra{fill:none;stroke:var(--dv-metal-sombra,#9aa6ad);stroke-linecap:round}
.desenho .pele,.mini-des .pele,.amplia .pele{fill:var(--dv-pele,#f1d3c0);stroke:var(--dv-pele-borda,#c99a80);stroke-width:1.6;stroke-linejoin:round}
.desenho .tecido,.mini-des .tecido,.amplia .tecido{fill:var(--dv-tecido,#ecc3ae)}
.desenho .osso,.mini-des .osso,.amplia .osso{fill:var(--dv-osso,#f2eadb);stroke:var(--dv-osso-borda,#c6b597);stroke-width:1.4}
.desenho .cartilagem,.mini-des .cartilagem,.amplia .cartilagem{fill:var(--dv-cartilagem,#f6f3ec);stroke:var(--dv-cartilagem-borda,#a9a091);stroke-width:1.3}
.desenho .mucosa,.mini-des .mucosa,.amplia .mucosa{fill:var(--dv-mucosa,#e8a99a);stroke:var(--dv-mucosa-borda,#c07d6d);stroke-width:1.3}
.desenho .ar,.mini-des .ar,.amplia .ar{fill:var(--dv-ar,#f8fbfc)}
.desenho .ar-tinta,.mini-des .ar-tinta,.amplia .ar-tinta{fill:var(--dv-ar-tinta,#e6f3fc)}
.desenho .seta-ar,.mini-des .seta-ar,.amplia .seta-ar{fill:none;stroke:var(--dv-seta-ar,#2b7bbf);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.desenho .seta-comida,.mini-des .seta-comida,.amplia .seta-comida{fill:none;stroke:var(--dv-seta-comida,#c4506a);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.desenho .ponta-ar,.mini-des .ponta-ar,.amplia .ponta-ar{fill:var(--dv-seta-ar,#2b7bbf)}
.desenho .ponta-comida,.mini-des .ponta-comida,.amplia .ponta-comida{fill:var(--dv-seta-comida,#c4506a)}
.desenho .seta-sai,.mini-des .seta-sai,.amplia .seta-sai{fill:none;stroke:var(--dv-seta-sai,#2f9a6a);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.desenho .ponta-sai,.mini-des .ponta-sai,.amplia .ponta-sai{fill:var(--dv-seta-sai,#2f9a6a)}
.desenho .seta-o2,.mini-des .seta-o2,.amplia .seta-o2{fill:none;stroke:var(--dv-seta-o2,#2b7bbf);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:7 5}
.desenho .espuma,.mini-des .espuma,.amplia .espuma{fill:var(--dv-espuma,#f2f6f9);stroke:var(--dv-pvc-borda,#5d8799);stroke-width:1.6}
.desenho .costura,.mini-des .costura,.amplia .costura{fill:none;stroke:var(--dv-costura,#9db4bf);stroke-width:1.2;stroke-dasharray:4 3}
.desenho .tecido-b,.mini-des .tecido-b,.amplia .tecido-b{fill:var(--dv-tecido-b,#ffffff);stroke:var(--dv-pvc-borda,#5d8799);stroke-width:1.5}
.desenho .trama,.mini-des .trama,.amplia .trama{fill:none;stroke:var(--dv-trama,#dbe4e8);stroke-width:1}
.desenho .velcro,.mini-des .velcro,.amplia .velcro{fill:var(--dv-velcro,#a9b5bb);stroke:var(--dv-velcro-borda,#6f7d84);stroke-width:1.3}
.desenho .velcro-p,.mini-des .velcro-p,.amplia .velcro-p{fill:var(--dv-velcro-borda,#6f7d84)}
.desenho .latex-o,.mini-des .latex-o,.amplia .latex-o{fill:none;stroke:var(--dv-latex-borda,#a06a24);stroke-linecap:round;stroke-linejoin:round}
.desenho .latex-i,.mini-des .latex-i,.amplia .latex-i{fill:none;stroke:var(--dv-latex,#e3b26b);stroke-linecap:round;stroke-linejoin:round}
.desenho .agua,.mini-des .agua,.amplia .agua{fill:var(--dv-agua,#b9dcf1);fill-opacity:.8}
.desenho .bolha,.mini-des .bolha,.amplia .bolha{fill:#ffffff;stroke:var(--dv-cuff-borda,#3f86a8);stroke-width:1}
.desenho .verde,.mini-des .verde,.amplia .verde{fill:var(--dv-verde-o2,#4f9a6c);stroke:var(--dv-verde-o2-borda,#2d6a46);stroke-width:1.6}
.desenho .verde-brilho,.mini-des .verde-brilho,.amplia .verde-brilho{fill:none;stroke:#bfe3cc;stroke-linecap:round;opacity:.8}
.desenho .cinza,.mini-des .cinza,.amplia .cinza{fill:var(--dv-cinza,#eef1f3);stroke:var(--dv-cinza-borda,#7d8a91);stroke-width:1.6}
.desenho .escuro,.mini-des .escuro,.amplia .escuro{fill:var(--dv-escuro,#3b4a52)}
.desenho .violeta,.mini-des .violeta,.amplia .violeta{fill:var(--dv-violeta,#c9bbeb);stroke:var(--dv-violeta-borda,#6a55a6);stroke-width:1.6}
.desenho .cor-venturi,.mini-des .cor-venturi,.amplia .cor-venturi{fill:var(--dv-venturi,#7fc4a0);stroke:var(--dv-venturi-borda,#3d8a62);stroke-width:1.6}
.desenho .bolsa,.mini-des .bolsa,.amplia .bolsa{fill:var(--dv-bolsa,#e9f3f7);fill-opacity:.9;stroke:var(--dv-pvc-borda,#5d8799);stroke-width:1.6}
.desenho .dobra,.mini-des .dobra,.amplia .dobra{fill:none;stroke:var(--dv-pvc-borda,#5d8799);stroke-width:1;opacity:.45;stroke-linecap:round}
.desenho .silicone,.mini-des .silicone,.amplia .silicone{fill:var(--dv-silicone,#d9e8ee);fill-opacity:.95;stroke:var(--dv-pvc-borda,#5d8799);stroke-width:1.8;stroke-linejoin:round}
.desenho .gordura,.mini-des .gordura,.amplia .gordura{fill:var(--dv-gordura,#f7e7b9);stroke:var(--dv-gordura-borda,#d8c27e);stroke-width:1.2}
.desenho .musculo,.mini-des .musculo,.amplia .musculo{fill:var(--dv-musculo,#d99286);stroke:var(--dv-musculo-borda,#b06a5f);stroke-width:1.2}
.desenho .estomago,.mini-des .estomago,.amplia .estomago{fill:var(--dv-estomago,#f2c2b5);fill-opacity:.85;stroke:var(--dv-mucosa-borda,#c07d6d);stroke-width:1.6;stroke-linejoin:round}
.desenho .dieta,.mini-des .dieta,.amplia .dieta{fill:var(--dv-dieta,#f1e2bf)}
.desenho .azul-o,.mini-des .azul-o,.amplia .azul-o{fill:none;stroke:var(--dv-equipo-borda,#2f6fa6);stroke-linejoin:round}
.desenho .azul-i,.mini-des .azul-i,.amplia .azul-i{fill:none;stroke:var(--dv-equipo,#bcd9f0);stroke-linejoin:round}
.desenho .pu-o,.mini-des .pu-o,.amplia .pu-o{fill:none;stroke:var(--dv-pu-borda,#9c8a5a);stroke-linejoin:round}
.desenho .pu-i,.mini-des .pu-i,.amplia .pu-i{fill:none;stroke:var(--dv-pu,#f6efdc);stroke-linejoin:round}
.desenho .roxo,.mini-des .roxo,.amplia .roxo{fill:var(--dv-roxo,#c9b3e6);stroke:var(--dv-roxo-borda,#6a4c9c);stroke-width:1.6}
.desenho .borracha,.mini-des .borracha,.amplia .borracha{fill:var(--dv-borracha,#4a4f55)}
.desenho .urina,.mini-des .urina,.amplia .urina{fill:var(--dv-urina,#f3df8a);fill-opacity:.85}
.desenho .colchao,.mini-des .colchao,.amplia .colchao{fill:var(--dv-colchao,#e3ebef);stroke:var(--dv-cinza-borda,#7d8a91);stroke-width:1.6}
.desenho .marca,.mini-des .marca,.amplia .marca{fill:var(--dv-tinta,#1f3b47)}
.desenho .almofada,.mini-des .almofada,.amplia .almofada{fill:var(--dv-almofada,#e6eef2);fill-opacity:.92;stroke:var(--dv-pvc-in-borda,#8fb1c0);stroke-width:1.6;stroke-linejoin:round}
.desenho .faixa,.mini-des .faixa,.amplia .faixa{fill:none;stroke:var(--dv-faixa,#5f6e76);stroke-linecap:round}
.desenho .tela,.mini-des .tela,.amplia .tela{fill:var(--dv-tela,#24343c)}
.desenho .tela-t,.mini-des .tela-t,.amplia .tela-t{fill:var(--dv-tela-t,#bfe6f5);font:600 11px system-ui,-apple-system,'Segoe UI',Roboto,sans-serif}
.desenho .pulmao,.mini-des .pulmao,.amplia .pulmao{fill:var(--dv-pulmao,#f2c4c2);fill-opacity:.9;stroke:var(--dv-pulmao-borda,#c98282);stroke-width:1.6;stroke-linejoin:round}
.desenho .fissura,.mini-des .fissura,.amplia .fissura{fill:none;stroke:var(--dv-pulmao-borda,#c98282);stroke-width:1.2;opacity:.7}
.desenho .coracao,.mini-des .coracao,.amplia .coracao{fill:var(--dv-coracao,#e3a0a0);stroke:var(--dv-pulmao-borda,#c98282);stroke-width:1.2}
.desenho .diafragma,.mini-des .diafragma,.amplia .diafragma{fill:none;stroke:var(--dv-diafragma,#c98a78);stroke-width:7;stroke-linecap:round}
.desenho .cabelo,.mini-des .cabelo,.amplia .cabelo{fill:var(--dv-cabelo,#8c7a6b)}
.desenho .elastico,.mini-des .elastico,.amplia .elastico{fill:none;stroke:var(--dv-elastico,#8fa3ad);stroke-width:3;stroke-linecap:round}
.desenho .traco-rosto,.mini-des .traco-rosto,.amplia .traco-rosto{fill:none;stroke:var(--dv-traco-rosto,#a8735c);stroke-width:2.2;stroke-linecap:round}
.desenho .mini,.mini-des .mini,.amplia .mini{fill:var(--dv-tinta,#1f3b47);font:600 10px system-ui,-apple-system,'Segoe UI',Roboto,sans-serif}
.desenho .rot-l,.mini-des .rot-l,.amplia .rot-l{fill:none;stroke:var(--dv-rotulo-linha,#8aa1ab);stroke-width:1}
.desenho .rot-p,.mini-des .rot-p,.amplia .rot-p{fill:var(--dv-tinta,#1f3b47)}
.desenho .rot-t,.mini-des .rot-t,.amplia .rot-t{fill:var(--dv-tinta,#1f3b47);font:600 13px system-ui,-apple-system,'Segoe UI',Roboto,sans-serif}
.desenho .rot-s,.mini-des .rot-s,.amplia .rot-s{fill:var(--dv-tinta-2,#55707b);font:400 11.5px system-ui,-apple-system,'Segoe UI',Roboto,sans-serif}
.desenho .titulo,.mini-des .titulo,.amplia .titulo{fill:var(--dv-tinta,#1f3b47);font:700 15px system-ui,-apple-system,'Segoe UI',Roboto,sans-serif}
