/* Final visual pass: defined edge, calm surfaces and one clear next step. */
.progress-rail{--charge:.15;height:15px;border:2px solid transparent;background:linear-gradient(#092a3e,#092a3e) padding-box,linear-gradient(105deg,rgba(45,203,223,var(--charge)),rgba(115,226,171,var(--charge))) border-box;box-shadow:0 0 0 1px rgba(78,203,208,.13),inset 0 0 0 1px #062437}
.progress-rail.high-charge{box-shadow:0 0 0 1px rgba(100,225,215,.6),0 0 0 3px rgba(41,179,190,.1),inset 0 0 0 1px #062437}
.progress-rail.fully-charged{border-color:transparent;background:linear-gradient(#0b3b46,#0b3b46) padding-box,linear-gradient(100deg,#4fd3e3,#96eab9) border-box;box-shadow:0 0 0 1px #74dcd9,0 0 0 4px #35bfc61c,inset 0 0 0 1px #082a36}
.result-summary{background:linear-gradient(120deg,#12b8c812,#67d88a08),#10334ae8;border-color:#3e889580}
.result-summary .result-title h2 span{background:linear-gradient(100deg,#53d1e0,#91dbac);color:transparent;background-clip:text}
.result-summary .reservation{border-color:#48cad391;background:#123e4e99;padding:13px 17px;min-height:72px}
.result-summary .reservation strong{font-size:25px;color:#89e4ee;letter-spacing:.035em}
.result-summary .reservation>div>span{color:#a2dce4;font-size:11px}
.result-summary .reservation-clock{color:#6bdbe7;border-color:#5cd3df99;background:#39b6ce0a;width:43px;height:43px}
.result-grid .offer{border:1px solid transparent;background:linear-gradient(#103249f5,#103249f5) padding-box,linear-gradient(130deg,#269cb470,#6bc49960) border-box;outline:0;display:flex;flex-direction:column;padding:23px 20px}
.result-grid .offer.featured{background:linear-gradient(#12394eed,#12394eed) padding-box,linear-gradient(130deg,#40bdd6ad,#7bd29ca0) border-box}
.result-grid .offer.selected-offer{border-color:transparent;background:linear-gradient(#123d50ed,#123d50ed) padding-box,linear-gradient(130deg,#60d4e6,#9fe1b5) border-box;outline:0;box-shadow:0 0 0 2px #57c7c11a}
.offer-kicker{color:#a4cdd1;font-size:11px;letter-spacing:.09em;font-weight:700;margin-bottom:10px}
.result-grid .offer h3{margin-top:0;min-height:48px;font-size:18px}
.result-grid .offer p{font-size:12px;line-height:1.65}
.result-grid .offer .offer-bottom{margin-top:auto;padding-top:20px;display:grid;gap:4px}
.offer-advisor{border:0;background:transparent;min-height:44px;color:#c8e3e8;font:inherit;font-size:12px;font-weight:600;cursor:pointer;border-radius:10px}
.offer-advisor:hover:not(:disabled),.offer-advisor:focus-visible{background:#52bfca0c;color:#8de1dd;outline-color:#61c7d8}
[data-route-choice]:disabled{cursor:default;opacity:.65}
.result-assistance:has([data-route-choice]:disabled){display:none}
.interest-status:not([hidden]){border-color:#70b9c54d;background:linear-gradient(120deg,#2cc0d00b,#72d8a309);padding:24px;color:#e6f1f5;font-weight:400}
.status-heading{display:flex;gap:13px;align-items:center}
.status-heading h3{font-size:22px;line-height:1.3;margin:0 0 5px}
.status-heading p{margin:0;color:#a7c9d1;font-size:12px}
.status-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid #65cabd66;color:#7ed9c1;font-size:21px;flex:none}
.interest-status>p{font-size:13px;line-height:1.65;margin:18px 0 8px}
.interest-status small{display:block;color:#adcad4;font-size:11px;line-height:1.6}
.interest-status .result-whatsapp{display:inline-flex;width:auto;margin:18px 0 0;font-size:12px;color:#75d8df;text-decoration:underline;text-underline-offset:4px}
.preference-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0;padding:15px 0;border-block:1px solid #71bec32b}
.preference-summary dt{font-size:11px;color:#9ec4cf;margin-bottom:5px}.preference-summary dd{font-size:14px;font-weight:700;margin:0;color:#d9eeee}
.schedule-panel{margin:20px 0;padding:25px;border:1px solid #5db4c366;border-radius:19px;background:linear-gradient(135deg,#1793aa0e,#6bc28d07),#0c2d43;scroll-margin-top:30px}
.schedule-panel[hidden]{display:none}
.schedule-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.schedule-top .text-button{font-size:10px;min-height:36px}
.schedule-eyebrow{color:#79d4d9;font-size:10px;letter-spacing:.09em;font-weight:800}
.schedule-panel h3{font-size:27px;letter-spacing:-.5px;line-height:1.2;margin:15px 0 9px}
.schedule-panel>p{color:#b6d0db;font-size:13px;line-height:1.65}.schedule-panel .schedule-choice{display:inline-block;font-size:11px;color:#b3e8db;margin:5px 0;padding:6px 10px;border-radius:8px;border:1px solid #4fc4bd3d}
.schedule-preferences{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:23px 0 17px}
.schedule-preference{margin:0;padding:0;border:0;min-width:0}
.schedule-preference legend{font-size:13px;font-weight:750;margin-bottom:15px}.schedule-preference legend span{font-size:20px;color:#71ced7;margin-right:6px;letter-spacing:-1px}
.schedule-day-label{display:block;font-size:11px;color:#b9d6de;margin-bottom:7px}
.schedule-preference select{width:100%;height:44px;min-width:0;padding:8px;border:1px solid #618d9b73;border-radius:9px;color:#e6f5f8;background:#14384f;font:inherit;font-size:12px}
.slot-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:11px}
.time-slot{min-height:45px;border:1px solid #567f926b;border-radius:10px;background:#11374d;color:#d5e9ef;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.time-slot:hover:not(:disabled){border-color:#63c6d0}.time-slot[aria-pressed=true]{background:linear-gradient(120deg,#168fa848,#4eb48a3b);border-color:#63cec7;color:#dff9f2;box-shadow:inset 0 0 0 1px #58c8be4d}.time-slot:disabled{opacity:.27;cursor:default}
.schedule-note{display:flex;gap:10px;align-items:flex-start;padding:13px 0;border-top:1px solid #719daa3b;color:#adcbd5}.schedule-note>span{color:#7fd7df;font-size:24px}.schedule-note p{font-size:12px;line-height:1.65;margin:0}.schedule-note small{display:block;font-size:10px;margin-top:5px;color:#95b6c3}
.schedule-panel>.primary{width:100%;margin-top:9px;min-height:50px;background:linear-gradient(105deg,#32b8c4,#7cd5a7);color:#092d3e;border:1px solid #75d4be}
.schedule-footnote{display:block;color:#97b9c6;font-size:10px;text-align:center;line-height:1.6;margin-top:12px}
.compact-binary .card-face{min-height:58px;gap:8px}.compact-binary .card-label{font-size:13px}
.contact-permission{display:grid;grid-template-columns:minmax(155px,.9fr) minmax(0,1.4fr);gap:14px;align-items:center}
.contact-permission .phone-preview{display:grid;border:0;margin:0;padding:0;gap:5px}
.contact-permission:has(.phone-preview[hidden]){grid-template-columns:1fr}.phone-preview[hidden]{display:none!important}
.contact-permission .check-label{font-size:11px;line-height:1.6}
.agenda-settings{max-width:780px;margin:40px auto;padding:24px;color:#eef6f8}.agenda-settings h1{font-size:30px}.agenda-settings p{color:#b1ccd7;line-height:1.6}.settings-week{display:grid;gap:10px;margin:24px 0}.settings-day{display:grid;grid-template-columns:1fr 120px 120px;gap:12px;align-items:center}.settings-day label{display:flex;align-items:center;gap:10px}.settings-day input[type=checkbox]{width:18px;height:18px}.settings-numbers{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0}.settings-numbers label{display:grid;gap:7px;font-size:12px}.settings-day input,.settings-numbers input{min-width:0}.agenda-settings .primary{margin:12px 0}.settings-feedback{color:#8bddc2!important}
.cancelled-archive{margin-top:18px;border-top:1px solid #6192a04a;padding-top:12px}.cancelled-archive summary{cursor:pointer;color:#a9ccd3;font-size:13px;font-weight:650;padding:8px 2px}.cancelled-archive .admin-request{opacity:.84}.admin-request [data-cancel-form]{margin-top:14px;padding:14px;border:1px solid #63bac455;border-radius:12px;background:#0a2b3c}.admin-request [data-cancel-form][hidden]{display:none}.admin-request [data-cancel-form] label{display:grid;gap:7px;margin:9px 0;font-size:12px;color:#c5e0e4}.admin-request [data-cancel-form] label span{color:#8daeb8;font-size:10px}.admin-request [data-cancel-form] select,.admin-request [data-cancel-form] input{min-height:40px;padding:8px 10px;border:1px solid #538d9c;border-radius:8px;background:#09283a;color:#effafb;color-scheme:dark;font:inherit}.admin-request [data-cancel-form] select option{background:#09283a;color:#effafb}
@media(max-width:700px){.contact-permission{grid-template-columns:1fr;gap:10px}.contact-permission .phone-preview{display:flex;flex-wrap:wrap;gap:4px 10px}.result-grid .offer h3{min-height:0}.result-summary .reservation{min-height:65px;padding:10px 14px}.result-summary .reservation strong{font-size:24px}.result-summary .reservation-clock{width:39px;height:39px}}
@media(max-width:480px){.schedule-panel{padding:20px 15px}.schedule-panel h3{font-size:24px}.schedule-preferences{grid-template-columns:1fr;gap:24px}.slot-grid{grid-template-columns:repeat(4,1fr);gap:6px}.time-slot{font-size:12px}.schedule-top{gap:4px}.schedule-top .text-button{font-size:11px}.schedule-eyebrow{font-size:11px}.interest-status:not([hidden]){padding:20px 16px}.preference-summary{grid-template-columns:1fr;gap:14px}.status-heading h3{font-size:21px}.settings-day{grid-template-columns:1fr 86px 86px;gap:7px}.settings-day label{font-size:12px}.settings-numbers{grid-template-columns:1fr}}
@media(prefers-reduced-motion:no-preference){.progress-rail.high-charge:not(.fully-charged){animation:edge-charge 2.2s ease-in-out infinite}.schedule-panel{animation:agenda-enter .3s ease-out}@keyframes edge-charge{50%{box-shadow:0 0 0 1px #88dfdd,0 0 0 3px #35bfc623,inset 0 0 0 1px #062437}}@keyframes agenda-enter{from{opacity:.45;transform:translateY(8px)}to{opacity:1;transform:none}}}
@media(prefers-reduced-motion:reduce){.progress-rail,.time-slot,.schedule-panel{animation:none!important;transition:none!important}}
