@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=Inter:wght@400;500;600&display=swap";:root{--brand-primary: #FF6B4A;--brand-primary-soft: rgba(255, 107, 74, .12);--brand-primary-pressed: #E55638;--brand-secondary: #7BA87F;--brand-secondary-soft: rgba(123, 168, 127, .16);--bg-page: #FBF6EC;--bg-card: #FFFFFF;--bg-card-nested: #F5EFE4;--border: #E8E2D6;--border-strong: #D5CDBE;--fg: #2A2418;--fg-muted: #6B6051;--fg-on-primary: #FFFFFF;--success: #7BA87F;--warning: #D97757;--warning-soft: rgba(217, 119, 87, .14);--destructive: #B85450;--destructive-soft: rgba(184, 84, 80, .14);--info: #6B8E7F;--info-soft: rgba(107, 142, 127, .14);--whatsapp: #25D366;--whatsapp-pressed: #1FAA52;--font-display: "Space Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-ui: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--fs-display: 22px;--lh-display: 28px;--fw-display: 700;--fs-title: 18px;--lh-title: 24px;--fw-title: 700;--fs-body-strong: 15px;--lh-body-strong: 22px;--fw-body-strong: 600;--fs-body: 15px;--lh-body: 22px;--fw-body: 400;--fs-meta: 13px;--lh-meta: 18px;--fw-meta: 400;--fs-micro: 11px;--lh-micro: 14px;--fw-micro: 500;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--s-8: 64px;--radius-input: 10px;--radius-button: 12px;--radius-card: 16px;--radius-hero: 20px;--radius-sheet: 24px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(42, 36, 24, .04);--shadow-md: 0 4px 14px rgba(42, 36, 24, .06);--shadow-lg: 0 16px 40px rgba(42, 36, 24, .08);--shadow-bar-top: 0 -1px 0 var(--border);--max-w-mobile: 480px;--tab-bar-h: 64px;--tap-min: 44px;--dur-fast: .12s;--dur-med: .2s;--ease-out: cubic-bezier(.2, .7, .2, 1)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;background:var(--bg-page);color:var(--fg);font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}button,input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer;border:none;background:none;padding:0}a{color:var(--brand-primary);text-decoration:none}a:hover{color:var(--brand-primary-pressed)}.t-display{font-family:var(--font-display);font-size:var(--fs-display);line-height:var(--lh-display);font-weight:var(--fw-display);color:var(--fg);letter-spacing:-.01em}.t-title{font-family:var(--font-display);font-size:var(--fs-title);line-height:var(--lh-title);font-weight:var(--fw-title);color:var(--fg)}.t-body-strong{font-family:var(--font-ui);font-size:var(--fs-body-strong);line-height:var(--lh-body-strong);font-weight:var(--fw-body-strong);color:var(--fg)}.t-body{font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-body);color:var(--fg)}.t-meta{font-family:var(--font-ui);font-size:var(--fs-meta);line-height:var(--lh-meta);font-weight:var(--fw-meta);color:var(--fg-muted)}.t-micro{font-family:var(--font-ui);font-size:var(--fs-micro);line-height:var(--lh-micro);font-weight:var(--fw-micro);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-muted)}.t-num{font-family:var(--font-display);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.01em;color:var(--fg)}.t-muted{color:var(--fg-muted)}.t-warn{color:var(--warning)}.t-bad{color:var(--destructive)}.t-ok{color:var(--success)}.t-coral{color:var(--brand-primary)}.card{background:var(--bg-card);border-radius:var(--radius-card);box-shadow:var(--shadow-sm)}.card--hero{border-radius:var(--radius-hero);box-shadow:var(--shadow-md)}.card--nested{background:var(--bg-card-nested);box-shadow:none}.card--callout-sage{background:var(--brand-secondary-soft);border-radius:var(--radius-card);box-shadow:none}.card--callout-coral{background:var(--brand-primary-soft);border-radius:var(--radius-card);box-shadow:none}.card--callout-warn{background:var(--warning-soft);border-radius:var(--radius-card);box-shadow:none}.card--callout-bad{background:var(--destructive-soft);border-radius:var(--radius-card);box-shadow:none}.agenda-block{position:relative;padding-left:14px}.agenda-block:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:2px;background:var(--fg-muted)}.agenda-block[data-reason=vacuna]:before{background:var(--success)}.agenda-block[data-reason=consulta]:before{background:var(--info)}.agenda-block[data-reason=control]:before{background:var(--brand-primary)}.agenda-block[data-reason=cirugia]:before{background:var(--destructive)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-height:var(--tap-min);padding:0 var(--s-4);border-radius:var(--radius-button);font-family:var(--font-ui);font-size:var(--fs-body);font-weight:600;line-height:1;white-space:nowrap;transition:transform var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.btn--primary{background:var(--brand-primary);color:var(--fg-on-primary)}.btn--primary:active{background:var(--brand-primary-pressed);transform:scale(.98)}.btn--soft{background:var(--brand-primary-soft);color:var(--brand-primary)}.btn--soft:active{transform:scale(.98)}.btn--ghost{background:transparent;color:var(--brand-primary)}.btn--ghost:active{background:var(--brand-primary-soft);transform:scale(.98)}.btn--secondary{background:var(--bg-card-nested);color:var(--fg)}.btn--secondary:active{background:var(--border);transform:scale(.98)}.btn--whatsapp{background:var(--whatsapp);color:#fff}.btn--whatsapp:active{background:var(--whatsapp-pressed);transform:scale(.98)}.btn--block{display:flex;width:100%}.btn--sm{min-height:32px;padding:0 var(--s-3);font-size:var(--fs-meta);border-radius:10px}.btn-round{width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-card-nested);color:var(--fg);transition:transform var(--dur-fast) var(--ease-out)}.btn-round:active{transform:scale(.94)}.btn-round--whatsapp{background:var(--whatsapp);color:#fff}.btn-round--call{background:transparent;color:var(--brand-primary);border:1.5px solid var(--brand-primary)}.fab{width:56px;height:56px;border-radius:50%;background:var(--brand-primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);transition:transform var(--dur-fast) var(--ease-out)}.fab:active{transform:scale(.96);background:var(--brand-primary-pressed)}.pill{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-pill);font-family:var(--font-ui);font-size:var(--fs-micro);font-weight:500;letter-spacing:.06em;text-transform:uppercase;line-height:1.2;white-space:nowrap}.pill--ok{background:var(--brand-secondary-soft);color:#5f7e63}.pill--warn{background:var(--warning-soft);color:var(--warning)}.pill--bad{background:var(--destructive-soft);color:var(--destructive)}.pill--info{background:var(--info-soft);color:var(--info)}.pill--coral{background:var(--brand-primary-soft);color:var(--brand-primary)}.pill--neutral{background:var(--bg-card-nested);color:var(--fg)}.chip{display:inline-flex;align-items:center;padding:8px 14px;border-radius:var(--radius-pill);background:var(--bg-card);border:1px solid var(--border);color:var(--fg);font-size:var(--fs-meta);font-weight:500;white-space:nowrap;transition:background-color var(--dur-fast),color var(--dur-fast)}.chip--active{background:var(--brand-primary);color:var(--fg-on-primary);border-color:var(--brand-primary)}.chip--ghost-active{background:var(--brand-primary-soft);color:var(--brand-primary);border-color:transparent}.day-chip{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:46px;min-height:56px;padding:6px 0;background:var(--bg-card);border:1px solid var(--border);border-radius:14px;font-family:var(--font-ui);position:relative}.day-chip__dow{font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted)}.day-chip__num{font-family:var(--font-display);font-size:17px;font-weight:700;color:var(--fg);margin-top:2px}.day-chip--active{background:var(--brand-primary);border-color:var(--brand-primary)}.day-chip--active .day-chip__dow,.day-chip--active .day-chip__num{color:var(--fg-on-primary)}.day-chip__dot{position:absolute;bottom:4px;left:50%;transform:translate(-50%);width:4px;height:4px;border-radius:50%;background:var(--brand-primary)}.day-chip--active .day-chip__dot{background:#fff}.field{display:block;width:100%;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-input);padding:12px 14px;font-size:var(--fs-body);color:var(--fg);outline:none;transition:border-color var(--dur-fast)}.field::-moz-placeholder{color:var(--fg-muted)}.field::placeholder{color:var(--fg-muted)}.field:focus{border-color:var(--border-strong)}textarea.field{resize:none;line-height:var(--lh-body)}.segment{display:inline-flex;gap:4px;padding:4px;background:var(--bg-card-nested);border-radius:var(--radius-pill)}.segment__opt{padding:6px 14px;border-radius:var(--radius-pill);font-size:var(--fs-meta);font-weight:500;color:var(--fg-muted);background:transparent}.segment__opt--active{background:var(--brand-primary);color:var(--fg-on-primary)}.tab-bar{position:absolute;left:0;right:0;bottom:0;height:var(--tab-bar-h);background:var(--bg-card);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);display:grid;grid-auto-flow:column;grid-auto-columns:1fr}.tab{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--fg-muted);font-size:var(--fs-micro);font-weight:500;letter-spacing:.04em;text-transform:uppercase;position:relative}.tab--active{color:var(--brand-primary)}.tab--active:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:28px;height:2px;background:var(--brand-primary);border-radius:0 0 2px 2px}.avatar{display:inline-flex;align-items:center;justify-content:center;background:var(--bg-card-nested);color:var(--fg);border-radius:50%;overflow:hidden;flex-shrink:0}.avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.avatar--40{width:40px;height:40px;font-size:18px}.avatar--44{width:44px;height:44px;font-size:20px}.avatar--56{width:56px;height:56px;font-size:24px}.avatar--80{width:80px;height:80px;font-size:36px}.avatar--ring-perro{box-shadow:0 0 0 2px var(--brand-primary-soft)}.avatar--ring-gato{box-shadow:0 0 0 2px var(--brand-secondary-soft)}.phone-frame{width:100%;max-width:var(--max-w-mobile);margin:0 auto;background:var(--bg-page);position:relative;min-height:100vh}.page{padding:var(--s-5) var(--s-4) calc(var(--tab-bar-h) + var(--s-5));display:flex;flex-direction:column;gap:var(--s-4)}.row{display:flex;align-items:center;gap:var(--s-3)}.row--between{justify-content:space-between}.col{display:flex;flex-direction:column;gap:var(--s-3)}.divider{height:1px;background:var(--border);border:0;margin:0}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#2a241880}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.absolute{position:absolute}.relative{position:relative}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.border{border-width:1px}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}#root{min-height:100vh}
