/* Fichas digitais (V16.22): tela cheia para tablet, botões grandes, cores do estúdio. */
.cl-fill{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:var(--studio-background);color:var(--studio-text)}
.cl-fill::backdrop{background:#000c}
.cl-wrap{display:flex;flex-direction:column;height:100%;max-width:980px;margin:0 auto}
.cl-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px 8px}
.cl-header h2{font-size:22px;margin:4px 0 0;line-height:1.25}
.cl-steps{display:flex;gap:6px;list-style:none;margin:0;padding:6px 20px 12px;overflow-x:auto}
.cl-steps li{flex:1;min-width:84px;text-align:center;font-size:12px;padding:8px 6px;border-radius:8px;border:1px solid var(--studio-line);color:var(--studio-muted)}
.cl-steps li.ok{border-color:color-mix(in srgb,var(--studio-accent) 45%,transparent);color:var(--studio-text)}
.cl-steps li.now{background:var(--studio-accent);color:var(--studio-on-accent,#111);border-color:transparent;font-weight:700}
.cl-body{flex:1;overflow:auto;padding:8px 20px 24px;-webkit-overflow-scrolling:touch}
.cl-footer{display:flex;justify-content:space-between;gap:12px;padding:14px 20px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--studio-line);background:var(--studio-surface)}
.cl-footer button{min-height:52px;min-width:150px;font-size:16px}
.cl-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:10px 0}
.cl-grid .full,.cl-field.full{grid-column:1/-1}
.cl-field{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--studio-text)}
.cl-field input,.cl-field select,.cl-field textarea{min-height:52px;font-size:17px;padding:12px 14px}
.cl-choice{border:0;padding:0;margin:14px 0}
.cl-choice legend{font-size:16px;font-weight:600;color:var(--studio-text);margin-bottom:8px;line-height:1.4}
.cl-choice>div{display:flex;flex-wrap:wrap;gap:10px}
.cl-chip{position:relative;display:inline-flex}
.cl-chip input{position:absolute;opacity:0;width:1px;height:1px}
.cl-chip span{display:inline-flex;align-items:center;min-height:50px;min-width:88px;justify-content:center;padding:10px 18px;border-radius:10px;border:1px solid var(--studio-line);background:var(--studio-input);font-size:16px;color:var(--studio-text);cursor:pointer}
.cl-chip input:checked+span{background:var(--studio-accent);color:var(--studio-on-accent,#111);border-color:transparent;font-weight:700}
.cl-chip input:focus-visible+span{outline:3px solid var(--studio-accent);outline-offset:2px}
.cl-check{display:flex;gap:12px;align-items:flex-start;padding:12px;margin:8px 0;border:1px solid var(--studio-line);border-radius:10px;background:var(--studio-input);font-size:15px;line-height:1.5;color:var(--studio-text)}
.cl-check input{width:26px;height:26px;min-height:26px;flex:none;margin-top:1px;accent-color:var(--studio-accent)}
.cl-question{padding:4px 0 10px;border-bottom:1px solid var(--studio-line)}
.cl-group{margin:18px 0}.cl-group h4{font-size:15px;color:var(--studio-accent);margin:0 0 4px;text-transform:uppercase;letter-spacing:.6px}
.cl-group summary{cursor:pointer;font-weight:600;min-height:44px;display:flex;align-items:center}
.cl-intro,.cl-important{padding:12px;border-radius:10px;border:1px solid color-mix(in srgb,var(--studio-accent) 40%,transparent);background:color-mix(in srgb,var(--studio-accent) 7%,var(--studio-surface));font-size:15px;line-height:1.5}
.cl-terms{font-size:15px;line-height:1.6;padding:14px 16px;border:1px solid var(--studio-line);border-radius:10px;background:var(--studio-surface)}
.cl-terms p{margin:0 0 10px}
.cl-handoff{margin-top:18px;padding:12px;border-radius:10px;background:var(--studio-surface);border:1px dashed var(--studio-accent);font-weight:600}
.cl-error,.cl-block{margin:0 20px 10px;padding:12px;border-radius:10px;background:#f04c6422;color:#ff9aac;border:1px solid #f04c6466;font-weight:600}
.cl-body .cl-block{margin:12px 0}
.cl-alerts{padding:12px 14px;border-radius:10px;border:2px solid #f04c64aa;background:#f04c6414;margin:12px 0}.cl-alerts ul{margin:6px 0 0;padding-left:20px}
.sig-pad{margin:18px 0}.sig-pad-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}
.sig-pad canvas{display:block;width:100%;aspect-ratio:3/1;max-height:260px;background:#fff;border-radius:10px;border:2px solid var(--studio-line);touch-action:none;cursor:crosshair}
.cl-done{padding:30px 0;text-align:left}.cl-done h3{font-size:22px;color:var(--studio-accent)}
.cl-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}.cl-actions button{min-height:48px}
.cl-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.cl-doc.invalid{opacity:.65}.cl-log{width:100%;border-collapse:collapse;font-size:12px;margin-top:8px}.cl-log th,.cl-log td{border-bottom:1px solid var(--studio-line);padding:6px;text-align:left}
.cl-purpose{max-width:460px}.cl-purpose-form{padding:22px}.cl-prof{padding:12px 0;border-top:1px solid var(--studio-line)}
@media(max-width:700px){.cl-grid{grid-template-columns:1fr}.cl-header h2{font-size:18px}.cl-footer button{min-width:0;flex:1}.cl-body{padding:8px 14px 20px}.cl-steps{padding:6px 14px 10px}.cl-steps li{min-width:64px;font-size:11px}}
@media(max-width:700px){.cl-steps{gap:4px;overflow:visible}.cl-steps li{flex:1 1 0;min-width:0;padding:7px 2px;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
/* Assinatura no celular: campo de toque e tela cheia na horizontal */
.sig-tap{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:100%;min-height:120px;border-radius:12px;border:2px dashed var(--studio-accent);background:color-mix(in srgb,var(--studio-accent) 8%,var(--studio-input));color:var(--studio-text);font-size:17px;font-weight:600;padding:12px}
.sig-tap small{font-size:12px;font-weight:400;color:var(--studio-muted)}
.sig-tap.signed{border-style:solid;background:#fff;color:#1d7a3a}.sig-tap.signed img{max-width:100%;height:90px;object-fit:contain}.sig-tap.signed span{font-size:14px}
.sig-full{position:fixed;inset:0;z-index:1000;background:var(--studio-background);overflow:hidden}
.sig-stage{position:absolute;top:0;left:0;width:100vw;height:100dvh;display:flex;flex-direction:column;gap:8px;padding:10px max(12px,env(safe-area-inset-right)) 10px max(12px,env(safe-area-inset-left));box-sizing:border-box}
.sig-stage.rotated{width:100dvh;height:100vw;left:100vw;transform-origin:top left;transform:rotate(90deg)}
.sig-full-bar{display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--studio-text)}.sig-full-hint{color:var(--studio-muted);font-size:13px}
.sig-stage canvas{flex:1;min-height:0;width:100%;background:#fff;border-radius:12px;touch-action:none;display:block}
.sig-full-actions{display:flex;gap:10px;justify-content:flex-end}.sig-full-actions button{min-height:48px;min-width:96px;font-size:16px}
.sig-ok{background:#1f9d55;color:#fff;border:0;border-radius:10px;font-weight:700;min-width:140px!important}.sig-ok:focus-visible{outline:3px solid #fff;outline-offset:2px}
.sig-saved{background:#fff;border-radius:12px;padding:10px;margin:8px 0 16px;text-align:center}.sig-saved img{max-width:100%;height:100px;object-fit:contain}
.cl-sig-upload{margin:6px 0 10px}.sig-saved-img{display:block;background:#fff;border-radius:8px;max-width:320px;width:100%;height:90px;object-fit:contain;margin:6px 0}.cl-file{display:inline-flex;align-items:center;cursor:pointer;margin-right:10px}
/* Situação da ficha na Agenda e envio do link */
.cl-appt{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:6px 0 2px}
.cl-badge{display:inline-flex;align-items:center;font-size:11px;font-weight:600;padding:4px 9px;border-radius:999px;border:1px solid var(--studio-line);color:var(--studio-muted)}
.cl-badge.ok{background:#1f9d5522;color:#5fd38f;border-color:#1f9d5555}
.cl-badge.fill{background:color-mix(in srgb,var(--studio-accent) 16%,transparent);color:var(--studio-accent);border-color:color-mix(in srgb,var(--studio-accent) 45%,transparent)}
.cl-badge.sent{color:var(--studio-text)}
.cl-badge.none{color:#ff9aac;border-color:#f04c6455}
.tiny-button.cl-primary{background:var(--studio-accent);color:var(--studio-on-accent,#111);border-color:transparent;font-weight:700}
.cl-linkinfo{margin:0 20px 8px;padding:10px 12px;border-radius:10px;border:1px solid color-mix(in srgb,var(--studio-accent) 45%,transparent);background:color-mix(in srgb,var(--studio-accent) 8%,var(--studio-surface));font-size:14px}
.cl-send{max-width:560px}.cl-send-text{width:100%;font-size:13px;line-height:1.5}.cl-wa{display:inline-flex;align-items:center;justify-content:center;min-height:44px;text-decoration:none}
/* Fotos do procedimento (V16.34) */
.pp-dialog{width:min(760px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;padding:20px}.pp-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.pp-head h3{margin:4px 0 0;font-size:20px}
.pp-count{margin:0;font-size:14px}.pp-kinds{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.pp-kinds button{min-height:56px;font-size:15px}
.pp-preview{margin:0}.pp-preview img{display:block;width:100%;max-height:60dvh;object-fit:contain;border-radius:10px;border:1px solid var(--studio-line);background:#000}
.pp-approve-text{font-size:17px;line-height:1.5;padding:12px 14px;border:1px solid color-mix(in srgb,var(--studio-accent) 45%,transparent);border-radius:10px;background:color-mix(in srgb,var(--studio-accent) 10%,transparent);margin:0}
.pp-blocked{padding:12px 14px;border:1px solid var(--studio-line);border-radius:10px;background:var(--studio-input);margin:0}
.pp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.pp-item{margin:0;border:1px solid var(--studio-line);border-radius:10px;padding:8px;background:var(--studio-input)}.pp-item.invalid{opacity:.6}
.pp-item img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px}.pp-placeholder{display:grid;place-items:center;aspect-ratio:1;border-radius:8px;background:var(--studio-surface);font-size:28px}.pp-item figcaption{font-size:12px;margin-top:6px;line-height:1.5}
.cl-photo-consent .cl-choice{margin-top:8px}
.pp-zoom{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}
.cl-badge-open{cursor:pointer;min-height:36px;font:inherit;font-size:12px;font-weight:600}.cl-badge-open:hover,.cl-badge-open:focus-visible{filter:brightness(1.2);text-decoration:underline}
