/* VETSMART — estilo. Mesma construção do Modo Treino (menu lateral escuro no computador, menu inferior no celular,
   papel claro, títulos condensados em caixa alta); cores da clínica tiradas do logo: azul (gato), vermelho (cruz) e verde (cachorro). Fontes OFL embutidas. */
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/barlow-condensed-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/barlow-condensed-latin-700-normal.woff2') format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:800;font-display:swap;src:url('assets/fonts/barlow-condensed-latin-800-normal.woff2') format('woff2')}
@font-face{font-family:'Caveat';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/caveat-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'Caveat';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/caveat-latin-700-normal.woff2') format('woff2')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:100 1000;font-display:swap;src:url('assets/fonts/dm-sans-latin-wght-normal.woff2') format('woff2')}

:root{
  --ink:#1c2f5a;--deep:#1f4f93;--navy:#2b62b0;--night:#245199;--paper:#fff6ea;--white:#fffdf8;--line:#eadfca;
  --teal:#2b62b0;--mint:#dce8f8;--mint2:#eef4fc;--muted:#5d6475;
  --azul:#2b62b0;--vermelho:#e1282f;--verde:#1f7a3d;--violeta:#6d5bd0;--mao:'Caveat','Segoe Print','Comic Sans MS',cursive;
  --acento:#1f7a3d;--acento-claro:#d6f0de;
  --red:#991b1b;--red-bg:#fee2e2;--red-soft:#fff1f2;--amber:#92400e;--amber-bg:#fef3c7;--amber-soft:#fffbeb;--green:#15803d;--green-bg:#dcfce7;--slate:#475569;--slate-bg:#f1f5f9;
  --title:'Barlow Condensed',Impact,sans-serif;--body:'DM Sans',system-ui,sans-serif;--shadow:0 15px 38px rgba(28,47,90,.09);--radius:14px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.45}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid var(--teal);outline-offset:2px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ---------- esqueleto ---------- */
.app-layout{display:grid;grid-template-columns:260px 1fr;min-height:100vh}
.workspace{display:flex;flex-direction:column;min-width:0}
.main-content{flex:1;padding:26px clamp(18px,4.8vw,76px) 60px;outline:none;max-width:1180px;width:100%}
.site-footer{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:18px clamp(18px,4.8vw,76px);border-top:1px solid var(--line);font-size:11px;color:var(--muted);font-weight:700;letter-spacing:.5px}
.topbar{min-height:84px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:16px clamp(18px,4.8vw,76px);gap:14px}
.topbar-title{font-family:var(--title);font-size:30px;line-height:1;letter-spacing:.4px;text-transform:uppercase;font-weight:800}
.topbar-sub{font-size:12px;color:var(--muted);margin-top:4px}
.topbar-actions{display:flex;gap:10px;align-items:center}

/* ---------- menu lateral (computador) ---------- */
.rail{background:var(--navy);color:#fff;padding:28px 18px 22px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;overflow:auto}
.brand{display:flex;align-items:center;gap:12px;padding:0 10px 26px}
.brand img{width:42px;height:42px;border-radius:12px}
.brand b{font-family:var(--title);font-size:25px;letter-spacing:.6px;text-transform:uppercase;line-height:1;display:block;font-weight:800}
.brand small{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#cfe0f7;font-weight:800}
.rail-label{font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:#b8cdf0;padding:4px 14px;margin-bottom:10px}
.rail-nav{display:flex;flex-direction:column;gap:5px}
.rail-nav button{border:0;background:transparent;color:#e8f0fc;text-align:left;width:100%;padding:13px 14px;display:flex;align-items:center;gap:13px;border-radius:12px;font-size:14px;font-weight:700;transition:background .18s,color .18s,transform .18s}
.rail-nav button:hover{background:var(--night);color:#fff;transform:translateX(3px)}
.rail-nav button.active{background:var(--mint);color:var(--deep)}
.rail-nav .badge{margin-left:auto;background:#f87171;color:#fff;border-radius:99px;font-size:11px;padding:1px 8px;font-weight:800}
.rail-foot{margin-top:auto;padding:16px 14px 0;font-size:11px;color:#cfe0f7;line-height:1.5}
.ico{width:20px;height:20px;flex:none;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* ---------- menu inferior (celular) ---------- */
.bottomnav{display:none}
@media (max-width:900px){
  .app-layout{grid-template-columns:1fr}
  .rail{display:none}
  .main-content{padding:18px 16px 110px}
  .topbar{min-height:70px;padding:12px 16px}
  .topbar-title{font-size:26px}
  .site-footer{padding-bottom:96px}
  .bottomnav{height:66px;display:flex;position:fixed;bottom:0;left:0;right:0;padding-bottom:env(safe-area-inset-bottom);box-sizing:content-box;background:var(--navy);z-index:45;align-items:center;justify-content:space-evenly;box-shadow:0 -5px 26px rgba(11,59,56,.18)}
  .bottomnav button{border:0;background:transparent;color:#d3e2f8;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;flex:1 1 0;min-width:0;font-size:10px;font-weight:800;position:relative;padding:6px 2px}
  .bottomnav button.active{color:#fff;text-shadow:0 0 0 #fff}
  .bottomnav .badge{position:absolute;top:0;right:6px;background:#f87171;color:#fff;border-radius:99px;font-size:10px;padding:0 6px;font-weight:800}
}

/* ---------- peças ---------- */
h2.sec{font-family:var(--title);font-size:24px;text-transform:uppercase;letter-spacing:.4px;margin:26px 0 12px;font-weight:700;line-height:1.1}
.btn{border:0;background:var(--teal);color:#fff;font-weight:800;border-radius:12px;padding:12px 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:14px;min-height:44px;transition:transform .15s,filter .15s}
.btn:hover{filter:brightness(1.08);transform:translateY(-1px)}
.btn.sec{background:#fff;color:var(--deep);border:1.5px solid var(--line)}
.btn.sec:hover{border-color:var(--teal)}
.btn.perigo{background:var(--red)}
.btn.block{width:100%}
.btn[disabled]{opacity:.55;pointer-events:none}
.chip{border:1.5px solid var(--line);background:#fff;border-radius:99px;padding:8px 14px;font-weight:700;font-size:13px;min-height:38px}
.chip.on{background:var(--deep);border-color:var(--deep);color:#fff}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.pad{padding:18px}
.muted{color:var(--muted)}
.vazio{padding:34px 18px;text-align:center;color:var(--muted)}
.vazio b{display:block;font-family:var(--title);font-size:22px;text-transform:uppercase;color:var(--teal);margin-bottom:4px}

/* ---------- avisos ---------- */
.aviso{border-radius:12px;padding:12px 16px;font-size:13px;font-weight:700;margin:0 0 14px;display:flex;gap:10px;align-items:flex-start}
.aviso.amarelo{background:var(--amber-soft);color:var(--amber);border:1px solid #fde68a}
.aviso.vermelho{background:var(--red-soft);color:var(--red);border:1px solid #fecaca}
.aviso.verde{background:var(--green-bg);color:var(--green)}
.aviso.neutro{background:var(--slate-bg);color:var(--slate)}
.aviso button{margin-left:auto;border:0;background:transparent;color:inherit;font-weight:800;text-decoration:underline;padding:0}

/* ---------- Painel ---------- */
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.num-card{border-radius:var(--radius);padding:16px 18px 14px;border-top:5px solid;text-align:center;min-height:132px;display:flex;flex-direction:column;justify-content:center;gap:2px;width:100%;border-left:0;border-right:0;border-bottom:0;transition:transform .15s}
.num-card:hover{transform:translateY(-2px)}
.num-card .t{font-size:11px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase}
.num-card .n{font-family:var(--title);font-size:56px;font-weight:800;line-height:1}
.num-card .s{font-size:12px;color:var(--muted)}
.num-card.faltando{background:var(--red-bg);border-color:var(--red);color:var(--red)}
.num-card.vencidos{background:var(--red-soft);border-color:var(--red);color:var(--red)}
.num-card.logo{background:var(--amber-soft);border-color:#d97706;color:var(--amber)}
.num-card.contar{background:var(--slate-bg);border-color:var(--slate);color:var(--slate)}
.resumo{text-align:center;font-size:13px;color:var(--slate);margin:16px 0 14px}
@media (max-width:900px){.cards{grid-template-columns:repeat(2,1fr);gap:10px}.num-card{min-height:112px}.num-card .n{font-size:46px}}

/* ---------- listas de produtos ---------- */
.lista{display:flex;flex-direction:column}
.item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;align-items:center;padding:13px 16px;border-top:1px solid var(--line);background:transparent;width:100%;text-align:left;border-left:0;border-right:0;border-bottom:0;transition:background .15s}
.item:first-child{border-top:0}
button.item:hover{background:var(--mint2)}
.item .nome{font-weight:800;font-size:15px;overflow-wrap:anywhere}
.item .meta{font-size:12.5px;color:var(--muted);display:flex;gap:6px 14px;flex-wrap:wrap;margin-top:2px}
.item .lado{display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.sit{font-size:10.5px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;border-radius:7px;padding:4px 9px;white-space:nowrap}
.sit.perigo{background:var(--red-bg);color:var(--red)}
.sit.alerta{background:var(--amber-bg);color:var(--amber)}
.sit.ok{background:var(--green-bg);color:var(--green)}
.sit.neutro{background:var(--slate-bg);color:var(--slate)}
.tem{font-family:var(--title);font-size:26px;font-weight:700;line-height:1}
.tem small{font-family:var(--body);font-size:11px;color:var(--muted);font-weight:600;margin-left:3px}
.feito{color:var(--green);font-weight:800;font-size:12px}

/* ---------- busca e progresso ---------- */
.busca{position:relative;margin-bottom:12px}
.busca input{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:13px 14px 13px 42px;font-size:16px;background:#fff;min-height:48px}
.busca .ico{position:absolute;left:13px;top:14px;color:var(--muted)}
.progresso{height:10px;background:var(--line);border-radius:99px;overflow:hidden;margin:8px 0 4px}
.progresso i{display:block;height:100%;background:var(--teal);border-radius:99px;transition:width .3s}

/* ---------- formulários e janela ---------- */
#modal:not(:empty){position:fixed;inset:0;background:rgba(28,47,90,.55);z-index:80;display:flex;align-items:flex-end;justify-content:center;padding:0}
@media (min-width:700px){#modal:not(:empty){align-items:center;padding:24px}}
.janela{background:var(--white);width:100%;max-width:520px;border-radius:22px 22px 0 0;padding:22px 20px calc(22px + env(safe-area-inset-bottom));max-height:92vh;overflow:auto;box-shadow:0 -10px 50px rgba(0,0,0,.25)}
@media (min-width:700px){.janela{border-radius:22px}}
.janela h3{font-family:var(--title);font-size:26px;text-transform:uppercase;margin:0 0 2px;line-height:1.1;font-weight:800}
.janela .sub{font-size:13px;color:var(--muted);margin:0 0 16px}
.campo{margin-bottom:14px}
.campo label{display:block;font-size:12px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;margin-bottom:6px;color:var(--slate)}
.campo input:not([type=radio]),.campo select{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;font-size:16px;background:#fff;min-height:48px}
.campo input.grande{font-family:var(--title);font-size:34px;font-weight:700;text-align:center;min-height:62px}
.campo .dica{font-size:12px;color:var(--muted);margin-top:5px}
.campo .erro{font-size:12.5px;color:var(--red);font-weight:700;margin-top:5px}
.campo.invalido input,.campo.invalido select{border-color:var(--red)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.acoes{display:flex;gap:10px;margin-top:18px}
.acoes .btn{flex:1}
.antes{background:var(--slate-bg);border-radius:12px;padding:10px 14px;font-size:13px;color:var(--slate);margin-bottom:16px}

/* ---------- texto pronto (compras / vencidos) ---------- */
.texto{white-space:pre-wrap;font-family:var(--body);font-size:14px;line-height:1.6;background:#fff;border:1.5px dashed var(--line);border-radius:12px;padding:16px;margin:0 0 14px;overflow-wrap:anywhere}
.seg{display:inline-flex;background:#e9e6de;border-radius:12px;padding:4px;margin-bottom:16px}
.seg button{border:0;background:transparent;padding:9px 18px;border-radius:9px;font-weight:800;font-size:13px}
.seg button.on{background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.08);color:var(--deep)}

/* ---------- ajustes ---------- */
.painel-aj{max-width:620px}
.painel-aj .campo{margin-bottom:16px}
.status-fila{font-size:13px}

/* ---------- aviso rápido ---------- */
#toast{position:fixed;left:50%;bottom:90px;transform:translate(-50%,20px);background:var(--deep);color:#fff;padding:12px 20px;border-radius:12px;font-weight:700;font-size:14px;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;z-index:99;max-width:min(92vw,420px);text-align:center}
#toast.on{opacity:1;transform:translate(-50%,0)}
@media (min-width:901px){#toast{bottom:30px}}

@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
@media (max-width:900px){.so-pc{display:none}}

a.btn{text-decoration:none}
.campo label.opcao,.opcao{display:flex;gap:12px;align-items:flex-start;border:1.5px solid var(--line);background:#fff;border-radius:14px;padding:12px 14px;flex:1;min-width:220px;cursor:pointer;text-transform:none;letter-spacing:0;font-size:14px;color:var(--ink)!important;margin:0!important}
.campo label.opcao.on,.opcao.on{border-color:var(--teal);background:var(--mint2);box-shadow:inset 0 0 0 1px var(--teal)}
.opcao input{width:20px;height:20px;margin:2px 0 0;flex:none;accent-color:var(--teal);min-height:0}
.opcao b{font-size:14px}
.opcao span span{font-weight:500;font-size:12.5px;color:var(--muted);display:block;margin-top:2px}
.grid2{align-items:end}

.foto-box{margin-bottom:14px}
.foto-btn{display:inline-flex;align-items:center;gap:8px;cursor:pointer}
.foto-box input.sr:focus-visible+#x,.foto-box:focus-within .foto-btn{outline:3px solid var(--teal);outline-offset:2px}
.foto-box .aviso{margin:10px 0 0}

/* ---------- atendimento: tabela de preços e orçamento ---------- */
.atend{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start}
.orc{position:sticky;top:18px}
h3.cat{font-family:var(--title);font-size:20px;text-transform:uppercase;letter-spacing:.6px;margin:18px 0 8px;color:var(--teal);font-weight:700}
h3.cat:first-child{margin-top:0}
.item.preco{cursor:default;transition:background .15s}
.item.preco.sel{background:var(--mint2);box-shadow:inset 4px 0 0 var(--teal)}
.item.preco .valor{font-family:var(--title);font-size:24px;font-weight:700;color:var(--ink);line-height:1}
.item.preco .meta{align-items:center}
.ajustado{font-size:10.5px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;background:var(--amber-bg);color:var(--amber);border-radius:7px;padding:3px 8px}
.lapis{border:0;background:transparent;color:var(--muted);width:40px;height:40px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;padding:0}
.lapis:hover{background:var(--slate-bg);color:var(--deep)}
.lapis .ico{width:16px;height:16px}
.passo{display:flex;align-items:center;gap:6px}
.passo button{width:44px;height:44px;border-radius:12px;border:1.5px solid var(--line);background:#fff;color:var(--deep);display:inline-flex;align-items:center;justify-content:center;padding:0}
.passo button.mais{background:var(--teal);border-color:var(--teal);color:#fff}
.passo button:hover{filter:brightness(.97);border-color:var(--teal)}
.passo b{font-family:var(--title);font-size:26px;min-width:28px;text-align:center;line-height:1}
.orc-itens{list-style:none;margin:0 0 14px;padding:0;border-top:1px solid var(--line)}
.orc-itens li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}
.orc-itens b{white-space:nowrap}
.orc-vazio{font-size:13px;margin:0 0 14px;padding:14px;border:1.5px dashed var(--line);border-radius:12px;text-align:center}
.desc-linha{display:flex;gap:10px;align-items:center}
.desc-linha input{flex:1;min-width:0}
.desc-linha .seg{margin:0;flex:none}
.desc-linha .seg button{min-width:44px;padding:9px 12px}
.orc-sub{display:flex;justify-content:space-between;font-size:13px;color:var(--slate);padding:2px 0}
.orc-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:8px;padding-top:12px;border-top:2px solid var(--ink)}
.orc-total span{font-size:12px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase}
.orc-total b{font-family:var(--title);font-size:46px;line-height:1;font-weight:800;color:var(--deep)}
.barra-orc{display:none}
@media (max-width:900px){
  .atend{grid-template-columns:1fr;gap:6px}
  .orc{position:static;margin-top:22px}
  .barra-orc{display:flex;align-items:center;justify-content:space-between;gap:12px;position:fixed;left:12px;right:12px;bottom:calc(78px + env(safe-area-inset-bottom));z-index:44;background:var(--deep);color:#fff;border:0;border-radius:14px;padding:12px 18px;font-weight:700;font-size:13px;box-shadow:0 8px 26px rgba(11,59,56,.35);width:calc(100% - 24px)}
  .barra-orc b{font-family:var(--title);font-size:26px;line-height:1}
  .barra-orc span:last-child{color:#cfe0f7}
  #toast{bottom:150px}
}

/* ---------- uma cor por tela ---------- */
body[data-view="atendimento"]{--acento:#2b62b0;--acento-claro:#dce8f8}
body[data-view="quadro"]{--acento:#e1282f;--acento-claro:#ffe0e0}
body[data-view="ajustes"]{--acento:#5d6475;--acento-claro:#e7e9eb}
.topbar{border-bottom:4px solid var(--acento)}
.btn{background:var(--acento)}
.btn.sec{background:#fff}
.rail-nav button.active{background:#fff;color:var(--deep)}
.progresso i{background:var(--acento)}

/* ---------- quadro de tarefas: cortiça, folha pautada, post-its por importância ---------- */
.sync-linha{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;color:var(--green);margin:0 0 12px}
.sync-linha i{width:9px;height:9px;border-radius:50%;background:var(--green);display:block}
.novidades{background:#eef4fc;border:2px solid var(--azul);border-radius:14px;padding:12px 16px;margin:0 0 14px}
.novidades .nov-topo{display:flex;justify-content:space-between;gap:10px;align-items:center}
.novidades button{border:0;background:transparent;color:var(--azul);font-weight:800;text-decoration:underline}
.novidades ul{margin:8px 0 0;padding-left:18px;display:grid;gap:3px;font-size:13.5px}
.novidades small,.novidades p{color:var(--muted);font-size:12px}
.legenda{display:flex;gap:14px;flex-wrap:wrap;align-items:center;font-size:13px;font-weight:700;margin:0 0 12px}
.legenda span{display:inline-flex;align-items:center;gap:6px}
.legenda i{width:14px;height:14px;border-radius:50%;border:2px solid var(--ink);display:block;background:var(--pin)}
.pr-urgente{--nc:#ffd5d5;--pin:#e1282f}.pr-alta{--nc:#ffecb0;--pin:#d98e04}.pr-normal{--nc:#d8e6fa;--pin:#2b62b0}.pr-baixa{--nc:#d6f0de;--pin:#1f7a3d}
.cortica{background-color:#d8b07a;background-image:radial-gradient(#bd9260 1.3px,transparent 1.8px),radial-gradient(#e6c596 1px,transparent 1.5px);background-size:16px 16px,25px 25px;background-position:0 0,9px 11px;border:6px solid #8a6a4a;border-radius:16px;box-shadow:inset 0 0 20px rgba(60,40,10,.35);padding:clamp(10px,2.4cqi,18px);display:grid;gap:clamp(14px,2.4cqi,20px);container-type:inline-size}
.etiquetas{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:8px 12px;background:rgba(255,255,255,.38);border:2px dashed rgba(60,40,10,.4);border-radius:14px}
.etiquetas .rot{font-family:var(--mao);font-size:20px;font-weight:700;color:#4a3a22}
.etiquetas .q-sem{font-size:13px;color:#4a3a22}
.pessoa{touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab;font-family:var(--mao);font-weight:700;font-size:19px;line-height:1;color:#1c2f5a;background:#fff;border:0;border-left:9px solid var(--azul);padding:5px 11px 6px;border-radius:4px;box-shadow:1px 3px 5px rgba(0,0,0,.3);transform:rotate(-2deg)}
.etiquetas>.pessoa:nth-child(3){transform:rotate(1.5deg);border-left-color:var(--vermelho)}
.etiquetas>.pessoa:nth-child(4){transform:rotate(-1deg);border-left-color:var(--verde)}
.etiquetas>.pessoa:nth-child(5){transform:rotate(2deg);border-left-color:#ffc93c}
.etiquetas>.pessoa:nth-child(6){transform:rotate(-1.5deg);border-left-color:var(--violeta)}
.pessoa.sel{background:#fff6b8;transform:rotate(0) scale(1.1)!important;box-shadow:2px 6px 9px rgba(0,0,0,.38)}
.fantasma{position:fixed;z-index:120;pointer-events:none;transform:translate(-50%,-130%) rotate(-5deg);background:#fff;color:#1c2f5a;font-family:var(--mao);font-weight:700;font-size:25px;line-height:1;border-left:11px solid var(--azul);border-radius:4px;padding:6px 15px 7px;box-shadow:3px 8px 12px rgba(0,0,0,.4)}
.q-cols{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start}
@container (min-width:640px){.q-cols{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
.folha{position:relative;background:#fffefc;background-image:linear-gradient(90deg,transparent 26px,#f0a5a0 26px,#f0a5a0 28px,transparent 28px),repeating-linear-gradient(180deg,transparent 0 23px,#d6e2ea 23px 24px);border-radius:3px;padding:26px 12px 16px 36px;min-height:150px;box-shadow:2px 5px 9px rgba(0,0,0,.33);display:grid;gap:14px;align-content:start;transform:rotate(-.5deg)}
.folha:nth-child(2){transform:rotate(.4deg)}.folha:nth-child(3){transform:rotate(-.3deg)}
.folha::before{content:"";position:absolute;top:-12px;left:50%;width:90px;height:24px;transform:translateX(-50%) rotate(-3deg);background:repeating-linear-gradient(45deg,var(--fita) 0 8px,rgba(255,255,255,.62) 8px 16px);box-shadow:0 1px 2px rgba(0,0,0,.25)}
.folha[data-col=aberta]{--fita:rgba(225,40,47,.88);--traco:#e1282f}
.folha[data-col=assumida]{--fita:rgba(43,98,176,.88);--traco:#2b62b0}
.folha[data-col=feita]{--fita:rgba(31,122,61,.88);--traco:#1f7a3d}
.folha h4{position:relative;font-family:var(--mao);font-size:26px;font-weight:700;text-transform:none;letter-spacing:0;display:flex;align-items:baseline;gap:8px;color:#1c2f5a;line-height:1;padding-bottom:7px;margin:0}
.folha h4::after{content:"";position:absolute;left:-2px;right:34%;bottom:0;height:5px;border-radius:6px;background:var(--traco);transform:rotate(-1.2deg);opacity:.9}
.folha h4 span{font-family:var(--mao);font-size:19px;color:var(--traco)}
.folha .vazia{font-family:var(--mao);font-size:19px;color:#9a9a9a;padding:0}
.nota{position:relative;background:var(--nc,#d8e6fa);color:#2b2b2b;padding:16px 11px 11px;display:grid;gap:6px;box-shadow:1px 4px 7px rgba(0,0,0,.32);transform:rotate(var(--rn,-1.5deg));transition:transform .15s;border-radius:2px 2px 16px 2px}
.nota::before{content:"";position:absolute;top:-8px;left:50%;width:16px;height:16px;margin-left:-8px;border-radius:50%;background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.75),var(--pin,#2b62b0) 62%);box-shadow:1px 3px 3px rgba(0,0,0,.4)}
.nota .n-titulo{font-family:var(--mao);font-size:21px;line-height:1.08;font-weight:700;overflow-wrap:anywhere}
.nota .l{display:flex;gap:7px;flex-wrap:wrap;align-items:center}
.topo-n{display:flex;justify-content:space-between;align-items:center;gap:6px;min-height:18px;padding-right:24px}
.prio{font-family:var(--mao);font-size:16px;font-weight:700;display:inline-flex;align-items:center;gap:6px;color:#1c2f5a}
.prio i{width:10px;height:10px;border-radius:50%;background:var(--pin);display:block;border:2px solid #1c2f5a}
.prazo{font-family:var(--mao);font-size:15px;font-weight:700;color:#4a4a4a}
.nota.atrasada{outline:3px solid #e1282f;outline-offset:1px}
.nota.atrasada .prazo{color:#c0151b}
.nota.alvo{transform:rotate(0) scale(1.05);outline:3px dashed #1c2f5a;outline-offset:3px;z-index:2}
.nota .tag{font-family:var(--mao);font-size:15px;border-bottom:2px solid rgba(0,0,0,.35);padding:0 2px;font-weight:700}
.resp{font-family:var(--mao);font-size:17px;font-weight:700;line-height:1.1;background:#fff;color:#1c2f5a;border-left:7px solid var(--azul);border-radius:3px;padding:0 8px 1px;box-shadow:1px 2px 3px rgba(0,0,0,.3);transform:rotate(1.5deg)}
.nota .dica{font-family:var(--mao);font-size:15px;color:#4a4a4a}
.nota.fazendo{box-shadow:0 0 0 3px rgba(43,98,176,.55),1px 6px 10px rgba(0,0,0,.34)}
.fazendo-tag{font-family:var(--mao);font-size:15px;font-weight:700;color:#2b62b0;display:inline-flex;align-items:center;gap:7px}
.fazendo-tag i{width:10px;height:10px;border-radius:50%;background:#2b62b0;display:block;animation:pulsa 1.6s ease-in-out infinite}
@keyframes pulsa{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}
.subs{display:grid;gap:4px}
.sub-i{display:flex;align-items:center;gap:7px;font-family:var(--mao);font-size:17px;font-weight:700;background:none;border:0;padding:0;cursor:pointer;text-align:left;color:#1c2f5a}
.sub-i[disabled]{cursor:default}
.sub-i .cx{width:15px;height:15px;border:2px solid #1c2f5a;border-radius:4px;background:#fff;display:grid;place-items:center;flex:none}
.sub-i.ok .cx{background:#1f7a3d;border-color:#1f7a3d}
.sub-i.ok .cx::after{content:"";width:5px;height:9px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg) translate(-1px,-1px)}
.sub-i.ok span.t{opacity:.55}
.prog{font-family:var(--mao);font-size:15px;color:#4a4a4a}
.nota.feita{--nc:#e4f1e7;--pin:#1f7a3d}
.nota.feita .n-titulo{color:#47604f}
.okb{position:absolute;right:8px;top:8px;width:22px;height:22px}
.sai{display:grid;gap:3px;font-family:var(--mao);font-size:15px;color:#4a4a4a}
.sai div{height:5px;border-radius:7px;background:rgba(0,0,0,.14);overflow:hidden}
.sai i{display:block;height:100%;background:#1f7a3d;border-radius:7px}
.mini2{font:inherit;font-weight:800;font-size:12.5px;border:2px solid #1c2f5a;border-radius:9px;padding:2px 10px;background:#fff;color:#1c2f5a;cursor:pointer;min-height:30px}
.mini2.ok{background:#1f7a3d;border-color:#1f7a3d;color:#fff}
.q-acoes{flex-wrap:wrap;max-width:none}
.q-acoes .btn{flex:0 0 auto}
details.hist{border:1.5px solid var(--line);border-radius:14px;background:var(--white);margin-top:14px}
details.hist>summary{cursor:pointer;list-style:none;padding:11px 14px;font-weight:800;display:flex;justify-content:space-between;gap:10px}
details.hist>summary::-webkit-details-marker{display:none}
.hist-l{padding:0 14px 12px;display:grid;gap:6px;font-size:13.5px}
.hist-l div{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:6px}
.campo textarea{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;font-size:16px;background:#fff;resize:vertical}
.campo-linha{display:flex;gap:10px}.campo-linha input{flex:1;border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;font-size:16px;background:#fff;min-width:0}
.lista-eq{display:grid;gap:8px;margin-top:14px}.lista-eq>div{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1.5px solid var(--line);border-radius:12px;padding:8px 12px}
@media (max-width:860px){.topbar{border-bottom-width:3px}}
@media (prefers-reduced-motion:reduce){.fazendo-tag i{animation:none}}

/* ---------- v0.5: listas em cartões, tabela de preços em grade, imagem para WhatsApp ---------- */
.acoes-q{flex-wrap:wrap}.acoes-q>.btn{flex:1 1 150px}
.li-resumo{margin:0 0 12px;color:var(--muted);font-size:14px}.li-resumo b{font-family:var(--title);font-size:26px;color:var(--ink);margin-right:4px}
.li-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:12px}
.li-card{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--white);border:2.5px solid var(--ink);border-left-width:9px;border-left-color:var(--verde);border-radius:12px;padding:11px 13px;box-shadow:3px 4px 0 rgba(28,47,90,.85)}
.li-card.acabou{border-left-color:var(--vermelho)}.li-card.vencido{border-left-color:var(--vermelho)}
.li-nome{min-width:0;display:grid;gap:2px}.li-nome b{font-size:15px;line-height:1.2;overflow-wrap:anywhere}.li-nome span{font-size:12.5px;color:var(--muted)}
.li-qtd{display:grid;justify-items:end;gap:1px;flex:none;text-align:right}.li-qtd b{font-family:var(--title);font-size:30px;line-height:1;color:var(--ink)}.li-qtd small{font-size:12px;color:var(--muted)}.li-qtd em{font-style:normal;font-size:12.5px;color:var(--muted)}
.chip-acabou{font-style:normal;font-size:10.5px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;background:#fde1e1;color:#a4151b;border-radius:7px;padding:2px 7px;margin-top:3px}
.txt-det{margin-top:14px}.txt-det>summary{cursor:pointer;font-weight:700;font-size:13px;color:var(--azul);padding:6px 0}.txt-det .texto{margin-top:8px}
.atend-lista{container-type:inline-size}
.preco-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));gap:10px}
.pcard{display:flex;flex-direction:column;justify-content:space-between;gap:8px;background:var(--white);border:2px solid var(--line);border-radius:14px;padding:11px 12px;transition:border-color .15s,background .15s}
.pcard.sel{border-color:var(--azul);background:#eef4fd;box-shadow:inset 0 0 0 1px var(--azul)}
.p-info{display:grid;gap:2px;min-width:0}.pcard .nome{font-weight:800;font-size:clamp(13.5px,3.6cqi,15.5px);line-height:1.2;overflow-wrap:anywhere}
.p-meta{display:flex;align-items:center;flex-wrap:wrap;gap:2px 8px}
.pcard .valor{font-family:var(--title);font-size:clamp(22px,5.4cqi,26px);font-weight:700;color:var(--ink);line-height:1.1}
.pcard .lapis{width:44px;height:44px;margin-left:auto}
.pcard .passo{justify-content:flex-end}.pcard .passo button{width:44px;height:44px}
.prev-img{display:block;width:100%;height:auto;max-height:55vh;object-fit:contain;border:2px solid var(--line);border-radius:12px;background:var(--paper)}
.orc{container-type:inline-size}
.orc-total b{font-size:clamp(32px,12cqi,46px)}
.orc-itens li{overflow-wrap:anywhere}
.topbar-title{font-size:clamp(24px,5.5vw,30px)}
.num-card .n{font-size:clamp(34px,8vw,48px)}
@media (max-width:420px){.janela h3{font-size:23px}.li-qtd b{font-size:26px}}
.pcard{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between}
.pcard .p-info{flex:1 1 110px}
.pcard .passo{margin-left:auto}
.q-abas{display:none;margin:0;width:100%;display:none}
.q-abas button{flex:1;display:inline-flex;gap:6px;justify-content:center;align-items:center;padding:9px 6px}
.q-abas b{font-family:var(--title);font-size:17px;background:var(--azul);color:#fff;border-radius:8px;padding:0 7px;line-height:1.35}
@container (max-width:639px){
  .q-abas{display:flex}
  .q-cols .folha{display:none}
  .q-cols[data-aba=aberta] .folha[data-col=aberta],.q-cols[data-aba=assumida] .folha[data-col=assumida],.q-cols[data-aba=feita] .folha[data-col=feita]{display:grid}
  .folha h4{display:none}
  .folha{padding-top:22px}
}

/* ---------- v0.5.1: Quadro com acabamento (textos pequenos em fonte de leitura; letra de mão só nos títulos) ---------- */
.cortica{border:7px solid #7b5a3a;border-radius:18px;box-shadow:inset 0 0 55px rgba(60,40,10,.5),0 10px 24px rgba(60,40,10,.28),0 0 0 2px #a98258;
  background-image:radial-gradient(rgba(110,78,40,.35) 1.2px,transparent 1.7px),radial-gradient(rgba(255,240,205,.5) 1px,transparent 1.5px),radial-gradient(rgba(150,105,60,.22) 2.4px,transparent 3px);background-size:15px 15px,23px 23px,37px 37px;background-position:0 0,8px 10px,17px 5px}
.folha,.folha:nth-child(2),.folha:nth-child(3){transform:none}
.folha{box-shadow:0 1px 0 #fff inset,2px 7px 14px rgba(40,25,5,.42)}
.nota{box-shadow:0 1px 0 rgba(255,255,255,.6) inset,1px 5px 9px rgba(40,25,5,.38);border-radius:3px 3px 18px 3px}
.nota::after{content:"";position:absolute;right:0;bottom:0;width:18px;height:18px;border-radius:0 0 18px 0;background:linear-gradient(135deg,transparent 50%,rgba(0,0,0,.09) 50%)}
.prio,.prazo,.nota .tag,.nota .dica,.fazendo-tag,.prog,.sai{font-family:var(--body);font-weight:700;font-size:11.5px;letter-spacing:.2px;color:#3b4560}
.prio{text-transform:uppercase;letter-spacing:.7px;font-size:10.5px;font-weight:800}
.prazo{font-weight:800}
.nota .tag{border:0;background:rgba(28,47,90,.09);border-radius:6px;padding:1px 7px;font-size:11px}
.nota .dica{font-weight:500}
.fazendo-tag{color:var(--azul)}
.sub-i{font-size:18px}
.resp{font-size:17px}
.mini2{font-size:12px;border-width:1.8px;border-radius:8px;min-height:30px;padding:2px 11px;box-shadow:0 2px 0 rgba(28,47,90,.35)}
.mini2:active{transform:translateY(1px);box-shadow:none}
.mini2.so-ico{width:34px;padding:0;display:inline-flex;align-items:center;justify-content:center}
.mini2.so-ico .ico{width:15px;height:15px}
.nota .l:last-child{margin-top:2px}
.aviso.amarelo{padding:9px 12px;font-size:13px}
.legenda{margin:0 0 10px;font-size:12.5px}

.foto-linha{display:flex;gap:10px;flex-wrap:wrap}.foto-linha .foto-btn{flex:1 1 150px}
.foto-mini{display:block;max-width:100%;max-height:200px;margin:10px 0 0;border:2px solid var(--line);border-radius:12px;object-fit:contain;background:#fff}

/* ---------- v0.6: baias (internação) e pets ---------- */
body[data-view="baias"]{--acento:#6d5bd0;--acento-claro:#e8e4fa}
.baias-topo{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.baias-resumo{margin:0;color:var(--muted);font-size:14px}.baias-resumo b{font-family:var(--title);font-size:30px;color:var(--ink);margin-right:4px}
.baias-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));gap:14px}
.baia{display:grid;gap:6px;align-content:start;text-align:left;min-height:158px;padding:12px 13px;border-radius:14px;border:3px solid var(--ink);background:var(--white);box-shadow:4px 5px 0 rgba(28,47,90,.85);cursor:pointer;font:inherit;color:var(--ink);transition:transform .12s}
.baia:hover{transform:translate(-1px,-1px)}
.baia.livre{border-style:dashed;border-color:#9fb1cf;box-shadow:none;background:rgba(255,255,255,.55);align-content:center;justify-items:center;text-align:center;color:#6b7690}
.baia-n{font-family:var(--title);font-size:20px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}
.baia.livre .baia-n{color:#6b7690}.baia-livre{font-family:var(--mao);font-size:26px;font-weight:700}.baia-mais{font-size:12.5px;font-weight:800;color:var(--azul)}
.baia-info{font-size:12.5px;color:var(--muted);overflow-wrap:anywhere}.baia-tempo{font-size:12px;font-weight:800;color:var(--azul)}
.baia.ocupada.cao{border-left-width:10px;border-left-color:var(--verde)}.baia.ocupada.gato{border-left-width:10px;border-left-color:var(--azul)}.baia.ocupada.outro{border-left-width:10px;border-left-color:var(--violeta)}
.et-pet{display:inline-block;max-width:100%;font-family:var(--mao);font-weight:700;font-size:23px;line-height:1.05;color:var(--ink);background:#fff;border-left:9px solid var(--azul);padding:4px 11px 5px;border-radius:4px;box-shadow:1px 3px 5px rgba(0,0,0,.28);transform:rotate(-1.5deg);overflow-wrap:anywhere;justify-self:start}
.et-pet.cao{border-left-color:var(--verde)}.et-pet.gato{border-left-color:var(--azul)}.et-pet.outro{border-left-color:var(--violeta)}
.pets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:10px}
.pet-card{display:grid;gap:6px;align-content:start;text-align:left;background:var(--white);border:2px solid var(--line);border-radius:14px;padding:11px 12px;font:inherit;color:var(--ink);cursor:pointer}
.pet-card:hover{border-color:var(--azul)}.pet-meta{font-size:12.5px;color:var(--muted);overflow-wrap:anywhere}
.chip-int{justify-self:start;display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;background:#dbe8fa;color:#1f4f93;border-radius:7px;padding:3px 8px}
.baia-det{display:grid;gap:3px;font-size:13.5px;margin:0 0 8px}.baia-det b{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);margin-right:6px}
.mini-t{font-family:var(--title);font-size:18px;text-transform:uppercase;margin:10px 0 6px}
.notas-int{display:grid;gap:6px;max-height:190px;overflow:auto;margin-bottom:10px;padding:2px}
.notas-int>div{background:#f5f1e8;border-radius:10px;padding:7px 10px;font-size:13.5px;overflow-wrap:anywhere}.notas-int small{display:block;color:var(--muted);font-size:11.5px}
.campo-linha select{border:1.5px solid var(--line);border-radius:12px;padding:12px 10px;font-size:16px;background:#fff;min-width:0}
.btn.perigo{color:#a4151b;border-color:#f1b9bb}
.mais-lista{display:grid;gap:8px;margin:12px 0}
.mais-item{display:flex;align-items:center;gap:12px;background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:14px;font:inherit;font-weight:800;color:var(--ink);font-size:16px;text-align:left}
.mais-item .ico{width:22px;height:22px;color:var(--azul)}.badge-inline{margin-left:auto;background:#f87171;color:#fff;border-radius:99px;font-size:12px;padding:1px 9px}

/* ---------- v0.7: Pets, tutores, agenda ---------- */
body[data-view="pets"]{--acento:#1f7a3d;--acento-claro:#d6f0de}
body[data-view="agenda"]{--acento:#2b62b0;--acento-claro:#dce8f8}
.seg .cont{display:inline-block;min-width:20px;text-align:center;font-family:var(--title);font-size:15px;background:var(--azul);color:#fff;border-radius:8px;padding:0 6px;margin-left:4px}
.seg button:not(.on) .cont{background:#9aa6bf}
.btn .cont{display:inline-block;min-width:20px;text-align:center;font-family:var(--title);font-size:15px;background:#e1282f;color:#fff;border-radius:8px;padding:0 6px}
.chips-pet{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.chip-alerta{font-size:10.5px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;background:#fde1e1;color:#a4151b;border-radius:7px;padding:3px 8px}
.pet-card.sem-clique{cursor:default}.pet-card.sem-clique:hover{border-color:var(--line)}
.tutor-nome{font-size:16px}.vac-nome{font-size:15px}.pet-meta.atrasada{color:#a4151b;font-weight:800}
.link-peq{border:0;background:none;color:var(--azul);font-size:11.5px;font-weight:700;text-decoration:underline;padding:0 0 0 6px;cursor:pointer}
.link-et{border:0;background:none;padding:0;cursor:pointer}
.nota-pet{font-size:13.5px;background:#f5f1e8;border-radius:10px;padding:8px 10px;margin:6px 0}
.ag-topo{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:12px}
.ag-nav{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ag-nav .btn{min-width:44px}.ag-nav input[type=date]{border:1.5px solid var(--line);border-radius:12px;padding:10px 12px;font-size:15px;background:#fff;min-height:44px;color:var(--ink)}
.ag-semana{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-bottom:12px}
.ag-dia{display:grid;gap:2px;justify-items:center;padding:8px 2px;border:2px solid var(--line);border-radius:12px;background:#fff;font:inherit;color:var(--ink);cursor:pointer;min-height:56px}
.ag-dia span{font-size:11.5px;font-weight:700;text-transform:capitalize}.ag-dia b{font-family:var(--title);font-size:22px;line-height:1}
.ag-dia.on{border-color:var(--ink);background:var(--azul);color:#fff;box-shadow:2px 3px 0 rgba(28,47,90,.8)}.ag-dia.hoje:not(.on){border-color:var(--azul)}
.hoje-tag{font-family:var(--body);font-size:11px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;background:var(--azul);color:#fff;border-radius:7px;padding:2px 8px;vertical-align:middle}
.ag-lista{display:grid;gap:10px}
.ag-card{display:flex;align-items:stretch;gap:0;background:var(--white);border:2.5px solid var(--ink);border-left-width:9px;border-radius:14px;box-shadow:3px 4px 0 rgba(28,47,90,.85);overflow:hidden}
.ag-card.st-agendado{border-left-color:#9aa6bf}.ag-card.st-confirmado{border-left-color:var(--azul)}.ag-card.st-chegou{border-left-color:#d98e04}.ag-card.st-atendimento{border-left-color:var(--violeta)}
.ag-card.st-concluido{border-left-color:var(--verde);opacity:.78}.ag-card.st-faltou,.ag-card.st-cancelado{border-left-color:var(--vermelho);opacity:.62}
.ag-corpo{flex:1;min-width:0;display:flex;gap:12px;align-items:center;text-align:left;border:0;background:none;padding:10px 12px;font:inherit;color:var(--ink);cursor:pointer}
.ag-hora{font-family:var(--title);font-size:30px;line-height:1;font-weight:800;display:grid;gap:2px;flex:none;min-width:62px}.ag-hora small{font-family:var(--body);font-size:11px;font-weight:600;color:var(--muted)}
.ag-info{min-width:0;display:grid;gap:3px;flex:1}.ag-linha{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ag-tipo{font-size:13px;font-weight:800;color:var(--azul)}
.ag-acao{border-radius:0;flex:none;min-width:84px;border-left:2.5px solid var(--ink);font-size:13px}
.st-chip{font-size:10.5px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;border-radius:7px;padding:3px 8px;background:#e6e9f0;color:#3b4560;white-space:nowrap}
.st-chip.st-confirmado{background:#dbe8fa;color:#1f4f93}.st-chip.st-chegou{background:#ffecb0;color:#7a4a00}.st-chip.st-atendimento{background:#e8e4fa;color:#4b3aa8}
.st-chip.st-concluido{background:#d6f0de;color:#14602f}.st-chip.st-faltou,.st-chip.st-cancelado{background:#fde1e1;color:#a4151b}
.conf-card{display:grid;gap:6px;background:#fff;border:2px solid var(--line);border-radius:14px;padding:10px 12px}
.msg-conf{margin:0;background:#f5f1e8;border-radius:10px;padding:8px 10px;font-size:13.5px;overflow-wrap:anywhere}
.janela textarea[readonly]{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:10px 12px;font-size:14px;background:#f5f1e8;resize:none;font-family:var(--body);color:var(--ink)}
.erros-imp{margin:8px 0 0;padding-left:18px;font-size:13px;color:#7a4a00;display:grid;gap:2px}
.faixa-clinica{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}
.faixa-item{display:grid;gap:2px;align-content:center;text-align:left;background:var(--white);border:2.5px solid var(--ink);border-radius:14px;padding:10px 12px;box-shadow:3px 4px 0 rgba(28,47,90,.85);font:inherit;color:var(--ink);cursor:pointer;min-height:70px}
.faixa-item b{font-family:var(--title);font-size:32px;line-height:1}.faixa-item span{font-size:12.5px;color:var(--muted);line-height:1.25}
.btn.perigo-cheio{background:#a4151b;border-color:#a4151b}
@media (max-width:520px){.faixa-clinica{gap:6px}.faixa-item{padding:8px 9px}.faixa-item b{font-size:26px}.faixa-item span{font-size:11.5px}.ag-hora{font-size:24px;min-width:52px}.ag-acao{min-width:68px;font-size:12px;padding:6px}.ag-corpo{padding:9px}
  .ag-card.st-agendado .st-chip{display:none}.st-chip{font-size:9.5px;padding:2px 6px}}

/* ---------- v0.8: notas do mural e POPs ---------- */
body[data-view="notas"]{--acento:#d98e04;--acento-claro:#ffecb0}
.mural-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:14px}
.nota-mural{position:relative;display:grid;gap:6px;align-content:start;padding:14px 14px 10px;border-radius:3px 3px 18px 3px;background:#d8e6fa;box-shadow:1px 5px 9px rgba(40,25,5,.3);border-top:6px solid rgba(0,0,0,.12)}
.nota-mural.tipo-aviso{background:#ffd5d5}.nota-mural.tipo-combinado{background:#d6f0de}.nota-mural.tipo-recado{background:#ffecb0}
.nota-mural.fixada{outline:3px solid var(--ink);outline-offset:1px}
.nm-topo{display:flex;justify-content:space-between;align-items:center;gap:6px}.nm-tipo{font-size:10.5px;font-weight:800;letter-spacing:.7px;text-transform:uppercase;color:#3b4560}.nm-pin{font-size:15px}
.nm-titulo{font-family:var(--mao);font-size:24px;line-height:1.05;color:var(--ink)}
.nm-texto{margin:0;font-size:14.5px;line-height:1.45;overflow-wrap:anywhere;color:#252a3a}.nm-meta{color:#5d6475;font-size:11.5px}
.nm-acoes{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.pop-card{display:grid;gap:3px;width:100%;text-align:left;background:var(--white);border:2px solid var(--line);border-radius:14px;padding:11px 14px;margin-bottom:8px;font:inherit;color:var(--ink);cursor:pointer}
.pop-card:hover{border-color:var(--azul)}.pop-titulo{font-weight:800;font-size:15.5px}.pop-meta{font-size:12.5px;color:var(--muted)}
.pop-resp{font-size:12px;font-weight:700;color:#14602f}.pop-resp.definir{color:#7a4a00}
.passos-pop{margin:8px 0 12px;padding-left:24px;display:grid;gap:7px;font-size:15px;line-height:1.4}.passos-pop li::marker{font-weight:800;color:var(--azul)}
.check-linha{display:flex;gap:8px;align-items:center;font-size:14px;margin:4px 0 12px}
#impressao{display:none}
@media print{
  body>*:not(#impressao){display:none!important}
  #impressao{display:block!important;padding:24px;color:#000;background:#fff;font-family:var(--body)}
  #impressao h1{font-family:var(--title);font-size:30px;margin:0 0 6px;text-transform:uppercase}
  #impressao ol{font-size:15pt;line-height:1.5;padding-left:26px}#impressao li{margin-bottom:6px}
  #impressao .rodape-imp{margin-top:30px;font-size:10pt;color:#555}
}

/* ---------- aviso de versão nova ---------- */
#versao-aviso:empty{display:none}
.aviso-versao{position:fixed;z-index:80;left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:calc(76px + env(safe-area-inset-bottom));max-width:560px;margin-inline:auto;display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:var(--white);border:3px solid var(--ink);border-radius:16px;box-shadow:4px 5px 0 rgba(28,47,90,.85);padding:12px 14px}
.av-texto{display:grid;gap:2px;min-width:0;flex:1 1 200px}.av-texto b{font-size:15px}.av-texto span{font-size:12.5px;color:var(--muted);overflow-wrap:anywhere}
.av-acoes{display:flex;gap:8px}.av-acoes .btn{min-height:40px;padding:8px 14px;font-size:13px}
@media (min-width:901px){.aviso-versao{bottom:20px;left:auto;right:20px;margin:0}}

/* ---------- menu agrupado ---------- */
.rail-nav{gap:3px}
.rail-nav .rail-label{margin:14px 0 4px}
.rail-nav .rail-label:first-child{margin-top:0}
.mais-grupo{margin:10px 2px 0;font-size:10.5px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted)}
.muted a,.sub a,.dica a{color:var(--azul);font-weight:700}

/* modelos de IA (Ajustes) */
.ia-tit{font-size:15px;margin:18px 0 4px;color:var(--ink)}
.ia-chaves{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0 14px}
.ia-lista{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:6px}
.ia-item{display:flex;align-items:center;gap:10px;border:1.5px solid var(--line);border-radius:12px;padding:8px 10px;background:#fff;min-width:0}
.ia-item.pronto{border-color:var(--teal);background:var(--mint2)}
.ia-pos{flex:none;width:24px;height:24px;border-radius:50%;background:var(--ink);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}
.ia-nome{flex:1;min-width:0;display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:14px;cursor:pointer;overflow-wrap:anywhere}
.ia-nome input{width:18px;height:18px;min-height:0;margin:0;accent-color:var(--teal)}
.ia-sem{font-size:11px;font-weight:700;color:#8a5a00;background:#fff1cf;border-radius:999px;padding:2px 8px}
.ia-btns{display:flex;gap:4px;flex:none}
.ia-btns .mini{min-height:34px;min-width:34px;padding:0 8px;font-size:15px}
.ia-add{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:6px}
.ia-add select,.ia-add input{flex:1;min-width:150px}
.ia-quem{margin:6px 0 0}

/* lembretes da agenda */
.lem-lista{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:8px}
.lem-item{display:flex;align-items:stretch;gap:10px;border:1.5px solid var(--line);background:#fff;border-radius:14px;padding:6px 8px;min-width:0}
.lem-item.atrasado{border-color:var(--vermelho);background:#fff4f4}
.lem-feito{flex:none;width:34px;height:34px;align-self:center;border-radius:50%;border:2.5px solid var(--azul);background:#fff;cursor:pointer;padding:0}
.lem-feito:hover,.lem-feito:focus-visible{background:var(--mint)}
.lem-corpo{flex:1;min-width:0;text-align:left;background:none;border:0;padding:6px 4px;cursor:pointer;display:grid;gap:2px;font:inherit;color:var(--ink)}
.lem-corpo b{font-size:15px;overflow-wrap:anywhere}.lem-corpo span{font-size:12.5px;color:var(--muted)}
.lem-item.atrasado .lem-corpo span{color:var(--vermelho);font-weight:600}
.lem-ok-notif{font-size:13px;color:var(--verde);font-weight:700;align-self:center}
#lembrete-aviso:empty{display:none}
.aviso-lembrete{position:fixed;z-index:90;left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));top:calc(12px + env(safe-area-inset-top));max-width:560px;margin-inline:auto;display:grid;gap:8px}
.al-item{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:#fff;border:2px solid var(--azul);border-radius:16px;padding:12px 14px;box-shadow:0 12px 30px rgba(28,47,90,.22)}
.al-texto{display:grid;gap:2px;min-width:0;flex:1 1 200px}.al-texto b{font-size:15px;overflow-wrap:anywhere}.al-texto span{font-size:13px;color:var(--muted);overflow-wrap:anywhere}
.al-acoes{display:flex;gap:8px}.al-acoes .btn{min-height:40px;padding:8px 14px;font-size:13px}
@media (min-width:901px){.aviso-lembrete{left:auto;right:20px;margin:0;top:20px}}
.ia-conferir{display:flex;gap:10px;align-items:flex-start;border:1.5px solid var(--line);background:#fff;border-radius:12px;padding:10px 12px;margin-top:16px;cursor:pointer;font-size:13.5px;color:var(--ink)}
.ia-conferir input{width:18px;height:18px;min-height:0;margin:2px 0 0;flex:none;accent-color:var(--teal)}
.ia-avisos{margin:6px 0 0;padding:0;list-style:none;display:grid;gap:4px}
.ia-avisos li{font-size:12.5px;color:#7a4a00;background:#fff4dc;border-radius:8px;padding:6px 10px;overflow-wrap:anywhere}

/* sincronização dos demais dados */
.ok-sinc{color:var(--verde);font-weight:700}.erro-sinc{color:var(--vermelho);font-weight:600}

/* evidências do projeto (Ajustes) */
.evid-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}
.evid{background:var(--creme,#fff6ea);border:1px solid #ead9bd;border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}
.evid b{font-size:22px;color:#1c2f5a;font-family:var(--fonte-titulo,inherit)}
.evid span{font-size:12px;color:#475569}
.evid-semanas{display:flex;gap:6px;align-items:flex-end;overflow-x:auto;padding-bottom:4px}
.evid-sem{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:40px;font-size:11px;color:#475569}
.evid-sem i{display:block;width:22px;background:#2b62b0;border-radius:4px 4px 0 0}
.evid-sem b{color:#1c2f5a;font-size:12px}

/* ---------- câmera própria (0.14): prévia, tirar foto, usar ou tirar outra ---------- */
.cam-overlay{position:fixed;inset:0;z-index:200;background:rgba(28,47,90,.82);display:flex;align-items:center;justify-content:center;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom))}
.cam-caixa{background:var(--white);border-radius:20px;width:100%;max-width:640px;max-height:100%;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.cam-palco{background:#0e1530;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;max-height:62vh}
.cam-palco video,.cam-palco img{width:100%;height:100%;object-fit:contain;display:block}
.cam-palco [hidden]{display:none}
.cam-msg{margin:0;padding:12px 16px 4px;font-size:14px;font-weight:700;color:var(--ink);min-height:42px}
.cam-msg.erro{color:var(--red)}
.cam-acoes{display:flex;flex-wrap:wrap;gap:10px;padding:10px 16px 16px;justify-content:flex-end}
.cam-acoes .btn{flex:1 1 130px}
.cam-acoes [hidden]{display:none}
.cam-galeria{cursor:pointer}
.cam-galeria:focus-within{outline:3px solid var(--azul);outline-offset:2px}

/* ---------- ler print, foto ou texto e revisar (0.14) ---------- */
.janela:has(#doc-res){max-width:780px}
.foto-linha{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:6px}
.foto-mini{display:block;max-width:100%;max-height:160px;border-radius:12px;border:1px solid var(--line);margin:12px 0 8px}
#doc-res{margin-top:12px}
.dc-grupo{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:18px 0 8px;padding-bottom:6px;border-bottom:2px solid var(--line)}
.dc-grupo b{font-family:var(--title);font-size:20px;text-transform:uppercase;letter-spacing:.4px;color:var(--azul)}
.dc-sal{display:inline-flex;align-items:center;gap:8px;font-weight:700;cursor:pointer;min-height:36px}
.dc-sal input{width:20px;height:20px;accent-color:var(--azul)}
.dc-vazio{margin:0;font-size:13px}
.dc-campo{margin-bottom:12px;border-left:4px solid transparent;padding-left:10px}
.dc-campo label{display:block;font-size:12px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;margin-bottom:6px;color:var(--slate)}
.dc-campo input{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;font-size:16px;background:#fff;min-height:48px}
.dc-campo small{display:block;font-size:12px;color:var(--muted);margin-top:4px}
.dc-campo.conf{border-left-color:var(--verde)}
.dc-campo.unico{border-left-color:#d6b25e}
.dc-campo.diverge{border-left-color:#e08a1a;background:var(--amber-soft);border-radius:0 12px 12px 0;padding:8px 10px}
.dc-campo.diverge input{border-color:#e08a1a}
.dc-campo.diverge small{color:var(--amber);font-weight:700}
.dc-alts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.dc-alts .chip{font-size:13px}
.dc-vac{border:1.5px solid var(--line);border-radius:14px;padding:10px 12px 2px;margin:0 0 12px;background:#fff}
.dc-vac legend,.dc-vac .dc-sal{margin-bottom:6px}
.dc-avisos{margin:10px 0;font-size:13px;color:var(--slate)}
.dc-avisos summary{cursor:pointer;font-weight:800}
.dc-avisos ul{margin:8px 0 0;padding-left:20px}
.dc-texto{background:var(--slate-bg);border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.5;word-break:break-word}
@media (max-width:560px){.grid2{grid-template-columns:1fr}.cam-palco{aspect-ratio:3/4}}

/* ---------- acabamento (0.14): ações dos Pets, revisão com barra fixa, cartões e foco ---------- */
.btn.azul{background:var(--azul)}
.btn.peq{min-height:38px;padding:8px 14px;font-size:13px;font-weight:700;flex:0 1 auto}
.pets-acoes{margin:0 0 10px}
.pets-sec{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px;padding:8px 12px;background:var(--white);border:1px dashed var(--line);border-radius:14px}
.pets-sec-t{font-size:11px;font-weight:800;letter-spacing:.7px;text-transform:uppercase;color:var(--muted);margin-right:4px}
.pets-sec .btn{flex:0 1 auto}
.dc-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px 16px;align-items:start}
@media (max-width:560px){.dc-grid{grid-template-columns:1fr}.pets-sec-t{flex-basis:100%}}
.dc-barra{position:sticky;bottom:-22px;margin:18px -20px -22px;padding:12px 20px calc(14px + env(safe-area-inset-bottom));background:linear-gradient(to top,var(--white) 78%,rgba(255,253,248,0));border-top:1px solid var(--line)}
.dc-barra .btn{flex:1 1 150px}
.pet-card{transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.pet-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--azul)}
.btn:focus-visible,.chip:focus-visible,.pet-card:focus-visible{outline:3px solid var(--azul);outline-offset:2px}
.foto-mini{background:#fff}
#doc-entrada[hidden]{display:none}

/* ---------- insumos: diferenças entre o app e a planilha (0.15) ---------- */
.janela:has(.dif-item),.janela:has(.dif-tab){max-width:720px}
.dif-item{border:1.5px solid var(--line);border-radius:14px;padding:10px 12px;margin:0 0 10px;background:#fff}
.dif-item.conf{border-color:#e08a1a;background:var(--amber-soft)}
.dif-topo{display:flex;justify-content:space-between;gap:10px;align-items:baseline;flex-wrap:wrap;margin-bottom:6px}
.dif-topo .muted,.dif-topo .erro-sinc{font-size:12px;font-weight:700}
.dif-tab{width:100%;border-collapse:collapse;font-size:13px;margin:4px 0 8px}
.dif-tab th{text-align:left;font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);padding:3px 6px}
.dif-tab td{padding:5px 6px;border-top:1px solid var(--line)}
.dif-tab tr.conf td{background:#fde8c4}
.dif-bt{display:flex;flex-wrap:wrap;gap:8px}
.dif-bt .btn{flex:1 1 170px}
.dif-item select{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:10px 12px;font-size:15px;background:#fff;min-height:44px}

/* ---------- aparelhos ligados (0.16) ---------- */
.aparelhos{display:grid;gap:8px}
.aparelho{display:flex;flex-direction:column;gap:2px;border:1.5px solid var(--line);border-radius:12px;padding:8px 12px;background:#fff}
.aparelho.este{border-color:var(--azul);background:var(--mint2)}
.aparelho .muted{font-size:12.5px}
