:root{--font-heading: "Sora", "Trebuchet MS", sans-serif;--font-body: "Manrope", "Segoe UI", sans-serif;--color-bg: #f4f7fb;--color-bg-elevated: #ffffff;--color-surface: #ffffff;--color-surface-soft: #f8fafc;--color-border: #d8e1ec;--color-border-strong: #b8c5d6;--color-text: #0f172a;--color-text-muted: #334155;--color-text-soft: #64748b;--color-primary: #0f62c9;--color-primary-hover: #0b53ab;--color-primary-ink: #ffffff;--color-success: #15803d;--color-success-bg: #ecfdf3;--color-success-border: #8dd8aa;--color-danger: #b42318;--color-danger-bg: #fff1f1;--color-danger-border: #f3a7a2;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .06);--shadow-md: 0 10px 24px rgba(15, 23, 42, .08);--motion-fast: .16s ease;--motion-base: .22s ease;--focus-ring: 0 0 0 3px rgba(15, 98, 201, .25);--color-bg-glow-a: rgba(15, 98, 201, .08);--color-bg-glow-b: rgba(24, 160, 112, .08)}:root[data-theme=dark]{--color-bg: #08111e;--color-bg-elevated: #101b2b;--color-surface: #132239;--color-surface-soft: #1a2b43;--color-border: #243a57;--color-border-strong: #325177;--color-text: #e6edf8;--color-text-muted: #c6d5ea;--color-text-soft: #93abc7;--color-primary: #5cb7ff;--color-primary-hover: #7ac6ff;--color-primary-ink: #04111e;--color-success: #62d39c;--color-success-bg: rgba(26, 95, 64, .2);--color-success-border: #4bb584;--color-danger: #ff9890;--color-danger-bg: rgba(126, 41, 35, .2);--color-danger-border: #e07067;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .26);--shadow-md: 0 12px 28px rgba(2, 8, 16, .48);--focus-ring: 0 0 0 3px rgba(92, 183, 255, .34);--color-bg-glow-a: rgba(67, 144, 228, .12);--color-bg-glow-b: rgba(35, 141, 112, .12)}@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/manrope-latin-variable-DHIcAJRg.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora;font-style:normal;font-weight:600 700;font-display:swap;src:url(/assets/sora-latin-600-700-BUlRykrX.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/material-symbols-outlined-leQ29kk4.woff2) format("woff2")}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);color:var(--color-text);background:radial-gradient(circle at 88% -12%,var(--color-bg-glow-a),transparent 38%),radial-gradient(circle at -10% 100%,var(--color-bg-glow-b),transparent 42%),var(--color-bg);transition:background-color var(--motion-base),color var(--motion-base)}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--color-text)}button,input,select,textarea{font:inherit}button{min-height:44px}a{color:var(--color-primary)}:focus-visible{outline:none;box-shadow:var(--focus-ring)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.section-title{margin:0;font-size:clamp(1.25rem,1.2rem + .5vw,1.7rem);line-height:1.2}.input-field,.select-field{width:100%;min-height:44px;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-bg-elevated);color:var(--color-text);padding:.65rem .75rem;transition:border-color var(--motion-fast),box-shadow var(--motion-fast)}.input-field::placeholder{color:var(--color-text-soft)}.input-field:focus,.select-field:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.btn-primary,.btn-secondary{border-radius:var(--radius-md);border:1px solid transparent;padding:.62rem .95rem;font-weight:700;transition:background-color var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast),filter var(--motion-fast);cursor:pointer}.btn-primary{background:var(--color-primary);color:var(--color-primary-ink)}.btn-primary:hover:enabled{background:var(--color-primary-hover)}.btn-secondary{background:var(--color-surface-soft);border-color:var(--color-border-strong);color:var(--color-text)}.btn-secondary:hover:enabled{background:#eef2f7}.btn-primary:disabled,.btn-secondary:disabled{opacity:.65;cursor:not-allowed}.status-error,.status-success{margin-top:var(--space-4);border-left:4px solid;border-radius:var(--radius-md);padding:.68rem .78rem;font-weight:600}.status-error{border-left-color:var(--color-danger-border);background:var(--color-danger-bg);color:var(--color-danger)}.status-success{border-left-color:var(--color-success-border);background:var(--color-success-bg);color:var(--color-success)}.icon-text{display:inline-flex;align-items:center;gap:.35rem}.material-symbols-outlined{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;font-size:24px;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;line-height:1}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}#root{width:100%;min-height:100vh}.app-shell{width:100%;min-height:100vh;display:flex;justify-content:center;padding:0 1rem}.app-shell.with-navbar{padding-top:calc(72px + 1rem)}.app-shell.full-bleed{display:block;padding-left:0;padding-right:0}.app-shell.with-navbar.full-bleed{padding-top:72px}.app-shell.without-navbar{padding:0;justify-content:stretch}@media(max-width:768px){.app-shell.with-navbar{padding-top:calc(60px + .65rem)}.app-shell.with-navbar.full-bleed{padding-top:60px}}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;background:#fffffff0;border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.navbar-container{width:min(1200px,100%);margin:0 auto;min-height:72px;padding:.7rem 1rem;display:flex;justify-content:space-between;align-items:center}.navbar-brand{display:inline-flex;align-items:center;gap:.55rem;cursor:pointer}.navbar-brand-logo{width:42px;height:42px}.navbar-brand h1{margin:0;color:var(--color-text);font-size:1.2rem;font-family:var(--font-heading);cursor:pointer}.navbar-brand-link{margin-left:.9rem;border:0;background:transparent;color:var(--color-primary);font-size:1rem;font-weight:700;display:inline-flex;align-items:center;gap:.28rem;cursor:pointer;padding:.25rem .35rem;border-bottom:2px solid transparent}.navbar-brand-link:hover,.navbar-brand-link.active{border-bottom-color:var(--color-primary)}.navbar-brand-link-icon{font-size:1.05rem;line-height:1}.navbar-user-menu{position:relative}.navbar-public-actions{display:inline-flex;align-items:center;gap:.7rem}.navbar-theme-toggle{border:0;background:transparent;border-radius:999px;min-height:46px;min-width:62px;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .18s ease}.navbar-theme-toggle:hover{transform:translateY(-1px)}.navbar-theme-switch-track{width:56px;height:30px;border-radius:999px;border:1px solid #c5d3e4;background:#e2ebf5;padding:3px;display:inline-block;position:relative;overflow:hidden}.navbar-theme-switch-icon{position:absolute;top:50%;width:13px;height:13px;transform:translateY(-50%);color:#6d7f98;display:inline-grid;place-items:center}.navbar-theme-switch-icon svg{width:13px;height:13px;display:block}.navbar-theme-switch-icon.sun{left:6px}.navbar-theme-switch-icon.moon{right:6px}.navbar-theme-switch-thumb{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #10182838;transform:translate(0);transition:transform .17s ease}.navbar-theme-switch-track.is-dark .navbar-theme-switch-thumb{transform:translate(28px)}.navbar-public-link{border:0;background:transparent;color:var(--color-text);font-weight:700;cursor:pointer;padding:.45rem .6rem;border-radius:10px;text-decoration:none;transition:color .18s ease,background-color .18s ease,box-shadow .18s ease,text-shadow .18s ease}.navbar-public-link:hover{color:var(--color-primary);background:#1495e91a;box-shadow:0 0 0 1px #1495e940,0 0 18px -10px #1495e9e6;text-shadow:0 0 10px rgba(20,149,233,.35)}.navbar-public-login-btn{border:0;background:linear-gradient(180deg,#1495e9,#0d7ac6);color:#fff;border-radius:999px;min-height:40px;padding:.5rem .9rem;font-weight:700;cursor:pointer;box-shadow:0 12px 18px -14px #0d7ac6e6;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.navbar-public-login-btn:hover{background:linear-gradient(180deg,#1ca1f1,#0f84d1);transform:translateY(-1px);box-shadow:0 14px 22px -12px #0f86d7e6,0 0 18px -10px #1ca1f1e6;filter:saturate(1.08)}.navbar-menu{display:inline-flex;align-items:center;gap:1.15rem}.navbar-auth-mobile-only{display:none}.navbar-prof-links{display:inline-flex;align-items:center;gap:.2rem}.navbar-user-trigger{display:inline-flex;align-items:center;gap:.4rem;min-height:44px;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);padding:.45rem .65rem;cursor:pointer}.navbar-user{color:var(--color-text);font-size:.94rem;font-weight:700}.navbar-user-icon{font-size:1.1rem;color:var(--color-text-soft)}.navbar-user-caret{display:inline-flex;align-items:center;justify-content:center;font-size:1.15rem;line-height:1;color:var(--color-text-soft);transition:transform var(--motion-fast)}.navbar-user-caret.open{transform:rotate(180deg)}.navbar-dropdown{position:absolute;top:calc(100% + .35rem);right:0;min-width:220px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-md);overflow:hidden}.navbar-dropdown-item{display:block;width:100%;text-align:left;min-height:44px;border:none;background:transparent;color:var(--color-text);padding:.65rem .75rem;cursor:pointer;font-weight:600}.navbar-dropdown-item:hover{background:var(--color-surface-soft)}.navbar-dropdown-logout{color:var(--color-danger);border-top:1px solid var(--color-border)}.navbar-dropdown-empty{display:block;padding:.7rem .75rem;color:var(--color-text-soft);font-size:.9rem}.navbar-mobile-only{display:none}.navbar-patient-fab{position:fixed;right:1.1rem;bottom:1.1rem;width:58px;height:58px;border-radius:50%;border:1px solid #2f9de9;background:linear-gradient(180deg,#41a9f0,#2487d7);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 16px 24px -14px #0f172abf;z-index:980;transition:transform .17s ease,box-shadow .17s ease,filter .17s ease}.navbar-patient-fab:hover{transform:translateY(-1px);box-shadow:0 20px 26px -14px #0f172ad1;filter:saturate(1.05)}.navbar-patient-fab .material-symbols-outlined{font-size:2rem;line-height:1}@media(max-width:480px){.navbar-container{padding:.55rem .8rem}.navbar-brand h1{font-size:1.05rem}.navbar-brand-logo{width:36px;height:36px}.navbar-brand-link,.navbar-public-link{display:none}.navbar-mobile-only{display:block}.navbar-menu-hide-user-mobile .navbar-user-menu{display:none}}@media(max-width:768px){.navbar-container{min-height:60px;padding:.5rem .75rem}.navbar-brand h1{font-size:1.02rem}.navbar-brand-logo{width:32px;height:32px}.navbar-user-trigger{min-height:38px;padding:.35rem .55rem}.navbar-public-actions{gap:.45rem}.navbar-theme-toggle{min-height:42px;min-width:58px;padding:.16rem}.navbar-theme-switch-track{width:52px;height:28px}.navbar-theme-switch-thumb{width:20px;height:20px;top:3px;left:3px}.navbar-theme-switch-track.is-dark .navbar-theme-switch-thumb{transform:translate(26px)}.navbar-public-link,.navbar-prof-links{display:none}.navbar-auth-mobile-only{display:inline-flex}.navbar-user{display:none}.navbar-mobile-only{display:block}.navbar-patient-fab{display:none}}:root[data-theme=dark] .navbar{background:#0a1524e0;border-bottom-color:#2d4260}:root[data-theme=dark] .navbar-public-link{color:#cfe0f6}:root[data-theme=dark] .navbar-public-link:hover{color:#9dd3ff;background:#5cb7ff29;box-shadow:0 0 0 1px #5cb7ff57,0 0 18px -10px #5cb7ffe6;text-shadow:0 0 10px rgba(92,183,255,.45)}:root[data-theme=dark] .navbar-theme-toggle{background:transparent}:root[data-theme=dark] .navbar-theme-switch-track{border-color:#3a5474;background:#1a2f4a}:root[data-theme=dark] .navbar-theme-switch-icon{color:#9fb7d4}:root[data-theme=dark] .navbar-theme-switch-thumb{background:#ecf4ff}:root[data-theme=dark] .navbar-patient-fab{border-color:#4ea9ec;background:linear-gradient(180deg,#56b3f4,#2b8fdb);color:#061221;box-shadow:0 16px 24px -14px #01060ee0}.react-calendar{width:350px;max-width:100%;background:#fff;border:1px solid #a0a096;font-family:Arial,Helvetica,sans-serif;line-height:1.125em}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{display:flex;margin:-.5em}.react-calendar--doubleView .react-calendar__viewContainer>*{width:50%;margin:.5em}.react-calendar,.react-calendar *,.react-calendar *:before,.react-calendar *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.react-calendar button{margin:0;border:0;outline:none}.react-calendar button:enabled:hover{cursor:pointer}.react-calendar__navigation{display:flex;height:44px;margin-bottom:1em}.react-calendar__navigation button{min-width:44px;background:none}.react-calendar__navigation button:disabled{background-color:#f0f0f0}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#e6e6e6}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekNumbers .react-calendar__tile{display:flex;align-items:center;justify-content:center;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__days__day--weekend{color:#d10000}.react-calendar__month-view__days__day--neighboringMonth,.react-calendar__decade-view__years__year--neighboringDecade,.react-calendar__century-view__decades__decade--neighboringCentury{color:#757575}.react-calendar__year-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__century-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{max-width:100%;padding:10px 6.6667px;background:none;text-align:center;font:inherit;font-size:.833em}.react-calendar__tile:disabled{background-color:#f0f0f0;color:#ababab}.react-calendar__month-view__days__day--neighboringMonth:disabled,.react-calendar__decade-view__years__year--neighboringDecade:disabled,.react-calendar__century-view__decades__decade--neighboringCentury:disabled{color:#cdcdcd}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:#e6e6e6}.react-calendar__tile--now{background:#ffff76}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background:#ffffa9}.react-calendar__tile--hasActive{background:#76baff}.react-calendar__tile--hasActive:enabled:hover,.react-calendar__tile--hasActive:enabled:focus{background:#a9d4ff}.react-calendar__tile--active{background:#006edc;color:#fff}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#1087ff}.react-calendar--selectRange .react-calendar__tile--hover{background-color:#e6e6e6}.schedule-layout{width:min(100%,1060px);margin-inline:auto;padding:1rem;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.95fr);gap:1rem}.schedule-calendar-card,.schedule-slots-card,.schedule-selected-session{border:1px solid #d7e3ef;border-radius:16px;background:#fff}.schedule-calendar-card{padding:1rem;display:grid;align-content:start}.schedule-calendar-card h3{margin:0 0 .8rem;font-size:1.15rem;color:#0f172a}.schedule-calendar-card .react-calendar{width:100%;border:0;background:transparent;color:#0f172a;font-family:inherit}.schedule-calendar-card .react-calendar__navigation button{min-width:42px;border-radius:10px}.schedule-calendar-card .react-calendar__month-view__weekdays__weekday{color:#94a3b8;font-size:.76rem;text-transform:uppercase}.schedule-calendar-card .react-calendar__tile{border-radius:12px;min-height:46px}.schedule-calendar-card .react-calendar__tile--active{background:transparent;color:inherit}.schedule-calendar-card .react-calendar__tile.schedule-day-selected{background:#2196f3;color:#fff;box-shadow:0 10px 18px -14px #2196f3e6}.schedule-calendar-card .react-calendar__tile.schedule-day-available{background:#e2efff;color:#1e293b}.schedule-calendar-card .react-calendar__tile.schedule-day-unavailable{color:#cbd5e1}.schedule-calendar-card .react-calendar__tile:disabled{background:transparent;color:#cbd5e1}.schedule-legend{margin-top:.85rem;display:flex;gap:.9rem;flex-wrap:wrap}.schedule-legend span{display:inline-flex;align-items:center;gap:.42rem;color:#334155;font-size:.94rem}.schedule-legend i{width:10px;height:10px;border-radius:50%;display:inline-block}.schedule-legend i.selected{background:#2196f3}.schedule-legend i.available{background:#93c5fd}.schedule-legend i.unavailable{background:#e2e8f0}.schedule-slots-card{padding:1rem;display:grid;gap:.78rem;align-content:start}.schedule-slots-card h3{margin:0;font-size:1.15rem;color:#0f172a}.schedule-slots-card>p{margin:-.2rem 0 0;color:#64748b}.schedule-slot-group{display:grid;gap:.55rem}.schedule-slot-group h4{margin:.3rem 0 0;color:#94a3b8;font-size:.82rem;letter-spacing:.08em;grid-column:1 / -1}.schedule-slot-group{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-slot-btn{border:1px solid #dbe7f3;border-radius:10px;min-height:40px;padding:.45rem .6rem;text-align:center;background:#fff;color:#0f172a;font-size:.92rem;font-weight:700;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.schedule-slot-btn:hover{border-color:#93c5fd}.schedule-slot-btn.selected{border-color:#1d8fe5;background:linear-gradient(180deg,#35a4f5,#2092e6);color:#fff}.schedule-empty{border:1px dashed #d7e3ef;border-radius:12px;padding:.7rem;color:#64748b;background:#f8fbff}.schedule-empty.small{font-size:.9rem;grid-column:1 / -1}.schedule-selected-session{margin-top:.9rem;padding:.9rem 1rem;display:grid;gap:.25rem;align-content:center}.schedule-selected-session span{color:#0284c7;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700}.schedule-selected-session strong{color:#0f172a;font-size:1.05rem}.schedule-next-btn{margin-top:.55rem;width:100%;border:0;border-radius:12px;min-height:44px;padding:.6rem .9rem;background:linear-gradient(180deg,#35a4f5,#2092e6);color:#fff;font-weight:700;cursor:pointer}.schedule-next-btn:disabled{opacity:.6;cursor:not-allowed}.schedule-success{border:1px solid #bbf7d0;border-radius:12px;padding:.7rem;color:#166534;background:#f0fdf4}.booking-form-error{border:1px solid #fecaca;border-left:4px solid #ef4444;border-radius:12px;padding:.7rem;color:#b91c1c;background:#fef2f2;font-weight:600}.booking-form-page{width:min(100%,720px);padding:1rem;display:flex;justify-content:center}.booking-form-card{width:min(100%,560px);border:1px solid #d7e3ef;border-radius:16px;background:#fff;padding:1.2rem;display:grid;gap:.75rem}.booking-error-shake{animation:bookingCardShake .4s ease-in-out}@keyframes bookingCardShake{0%,to{transform:translate(0)}15%{transform:translate(-7px)}30%{transform:translate(7px)}45%{transform:translate(-5px)}60%{transform:translate(5px)}75%{transform:translate(-2px)}90%{transform:translate(2px)}}.booking-progress-line{height:4px;border-radius:999px;background:linear-gradient(90deg,#2196f3 0% 55%,#e2e8f0 55% 100%)}.booking-form-card h2{margin:.2rem 0 0;color:#0f172a;font-size:1.85rem}.booking-form-copy{margin:0 0 .35rem;color:#64748b;line-height:1.45}.booking-form-card label{color:#0f172a;font-weight:700}.booking-form-card input,.booking-form-card select,.booking-form-card textarea{width:100%;border:1px solid #d7e3ef;border-radius:12px;min-height:44px;padding:.62rem .75rem;background:#fff;color:#0f172a}.booking-form-card textarea{min-height:110px;resize:vertical}.booking-surgery-toggle{display:flex;align-items:center;justify-content:space-between;gap:.8rem;border:1px solid #d7e3ef;border-radius:12px;padding:.65rem .75rem;background:#f8fbff}.booking-surgery-toggle label{margin:0;font-weight:700;color:#0f172a}.booking-surgery-toggle select{max-width:190px;min-height:38px}.booking-surgery-toggle.disabled{opacity:.7}.booking-surgery-helper{margin:-.15rem 0 .1rem;color:#475569;font-size:.9rem}.booking-surgery-helper.warning{color:#b45309}.booking-summary{margin-top:.2rem;border:1px solid #d7e3ef;border-radius:12px;background:#f8fbff;padding:.7rem;display:grid;gap:.25rem;color:#334155}.booking-form-actions{margin-top:.25rem;display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.booking-secondary-btn,.booking-primary-btn{border-radius:12px;min-height:44px;font-weight:700;cursor:pointer}.booking-secondary-btn{border:1px solid #cbd5e1;background:#fff;color:#0f172a}.booking-primary-btn{border:0;background:linear-gradient(180deg,#35a4f5,#2092e6);color:#fff}.booking-secondary-btn:disabled,.booking-primary-btn:disabled{opacity:.6;cursor:not-allowed}.booking-review-page{width:min(100%,860px);padding:1rem;display:flex;justify-content:center}.booking-review-card{width:min(100%,620px);border:1px solid #d7e3ef;border-radius:16px;background:#fff;padding:1.2rem;display:grid;gap:.75rem}.booking-review-back{justify-self:start;border:0;background:transparent;color:#0f8ee0;font-weight:700;cursor:pointer;padding:0}.booking-review-card h2{margin:.2rem 0 0;color:#0f172a;font-size:2rem}.booking-review-card>p{margin:0;color:#64748b}.booking-review-block{border:1px solid #d7e3ef;border-radius:12px;padding:.8rem;background:#f8fbff;display:grid;gap:.2rem}.booking-review-label{color:#94a3b8;font-size:.78rem;letter-spacing:.08em;font-weight:700}.booking-review-block strong,.booking-review-mini strong{color:#0f172a;font-size:1.05rem}.booking-review-block small,.booking-review-mini small{color:#64748b}.booking-review-block.profesional{grid-template-columns:auto 1fr;align-items:center;gap:.75rem}.booking-review-avatar{width:46px;height:46px;border-radius:50%;background:linear-gradient(180deg,#dbeafe,#bfdbfe);border:2px solid #93c5fd;color:#1e3a8a;font-weight:800;display:grid;place-items:center}.booking-review-professional-text{display:grid;gap:.2rem}.booking-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.booking-review-mini{border:1px solid #d7e3ef;border-radius:12px;padding:.75rem;background:#f8fbff;display:grid;gap:.25rem}.booking-review-alert{border:1px solid #f7d6a2;border-left:4px solid #f59e0b;border-radius:14px;padding:.8rem .9rem;background:linear-gradient(180deg,#fff8ea,#fffdf8);color:#6b4c1e;font-size:.93rem;line-height:1.45;display:grid;grid-template-columns:30px 1fr;gap:.75rem;align-items:start;box-shadow:0 6px 18px #f59e0b1f}.booking-review-alert-inline{margin-top:.2rem}.booking-review-alert-icon{width:34px;height:34px;border-radius:999px;position:relative;isolation:isolate;background:radial-gradient(circle at 30% 30%,#fbbf24,#f59e0b 72%);color:#fff;display:inline-grid;place-items:center;box-shadow:0 4px 12px #f59e0b52}.booking-review-alert-icon:before{content:"";position:absolute;inset:2px;border-radius:inherit;border:1px solid rgba(255,255,255,.45);z-index:-1}.booking-review-alert-icon svg{width:19px;height:19px}.booking-review-alert-triangle{fill:#fff8ea}.booking-review-alert-exclamation{fill:none;stroke:#9a5c05;stroke-width:2;stroke-linecap:round}.booking-review-alert-dot{fill:#9a5c05}.booking-review-alert-content{display:grid;gap:.22rem}.booking-review-alert-title{margin:0;color:#7a4f00;font-size:.88rem;letter-spacing:.04em;text-transform:uppercase}.booking-review-alert-text{color:#6b4c1e}.booking-review-alert-time{display:inline-block;width:fit-content;margin-top:.1rem;padding:.2rem .5rem;border-radius:999px;background:#fff3d8;border:1px solid #f4d197;color:#8a5605;font-weight:700}.booking-confirm-btn{margin-top:.2rem}.booking-review-link{justify-self:center;border:0;background:transparent;color:#0f8ee0;font-weight:700;cursor:pointer}.booking-loading-inline{display:inline-flex;align-items:center}.booking-spinner-svg{width:20px;height:20px;animation:bookingSpin .8s linear infinite}.booking-spinner-track{stroke:#ffffff52;stroke-width:2.5}.booking-spinner-head{stroke:#fff;stroke-width:2.5;stroke-linecap:round}.booking-loading-overlay{position:fixed;inset:0;background:#0f172a33;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:1200}.booking-loading-card{width:min(92vw,420px);border:1px solid #d7e3ef;border-radius:16px;background:#fff;box-shadow:0 18px 36px #0f172a26;padding:1rem 1.15rem;display:grid;justify-items:center;gap:.7rem;text-align:center}.booking-loading-card p{margin:0;color:#0f172a;font-size:.94rem;font-weight:600;line-height:1.35}.booking-loading-spinner-svg{width:38px;height:38px;animation:bookingLoadingSpin .9s linear infinite}.booking-loading-spinner-track{fill:none;stroke:#dbe4ef;stroke-width:4}.booking-loading-spinner-head{fill:none;stroke:#35a4f5;stroke-width:4;stroke-linecap:round;stroke-dasharray:92;stroke-dashoffset:28}.booking-result-page{width:min(100%,640px);padding:.6rem .8rem;display:flex;justify-content:center;align-items:flex-start}.booking-result-card{width:min(100%,420px);border:1px solid #d7e3ef;border-radius:16px;background:#fff;padding:.95rem .9rem .85rem;display:grid;justify-items:center;align-content:start;gap:.38rem}.booking-result-card h3{margin:.14rem 0 0;color:#0f172a;font-size:1.45rem;line-height:1.15}.booking-result-card p{margin:.04rem 0 .16rem;color:#64748b;line-height:1.25}.booking-success-details{width:100%;margin-top:.34rem;border:1px solid #d7e3ef;border-radius:12px;background:#f8fbff;padding:.46rem .64rem;display:grid;grid-template-columns:1fr;gap:.04rem;text-align:left}.booking-success-details span{color:#64748b;font-size:.76rem;letter-spacing:.03em;text-transform:uppercase;font-weight:700}.booking-success-details strong{color:#0f172a;font-size:.9rem;line-height:1.24;margin-bottom:.14rem}.booking-success-details strong:last-child{margin-bottom:0}.booking-result-guest-note{margin-top:.14rem;border:1px solid #cfe0f2;border-left:4px solid #3b82f6;border-radius:12px;background:#fff9d8;color:#7a5a00;padding:.5rem .7rem;font-size:.88rem;font-weight:600;line-height:1.32;text-align:left}.booking-result-card.error h3{color:#991b1b}.booking-result-card.error p{color:#b91c1c}.booking-tick{width:66px;height:66px}.booking-tick-circle{stroke:#35a4f5;stroke-width:2;stroke-dasharray:166;stroke-dashoffset:166;animation:bookingTickStroke .55s ease forwards}.booking-tick-check{stroke:#35a4f5;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:36;stroke-dashoffset:36;animation:bookingTickCheck .35s ease .5s forwards}.booking-tick-circle.error{stroke:#ef4444}.booking-cross-line{stroke:#ef4444;stroke-width:3;stroke-linecap:round;stroke-dasharray:30;stroke-dashoffset:30}.booking-cross-line.one{animation:bookingTickCheck .32s ease .45s forwards}.booking-cross-line.two{animation:bookingTickCheck .32s ease .62s forwards}@keyframes bookingSpin{to{transform:rotate(360deg)}}@keyframes bookingLoadingSpin{to{transform:rotate(360deg)}}@media(max-width:920px){.schedule-layout{grid-template-columns:1fr;padding-bottom:calc(7.5rem + env(safe-area-inset-bottom))}.panel-profesional-shell .schedule-layout{padding-bottom:calc(10.5rem + env(safe-area-inset-bottom))}.booking-review-grid{grid-template-columns:1fr}.schedule-selected-session{position:fixed;left:50%;bottom:calc(.75rem + env(safe-area-inset-bottom));transform:translate(-50%);width:min(calc(100% - 1.5rem),680px);margin-top:0;z-index:40;box-shadow:0 10px 26px #0f172a2e}.panel-profesional-shell .schedule-selected-session{bottom:calc(72px + .9rem + env(safe-area-inset-bottom))}}@media(max-width:560px){.booking-result-page{padding:.45rem .65rem}.booking-result-card{padding:.78rem .76rem .72rem;gap:.3rem}.booking-tick{width:54px;height:54px}.booking-result-card h3{margin:0;font-size:1.2rem}.booking-result-card p{font-size:.92rem}}@media(prefers-reduced-motion:reduce){.schedule-slot-btn{transition:none}.booking-error-shake,.booking-spinner-svg,.booking-loading-spinner-svg,.booking-tick-circle,.booking-tick-check{animation:none}}:root[data-theme=dark] .schedule-calendar-card,:root[data-theme=dark] .schedule-slots-card,:root[data-theme=dark] .schedule-selected-session,:root[data-theme=dark] .booking-form-card,:root[data-theme=dark] .booking-review-card,:root[data-theme=dark] .booking-result-card,:root[data-theme=dark] .booking-loading-card{background:var(--color-surface);border-color:var(--color-border)}:root[data-theme=dark] .schedule-calendar-card h3,:root[data-theme=dark] .schedule-slots-card h3,:root[data-theme=dark] .schedule-slot-btn,:root[data-theme=dark] .schedule-selected-session strong,:root[data-theme=dark] .booking-form-card h2,:root[data-theme=dark] .booking-form-card label,:root[data-theme=dark] .booking-review-card h2,:root[data-theme=dark] .booking-review-block strong,:root[data-theme=dark] .booking-review-mini strong,:root[data-theme=dark] .booking-result-card h3{color:var(--color-text)}:root[data-theme=dark] .schedule-calendar-card .react-calendar,:root[data-theme=dark] .schedule-slot-btn,:root[data-theme=dark] .booking-form-card input,:root[data-theme=dark] .booking-form-card select,:root[data-theme=dark] .booking-form-card textarea,:root[data-theme=dark] .booking-secondary-btn{background:var(--color-bg-elevated);color:var(--color-text);border-color:var(--color-border)}:root[data-theme=dark] .schedule-slot-btn.selected{border-color:#7ed0ff;background:linear-gradient(180deg,#63beff,#3fa6ee);color:#03111f;box-shadow:0 0 0 1px #7ed0ff8c,0 10px 18px -14px #5cb7ffe6}:root[data-theme=dark] .schedule-calendar-card .react-calendar{color:var(--color-text);border:1px solid var(--color-border)}:root[data-theme=dark] .schedule-calendar-card .react-calendar__navigation button{color:var(--color-text)}:root[data-theme=dark] .schedule-calendar-card .react-calendar__month-view__weekdays__weekday{color:var(--color-text-soft)}:root[data-theme=dark] .schedule-calendar-card .react-calendar__tile{color:var(--color-text-muted)}:root[data-theme=dark] .schedule-calendar-card .react-calendar__tile:enabled:hover,:root[data-theme=dark] .schedule-calendar-card .react-calendar__tile:enabled:focus{background:#5cb7ff29;color:var(--color-primary)}:root[data-theme=dark] .schedule-calendar-card .react-calendar__tile.schedule-day-selected{background:linear-gradient(180deg,#5cb7ff,#3a9eea);color:#04111e;box-shadow:0 10px 18px -14px #5cb7ffe6}:root[data-theme=dark] .schedule-calendar-card .react-calendar__tile.schedule-day-available{background:#62d39c3d;color:#d7f8e8}:root[data-theme=dark] .schedule-calendar-card .react-calendar__tile.schedule-day-unavailable{background:#1322398c;color:var(--color-text-soft)}:root[data-theme=dark] .schedule-calendar-card .react-calendar__tile:disabled{color:#6f88a6}:root[data-theme=dark] .schedule-legend i{border:1px solid rgba(230,237,248,.22)}:root[data-theme=dark] .schedule-legend i.selected{background:linear-gradient(180deg,#5cb7ff,#3a9eea);border-color:#5cb7ff8c}:root[data-theme=dark] .schedule-legend i.available{background:#62d39c3d;border-color:#62d39c7a}:root[data-theme=dark] .schedule-legend i.unavailable{background:#1322398c;border-color:#93abc74d}:root[data-theme=dark] .schedule-empty,:root[data-theme=dark] .booking-summary,:root[data-theme=dark] .booking-review-block,:root[data-theme=dark] .booking-review-mini,:root[data-theme=dark] .booking-surgery-toggle{background:var(--color-surface-soft);border-color:var(--color-border);color:var(--color-text-muted)}:root[data-theme=dark] .booking-form-copy,:root[data-theme=dark] .booking-review-card>p,:root[data-theme=dark] .booking-review-block small,:root[data-theme=dark] .booking-review-mini small,:root[data-theme=dark] .booking-result-card p,:root[data-theme=dark] .booking-loading-card p,:root[data-theme=dark] .schedule-slots-card>p,:root[data-theme=dark] .schedule-legend span,:root[data-theme=dark] .booking-surgery-helper{color:var(--color-text-soft)}:root[data-theme=dark] .booking-progress-line{background:linear-gradient(90deg,#2196f3 0% 55%,#2a3f5e 55% 100%)}:root[data-theme=dark] .booking-result-guest-note{border-color:#6d5a1c;border-left-color:#facc15;background:#2b2409;color:#fef08a}:root[data-theme=dark] .booking-success-details{background:var(--color-surface-soft);border-color:var(--color-border)}:root[data-theme=dark] .booking-success-details span{color:var(--color-text-soft)}:root[data-theme=dark] .booking-success-details strong{color:var(--color-text)}:root[data-theme=dark] .booking-form-error{border-color:#7f1d1d;border-left-color:#f87171;background:#2f1214;color:#fecaca}.generar-disponibilidad-container{width:100%;max-width:1280px;margin-inline:auto;padding:1rem}.generar-disponibilidad-card.agenda-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:1rem;display:grid;gap:.9rem}.agenda-header{text-align:center}.agenda-header h2{margin:0}.generar-disponibilidad-user{margin:.3rem 0 0;color:var(--color-text-muted);font-weight:600;font-size:.94rem}.agenda-toolbar{border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;padding:.75rem;display:grid;gap:.75rem}.agenda-toolbar-top{display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap}.agenda-month-title{margin:0;color:var(--color-text);font-size:1.15rem}.agenda-toolbar-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:.8rem;flex-wrap:wrap}.agenda-generate-column{display:grid;gap:.55rem;min-width:0;width:fit-content;max-width:min(100%,520px);flex:0 0 auto;justify-items:start}.agenda-checkbox{display:inline-flex;align-items:center;gap:.6rem;color:var(--color-text);font-size:.92rem;font-weight:600;min-height:44px}.agenda-checkbox input{width:18px;height:18px;cursor:pointer}.agenda-toolbar-controls{display:flex;gap:.8rem;flex-wrap:wrap}.agenda-control{display:grid;gap:.24rem;min-width:180px}.agenda-control span{color:var(--color-text-soft);font-size:.84rem;font-weight:700}.agenda-control select{min-height:44px;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:#fff;color:var(--color-text);padding:.45rem .6rem}.agenda-nav-group{display:inline-flex;gap:.45rem}.agenda-nav-btn{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-soft);color:var(--color-text);min-height:44px;min-width:44px;padding:.35rem .78rem;font-size:.92rem;font-weight:700;cursor:pointer;transition:background var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast)}.agenda-nav-btn.icon{width:44px;padding:0}.agenda-nav-btn:hover:enabled{background:#eef2f7}.agenda-content{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:.9rem;align-items:start}.agenda-grid-section{min-width:0}.agenda-info{margin:0 0 .6rem;color:var(--color-text-muted);font-weight:600;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);padding:.56rem .7rem}.agenda-board{border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;padding:.42rem}.agenda-grid-scroll{width:100%;overflow-x:auto;overflow-y:auto;max-height:64vh}.agenda-grid-layer{position:relative;min-width:860px}.agenda-grid{width:100%;min-width:860px;border-collapse:collapse;table-layout:fixed;background:#fff}.agenda-grid th,.agenda-grid td{border:1px solid var(--color-border);padding:0}.agenda-corner-cell{width:62px;color:var(--color-text-soft);font-size:.75rem;font-weight:700;text-transform:uppercase;background:#f7fafc;position:sticky;top:0;left:0;z-index:35}.agenda-day-header{height:70px;background:#f9fbff;color:var(--color-text);position:sticky;top:0;z-index:30}.agenda-day-header.today{background:#eaf4ff}.agenda-day-header.today strong{color:var(--color-primary)}.agenda-day-header span{display:block;font-size:.8rem;font-weight:700}.agenda-day-header strong{display:block;margin-top:.05rem;font-size:1.42rem;line-height:1;font-weight:600}.agenda-time-cell{width:62px;text-align:center;color:var(--color-text);font-size:.88rem;font-weight:700;background:#fff;position:sticky;left:0;z-index:20}.agenda-slot-cell{min-width:110px;height:44px;background:#fff}.agenda-slot{width:100%;height:44px;border:none;background:transparent;position:relative;cursor:pointer;transition:background var(--motion-fast),box-shadow var(--motion-fast)}.agenda-slot:hover:enabled{background:#f5f8fc}.agenda-slot.available{background:#eefbf1}.agenda-slot.past{cursor:not-allowed;background:#f8fafc}.agenda-slot.reserved{background:repeating-linear-gradient(135deg,#ffefef 0 8px,#ffe2e2 8px 16px)}.agenda-slot.selected{box-shadow:inset 0 0 0 2px var(--color-primary)}.agenda-slot-line{position:absolute;left:0;right:0;top:50%;height:2px;background:#3ea36b;transform:translateY(-50%);opacity:0}.agenda-slot.available .agenda-slot-line{opacity:1}.agenda-slot.reserved .agenda-slot-line{background:#ca3f3f;opacity:1}.agenda-reserva-tooltip{position:absolute;left:.35rem;bottom:calc(100% + .35rem);width:230px;z-index:30;border:1px solid #f0b8b8;border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-md);padding:.48rem .58rem;display:grid;gap:.18rem;text-align:left;color:var(--color-text);max-height:220px;overflow-y:auto;pointer-events:none}.agenda-reserva-tooltip.tooltip-left{left:auto;right:calc(100% + .35rem)}.agenda-reserva-tooltip.tooltip-below{bottom:auto;top:calc(100% + .35rem)}.agenda-reserva-tooltip strong{margin-top:.15rem;color:#962b2b;font-size:.72rem;text-transform:uppercase}.agenda-reserva-item{display:grid;gap:.1rem;padding:.3rem 0;border-top:1px dashed #f4cbcb}.agenda-reserva-item:first-of-type{border-top:none;padding-top:.1rem}.agenda-current-time-line{position:absolute;left:0;right:0;height:2px;background:#dc2626;z-index:25;pointer-events:none}.agenda-current-time-line:before{content:"";position:absolute;left:58px;top:50%;width:10px;height:10px;border-radius:999px;background:#dc2626;transform:translate(-50%,-50%)}.agenda-current-time-label{position:absolute;right:.3rem;top:50%;transform:translateY(-50%);border-radius:999px;padding:.06rem .38rem;color:#fff;font-size:.7rem;font-weight:700;background:#dc2626}.agenda-side-panel{border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;padding:.8rem;display:grid;gap:.7rem;position:sticky;top:calc(72px + 1rem)}.agenda-side-panel-header h4{margin:0;color:var(--color-text)}.agenda-side-panel-header p{margin:.28rem 0 0;color:var(--color-text-soft);font-size:.88rem}.agenda-side-panel-list{display:grid;gap:.6rem}.agenda-side-panel-item{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);padding:.62rem;display:grid;gap:.24rem;font-size:.86rem;color:var(--color-text)}.agenda-side-panel-empty{border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-soft);padding:.72rem;color:var(--color-text-soft);display:grid;gap:.24rem}.agenda-side-panel-empty p{margin:0;font-size:.9rem}.agenda-feedback{display:grid;gap:.6rem;justify-items:start;width:fit-content;max-width:100%}.agenda-footer{display:flex;justify-content:flex-end}.agenda-actions{display:inline-flex;gap:.6rem}.agenda-actions button{min-height:44px;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);padding:.55rem .92rem;font-weight:700;cursor:pointer;color:var(--color-text);background:var(--color-surface-soft);transition:background var(--motion-fast),box-shadow var(--motion-fast),border-color var(--motion-fast)}.agenda-actions button:hover:enabled{background:#eef2f7}.agenda-actions button:disabled{opacity:.7;cursor:not-allowed}.agenda-nav-btn:focus-visible,.agenda-actions button:focus-visible,.agenda-control select:focus-visible,.agenda-slot:focus-visible{outline:none;box-shadow:var(--focus-ring)}.generar-disponibilidad-error{margin:0;color:var(--color-danger);background:var(--color-danger-bg);border-left:4px solid var(--color-danger-border);border-radius:var(--radius-md);padding:.65rem .75rem;width:fit-content;max-width:min(100%,520px)}.generar-disponibilidad-success{margin:0;color:var(--color-success);background:var(--color-success-bg);border-left:4px solid var(--color-success-border);border-radius:var(--radius-md);padding:.65rem .75rem;width:fit-content;max-width:min(100%,520px)}.agenda-success-overlay{position:fixed;inset:0;background:#0f172a3d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:1300}.agenda-success-card{width:min(92vw,420px);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-md);padding:1rem 1.15rem;display:grid;justify-items:center;gap:.7rem;text-align:center}.agenda-success-card p{margin:0;color:var(--color-text);font-size:.98rem;font-weight:700;line-height:1.35}@media(max-width:1024px){.agenda-content{grid-template-columns:1fr}.agenda-side-panel{position:static}}@media(max-width:620px){.generar-disponibilidad-container{max-width:none;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:0}.generar-disponibilidad-card.agenda-card{width:100%;border-radius:0;border-left:0;border-right:0;box-shadow:none;padding:.65rem}.agenda-toolbar{padding:.65rem}.agenda-toolbar-bottom,.agenda-toolbar-controls{width:100%}.agenda-generate-column{width:100%;min-width:0;max-width:100%}.agenda-control{width:100%;min-width:0}.agenda-month-title{font-size:1.05rem}.agenda-grid-scroll{max-height:72vh}.agenda-grid-layer,.agenda-grid{min-width:540px}.agenda-corner-cell,.agenda-time-cell{width:48px}.agenda-time-cell{font-size:.78rem}.agenda-day-header strong{font-size:1.08rem}.agenda-slot-cell,.agenda-slot{min-width:70px}.agenda-current-time-line:before{left:44px}.agenda-reserva-tooltip{display:none}.agenda-actions{width:100%;display:grid;grid-template-columns:1fr}}:root[data-theme=dark] .agenda-toolbar,:root[data-theme=dark] .agenda-control select,:root[data-theme=dark] .agenda-board,:root[data-theme=dark] .agenda-grid,:root[data-theme=dark] .agenda-time-cell,:root[data-theme=dark] .agenda-slot-cell,:root[data-theme=dark] .agenda-side-panel,:root[data-theme=dark] .agenda-loading-card,:root[data-theme=dark] .agenda-success-card{background:var(--color-surface)}:root[data-theme=dark] .agenda-corner-cell,:root[data-theme=dark] .agenda-day-header{background:var(--color-surface-soft)}:root[data-theme=dark] .agenda-day-header.today{background:#5cb7ff2e}:root[data-theme=dark] .agenda-slot:hover:enabled{background:#5cb7ff1f}:root[data-theme=dark] .agenda-slot.available{background:#4db67838}:root[data-theme=dark] .agenda-slot.past{background:#1322398c}:root[data-theme=dark] .agenda-slot.reserved{background:repeating-linear-gradient(135deg,#a0363657 0 8px,#78272757 8px 16px)}:root[data-theme=dark] .agenda-reserva-tooltip{background:var(--color-surface);border-color:#ff989073}:root[data-theme=dark] .agenda-reserva-tooltip strong{color:var(--color-danger)}:root[data-theme=dark] .agenda-reserva-item{border-top-color:#ff989047}.agenda-content.agenda-content-simple{grid-template-columns:1fr;margin-top:.9rem}.agenda-header{margin-bottom:.85rem}.agenda-board{position:relative;border-radius:18px;overflow:hidden}.agenda-grid-scroll{border-radius:14px}.agenda-grid{border-radius:12px;overflow:visible}.agenda-grid-layer:before{content:"";position:absolute;top:0;bottom:0;left:62px;width:2px;background:#a8b7c9;pointer-events:none;z-index:34}.agenda-current-time-line.agenda-current-time-line-blue{background:#0284c7}.agenda-current-time-line.agenda-current-time-line-blue:before{background:#0284c7}.agenda-current-time-line.agenda-current-time-line-blue .agenda-current-time-label{background:#0284c7}.agenda-reserva-phone-row{display:inline-flex;align-items:center;gap:.2rem;flex-wrap:wrap}.agenda-whatsapp-link{display:inline-flex;align-items:center;gap:.28rem;color:#0f5132;font-weight:700;text-decoration:none;cursor:pointer;transition:opacity var(--motion-fast)}.agenda-whatsapp-link:hover,.agenda-whatsapp-link:focus-visible{opacity:.85;text-decoration:underline}.agenda-whatsapp-logo{width:.9rem;height:.9rem;flex:0 0 auto}.agenda-reserva-tooltip{pointer-events:auto}.agenda-day-header-inner{display:grid;justify-items:center}.agenda-day-header-inner.is-sliding-next{animation:agendaWeekHeaderSlideNext .38s ease-out both}.agenda-day-header-inner.is-sliding-prev{animation:agendaWeekHeaderSlidePrev .38s ease-out both}@keyframes agendaWeekHeaderSlideNext{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:translate(0)}}@keyframes agendaWeekHeaderSlidePrev{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}@media(min-width:769px){.agenda-grid thead th{border-bottom:2px solid #a8b7c9;box-shadow:none}.agenda-corner-cell,.agenda-time-cell{border-right:2px solid #a8b7c9;box-shadow:none}.agenda-grid tbody tr:first-child .agenda-time-cell,.agenda-grid tbody tr:first-child .agenda-slot-cell{border-top:0}}.agenda-generate-week-btn{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-soft);color:var(--color-text);min-height:44px;padding:.55rem .82rem;width:fit-content;max-width:100%;font-size:.92rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;transition:background var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast)}.agenda-generate-week-btn:hover:enabled{background:#eef2f7}.agenda-generate-week-btn:disabled{opacity:.7;cursor:wait}.agenda-loading-overlay{position:fixed;inset:0;background:#0f172a33;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:1200}.agenda-loading-card{width:min(92vw,420px);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-md);padding:1rem 1.15rem;display:grid;justify-items:center;gap:.7rem;text-align:center}.agenda-loading-card p{margin:0;color:var(--color-text);font-size:.94rem;font-weight:600;line-height:1.35}.agenda-loading-spinner-svg{width:38px;height:38px;animation:agendaGenerateSpin .9s linear infinite}.agenda-loading-spinner-track{fill:none;stroke:#dbe4ef;stroke-width:4}.agenda-loading-spinner-head{fill:none;stroke:var(--color-primary);stroke-width:4;stroke-linecap:round;stroke-dasharray:92;stroke-dashoffset:28}.agenda-feedback-mobile{display:none}@keyframes agendaGenerateSpin{to{transform:rotate(360deg)}}@media(max-width:768px){.agenda-feedback-desktop{display:none}.agenda-feedback-mobile{display:grid;width:100%;justify-items:stretch}.agenda-feedback-mobile .generar-disponibilidad-error,.agenda-feedback-mobile .generar-disponibilidad-success,.agenda-feedback-mobile .generar-disponibilidad-tick{width:100%;max-width:100%}.agenda-grid-scroll{overflow-x:auto}.agenda-grid-layer,.agenda-grid{min-width:100%;width:100%}.agenda-grid thead th{position:sticky;top:0;z-index:30;background:#f9fbff;border-bottom:2px solid #a8b7c9}.agenda-corner-cell,.agenda-time-cell{width:40px;min-width:40px;max-width:40px;white-space:nowrap;font-variant-numeric:tabular-nums;left:auto}.agenda-grid-layer:before{left:40px}.agenda-corner-cell{background:#f7fafc;position:sticky;top:0;z-index:40;font-size:.62rem;border-right:2px solid #a8b7c9}.agenda-time-cell{position:static;background:#fff;z-index:1;box-shadow:none;font-size:.66rem;font-weight:700;padding:0 .1rem;border-right:2px solid #a8b7c9}.agenda-day-header{height:44px;padding:.1rem;position:sticky;top:0;z-index:30;background:#f9fbff}.agenda-day-header span{font-size:.56rem}.agenda-day-header strong{font-size:.9rem;margin-top:0}.agenda-slot-cell,.agenda-slot{min-width:0;width:100%;height:32px}.agenda-grid tbody tr:first-child .agenda-time-cell,.agenda-grid tbody tr:first-child .agenda-slot-cell{border-top:2px solid #a8b7c9}.agenda-slot-line{height:1px}.agenda-current-time-line:before{left:36px}.agenda-reserva-tooltip.mobile{display:grid;position:fixed;left:auto;right:.9rem;bottom:calc(76px + env(safe-area-inset-bottom,0px));top:auto;width:min(78vw,260px);max-height:28vh;padding:.4rem .5rem;gap:.12rem;z-index:320}.agenda-reserva-tooltip.mobile.tooltip-left,.agenda-reserva-tooltip.mobile.tooltip-below{left:auto;right:.9rem;top:auto;bottom:calc(76px + env(safe-area-inset-bottom,0px))}.agenda-reserva-tooltip.mobile strong{font-size:.66rem;margin-top:0}.agenda-reserva-tooltip.mobile .agenda-reserva-item{gap:.08rem;padding:.22rem 0}.agenda-reserva-tooltip.mobile .agenda-reserva-item span{font-size:.72rem;line-height:1.2}}:root[data-theme=dark] .agenda-grid-layer:before{background:var(--color-border-strong)}:root[data-theme=dark] .agenda-whatsapp-link{color:var(--color-success)}:root[data-theme=dark] .agenda-loading-card{background:var(--color-surface)}@media(min-width:769px){:root[data-theme=dark] .agenda-grid thead th{border-bottom-color:var(--color-border-strong)}:root[data-theme=dark] .agenda-corner-cell,:root[data-theme=dark] .agenda-time-cell{border-right-color:var(--color-border-strong)}}@media(max-width:768px){:root[data-theme=dark] .agenda-grid thead th,:root[data-theme=dark] .agenda-day-header{background:var(--color-surface-soft);border-bottom-color:var(--color-border-strong)}:root[data-theme=dark] .agenda-corner-cell,:root[data-theme=dark] .agenda-time-cell{background:var(--color-surface);border-right-color:var(--color-border-strong)}:root[data-theme=dark] .agenda-grid tbody tr:first-child .agenda-time-cell,:root[data-theme=dark] .agenda-grid tbody tr:first-child .agenda-slot-cell{border-top-color:var(--color-border-strong)}}@media(prefers-reduced-motion:reduce){.agenda-day-header-inner.is-sliding-next,.agenda-day-header-inner.is-sliding-prev{animation:none}}.panel-profesional-shell{width:100%;min-height:100vh;display:grid;grid-template-columns:276px 1fr;background:#eef2f6;color:#243b55}.panel-profesional-topbar,.panel-mobile-bottom-nav{display:none}.panel-paciente-fab{position:fixed;right:1.2rem;bottom:1.15rem;width:60px;height:60px;border:1px solid #2f9de9;border-radius:50%;background:linear-gradient(180deg,#41a9f0,#2487d7);color:#fff;box-shadow:0 18px 26px -14px #0f172ab8;cursor:pointer;display:grid;place-items:center;z-index:125;transition:transform .17s ease,box-shadow .17s ease,filter .17s ease}.panel-paciente-fab:hover{transform:translateY(-1px);box-shadow:0 20px 28px -14px #0f172ad6;filter:saturate(1.06)}.panel-paciente-fab-plus{font-size:2.1rem;line-height:1;font-weight:500}.panel-profesional-topbar-actions{position:relative;display:inline-flex;align-items:center}.panel-profesional-topbar-menu-btn{width:36px;height:36px;border:1px solid #d6dee7;background:#fff;color:#0f172a;border-radius:6px;display:inline-grid;place-items:center;cursor:pointer;transition:background-color .17s ease,border-color .17s ease,color .17s ease}.panel-profesional-topbar-menu-btn:hover{background:#f8fafc;border-color:#cbd5e1}.panel-profesional-topbar-menu-btn:focus-visible{outline:2px solid #1481dc;outline-offset:2px}.panel-profesional-topbar-menu-bars{position:relative;display:block;width:16px;height:2px;border-radius:999px;background:currentColor;transition:background-color .18s ease}.panel-profesional-topbar-menu-bars:before,.panel-profesional-topbar-menu-bars:after{content:"";position:absolute;left:0;display:block;width:16px;height:2px;border-radius:999px;background:currentColor;transition:transform .18s ease}.panel-profesional-topbar-menu-bars:before{top:-5px}.panel-profesional-topbar-menu-bars:after{top:5px}.panel-profesional-topbar-menu-btn.open{background:#f1f5f9;border-color:#cbd5e1}.panel-profesional-topbar-menu-btn.open .panel-profesional-topbar-menu-bars{background:transparent}.panel-profesional-topbar-menu-btn.open .panel-profesional-topbar-menu-bars:before{transform:translateY(5px) rotate(45deg)}.panel-profesional-topbar-menu-btn.open .panel-profesional-topbar-menu-bars:after{transform:translateY(-5px) rotate(-45deg)}.panel-profesional-mobile-menu{position:absolute;top:calc(100% + .42rem);right:0;z-index:150;min-width:190px;border:1px solid #d8e2ee;background:#fff;border-radius:12px;box-shadow:0 10px 24px #14386024;padding:.34rem;display:grid;gap:.2rem;transform-origin:top right;animation:panelMobileMenuIn .18s ease-out}@keyframes panelMobileMenuIn{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.panel-profesional-mobile-menu-item{min-height:40px;border:0;border-radius:8px;background:transparent;color:#324865;font-size:.86rem;font-weight:700;text-align:left;padding:.5rem .64rem;cursor:pointer;display:inline-flex;align-items:center;gap:.45rem;transition:background-color .17s ease,color .17s ease}.panel-profesional-mobile-menu-item-icon{width:17px;height:17px;display:inline-grid;place-items:center;flex-shrink:0}.panel-profesional-mobile-menu-item-icon svg{width:17px;height:17px;display:block}.panel-profesional-mobile-menu-item:hover{background:#edf4fc}.panel-profesional-mobile-menu-item.danger{color:#dc2626}.panel-profesional-mobile-menu-item.danger:hover{background:#fff1f2}.panel-profesional-sidebar{border-right:1px solid #d6dee7;background:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:1.55rem 1rem 1.15rem}.panel-brand{display:block;padding:.25rem .45rem 1.15rem}.panel-brand strong{display:block;font-family:var(--font-heading);font-size:2rem;line-height:1;color:#0f172a}.panel-brand span{display:block;margin-top:.24rem;letter-spacing:.01em;font-size:.62rem;color:#7c8da3;font-weight:500;text-transform:none}.panel-nav{display:grid;gap:.25rem}.panel-nav-group{display:grid;gap:.2rem}.panel-nav-item{min-height:48px;width:100%;display:flex;align-items:center;gap:.7rem;border:0;background:transparent;border-radius:10px;color:#324865;font-weight:600;padding:.5rem .75rem;cursor:pointer;text-align:left;transition:background-color .17s ease,color .17s ease}.panel-nav-item:hover{background:#edf4fc}.panel-nav-item.active{background:#dff0ff;color:#1481dc}.panel-submenu{display:grid;gap:.15rem;padding-left:.6rem}.panel-submenu-item{min-height:42px;width:100%;border:0;background:transparent;border-radius:10px;padding:.4rem .65rem;color:#4a607b;font-weight:600;display:flex;align-items:center;gap:.62rem;cursor:pointer;text-align:left;transition:background-color .17s ease,color .17s ease}.panel-submenu-item:hover{background:#edf4fc}.panel-submenu-item.active{background:#e7f3ff;color:#0f7fd8}.panel-nav-item.muted{color:#8ea0b7;cursor:default}.panel-nav-icon{width:26px;height:26px;display:inline-grid;place-items:center;flex-shrink:0}.panel-nav-icon svg{width:22px;height:22px}.panel-nav-item-disponibilidad .panel-nav-icon svg{width:23px;height:23px}.panel-nav-expand-icon{margin-left:auto;width:16px;height:16px;display:inline-grid;place-items:center;opacity:.78;transform:rotate(0);transition:transform .17s ease,opacity .17s ease}.panel-nav-expand-icon svg{width:16px;height:16px;display:block}.panel-nav-expand-icon.open{transform:rotate(180deg);opacity:1}.panel-nav-icon-cuentas svg{width:23px;height:23px}.soon-pill{margin-left:auto;border:1px solid #d8e3ef;border-radius:8px;padding:.05rem .35rem;font-size:.68rem;color:#7890aa;font-weight:700}.panel-logout{min-height:48px;border:0;background:transparent;color:#ef4444;border-radius:10px;font-weight:600;display:flex;align-items:center;gap:.7rem;padding:.5rem .75rem;text-align:left;cursor:pointer;transition:background-color .17s ease}.panel-logout:hover{background:#fff1f2}.panel-sidebar-footer{display:grid;gap:.4rem}.panel-theme-toggle{min-height:48px;width:100%;border:0;border-radius:10px;background:transparent;color:#324865;font-weight:700;display:inline-flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.5rem .75rem;cursor:pointer;transition:background-color .17s ease,color .17s ease}.panel-theme-toggle:hover{background:#edf4fc}.panel-theme-toggle-label{white-space:nowrap}.panel-theme-switch-track{width:54px;height:26px;border-radius:999px;border:1px solid #c5d3e4;background:#e2ebf5;padding:2px;display:inline-block;position:relative;overflow:hidden}.panel-theme-switch-icon{position:absolute;top:50%;width:12px;height:12px;transform:translateY(-50%);color:#6d7f98;display:inline-grid;place-items:center}.panel-theme-switch-icon svg{width:12px;height:12px;display:block}.panel-theme-switch-icon.sun{left:6px}.panel-theme-switch-icon.moon{right:6px}.panel-theme-switch-thumb{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #10182840;transform:translate(0);transition:transform .17s ease}.panel-theme-switch-track.is-dark .panel-theme-switch-thumb{transform:translate(28px)}.panel-profesional-mobile-theme-item{justify-content:space-between}.panel-profesional-main{width:min(1080px,100%);margin-inline:auto;padding:1.8rem 2rem;display:grid;align-content:start;grid-auto-rows:max-content;gap:1rem}.panel-profesional-main>*{align-self:start}.panel-card{background:#fff;border:1px solid #d3dde8;border-radius:16px;box-shadow:0 1px 2px #00142f08}.panel-hero{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1.25rem 1.4rem}.panel-hero-logo{width:132px;height:132px;object-fit:contain}.panel-hero h1{margin:0;font-size:clamp(2rem,1.25rem + 1.2vw,3rem);line-height:1.1}.panel-hero h1 span{display:block}.panel-mobile-datetime-card{display:none}.panel-hero-datetime{justify-self:end;border:1px solid #d7e3ef;border-radius:12px;background:#f8fbff;padding:.65rem .85rem;min-width:210px;display:grid;gap:.1rem;text-align:right}.panel-hero-datetime span{color:#6f839d;font-size:.74rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.panel-hero-datetime strong{color:#243b55;font-size:.92rem;font-weight:700;text-transform:capitalize}.panel-hero-datetime b{color:#0f7fd8;font-size:1.28rem;line-height:1}.panel-hero p{margin:.2rem 0 0;color:#58708b;font-weight:600}.panel-mobile-datetime{display:none}.panel-citas{overflow:hidden}.panel-citas-header{padding:1rem 1.35rem;border-bottom:1px solid #dbe4ee;display:flex;align-items:center;justify-content:space-between;gap:1rem}.panel-citas-header h3{margin:0;display:inline-flex;align-items:center;gap:.6rem;font-size:2rem;line-height:1.05}.panel-citas-header h3 svg{width:30px;height:30px;color:#1481dc;flex-shrink:0;display:block;transform:translateY(1px)}.panel-citas-fecha{display:inline-flex;align-items:center;gap:.55rem;color:#7b8ea5;font-weight:700}.panel-hoy-pill{border-radius:10px;background:#dff0ff;color:#1481dc;padding:.2rem .58rem;font-size:.86rem}.panel-citas-list{list-style:none;margin:0;padding:0}.panel-citas-item{border-bottom:1px solid #dbe4ee;padding:1rem 1.15rem;display:grid;grid-template-columns:110px 1px minmax(0,1fr) auto;align-items:center;gap:.9rem;background:#fff}.panel-citas-time{display:grid;justify-items:start;align-content:center;gap:.16rem;width:max-content}.panel-citas-item-icon{width:50px;height:50px;border-radius:999px;background:#eef3f8;color:#64809f;display:grid;place-items:center}.panel-citas-item-icon svg{width:21px;height:21px}.panel-citas-item strong{display:block;width:100%;text-align:left;font-size:2.1rem;color:#3c9ce7;line-height:1}.panel-citas-time span{display:block;width:100%;text-align:left;margin-left:.12em;font-size:.66rem;letter-spacing:.07em;font-weight:800;color:#6d8aab}.panel-citas-item-divider{display:block;width:1px;height:68px;background:#e3eaf3}.panel-citas-item-meta{min-width:0;display:grid;gap:.16rem}.panel-citas-paciente{margin:0;font-size:1.95rem;color:#16233a;font-weight:800;line-height:1.06}.panel-citas-detalle{margin:0;font-size:1.05rem;color:#6d7f98;font-weight:600;line-height:1.18}.panel-citas-phone-row{display:inline-flex;align-items:center;gap:.2rem;flex-wrap:wrap}.panel-whatsapp-link{display:inline-flex;align-items:center;gap:.28rem;color:#0f5132;font-weight:700;text-decoration:none;cursor:pointer;transition:opacity var(--motion-fast)}.panel-whatsapp-link:hover,.panel-whatsapp-link:focus-visible{opacity:.85;text-decoration:underline}.panel-whatsapp-logo{width:.9rem;height:.9rem;flex:0 0 auto}.panel-citas-item-actions{display:grid;justify-items:center;align-content:center;gap:.7rem;padding-right:.1rem}.panel-citas-status-dot{width:13px;height:13px;border-radius:999px;background:#3c9ce7}.panel-citas-more{display:grid;gap:.22rem}.panel-citas-more span{width:6px;height:6px;border-radius:999px;background:#c0cad7}.panel-citas-empty{margin:0;padding:1.3rem;color:#627892;font-weight:600}.panel-citas-footer{padding:1rem 1.35rem 1.2rem;display:grid;place-items:center}.panel-citas-footer button{border:0;background:transparent;color:#1481dc;font-weight:800;letter-spacing:.09em;cursor:pointer}.panel-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.panel-kpi{padding:1rem 1.35rem}.panel-kpi p{margin:0;color:#58708b;font-weight:700}.panel-kpi strong{display:block;margin-top:.48rem;font-size:clamp(2.5rem,2rem + 1vw,3.2rem);color:#0f1f39}.panel-kpi span{color:#8ba0b7;font-weight:700}.panel-kpi .kpi-success{color:#16a34a}.panel-kpi .kpi-danger{color:#dc2626}.panel-kpi .kpi-link{color:#1481dc}@media(max-width:1160px){.panel-profesional-shell{grid-template-columns:90px 1fr}.panel-brand strong,.panel-brand span,.panel-nav-item,.panel-submenu-item,.panel-logout .panel-nav-icon+*,.panel-theme-toggle-label{display:none}.panel-nav-item,.panel-theme-toggle,.panel-logout{justify-content:center}.panel-profesional-main{width:100%;padding:1rem}}@media(max-width:760px){.panel-profesional-shell{display:flex;flex-direction:column;padding-top:56px;padding-bottom:0}.panel-profesional-topbar{position:fixed;top:0;left:0;right:0;z-index:120;min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.42rem .85rem;background:#fff;border-bottom:1px solid #d6dee7}.panel-profesional-topbar-brand{min-width:0;display:flex;flex-direction:column;justify-content:center}.panel-profesional-topbar-brand strong{font-family:var(--font-heading);font-size:1.18rem;line-height:1.1;color:#0f172a;display:block}.panel-profesional-topbar-brand span{font-size:.54rem;color:#7c8da3;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel-profesional-mobile-menu{min-width:182px}.panel-profesional-sidebar{display:none}.panel-profesional-main{order:1;gap:.75rem;padding-bottom:calc(1rem + 72px + env(safe-area-inset-bottom,0px))}.panel-brand strong,.panel-brand span,.panel-nav-item,.panel-submenu-item,.panel-logout .panel-nav-icon+*{display:initial}.panel-nav-item,.panel-logout{justify-content:flex-start}.panel-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem}.panel-submenu{padding-left:0}.panel-hero{grid-template-columns:auto 1fr;align-items:start;gap:.7rem;padding:.8rem .9rem}.panel-hero-datetime{display:none}.panel-hero-logo{width:80px;height:80px;margin-top:.05rem}.panel-hero>div{min-width:0}.panel-hero h1{font-size:clamp(1.65rem,5.6vw,2.05rem);line-height:1.05;word-break:normal;overflow-wrap:anywhere}.panel-hero p{margin-top:.22rem;font-size:.95rem}.panel-account-btn{width:100%}.panel-mobile-datetime-card{display:grid;place-items:center;padding:.55rem .9rem}.panel-mobile-datetime{display:block;margin:0;text-align:center;font-size:.98rem;font-weight:700;letter-spacing:.02em;color:#4f6784;text-transform:capitalize}.panel-citas-header{flex-direction:column;align-items:center;gap:.42rem;padding:.72rem .9rem}.panel-citas-header h3{font-size:2.2rem;width:fit-content;margin-inline:auto;justify-content:center;gap:.45rem}.panel-citas-header h3>span[aria-hidden=true]{display:inline-flex}.panel-citas-fecha{font-size:.86rem}.panel-citas-item{grid-template-columns:78px 1px minmax(0,1fr) auto;gap:.45rem;padding:.72rem .82rem;border-radius:12px;margin:.55rem .55rem 0;border:1px solid #dee6f0;box-shadow:0 1px 2px #0e1e390d}.panel-citas-time{justify-items:start}.panel-citas-item strong{font-size:1.78rem}.panel-citas-time span{font-size:.58rem}.panel-citas-item-divider{height:52px}.panel-citas-paciente{font-size:.9rem}.panel-citas-detalle{font-size:.78rem}.panel-citas-item-actions{gap:.45rem}.panel-citas-status-dot{width:10px;height:10px}.panel-citas-more span{width:4px;height:4px}.panel-citas-footer{padding:.8rem .9rem .95rem}.panel-citas-footer button{font-size:.75rem;letter-spacing:.07em}.panel-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.panel-kpi{padding:.9rem .85rem}.panel-kpi p{font-size:.8rem;line-height:1.15}.panel-kpi strong{font-size:clamp(1.9rem,1.4rem + 1.8vw,2.25rem)}.panel-kpi span{font-size:.72rem;line-height:1.15}.panel-mobile-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:130;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;background:#fff;border-top:1px solid #d6dee7;padding:.35rem .3rem calc(.35rem + env(safe-area-inset-bottom,0px))}.panel-paciente-fab{display:none}.panel-mobile-bottom-item{min-height:58px;border:0;border-radius:12px;background:transparent;color:#7d8ea4;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;font-size:.66rem;font-weight:700;cursor:pointer;padding:.3rem .2rem;text-align:center}.panel-mobile-bottom-label{display:inline-flex;align-items:center;justify-content:center;min-height:2.2em;line-height:1.1}.panel-mobile-bottom-item .panel-nav-icon{width:18px;height:18px}.panel-mobile-bottom-item .panel-nav-icon svg{width:18px;height:18px}.panel-mobile-bottom-item.active{color:#1481dc;background:#edf5ff}}:root[data-theme=dark] .panel-profesional-shell{background:var(--color-bg);color:var(--color-text-muted)}:root[data-theme=dark] .panel-profesional-sidebar,:root[data-theme=dark] .panel-profesional-topbar,:root[data-theme=dark] .panel-mobile-bottom-nav,:root[data-theme=dark] .panel-card,:root[data-theme=dark] .panel-citas-item,:root[data-theme=dark] .panel-profesional-mobile-menu{background:var(--color-surface);border-color:var(--color-border)}:root[data-theme=dark] .panel-brand strong,:root[data-theme=dark] .panel-profesional-topbar-brand strong,:root[data-theme=dark] .panel-kpi strong,:root[data-theme=dark] .panel-citas-paciente{color:var(--color-text)}:root[data-theme=dark] .panel-brand span,:root[data-theme=dark] .panel-profesional-topbar-brand span,:root[data-theme=dark] .panel-citas-empty,:root[data-theme=dark] .panel-kpi p,:root[data-theme=dark] .panel-kpi span,:root[data-theme=dark] .panel-citas-detalle,:root[data-theme=dark] .panel-citas-fecha,:root[data-theme=dark] .panel-mobile-datetime{color:var(--color-text-soft)}:root[data-theme=dark] .panel-nav-item,:root[data-theme=dark] .panel-submenu-item,:root[data-theme=dark] .panel-mobile-bottom-item,:root[data-theme=dark] .panel-profesional-mobile-menu-item,:root[data-theme=dark] .panel-theme-toggle{color:var(--color-text-muted)}:root[data-theme=dark] .panel-nav-expand-icon{opacity:.95}:root[data-theme=dark] .panel-nav-item:hover,:root[data-theme=dark] .panel-submenu-item:hover,:root[data-theme=dark] .panel-mobile-bottom-item:hover,:root[data-theme=dark] .panel-profesional-mobile-menu-item:hover,:root[data-theme=dark] .panel-profesional-topbar-menu-btn:hover{background:var(--color-surface-soft)}:root[data-theme=dark] .panel-nav-item.active,:root[data-theme=dark] .panel-submenu-item.active,:root[data-theme=dark] .panel-mobile-bottom-item.active{background:#5cb7ff29;color:var(--color-primary)}:root[data-theme=dark] .panel-profesional-topbar-menu-btn{background:var(--color-surface-soft);color:var(--color-text);border-color:var(--color-border)}:root[data-theme=dark] .panel-profesional-topbar-menu-btn.open{background:var(--color-bg-elevated);border-color:var(--color-border-strong)}:root[data-theme=dark] .panel-profesional-mobile-menu-item.danger{color:var(--color-danger)}:root[data-theme=dark] .panel-theme-toggle:hover{background:var(--color-surface-soft)}:root[data-theme=dark] .panel-theme-switch-track{border-color:var(--color-border-strong);background:var(--color-bg-elevated)}:root[data-theme=dark] .panel-theme-switch-track.is-dark{background:#5cb7ff40;border-color:#5cb7ff99}:root[data-theme=dark] .panel-theme-switch-icon{color:var(--color-text-soft)}:root[data-theme=dark] .panel-theme-switch-thumb{background:var(--color-text)}:root[data-theme=dark] .panel-profesional-mobile-menu-item.danger:hover,:root[data-theme=dark] .panel-logout:hover{background:var(--color-danger-bg)}:root[data-theme=dark] .panel-profesional-main .panel-citas-header{border-bottom-color:var(--color-border)}:root[data-theme=dark] .panel-citas-item{border-bottom-color:var(--color-border)}:root[data-theme=dark] .panel-citas-item-divider{background:var(--color-border-strong)}:root[data-theme=dark] .panel-citas-time span,:root[data-theme=dark] .panel-hero p{color:var(--color-text-soft)}:root[data-theme=dark] .panel-citas-more span{background:var(--color-border-strong)}:root[data-theme=dark] .panel-citas-item-icon{background:var(--color-surface-soft);color:var(--color-text-soft)}:root[data-theme=dark] .panel-citas-footer button,:root[data-theme=dark] .panel-citas-header h3 svg,:root[data-theme=dark] .panel-hoy-pill,:root[data-theme=dark] .panel-citas-time strong,:root[data-theme=dark] .panel-citas-status-dot,:root[data-theme=dark] .panel-hero-datetime b,:root[data-theme=dark] .panel-kpi .kpi-link{color:var(--color-primary)}:root[data-theme=dark] .panel-hoy-pill{background:#5cb7ff29}:root[data-theme=dark] .panel-hero-datetime{background:var(--color-bg-elevated);border-color:var(--color-border)}:root[data-theme=dark] .panel-hero-datetime span{color:var(--color-text-soft)}:root[data-theme=dark] .panel-hero-datetime strong{color:var(--color-text-muted)}:root[data-theme=dark] .panel-kpi .kpi-success{color:var(--color-success)}:root[data-theme=dark] .panel-kpi .kpi-danger{color:var(--color-danger)}:root[data-theme=dark] .panel-whatsapp-link{color:var(--color-success)}:root[data-theme=dark] .panel-paciente-fab{border-color:#4ea9ec;background:linear-gradient(180deg,#56b3f4,#2b8fdb);color:#051322;box-shadow:0 18px 26px -14px #01060ee6}.generar-dia-page{width:min(960px,100%);margin-inline:auto;padding:1rem}.generar-dia-shell{display:grid;gap:1rem}.generar-dia-page-header h2{margin:0;color:#111827;font-size:clamp(1.7rem,2.5vw,2.15rem);line-height:1.1}.generar-dia-page-header p{margin:.35rem 0 0;color:#64748b;font-size:1.02rem}.generar-dia-card{border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;box-shadow:0 2px 10px #0f172a0a;padding:1.45rem;display:grid;gap:1rem}.generar-dia-banner{border:1px solid #d7e3ef;border-radius:10px;background:#eaf4ff;min-height:100px;display:grid;place-content:center;gap:.25rem;justify-items:center;color:#93c5fd}.generar-dia-banner .material-symbols-outlined{font-size:1.9rem}.generar-dia-banner strong{letter-spacing:.11em;font-size:.82rem}.generar-dia-form{display:grid;gap:.95rem}.generar-dia-label{display:block;margin:0 0 .42rem;color:#1f2937;font-size:1.08rem;font-weight:700}.generar-dia-field input,.generar-dia-field select{width:100%;min-height:50px;border:1px solid #d0dbe8;border-radius:9px;background:#fff;color:#1f2937;font-size:1.02rem;padding:.55rem .72rem}.generar-dia-field select{appearance:none;-webkit-appearance:none;-moz-appearance:none;border:1px solid var(--color-border-strong, #d0dbe8);border-radius:var(--radius-md, 9px);background-color:var(--color-bg-elevated, #fff);color:var(--color-text, #1f2937);padding-right:2.2rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.25 6 6.25l5-5' fill='none' stroke='%23475569' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:.95rem;transition:border-color var(--motion-fast, .16s ease),box-shadow var(--motion-fast, .16s ease),background-color var(--motion-fast, .16s ease)}.generar-dia-field select:hover{border-color:var(--color-border, #cbd5e1)}.generar-dia-field select:focus,.generar-dia-field select:focus-visible{outline:none;border-color:var(--color-primary, #2563eb);box-shadow:var(--focus-ring, 0 0 0 3px rgba(37, 99, 235, .18))}.generar-dia-time-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.generar-dia-note{border:1px solid #e2e8f0;border-radius:9px;background:#f1f5f9;padding:.72rem .82rem;color:#64748b;display:flex;align-items:center;gap:.5rem}.generar-dia-note .material-symbols-outlined{font-size:1.1rem;color:#3b82f6;line-height:1;flex-shrink:0}.generar-dia-note p{margin:0;font-size:.9rem;line-height:1.45}.generar-dia-note-content{display:grid;gap:.2rem}.generar-dia-note-content strong{color:#1e3a8a;font-size:.9rem}.generar-dia-submit{width:100%;min-height:52px;border:none;border-radius:9px;background:linear-gradient(180deg,#3ba5e7,#2696df);color:#fff;font-size:1.35rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;cursor:pointer;box-shadow:0 8px 16px -12px #2563ebcc}.generar-dia-submit:disabled{opacity:.7;cursor:wait}.generar-dia-submit .material-symbols-outlined{font-size:1.15rem}.agenda-feedback{display:grid;gap:.6rem}.generar-disponibilidad-tick{margin:0;display:inline-grid;place-items:center}.generar-disponibilidad-tick .booking-tick{width:58px;height:58px}.generar-disponibilidad-tick .booking-tick-circle{stroke:#35a4f5;stroke-width:2;stroke-dasharray:166;stroke-dashoffset:166;animation:bookingTickStroke .55s ease forwards}.generar-disponibilidad-tick .booking-tick-check{stroke:#35a4f5;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:36;stroke-dashoffset:36;animation:bookingTickCheck .35s ease .5s forwards}@keyframes bookingTickStroke{to{stroke-dashoffset:0}}@keyframes bookingTickCheck{to{stroke-dashoffset:0}}@media(prefers-reduced-motion:reduce){.generar-disponibilidad-tick .booking-tick-circle,.generar-disponibilidad-tick .booking-tick-check{animation:none;stroke-dashoffset:0}}.generar-dia-success-overlay{position:fixed;inset:0;background:#0f172a3d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:1300}.generar-dia-success-card{width:min(92vw,420px);border:1px solid #d0dbe8;border-radius:12px;background:#fff;box-shadow:0 14px 28px -18px #0f172a73;padding:1rem 1.15rem;display:grid;justify-items:center;gap:.7rem;text-align:center}.generar-dia-success-card p{margin:0;color:#1f2937;font-size:.98rem;font-weight:700;line-height:1.35}@media(max-width:768px){.generar-dia-page{padding:.75rem}.generar-dia-card{padding:1rem}.generar-dia-time-grid{grid-template-columns:1fr;gap:.8rem}.generar-dia-submit{font-size:1.12rem}}:root[data-theme=dark] .generar-dia-page-header h2{color:var(--color-text)}:root[data-theme=dark] .generar-dia-page-header p{color:var(--color-text-soft)}:root[data-theme=dark] .generar-dia-card{background:var(--color-surface);border-color:var(--color-border);box-shadow:var(--shadow-md)}:root[data-theme=dark] .generar-dia-banner{background:var(--color-surface-soft);border-color:var(--color-border);color:var(--color-primary)}:root[data-theme=dark] .generar-dia-label{color:var(--color-text)}:root[data-theme=dark] .generar-dia-field input,:root[data-theme=dark] .generar-dia-field select{background-color:var(--color-bg-elevated);color:var(--color-text);border-color:var(--color-border)}:root[data-theme=dark] .generar-dia-field input::-webkit-calendar-picker-indicator{filter:invert(.9);opacity:.85}:root[data-theme=dark] .generar-dia-field select{border-color:var(--color-border);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.25 6 6.25l5-5' fill='none' stroke='%23b7cce6' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}:root[data-theme=dark] .generar-dia-field select:hover{border-color:var(--color-border-strong)}:root[data-theme=dark] .generar-dia-field select:focus,:root[data-theme=dark] .generar-dia-field select:focus-visible,:root[data-theme=dark] .generar-dia-field input:focus,:root[data-theme=dark] .generar-dia-field input:focus-visible{border-color:var(--color-primary);box-shadow:var(--focus-ring)}:root[data-theme=dark] .generar-dia-note{background:var(--color-surface-soft);border-color:var(--color-border);color:var(--color-text-soft)}:root[data-theme=dark] .generar-dia-note .material-symbols-outlined{color:var(--color-primary)}:root[data-theme=dark] .generar-dia-note-content strong{color:var(--color-text-muted)}:root[data-theme=dark] .generar-dia-submit{background:linear-gradient(180deg,#46aef4,#2f98df);box-shadow:0 12px 24px -16px #5cb7ffb3;color:#03111f}:root[data-theme=dark] .generar-dia-success-card{background:var(--color-surface);border-color:var(--color-border)}:root[data-theme=dark] .generar-dia-success-card p{color:var(--color-text)}.ver-disponibilidades-container{width:100%;max-width:760px;margin-inline:auto;padding:1rem}.ver-disponibilidades-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:1.2rem}.ver-disponibilidades-card h2{margin:0 0 .9rem;text-align:center}.ver-disponibilidades-card .react-calendar{width:100%;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;padding:.5rem}.ver-disponibilidades-card .react-calendar__navigation button{color:var(--color-text);border-radius:var(--radius-sm)}.ver-disponibilidades-card .react-calendar__month-view__weekdays{color:var(--color-text-soft);font-weight:700}.ver-disponibilidades-card .react-calendar__tile{color:var(--color-text);border-radius:var(--radius-sm)}.ver-disponibilidades-card .react-calendar__tile--active{background:var(--color-primary);color:#fff}.ver-disponibilidades-card .react-calendar__tile:enabled:hover,.ver-disponibilidades-card .react-calendar__tile:enabled:focus{background:#edf3fc;color:#104b9b}.ver-disponibilidades-card .react-calendar__tile--available-green{background:#dff9e8;color:#12663c;font-weight:700}.ver-disponibilidades-card .react-calendar__tile--available-green:enabled:hover,.ver-disponibilidades-card .react-calendar__tile--available-green:enabled:focus{background:#cdf2dd}.ver-disponibilidades-card .react-calendar__tile--available-blue{background:#d7ebff;color:#0f4f9f;font-weight:700}.ver-disponibilidades-card .react-calendar__tile--available-blue:enabled:hover,.ver-disponibilidades-card .react-calendar__tile--available-blue:enabled:focus{background:#c6e1ff}.ver-disponibilidades-card .react-calendar__tile--no-availability{background:#f4f7fb;color:#98a4b3}.ver-disponibilidades-day-list{margin-top:1rem}.ver-disponibilidades-day-header{display:block;margin-bottom:.6rem}.ver-disponibilidades-day-list h3{margin:0;color:var(--color-text)}.ver-disponibilidades-hours{display:grid;grid-template-columns:repeat(auto-fit,minmax(146px,1fr));gap:.55rem}.ver-disponibilidades-bulk-actions{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem;margin-top:.75rem}.ver-disponibilidades-hour-btn{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);min-height:44px;padding:.55rem .65rem;background:var(--color-surface-soft);color:var(--color-text);font-weight:700;cursor:pointer}.ver-disponibilidades-hour-btn.selected{border-color:var(--color-primary);background:#eaf2ff;color:#0e4a98}.ver-disponibilidades-detail{margin-top:.9rem;background:#f9fbff;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.8rem}.ver-disponibilidades-detail p{margin:0;color:var(--color-text)}.ver-disponibilidades-check-all{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-text-muted);font-weight:600;margin:0;white-space:nowrap;justify-content:flex-start}.ver-disponibilidades-delete{margin-top:.7rem;border:none;border-radius:var(--radius-md);min-height:44px;padding:.55rem .78rem;background:#cc3b3b;color:#fff;font-weight:700;cursor:pointer}.ver-disponibilidades-delete:disabled{opacity:.7;cursor:not-allowed}.ver-disponibilidades-delete.bulk{margin-top:0}.ver-disponibilidades-actions{margin-top:.9rem;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.ver-disponibilidades-actions button{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);min-height:44px;padding:.55rem .78rem;background:var(--color-surface-soft);color:var(--color-text);font-weight:700;cursor:pointer}.ver-disponibilidades-actions .ver-disponibilidades-delete{background:#cc3b3b;color:#fff;border:none;margin-left:auto}.ver-disponibilidades-info{margin-top:.8rem;color:var(--color-text-muted)}.ver-disponibilidades-error{margin-top:1rem;color:var(--color-danger);background:var(--color-danger-bg);border-left:4px solid var(--color-danger-border);border-radius:var(--radius-md);padding:.65rem .75rem}.ver-disponibilidades-loading-overlay{position:fixed;inset:0;background:#0f172a33;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:1200}.ver-disponibilidades-loading-card{width:min(92vw,420px);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-md);padding:1rem 1.15rem;display:grid;justify-items:center;gap:.7rem;text-align:center}.ver-disponibilidades-loading-card p{margin:0;color:var(--color-text);font-size:.94rem;font-weight:600;line-height:1.35}.ver-disponibilidades-loading-spinner-svg{width:38px;height:38px;animation:verDisponibilidadesSpin .9s linear infinite}.ver-disponibilidades-loading-spinner-track{fill:none;stroke:#dbe4ef;stroke-width:4}.ver-disponibilidades-loading-spinner-head{fill:none;stroke:var(--color-primary);stroke-width:4;stroke-linecap:round;stroke-dasharray:92;stroke-dashoffset:28}@keyframes verDisponibilidadesSpin{to{transform:rotate(360deg)}}.ver-disponibilidades-success-overlay{position:fixed;inset:0;background:#0f172a33;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:1200}.ver-disponibilidades-success-card{width:min(92vw,420px);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-md);padding:1rem 1.15rem;display:grid;justify-items:center;gap:.7rem;text-align:center}.ver-disponibilidades-success-card p{margin:0;color:var(--color-text);font-size:.94rem;font-weight:600;line-height:1.35}.ver-disponibilidades-tick .booking-tick{width:42px;height:42px;display:block}.ver-disponibilidades-tick .booking-tick-circle{stroke:#2563eb;stroke-width:3;stroke-linecap:round;stroke-dasharray:166;stroke-dashoffset:166;animation:verDisponibilidadesTickStroke .6s cubic-bezier(.65,0,.45,1) forwards}.ver-disponibilidades-tick .booking-tick-check{stroke:#2563eb;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:48;stroke-dashoffset:48;animation:verDisponibilidadesTickCheck .35s .45s cubic-bezier(.65,0,.45,1) forwards}@keyframes verDisponibilidadesTickStroke{to{stroke-dashoffset:0}}@keyframes verDisponibilidadesTickCheck{to{stroke-dashoffset:0}}@media(max-width:560px){.ver-disponibilidades-card{padding:.95rem}.ver-disponibilidades-hours{grid-template-columns:repeat(2,minmax(0,1fr))}.ver-disponibilidades-bulk-actions{width:100%;align-items:flex-start}.ver-disponibilidades-actions{width:100%;flex-direction:column-reverse;align-items:stretch}.ver-disponibilidades-actions .ver-disponibilidades-delete{margin-left:0}}:root[data-theme=dark] .ver-disponibilidades-card .react-calendar,:root[data-theme=dark] .ver-disponibilidades-detail,:root[data-theme=dark] .ver-disponibilidades-loading-card,:root[data-theme=dark] .ver-disponibilidades-success-card{background:var(--color-surface);border-color:var(--color-border)}:root[data-theme=dark] .ver-disponibilidades-card .react-calendar__navigation button{color:var(--color-text)}:root[data-theme=dark] .ver-disponibilidades-card .react-calendar__month-view__weekdays{color:var(--color-text-soft)}:root[data-theme=dark] .ver-disponibilidades-card .react-calendar__tile{color:var(--color-text-muted)}:root[data-theme=dark] .ver-disponibilidades-card .react-calendar__tile:enabled:hover,:root[data-theme=dark] .ver-disponibilidades-card .react-calendar__tile:enabled:focus{background:#5cb7ff29;color:var(--color-primary)}:root[data-theme=dark] .ver-disponibilidades-card .react-calendar__tile--available-green{background:#62d39c3d;color:#d7f8e8}:root[data-theme=dark] .ver-disponibilidades-card .react-calendar__tile--available-green:enabled:hover,:root[data-theme=dark] .ver-disponibilidades-card .react-calendar__tile--available-green:enabled:focus{background:#62d39c57;color:#ecfff5}:root[data-theme=dark] .ver-disponibilidades-card .react-calendar__tile--available-blue{background:#5cb7ff47;color:#e2f1ff}:root[data-theme=dark] .ver-disponibilidades-card .react-calendar__tile--available-blue:enabled:hover,:root[data-theme=dark] .ver-disponibilidades-card .react-calendar__tile--available-blue:enabled:focus{background:#5cb7ff66;color:#f2f8ff}:root[data-theme=dark] .ver-disponibilidades-card .react-calendar__tile--no-availability{background:#1322398c;color:var(--color-text-soft)}:root[data-theme=dark] .ver-disponibilidades-card .react-calendar__tile--active{background:linear-gradient(180deg,#5cb7ff,#3a9eea);color:#04111e}:root[data-theme=dark] .ver-disponibilidades-hour-btn.selected{background:#5cb7ff29;color:var(--color-primary)}.saldos-card{width:min(100%,980px);margin-inline:auto;align-self:start;height:fit-content;border:1px solid #d9e3ef;border-radius:24px;padding:clamp(1rem,1.2vw + .8rem,1.7rem);background:radial-gradient(circle at 12% 8%,#eff6ff 0%,rgba(239,246,255,.2) 36%,transparent 62%),linear-gradient(180deg,#f9fbff,#f7f9fc);box-shadow:0 20px 35px -30px #0f172a73}.saldos-kicker{margin:0 0 .4rem;color:#0369a1;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.saldos-card h2{margin:0;max-width:28ch;color:#0f172a;font-size:clamp(1.35rem,1.8vw + .8rem,2rem);line-height:1.18}.saldos-copy{margin:.55rem 0 0;color:#475569;max-width:58ch}.saldos-search-shell{margin-top:1rem;min-height:54px;border-radius:999px;border:1px solid #cdd8e6;background:#fff;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.4rem;padding:.3rem .55rem;transition:box-shadow .2s ease,border-color .2s ease}.saldos-search-shell:focus-within{border-color:#38bdf8;box-shadow:0 0 0 4px #38bdf833}.saldos-search-icon{margin-left:.4rem;width:20px;height:20px;fill:#94a3b8}.saldos-search-input{min-height:42px;border:0;outline:none;font-size:1rem;color:#0f172a;background:transparent}.saldos-search-input::placeholder{color:#94a3b8}.saldos-results{margin-top:.65rem;border:1px solid #d4deea;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 20px 36px -34px #0f172ae6}.saldos-results-meta{margin:0;padding:.9rem 1rem;color:#64748b}.saldos-result-item{width:100%;border:0;border-bottom:1px solid #edf2f7;background:#fff;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.82rem 1rem;cursor:pointer;transition:background-color .2s ease}.saldos-result-item:last-child{border-bottom:0}.saldos-result-item:hover{background:#f8fbff}.saldos-result-main{min-width:0;display:grid;gap:.15rem}.saldos-result-main strong{color:#0f172a;font-size:.98rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.saldos-result-main small{color:#64748b}.saldos-chip{border-radius:999px;background:#e8f7ed;color:#137333;font-weight:700;font-size:.84rem;padding:.24rem .58rem;white-space:nowrap}.saldos-chip.debt{background:#fff1f2;color:#be123c}.saldos-chip.zero{background:#dcfce7;color:#166534}.saldos-selected-card{margin-top:.95rem;border:1px solid #d8e3f0;border-radius:16px;padding:.9rem;background:#f8fbff;display:grid;gap:.62rem}.saldos-overview-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(260px,1fr);gap:.8rem}.saldos-patient-hero{border:1px solid #d5e2f0;border-radius:16px;background:radial-gradient(circle at 95% -10%,rgba(56,189,248,.16) 0%,rgba(56,189,248,.03) 32%,transparent 56%),#f4f9ff;padding:.95rem;display:grid;grid-template-columns:auto 1fr;gap:.8rem}.saldos-patient-avatar{width:76px;height:76px;border-radius:18px;border:1px solid #cedcef;background:linear-gradient(180deg,#f2f7ff,#e8f1ff);color:#0ea5e9;display:grid;place-items:center;font-size:1.9rem;font-weight:800;letter-spacing:.02em}.saldos-patient-meta{min-width:0;display:grid;align-content:start;gap:.35rem}.saldos-patient-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.saldos-patient-title-row strong{color:#0f172a;font-size:clamp(1.15rem,1.1vw + .9rem,1.9rem);line-height:1.12}.saldos-patient-title-row .is-active,.saldos-patient-title-row .is-inactive{border-radius:999px;padding:.2rem .55rem;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.saldos-patient-title-row .is-active{color:#166534;background:#dcfce7}.saldos-patient-title-row .is-inactive{color:#9a3412;background:#ffedd5}.saldos-patient-meta p{margin:0;color:#475569;font-weight:600;font-size:.98rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.saldos-balance-card{border:1px solid #9cd8f0;border-radius:16px;background:linear-gradient(180deg,#f8fdff,#eef9ff);padding:.95rem;display:grid;gap:.65rem;align-content:start}.saldos-balance-label{color:#0369a1;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.saldos-balance-card strong{color:#0f172a;font-size:clamp(1.6rem,1.8vw + .85rem,3rem);line-height:1.05}.saldos-balance-card.zero strong{color:#166534}.saldos-balance-card .saldos-movimientos-actions{justify-content:stretch;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.saldos-balance-card .saldos-action-btn{min-height:44px;border-radius:12px;padding-inline:.5rem}.saldos-selected-card header{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.saldos-selected-card header strong{color:#0f172a;font-size:1.02rem}.saldos-selected-card header span{border-radius:999px;padding:.2rem .55rem;font-size:.8rem;font-weight:700}.saldos-selected-card header .is-active{color:#166534;background:#dcfce7}.saldos-selected-card header .is-inactive{color:#9a3412;background:#ffedd5}.saldos-selected-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.saldos-selected-grid p{margin:0;display:grid;gap:.12rem;color:#0f172a;font-weight:600}.saldos-selected-grid p span{color:#64748b;font-size:.85rem;font-weight:700}.saldos-selected-saldo{grid-column:2;grid-row:1 / span 2;border:1px solid #cfe0f4;border-radius:14px;background:linear-gradient(180deg,#fff,#eef6ff);padding:.75rem;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label action" "amount action";column-gap:.75rem;row-gap:.12rem;align-items:center}.saldos-selected-saldo>span{grid-area:label}.saldos-selected-saldo>strong{grid-area:amount}.saldos-selected-saldo strong{font-size:clamp(1.12rem,1.2vw + .82rem,1.45rem);line-height:1.2;color:#0f172a}.saldos-selected-saldo.zero strong{color:#166534}.saldos-ver-detalles-btn{border:1px solid #c7d7ea;border-radius:999px;background:#fff;color:#0f172a;font-size:.78rem;font-weight:700;min-height:32px;padding:.3rem .72rem;cursor:pointer;grid-area:action;justify-self:end;align-self:center;white-space:nowrap;transition:transform .2s ease,border-color .2s ease}.saldos-ver-detalles-btn:hover{transform:translateY(-1px);border-color:#93c5fd}.saldos-movimientos{margin-top:.3rem;border-top:1px solid #d8e3f0;padding-top:.75rem;display:grid;gap:.62rem;border:1px solid #d8e3f0;border-radius:16px;background:#f5f9ff;padding:.9rem}.saldos-movimientos-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.saldos-movimientos-header h3{margin:0}.saldos-movimientos h3{margin:0;font-size:.98rem;color:#0f172a}.saldos-movimientos-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.55rem}.saldos-action-btn{border:1px solid #d7e3ef;border-radius:999px;min-height:38px;padding:.42rem .9rem;background:#fff;color:#0f172a;font-size:.84rem;font-weight:700;cursor:pointer;transition:transform .2s ease,opacity .2s ease,border-color .2s ease}.saldos-action-btn:hover{transform:translateY(-1px);opacity:.92}.saldos-action-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.saldos-pago-form{border:1px solid #d7e3ef;border-radius:12px;background:#fff;padding:.72rem;display:grid;gap:.58rem}.saldos-modal-overlay{position:fixed;inset:0;background:#0f172a33;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:1200;padding:.9rem}.saldos-success-overlay{position:fixed;inset:0;background:#0f172a3d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:1300;padding:.9rem}.saldos-success-card{width:min(92vw,420px);border:1px solid #d7e3ef;border-radius:16px;background:#fff;box-shadow:0 18px 36px #0f172a26;padding:1rem 1.15rem;display:grid;justify-items:center;gap:.7rem;text-align:center}.saldos-success-card p{margin:0;color:#0f172a;font-size:.98rem;font-weight:700;line-height:1.35}.saldos-success-tick{margin:0;display:inline-grid;place-items:center}.saldos-success-tick .booking-tick{width:58px;height:58px}.saldos-success-tick .booking-tick-circle{stroke:#35a4f5;stroke-width:2;stroke-dasharray:166;stroke-dashoffset:166;animation:saldosTickStroke .55s ease forwards}.saldos-success-tick .booking-tick-check{stroke:#35a4f5;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:36;stroke-dashoffset:36;animation:saldosTickCheck .35s ease .5s forwards}@keyframes saldosTickStroke{to{stroke-dashoffset:0}}@keyframes saldosTickCheck{to{stroke-dashoffset:0}}@media(prefers-reduced-motion:reduce){.saldos-success-tick .booking-tick-circle,.saldos-success-tick .booking-tick-check{animation:none;stroke-dashoffset:0}}.saldos-modal-card{width:min(92vw,430px);border:1px solid #d7e3ef;border-radius:16px;background:#fff;box-shadow:0 18px 36px #0f172a26;padding:.8rem;display:grid;gap:.7rem}.saldos-modal-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.saldos-modal-header h3{margin:0;color:#0f172a;font-size:1rem}.saldos-modal-close{border:1px solid #c7d7ea;border-radius:10px;background:#fff;color:#0f172a;width:32px;height:32px;font-size:1.1rem;line-height:1;cursor:pointer;display:grid;place-items:center}.saldos-modal-close:disabled{opacity:.6;cursor:not-allowed}.saldos-modal-close svg{width:16px;height:16px}.saldos-modal-close svg path{stroke:currentColor;stroke-width:2.2;stroke-linecap:round}.saldos-pago-form label{display:grid;gap:.28rem;color:#334155;font-size:.83rem;font-weight:700}.saldos-pago-form input{min-height:38px;border:1px solid #d7e3ef;border-radius:10px;padding:.48rem .62rem;background:#f8fbff;color:#0f172a;outline:none}.saldos-pago-form input:focus{border-color:#38bdf8;box-shadow:0 0 0 3px #38bdf82e}.saldos-pago-submit{border:0;border-radius:999px;min-height:38px;padding:.4rem .92rem;background:linear-gradient(180deg,#0ea5e9,#0284c7);color:#fff;font-size:.84rem;font-weight:700;cursor:pointer;justify-self:center;min-width:190px}.saldos-pago-submit:disabled{opacity:.7;cursor:not-allowed}.saldos-movimientos-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem}.saldos-movimientos-kpis p{margin:0;border:1px solid #d7e3ef;border-radius:12px;background:#fff;padding:.52rem .6rem;display:grid;gap:.2rem;color:#0f172a;font-weight:700;font-size:.9rem}.saldos-movimientos-kpis p span{color:#64748b;font-size:.75rem;font-weight:700}.saldos-movimientos-list{margin:0;padding:0;list-style:none;border:1px solid #d7e3ef;border-radius:12px;overflow:hidden;background:#fff}.saldos-movimiento-item{padding:.58rem .72rem;border-bottom:1px solid #edf2f7;display:flex;align-items:center;justify-content:space-between;gap:.55rem}.saldos-movimiento-item:last-child{border-bottom:0}.saldos-movimiento-item strong{display:block;color:#0f172a;font-size:.89rem}.saldos-movimiento-item small{color:#64748b;font-size:.79rem}.saldos-movimiento-amount{display:inline-flex;align-items:center;gap:.42rem;font-weight:700;font-size:.86rem;white-space:nowrap}.saldos-movimiento-label{font-size:.74rem;letter-spacing:.01em}.saldos-movimiento-value{font-size:.86rem}.saldos-movimiento-amount.credit{color:#166534}.saldos-movimiento-amount.debt{color:#be123c}.saldos-movimientos-empty{margin:0;color:#64748b;font-weight:600}.saldos-movimientos-pagination{margin-top:.6rem;display:flex;align-items:center;justify-content:space-between;gap:.6rem}.saldos-movimientos-pagination p{margin:0;color:#475569;font-size:.82rem;font-weight:700}.saldos-pagination-btn{border:1px solid #c7d5e5;border-radius:10px;background:#fff;color:#0f172a;min-height:34px;padding:.35rem .72rem;font-size:.8rem;font-weight:700;cursor:pointer}.saldos-pagination-btn:disabled{opacity:.55;cursor:not-allowed}@media(max-width:640px){.saldos-overview-grid,.saldos-patient-hero{grid-template-columns:1fr}.saldos-patient-avatar{width:62px;height:62px;border-radius:14px}.saldos-balance-card .saldos-movimientos-actions,.saldos-selected-grid{grid-template-columns:1fr}.saldos-selected-saldo{grid-column:auto;grid-row:auto}.saldos-movimientos-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}:root[data-theme=dark] .saldos-card h2,:root[data-theme=dark] .saldos-result-main strong,:root[data-theme=dark] .saldos-selected-card header strong,:root[data-theme=dark] .saldos-selected-grid p,:root[data-theme=dark] .saldos-movimientos h3,:root[data-theme=dark] .saldos-movimiento-item strong,:root[data-theme=dark] .saldos-movimientos-kpis p{color:#e2e8f0}:root[data-theme=dark] .saldos-copy,:root[data-theme=dark] .saldos-results-meta,:root[data-theme=dark] .saldos-result-main small,:root[data-theme=dark] .saldos-selected-grid p span,:root[data-theme=dark] .saldos-movimientos-kpis p span,:root[data-theme=dark] .saldos-movimiento-item small,:root[data-theme=dark] .saldos-movimientos-empty{color:#94a3b8}:root[data-theme=dark] .saldos-search-shell{border-color:#2b3b50;background:#0f172a}:root[data-theme=dark] .saldos-search-input{color:#e2e8f0}:root[data-theme=dark] .saldos-search-input::placeholder,:root[data-theme=dark] .saldos-search-icon{fill:#64748b;color:#64748b}:root[data-theme=dark] .saldos-results,:root[data-theme=dark] .saldos-result-item{border-color:#243447;background:#0f172a}:root[data-theme=dark] .saldos-result-item:hover{background:#162133}:root[data-theme=dark] .saldos-selected-card{border-color:#243447;background:linear-gradient(180deg,#0f172a,#111b2c)}:root[data-theme=dark] .saldos-patient-hero{border-color:#243447;background:radial-gradient(circle at 95% -10%,rgba(56,189,248,.19) 0%,rgba(56,189,248,.05) 34%,transparent 56%),#0f1a2b}:root[data-theme=dark] .saldos-patient-avatar{border-color:#2c4059;background:linear-gradient(180deg,#19283e,#132237);color:#7dd3fc}:root[data-theme=dark] .saldos-patient-meta p{color:#9fb4cb}:root[data-theme=dark] .saldos-patient-title-row strong{color:#e2e8f0}:root[data-theme=dark] .saldos-patient-title-row .is-active{color:#86efac;background:#1665344d;border:1px solid rgba(74,222,128,.35)}:root[data-theme=dark] .saldos-patient-title-row .is-inactive{color:#fed7aa;background:#9a341252;border:1px solid rgba(251,146,60,.35)}:root[data-theme=dark] .saldos-balance-card{border-color:#1d6f86;background:linear-gradient(180deg,#102235,#11293f)}:root[data-theme=dark] .saldos-balance-label{color:#93c5fd}:root[data-theme=dark] .saldos-balance-card strong{color:#dbeafe}:root[data-theme=dark] .saldos-balance-card.zero strong{color:#86efac}:root[data-theme=dark] .saldos-selected-saldo{border-color:#2a3d55;background:linear-gradient(180deg,#0f172a,#122235)}:root[data-theme=dark] .saldos-ver-detalles-btn{border-color:#2f4561;background:#111b2c;color:#dbeafe}:root[data-theme=dark] .saldos-selected-saldo strong{color:#e2e8f0}:root[data-theme=dark] .saldos-selected-saldo.zero strong{color:#86efac}:root[data-theme=dark] .saldos-movimientos{border-color:#243447;background:#0f1a2c}:root[data-theme=dark] .saldos-movimientos-kpis p,:root[data-theme=dark] .saldos-movimientos-list,:root[data-theme=dark] .saldos-pago-form,:root[data-theme=dark] .saldos-modal-card,:root[data-theme=dark] .saldos-success-card{border-color:#243447;background:#0f172a}:root[data-theme=dark] .saldos-action-btn{border-color:#2f4561;background:#111b2c;color:#dbeafe}:root[data-theme=dark] .saldos-movimiento-item{border-color:#243447}:root[data-theme=dark] .saldos-movimiento-amount{color:#e2e8f0}:root[data-theme=dark] .saldos-movimiento-amount.credit{color:#86efac}:root[data-theme=dark] .saldos-movimiento-amount.debt{color:#fda4af}:root[data-theme=dark] .saldos-pago-form label{color:#bed1e7}:root[data-theme=dark] .saldos-pago-form input{border-color:#243447;background:#111b2c;color:#e2e8f0}:root[data-theme=dark] .saldos-modal-header h3,:root[data-theme=dark] .saldos-modal-close,:root[data-theme=dark] .saldos-success-card p{color:#e2e8f0}:root[data-theme=dark] .saldos-modal-close{border-color:#2f4561;background:#111b2c}:root[data-theme=dark] .saldos-movimientos-pagination p{color:#bed1e7}:root[data-theme=dark] .saldos-pagination-btn{border-color:#2f4561;background:#111b2c;color:#dbeafe}.buscar-clinica-container{width:min(100%,980px);margin-inline:auto;padding:1rem 1rem 6rem}.buscar-clinica-stack{display:grid;gap:1rem}.buscar-clinica-hero{border:1px solid #d9e3ef;border-radius:24px;padding:clamp(1rem,1.2vw + .8rem,1.7rem);background:radial-gradient(circle at 12% 8%,#eff6ff 0%,rgba(239,246,255,.2) 36%,transparent 62%),linear-gradient(180deg,#f9fbff,#f7f9fc);box-shadow:0 20px 35px -30px #0f172a73}.buscar-clinica-kicker{margin:0 0 .4rem;color:#0369a1;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.buscar-clinica-hero h2{margin:0;max-width:28ch;font-size:clamp(1.35rem,1.8vw + .8rem,2rem);line-height:1.18;color:#0f172a}.buscar-clinica-hero-copy{margin:.55rem 0 0;color:#475569;max-width:58ch}.buscar-clinica-header-row{margin-top:1rem;display:flex;align-items:center;justify-content:space-between;gap:.8rem}.buscar-clinica-header-row h2{margin:0;font-size:1.1rem;color:#1e293b}.buscar-clinica-subtitle{margin:.45rem 0 0;color:#64748b}.buscar-clinica-prof-btn{border:0;border-radius:999px;min-height:42px;padding:.55rem 1rem;color:#fff;font-weight:700;cursor:pointer;background:linear-gradient(180deg,#0ea5e9,#0284c7);transition:transform .2s ease,box-shadow .2s ease}.buscar-clinica-prof-btn:hover{transform:translateY(-1px);box-shadow:0 12px 18px -15px #0284c7e6}.buscar-clinica-guest-warning{margin-top:.85rem;border-left:4px solid #d97706;border-radius:12px;padding:.72rem .8rem;color:#7c2d12;background:#fff7ed;font-weight:600}.buscar-clinica-guest-link{color:#9a3412;font-weight:700;text-decoration:underline}.buscar-clinica-guest-link:hover{color:#7c2d12}.buscar-clinica-search-shell{margin-top:1rem;min-height:54px;border-radius:999px;border:1px solid #cdd8e6;background:#fff;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.4rem;padding:.3rem .55rem;transition:box-shadow .2s ease,border-color .2s ease}.buscar-clinica-search-shell:focus-within{border-color:#38bdf8;box-shadow:0 0 0 4px #38bdf833}.buscar-clinica-search-icon{width:20px;height:20px;fill:#94a3b8}.buscar-clinica-search-icon{margin-left:.4rem}.buscar-clinica-search-input{min-height:42px;border:0;outline:none;font-size:1rem;color:#0f172a;background:transparent}.buscar-clinica-search-input::placeholder{color:#94a3b8}.buscar-clinica-results{margin-top:.65rem;border:1px solid #d4deea;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 20px 36px -34px #0f172ae6}.buscar-clinica-results-meta{margin:0;padding:.9rem 1rem;color:#64748b}.buscar-clinica-result-item{width:100%;border:0;border-bottom:1px solid #edf2f7;background:#fff;text-align:left;display:grid;grid-template-columns:auto 1fr;gap:.65rem;padding:.78rem 1rem;cursor:pointer;transition:background-color .2s ease}.buscar-clinica-result-item:hover{background:#f8fbff}.buscar-clinica-result-pin{width:22px;height:22px;border-radius:50%;display:grid;place-items:center}.buscar-clinica-result-pin svg{width:18px;height:18px;fill:#94a3b8}.buscar-clinica-result-main{display:grid;gap:.12rem}.buscar-clinica-result-main strong{color:#0f172a;font-size:1rem}.buscar-clinica-result-main small{color:#64748b;font-size:.92rem}.buscar-clinica-results-footer{padding:.74rem 1rem;background:#f8fafc;color:#64748b;font-weight:600;font-size:.86rem}.buscar-clinica-error{margin-top:.75rem;border-left:4px solid #dc2626;border-radius:12px;padding:.72rem .8rem;color:#991b1b;background:#fef2f2;font-weight:600}.buscar-clinica-result{margin-top:.95rem;border:1px solid #d7e3ef;border-radius:16px;padding:.9rem;display:grid;gap:.62rem;background:#f8fbff}.buscar-clinica-result p{margin:0;color:#0f172a}.buscar-clinica-result label{color:#334155;font-size:.9rem;font-weight:700}.buscar-clinica-result select{width:100%;min-height:44px;border:1px solid #b9c8dc;border-radius:12px;padding:.62rem .72rem;background:#fff;color:#0f172a}:root[data-theme=dark] .buscar-clinica-hero{border-color:#274062;background:radial-gradient(circle at 12% 8%,rgba(91,162,255,.2) 0%,rgba(91,162,255,.04) 36%,transparent 62%),linear-gradient(180deg,#0f1b2e,#0d1727)}:root[data-theme=dark] .buscar-clinica-kicker{color:#93d7ff}:root[data-theme=dark] .buscar-clinica-hero h2,:root[data-theme=dark] .buscar-clinica-header-row h2,:root[data-theme=dark] .buscar-clinica-result-main strong,:root[data-theme=dark] .buscar-clinica-result p{color:#e6edf8}:root[data-theme=dark] .buscar-clinica-hero-copy,:root[data-theme=dark] .buscar-clinica-subtitle,:root[data-theme=dark] .buscar-clinica-results-meta,:root[data-theme=dark] .buscar-clinica-result-main small,:root[data-theme=dark] .buscar-clinica-results-footer,:root[data-theme=dark] .buscar-clinica-result label{color:#9bb0c9}:root[data-theme=dark] .buscar-clinica-search-shell{border-color:#2f4c71;background:#0f1d31}:root[data-theme=dark] .buscar-clinica-search-icon{fill:#87a6c8}:root[data-theme=dark] .buscar-clinica-search-input{color:#e6edf8}:root[data-theme=dark] .buscar-clinica-search-input::placeholder{color:#87a6c8}:root[data-theme=dark] .buscar-clinica-search-input:-webkit-autofill,:root[data-theme=dark] .buscar-clinica-search-input:-webkit-autofill:hover,:root[data-theme=dark] .buscar-clinica-search-input:-webkit-autofill:focus{-webkit-text-fill-color:#e6edf8;box-shadow:0 0 0 1000px #0f1d31 inset}:root[data-theme=dark] .buscar-clinica-results{border-color:#2b486d;background:#101f34}:root[data-theme=dark] .buscar-clinica-result-item{border-bottom-color:#1f3651;background:#101f34}:root[data-theme=dark] .buscar-clinica-result-item:hover{background:#162943}:root[data-theme=dark] .buscar-clinica-result-pin svg{fill:#9eb7d4}:root[data-theme=dark] .buscar-clinica-results-footer{background:#162943}:root[data-theme=dark] .buscar-clinica-result{border-color:#2b486d;background:#11243b}:root[data-theme=dark] .buscar-clinica-guest-link{color:#f59e0b}:root[data-theme=dark] .buscar-clinica-result select{border-color:#3b5d84;background:#0f1d31;color:#e6edf8}:root[data-theme=dark] .buscar-clinica-result select option{background:#0f1d31;color:#e6edf8}.buscar-clinica-confirm{border:0;border-radius:12px;min-height:44px;padding:.62rem .95rem;color:#fff;font-weight:700;cursor:pointer;background:linear-gradient(180deg,#0ea5e9,#0284c7);transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.buscar-clinica-confirm:hover:enabled{transform:translateY(-1px);box-shadow:0 12px 16px -14px #0284c7}.buscar-clinica-confirm:disabled{opacity:.65;cursor:not-allowed}@media(max-width:760px){.buscar-clinica-container{padding:.6rem .6rem 6rem}.buscar-clinica-hero{border-radius:18px;padding:.95rem}.buscar-clinica-header-row{flex-direction:column;align-items:stretch}.buscar-clinica-search-shell{min-height:50px}}@media(prefers-reduced-motion:reduce){.buscar-clinica-prof-btn,.buscar-clinica-confirm,.buscar-clinica-result-item{transition:none}}.seleccionar-profesional-container{width:min(100%,1120px);margin-inline:auto;padding:1rem}.seleccionar-profesional-hero{border:1px solid #d9e3ef;border-radius:20px;padding:1.2rem;background:radial-gradient(circle at 12% 8%,#eff6ff 0%,rgba(239,246,255,.24) 36%,transparent 62%),linear-gradient(180deg,#f9fbff,#f7f9fc)}.seleccionar-profesional-back{border:1px solid #cbd5e1;border-radius:999px;min-height:40px;padding:.5rem .95rem;background:#fff;color:#0f172a;font-weight:700;cursor:pointer}.seleccionar-profesional-hero h2{margin:.85rem 0 0;font-size:clamp(1.5rem,2vw + .8rem,2.3rem);color:#0f172a}.seleccionar-profesional-hero p{margin:.5rem 0 0;color:#475569}.seleccionar-profesional-hero strong{color:#0ea5e9}.seleccionar-profesional-grid{margin-top:1rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.85rem}.especialista-card{border:1px solid #d9e3ef;border-radius:18px;padding:1rem;background:#fff;display:grid;gap:.8rem}.especialista-avatar{width:62px;height:62px;border-radius:50%;background:linear-gradient(180deg,#dbeafe,#bfdbfe);border:2px solid #93c5fd;color:#1e3a8a;font-size:1.05rem;font-weight:800;display:grid;place-items:center}.especialista-content{display:grid;gap:.2rem}.especialista-content h3{margin:0;font-size:1.08rem;color:#0f172a}.especialista-content p{margin:0;color:#64748b}.especialista-select-btn{border:0;border-radius:12px;min-height:42px;padding:.58rem .9rem;color:#fff;background:linear-gradient(180deg,#0ea5e9,#0284c7);font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.especialista-select-btn:hover{transform:translateY(-1px);box-shadow:0 12px 16px -14px #0284c7}.especialista-empty{grid-column:1 / -1;border:1px dashed #cbd5e1;border-radius:14px;padding:1rem;background:#f8fafc;color:#475569}:root[data-theme=dark] .seleccionar-profesional-hero{border-color:#274062;background:radial-gradient(circle at 12% 8%,rgba(91,162,255,.2) 0%,rgba(91,162,255,.04) 36%,transparent 62%),linear-gradient(180deg,#0f1b2e,#0d1727)}:root[data-theme=dark] .seleccionar-profesional-back{border-color:#3e5f87;background:#12233a;color:#e6edf8}:root[data-theme=dark] .seleccionar-profesional-hero h2{color:#e6edf8}:root[data-theme=dark] .seleccionar-profesional-hero p{color:#9bb0c9}:root[data-theme=dark] .especialista-card{border-color:#2b486d;background:#101f34}:root[data-theme=dark] .especialista-content h3{color:#e6edf8}:root[data-theme=dark] .especialista-content p{color:#9bb0c9}:root[data-theme=dark] .especialista-empty{border-color:#3b5d84;background:#11243b;color:#9bb0c9}@media(max-width:760px){.seleccionar-profesional-container{padding:.7rem}.seleccionar-profesional-hero{border-radius:16px;padding:.95rem}}@media(prefers-reduced-motion:reduce){.especialista-select-btn{transition:none}}.mis-reservas-container{width:100%;max-width:840px;margin-inline:auto;padding:1rem}.mis-reservas-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:1.2rem}.mis-reservas-card h2{margin:0 0 .9rem;color:var(--color-text);text-align:center}.mis-reservas-actions{display:flex;gap:.55rem;margin-bottom:.9rem}.mis-reservas-actions button{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);min-height:44px;padding:.55rem .8rem;background:var(--color-surface-soft);color:var(--color-text);font-weight:700;cursor:pointer}.mis-reservas-actions button:disabled{opacity:.75;cursor:not-allowed}.mis-reservas-list{display:grid;gap:.75rem}.mis-reservas-item{background:var(--color-surface-soft);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:.85rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.mis-reservas-item-content{flex:1}.mis-reservas-item p{margin:.24rem 0;color:var(--color-text)}.mis-reservas-item-actions{display:flex;align-items:center;justify-content:flex-end}.mis-reservas-delete{border:none;border-radius:var(--radius-md);min-height:44px;padding:.55rem .78rem;background:#cc3b3b;color:#fff;font-weight:700;cursor:pointer}.mis-reservas-delete:disabled{opacity:.75;cursor:not-allowed}.mis-reservas-info{color:var(--color-text-muted);margin-top:1rem}.mis-reservas-error{margin-top:1rem;color:var(--color-danger);background:var(--color-danger-bg);border-left:4px solid var(--color-danger-border);border-radius:var(--radius-md);padding:.65rem .75rem}.mis-reservas-success{margin-top:1rem;color:var(--color-success);background:var(--color-success-bg);border-left:4px solid var(--color-success-border);border-radius:var(--radius-md);padding:.65rem .75rem}@media(max-width:560px){.mis-reservas-card{padding:.95rem}.mis-reservas-actions{flex-direction:column}.mis-reservas-actions button{width:100%}.mis-reservas-item{flex-direction:column;align-items:stretch}}.public-clinic-page{max-width:960px;margin:0 auto;padding:2rem 1rem 3rem}.public-clinic-panel{display:grid;gap:.75rem;border:1px solid #d7e3ef;border-radius:16px;background:#fff;padding:1rem}.public-flow-card{margin-top:1rem;border:1px solid #d7e3ef;border-radius:16px;background:#fff;padding:1rem;display:grid;gap:.85rem}.public-flow-card h3{margin:0;color:#0f172a}.public-professional-grid-single{margin-top:0}.especialista-select-btn.selected{background:linear-gradient(180deg,#35a4f5,#2092e6);box-shadow:0 10px 16px -14px #2192e6f2}.public-step-actions{display:flex;justify-content:flex-end}.public-step-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.public-back-btn{border:1px solid #cbd5e1;border-radius:10px;min-height:38px;padding:.4rem .75rem;background:#fff;color:#0f172a;font-weight:600;cursor:pointer}.public-slot-group-wrap{margin-bottom:.25rem}.public-slot-group-wrap h4{margin-top:0}.public-selected-inline{position:static;transform:none;width:auto;box-shadow:none}.public-selection-summary{margin:0;color:#475569}.public-error{margin:0;color:#b3261e}.public-loading-inline{display:inline-flex;align-items:center;gap:.45rem}.public-loading-spinner{width:16px;height:16px;animation:publicSpin .8s linear infinite}.public-loading-spinner-track{stroke:#ffffff59;stroke-width:3}.public-loading-spinner-head{stroke:#fff;stroke-width:3;stroke-linecap:round}@keyframes publicSpin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.public-loading-spinner{animation:none}}.landing-page-container{width:100%;margin:0;padding:1rem;padding-bottom:0;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 12% 10%,rgba(120,176,232,.18),transparent 36%),radial-gradient(circle at 88% 82%,rgba(81,155,224,.14),transparent 42%),linear-gradient(180deg,#f4f8fe,#ebf2fb)}.landing-page-container:before,.landing-page-container:after{content:"";position:absolute;inset:-22% -18%;pointer-events:none;z-index:0}.landing-page-container:before{background:radial-gradient(circle at 22% 22%,rgba(82,165,236,.24),transparent 34%),radial-gradient(circle at 78% 30%,rgba(132,196,245,.2),transparent 38%),radial-gradient(circle at 52% 78%,rgba(87,150,219,.14),transparent 36%);filter:blur(10px);animation:landing-bg-drift-a 16s ease-in-out infinite alternate}.landing-page-container:after{background:radial-gradient(circle at 82% 18%,rgba(106,182,245,.18),transparent 30%),radial-gradient(circle at 18% 70%,rgba(153,206,247,.16),transparent 34%);filter:blur(24px);animation:landing-bg-drift-b 22s ease-in-out infinite alternate}.landing-page-stack{width:min(100%,1380px);margin-inline:auto;display:grid;gap:clamp(1.35rem,2vw,2rem);position:relative;z-index:1}@keyframes landing-bg-drift-a{0%{transform:translate3d(-1.5%,-1.2%,0) scale(1)}to{transform:translate3d(1.5%,1.3%,0) scale(1.04)}}@keyframes landing-bg-drift-b{0%{transform:translate3d(1%,-1%,0) scale(1)}to{transform:translate3d(-1.8%,1.6%,0) scale(1.06)}}.landing-hero{border-radius:24px;border:1px solid #d7dee9;padding:clamp(1.5rem,2.2vw + .8rem,3.4rem) clamp(1rem,4vw,5.5rem);background:#e8ebf2;overflow:hidden;scroll-margin-top:96px}.landing-hero-grid{display:grid;grid-template-columns:1fr 1.24fr;align-items:center;gap:clamp(1rem,2.6vw,2.4rem)}.landing-hero-copy-wrap{display:grid;gap:.55rem}.landing-kicker{margin:0 0 .45rem;color:#075985;font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.landing-hero h2{margin:0;max-width:14ch;font-size:clamp(2.1rem,3vw + .8rem,4.5rem);line-height:1.02;color:#0f172a}.landing-copy{margin:.65rem 0 0;max-width:24ch;color:#344866;font-size:clamp(1.1rem,.8vw + .9rem,1.55rem);line-height:1.35}.landing-hero-visual{position:relative;min-height:clamp(340px,42vw,680px);overflow:hidden}.landing-visual-bg-circle{position:absolute;border-radius:50%}.landing-visual-bg-circle-a{width:540px;height:540px;right:1%;top:8%;background:#c9d9ecb8}.landing-visual-bg-circle-b{width:500px;height:500px;right:-20%;top:3%;background:#bdd0e685}.landing-agenda-frame{position:absolute;inset:10% 5% 10% 8%;border-radius:28px;border:4px solid #8aadcf;background:linear-gradient(180deg,#bcd2ea,#9dbfdd);box-shadow:0 30px 40px -28px #0f172a73;padding:1.2rem}.landing-agenda-screen{width:100%;height:100%;border-radius:22px;background:#f8fbff;border:1px solid #d2def0;display:grid;grid-template-columns:1.05fr .85fr;overflow:hidden}.landing-calendar-col{padding:1.15rem;border-right:1px solid #d9e3f1;display:grid;gap:.9rem;align-content:start}.landing-calendar-head{display:flex;align-items:center;justify-content:space-between;color:#213d68;font-size:1.2rem}.landing-calendar-head strong{font-size:clamp(.95rem,.9vw + .7rem,1.55rem);color:#1f3557}.landing-calendar-weekdays,.landing-calendar-days{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.5rem}.landing-calendar-weekdays span{font-size:.78rem;color:#7c8fa9;font-weight:800}.landing-calendar-days span{min-height:34px;border-radius:12px;display:grid;place-items:center;color:#6a7f9d;font-weight:700}.landing-calendar-days span.selected{background:linear-gradient(180deg,#3aa0ed,#2482d3);color:#fff}.landing-calendar-legend{margin-top:.4rem;border-top:1px solid #dde6f3;padding-top:.6rem}.landing-calendar-legend p{margin:.28rem 0;color:#3a5275;font-weight:600;display:flex;align-items:center;gap:.44rem}.landing-calendar-legend .dot{width:12px;height:12px;border-radius:50%;display:inline-block}.dot-selected{background:#3294e8}.dot-available{background:#ccdaed}.dot-unavailable{background:#6ea7dd}.landing-slots-col{padding:1.2rem 1.1rem;display:grid;align-content:start;gap:.6rem}.landing-slots-col h3{margin:0;color:#162c4f;font-size:clamp(1.1rem,1vw + .8rem,1.85rem)}.landing-slots-col p{margin:0;color:#637a9d;font-size:clamp(.9rem,.45vw + .76rem,1.24rem)}.landing-slots-col h4{margin:.15rem 0 0;color:#7e92af;font-size:.95rem;letter-spacing:.08em}.landing-slot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.48rem}.landing-slot-grid span{min-height:38px;border-radius:12px;border:1px solid #d2deef;display:grid;place-items:center;color:#1b2f52;font-weight:800;background:#fff}.landing-doctor{position:absolute;bottom:2%;width:clamp(84px,9vw,140px);height:auto;object-fit:contain;z-index:3;filter:drop-shadow(0 10px 14px rgba(15,23,42,.18))}.landing-doctor-left{left:1.2%}.landing-doctor-right{right:-24%;width:clamp(300px,32vw,520px);bottom:1.2%}.landing-actions{margin-top:1rem;display:flex;flex-wrap:wrap;gap:.8rem}.landing-btn-primary,.landing-btn-secondary{border-radius:999px;min-height:56px;padding:.62rem 1.7rem;font-weight:800;font-size:clamp(1rem,.4vw + .9rem,1.35rem);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}.landing-btn-primary{border:0;color:#fff;background:linear-gradient(180deg,#203b5f,#1a2d47);box-shadow:0 14px 22px -17px #09182de6}.landing-btn-primary:hover{transform:translateY(-1px)}.landing-btn-secondary{border:1px solid #1491e2;color:#fff;background:linear-gradient(180deg,#3aa1eb,#2a93df)}.landing-btn-secondary:hover{background:linear-gradient(180deg,#45abf4,#2f98e3)}.landing-btn-secondary-invite{position:relative;isolation:isolate;animation:landing-planes-invite-click 5.8s ease-in-out infinite;box-shadow:0 8px 14px -12px #1f7dc680}.landing-btn-secondary-invite:after{content:"";position:absolute;inset:-3px;border-radius:999px;border:2px solid rgba(31,125,198,.45);opacity:0;pointer-events:none;animation:landing-planes-invite-ring 5.8s ease-out infinite;z-index:-1}@keyframes landing-planes-invite-click{0%,74%,to{transform:translateY(0) scale(1);box-shadow:0 8px 14px -12px #1f7dc680}82%{transform:translateY(1px) scale(.95);box-shadow:0 6px 12px -12px #1f7dc659}90%{transform:translateY(-1px) scale(1.03);box-shadow:0 14px 22px -14px #1f7dc694}}@keyframes landing-planes-invite-ring{0%,74%,to{transform:scale(.98);opacity:0}82%{transform:scale(1);opacity:.65}94%{transform:scale(1.14);opacity:0}}.landing-btn-secondary-invite:hover{animation-play-state:paused;box-shadow:0 12px 18px -14px #1f7dc68c;transform:translateY(-1px)}.landing-btn-secondary-invite:hover:after{animation-play-state:paused;opacity:0}:root:not([data-theme=dark]) .landing-btn-primary{color:#164a78;border:1px solid #98bee3;background:linear-gradient(180deg,#f8fcff,#e7f3ff);box-shadow:0 12px 20px -16px #11538f73}:root:not([data-theme=dark]) .landing-btn-primary:hover{background:linear-gradient(180deg,#fff,#ecf6ff);box-shadow:0 14px 24px -16px #11538f85}.landing-solutions{border-radius:24px;border:1px solid #d7dee9;background:#e8ebf2;padding:clamp(1rem,1.8vw + .7rem,2rem);display:grid;gap:1.15rem}.landing-about{border-radius:24px;border:1px solid #d7dee9;background:linear-gradient(135deg,#eef2f8,#e8edf6 45%,#e4eaf5);padding:clamp(1.25rem,2vw + .8rem,2.4rem);scroll-margin-top:96px;box-shadow:0 20px 36px -30px #0f172a61}.landing-about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1rem,2.4vw,2.2rem);align-items:stretch}.landing-about-copy{display:grid;align-content:start;gap:.6rem}.landing-about-copy h3{margin:0;color:#1a2d57;font-size:clamp(2rem,2.2vw + .7rem,3rem);line-height:1.05}.landing-about-copy p{margin:0;color:#2f3f5d;font-size:clamp(1rem,.45vw + .88rem,1.28rem);line-height:1.55;max-width:48ch}.landing-about-lead{border-left:4px solid #4ca0e8;padding-left:.75rem}.landing-about-closing{font-weight:700;color:#1f3c65}.landing-about-points{margin-top:.2rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.landing-about-point{display:grid;grid-template-columns:auto 1fr;gap:.65rem;align-items:start;background:#ffffff94;border:1px solid #d7e3f1;border-radius:14px;padding:.8rem}.landing-about-point .material-symbols-outlined{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:#e7f1fb;color:#2f8edf}.landing-about-point h4{margin:0;color:#1d335a;font-size:1.06rem}.landing-about-point p{margin-top:.2rem;font-size:.95rem;max-width:24ch}.landing-about-visual{position:relative;border-radius:20px;background:radial-gradient(circle at 82% 14%,rgba(164,201,241,.32),transparent 35%),radial-gradient(circle at 22% 80%,rgba(129,184,234,.24),transparent 42%);overflow:hidden;display:grid;align-content:center;justify-items:center;padding:1rem 1rem .8rem}.landing-about-glow{position:absolute;width:78%;aspect-ratio:1 / 1;top:10%;border-radius:50%;background:radial-gradient(circle,#79afe857,#79afe805 68%)}.landing-about-phone-viewport{position:relative;z-index:2;width:min(80%,460px);height:clamp(300px,31vw,420px);overflow:hidden;display:grid;place-items:start center}.landing-about-phone-image{width:100%;height:auto;object-fit:contain;object-position:top center;display:block;transform:translateY(-16%);filter:drop-shadow(0 18px 28px rgba(28,80,142,.26))}.landing-about-visual-caption{position:relative;z-index:2;margin:.1rem 0 0;text-align:center;color:#1f365d;font-size:clamp(.98rem,.4vw + .88rem,1.25rem);max-width:44ch}.landing-about-visual-caption span,.landing-about-visual-caption strong{display:block;white-space:nowrap}.landing-about-visual-caption strong{margin-top:.08rem;color:#2467ab}.landing-solutions-head{display:grid;gap:.2rem}.landing-solutions-pro-head{margin-top:.65rem;display:grid;justify-items:end;text-align:right;gap:.2rem}.landing-solutions-title{margin:0;color:#0f172a;font-size:clamp(1.55rem,2vw + .7rem,2.45rem);line-height:1.08}.landing-solutions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.95rem}.landing-solution-card{border:1px solid #d7e3ef;border-radius:16px;background:#fff;padding:1.2rem;box-shadow:0 12px 20px -24px #0f172a66;display:grid;gap:.55rem}.landing-solution-icon{width:36px;height:36px;border-radius:8px;display:grid;place-items:center;background:#eaf3fb;color:#2491e6;font-size:1.2rem}.landing-solution-card h4{margin:0;color:#0f172a;font-size:1.04rem}.landing-solution-card p{margin:0;color:#475569;line-height:1.45}.landing-final-cta{border-radius:24px;padding:clamp(1.4rem,2.1vw + .8rem,2.8rem);background:linear-gradient(180deg,#3aa1eb,#2a93df);box-shadow:0 18px 32px -24px #0f172aa6;color:#fff;text-align:center;display:grid;justify-items:center;gap:.8rem;scroll-margin-top:96px}.landing-final-cta h3{margin:0;max-width:24ch;font-size:clamp(1.8rem,2.4vw + .7rem,3.1rem);line-height:1.08;color:#fff}.landing-final-cta p{margin:0;max-width:58ch;color:#ffffffe6;font-size:clamp(1rem,.5vw + .85rem,1.25rem)}.landing-final-cta-btn{margin-top:.25rem;min-height:50px;border-radius:12px;border:1px solid rgba(255,255,255,.4);position:relative;overflow:hidden;background:linear-gradient(180deg,#fff,#eef7ff);color:#1f7dc6;padding:.72rem 1.6rem;font-weight:800;font-size:1.05rem;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 10px 18px -14px #ffffffe6;animation:landing-final-cta-pulse 4.8s ease-in-out infinite}.landing-final-cta-btn:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.75) 50%,transparent 80%);transform:translate(-150%);animation:landing-final-cta-shine 4.8s ease-in-out infinite;pointer-events:none}.landing-final-cta-btn:hover{transform:translateY(-1px);box-shadow:0 14px 20px -14px #0f172a73}@keyframes landing-final-cta-pulse{0%,68%,to{transform:translateY(0) scale(1);box-shadow:0 10px 18px -14px #ffffffe6}78%{transform:translateY(1px) scale(.97);box-shadow:0 8px 14px -14px #ffffffbf}88%{transform:translateY(-1px) scale(1.03);box-shadow:0 14px 22px -12px #fffffffa}}@keyframes landing-final-cta-shine{0%,62%{transform:translate(-150%)}82%,to{transform:translate(150%)}}.landing-whatsapp-fab{position:fixed;right:1.1rem;bottom:5.6rem;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25d366;border:2px solid #fff;box-shadow:0 12px 22px -12px #0f172a8c;z-index:90;transition:transform .2s ease,box-shadow .2s ease}.landing-whatsapp-fab:before{content:"";position:absolute;inset:8px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #ffffffb3}.landing-whatsapp-fab:hover{transform:translateY(-1px);box-shadow:0 16px 24px -12px #0f172aa6}.landing-whatsapp-logo{width:32px;height:32px;object-fit:contain;position:relative;z-index:1}.landing-whatsapp-tooltip{position:absolute;right:calc(100% + .55rem);top:50%;transform:translateY(-50%);padding:.34rem .62rem;border-radius:8px;background:#0f172a;color:#fff;font-size:.82rem;font-weight:700;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s ease}.landing-whatsapp-fab:hover .landing-whatsapp-tooltip,.landing-whatsapp-fab:focus-visible .landing-whatsapp-tooltip{opacity:1}@media(max-width:900px){.landing-hero-grid{grid-template-columns:1fr}.landing-hero-visual{min-height:420px}.landing-about-grid,.landing-about-points{grid-template-columns:1fr}.landing-about-phone-viewport{width:min(82%,360px);height:clamp(250px,52vw,340px)}.landing-solutions-grid{grid-template-columns:1fr}.landing-solutions-pro-head{justify-items:start;text-align:left}}@media(max-width:640px){.landing-page-stack{gap:1.15rem}.landing-page-container{padding:.6rem;padding-bottom:0}.landing-hero{padding:1rem .8rem 1.3rem}.landing-hero h2{font-size:clamp(1.95rem,8vw,2.9rem)}.landing-copy{max-width:none;font-size:1.1rem}.landing-agenda-screen{grid-template-columns:1fr}.landing-calendar-col{border-right:0;border-bottom:1px solid #d9e3f1}.landing-actions{flex-direction:column}.landing-btn-primary,.landing-btn-secondary{width:100%}.landing-whatsapp-fab{right:.75rem;bottom:5.8rem;width:54px;height:54px}}@media(prefers-reduced-motion:reduce){.landing-page-container:before,.landing-page-container:after,.landing-btn-secondary-invite,.landing-btn-secondary-invite:after,.landing-final-cta-btn,.landing-final-cta-btn:after{animation:none}}:root[data-theme=dark] .landing-hero,:root[data-theme=dark] .landing-solutions{border-color:#2a3f5e;background:#0f1c2f}:root[data-theme=dark] .landing-page-container{background:radial-gradient(circle at 12% 10%,rgba(70,133,196,.22),transparent 36%),radial-gradient(circle at 88% 82%,rgba(48,110,176,.2),transparent 42%),linear-gradient(180deg,#081423,#0b1a2c)}:root[data-theme=dark] .landing-page-container:before{background:radial-gradient(circle at 22% 22%,rgba(58,133,205,.26),transparent 34%),radial-gradient(circle at 78% 30%,rgba(70,150,222,.2),transparent 38%),radial-gradient(circle at 52% 78%,rgba(41,98,160,.2),transparent 36%)}:root[data-theme=dark] .landing-page-container:after{background:radial-gradient(circle at 82% 18%,rgba(84,164,230,.2),transparent 30%),radial-gradient(circle at 18% 70%,rgba(54,125,191,.2),transparent 34%)}:root[data-theme=dark] .landing-about{border-color:#2a3f5e;background:linear-gradient(135deg,#0f1a2b,#12243b 45%,#132842)}:root[data-theme=dark] .landing-kicker{color:#8bc7ff}:root[data-theme=dark] .landing-hero h2,:root[data-theme=dark] .landing-solutions-title,:root[data-theme=dark] .landing-solution-card h4,:root[data-theme=dark] .landing-about-copy h3,:root[data-theme=dark] .landing-about-point h4{color:#e6f0ff}:root[data-theme=dark] .landing-copy,:root[data-theme=dark] .landing-about-copy p,:root[data-theme=dark] .landing-solution-card p{color:#b7cce6}:root[data-theme=dark] .landing-btn-secondary{border-color:#1491e2;color:#fff;background:linear-gradient(180deg,#3aa1eb,#2a93df)}:root[data-theme=dark] .landing-btn-secondary-invite{color:#fff}:root[data-theme=dark] .landing-btn-secondary:hover{background:linear-gradient(180deg,#45abf4,#2f98e3)}:root[data-theme=dark] .landing-agenda-screen,:root[data-theme=dark] .landing-solution-card,:root[data-theme=dark] .landing-about-point{background:#112339;border-color:#324b6b}:root[data-theme=dark] .landing-slots-col h3,:root[data-theme=dark] .landing-slot-grid span,:root[data-theme=dark] .landing-calendar-head strong,:root[data-theme=dark] .landing-calendar-legend p,:root[data-theme=dark] .landing-about-visual-caption{color:#d9e8fc}:root[data-theme=dark] .landing-slot-grid span{background:#172a43;border-color:#365475}:root[data-theme=dark] .landing-calendar-weekdays span,:root[data-theme=dark] .landing-slots-col p,:root[data-theme=dark] .landing-slots-col h4{color:#8fa9cb}:root[data-theme=dark] .landing-about-point .material-symbols-outlined,:root[data-theme=dark] .landing-solution-icon{background:#1c3453;color:#7fc3ff}:root[data-theme=dark] .landing-calendar-col{border-right-color:#2f4868}.plans-page-container{width:100%;margin:0;padding:1rem;padding-bottom:0;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 12% 10%,rgba(120,176,232,.18),transparent 36%),radial-gradient(circle at 88% 82%,rgba(81,155,224,.14),transparent 42%),linear-gradient(180deg,#f4f8fe,#ebf2fb)}.plans-page-container:before,.plans-page-container:after{content:"";position:absolute;inset:-22% -18%;pointer-events:none;z-index:0}.plans-page-container:before{background:radial-gradient(circle at 22% 22%,rgba(82,165,236,.24),transparent 34%),radial-gradient(circle at 78% 30%,rgba(132,196,245,.2),transparent 38%),radial-gradient(circle at 52% 78%,rgba(87,150,219,.14),transparent 36%);filter:blur(10px);animation:plans-bg-drift-a 16s ease-in-out infinite alternate}.plans-page-container:after{background:radial-gradient(circle at 82% 18%,rgba(106,182,245,.18),transparent 30%),radial-gradient(circle at 18% 70%,rgba(153,206,247,.16),transparent 34%);filter:blur(24px);animation:plans-bg-drift-b 22s ease-in-out infinite alternate}.plans-page-stack{width:min(100%,1380px);margin-inline:auto;display:grid;gap:clamp(1.25rem,2vw,2rem);position:relative;z-index:1}@keyframes plans-bg-drift-a{0%{transform:translate3d(-1.5%,-1.2%,0) scale(1)}to{transform:translate3d(1.5%,1.3%,0) scale(1.04)}}@keyframes plans-bg-drift-b{0%{transform:translate3d(1%,-1%,0) scale(1)}to{transform:translate3d(-1.8%,1.6%,0) scale(1.06)}}.plans-grid-section,.plans-demo-section,.plans-contact-strip{border-radius:28px;border:1px solid #d7dee9;overflow:hidden}.plans-demo-copy{display:grid;gap:.75rem;align-content:start}.plans-kicker{margin:0;color:#0b659a;text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;font-weight:800}.plans-grid-head h2,.plans-demo-copy h2,.plans-contact-strip h2{margin:0;color:#10213f;line-height:1.05}.plans-demo-copy p,.plan-card-description{margin:0;color:#42556f;line-height:1.55;font-size:clamp(1rem,.5vw + .86rem,1.18rem)}.plan-card-description{min-height:5.2rem}.plans-contact-link{min-height:52px;border-radius:999px;padding:.72rem 1.5rem;gap:.5rem;font-weight:800;font-size:1rem;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease;animation:plans-contact-invite-click 3.2s ease-in-out infinite}.plans-contact-link:hover{animation-play-state:paused;transform:translateY(-2px) scale(1.05)!important;box-shadow:0 18px 28px -18px #0f172a8c}.plans-contact-link:focus-visible{animation-play-state:paused;transform:translateY(-2px) scale(1.05)!important}.plans-contact-actions{display:flex;align-items:center;justify-content:center;gap:.7rem;flex-wrap:wrap}.plans-contact-icon-svg{width:18px;height:18px;fill:currentColor}.plans-contact-whatsapp-logo{width:14px;height:14px;object-fit:contain}.plans-contact-whatsapp-badge{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#fff}.plans-grid-section,.plans-demo-section{padding:clamp(1.2rem,1.8vw + .7rem,2.2rem);background:#eef3f8}.plans-grid-head{display:grid;gap:.3rem;margin-bottom:1.1rem}.plans-grid-head h2,.plans-demo-copy h2,.plans-contact-strip h2{font-size:clamp(1.7rem,2vw + .7rem,2.8rem)}.plans-promo-banner{margin:0 0 1rem;display:inline-flex;align-items:center;justify-content:center;width:fit-content;padding:.52rem .95rem;border-radius:999px;border:1px solid #f6b906;background:linear-gradient(120deg,#ffe66d,#ffc233);font-size:.9rem;font-weight:900;letter-spacing:.03em;text-transform:uppercase}.plans-promo-banner-text{display:inline-block;white-space:nowrap;background:linear-gradient(100deg,#7a1f00 0% 35%,#fff5c1 50%,#7a1f00 65% 100%);background-size:280% 100%;background-position:140% 0;color:transparent;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;animation:plans-promo-text-shine 7.5s linear infinite}@keyframes plans-promo-text-shine{0%{background-position:140% 0}to{background-position:-140% 0}}@media(prefers-reduced-motion:reduce){.plans-promo-banner-text{animation:none}}.plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.plan-card{border-radius:22px;border:1px solid #d8e2ef;background:linear-gradient(180deg,#fff,#f7faff);padding:1.3rem;overflow:hidden;display:grid;grid-template-rows:auto auto auto auto 1fr;gap:.8rem;align-content:start;box-shadow:0 16px 24px -26px #0f172a66;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}@media(hover:hover)and (pointer:fine){.plan-card:hover{transform:translateY(-6px) scale(1.02);border-color:#7db9ea;box-shadow:0 26px 36px -24px #0f568e61}}.plan-card-ribbon{margin:-1.3rem -1.3rem 0;padding:.48rem .9rem;border-bottom:1px solid rgba(15,23,42,.08);background:linear-gradient(120deg,#ffe27a,#ffbf2f);color:#7a1f00;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:900;text-align:center}.plan-card.is-highlighted{background:linear-gradient(180deg,#fff,#f7faff);border-color:#d8e2ef;transform:translateY(-4px) scale(1.04);z-index:1;box-shadow:0 26px 36px -26px #0d5995a6}@media(hover:hover)and (pointer:fine){.plan-card.is-highlighted:hover{transform:translateY(-8px) scale(1.06);box-shadow:0 34px 44px -24px #0d59959e}}@media(hover:hover)and (pointer:fine){.plans-grid:hover .plan-card.is-highlighted:not(:hover){transform:none;z-index:0;box-shadow:0 16px 24px -26px #0f172a66;border-color:#d8e2ef}.plans-grid:hover .plan-card:hover{transform:translateY(-10px) scale(1.06);z-index:2;border-color:#6fb0e6;box-shadow:0 34px 46px -24px #1058938f}}.plan-card-name{margin:0;color:#0f4c7b;font-size:.88rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.plan-card-price-row{display:grid;gap:.1rem;min-height:4.9rem;align-content:start}.plan-card-price-main{display:flex;align-items:flex-end;flex-wrap:nowrap;gap:.35rem}.plan-card-price-main-stacked{display:grid;justify-content:start;gap:.1rem}.plan-card-price-extra-row{display:inline-flex;align-items:flex-end;justify-content:flex-start;gap:.35rem}.plan-card-price-row strong{color:#112c52;font-size:clamp(2rem,1vw + 1.45rem,2.8rem);line-height:1}.plan-card-compact-price .plan-card-price-row strong{font-size:clamp(1.8rem,.8vw + 1.35rem,2.45rem)}.plan-card-compact-price .plan-card-price-detail{font-size:.88rem}.plan-card-price-detail{color:#60748d;font-weight:700;font-size:.95rem;line-height:1.2;padding-bottom:.2rem;white-space:nowrap}.plan-card-period{margin:0;color:#60748d;font-weight:700;min-height:1.4rem;display:flex;align-items:flex-start}.plan-card-list{list-style:none;padding:0;margin:0;display:grid;gap:.6rem;align-content:start}.plan-card-list li{color:#2c405c;font-weight:600;display:grid;grid-template-columns:1rem 1fr;align-items:start;column-gap:.45rem;padding-left:0}.plan-card-list li:before{content:"✓";position:static;display:inline-flex;align-items:center;justify-content:center;width:1rem;color:#2e96e5;font-size:1rem;line-height:1;font-weight:800;transform:translateY(.08rem)}.plans-demo-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:1rem;align-items:stretch}.plans-video-placeholder{text-align:center}.plans-video-embed{width:100%;aspect-ratio:16 / 9;height:auto;border:0;border-radius:16px;box-shadow:0 18px 30px -22px #0f172acc;background:#000}.plans-video-play{width:88px;height:88px;border-radius:50%;background:linear-gradient(180deg,#1495e9,#0d7ac6);color:#fff;display:grid;place-items:center;box-shadow:0 18px 28px -18px #0d7ac6d9}.plans-video-play .material-symbols-outlined{font-size:2.5rem}.plans-video-placeholder strong{color:#173055;font-size:1.35rem}.plans-video-placeholder p{margin:0;color:#4f647d}.plans-contact-strip{background:linear-gradient(135deg,#f3f8ff,#e4f0fd);border:1px solid #c8d9ed;padding:clamp(1.4rem,1.8vw + .8rem,2.4rem);display:grid;gap:1rem;justify-items:center;text-align:center}.plans-contact-strip h2{max-width:22ch;color:#16385f}.plans-contact-link,.plans-contact-link-mail{color:#116fb4;background:#fff}.plans-contact-link-whatsapp{color:#fff;background:#25d366;border:1px solid #25d366;box-shadow:0 14px 24px -18px #25d366e6}@keyframes plans-contact-invite-click{0%,68%,to{transform:translateY(0) scale(1)}74%{transform:translateY(1px) scale(.97)}82%{transform:translateY(-1px) scale(1.02)}90%{transform:translateY(0) scale(1)}}.plans-contact-link:nth-child(2){animation-delay:.35s}@media(max-width:960px){.plans-demo-section,.plans-grid{grid-template-columns:1fr}.plan-card.is-highlighted{transform:none}}@media(max-width:640px){.plans-page-container{padding:.6rem;padding-bottom:0}.plans-contact-link,.plans-contact-actions{width:100%}.plans-video-placeholder{min-height:0}}:root[data-theme=dark] .plans-grid-section,:root[data-theme=dark] .plans-demo-section{border-color:#2a3f5e}:root[data-theme=dark] .plans-page-container{background:radial-gradient(circle at 12% 10%,rgba(70,133,196,.22),transparent 36%),radial-gradient(circle at 88% 82%,rgba(48,110,176,.2),transparent 42%),linear-gradient(180deg,#081423,#0b1a2c)}:root[data-theme=dark] .plans-page-container:before{background:radial-gradient(circle at 22% 22%,rgba(58,133,205,.26),transparent 34%),radial-gradient(circle at 78% 30%,rgba(70,150,222,.2),transparent 38%),radial-gradient(circle at 52% 78%,rgba(41,98,160,.2),transparent 36%)}:root[data-theme=dark] .plans-page-container:after{background:radial-gradient(circle at 82% 18%,rgba(84,164,230,.2),transparent 30%),radial-gradient(circle at 18% 70%,rgba(54,125,191,.2),transparent 34%)}:root[data-theme=dark] .plans-grid-section,:root[data-theme=dark] .plans-demo-section{background:#0f1c2f}:root[data-theme=dark] .plans-kicker{color:#8bc7ff}@media(prefers-reduced-motion:reduce){.plans-page-container:before,.plans-page-container:after{animation:none}.plan-card{transition:none}.plans-contact-link{animation:none}}:root[data-theme=dark] .plans-promo-banner{border-color:#ffcc4d;background:linear-gradient(120deg,#ffd75e,#ffb82f)}:root[data-theme=dark] .plans-promo-banner-text{background:linear-gradient(100deg,#5a1300 0% 35%,#fff3bc 50%,#5a1300 65% 100%);background-size:280% 100%;background-position:140% 0;color:transparent;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}:root[data-theme=dark] .plans-grid-head h2,:root[data-theme=dark] .plans-demo-copy h2,:root[data-theme=dark] .plans-contact-strip h2,:root[data-theme=dark] .plans-video-placeholder strong{color:#e6f0ff}:root[data-theme=dark] .plans-contact-strip{background:linear-gradient(135deg,#123561,#0f2745);border-color:transparent}:root[data-theme=dark] .plans-demo-copy p,:root[data-theme=dark] .plan-card-description,:root[data-theme=dark] .plans-video-placeholder p{color:#b5cae4}:root[data-theme=dark] .plan-card{background:#112339;border-color:#324b6b}:root[data-theme=dark] .plan-card-name{color:#8cb9e6}:root[data-theme=dark] .plan-card-price-row strong,:root[data-theme=dark] .plan-card-price-detail,:root[data-theme=dark] .plan-card-period,:root[data-theme=dark] .plan-card-list li{color:#e6f0ff}:root[data-theme=dark] .plans-video-embed{box-shadow:0 18px 30px -22px #000000f2}.paciente-registro-page{width:100%;min-height:100%;display:flex;flex-direction:column;align-items:stretch;background:radial-gradient(circle at 14% 18%,rgba(118,181,238,.18),transparent 38%),radial-gradient(circle at 84% 84%,rgba(84,159,228,.14),transparent 42%),linear-gradient(180deg,#f3f8ff,#eaf2fc);border-radius:18px}.paciente-registro-container{max-width:520px;padding-top:1.4rem;padding-bottom:1.6rem}.paciente-registro-form{border-color:#cfdbeb;background:linear-gradient(180deg,#fff,#f7fbff)}.paciente-registro-back-btn{margin-top:.55rem}:root[data-theme=dark] .paciente-registro-page{background:radial-gradient(circle at 14% 18%,rgba(67,132,201,.22),transparent 38%),radial-gradient(circle at 84% 84%,rgba(53,112,173,.2),transparent 42%),linear-gradient(180deg,#0a1729,#0d1e33)}:root[data-theme=dark] .paciente-registro-form{border-color:#2d4969;background:linear-gradient(180deg,#101f34,#122641)}@media(max-width:640px){.paciente-registro-page{border-radius:0}.paciente-registro-container{padding-top:.75rem}}.registro-container{width:100%;max-width:460px;margin-inline:auto;display:flex;flex-direction:column;align-items:stretch;gap:.9rem;padding:1rem 1rem 6rem}.registro-container-login{padding-bottom:1rem}.registro-form{width:100%;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.4rem;box-shadow:var(--shadow-md)}.registro-form.login-error-shake{animation:loginFormShake .4s ease-in-out}@keyframes loginFormShake{0%,to{transform:translate(0)}15%{transform:translate(-7px)}30%{transform:translate(7px)}45%{transform:translate(-5px)}60%{transform:translate(5px)}75%{transform:translate(-2px)}90%{transform:translate(2px)}}.registro-form h2{margin:0 0 1.1rem;text-align:center;font-family:var(--font-heading);color:var(--color-text)}.form-group{margin-bottom:.95rem}.form-group label{display:block;color:var(--color-text-muted);font-weight:700;margin-bottom:.35rem;font-size:.92rem}.form-group input{width:100%;min-height:44px;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);padding:.62rem .75rem;background:var(--color-bg-elevated);color:var(--color-text);transition:border-color var(--motion-fast),box-shadow var(--motion-fast),background-color var(--motion-fast),color var(--motion-fast)}.form-group input::placeholder{color:var(--color-text-soft)}.form-group input:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.captcha-row{display:flex;align-items:center;gap:.65rem}.captcha-row input{flex:1}.captcha-refresh{min-height:44px;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-soft);color:var(--color-text);font-weight:700}.captcha-refresh:hover{background:var(--color-surface-soft)}.submit-button{width:100%;min-height:44px;border:none;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-primary-ink);font-size:1rem;font-weight:800;cursor:pointer;transition:background-color var(--motion-fast),color var(--motion-fast),opacity var(--motion-fast)}.submit-button:hover:not(:disabled){background:var(--color-primary-hover)}.submit-button:disabled{opacity:.62;cursor:not-allowed}.texto-link{text-align:center;color:var(--color-primary);margin-top:.75rem;cursor:pointer;font-size:.95rem;text-decoration:underline}.mensaje-error{margin-top:.9rem;border-left:4px solid var(--color-danger-border);border-radius:var(--radius-md);padding:.7rem .78rem;background:var(--color-danger-bg);color:var(--color-danger);font-weight:600}.mensaje-exito{margin-top:.9rem;border-left:4px solid var(--color-success-border);border-radius:var(--radius-md);padding:.7rem .78rem;background:var(--color-success-bg);color:var(--color-success);font-weight:600}.auth-divider{margin-top:.95rem;margin-bottom:.6rem;text-align:center;color:var(--color-text-soft);font-weight:700;text-transform:uppercase}.auth-helper-text{margin:0 0 1rem;text-align:center;color:var(--color-text-soft);font-size:.92rem}.auth-secondary-btn{width:100%;min-height:44px;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-soft);color:var(--color-text);cursor:pointer;font-weight:700;margin-top:.6rem;transition:background-color var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast),opacity var(--motion-fast)}.auth-secondary-btn:disabled{opacity:.72;cursor:not-allowed}.auth-secondary-btn-guest{background:var(--color-surface-soft);color:var(--color-text)}.auth-secondary-btn-guest:hover:enabled{background:var(--color-bg-elevated)}.auth-register-btn{margin-top:.65rem;background:var(--color-bg-elevated);color:var(--color-text)}.auth-register-btn:hover:enabled{background:var(--color-surface-soft)}.google-btn-content{display:inline-flex;align-items:center;justify-content:center;gap:.6rem}.google-icon{width:20px;height:20px;flex-shrink:0;display:block}.guest-btn-wrap{position:relative}.auth-secondary-btn-invite{background:var(--color-bg-elevated);border-color:var(--color-border-strong)}.auth-secondary-btn-invite:hover:enabled{background:var(--color-surface-soft)}.guest-warning-popover{display:none;margin-top:.55rem;border-left:4px solid #e0b047;background:#fffaf0;color:#704b00;border-radius:var(--radius-md);padding:.68rem .8rem;font-size:.9rem;font-weight:600}.guest-btn-wrap:hover .guest-warning-popover,.guest-btn-wrap:focus-within .guest-warning-popover{display:block}.app-page-footer{width:100%;margin:0;color:#1f3553;border-top:1px solid #c8d9eb;background:radial-gradient(circle at 16% 12%,rgba(98,163,223,.18),transparent 38%),radial-gradient(circle at 82% 78%,rgba(114,173,227,.14),transparent 44%),linear-gradient(180deg,#edf4fc,#deebf8)}.app-page-footer-fixed{position:fixed;left:0;right:0;bottom:0;z-index:50;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.app-page-footer-static{position:static;width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);opacity:0;transform:translateY(26px) scale(.985);transition:opacity .42s ease,transform .52s cubic-bezier(.19,1,.22,1)}.app-page-footer-static.is-visible{opacity:1;transform:translateY(0) scale(1)}.app-page-footer-inner{width:100%;margin:0;padding:1.35rem 1.1rem 1.1rem;display:grid;gap:1rem}.app-page-footer-main{display:grid;grid-template-columns:1.2fr .8fr .9fr;gap:1.1rem}.app-page-footer-brand,.app-page-footer-links,.app-page-footer-contact{display:grid;align-content:start;gap:.45rem}.app-page-footer-kicker{margin:0;color:#2f79b8;text-transform:uppercase;letter-spacing:.08em;font-size:.73rem;font-weight:800}.app-page-footer-brand h3{margin:0;font-size:clamp(1.1rem,.8vw + .82rem,1.45rem);line-height:1.15;color:#132f52}.app-page-footer-brand p,.app-page-footer-links p,.app-page-footer-contact p{margin:0;color:#486485;line-height:1.45;font-size:.95rem}.app-page-footer-links p,.app-page-footer-contact p{text-transform:uppercase;letter-spacing:.06em;font-weight:800;font-size:.74rem}.app-page-footer a{color:#173a63;font-weight:700;text-decoration:none;width:fit-content;border-bottom:1px solid transparent;transition:border-color var(--motion-fast),color var(--motion-fast)}.app-page-footer a:hover{color:#1f7dc6;border-bottom-color:#1f7dc699}.app-page-footer-bottom{border-top:1px solid rgba(128,158,193,.45);padding-top:.75rem;display:flex;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.app-page-footer-bottom p{margin:0;color:#516b8b;font-size:.84rem}:root[data-theme=dark] .app-page-footer{color:#dbe7f7;border-top-color:#84aace5c;background:radial-gradient(circle at 16% 12%,rgba(63,133,197,.24),transparent 38%),radial-gradient(circle at 82% 78%,rgba(42,105,167,.2),transparent 44%),linear-gradient(180deg,#0e2744,#0a1f37)}:root[data-theme=dark] .app-page-footer-kicker{color:#7bc6ff}:root[data-theme=dark] .app-page-footer-brand h3{color:#eef6ff}:root[data-theme=dark] .app-page-footer-brand p,:root[data-theme=dark] .app-page-footer-links p,:root[data-theme=dark] .app-page-footer-contact p{color:#bed1e7}:root[data-theme=dark] .app-page-footer a{color:#eef6ff}:root[data-theme=dark] .app-page-footer a:hover{color:#86d1ff;border-bottom-color:#86d1ffb8}:root[data-theme=dark] .app-page-footer-bottom{border-top-color:#8db1d247}:root[data-theme=dark] .app-page-footer-bottom p{color:#aac1db}.app-page-footer-fixed .app-page-footer-brand p,.app-page-footer-fixed .app-page-footer-links,.app-page-footer-fixed .app-page-footer-contact{display:none}.app-page-footer-fixed .app-page-footer-inner{padding-top:.72rem;padding-bottom:.72rem;gap:.65rem}.app-page-footer-fixed .app-page-footer-main{grid-template-columns:1fr}.app-page-footer-fixed .app-page-footer-brand h3{font-size:1rem}@media(max-width:900px){.app-page-footer-main{grid-template-columns:1fr}.app-page-footer-bottom{flex-direction:column}}@media(max-width:480px){.registro-container{padding:.4rem .4rem 6rem}.registro-container-login{padding-bottom:.4rem}.registro-form{padding:1rem}.captcha-refresh-label{display:none}}@media(prefers-reduced-motion:reduce){.app-page-footer-static{opacity:1;transform:none;transition:none}.registro-form.login-error-shake{animation:none}}
