/* Solumi · estilos do app (marca Água). Sempre tema claro. */
:root{
  --bg:#F3FBFC; --surface:#FFFFFF; --ink:#0E2629; --muted:#4F6366; --line:#DCEBEC; --field:#FFFFFF;
  --agua:#B8E8EC; --on-agua:#0E2629; --deep:#0F7480; --erro:#B42318; --erro-bg:#FDECEA; --ok:#0F7480; --ok-bg:#E3F5F2;
  --aviso:#8A5A00; --aviso-bg:#FFF4D6;
  --display:"Bricolage Grotesque","Segoe UI",system-ui,sans-serif;
  --body:"Instrument Sans","Segoe UI",system-ui,sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0;min-height:100%}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.5;-webkit-text-size-adjust:100%}
button,input,select,textarea{font:inherit;color:inherit}
a{color:var(--deep)}
:focus-visible{outline:2px solid var(--deep);outline-offset:2px}

.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line);background:var(--surface);position:sticky;top:0;z-index:20}
.logo{font-family:var(--display);font-weight:800;font-size:1.4rem;letter-spacing:-.03em;line-height:1;color:var(--ink);text-decoration:none}
.logo b{color:var(--deep)}
.top .acoes{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.wrap{max-width:1000px;margin:0 auto;padding:20px 16px 100px}
.estreito{max-width:440px;margin:0 auto;padding:40px 16px 80px}

.card{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:clamp(18px,3vw,26px);display:flex;flex-direction:column;gap:16px}
h1,h2,h3{font-family:var(--display);letter-spacing:-.02em;margin:0;line-height:1.1;text-wrap:balance}
h1{font-size:clamp(1.6rem,4vw,2.1rem);font-weight:800}
h2{font-size:1.25rem;font-weight:800}
.lead{margin:0;color:var(--muted)}
.muted{color:var(--muted)}
small{font-size:.82rem}

.field{display:flex;flex-direction:column;gap:6px;min-width:0}
.field label,.lbl{font-weight:600;font-size:.88rem}
.field small{color:var(--muted)}
input[type=text],input[type=email],input[type=password],input[type=date],input[type=search],input[type=tel],input[type=number],input[type=time],input[type=url],select,textarea{width:100%;min-width:0;border:1px solid var(--line);background:var(--field);border-radius:12px;padding:11px 12px;font-size:16px}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px color-mix(in srgb,var(--agua) 60%,transparent)}
.prefixo{display:flex;align-items:stretch;border:1px solid var(--line);border-radius:12px;background:var(--field);overflow:hidden}
.prefixo span{padding:11px 0 11px 12px;color:var(--muted);white-space:nowrap}
.prefixo input{border:0;border-radius:0;padding-left:2px;box-shadow:none!important}
.prefixo:focus-within{border-color:var(--ink);box-shadow:0 0 0 3px color-mix(in srgb,var(--agua) 60%,transparent)}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (max-width:560px){.grid2{grid-template-columns:minmax(0,1fr)}}

.btn{border:0;border-radius:12px;padding:12px 16px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;min-height:44px}
.btn.primario{background:var(--ink);color:var(--bg)}
.btn.agua{background:var(--agua);color:var(--on-agua)}
.btn.fantasma{background:transparent;border:1px solid var(--line);color:var(--ink)}
.btn.fantasma:hover{border-color:var(--ink)}
.btn.perigo{background:transparent;border:1px solid #F2C9C4;color:var(--erro)}
.btn.peq{padding:7px 11px;font-size:.85rem;border-radius:10px;min-height:36px}
.btn:disabled{opacity:.5;cursor:not-allowed}
.btn.largo{width:100%}

.aviso{border-radius:14px;padding:10px 12px;font-size:.9rem}
.aviso.erro{background:var(--erro-bg);color:var(--erro)}
.aviso.ok{background:var(--ok-bg);color:var(--ok)}
.aviso.atencao{background:var(--aviso-bg);color:var(--aviso)}

.passos{display:flex;gap:6px;flex-wrap:wrap}
.passos button{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--surface);border-radius:99px;padding:5px 12px 5px 5px;cursor:pointer;font-size:.86rem;font-weight:600;color:var(--muted)}
.passos button i{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:.78rem;background:var(--bg);border:1px solid var(--line)}
.passos button[aria-current="step"]{color:var(--ink);border-color:var(--ink)}
.passos button[aria-current="step"] i{background:var(--ink);color:var(--bg);border-color:var(--ink)}

.opcoes{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}
.opcao{border:1px solid var(--line);background:var(--field);border-radius:14px;padding:12px;cursor:pointer;text-align:left;font-weight:600;display:flex;flex-direction:column;gap:2px}
.opcao small{font-weight:500;color:var(--muted);font-size:.78rem}
.opcao[aria-pressed="true"]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:color-mix(in srgb,var(--agua) 22%,var(--field))}

.cores{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.cor{width:40px;height:40px;border-radius:50%;border:3px solid var(--surface);box-shadow:0 0 0 1px var(--line);cursor:pointer;padding:0}
.cor[aria-pressed="true"]{box-shadow:0 0 0 2px var(--ink)}
.cor-livre{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:99px;padding:3px 12px 3px 3px;background:var(--field);cursor:pointer;font-size:.85rem;font-weight:600}
.cor-livre input{width:34px;height:34px;border:0;border-radius:50%;padding:0;background:none;cursor:pointer}

.logo-linha{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.logo-caixa{width:92px;height:92px;border-radius:50%;border:2px dashed var(--line);display:grid;place-items:center;overflow:hidden;background:var(--field);flex:none;color:var(--muted);font-size:.78rem;text-align:center}
.logo-caixa img{width:100%;height:100%;object-fit:cover}

.servico{border:1px solid var(--line);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:10px;background:var(--field)}
.servico .linha{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:end}
.servico .nums{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
@media (max-width:560px){.servico .nums{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ico-btn{width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:var(--bg);display:grid;place-items:center;cursor:pointer;color:var(--deep)}
.ico-btn.remover{color:var(--erro);background:transparent}
.ico-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:6px}
.ico-grade button{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:8px 4px;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:.7rem;cursor:pointer;color:var(--ink)}
.ico-grade button[aria-pressed="true"]{border-color:var(--ink);background:color-mix(in srgb,var(--agua) 30%,var(--surface))}

.dia{display:grid;grid-template-columns:120px auto minmax(0,1fr);gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}
.dia:last-child{border-bottom:0}
.dia .horas{display:flex;gap:8px;align-items:center}
.dia .horas input{max-width:120px}
@media (max-width:560px){.dia{grid-template-columns:1fr auto}.dia .horas{grid-column:1/-1}}
.chave{position:relative;width:46px;height:28px;flex:none}
.chave input{appearance:none;width:46px;height:28px;border-radius:99px;background:var(--line);margin:0;cursor:pointer;transition:background .15s}
.chave input:checked{background:var(--deep)}
.chave input::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.chave input:checked::after{transform:translateX(18px)}

.nav{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}

.painel-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start}
@media (max-width:860px){.painel-grid{grid-template-columns:minmax(0,1fr)}}
.link-card{background:var(--ink);color:var(--bg);border-radius:20px;padding:20px;display:flex;flex-direction:column;gap:12px}
.link-card .url{font-family:var(--display);font-weight:800;font-size:1.15rem;word-break:break-all}
.link-card .btn.fantasma{border-color:#2F5A5D;color:var(--bg)}
.qr{background:#fff;border-radius:14px;padding:10px;width:150px;height:150px;display:grid;place-items:center}
.qr img,.qr canvas{width:130px!important;height:130px!important}

.agenda{display:flex;flex-direction:column;gap:8px}
.ag{border:1px solid var(--line);border-radius:14px;padding:12px;display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;align-items:center;background:var(--surface)}
.ag .hora{font-family:var(--display);font-weight:800;font-size:1.15rem}
.ag .hora small{display:block;font-family:var(--body);font-weight:500;color:var(--muted);font-size:.75rem}
.ag .quem{min-width:0}
.ag .quem b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ag .acoes{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
@media (max-width:560px){.ag{grid-template-columns:56px minmax(0,1fr)}.ag .acoes{grid-column:1/-1;justify-content:flex-start}}
.etq{display:inline-block;font-size:.72rem;font-weight:700;border-radius:99px;padding:2px 8px;background:var(--bg);color:var(--muted);border:1px solid var(--line)}
.etq.ok{background:var(--ok-bg);color:var(--ok);border-color:transparent}
.etq.pend{background:var(--aviso-bg);color:var(--aviso);border-color:transparent}
.etq.canc{background:var(--erro-bg);color:var(--erro);border-color:transparent}
.dia-titulo{font-weight:700;font-size:.85rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-top:8px}

.carregando{display:grid;place-items:center;min-height:60vh;color:var(--muted)}
.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:99px;font-size:.9rem;opacity:0;transition:opacity .2s;pointer-events:none;z-index:99;max-width:calc(100vw - 32px);text-align:center}
.toast.on{opacity:1}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

.modal-fundo{position:fixed;inset:0;background:rgba(14,38,41,.45);z-index:60;display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;overflow:auto}
.modal{background:var(--surface);border-radius:20px;padding:20px;width:100%;max-width:460px;display:flex;flex-direction:column;gap:16px;box-shadow:0 20px 50px -20px rgba(14,38,41,.5)}
.modal .servico span svg{vertical-align:-3px}

/* ---------- criação da loja (onboarding) ---------- */
.onb{max-width:620px;margin:0 auto;display:flex;flex-direction:column;gap:22px;padding-bottom:40px}
.onb-topo{position:sticky;top:64px;z-index:15;display:flex;align-items:center;gap:12px;padding:10px 0;background:color-mix(in srgb,var(--bg) 85%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.onb-voltar{appearance:none;border:0;background:var(--surface);border:1px solid var(--line);width:40px;height:40px;border-radius:12px;display:grid;place-items:center;cursor:pointer;color:var(--ink);flex:none;transition:transform .12s ease-out}
.onb-voltar:active{transform:scale(.94)}
.onb-voltar[hidden]{display:none}
.progresso{flex:1;height:8px;background:var(--line);border-radius:99px;overflow:hidden}
.progresso i{display:block;height:100%;width:0;background:var(--deep);border-radius:99px;transition:width .6s cubic-bezier(.2,.8,.2,1)}
.onb-corpo{display:flex;flex-direction:column;gap:20px;animation:entra .45s cubic-bezier(.2,.8,.2,1)}
.onb-corpo.volta{animation-name:entraVolta}
@keyframes entra{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}
@keyframes entraVolta{from{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:none}}
.onb h1{font-size:clamp(1.9rem,6vw,2.5rem);letter-spacing:-.03em;line-height:1.05}
.onb-g{font-family:var(--body);font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:6px 0 -6px}
.ramos{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
@media (max-width:420px){.ramos{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ramo{appearance:none;border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:14px 12px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;cursor:pointer;font:600 .95rem var(--body);color:var(--ink);text-align:left;transition:transform .12s ease-out,border-color .15s,background-color .15s;-webkit-tap-highlight-color:transparent;min-height:92px}
.ramo:hover{border-color:var(--ink)}
.ramo:active{transform:scale(.97)}
.ramo .ic{width:38px;height:38px;border-radius:11px;background:var(--bg);color:var(--deep);display:grid;place-items:center}
.ramo[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.ramo[aria-pressed="true"] .ic{background:var(--agua);color:var(--ink)}
.busca{position:relative}
.busca input{padding-left:42px!important}
.busca svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--muted)}
.vazio-busca{color:var(--muted);text-align:center;padding:20px}

/* prévia do celular */
.fone{width:min(300px,86vw);margin:0 auto;background:#0B1F21;border-radius:42px;padding:10px;box-shadow:0 40px 70px -36px rgba(14,38,41,.55)}
.fone-tela{background:#fff;border-radius:33px;overflow:hidden;min-height:470px;padding:14px 12px 16px;display:flex;flex-direction:column;gap:8px;color:#21161B;font-size:13px;position:relative}
.fone-tela::before{content:"";width:80px;height:22px;border-radius:14px;background:#0B1F21;align-self:center;margin-bottom:6px}
.pv-cab{background:color-mix(in srgb,var(--c) 9%,#fff);color:#21161B;border:2px solid var(--c);border-radius:22px;padding:18px 12px 16px;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;transition:background-color .35s,border-color .35s}
.pv-av{width:58px;height:58px;border-radius:50%;background:var(--c);color:var(--on);box-shadow:0 0 0 3px #fff,0 0 0 5px var(--c);display:grid;place-items:center;font-weight:700;font-size:1.2rem;overflow:hidden;margin-bottom:4px;transition:background-color .35s,color .35s}
.pv-av img{width:100%;height:100%;object-fit:cover}
.pv-cab b{font-size:1.05rem;line-height:1.2;word-break:break-word}
.pv-cab small{color:#6B5F65}
.fone-tela small{font-size:inherit}
.pv-tit{font-weight:700;margin:6px 2px 0}
.pv-svc{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid rgba(0,0,0,.08);border-radius:12px;padding:8px 10px}
.pv-svc .i{width:30px;height:30px;border-radius:9px;background:color-mix(in srgb,var(--c) 14%,#fff);color:var(--c);display:grid;place-items:center}
.pv-svc b{display:block;font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pv-svc small{color:#6E5C64;font-size:.7rem}
.pv-svc span:last-child{font-weight:700;font-size:.78rem}
.pv-btn{margin-top:auto;background:var(--c);color:var(--on);border-radius:12px;padding:10px;text-align:center;font-weight:700;transition:background-color .35s,color .35s}
.onb-rodape{display:flex;flex-direction:column;gap:10px;align-items:stretch;padding-top:8px}
.onb-link{text-align:center;color:var(--muted);font-size:.9rem;margin:0}
.onb-link b{color:var(--ink)}
.feito{align-items:center;text-align:center;padding-top:30px}
.feito .selo{width:84px;height:84px;border-radius:50%;background:var(--agua);color:var(--ink);display:grid;place-items:center;animation:selo .6s cubic-bezier(.3,1.6,.5,1)}
@keyframes selo{from{transform:scale(.4);opacity:0}to{transform:none;opacity:1}}

/* ---------- início da loja ---------- */
.loja-cab{display:flex;gap:14px;align-items:center}
.loja-av{width:60px;height:60px;border-radius:18px;background:var(--c,#B4235A);color:var(--on,#fff);display:grid;place-items:center;font-weight:800;font-size:1.3rem;overflow:hidden;flex:none}
.loja-av img{width:100%;height:100%;object-fit:cover}
.loja-cab h1{font-size:clamp(1.5rem,4.5vw,2rem)}
.check{display:flex;flex-direction:column;gap:8px}
.tarefa{appearance:none;width:100%;text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:14px;display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:12px;align-items:center;cursor:pointer;font:inherit;color:inherit;transition:transform .12s ease-out,border-color .15s}
.tarefa:hover{border-color:var(--ink)}
.tarefa:active{transform:scale(.985)}
.tarefa .marca{width:30px;height:30px;border-radius:50%;border:2px solid var(--line);display:grid;place-items:center;color:transparent}
.tarefa.ok .marca{background:var(--deep);border-color:var(--deep);color:#fff}
.tarefa.ok b{text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--ink) 35%,transparent);color:var(--muted)}
.tarefa small{display:block;color:var(--muted)}
.tarefa .seta{color:var(--muted)}
.tarefa[disabled]{cursor:not-allowed;opacity:.55}
.ajustes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
@media (max-width:520px){.ajustes{grid-template-columns:minmax(0,1fr)}}
.voltar-loja{appearance:none;border:0;background:none;color:var(--deep);font:600 .95rem var(--body);cursor:pointer;padding:6px 0;align-self:flex-start}
@media (prefers-reduced-motion:reduce){.onb-corpo,.feito .selo{animation:none}.progresso i{transition:none}}

/* início da loja: Mercado Pago, hoje e avisos */
.card.mp{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;background:linear-gradient(135deg,#E6F4FF,#F3FBFC);border-color:#CDE4F7}
.card.mp>.btn{grid-column:1/-1}
@media (min-width:640px){.card.mp{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.card.mp>.btn{grid-column:auto}}
.card.mp.ok{background:var(--ok-bg);border-color:transparent}
.mp-ic{width:64px;height:64px;border-radius:18px;background:#fff;display:grid;place-items:center;flex:none;box-shadow:0 1px 2px rgba(0,40,90,.08),0 6px 16px -10px rgba(0,60,120,.35)}
.mp-ic img{width:46px;height:auto;display:block}
.mp-ic.grande{width:104px;height:104px;border-radius:28px}
.mp-ic.grande img{width:76px}
.card.mp h2{font-size:1.15rem}
.card.mp .lead{font-size:.95rem}
.vazio-hoje{border:1px dashed var(--line);border-radius:14px;padding:16px;color:var(--muted);text-align:center;background:var(--surface)}
.modal-fundo.centro{align-items:center;animation:escurece .2s ease-out}
.modal-fundo.saindo{opacity:0;transition:opacity .18s}
.modal.surgindo{animation:surge .32s cubic-bezier(.2,.8,.2,1)}
@keyframes escurece{from{opacity:0}}
@keyframes surge{from{opacity:0;transform:translateY(14px) scale(.97)}}
.alerta-ic{width:60px;height:60px;border-radius:50%;background:var(--aviso-bg);color:var(--aviso);display:grid;place-items:center;margin:0 auto}
.lista-modal{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;color:var(--ink)}
@media (prefers-reduced-motion:reduce){.modal-fundo.centro,.modal.surgindo{animation:none}}

.faixa-teste{background:var(--aviso-bg);color:var(--aviso);display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 16px;font-size:.9rem;text-align:center}
.faixa-teste .btn{border-color:color-mix(in srgb,var(--aviso) 40%,transparent);color:var(--aviso)}

/* engrenagem e menu de configurações */
.btn-ic{appearance:none;width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink);display:grid;place-items:center;cursor:pointer;transition:transform .12s ease-out,border-color .15s}
.btn-ic:hover{border-color:var(--ink)}
.btn-ic:active{transform:scale(.94)}
.btn-ic[aria-expanded="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.btn-ic[aria-expanded="true"] svg{transform:rotate(60deg)}
.btn-ic svg{transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.btn-ic[hidden]{display:none}
.menu-ajustes{position:fixed;z-index:70;width:min(290px,calc(100vw - 24px));background:rgba(255,255,255,.97);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid var(--line);border-radius:18px;padding:6px;box-shadow:0 24px 50px -22px rgba(14,38,41,.45);transform-origin:top right;animation:menuAbre .22s cubic-bezier(.2,.8,.2,1)}
.menu-ajustes.saindo{opacity:0;transform:scale(.96);transition:opacity .15s,transform .15s}
.menu-tit{font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:10px 12px 6px}
.menu-ajustes button{appearance:none;width:100%;border:0;background:none;display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;font:600 .96rem var(--body);color:var(--ink);cursor:pointer;text-align:left}
.menu-ajustes button svg{color:var(--deep);flex:none}
.menu-ajustes button:hover,.menu-ajustes button:focus-visible{background:var(--bg);outline:none}
@keyframes menuAbre{from{opacity:0;transform:scale(.92)}}
@media (prefers-reduced-motion:reduce){.menu-ajustes{animation:none}.btn-ic svg{transition:none}}
@media (prefers-reduced-transparency:reduce){.menu-ajustes{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}}

.top .acoes{flex-wrap:nowrap}
.ic-conta{display:none}
@media (max-width:440px){.ic-conta{display:block}#quem{display:none}#btnConta{width:40px;padding:0}.top .acoes{gap:6px}}

/* profissionais */
.prof-foto{position:relative;width:56px;height:56px;border-radius:50%;background:var(--suave,#E7F5F6);color:var(--deep,#0F7480);display:grid;place-items:center;font-weight:700;overflow:hidden;cursor:pointer;flex:none;align-self:center;box-shadow:inset 0 0 0 1px var(--line);transition:transform .1s}
.prof-foto:active{transform:scale(.96)}
.prof-foto img{width:100%;height:100%;object-fit:cover}
.prof-foto em{position:absolute;inset:auto 0 0 0;font-style:normal;font-size:.62rem;font-weight:700;text-align:center;background:rgba(14,38,41,.62);color:#fff;padding:2px 0 3px}
.prof-foto.enviando{opacity:.5;pointer-events:none}
.chk{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.92rem;cursor:pointer}
.chk input{width:18px;height:18px;accent-color:var(--deep,#0F7480)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative;cursor:pointer}
.chip input{position:absolute;opacity:0;pointer-events:none}
.chip span{display:inline-flex;align-items:center;border:1px solid var(--line);background:#fff;border-radius:99px;padding:7px 13px;font-size:.88rem;font-weight:600;transition:background-color .15s,border-color .15s,color .15s,transform .1s}
.chip:active span{transform:scale(.96)}
.chip input:checked+span{background:var(--ink,#0E2629);color:#fff;border-color:var(--ink,#0E2629)}
.chip input:focus-visible+span{outline:2px solid var(--deep,#0F7480);outline-offset:2px}
.linha-chave{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:16px;padding:14px 16px;background:var(--field);cursor:pointer}
.linha-chave span:first-child{display:flex;flex-direction:column;gap:2px;min-width:0}
.linha-chave small{color:var(--muted);font-size:.88rem;line-height:1.4}
.lista-equipe{animation:surge .3s cubic-bezier(.2,.8,.2,1)}
@keyframes surge{from{opacity:0;transform:translateY(-6px)}}
@media (prefers-reduced-motion:reduce){.lista-equipe{animation:none}}
.escala{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--line);padding-top:10px}
.escala-dias{display:flex;flex-direction:column;gap:6px;animation:surge .25s cubic-bezier(.2,.8,.2,1)}
.dia-esc{display:grid;grid-template-columns:34px 48px minmax(0,1fr);align-items:center;gap:6px;min-height:44px}
.dia-esc .hrs{display:flex;align-items:center;gap:6px;min-width:0}
.dia-esc input[type=time]{min-width:0;flex:1;padding:8px 4px;font-size:.95rem;border:1px solid var(--line);border-radius:10px;font:inherit;background:#fff}
@media (prefers-reduced-motion:reduce){.escala-dias{animation:none}}
.selo-ok{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--deep);color:#fff;vertical-align:-3px;margin-left:4px}
.selo-ok svg{width:13px;height:13px}
.mp-acoes{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
@media (min-width:640px){.mp-acoes{grid-column:auto;flex-direction:column;align-items:stretch}}

/* pagamento do serviço */
.servico .nums{grid-template-columns:repeat(2,minmax(0,1fr))}
.pag{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--line);padding-top:10px}
.pag .lbl{font-weight:600;font-size:.92rem}
.seg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:3px;gap:3px}
.seg label{position:relative;cursor:pointer}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg span{display:flex;align-items:center;justify-content:center;text-align:center;min-height:40px;padding:6px 4px;border-radius:9px;font-size:.86rem;font-weight:600;color:var(--muted);transition:background-color .15s,color .15s,transform .1s;line-height:1.2}
.seg label:active span{transform:scale(.97)}
.seg input:checked+span{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px rgba(14,38,41,.14),0 0 0 1px var(--line)}
.seg input:focus-visible+span{outline:2px solid var(--deep);outline-offset:1px}
.sinal-caixa{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;animation:surge .25s cubic-bezier(.2,.8,.2,1)}
.sinal-caixa .field{flex:1 1 150px}
.atalhos{display:flex;gap:6px}
.chip-btn{border:1px solid var(--line);background:var(--surface);border-radius:99px;padding:9px 13px;font:inherit;font-weight:700;font-size:.85rem;cursor:pointer;color:var(--ink);transition:transform .1s,background-color .15s}
.chip-btn:active{transform:scale(.94);background:var(--agua)}
.pag-info{color:var(--muted);font-size:.86rem}
.pag-info.alerta{color:var(--erro)}
@media (prefers-reduced-motion:reduce){.sinal-caixa{animation:none}}
.modal-fundo.aceite{z-index:200}
.docs-aceite{display:flex;flex-direction:column;gap:8px}
.docs-aceite a{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:12px;padding:13px 14px;font-weight:600;color:var(--ink);text-decoration:none;background:var(--field);transition:transform .1s}
.docs-aceite a:active{transform:scale(.98)}
.aceite-chk{display:flex;gap:10px;align-items:flex-start;font-size:.95rem;cursor:pointer}
.aceite-chk input{width:20px;height:20px;margin-top:1px;accent-color:var(--deep);flex:none}

.disp{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--line);padding-top:10px}
.dia-esc.fechado{opacity:.55}
.dia-esc.fechado small{grid-column:3}
.dia-esc input[type=time]{text-align:center}
.dia-esc input[type=time]::-webkit-calendar-picker-indicator{display:none}
/* instalar o app */
.card.instalar-app{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center}
.card.instalar-app h2{font-size:1.1rem}
.card.instalar-app .lead{font-size:.95rem}
.card.instalar-app.saindo{opacity:0;transform:scale(.98);transition:opacity .2s,transform .2s}
.instalar-acoes{grid-column:1/-1;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
@media (min-width:640px){.card.instalar-app{grid-template-columns:auto minmax(0,1fr) auto}.instalar-acoes{grid-column:auto;flex-direction:column;align-items:stretch}}
.app-icone{width:56px;height:56px;border-radius:14px;overflow:hidden;box-shadow:0 6px 16px -8px rgba(14,38,41,.45),0 0 0 1px rgba(14,38,41,.08)}
.modal .app-icone{width:68px;height:68px;border-radius:17px;margin:0 auto}
.app-icone img{width:100%;height:100%;display:block}
.passos-instalar{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;counter-reset:p}
.passos-instalar li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;align-items:center;background:var(--bg);border-radius:14px;padding:10px 12px;counter-increment:p}
.passos-instalar li::before{content:counter(p);width:28px;height:28px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-weight:700;font-size:.9rem}
.passos-instalar .simb{display:inline-flex;vertical-align:middle;padding:2px 6px;border:1px solid var(--line);border-radius:8px;margin:0 2px}
