.clinical-role-hint{border-radius:var(--r-xs);color:var(--warning-ink);background:var(--warning-soft);font-size:var(--fs-2xs);white-space:nowrap;margin-left:auto;padding:7px 9px;font-weight:800}.clinical-page.page{width:min(1680px,100%);padding-inline:28px}.clinical-page .clinical-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 24px;margin-bottom:20px;display:flex}.clinical-heading-side{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.clinical-metrics{flex-wrap:wrap;gap:8px;display:flex}.metric-chip{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);min-height:42px;box-shadow:var(--shadow-xs);align-items:center;gap:8px;padding:0 14px;display:inline-flex}.metric-chip strong{font-size:var(--fs-base);font-variant-numeric:tabular-nums;color:var(--ink);font-weight:750}.metric-chip small{color:var(--muted);font-size:var(--fs-xs);font-weight:600}.metric-chip .metric-dot{background:var(--subtle);border-radius:50%;width:8px;height:8px}.metric-chip.draft .metric-dot{background:var(--warning)}.metric-chip.signed .metric-dot{background:var(--success)}.clinical-page .inline-notice.error{justify-content:space-between;align-items:center;display:flex}.clinical-page .inline-notice.error button{border-radius:var(--r-sm);width:30px;height:30px;color:inherit;background:0 0;border:0;flex:none;place-items:center;display:grid}.clinical-page .inline-notice.error button:hover{background:var(--danger-soft)}.clinical-starting{border:1px solid var(--brand-line);color:var(--brand-ink);background:var(--brand-tint);align-items:center;gap:10px;display:flex}.clinical-starting .button-spinner{border-color:var(--brand-line);border-top-color:var(--brand);width:14px;height:14px}.clinical-workspace{grid-template-columns:248px minmax(0,1fr) 272px;align-items:start;gap:16px;display:grid}.record-browser,.record-editor,.clinical-timeline-panel{min-width:0}.record-browser,.clinical-timeline-panel{flex-direction:column;max-height:calc(100dvh - 100px);display:flex;position:sticky;top:84px;overflow:hidden}.record-browser>header,.clinical-timeline-panel>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;min-height:64px;padding:14px 16px;display:flex}.record-browser>header h2,.clinical-timeline-panel>header h2{font-size:var(--fs-md);letter-spacing:-.01em;font-weight:700}.record-browser>header p,.clinical-timeline-panel>header p{color:var(--muted);font-size:var(--fs-xs);margin-top:2px}.count-badge{border-radius:var(--r-pill);min-width:28px;height:28px;color:var(--brand-ink);background:var(--brand-soft);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;flex:none;place-items:center;padding:0 8px;font-weight:750;display:grid}.timeline-header-icon{color:var(--subtle);display:grid}.record-filters{border-bottom:1px solid var(--line);gap:8px;padding:12px;display:grid}.record-search{border:1px solid var(--line-strong);border-radius:var(--r-sm);height:40px;color:var(--muted);background:var(--surface);transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);align-items:center;gap:8px;padding:0 12px;display:flex}.record-search:focus-within{border-color:var(--brand);box-shadow:var(--ring)}.record-search input{width:100%;min-width:0;color:var(--ink);font-size:var(--fs-sm);background:0 0;border:0;outline:0}.record-search input:focus{box-shadow:none}.record-filters select{border:1px solid var(--line-strong);border-radius:var(--r-sm);width:100%;height:40px;color:var(--ink);background-color:var(--surface);font-size:var(--fs-sm);padding:0 10px}.record-list{overscroll-behavior:contain;flex:1;min-height:0;padding:6px;overflow-y:auto}.record-card{border-radius:var(--r-md);width:100%;color:inherit;text-align:left;cursor:pointer;animation:vt-rise .42s var(--ease-out) backwards;transition:background-color var(--t-fast) var(--ease), box-shadow var(--t-med) var(--ease);background:0 0;border:0;grid-template-columns:36px minmax(0,1fr);gap:10px;padding:12px 10px;display:grid;position:relative}.record-card+.record-card{margin-top:2px}.record-card:hover{background:var(--surface-2)}.record-card.active{background:var(--brand-tint);box-shadow:inset 0 0 0 1px var(--brand-line)}.record-card.active:before{content:"";background:var(--brand);border-radius:0 3px 3px 0;width:3px;position:absolute;top:12px;bottom:12px;left:0}.record-pet-avatar{border-radius:var(--r-md);width:36px;height:36px;color:var(--brand-ink);background:var(--brand-soft);font-family:var(--font-brand);font-size:var(--fs-base);place-items:center;font-weight:600;display:grid}.record-pet-avatar.draft{color:var(--warning-ink);background:var(--warning-soft)}.record-pet-avatar.amended{color:var(--purple-ink);background:var(--purple-soft)}.record-card-main{gap:3px;min-width:0;display:grid}.record-card-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.record-card-top strong{color:var(--ink);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.record-card-top time{color:var(--muted);font-size:var(--fs-2xs);font-variant-numeric:tabular-nums;flex:none}.record-card-main small{color:var(--muted);font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.record-card-main p{color:var(--ink-2);font-size:var(--fs-xs);line-height:var(--lh-snug);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.record-card-main p.is-empty{color:var(--muted);font-style:italic}.record-card-main .status-pill{margin-top:3px;padding:2px 8px}.record-skeletons{gap:14px;padding:10px;display:grid}.record-skeleton{grid-template-columns:36px 1fr;gap:10px;display:grid}.record-skeleton>.skeleton{border-radius:var(--r-md);height:36px}.record-skeleton>span:last-child{gap:7px;display:grid}.record-skeleton .skeleton-line{height:11px}.record-skeleton .skeleton-line:last-child{width:70%}.record-pagination{border-top:1px solid var(--line);min-height:48px;color:var(--muted);font-size:var(--fs-xs);justify-content:space-between;align-items:center;margin-top:auto;padding:8px 12px;display:flex}.record-pagination button{border:1px solid var(--line);border-radius:var(--r-sm);width:32px;height:32px;color:var(--ink-2);background:var(--surface);place-items:center;display:grid}.record-pagination button:hover:not(:disabled){background:var(--surface-3)}.clinical-empty{min-height:180px;color:var(--muted);text-align:center;font-size:var(--fs-sm);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:28px 20px;display:flex}.clinical-empty .page-spinner{width:22px;height:22px;margin:0}.clinical-empty .empty-icon{animation:vt-pop .52s var(--ease-pop) backwards;margin-bottom:4px}.clinical-empty strong{color:var(--ink);font-size:var(--fs-sm)}.clinical-empty p{max-width:240px;font-size:var(--fs-xs);line-height:var(--lh-body)}.clinical-empty .button{margin-top:6px}.record-editor{min-height:640px;position:relative;overflow:clip;container:editor/inline-size}.record-overlay{z-index:12;background:color-mix(in srgb, var(--surface) 72%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:vt-fade var(--t-med) var(--ease) backwards;justify-content:center;align-items:flex-start;padding-top:180px;display:flex;position:absolute;inset:0}.record-overlay>span{border:1px solid var(--line);border-radius:var(--r-pill);color:var(--ink-2);background:var(--surface-raised);box-shadow:var(--shadow-md);font-size:var(--fs-sm);align-items:center;gap:10px;padding:12px 18px;font-weight:600;display:inline-flex}.record-overlay .page-spinner{width:18px;height:18px;margin:0}.editor-placeholder{text-align:center;background:radial-gradient(circle at 50% 30%, var(--brand-tint) 0, transparent 52%), var(--surface);flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:640px;padding:48px 32px;display:flex}.placeholder-art{width:84px;height:84px;color:var(--brand-ink);background:var(--brand-soft);animation:vt-pop .64s var(--ease-pop) .12s backwards;border-radius:28px;place-items:center;margin-bottom:10px;display:grid;position:relative}.placeholder-ring{border:1.5px dashed var(--brand-line);border-radius:34px;position:absolute;inset:-10px}.editor-placeholder strong{color:var(--ink);font-size:var(--fs-xl);letter-spacing:-.02em;font-weight:750}.editor-placeholder p{max-width:420px;color:var(--muted);font-size:var(--fs-md);line-height:var(--lh-body)}.placeholder-steps{text-align:left;gap:8px;margin:14px 0 0;padding:0;list-style:none;display:grid}.placeholder-steps li{color:var(--ink-2);font-size:var(--fs-sm);animation:vt-rise .48s var(--ease-out) backwards;align-items:center;gap:10px;display:flex}.placeholder-steps li:nth-child(2){animation-delay:80ms}.placeholder-steps li:nth-child(3){animation-delay:.16s}.placeholder-steps b{width:26px;height:26px;color:var(--brand-ink);background:var(--brand-soft);font-size:var(--fs-xs);border-radius:50%;flex:none;place-items:center;display:grid}.clinical-form{animation:vt-fade var(--t-med) var(--ease) backwards}.record-header{border-bottom:1px solid var(--line);background:linear-gradient(180deg, var(--brand-tint) 0%, var(--surface) 100%);gap:14px;padding:20px 24px 16px;display:grid}.record-back{border-radius:var(--r-sm);width:max-content;min-height:36px;color:var(--brand-ink);font-size:var(--fs-sm);background:0 0;border:0;align-items:center;gap:4px;margin:-4px 0 0 -6px;padding:0 10px 0 6px;font-weight:650;display:none}.record-back:hover{background:var(--brand-soft)}.record-identity{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;min-width:0;display:grid}.patient-avatar{width:56px;height:56px;color:var(--on-brand);background:linear-gradient(145deg, var(--brand) 0%, var(--brand-strong) 100%);box-shadow:0 10px 22px -12px color-mix(in srgb, var(--brand) 80%, transparent);font-family:var(--font-brand);font-size:var(--fs-2xl);border-radius:18px;place-items:center;font-weight:600;line-height:1;display:grid;position:relative}.patient-avatar-paw{border:2px solid var(--surface);width:24px;height:24px;color:var(--on-brand);background:var(--accent);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-5px;right:-5px}.patient-main{min-width:0}.record-title-line{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.record-title-line h2{font-size:var(--fs-xl);letter-spacing:-.02em;font-weight:750;line-height:var(--lh-tight)}.patient-facts{color:var(--ink-2);font-size:var(--fs-sm);flex-wrap:wrap;align-items:center;gap:4px 0;margin:6px 0 0;padding:0;list-style:none;display:flex}.patient-facts li{align-items:center;gap:5px;display:inline-flex}.patient-facts li+li:before{content:"";background:var(--line-strong);border-radius:50%;width:4px;height:4px;margin:0 10px}.patient-tutor{color:var(--muted);font-size:var(--fs-sm);align-items:center;gap:6px;margin-top:4px;display:flex}.patient-tutor svg{flex:none}.patient-tutor strong{color:var(--ink-2);font-weight:650}.patient-tutor small{color:var(--muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;white-space:nowrap}.record-save-state{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);min-height:44px;box-shadow:var(--shadow-xs);align-items:center;gap:10px;padding:6px 14px 6px 12px;display:inline-flex}.record-save-state>span:last-child{gap:1px;display:grid}.record-save-state strong{color:var(--ink);font-size:var(--fs-xs);white-space:nowrap;font-weight:700}.record-save-state small{color:var(--muted);font-size:var(--fs-2xs);font-variant-numeric:tabular-nums;white-space:nowrap}.record-save-state.dirty{border-color:var(--warning-line);background:var(--warning-tint)}.record-save-state.signed{border-color:color-mix(in srgb, var(--success) 35%, transparent);background:var(--success-soft)}.save-dot{background:var(--success);width:9px;height:9px;box-shadow:0 0 0 3px color-mix(in srgb, var(--success) 18%, transparent);transition:background-color var(--t-med) var(--ease), box-shadow var(--t-med) var(--ease);border-radius:50%;flex:none}.dirty .save-dot,.save-dot.dirty{background:var(--warning);box-shadow:0 0 0 3px color-mix(in srgb, var(--warning) 22%, transparent)}.saving .save-dot,.save-dot.saving{background:var(--info);box-shadow:0 0 0 3px color-mix(in srgb, var(--info) 22%, transparent)}.patient-alerts{flex-wrap:wrap;gap:8px;display:flex}.alert-chip{border:1px solid var(--line);border-radius:var(--r-pill);max-width:100%;min-height:32px;color:var(--ink-2);background:var(--surface);font-size:var(--fs-xs);line-height:var(--lh-snug);animation:vt-pop .46s var(--ease-pop) .12s backwards;align-items:center;gap:7px;padding:5px 12px 5px 10px;display:inline-flex}.alert-chip svg{flex:none}.alert-chip b{font-size:var(--fs-2xs);letter-spacing:.06em;text-transform:uppercase;font-weight:800}.alert-chip.danger{border-color:var(--danger-line);color:var(--danger-ink);background:var(--danger-soft);font-weight:600}.alert-chip.warning{border-color:var(--warning-line);color:var(--warning-ink);background:var(--warning-tint);font-weight:600}.alert-chip.neutral{color:var(--muted);background:var(--surface-2)}.alert-chip.neutral svg{color:var(--success)}.record-context{border-top:1px dashed var(--line);color:var(--muted);font-size:var(--fs-xs);flex-wrap:wrap;align-items:center;gap:6px 14px;padding-top:12px;display:flex}.record-context svg{color:var(--brand-ink)}.record-context strong{color:var(--ink);font-size:var(--fs-xs);margin-left:-8px;font-weight:700}.record-context>span{font-variant-numeric:tabular-nums}.readonly-badge{border-radius:var(--r-pill);color:var(--ink-2);background:var(--surface-3);font-size:var(--fs-2xs);align-items:center;gap:5px;margin-left:auto;padding:3px 10px;font-weight:700;display:inline-flex}.record-tabbar{z-index:8;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(12px)saturate(140%);backdrop-filter:blur(12px)saturate(140%);justify-content:space-between;align-items:center;gap:12px;padding:10px 24px;display:flex;position:sticky;top:68px}.clinical-record-tabs{border-radius:var(--r-md);background:var(--surface-3);gap:2px;min-width:0;padding:4px;display:flex}.clinical-record-tabs button{border-radius:var(--r-sm);min-height:36px;color:var(--muted);font-size:var(--fs-sm);white-space:nowrap;transition:color var(--t-fast) var(--ease), background-color var(--t-med) var(--ease), box-shadow var(--t-med) var(--ease);background:0 0;border:0;align-items:center;gap:7px;padding:0 14px;font-weight:650;display:inline-flex}.clinical-record-tabs button:hover{color:var(--ink)}.clinical-record-tabs button.active{color:var(--brand-ink);background:var(--surface);box-shadow:var(--shadow-sm)}.tabbar-patient{opacity:0;pointer-events:none;min-width:0;transition:opacity var(--t-med) var(--ease), transform var(--t-med) var(--ease);align-items:center;gap:8px;display:flex;transform:translateY(4px)}.record-tabbar.is-compact .tabbar-patient{opacity:1;transform:none}.tabbar-patient strong{color:var(--ink);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tabbar-allergy{border-radius:var(--r-pill);color:var(--danger-ink);background:var(--danger-soft);font-size:var(--fs-2xs);white-space:nowrap;align-items:center;gap:4px;padding:2px 8px;font-weight:700;display:inline-flex}.form-permission-note{border:1px solid var(--warning-line);border-radius:var(--r-md);color:var(--warning-ink);background:var(--warning-tint);font-size:var(--fs-sm);align-items:center;gap:8px;margin:18px 24px 0;padding:10px 12px;display:flex}.clinical-form-sections{padding:8px 24px 28px;display:grid}.clinical-section{animation:vt-rise .48s var(--ease-out) backwards;padding:22px 0 6px}.clinical-section+.clinical-section{border-top:1px solid var(--line-soft)}.clinical-section:nth-child(2){animation-delay:50ms}.clinical-section:nth-child(3){animation-delay:.1s}.clinical-section:nth-child(4){animation-delay:.15s}.clinical-section-title{color:var(--ink);font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:10px;margin-bottom:16px;font-weight:800;display:flex}.clinical-section-title span{width:24px;height:24px;color:var(--brand-ink);background:var(--brand-soft);font-size:var(--fs-2xs);letter-spacing:0;border-radius:8px;place-items:center;display:grid}.clinical-section-body{gap:20px;display:grid}.clinical-field{gap:8px;min-width:0;display:grid}.field-head{justify-content:space-between;align-items:flex-end;gap:12px;min-height:32px;display:flex}.field-label{flex-wrap:wrap;align-items:baseline;gap:2px 10px;min-width:0;display:flex}.field-label label{color:var(--ink);font-size:var(--fs-sm);font-weight:700}.field-label label i{color:var(--accent-ink);margin-left:3px;font-style:normal}.field-label small{color:var(--muted);font-size:var(--fs-xs)}.field-tools{flex:none;align-items:center;gap:6px;min-height:32px;margin-left:auto;display:flex}.field-tools:empty{min-width:0}.clinical-textarea,.clinical-date{border:1px solid var(--line-strong);border-radius:var(--r-md);width:100%;color:var(--ink);background:var(--surface);font:inherit;transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease), background-color var(--t-med) var(--ease);outline:0}.clinical-textarea{min-height:calc(var(--min-rows,3) * 1.65em + 28px);resize:vertical;field-sizing:content;font-size:var(--fs-md);padding:13px 16px;line-height:1.65}.clinical-date{min-height:48px;font-size:var(--fs-md);font-variant-numeric:tabular-nums;padding:10px 14px}.clinical-textarea:hover:not([readonly]),.clinical-date:hover:not([readonly]){border-color:color-mix(in srgb, var(--brand) 40%, var(--line-strong))}.clinical-textarea:focus,.clinical-date:focus{border-color:var(--brand);box-shadow:var(--ring)}.clinical-textarea[readonly],.clinical-date[readonly]{resize:none;border-color:var(--line);color:var(--ink-2);background:var(--surface-2)}.clinical-textarea[readonly]:focus,.clinical-date[readonly]:focus{box-shadow:none}.clinical-split{gap:20px;display:grid}.vital-fieldset{border:0;min-width:0;margin:0;padding:0}.vital-fieldset legend{color:var(--ink);font-size:var(--fs-sm);margin-bottom:8px;padding:0;font-weight:700}.vital-fieldset legend small{color:var(--muted);font-size:var(--fs-xs);margin-left:8px;font-weight:400}.vital-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.vital-card{border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);cursor:text;min-width:0;transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);gap:2px;padding:10px 12px 8px;display:grid}.vital-card:focus-within{border-color:var(--brand);box-shadow:var(--ring)}.vital-name{color:var(--muted);font-size:var(--fs-2xs);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.vital-input{align-items:baseline;gap:4px;display:flex}.vital-input input{width:100%;min-width:0;color:var(--ink);font:inherit;font-size:var(--fs-lg);font-variant-numeric:tabular-nums;appearance:textfield;background:0 0;border:0;outline:0;padding:0;font-weight:700}.vital-input input:focus{box-shadow:none}.vital-input input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.vital-input input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.vital-input em{color:var(--muted);font-size:var(--fs-xs);font-style:normal;font-weight:600}.status-signed .vital-card{border-color:var(--line);background:var(--surface-2);cursor:default}.vital-card:has(input[readonly]){border-color:var(--line);background:var(--surface-2);cursor:default}.clinical-form-actions,.signed-footer{z-index:6;border-top:1px solid var(--line);background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(12px)saturate(140%);backdrop-filter:blur(12px)saturate(140%);align-items:center;gap:10px;min-height:72px;padding:12px 24px;display:flex;position:sticky;bottom:0}.save-status{align-items:center;gap:10px;min-width:0;margin-right:auto;display:flex}.save-status>span:last-child{gap:1px;min-width:0;display:grid}.save-status strong{color:var(--ink);font-size:var(--fs-sm);font-weight:650}.save-status small{color:var(--muted);font-size:var(--fs-xs);white-space:nowrap}.save-status kbd{border:1px solid var(--line-strong);color:var(--ink-2);background:var(--surface-2);font:inherit;font-size:var(--fs-2xs);border-bottom-width:2px;border-radius:5px;padding:1px 5px;font-weight:700}.clinical-form-actions .button{min-height:46px}.finalize-button.button.primary{font-size:var(--fs-md);padding:0 22px}.signed-footer{background:color-mix(in srgb, var(--success-soft) 92%, transparent);gap:12px}.signed-seal{width:34px;height:34px;color:var(--on-brand);background:var(--success);animation:vt-pop .52s var(--ease-pop) backwards;border-radius:50%;flex:none;place-items:center;display:grid}.signed-footer>div{gap:2px;display:grid}.signed-footer strong{color:var(--success-ink);font-size:var(--fs-sm)}.signed-footer p{color:var(--ink-2);font-size:var(--fs-xs)}.document-workspace{min-height:520px;animation:vt-fade var(--t-med) var(--ease) backwards;grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr);display:grid}.document-list{border-bottom:1px solid var(--line);background:var(--surface-2);min-width:0}.document-list-heading{justify-content:space-between;align-items:center;gap:8px;min-height:60px;padding:12px 16px;display:flex}.document-list-heading>div{gap:1px;min-width:0;display:grid}.document-list-heading strong{color:var(--ink);font-size:var(--fs-sm);font-weight:700}.document-list-heading small{color:var(--muted);font-size:var(--fs-xs)}.document-new{border:1px solid var(--brand-line);border-radius:var(--r-sm);min-height:34px;color:var(--brand-ink);background:var(--surface);font-size:var(--fs-xs);transition:background-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);align-items:center;gap:5px;padding:0 12px;font-weight:700;display:inline-flex}.document-new:hover{background:var(--brand-soft)}.document-new:active{transform:scale(.97)}.document-cards{align-content:start;gap:4px;max-height:232px;padding:0 8px 8px;display:grid;overflow-y:auto}.document-card{border-radius:var(--r-md);width:100%;min-width:0;color:inherit;text-align:left;cursor:pointer;transition:background-color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);background:0 0;border:1px solid #0000;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid;position:relative}.document-card:hover{background:var(--surface)}.document-card.active{border-color:var(--brand-line);background:var(--surface);box-shadow:var(--shadow-xs)}.document-card.is-new{cursor:default;animation:vt-pop .38s var(--ease-pop) backwards;border-style:dashed}.document-card-icon{border-radius:var(--r-sm);width:32px;height:32px;color:var(--purple-ink);background:var(--purple-soft);place-items:center;display:grid}.document-card-icon.exam{color:var(--info-ink);background:var(--info-soft)}.document-card-main{gap:1px;min-width:0;display:grid}.document-card-main strong{color:var(--ink);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.document-card-main small{color:var(--muted);font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.document-status.status-pill{padding:2px 8px}.document-editor{flex-direction:column;min-width:0;display:flex;position:relative}.document-editor-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:72px;padding:16px 24px;display:flex}.document-editor-heading>div{gap:2px;min-width:0;display:grid}.document-editor-heading span{color:var(--brand-ink);font-size:var(--fs-2xs);letter-spacing:.1em;font-weight:800}.document-editor-heading h3{color:var(--ink);font-size:var(--fs-lg);letter-spacing:-.01em;font-weight:700}.document-editor-heading small{color:var(--muted);font-size:var(--fs-xs);font-variant-numeric:tabular-nums}.document-editor-heading select{border:1px solid var(--line-strong);border-radius:var(--r-pill);height:38px;color:var(--ink);background-color:var(--surface);font-size:var(--fs-sm);padding:0 32px 0 12px;font-weight:650}.exam-status-select.success{border-color:color-mix(in srgb, var(--success) 40%, transparent);color:var(--success-ink);background-color:var(--success-soft)}.exam-status-select.warning{border-color:var(--warning-line);color:var(--warning-ink);background-color:var(--warning-tint)}.exam-status-select.info{border-color:var(--info-line);color:var(--info-ink);background-color:var(--info-tint)}.exam-status-select.purple{border-color:var(--purple-line);color:var(--purple-ink);background-color:var(--purple-tint)}.exam-status-select.danger{border-color:var(--danger-line);color:var(--danger-ink);background-color:var(--danger-tint)}.document-fields{flex:1;align-content:start;gap:16px;padding:20px 24px 24px;display:grid}.document-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.document-form-grid>label,.document-textarea{min-width:0;color:var(--ink-2);font-size:var(--fs-xs);gap:6px;font-weight:650;display:grid}.document-form-grid .wide{grid-column:1/-1}.document-textarea .field-head{min-height:28px}.document-textarea .field-label label{color:var(--ink-2);font-size:var(--fs-xs);font-weight:650}.document-textarea .field-tools{min-height:28px}.document-form-grid input,.document-form-grid textarea{border:1px solid var(--line-strong);border-radius:var(--r-sm);width:100%;min-height:42px;color:var(--ink);background:var(--surface);font:inherit;font-size:var(--fs-sm);font-weight:400;line-height:var(--lh-body);transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);outline:0;padding:10px 12px}.document-form-grid textarea{resize:vertical;field-sizing:content;min-height:96px;font-size:var(--fs-md);line-height:1.6}.document-form-grid input:focus,.document-form-grid textarea:focus{border-color:var(--brand);box-shadow:var(--ring)}.document-form-grid input:disabled,.document-form-grid textarea:disabled{opacity:1;border-color:var(--line);color:var(--ink-2);background:var(--surface-2)}.prescription-item{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-xs);animation:vt-rise .42s var(--ease-out) backwards;gap:14px;padding:16px;display:grid}.prescription-item>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.prescription-item>header strong{color:var(--ink);font-size:var(--fs-sm);align-items:center;gap:8px;font-weight:700;display:inline-flex}.prescription-item>header strong span{width:24px;height:24px;color:var(--purple-ink);background:var(--purple-soft);font-size:var(--fs-2xs);border-radius:8px;place-items:center;display:grid}.document-remove,.attachment-remove{border-radius:var(--r-sm);min-height:32px;color:var(--danger-ink);font-size:var(--fs-xs);transition:background-color var(--t-fast) var(--ease);background:0 0;border:0;align-items:center;gap:5px;padding:0 10px;font-weight:650;display:inline-flex}.document-remove:hover:not(:disabled),.attachment-remove:hover:not(:disabled){background:var(--danger-soft)}.document-add-row{border:1.5px dashed var(--brand-line);border-radius:var(--r-md);min-height:44px;color:var(--brand-ink);background:var(--brand-tint);font-size:var(--fs-sm);transition:background-color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);justify-content:center;align-items:center;gap:6px;font-weight:650;display:flex}.document-add-row:hover{border-color:var(--brand);background:var(--brand-soft)}.document-actions{z-index:6;border-top:1px solid var(--line);background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);justify-content:flex-end;align-items:center;gap:10px;min-height:68px;padding:12px 24px;display:flex;position:sticky;bottom:0}.document-save-state{color:var(--muted);font-size:var(--fs-sm);align-items:center;gap:8px;margin-right:auto;display:inline-flex}.document-save-state:before{content:"";background:var(--success);border-radius:50%;width:8px;height:8px}.document-save-state.dirty:before{background:var(--warning)}.document-actions .button{min-height:42px}.document-placeholder{min-height:160px;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:24px 16px;display:flex}.document-editor>.document-placeholder{flex:1;min-height:300px}.document-placeholder .page-spinner{width:20px;height:20px;margin:0}.document-placeholder .empty-icon{width:44px;height:44px;animation:vt-pop .48s var(--ease-pop) backwards;margin-bottom:4px}.document-placeholder strong{color:var(--ink);font-size:var(--fs-sm)}.document-placeholder small{max-width:260px;font-size:var(--fs-xs);line-height:var(--lh-body)}.document-placeholder .button{margin-top:8px}.attachment-section{border-top:1px solid var(--line-soft);gap:10px;padding-top:18px;display:grid}.attachment-section>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.attachment-section>header>div{gap:2px;display:grid}.attachment-section>header strong{color:var(--ink);font-size:var(--fs-sm);font-weight:700}.attachment-section>header small{color:var(--muted);font-size:var(--fs-xs)}.attachment-upload{cursor:pointer}.attachment-upload.disabled{opacity:.65;cursor:wait}.attachment-upload .page-spinner{width:13px;height:13px;margin:0}.attachment-list{gap:8px;display:grid}.attachment-row{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);min-width:0;min-height:56px;animation:vt-rise .38s var(--ease-out) backwards;transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-med) var(--ease);grid-template-columns:38px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.attachment-row:hover{border-color:var(--line-strong);box-shadow:var(--shadow-sm)}.attachment-type{border-radius:var(--r-sm);width:38px;height:38px;color:var(--info-ink);background:var(--info-soft);font-size:var(--fs-2xs);letter-spacing:.04em;place-items:center;font-weight:800;display:grid}.attachment-type.pdf{color:var(--danger-ink);background:var(--danger-soft)}.attachment-row>div{gap:1px;min-width:0;display:grid}.attachment-row strong{color:var(--ink);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.attachment-row small{color:var(--muted);font-size:var(--fs-xs);font-variant-numeric:tabular-nums}.attachment-download{border-radius:var(--r-sm);min-height:34px;color:var(--brand-ink);background:var(--brand-soft);font-size:var(--fs-xs);transition:background-color var(--t-fast) var(--ease);align-items:center;gap:6px;padding:0 12px;font-weight:700;text-decoration:none;display:inline-flex}.attachment-download:hover{background:color-mix(in srgb, var(--brand-soft) 70%, var(--brand-line))}.attachment-remove{justify-content:center;width:34px;padding:0}.attachment-empty{border:1.5px dashed var(--line-strong);border-radius:var(--r-md);color:var(--muted);font-size:var(--fs-sm);justify-content:center;align-items:center;gap:8px;padding:18px;display:flex}.upload-state{border:1px solid var(--brand-line);border-radius:var(--r-md);color:var(--ink-2);background:var(--brand-tint);align-items:center;gap:10px;padding:10px 12px;display:flex}.upload-state .page-spinner{width:18px;height:18px;margin:0}.upload-state>div{gap:2px;min-width:0;display:grid}.upload-state strong{font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.upload-state small{color:var(--muted);font-size:var(--fs-xs)}.document-readonly-note{border:1px solid var(--line);border-radius:var(--r-md);color:var(--muted);background:var(--surface-2);font-size:var(--fs-sm);align-items:center;gap:8px;margin:0 24px 20px;padding:10px 12px;display:flex}.clinical-timeline{overscroll-behavior:contain;margin:0;padding:10px 10px 16px;list-style:none;overflow-y:auto}.timeline-item{position:relative}.timeline-item:not(:last-child):before{content:"";z-index:0;background:var(--line);border-radius:2px;width:2px;position:absolute;top:46px;bottom:-6px;left:25px}.timeline-entry{border-radius:var(--r-md);width:100%;color:inherit;text-align:left;transition:background-color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);background:0 0;border:1px solid #0000;grid-template-columns:32px minmax(0,1fr);gap:10px;padding:10px;display:grid;position:relative}button.timeline-entry{cursor:pointer}button.timeline-entry:hover{background:var(--surface-2)}.timeline-entry.active{border-color:var(--brand-line);background:var(--brand-tint)}.timeline-dot{z-index:1;border:2px solid var(--surface);width:32px;height:32px;color:var(--brand-ink);background:var(--brand-soft);transition:transform var(--t-med) var(--ease-pop);border-radius:50%;place-items:center;display:grid;position:relative}button.timeline-entry:hover .timeline-dot{transform:scale(1.08)}.timeline-dot.type-appointment{color:var(--warning-ink);background:var(--warning-soft)}.timeline-dot.type-prescription{color:var(--purple-ink);background:var(--purple-soft)}.timeline-dot.type-exam{color:var(--info-ink);background:var(--info-soft)}.timeline-content{gap:2px;min-width:0;display:grid}.timeline-meta{justify-content:space-between;align-items:center;gap:6px;display:flex}.timeline-meta time{color:var(--muted);font-size:var(--fs-2xs);font-variant-numeric:tabular-nums;font-weight:600}.timeline-current{border-radius:var(--r-pill);color:var(--on-brand);background:var(--brand);font-size:var(--fs-2xs);padding:1px 7px;font-style:normal;font-weight:700}.timeline-content strong{color:var(--ink);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.timeline-content small{color:var(--muted);font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.timeline-content p{color:var(--ink-2);font-size:var(--fs-xs);line-height:var(--lh-snug);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:2px;display:-webkit-box;overflow:hidden}.timeline-content .status-pill{margin-top:4px;padding:2px 8px}@container editor (min-width:700px){.clinical-split{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-split{grid-template-columns:minmax(0,1fr) 220px}}@container editor (min-width:780px){.document-workspace{grid-template-rows:1fr;grid-template-columns:236px minmax(0,1fr)}.document-list{border-right:1px solid var(--line);border-bottom:0}.document-cards{max-height:none}}@container editor (max-width:679px){.shortcut-hint{display:none}}@container editor (max-width:779px){.document-cards>.document-placeholder:not([role=status]){display:none}}@container editor (max-width:560px){.record-identity{grid-template-columns:auto minmax(0,1fr)}.record-save-state{grid-column:1/-1;justify-self:start}.vital-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.document-form-grid{grid-template-columns:minmax(0,1fr)}.tabbar-patient{display:none}}@media (max-width:1360px){.clinical-workspace{grid-template-columns:248px minmax(0,1fr)}.record-browser{grid-row:1/span 2}.clinical-timeline-panel{grid-column:2;max-height:none;position:static}.clinical-timeline{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:4px;display:grid}.timeline-item:before{display:none}}@media (max-width:1050px){.clinical-page .clinical-workspace{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.clinical-page .clinical-workspace .record-browser{grid-row:auto;max-height:none;position:static}.clinical-page .clinical-timeline-panel{grid-column:auto}.clinical-workspace.has-record .record-browser,.clinical-workspace.no-record .record-editor,.clinical-workspace.no-record:not(.has-pet) .clinical-timeline-panel{display:none}.record-back{display:inline-flex}.record-list{overflow:visible}}@media (max-width:760px){.clinical-page.page{padding-inline:12px}.clinical-page .clinical-heading{align-items:stretch;margin-bottom:14px}.clinical-heading-side{justify-content:space-between;width:100%}.clinical-heading-side .button{min-height:38px;padding:0 12px}.metric-chip{min-height:36px;padding:0 10px}.metric-chip.total{display:none}.record-editor{border-radius:var(--r-lg);min-height:0;margin-inline:-4px}.record-header{gap:12px;padding:14px 16px}.patient-avatar{width:48px;height:48px;font-size:var(--fs-xl);border-radius:15px}.record-title-line h2{font-size:var(--fs-lg)}.patient-facts,.patient-tutor,.patient-tutor small{font-size:var(--fs-xs)}.patient-facts li+li:before{margin:0 7px}.record-context>span:nth-of-type(2){display:none}.record-tabbar{padding:8px 12px;top:60px}.clinical-record-tabs{width:100%}.clinical-record-tabs button{font-size:var(--fs-xs);flex:1;justify-content:center;padding:0 6px}.clinical-record-tabs button svg,.record-tabbar .tabbar-patient{display:none}.clinical-form-sections{padding:4px 16px 20px}.form-permission-note{margin:14px 16px 0}.field-label small{display:none}.clinical-textarea{font-size:var(--fs-base);padding:12px 14px}.clinical-form-actions,.signed-footer{bottom:calc(80px + env(safe-area-inset-bottom));border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-md);margin:0 8px 8px;padding:10px 12px}.clinical-form-actions{grid-template-columns:1fr 1.35fr;min-height:0;padding:8px;display:grid}.clinical-form-actions.is-dirty{border-color:var(--warning-line);box-shadow:var(--shadow-md), 0 0 0 3px color-mix(in srgb, var(--warning) 14%, transparent)}.save-status{display:none}.clinical-form-actions .button{min-height:44px;padding:0 10px}.finalize-button.button.primary{font-size:var(--fs-sm);padding:0 10px}.document-editor-heading,.document-fields{padding-inline:16px}.document-editor-heading{flex-wrap:wrap}.document-actions{bottom:calc(80px + env(safe-area-inset-bottom));border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-md);flex-wrap:wrap;margin:0 8px 8px;padding:10px 12px}.document-save-state{width:100%}.document-actions .button{flex:1}.document-readonly-note{margin-inline:16px}.attachment-section>header{flex-direction:column;align-items:flex-start}.attachment-row{grid-template-columns:38px minmax(0,1fr) auto}.attachment-download span{display:none}.attachment-row .attachment-remove{grid-column:3}.clinical-timeline{display:block}}.tutor-uploads{border:1px solid var(--warning-line);border-radius:var(--r-lg);background:linear-gradient(160deg, var(--warning-tint), var(--surface) 70%);animation:vt-rise var(--t-slow) var(--ease-out) backwards;margin:0 0 18px;padding:16px}.tutor-uploads>header{align-items:center;gap:12px;margin-bottom:12px;display:flex}.tutor-uploads-icon{border-radius:var(--r-md);width:36px;height:36px;color:var(--warning-ink);background:var(--warning-soft);flex:none;place-items:center;display:grid}.tutor-uploads h3{font-size:var(--fs-md)}.tutor-uploads header p{color:var(--muted);font-size:var(--fs-xs)}.tutor-uploads ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.tutor-uploads li{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.tutor-uploads li.is-new{border-color:var(--warning-line)}.tutor-upload-file{min-width:0;color:var(--ink-2);align-items:flex-start;gap:10px;display:flex}.tutor-upload-file svg{flex:none;margin-top:2px}.tutor-upload-file span{gap:2px;min-width:0;display:grid}.tutor-upload-file b{font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tutor-upload-file:hover b{color:var(--brand-ink);text-decoration:underline}.tutor-upload-file small,.tutor-upload-file em{color:var(--muted);font-size:var(--fs-2xs)}@media (max-width:760px){.tutor-uploads li{grid-template-columns:minmax(0,1fr) auto}.tutor-upload-actions{grid-column:1/-1}}
.clients-page .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.clients-page>.dialog-backdrop{animation:vt-fade var(--t-med) var(--ease) backwards}.clients-page .clients-heading{flex-wrap:wrap;align-items:flex-end}.clients-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.client-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.clients-page .client-metric{align-items:center;gap:14px;padding:16px 18px;display:flex}.client-metric-icon{border-radius:var(--r-md);width:46px;height:46px;color:var(--brand-ink);background:var(--brand-soft);transition:transform var(--t-med) var(--ease-pop);flex:none;place-items:center;display:grid}.client-metric:hover .client-metric-icon{transform:scale(1.06)rotate(-4deg)}.client-metric.tone-info .client-metric-icon{color:var(--info-ink);background:var(--info-soft)}.client-metric.tone-accent .client-metric-icon{color:var(--accent-ink);background:var(--accent-soft)}.client-metric-text{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:2px 8px;min-width:0;display:grid}.clients-page .client-metric-text strong{font-size:var(--fs-2xl);letter-spacing:-.03em;color:var(--ink);font-weight:750;line-height:1}.client-metric-label{color:var(--ink-2);font-size:var(--fs-md);font-weight:650}.client-metric-text small{color:var(--muted);font-size:var(--fs-2xs);grid-column:1/-1;font-weight:550}.clients-page .clients-panel{margin-top:18px;overflow:hidden}.clients-toolbar{border-bottom:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;display:flex}.clients-search{max-width:480px;height:42px;color:var(--subtle);border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease), color var(--t-fast) var(--ease);flex:auto;align-items:center;gap:10px;padding:0 14px;display:flex}.clients-search:focus-within{color:var(--brand-ink);border-color:var(--brand);box-shadow:var(--ring)}.clients-page .clients-search input{width:100%;min-width:0;height:100%;color:var(--ink);font-size:var(--fs-sm);box-shadow:none;background:0 0;border:0;outline:0;padding:0}.clients-page .clients-search input::-webkit-search-cancel-button{cursor:pointer}.clients-page .clients-filter{flex:none;display:flex}.clients-page .clients-filter button{min-height:34px;font-size:var(--fs-sm);color:var(--muted);padding:6px 14px}.clients-page .clients-filter button:hover:not(.active){color:var(--ink)}.clients-page .clients-filter button.active{color:var(--brand-ink)}.client-card{border-bottom:1px solid var(--line-soft);transition:background-color var(--t-med) var(--ease);animation:vt-rise .42s var(--ease-out) backwards;animation-delay:calc(var(--i,0) * 35ms);grid-template-columns:48px minmax(0,1fr) auto;align-items:start;gap:16px;padding:18px 22px;display:grid;position:relative}.client-card:last-child{border-bottom:0}.client-card:hover{background:var(--surface-2)}.client-card.status-blocked{box-shadow:inset 3px 0 0 var(--danger)}.client-card.status-inactive .client-avatar{filter:grayscale(.7);opacity:.75}.client-avatar{border-radius:var(--r-pill);width:48px;height:48px;color:var(--brand-ink);background:var(--brand-soft);font-size:var(--fs-md);letter-spacing:.02em;box-shadow:inset 0 0 0 1px color-mix(in srgb, currentColor 16%, transparent);-webkit-user-select:none;user-select:none;place-items:center;font-weight:750;display:grid}.client-avatar.tone-1{color:var(--accent-ink);background:var(--accent-soft)}.client-avatar.tone-2{color:var(--info-ink);background:var(--info-soft)}.client-avatar.tone-3{color:var(--warning-ink);background:var(--warning-soft)}.client-avatar.tone-4{color:var(--purple-ink);background:var(--purple-soft)}.client-avatar.large{flex:none;width:46px;height:46px}.client-content{min-width:0}.client-title{gap:6px;display:grid}.client-name{flex-wrap:wrap;align-items:center;gap:6px 10px;min-width:0;display:flex}.client-name strong{color:var(--ink);font-size:var(--fs-base);letter-spacing:-.01em;font-weight:700;line-height:var(--lh-snug)}.client-name .status-pill.neutral{color:var(--muted);background:var(--surface-3)}.client-contacts{flex-wrap:wrap;align-items:center;gap:4px 18px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.client-contacts li{min-width:0;max-width:100%}.client-contacts a{max-width:100%;color:var(--muted);font-size:var(--fs-sm);border-radius:var(--r-xs);transition:color var(--t-fast) var(--ease);align-items:center;gap:6px;text-decoration:none;display:inline-flex}.client-contacts a span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.client-contacts a svg{color:var(--subtle);transition:color var(--t-fast) var(--ease);flex:none}.client-contacts a:hover,.client-contacts a:hover svg{color:var(--brand-ink)}.client-contacts a.whatsapp{color:var(--success-ink);font-weight:600}.client-contacts a.whatsapp svg{color:var(--success)}.pet-chips{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.clients-page .pet-chips button{border:1px solid var(--line);border-radius:var(--r-pill);max-width:100%;min-height:46px;color:var(--ink);background:var(--surface);text-align:left;cursor:pointer;transition:transform var(--t-med) var(--ease-pop), border-color var(--t-fast) var(--ease), background-color var(--t-fast) var(--ease), box-shadow var(--t-med) var(--ease);align-items:center;gap:10px;padding:5px 14px 5px 5px;display:inline-flex}.clients-page .pet-chips button:hover{border-color:var(--brand-line);background:var(--brand-tint);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.clients-page .pet-chips button:active{transform:scale(.98)}.pet-chip-icon{border-radius:var(--r-pill);width:36px;height:36px;color:var(--warning-ink);background:var(--warning-soft);transition:transform var(--t-med) var(--ease-pop);flex:none;place-items:center;display:grid}.pet-chip.species-dog .pet-chip-icon{color:var(--brand-ink);background:var(--brand-soft)}.pet-chip.species-cat .pet-chip-icon{color:var(--purple-ink);background:var(--purple-soft)}.pet-chip:hover .pet-chip-icon{transform:scale(1.08)rotate(-6deg)}.pet-chip-text{gap:1px;min-width:0;line-height:1.25;display:grid}.pet-chip-text strong{color:var(--ink);font-size:var(--fs-sm);align-items:center;gap:5px;font-weight:700;display:inline-flex}.pet-chip-text small{color:var(--muted);font-size:var(--fs-2xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pet-sex{font-size:var(--fs-sm);font-weight:700;line-height:1}.pet-sex.female{color:var(--accent-ink)}.pet-sex.male{color:var(--info-ink)}.pet-birthday{border-radius:var(--r-pill);width:24px;height:24px;color:var(--accent-ink);background:var(--accent-soft);flex:none;place-items:center;margin-left:-2px;display:grid}.clients-page .pet-chips button.add-pet{border-style:dashed;border-color:var(--line-strong);color:var(--muted);font-size:var(--fs-xs);background:0 0;gap:6px;padding:5px 16px;font-weight:650}.clients-page .pet-chips button.add-pet:hover{color:var(--brand-ink);border-color:var(--brand);background:var(--brand-tint)}.client-actions{opacity:.7;transition:opacity var(--t-med) var(--ease);gap:4px;display:flex}.client-card:hover .client-actions,.client-card:focus-within .client-actions{opacity:1}.client-action{border-radius:var(--r-md);width:38px;height:38px;color:var(--muted);cursor:pointer;transition:color var(--t-fast) var(--ease), background-color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);background:0 0;border:1px solid #0000;place-items:center;display:inline-grid;position:relative}.client-action:hover{color:var(--brand-ink);background:var(--brand-soft)}.client-action.danger:hover{color:var(--danger-ink);background:var(--danger-soft)}.client-action:active{transform:scale(.94)}.client-action-label{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (hover:hover){.client-action[data-tooltip]:after{content:attr(data-tooltip);z-index:5;border-radius:var(--r-xs);color:var(--inverse-ink);background:var(--inverse-bg);box-shadow:var(--shadow-md);font-size:var(--fs-2xs);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);padding:5px 9px;font-weight:600;position:absolute;bottom:calc(100% + 6px);right:0;transform:translateY(4px)}.client-action:hover:after,.client-action:focus-visible:after{opacity:1;transition-delay:.25s;transform:none}}.clients-state{min-height:240px;color:var(--muted);font-size:var(--fs-sm);justify-content:center;align-items:center;gap:10px;padding:40px 24px;display:flex}.clients-state.empty{text-align:center;flex-direction:column}.clients-state.empty .empty-icon{animation:vt-pop .48s var(--ease-pop) backwards;margin-bottom:6px}.clients-state.empty strong{color:var(--ink);font-size:var(--fs-base)}.clients-state.empty p{max-width:40ch;color:var(--muted);font-size:var(--fs-sm);margin-bottom:8px}.clients-skeleton{display:grid}.clients-skeleton-row{border-bottom:1px solid var(--line-soft);grid-template-columns:48px minmax(0,1fr);gap:16px;padding:20px 22px;display:grid}.clients-skeleton-avatar{border-radius:var(--r-pill);width:48px;height:48px}.clients-skeleton-lines{align-content:center;gap:10px;display:grid}.clients-skeleton-lines .skeleton-line{height:12px;display:block}.clients-page .clients-pagination{border-top:1px solid var(--line);color:var(--muted);font-size:var(--fs-sm);justify-content:space-between;padding:12px 20px}.clients-page .clients-pagination button{border-color:var(--line);min-height:36px;color:var(--ink-2);background:var(--surface);font-size:var(--fs-sm);padding:0 14px}.clients-page .clients-dialog{width:min(720px,100%)}.clients-dialog-title{align-items:center;gap:14px;min-width:0;display:flex}.clients-page .clients-dialog>header{align-items:center}.clients-page .clients-dialog>header h2{margin-bottom:2px}.clients-dialog-badge{border-radius:var(--r-md);width:46px;height:46px;color:var(--brand-ink);background:var(--brand-soft);animation:vt-pop .48s var(--ease-pop) 80ms backwards;flex:none;place-items:center;display:grid}.clients-dialog-badge.species-cat{color:var(--purple-ink);background:var(--purple-soft)}.clients-dialog-badge.species-other{color:var(--warning-ink);background:var(--warning-soft)}.clients-page .clients-dialog>header>button{place-items:center;display:grid}.clients-page .clients-form{padding:4px 24px 0}.clients-page .clients-form>.form-error{border:1px solid var(--danger-line);font-size:var(--fs-sm);margin:18px 0 0;padding:10px 12px}.clients-form-section{border:0;min-width:0;margin:0;padding:20px 0 0}.clients-form-section+.clients-form-section{border-top:1px solid var(--line-soft);margin-top:20px}.clients-form-section legend{float:left;width:100%;color:var(--ink);font-size:var(--fs-sm);letter-spacing:-.005em;align-items:center;gap:9px;margin-bottom:14px;padding:0;font-weight:700;display:flex}.clients-form-section legend+*{clear:both}.clients-form-section-icon{border-radius:var(--r-sm);width:28px;height:28px;color:var(--brand-ink);background:var(--brand-soft);place-items:center;display:grid}.clients-form-section-hint{clear:both;color:var(--muted);font-size:var(--fs-xs);margin:-6px 0 14px}.clients-page .clients-form .form-grid{gap:14px 16px}.clients-page .clients-form .form-grid label{font-size:var(--fs-xs)}.clients-form-section.health{border:1px solid var(--warning-line);border-radius:var(--r-lg);background:var(--warning-tint);margin-top:20px;padding:16px 18px 18px}.clients-form-section+.clients-form-section.health{border-top-color:var(--warning-line)}.clients-form-section.health+.clients-form-section{border-top:0;padding-top:4px}.clients-form-section.health legend{float:left;color:var(--warning-ink)}.clients-form-section.health .clients-form-section-icon{color:var(--warning-ink);background:var(--warning-soft)}.clients-form-section.health .clients-form-section-hint{color:var(--warning-ink)}.clients-page .clients-form .health-field.has-alert input,.clients-page .clients-form .health-field.has-alert textarea{border-color:var(--warning);font-weight:600}.clients-page .clients-check{color:var(--ink-2);font-size:var(--fs-sm);cursor:pointer;align-items:flex-start;gap:10px;margin-top:14px;display:flex}.clients-page .clients-check input{flex:none;margin-top:2px}.clients-check>span{gap:2px;display:grid}.clients-check small{color:var(--muted);font-size:var(--fs-2xs)}.clients-page .clients-form .pet-history-action{border:1px solid var(--brand-line);border-radius:var(--r-md);background:var(--brand-tint);gap:12px;margin:18px 0 0;padding:12px 14px}.clients-page .clients-form .pet-history-action strong{color:var(--brand-ink);font-size:var(--fs-sm)}.clients-page .clients-form .pet-history-action small{font-size:var(--fs-xs)}.clients-page .clients-form .pet-history-action .metric-icon{flex:none}.clients-page .clients-form footer{z-index:3;border-top:1px solid var(--line);background:var(--surface-raised);margin:24px -24px 0;padding:14px 24px;position:sticky;bottom:0}.clients-page .clients-form footer .button{justify-content:center}@media (max-width:1050px){.clients-toolbar{flex-wrap:wrap}.clients-search{flex-basis:100%;max-width:none}}@media (max-width:760px){.clients-page .clients-heading{flex-direction:column;align-items:stretch;gap:14px;margin-bottom:18px}.clients-page .clients-heading p{max-width:none}.clients-heading-actions{grid-template-columns:1fr;gap:8px;display:grid}.clients-page .clients-heading .clients-new{width:100%;min-height:44px;font-size:var(--fs-md);order:-1;justify-content:center;padding:0 16px}.client-metrics{gap:8px}.clients-page .client-metric{flex-direction:column;align-items:flex-start;gap:10px;padding:12px}.client-metric-icon{border-radius:var(--r-sm);width:34px;height:34px}.client-metric-icon svg{width:17px;height:17px}.client-metric-text{grid-template-columns:1fr}.clients-page .client-metric-text strong{font-size:var(--fs-xl)}.client-metric-label{font-size:var(--fs-xs)}.clients-page .clients-panel{box-shadow:none;background:0 0;border:0;margin-top:14px;overflow:visible}.clients-toolbar{background:0 0;border:0;flex-direction:column;align-items:stretch;gap:10px;padding:0 0 12px}.clients-search{background:var(--surface);flex:none;max-width:none;height:46px}.clients-page .clients-search input{font-size:var(--fs-base)}.clients-page .clients-filter{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.clients-page .clients-filter button{min-height:38px;font-size:var(--fs-xs);padding:6px 4px}.client-list{gap:12px;display:grid}.client-card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-sm);grid-template-columns:44px minmax(0,1fr);gap:12px;padding:16px}.client-card:last-child{border-bottom:1px solid var(--line)}.client-card:hover{background:var(--surface)}.client-card.status-blocked{border-color:var(--danger-line);box-shadow:inset 3px 0 0 var(--danger), var(--shadow-sm)}.client-avatar{width:44px;height:44px;font-size:var(--fs-sm)}.client-content{display:contents}.client-title{align-self:center;gap:0}.client-contacts{grid-column:1/-1;gap:8px}.client-contacts a{border:1px solid var(--line);border-radius:var(--r-pill);min-height:36px;color:var(--ink-2);background:var(--surface-2);font-size:var(--fs-sm);padding:0 12px}.client-contacts a.whatsapp{border-color:color-mix(in srgb, var(--success) 35%, transparent);background:var(--success-soft)}.client-title{display:contents}.client-name{align-self:center}.pet-chips{grid-column:1/-1;grid-template-columns:1fr;gap:8px;margin-top:0;display:grid}.clients-page .pet-chips button{border-radius:var(--r-md);background:var(--surface-2);width:100%;min-height:52px}.clients-page .pet-chips button.add-pet{justify-content:center;min-height:44px}.pet-birthday{margin-left:auto}.client-actions{opacity:1;border-top:1px solid var(--line-soft);grid-column:1/-1;grid-template-columns:1fr 1fr;gap:8px;padding-top:12px;display:grid}.client-action{border-color:var(--line);width:100%;height:42px;color:var(--ink-2);background:var(--surface);font-size:var(--fs-sm);justify-content:center;gap:8px;font-weight:650;display:inline-flex}.client-action.danger{color:var(--danger-ink);border-color:var(--danger-line);background:var(--danger-tint)}.client-action-label{clip:auto;width:auto;height:auto;position:static;overflow:visible}.clients-state{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.clients-skeleton{gap:12px}.clients-skeleton-row{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);padding:16px}.clients-page .clients-pagination{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);margin-top:12px;padding:10px 12px}.clients-page .clients-dialog>header{padding:16px 18px 14px}.clients-dialog-title{gap:12px}.clients-dialog-badge,.client-avatar.large{width:40px;height:40px}.clients-page .clients-dialog h2{font-size:var(--fs-lg)}.clients-page .clients-form{padding:0 18px}.clients-form-section.health{padding:14px}.clients-page .clients-form .form-grid input,.clients-page .clients-form .form-grid select,.clients-page .clients-form .form-grid textarea{min-height:46px;font-size:var(--fs-base)}.clients-page .clients-form footer{padding:12px 18px calc(12px + env(safe-area-inset-bottom));grid-template-columns:1fr 1.4fr;margin:20px -18px 0;display:grid}.clients-page .clients-form footer.with-danger{grid-template-columns:46px 1fr 1.4fr}.clients-page .clients-form footer .button{min-height:46px;padding:0 12px}.clients-page .clients-form footer.with-danger>span{display:none}.clients-page .clients-form footer .button.danger-button{padding:0}.clients-page .clients-form footer .button.danger-button .pet-delete-label{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (max-width:380px){.client-metric-text small{display:none}}.clients-page .client-metric,.clients-page .client-metric-text{min-width:0}.clients-page .client-metric-text{overflow-wrap:anywhere}
.finance-page{--fin-gap:16px;width:min(1500px,100%);min-width:0}.finance-page>*{scroll-margin-top:84px}.finance-page .tone-success,.finance-dialog .tone-success{--tone:var(--success);--tone-ink:var(--success-ink);--tone-soft:var(--success-soft)}.finance-page .tone-info,.finance-dialog .tone-info{--tone:var(--info);--tone-ink:var(--info-ink);--tone-soft:var(--info-soft)}.finance-page .tone-danger,.finance-dialog .tone-danger{--tone:var(--danger);--tone-ink:var(--danger-ink);--tone-soft:var(--danger-soft)}.finance-page .tone-warning,.finance-dialog .tone-warning{--tone:var(--warning);--tone-ink:var(--warning-ink);--tone-soft:var(--warning-soft)}.finance-page .money,.finance-dialog .money{font-variant-numeric:tabular-nums;white-space:nowrap}.finance-page .status-pill.neutral,.finance-dialog .status-pill.neutral{color:var(--muted);background:var(--surface-3)}.finance-heading{align-items:flex-end}.finance-heading>div:first-child{min-width:0}.finance-heading-actions{flex-wrap:wrap;gap:10px;display:flex}.finance-jump{flex-wrap:wrap;align-items:center;gap:6px;margin-top:14px;display:flex}.finance-jump>span{color:var(--subtle);font-size:var(--fs-2xs);letter-spacing:.08em;text-transform:uppercase;margin-right:4px;font-weight:700}.finance-jump a{border:1px solid var(--line);border-radius:var(--r-pill);color:var(--ink-2);background:var(--surface);font-size:var(--fs-xs);transition:color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), background-color var(--t-fast) var(--ease);padding:5px 12px;font-weight:600;text-decoration:none}.finance-jump a:hover{color:var(--brand-ink);border-color:var(--brand-line);background:var(--brand-tint)}.finance-summary{gap:var(--fin-gap);grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:24px;display:grid}.finance-summary.limited{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-metric{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);min-width:0;box-shadow:var(--shadow-sm);transition:transform var(--t-med) var(--ease), box-shadow var(--t-med) var(--ease), border-color var(--t-med) var(--ease);gap:6px;padding:18px 20px 16px;display:grid;position:relative;overflow:hidden}.finance-metric:before{content:"";background:var(--tone);opacity:.85;height:3px;position:absolute;inset:0 0 auto}.finance-metric:hover{box-shadow:var(--shadow-md);border-color:color-mix(in srgb, var(--tone) 35%, var(--line));transform:translateY(-2px)}.finance-metric>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.finance-metric small{color:var(--ink-2);font-size:var(--fs-sm);font-weight:650}.finance-metric-icon{border-radius:var(--r-sm);width:34px;height:34px;color:var(--tone-ink);background:var(--tone-soft);transition:transform var(--t-med) var(--ease-pop);flex:none;place-items:center;display:grid}.finance-metric:hover .finance-metric-icon{transform:scale(1.08)rotate(-4deg)}.finance-metric strong{min-width:0;color:var(--tone-ink);font-size:var(--fs-2xl);letter-spacing:-.03em;text-overflow:ellipsis;font-weight:750;line-height:1.1;overflow:hidden}.finance-metric p{color:var(--muted);font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.finance-skeleton{width:140px;height:31px;display:block}.finance-tabs{border-bottom:1px solid var(--line);gap:4px;display:flex}.finance-tabs button{border-radius:var(--r-sm) var(--r-sm) 0 0;min-height:46px;color:var(--muted);font-size:var(--fs-sm);cursor:pointer;transition:color var(--t-fast) var(--ease), background-color var(--t-fast) var(--ease);background:0 0;border:0;align-items:center;gap:8px;padding:0 16px;font-weight:650;display:inline-flex;position:relative}.finance-tabs button:after{content:"";background:var(--brand);height:3px;transition:transform var(--t-med) var(--ease-pop);border-radius:3px 3px 0 0;position:absolute;bottom:-1px;left:10px;right:10px;transform:scaleX(0)}.finance-tabs button:hover{color:var(--ink);background:var(--surface-3)}.finance-tabs button.active{color:var(--brand-ink)}.finance-tabs button.active:after{transform:scaleX(1)}.finance-tabs button span{border-radius:var(--r-pill);min-width:24px;color:var(--muted);background:var(--surface-3);font-size:var(--fs-2xs);font-variant-numeric:tabular-nums;text-align:center;padding:1px 7px;font-weight:700}.finance-tabs button.active span{color:var(--brand-ink);background:var(--brand-soft)}.finance-tabs button i{background:var(--success);width:8px;height:8px;box-shadow:0 0 0 3px var(--success-soft);border-radius:50%}.finance-tab-body{animation:vt-fade var(--t-med) var(--ease) backwards}.finance-filters{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-xs);flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0;padding:10px;display:flex}.finance-search{border:1px solid var(--line-strong);border-radius:var(--r-sm);min-width:0;min-height:42px;color:var(--subtle);background:var(--surface);transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);flex:260px;align-items:center;gap:8px;padding:0 12px;display:flex}.finance-search:focus-within,.finance-period:focus-within{border-color:var(--brand);box-shadow:var(--ring)}.finance-filters input{width:100%;min-width:0;height:40px;color:var(--ink);font:inherit;font-size:var(--fs-sm);background:0 0;border:0;outline:0;padding:0}.finance-filters input:focus{box-shadow:none}.finance-period{border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);min-width:0;min-height:42px;transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);align-items:stretch;display:flex}.finance-period label{align-items:center;gap:8px;min-width:0;padding:0 10px;display:flex}.finance-period label+label{border-left:1px solid var(--line)}.finance-period label>span{color:var(--muted);font-size:var(--fs-2xs);letter-spacing:.04em;text-transform:uppercase;font-weight:700}.finance-period input{font-variant-numeric:tabular-nums;width:132px}.finance-filters select{border:1px solid var(--line-strong);border-radius:var(--r-sm);min-width:0;min-height:42px;color:var(--ink);background-color:var(--surface);font:inherit;font-size:var(--fs-sm);cursor:pointer;flex:0 180px;padding:0 12px}.finance-panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:68px;padding:16px 20px;display:flex}.finance-panel-head>div{flex:1;min-width:0}.finance-panel-head h2{font-size:var(--fs-base);letter-spacing:-.01em;font-weight:700}.finance-panel-head p{color:var(--muted);font-size:var(--fs-xs);margin-top:2px}.finance-panel-head .button.small svg{margin-left:2px}.finance-overview{gap:var(--fin-gap);grid-template-columns:minmax(0,1fr) 340px;align-items:start;min-width:0;display:grid}.finance-recent,.finance-accounts,.cash-overview,.cash-session-card,.cash-movements{min-width:0;overflow:hidden}.finance-entry-head,.finance-entry-row{grid-template-columns:104px minmax(0,2fr) minmax(0,1.25fr) minmax(0,.8fr) 112px minmax(132px,.9fr) 116px;align-items:center;gap:14px;padding:0 20px;display:grid}.finance-entry-head{border-bottom:1px solid var(--line);min-height:40px;color:var(--muted);background:var(--surface-2);font-size:var(--fs-2xs);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.finance-entry-head span:nth-child(6){text-align:right}.finance-entry-list{min-width:0}.finance-entry-row{border-bottom:1px solid var(--line-soft);min-width:0;min-height:66px;transition:background-color var(--t-fast) var(--ease);padding-block:10px}.finance-entry-row:last-child{border-bottom:0}.finance-entry-row:hover{background:var(--surface-2)}.finance-entry-row{animation:vt-rise .42s var(--ease-out) backwards}.finance-entry-row:nth-child(2){animation-delay:30ms}.finance-entry-row:nth-child(3){animation-delay:60ms}.finance-entry-row:nth-child(4){animation-delay:90ms}.finance-entry-row:nth-child(5){animation-delay:.12s}.finance-entry-row:nth-child(n+6){animation-delay:.15s}.finance-entry-row.is-canceled{opacity:.66}.entry-date{gap:1px;min-width:0;display:grid}.entry-date small{color:var(--muted);font-size:var(--fs-2xs);display:none}.entry-date time{color:var(--ink-2);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;font-weight:600}.finance-entry-row:has(.status-pill.danger) .entry-date time{color:var(--danger-ink)}.entry-main{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:2px;padding:4px 0;display:grid}.entry-main strong{color:var(--ink);font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.entry-main:hover strong{color:var(--brand-ink)}.entry-main small{color:var(--muted);font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.entry-party,.entry-method{min-width:0;color:var(--ink-2);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.entry-method{color:var(--muted)}.entry-status{min-width:0}.finance-status.status-pill{max-width:100%}.entry-value{text-align:right;gap:2px;min-width:0;display:grid}.entry-value strong{font-size:var(--fs-md);text-overflow:ellipsis;font-weight:700;overflow:hidden}.entry-value strong.receivable{color:var(--success-ink)}.entry-value strong.payable{color:var(--danger-ink)}.entry-value small{color:var(--muted);font-size:var(--fs-2xs);font-variant-numeric:tabular-nums;white-space:nowrap}.entry-actions{justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex}.entry-pay{border:1px solid var(--brand-line);border-radius:var(--r-sm);min-height:34px;color:var(--brand-ink);background:var(--brand-tint);font-size:var(--fs-xs);cursor:pointer;transition:background-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease), color var(--t-fast) var(--ease);padding:0 12px;font-weight:700}.entry-pay:hover{color:var(--on-brand);background:var(--brand);border-color:#0000}.entry-pay:active{transform:scale(.97)}.finance-entry-row.payable .entry-pay{color:var(--ink-2);border-color:var(--line-strong);background:var(--surface)}.finance-entry-row.payable .entry-pay:hover{color:var(--ink);background:var(--surface-3)}.entry-more{border-radius:var(--r-sm);width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.entry-more:hover{color:var(--ink);background:var(--surface-3)}.finance-entry-list.compact .finance-entry-row{grid-template-columns:92px minmax(0,1fr) 100px 150px 120px}.finance-entry-list.compact .entry-party,.finance-entry-list.compact .entry-method,.finance-entry-list:not(.compact) .entry-main small{display:none}.finance-entry-list:not(.compact) .entry-main strong{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.finance-state{min-height:200px;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:28px 24px;display:flex}.finance-state .page-spinner{width:26px;height:26px;margin:0}.finance-state .empty-icon{margin-bottom:4px}.finance-state strong{color:var(--ink);font-size:var(--fs-md);font-weight:650}.finance-state p{max-width:320px;font-size:var(--fs-sm);line-height:var(--lh-body)}.finance-state .button{margin-top:6px}.finance-pagination{border-top:1px solid var(--line);min-height:56px;color:var(--muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:10px;padding:10px 20px;display:flex}.cash-overview{flex-direction:column;display:flex}.cash-overview>.finance-panel-head>div{flex:1}.cash-indicator{border-radius:var(--r-md);width:38px;height:38px;color:var(--muted);background:var(--surface-3);flex:none;place-items:center;display:grid}.cash-indicator.open{color:var(--warning-ink);background:var(--warning-soft)}.cash-balance{border-bottom:1px solid var(--line);background:linear-gradient(180deg, var(--warning-tint), var(--surface));gap:3px;padding:18px 20px;display:grid}.cash-balance small{color:var(--ink-2);font-size:var(--fs-xs);font-weight:650}.cash-balance strong{color:var(--ink);font-size:var(--fs-2xl);letter-spacing:-.03em;font-weight:750;line-height:1.15}.cash-balance span{color:var(--muted);font-size:var(--fs-xs);font-variant-numeric:tabular-nums}.cash-mini-list{padding:4px 8px}.cash-empty{min-height:196px;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:24px 20px;display:flex}.cash-empty .empty-icon{color:var(--muted);background:var(--surface-3);margin-bottom:4px}.cash-empty strong{color:var(--ink);font-size:var(--fs-md)}.cash-empty p{max-width:230px;font-size:var(--fs-sm);line-height:var(--lh-body)}.cash-overview-foot{margin-top:auto;padding:12px 16px 16px}.cash-overview-foot .button{width:100%}.finance-cash-grid{gap:var(--fin-gap);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;min-width:0;display:grid}.cash-live{border-radius:var(--r-pill);color:var(--success-ink);background:var(--success-soft);font-size:var(--fs-2xs);letter-spacing:.08em;align-items:center;gap:7px;margin-bottom:6px;padding:3px 10px;font-weight:750;display:inline-flex}.cash-live i{background:var(--success);width:7px;height:7px;animation:finance-live 2s var(--ease) infinite;border-radius:50%}@keyframes finance-live{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--success) 50%, transparent)}60%{box-shadow:0 0 0 6px #0000}}.cash-session-values{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:18px 20px;display:grid}.cash-session-values>div{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);gap:3px;min-width:0;padding:12px 14px;display:grid}.cash-session-values>.highlight{border-color:var(--warning-line);background:linear-gradient(140deg, var(--warning-tint), var(--surface));grid-column:1/-1;padding:16px 18px}.cash-session-values small{color:var(--muted);font-size:var(--fs-xs);font-weight:600}.cash-session-values strong{color:var(--ink);font-size:var(--fs-md);text-overflow:ellipsis;font-weight:700;overflow:hidden}.cash-session-values .highlight strong{font-size:var(--fs-2xl);letter-spacing:-.03em;font-weight:750}.cash-session-values .highlight span{color:var(--muted);font-size:var(--fs-xs)}.cash-session-values .in strong{color:var(--success-ink)}.cash-session-values .out strong{color:var(--danger-ink)}.cash-actions{grid-template-columns:1fr 1fr;gap:10px;padding:0 20px 20px;display:grid}.cash-actions button{border:1px solid var(--line);border-radius:var(--r-md);min-height:64px;color:var(--ink);text-align:left;background:var(--surface);cursor:pointer;transition:transform var(--t-med) var(--ease), border-color var(--t-med) var(--ease), box-shadow var(--t-med) var(--ease);align-items:center;gap:12px;padding:12px;display:flex}.cash-actions button:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.cash-actions button.in:hover{border-color:color-mix(in srgb, var(--success) 45%, var(--line))}.cash-actions button.out:hover{border-color:var(--danger-line)}.cash-action-icon{border-radius:var(--r-sm);flex:none;place-items:center;width:38px;height:38px;display:grid}.cash-actions .in .cash-action-icon{color:var(--success-ink);background:var(--success-soft)}.cash-actions .out .cash-action-icon{color:var(--danger-ink);background:var(--danger-soft)}.cash-actions button>span:last-child{gap:2px;min-width:0;display:grid}.cash-actions strong{font-size:var(--fs-sm)}.cash-actions small{color:var(--muted);font-size:var(--fs-xs)}.cash-movement-list{padding:4px 8px 8px}.cash-movement-row{border-radius:var(--r-md);min-width:0;min-height:60px;transition:background-color var(--t-fast) var(--ease);grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.cash-movement-row+.cash-movement-row{box-shadow:0 -1px 0 var(--line-soft)}.cash-movement-row:hover{background:var(--surface-2)}.cash-movement-row.compact{grid-template-columns:28px minmax(0,1fr) auto;gap:10px;min-height:52px;padding:8px 12px}.cash-movement-icon{width:34px;height:34px;font-size:var(--fs-base);border-radius:50%;place-items:center;font-weight:800;line-height:1;display:grid}.cash-movement-row.compact .cash-movement-icon{width:28px;height:28px;font-size:var(--fs-sm)}.cash-movement-icon.positive{color:var(--success-ink);background:var(--success-soft)}.cash-movement-icon.negative{color:var(--danger-ink);background:var(--danger-soft)}.cash-movement-row>div{gap:1px;min-width:0;display:grid}.cash-movement-row strong{font-size:var(--fs-sm);font-weight:650}.cash-movement-row small{color:var(--muted);font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cash-movement-value{text-align:right;gap:1px;display:grid}.cash-movement-value b{font-size:var(--fs-sm);font-weight:700}.cash-movement-value b.positive{color:var(--success-ink)}.cash-movement-value b.negative{color:var(--danger-ink)}.cash-movement-value time{color:var(--muted);font-size:var(--fs-2xs);font-variant-numeric:tabular-nums;white-space:nowrap}.cash-closed-panel{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:340px;padding:40px 24px;display:flex}.cash-closed-panel .empty-icon{width:56px;height:56px;color:var(--warning-ink);background:var(--warning-soft);animation:vt-pop .52s var(--ease-pop) 80ms backwards;margin-bottom:6px}.cash-closed-panel h2{font-size:var(--fs-lg);font-weight:700}.cash-closed-panel p{max-width:380px;color:var(--muted);font-size:var(--fs-sm);line-height:var(--lh-body)}.cash-closed-panel .button{margin-top:10px}.finance-page>.finance-dialog-backdrop{animation:vt-fade var(--t-med) var(--ease) 0s backwards}.finance-dialog{width:min(620px,100%)}.finance-dialog.wide{width:min(760px,100%)}.entity-dialog.finance-dialog>header{justify-content:flex-start;align-items:center;gap:14px}.entity-dialog.finance-dialog>header>div{flex:1;min-width:0}.finance-dialog>header h2{margin-bottom:2px}.finance-dialog>header p{font-size:var(--fs-sm);text-overflow:ellipsis;overflow:hidden}.finance-dialog-icon{border-radius:var(--r-md);width:42px;height:42px;color:var(--tone-ink);background:var(--tone-soft);animation:vt-pop .48s var(--ease-pop) 80ms backwards;flex:none;place-items:center;display:grid}.finance-dialog .finance-dialog-error{margin:16px 24px 0}.finance-dialog-form{padding:20px 24px 22px}.finance-type-picker{border-radius:var(--r-md);background:var(--surface-3);grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:4px;margin-bottom:18px;padding:4px;display:grid}.finance-type-picker button{border-radius:var(--r-sm);min-height:40px;color:var(--muted);font-size:var(--fs-sm);cursor:pointer;transition:color var(--t-fast) var(--ease), background-color var(--t-med) var(--ease), box-shadow var(--t-med) var(--ease);background:0 0;border:0;justify-content:center;align-items:center;gap:8px;font-weight:650;display:inline-flex}.finance-type-picker button>span{background:var(--surface);border-radius:50%;place-items:center;width:20px;height:20px;font-weight:800;line-height:1;display:grid}.finance-type-picker button.active{color:var(--ink);background:var(--surface);box-shadow:var(--shadow-sm)}.finance-type-picker button.active.receivable>span{color:var(--success-ink);background:var(--success-soft)}.finance-type-picker button.active.payable>span{color:var(--danger-ink);background:var(--danger-soft)}.finance-form-grid{grid-template-columns:1fr 1fr;gap:14px 16px;display:grid}.finance-form-grid label{min-width:0;color:var(--ink-2);font-size:var(--fs-xs);gap:7px;font-weight:600;display:grid}.finance-form-grid label.wide{grid-column:1/-1}.finance-form-grid input,.finance-form-grid select,.finance-form-grid textarea{resize:vertical;border:1px solid var(--line-strong);border-radius:var(--r-sm);width:100%;min-height:42px;color:var(--ink);background:var(--surface);font:inherit;font-size:var(--fs-sm);transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);outline:0;padding:10px 12px;font-weight:400}.finance-form-grid input[inputmode=decimal]{font-variant-numeric:tabular-nums}.finance-form-grid textarea{min-height:88px;line-height:var(--lh-body)}.finance-dialog-form>footer{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;display:flex}.finance-dialog-form .button:disabled{opacity:.6;cursor:wait}.payment-balance{border:1px solid var(--line);border-left:4px solid var(--success);border-radius:var(--r-md);background:var(--surface-2);grid-template-columns:1fr auto;align-items:center;gap:2px 12px;margin-bottom:18px;padding:14px 16px;display:grid}.payment-balance.payable{border-left-color:var(--danger)}.payment-balance.cash{border-left-color:var(--warning)}.payment-balance small{color:var(--muted);font-size:var(--fs-xs);font-weight:600}.payment-balance strong{color:var(--ink);font-size:var(--fs-xl);letter-spacing:-.02em;grid-row:2;font-weight:750}.payment-balance .button{color:var(--brand-ink);grid-area:1/2/3}.finance-confirm-note{border:1px solid var(--warning-line);border-radius:var(--r-sm);color:var(--warning-ink);background:var(--warning-tint);font-size:var(--fs-xs);line-height:var(--lh-body);margin-top:16px;padding:10px 12px}.entry-detail-summary{border-bottom:1px solid var(--line);background:var(--surface-2);grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:center;gap:12px;padding:18px 24px;display:grid}.entry-detail-summary>div{gap:2px;min-width:0;display:grid}.entry-detail-summary small{color:var(--muted);font-size:var(--fs-xs);font-weight:600}.entry-detail-summary strong{color:var(--ink);font-size:var(--fs-lg);letter-spacing:-.02em;font-weight:750}.entry-detail-summary strong.paid{color:var(--success-ink)}.entry-detail-summary strong.open{color:var(--warning-ink)}.entry-detail-grid{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:14px 20px;margin:0;padding:18px 24px;display:grid}.entry-detail-grid>div{gap:3px;min-width:0;display:grid}.entry-detail-grid>div.wide{grid-column:1/-1}.entry-detail-grid dt{color:var(--muted);font-size:var(--fs-2xs);letter-spacing:.05em;text-transform:uppercase;font-weight:700}.entry-detail-grid dd{color:var(--ink);font-size:var(--fs-sm);font-weight:550;line-height:var(--lh-body);overflow-wrap:anywhere;margin:0}.payment-history{padding:18px 24px 22px}.payment-history-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.payment-history h3{font-size:var(--fs-base);font-weight:700}.payment-history-head p{color:var(--muted);font-size:var(--fs-xs);margin-top:2px}.payment-history>article{border-bottom:1px solid var(--line-soft);grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:58px;padding:10px 0;display:grid}.payment-history>article:last-child{border-bottom:0}.payment-history>article>span{width:32px;height:32px;color:var(--success-ink);background:var(--success-soft);border-radius:50%;place-items:center;display:grid}.payment-history>article>span.disbursement{color:var(--danger-ink);background:var(--danger-soft)}.payment-history>article.payment-pending>span{color:var(--warning-ink);background:var(--warning-soft)}.payment-history>article:is(.payment-refunded,.payment-canceled,.payment-failed)>span{color:var(--muted);background:var(--surface-3)}.payment-history>article:is(.payment-refunded,.payment-canceled) b{color:var(--muted);text-decoration:line-through}.payment-history article>div{gap:2px;min-width:0;display:grid}.payment-history article strong{font-size:var(--fs-sm);font-weight:650}.payment-history article b{font-size:var(--fs-sm);font-weight:700}.payment-history article small{color:var(--muted);font-size:var(--fs-xs)}.payment-history .pending-payment-actions{flex-wrap:wrap;grid-column:2/-1;justify-content:flex-end;gap:8px;display:flex}.payment-history .finance-state{min-height:150px}.finance-restricted{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:520px;padding:50px 25px;display:flex}.finance-restricted>span{border-radius:var(--r-lg);width:58px;height:58px;color:var(--muted);background:var(--surface-3);place-items:center;display:grid}.finance-restricted h1{font-size:var(--fs-xl)}.finance-restricted p{max-width:460px;color:var(--muted);font-size:var(--fs-sm);line-height:1.6}.finance-page>.finance-block{margin-top:28px}.finance-block{min-width:0;max-width:100%;overflow:hidden}.finance-block-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px 24px;padding:20px 24px;display:flex}.finance-block-title{align-items:flex-start;gap:14px;min-width:0;display:flex}.finance-block-icon{border-radius:var(--r-md);width:42px;height:42px;color:var(--brand-ink);background:var(--brand-soft);flex:none;place-items:center;display:grid}.finance-block-icon.tone-info{color:var(--info-ink);background:var(--info-soft)}.finance-block-icon.tone-danger{color:var(--danger-ink);background:var(--danger-soft)}.finance-block-icon.tone-warning{color:var(--warning-ink);background:var(--warning-soft)}.finance-block-icon.tone-purple{color:var(--purple-ink);background:var(--purple-soft)}.finance-block-title>div{min-width:0}.finance-block-title .eyebrow{margin-bottom:2px}.finance-block-title h2{font-size:var(--fs-lg);letter-spacing:-.015em;font-weight:700;line-height:var(--lh-snug)}.finance-block-title p{max-width:72ch;color:var(--muted);font-size:var(--fs-sm);line-height:var(--lh-body);margin-top:4px}.finance-block-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:8px;display:flex}.finance-count{border-radius:var(--r-pill);color:var(--brand-ink);background:var(--brand-soft);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;white-space:nowrap;padding:4px 11px;font-weight:700}.finance-block-body{padding:20px 24px 24px}.finance-block .inline-notice{margin:0 0 16px}.finance-block .finance-filters{background:var(--surface-2);box-shadow:none;margin:0 0 16px}@media (max-width:1380px){.finance-entry-head,.finance-entry-row{gap:12px}.finance-entry-head span:nth-child(4),.finance-entry-row .entry-method{display:none}.finance-entry-head,.finance-entry-list:not(.compact) .finance-entry-row{grid-template-columns:96px minmax(0,2fr) minmax(0,1.2fr) 112px minmax(124px,.9fr) 110px}.finance-overview{grid-template-columns:minmax(0,1fr) 310px}}@media (max-width:1180px){.finance-overview{grid-template-columns:minmax(0,1fr)}.finance-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1050px){.finance-cash-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:900px){.finance-entry-head{display:none}.finance-entry-list .finance-entry-row,.finance-entry-list.compact .finance-entry-row{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"main main value""date status actions";gap:8px 10px;padding:14px 16px}.finance-entry-row .entry-main{grid-area:main;padding:0}.finance-entry-row .entry-value{grid-area:value;align-self:start}.finance-entry-row .entry-date{grid-area:date;align-items:baseline;gap:5px;display:flex}.finance-entry-row .entry-date small{display:inline}.finance-entry-row .entry-date time{font-size:var(--fs-xs)}.finance-entry-row .entry-status{grid-area:status}.finance-entry-row .entry-actions{grid-area:actions}.finance-entry-row .entry-party,.finance-entry-row .entry-method{display:none}.finance-entry-list:not(.compact) .entry-main small{display:block}.finance-entry-list .entry-main strong{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}}@media (max-width:760px){.finance-page{--fin-gap:12px}.page-heading.finance-heading{flex-direction:column;align-items:stretch;gap:16px}.finance-heading>div{min-width:0}.finance-heading .finance-heading-actions{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.finance-heading .finance-heading-actions .button{width:100%;min-width:0;font-size:var(--fs-sm);padding:0 12px}.finance-jump{flex-wrap:wrap;max-width:100%;margin-top:12px}.finance-jump a{flex:none}.finance-summary,.finance-summary.limited{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:18px}.finance-metric{gap:4px;padding:14px 14px 12px}.finance-metric>header{align-items:flex-start}.finance-metric small{font-size:var(--fs-xs);line-height:1.3}.finance-metric-icon{width:28px;height:28px}.finance-metric-icon svg{width:16px;height:16px}.finance-metric strong{font-size:var(--fs-lg)}.finance-metric p{font-size:var(--fs-2xs);white-space:normal}.finance-tabs{gap:0}.finance-tabs button{flex:1;justify-content:center;gap:6px;padding:0 8px}.finance-filters{grid-template-columns:1fr 1fr;gap:8px;padding:10px;display:grid}.finance-filters .finance-search,.finance-filters .finance-period{grid-column:1/-1}.finance-period label{flex:1;padding:0 8px}.finance-period input,.finance-filters select{width:100%}.finance-panel-head{padding:14px 16px}.cash-session-values{grid-template-columns:1fr 1fr;padding:16px}.cash-session-values>div:nth-child(2){grid-column:1/-1}.cash-actions{padding:0 16px 16px}.cash-actions button{gap:10px;min-height:58px;padding:10px}.cash-actions small{display:none}.cash-session-card>.finance-panel-head{flex-wrap:wrap}.finance-dialog-form{padding:18px 16px 20px}.finance-dialog .finance-dialog-error{margin:14px 16px 0}.finance-form-grid{grid-template-columns:1fr}.finance-form-grid label.wide{grid-column:auto}.finance-dialog-form>footer{grid-template-columns:1fr 1fr;display:grid}.entry-detail-summary{grid-template-columns:repeat(3,minmax(0,1fr));padding:16px}.entry-detail-summary strong{font-size:var(--fs-md)}.entry-detail-summary>.finance-status{grid-area:1/1/auto/-1;justify-self:start}.entry-detail-grid{grid-template-columns:1fr;padding:16px}.entry-detail-grid>div.wide{grid-column:auto}.payment-history{padding:16px}.finance-page>.finance-block{margin-top:20px}.finance-block-head{flex-direction:column;padding:16px}.finance-block-actions{justify-content:flex-start}.finance-block-icon{width:36px;height:36px}.finance-block-body{padding:16px}.finance-jump>span{display:none}}
.settings-grid{grid-template-columns:repeat(2,1fr);gap:15px;display:grid}.settings-card{align-items:center;gap:14px;min-height:100px;padding:18px;display:flex}.settings-card h2{font-size:var(--fs-sm)}.settings-card p{color:var(--muted);font-size:var(--fs-2xs);margin-top:5px}.settings-card button{color:var(--muted);background:0 0;border:0;margin-left:auto}.plan-card{justify-content:space-between;align-items:center;margin-top:15px;padding:24px;display:flex}.plan-card .badge{color:var(--brand);background:var(--brand-soft)}.plan-card h2{font-size:var(--fs-lg);margin-top:10px}.plan-card p{color:var(--muted);font-size:var(--fs-2xs);margin-top:4px}.plan-card>div:last-child{align-items:center;gap:20px;display:flex}.plan-card strong{font:700 var(--fs-xl) var(--font-sans)}.plan-card strong small{color:var(--muted);font:400 var(--fs-2xs) var(--font-sans)}@media (max-width:760px){.settings-grid{grid-template-columns:1fr}.plan-card{flex-direction:column;align-items:flex-start;gap:20px}.plan-card>div:last-child{justify-content:space-between;width:100%}}.booking-fieldset{border:1px solid var(--line);border-radius:var(--r-md);min-width:0;margin:0;padding:14px 16px 16px}.booking-fieldset legend{color:var(--ink-2);font-size:var(--fs-sm);padding:0 6px;font-weight:650}.booking-hours,.booking-services{gap:6px;margin:0;padding:0;list-style:none;display:grid}.booking-hours li,.booking-services li{border-radius:var(--r-sm);min-height:46px;transition:background-color var(--t-fast) var(--ease);justify-content:space-between;align-items:center;gap:12px;padding:6px 10px;display:flex}.booking-hours li.is-on,.booking-services li.is-on{background:var(--brand-tint)}.booking-hours label,.booking-services label{color:var(--ink);font-size:var(--fs-sm);cursor:pointer;align-items:center;gap:10px;font-weight:600;display:flex}.booking-hours li>span{color:var(--muted);font-size:var(--fs-xs);align-items:center;gap:8px;display:flex}.booking-hours input[type=time],.booking-services select{border:1px solid var(--line-strong);border-radius:var(--r-sm);min-height:34px;font:inherit;font-size:var(--fs-sm);padding:4px 8px}.booking-hours small{color:var(--subtle);font-size:var(--fs-xs)}.booking-services label>span{gap:1px;display:grid}.booking-services small{color:var(--muted);font-size:var(--fs-2xs);font-weight:500}.booking-snippet{border:1px dashed var(--brand-line);border-radius:var(--r-md);background:var(--brand-tint);font-size:var(--fs-sm);gap:8px;padding:14px;display:grid}.booking-snippet p{color:var(--ink-2);align-items:center;gap:8px;display:flex}.booking-snippet code{border-radius:var(--r-sm);color:var(--ink);background:var(--surface);font:500 var(--fs-xs) / 1.5 ui-monospace, SFMono-Regular, Menlo, monospace;white-space:nowrap;padding:10px 12px;display:block;overflow-x:auto}.booking-snippet .button{justify-self:start}@media (max-width:560px){.booking-hours li{flex-wrap:wrap}}#cfg-site .booking-hours label,#cfg-site .booking-services label{gap:10px;display:flex}#cfg-site .booking-fieldset input[type=checkbox]{flex:none;width:18px;height:18px;min-height:18px;padding:0}#cfg-site .booking-fieldset input[type=time],#cfg-site .booking-fieldset select{width:auto;min-height:36px;padding:4px 10px}
@media (min-width:761px) and (max-width:1050px){.schedule-page .schedule-metrics,.clinical-page .clinical-metrics,.finance-page .finance-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.clinical-page .clinical-workspace,.finance-page .finance-cash-grid{grid-template-columns:minmax(0,1fr)}.clinical-page .record-browser{max-height:330px;position:static}}
:where(button,a,input,select,textarea):focus-visible{outline:2px solid var(--brand);outline-offset:2px}:where(button,input,select,textarea):disabled{cursor:not-allowed;opacity:.62}.button:disabled{box-shadow:none}.app-dialog-backdrop:not(dialog){z-index:80;overscroll-behavior:contain;background:rgb(var(--scrim-rgb) / .45);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);place-items:center;padding:30px 18px;display:grid;position:fixed;inset:0;overflow:auto}.dialog-backdrop{overscroll-behavior:contain;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.entity-dialog{box-shadow:0 24px 80px rgb(var(--shadow-rgb) / .2)}.entity-dialog>header{z-index:4;background:color-mix(in srgb, var(--surface) 97%, transparent);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);position:sticky;top:0}.entity-dialog>header button[aria-label^=Fechar]{flex:none}.inline-notice[role=status],.inline-notice[role=alert]{overflow-wrap:anywhere}@media (max-width:700px){.app-dialog-backdrop:not(dialog){align-items:end;padding:12px}.entity-dialog{max-height:calc(100dvh - 24px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
.schedule-panel>.inline-notice.success{gap:12px}.schedule-panel>.inline-notice.success>span{min-width:0}.schedule-panel>.inline-notice.success>button{white-space:nowrap;font-size:var(--fs-2xs);flex:none;font-weight:700}
html{background:var(--bg);text-rendering:optimizelegibility;font-size:16px}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:var(--fs-md);line-height:var(--lh-body);font-feature-settings:"ss01" on;transition:background-color var(--t-med) var(--ease), color var(--t-med) var(--ease)}::selection{background:color-mix(in srgb, var(--brand) 26%, transparent);color:var(--ink)}h1,h2,h3,h4{font-family:var(--font-display);color:var(--ink);text-wrap:balance}:where(strong,b,h1,h2,h3){font-weight:700}:where(.metric-card strong,.money,time,[data-numeric]){font-variant-numeric:tabular-nums}@media (pointer:fine){*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}}:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--brand-ink);outline-offset:2px}.page{padding:32px 38px 48px}.page-heading{align-items:center;margin-bottom:24px}.page-heading h1{font-size:var(--fs-2xl);letter-spacing:-.025em;font-weight:750;line-height:var(--lh-tight)}.page-heading p{color:var(--muted);font-size:var(--fs-md);max-width:62ch;margin-top:4px}.eyebrow{color:var(--brand-ink);font-size:var(--fs-2xs);letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;font-weight:700}.button{border-radius:var(--r-md);min-height:42px;font-size:var(--fs-sm);letter-spacing:-.005em;white-space:nowrap;padding:0 18px;font-weight:650;line-height:1}.button svg{flex:none}.button.primary{color:var(--on-brand);background:var(--brand);box-shadow:0 1px 0 #ffffff1f inset, 0 8px 20px -10px color-mix(in srgb, var(--brand) 70%, transparent);border-color:#0000}.button.primary:hover:not(:disabled){background:var(--brand-strong)}.button.secondary,.button.ghost{color:var(--ink);background:var(--surface);border-color:var(--line);box-shadow:var(--shadow-xs)}.button.secondary:hover:not(:disabled){border-color:var(--line-strong);background:var(--surface-2)}.button.ghost{box-shadow:none;background:0 0;border-color:#0000}.button.ghost:hover:not(:disabled){background:var(--surface-3)}.button.danger{color:var(--on-brand);background:var(--danger);border-color:#0000}.button.danger:hover:not(:disabled){background:var(--danger-ink)}.button.danger-button{color:var(--danger-ink);border-color:var(--danger-line);background:var(--danger-tint)}.button.small,.button.sm{min-height:34px;font-size:var(--fs-xs);border-radius:var(--r-sm);padding:0 12px}.icon-button{border-radius:var(--r-md);border-color:var(--line);width:40px;height:40px;color:var(--ink-2);background:var(--surface)}.icon-button:hover:not(:disabled){background:var(--surface-3);color:var(--ink)}:where(input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=color]),select,textarea){color:var(--ink);background-color:var(--surface);border-color:var(--line-strong);font-size:var(--fs-sm)}:where(input,textarea)::placeholder{color:var(--subtle);opacity:1}:where(input,select,textarea):focus{box-shadow:var(--ring);outline:none;border-color:var(--brand)!important}:where(input[type=checkbox],input[type=radio]){accent-color:var(--brand);width:16px;height:16px}:where(select){color-scheme:inherit}.form-grid label{color:var(--ink-2);font-size:var(--fs-xs);gap:7px;font-weight:600}.form-grid input,.form-grid select,.form-grid textarea{border-color:var(--line-strong);border-radius:var(--r-sm);min-height:42px;font-size:var(--fs-sm);transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);padding:10px 12px}.form-grid textarea{min-height:96px;line-height:var(--lh-body)}.check-field,.form-options{font-size:var(--fs-xs);color:var(--ink-2)}.panel,.metric-card{border-color:var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.panel-heading{border-bottom-color:var(--line);min-height:64px;padding:16px 20px}.panel-heading h2{font-size:var(--fs-base);letter-spacing:-.01em;font-weight:700}.panel-heading p{color:var(--muted);font-size:var(--fs-xs)}.panel-heading>a{font-size:var(--fs-xs);color:var(--brand-ink);font-weight:650}.metric-card{min-height:0;padding:18px 20px}.metric-card>strong{font-size:var(--fs-2xl);letter-spacing:-.03em;font-weight:750;line-height:1.1}.metric-card>p{font-size:var(--fs-sm);color:var(--ink-2);margin-top:6px;font-weight:600}.metric-card>small{color:var(--muted);font-size:var(--fs-2xs);margin-top:6px;line-height:1.4}.metric-icon,.quick-icon{border-radius:var(--r-md);width:38px;height:38px}.metric-card.feature{border-color:var(--brand-line);background:linear-gradient(150deg, var(--surface) 10%, var(--brand-tint) 100%)}.status-pill,.badge-status{border-radius:var(--r-pill);font-size:var(--fs-2xs);letter-spacing:.01em;white-space:nowrap;align-items:center;gap:6px;padding:4px 10px;font-weight:650;line-height:1.3;display:inline-flex}.status-pill:before{content:"";opacity:.85;background:currentColor;border-radius:50%;width:6px;height:6px}.status-pill.success{color:var(--success-ink);background:var(--success-soft)}.status-pill.warning{color:var(--warning-ink);background:var(--warning-soft)}.status-pill.danger{color:var(--danger-ink);background:var(--danger-soft)}.status-pill.info{color:var(--info-ink);background:var(--info-soft)}.status-pill.purple{color:var(--purple-ink);background:var(--purple-soft)}.list-row{border-bottom-color:var(--line-soft);transition:background-color var(--t-fast) var(--ease)}.list-row:hover{background:var(--surface-2)}.list-main strong{font-size:var(--fs-sm)}.list-main span,.list-meta{font-size:var(--fs-xs)}.filter-group,.view-switch{border-radius:var(--r-md);background:var(--surface-3);padding:4px}.filter-group button,.view-switch button{border-radius:var(--r-sm);min-height:32px;font-size:var(--fs-xs);transition:color var(--t-fast) var(--ease), background-color var(--t-med) var(--ease), box-shadow var(--t-med) var(--ease);padding:6px 12px;font-weight:600}.filter-group button.active,.view-switch button.active{color:var(--ink);background:var(--surface);box-shadow:var(--shadow-sm)}.pagination{font-size:var(--fs-xs)}.pagination button{border-radius:var(--r-sm);min-height:34px;font-size:var(--fs-xs);padding:0 12px}.inline-notice{border-radius:var(--r-md);font-size:var(--fs-sm);animation:vt-rise var(--t-med) var(--ease-out) backwards;gap:12px;margin:0 0 16px;padding:12px 14px;font-weight:550}.inline-notice.success{color:var(--success-ink);border-color:color-mix(in srgb, var(--success) 35%, transparent);background:var(--success-soft)}.inline-notice.error{color:var(--danger-ink);border-color:var(--danger-line);background:var(--danger-tint)}.inline-notice.warning{color:var(--warning-ink);border-color:var(--warning-line);background:var(--warning-tint)}.form-error{border-radius:var(--r-sm);color:var(--danger-ink);border-color:var(--danger-line);background:var(--danger-tint);font-size:var(--fs-xs);margin:0 0 12px}.empty-icon{border-radius:var(--r-lg);width:52px;height:52px}.dialog-backdrop{background:rgb(var(--scrim-rgb) / .5);-webkit-backdrop-filter:blur(6px)saturate(120%);backdrop-filter:blur(6px)saturate(120%)}.entity-dialog{border-color:var(--line);border-radius:var(--r-xl);background:var(--surface-raised);width:min(700px,100%);box-shadow:var(--shadow-lg)}.entity-dialog>header{border-bottom-color:var(--line);z-index:2;background:var(--surface-raised);min-height:0;padding:20px 24px 16px;position:sticky;top:0}.entity-dialog h2{font-size:var(--fs-xl);letter-spacing:-.02em;font-weight:700}.entity-dialog header p{color:var(--muted);font-size:var(--fs-sm)}.entity-dialog header>button{border-radius:var(--r-pill);width:36px;height:36px;color:var(--muted);background:var(--surface-3);font-size:var(--fs-xl);transition:background-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease), rotate var(--t-med) var(--ease-pop);flex:none;line-height:1}.entity-dialog header>button:hover{color:var(--ink);background:var(--line);rotate:90deg}.entity-form{padding:22px 24px}.entity-form footer{border-top-color:var(--line);gap:10px;margin-top:24px;padding-top:18px}.app-dialog-backdrop{background:0 0;border:0;max-width:none;max-height:none;padding:0}.app-dialog-backdrop::backdrop{background:rgb(var(--scrim-rgb) / .5);-webkit-backdrop-filter:blur(6px)saturate(120%);backdrop-filter:blur(6px)saturate(120%)}.app-dialog{border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface-raised);width:min(92vw,460px);color:var(--ink);box-shadow:var(--shadow-lg);font-family:var(--font-sans);font-size:var(--fs-md);line-height:var(--lh-body);grid-template-columns:auto 1fr;column-gap:16px;padding:24px;display:grid}.app-dialog-icon{border-radius:var(--r-pill);width:44px;height:44px;color:var(--brand-ink);background:var(--brand-soft);animation:vt-pop .48s var(--ease-pop) 80ms backwards;place-items:center;display:grid}.app-dialog--danger .app-dialog-icon{color:var(--danger-ink);background:var(--danger-soft)}.app-dialog-text h2{font-size:var(--fs-lg);letter-spacing:-.015em;margin:2px 0 6px;font-weight:700}.app-dialog-text p{color:var(--muted);font-size:var(--fs-sm);white-space:pre-line;margin:0}.app-dialog-input{border:1px solid var(--line-strong);border-radius:var(--r-sm);width:100%;font:inherit;font-size:var(--fs-sm);resize:vertical;grid-column:1/-1;margin-top:16px;padding:10px 12px}.app-dialog footer{grid-column:1/-1;justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.app-dialog-backdrop.closing .app-dialog{opacity:0;transition:opacity .15s var(--ease), transform .15s var(--ease);transform:translateY(6px)scale(.98)}@media (max-width:480px){.app-dialog{text-align:left;grid-template-columns:1fr}.app-dialog-icon{margin-bottom:12px}.app-dialog footer{grid-template-columns:1fr 1fr;display:grid}}.toast-region{z-index:200;pointer-events:none;gap:10px;width:min(380px,100vw - 32px);display:grid;position:fixed;bottom:20px;right:20px}.toast{pointer-events:none;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-raised);color:var(--ink);box-shadow:var(--shadow-lg);animation:vt-toast .36s var(--ease-pop) backwards;transition:opacity .2s var(--ease), transform .2s var(--ease);grid-template-columns:auto 1fr auto auto;align-items:start;gap:12px;padding:14px 12px 14px 14px;display:grid}.toast.leaving{opacity:0;transform:translate(16px)}.toast-icon{border-radius:var(--r-pill);place-items:center;width:30px;height:30px;display:grid}.toast-success .toast-icon{color:var(--success-ink);background:var(--success-soft)}.toast-error .toast-icon{color:var(--danger-ink);background:var(--danger-soft)}.toast-warning .toast-icon{color:var(--warning-ink);background:var(--warning-soft)}.toast-info .toast-icon{color:var(--info-ink);background:var(--info-soft)}.toast-body strong{font-size:var(--fs-sm);margin-top:4px;font-weight:650;display:block}.toast-body p{color:var(--muted);font-size:var(--fs-xs);margin-top:2px}.toast-action,.toast-close{pointer-events:auto}.toast-action{border-radius:var(--r-sm);color:var(--brand-ink);background:var(--brand-soft);font-size:var(--fs-xs);border:0;align-self:center;padding:6px 10px;font-weight:650}.toast-close{border-radius:var(--r-sm);width:28px;height:28px;color:var(--subtle);background:0 0;border:0;place-items:center;display:grid}.toast-close:hover{color:var(--ink);background:var(--surface-3)}@media (max-width:760px){.toast-region{left:16px;right:16px;bottom:calc(84px + env(safe-area-inset-bottom));width:auto}}.theme-toggle{border:1px solid var(--line);border-radius:var(--r-md);width:40px;height:40px;color:var(--ink-2);background:var(--surface);perspective:300px;flex:none;place-items:center;display:grid}.theme-toggle:hover{background:var(--surface-3);color:var(--ink)}.theme-coin{width:18px;height:18px;transform-style:preserve-3d;transition:transform .7s var(--ease-pop);position:relative}.theme-toggle.is-dark .theme-coin{transform:rotateY(180deg)}.theme-face{backface-visibility:hidden;place-items:center;display:grid;position:absolute;inset:0}.theme-face--sun{color:var(--warning)}.theme-face--moon{color:var(--brand-ink);transform:rotateY(180deg)}.theme-selector{flex-wrap:wrap;gap:10px;display:flex}.theme-selector button{border:1.5px solid var(--line);border-radius:var(--r-md);min-height:44px;color:var(--ink-2);background:var(--surface);font-size:var(--fs-sm);transition:border-color var(--t-fast) var(--ease), background-color var(--t-fast) var(--ease);align-items:center;gap:10px;padding:6px 14px 6px 6px;font-weight:600;display:inline-flex}.theme-selector button.active{border-color:var(--brand);color:var(--ink);background:var(--brand-tint)}.theme-swatch{border-radius:var(--r-sm);border:1px solid var(--line-strong);background:linear-gradient(135deg,#f3f5f2 50%,#11705f 50%);width:34px;height:30px}.theme-swatch--dark{background:linear-gradient(135deg,#121c1a 50%,#67d2b9 50%)}.theme-swatch--system{background:linear-gradient(135deg,#f3f5f2 50%,#121c1a 50%)}@media (max-width:1050px){.page{padding:28px 24px 40px}}@media (max-width:760px){.page{padding:20px 16px calc(96px + env(safe-area-inset-bottom))}.page-heading h1{font-size:var(--fs-xl)}.page-heading p{font-size:var(--fs-sm)}.entity-dialog{border-radius:var(--r-xl) var(--r-xl) var(--r-md) var(--r-md)}.metric-card{padding:14px 16px}.metric-card>strong{font-size:var(--fs-xl)}}.dictation{align-items:center;display:inline-flex;position:relative}.dictation-button{border:1px solid var(--line);border-radius:var(--r-pill);min-height:30px;color:var(--ink-2);background:var(--surface);font-size:var(--fs-2xs);transition:color var(--t-fast) var(--ease), background-color var(--t-med) var(--ease), border-color var(--t-med) var(--ease), box-shadow var(--t-med) var(--ease);align-items:center;gap:6px;padding:0 10px;font-weight:650;line-height:1;display:inline-flex}.dictation-button:hover:not(:disabled){color:var(--brand-ink);border-color:var(--brand-line);background:var(--brand-tint)}.dictation-button:disabled{opacity:.5;cursor:not-allowed}.dictation.is-recording .dictation-button{color:var(--danger-ink);border-color:var(--danger-line);background:var(--danger-tint);box-shadow:0 0 0 3px color-mix(in srgb, var(--danger) 14%, transparent)}.dictation-text{font-variant-numeric:tabular-nums}.mic-dot{background:var(--danger);border-radius:50%;width:9px;height:9px}.dictation-level{align-items:center;gap:2px;height:14px;display:inline-flex}.dictation-level i{transform-origin:50%;background:currentColor;border-radius:2px;width:3px;height:14px;transition:transform 90ms linear}.dictation-spinner{border:2px solid var(--brand-line);border-top-color:var(--brand);border-radius:50%;width:13px;height:13px;animation:.7s linear infinite spin}.dictation-live{z-index:40;border:1px solid var(--line);border-radius:var(--r-md);width:max-content;max-width:min(360px,80vw);color:var(--ink-2);background:var(--surface-raised);box-shadow:var(--shadow-md);font-size:var(--fs-xs);animation:vt-pop .26s var(--ease-pop) backwards;pointer-events:none;padding:8px 12px;font-style:italic;line-height:1.4;position:absolute;top:calc(100% + 8px);right:0}
