:root{--purple:#7047ed;--deep:#29155a;--ink:#272238;--muted:#716b7e;--line:#e6e1ee;--paper:#f7f6fa;--pale:#f2edff;--green:#28785b;font-family:'Segoe UI',system-ui,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}a{color:var(--purple);text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #a58bea;outline-offset:3px}button{border:1px solid var(--line);background:#fff;border-radius:10px;color:var(--ink);min-height:44px;padding:10px 16px}.demo-banner{background:#eee9f6;color:#665678;padding:8px 20px;text-align:center;font-size:12px;letter-spacing:.1px}.demo-dot{display:inline-block;background:#9177bd;width:6px;height:6px;border-radius:50%;vertical-align:middle;margin-right:7px}.header{height:100px;max-width:1240px;margin:auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;color:var(--deep)}.brand:hover{text-decoration:none}.brand strong{font:26px Georgia,serif}.brand small{display:block;letter-spacing:1.8px;font-size:9px;margin-top:6px}.monogram{font:24px Georgia,serif;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;color:white;background:var(--deep);border:2px solid #b5a0e9;outline:3px solid #eee8f8}.help-link{font-size:12px;color:var(--muted)}.help-link strong{display:block;text-align:right;font-size:15px;color:var(--ink);margin-top:3px}main{max-width:1240px;margin:auto;padding:20px 32px 0}.intro{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:12px 0 36px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;color:#82758f}.intro h1{font:44px/1.15 Georgia,serif;color:var(--deep);letter-spacing:-1.3px;margin:12px 0}.intro p{font-size:14px;color:var(--muted);line-height:1.6;margin:0}.timezone{padding:14px 18px;background:white;border:1px solid var(--line);border-radius:12px;font-size:13px;white-space:nowrap}.timezone>span{font-size:19px;margin-right:5px;color:var(--purple)}.timezone small{display:block;color:var(--muted);font-size:10px;margin:4px 0 0 26px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 305px;align-items:start;gap:28px}.booking-card{background:white;border:1px solid var(--line);border-radius:20px;box-shadow:0 8px 38px #29155a05;overflow:hidden}.steps{display:flex;gap:24px;padding:24px 30px;margin:0;list-style:none;border-bottom:1px solid var(--line)}.steps li{font-size:12px;color:#8d8699;display:flex;align-items:center;gap:8px}.steps li>span{display:grid;place-items:center;width:25px;height:25px;border:1px solid var(--line);border-radius:50%;font-size:11px}.steps li.active{font-weight:600;color:var(--deep)}.steps li.active>span{color:white;background:var(--purple);border-color:var(--purple)}.steps li.done>span{background:var(--pale);color:var(--purple);border-color:var(--pale)}#stage{padding:28px 30px 24px;min-height:480px}h2{font-size:21px;font-weight:600;letter-spacing:-.3px;margin:0 0 8px}.sub{font-size:13px;color:var(--muted);line-height:1.6;margin:0 0 24px}.calendar-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:24px;margin-top:26px}.calendar-header{display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:600;margin-bottom:18px}.calendar-header>div{display:flex;gap:4px}.icon-button{border-color:transparent;min-height:32px;width:32px;padding:2px;font-size:21px;background:transparent}.weekdays,.days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.weekdays span{font-size:10px;text-align:center;color:var(--muted);padding:6px 0}.days button{border:0;padding:0;min-height:37px;border-radius:9px;font-size:12px}.days button:not(:disabled):hover{background:var(--pale)}.days button.selected,.days button.selected:hover{background:var(--purple);color:white}.days button:disabled{opacity:1;color:#c8c3cf}.days button.today{box-shadow:inset 0 0 0 1px #d5c7f7}.days button.today.selected{box-shadow:none}.calendar-caption{font-size:10px;color:var(--muted);margin-top:20px}.calendar-caption i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--purple);margin-right:6px}.slots-column{border-left:1px solid var(--line);padding-left:24px}.date-heading{font-size:13px;font-weight:600;margin:4px 0 8px;text-transform:capitalize}.periods{display:flex;gap:6px;margin:16px 0}.periods button{min-height:32px;font-size:11px;padding:5px 12px;border-radius:20px}.periods button.selected{background:var(--pale);color:var(--purple);border-color:var(--pale)}.slots{display:grid;grid-template-columns:1fr 1fr;gap:7px;max-height:270px;overflow:auto;padding:3px}.slots button{font-size:12px;min-height:40px;padding:8px 5px}.slots button.selected{border-color:var(--purple);background:var(--pale);color:var(--purple);font-weight:600}.empty{font-size:13px;line-height:1.7;color:var(--muted);grid-column:1/-1}.actions{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:24px;margin-top:26px;border-top:1px solid var(--line)}.actions small{font-size:11px;color:var(--muted);line-height:1.6}.primary{background:var(--purple);border-color:var(--purple);color:white;font-weight:600;font-size:13px;min-height:46px;padding:12px 20px}.primary:hover:not(:disabled){background:#5b35d1}.primary span{margin-left:16px}.quiet{border:0;background:none;padding-left:0;color:var(--muted);font-size:12px}.visit-card{background:#ede8f4;border:1px solid #e5ddef;border-radius:18px;padding:26px 23px}.visit-card h2{font:24px Georgia,serif;color:var(--deep);margin:12px 0 25px;line-height:1.2}.aside-row{display:flex;gap:12px;margin:22px 0}.aside-icon{color:#88769c;font-size:21px;line-height:1}.aside-row strong{font-size:12px}.aside-row p{font-size:12px;line-height:1.8;color:#72647e;margin:8px 0}.aside-row a{font-size:11px;font-weight:600}.aside-note{border-top:1px solid #d9d0e5;padding-top:18px;font-size:11px;line-height:1.8;color:#72647e}.selection-summary{background:#fff9;border-radius:10px;padding:13px;font-size:12px;line-height:1.8;margin:18px 0;color:var(--deep)}.selection-summary small{color:var(--muted);font-size:10px}.prepare-card{padding:26px 8px}.prepare-card h3{font-size:17px;margin:12px 0 8px}.prepare-card p{font-size:12px;color:var(--muted);line-height:1.7}.prepare-card a{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px;color:var(--ink)}footer{padding:35px 0 25px;font-size:10px;color:#958c9e;display:flex;justify-content:space-between}.fields{display:grid;grid-template-columns:1fr 1fr;gap:22px 16px;margin:22px 0}.field{display:flex;flex-direction:column;gap:8px;min-width:0}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:600}.field label small{font-weight:400;color:var(--muted)}.field input{width:100%;min-height:46px;border:1px solid var(--line);border-radius:9px;padding:12px;color:var(--ink);background:#fff;font-size:14px}.field input::placeholder{color:#a39ba9}.field small{font-size:11px;line-height:1.6;color:var(--muted)}.section-label{font-size:10px;letter-spacing:1.5px;color:#8f839c;font-weight:700;margin-top:26px}.info-note{background:var(--paper);border-radius:10px;padding:15px;font-size:12px;line-height:1.7;color:var(--muted)}.info-note strong{color:var(--ink)}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:26px 0}.summary-grid dt{font-size:11px;color:var(--muted);margin-bottom:7px}.summary-grid dd{font-size:14px;margin:0;overflow-wrap:anywhere}.selected-date{background:var(--pale);padding:17px;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;line-height:1.8;color:var(--deep);margin:20px 0}.selected-date small{color:var(--muted);font-size:11px}.selected-date button{font-size:11px;min-height:36px;background:white;border:0}.success-mark{display:grid;place-items:center;font-size:25px;border-radius:50%;width:52px;height:52px;color:var(--green);background:#e7f3ed;margin-bottom:18px}.success-title{font:28px Georgia,serif;color:var(--deep);line-height:1.2}.receipt-label{font-size:11px;letter-spacing:.5px;color:var(--muted);margin:10px 0 20px}.notification-list{border:1px solid var(--line);border-radius:12px;padding:0 16px;margin:22px 0}.notification-item{padding:15px 0;display:flex;gap:12px;align-items:center}.notification-item+div{border-top:1px solid var(--line)}.notification-item div{flex:1;min-width:0}.notification-item strong{font-size:12px;display:block}.notification-item small{display:block;font-size:11px;color:var(--muted);margin-top:5px;overflow-wrap:anywhere}.notification-item button{font-size:11px;padding:5px 10px;min-height:32px}.mail-icon{font-size:20px;color:#8b79a4}.share-box{background:#f1f6f3;border-radius:12px;padding:18px}.share-box h3{font-size:14px;margin:0 0 8px}.share-box p{font-size:12px;color:#627268;line-height:1.6;margin:0 0 12px}.share-box button{background:#fff;border-color:#cdded1;color:#2c6545;font-size:12px}.manage-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.manage-row button{font-size:12px}.danger{color:#a3425e}.previous{font-size:12px;padding:12px 15px;border-left:3px solid #ccbce8;background:var(--paper);margin:18px 0;line-height:1.7;color:var(--muted)}.no-margin{margin:0}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:20px}dialog{border:1px solid var(--line);border-radius:18px;padding:26px;max-width:550px;width:calc(100% - 32px);color:var(--ink);max-height:85vh}dialog::backdrop{background:#20113677;backdrop-filter:blur(3px)}dialog h2{font-size:18px;margin:0}dialog p{font-size:13px;line-height:1.8}dialog textarea{width:100%;height:290px;resize:vertical;border:1px solid var(--line);border-radius:10px;padding:15px;font-size:13px;line-height:1.7;color:var(--ink)}.email-meta{font-size:11px;color:var(--muted);line-height:1.8;border-bottom:1px solid var(--line);padding-bottom:15px}.email-preview{background:var(--paper);border-radius:10px;padding:18px;margin-top:16px;white-space:pre-wrap;font-size:13px;line-height:1.8}.email-caption{font-size:11px;color:var(--muted);margin-top:18px}.status-note{font-size:12px;color:var(--green);min-height:20px;margin-top:10px}
@media(min-width:1350px){main{padding-top:35px}.intro{margin-bottom:44px}#stage{min-height:515px}.calendar-layout{gap:30px}.days button{min-height:40px}}
@media(max-width:1000px){.workspace{grid-template-columns:minmax(0,1fr) 260px;gap:18px}.steps{padding:20px;gap:15px}#stage{padding:24px 20px}.calendar-layout{gap:15px}.slots-column{padding-left:15px}.intro h1{font-size:38px}.visit-card{padding:23px 18px}}
@media(max-width:820px){.workspace{grid-template-columns:1fr}aside{display:grid;grid-template-columns:1fr 1fr;gap:20px}.intro{align-items:flex-start}.timezone{margin-top:22px}.calendar-layout{grid-template-columns:1fr 1fr;gap:25px}.slots-column{padding-left:25px}.visit-card{padding:22px}.visit-card h2{font-size:22px}}
@media(max-width:540px){.demo-banner{font-size:10px;padding:9px 12px}.demo-detail{display:block;margin-top:3px}.header{height:84px;padding:0 20px}.brand strong{font-size:22px}.brand small{font-size:7px}.monogram{width:40px;height:40px;font-size:21px}.help-link{font-size:10px;max-width:95px;text-align:right}.help-link strong{font-size:12px}main{padding:16px 16px 0}.intro{display:block;margin:4px 0 24px}.intro h1{font-size:35px}.intro p{font-size:13px}.timezone{display:inline-block;margin-top:17px;padding:8px 12px;font-size:11px}.timezone small{display:inline;margin-left:6px;font-size:9px}.timezone>span{font-size:15px}.steps{padding:18px 15px;justify-content:space-between;gap:8px}.steps li{font-size:10px;gap:5px}.steps li>span{width:22px;height:22px}.booking-card{border-radius:15px}#stage{padding:22px 18px;min-height:unset}h2{font-size:19px}.calendar-layout{grid-template-columns:1fr;gap:22px}.calendar-header{margin-bottom:12px}.days button{min-height:38px}.calendar-caption{margin:12px 0 0}.slots-column{border-left:0;border-top:1px solid var(--line);padding:20px 0 0}.slots{grid-template-columns:repeat(3,1fr);max-height:230px}.actions{gap:10px}.actions small{max-width:115px;font-size:10px}.primary{padding:11px 15px;font-size:12px}.primary span{margin-left:8px}aside{grid-template-columns:1fr}.prepare-card{padding:5px 6px 15px}.fields{grid-template-columns:1fr}.field.full{grid-column:auto}.field input{font-size:16px}.summary-grid{gap:20px 12px}.selected-date{align-items:flex-start}.selected-date button{flex-shrink:0}.notification-item{gap:8px}.notification-item button{padding:6px}.notification-list{padding:0 12px}.success-title{font-size:25px}footer{font-size:9px;gap:12px}dialog{padding:20px}.notification-item strong{font-size:11px}}

/* Single-page agenda. Appearance matches the three modes of the intake form. */
:root{--panel:#fff;--input:#fff;--deep:#29155a;--accent-text:#643acb;--side:#ede8f4;--success-bg:#e7f3ed;--success-text:#28785b;--danger:#a3425e;--disabled:#a59baa;--selected:#7047ed;--banner:#eee9f6;color-scheme:light}
:root[data-appearance="tarde"]{--paper:#f0e6cf;--panel:#f7efdc;--input:#fcf6e9;--ink:#3d3117;--muted:#75643f;--line:#d8c79e;--deep:#493326;--accent-text:#6742b5;--pale:#ebe0f0;--side:#e9ddc1;--banner:#e9ddc1;--disabled:#9c8c68;--success-bg:#e5ecd5;--success-text:#3b6345;color-scheme:light}
:root[data-appearance="noche"]{--paper:#100d19;--panel:#1a1625;--input:#14111d;--ink:#f0ebfa;--muted:#b4aabe;--line:#393144;--deep:#f0e8ff;--accent-text:#c4afff;--pale:#302444;--side:#21192e;--banner:#241c31;--disabled:#81758e;--success-bg:#1c352e;--success-text:#99dbc0;--danger:#ef9bac;color-scheme:dark}
body{background:var(--paper)}button{background:var(--panel);color:var(--ink);border-color:var(--line)}a{color:var(--accent-text)}.demo-banner{background:var(--banner);color:var(--muted)}.header{height:88px}.brand,.brand strong{color:var(--deep)}.brand small{color:var(--muted)}.monogram{background:#29155a;color:#fff;outline-color:var(--pale);border-color:#b5a0e9}.help-link{color:var(--muted)}.help-link strong{color:var(--ink)}main{padding-top:8px}.intro{margin:6px 0 24px;align-items:center}.intro h1{font-size:34px;letter-spacing:-.7px;margin:0 0 9px;color:var(--deep)}.intro p{font-size:13px}.display-settings{display:flex;align-items:flex-end;flex-direction:column;gap:10px}.appearance-options{display:flex;gap:4px;padding:4px;background:var(--panel);border:1px solid var(--line);border-radius:11px}.appearance-options button{border:0;background:transparent;font-size:12px;min-height:33px;padding:6px 12px;color:var(--muted)}.appearance-options button[aria-pressed=true]{background:var(--pale);color:var(--accent-text);font-weight:600}.timezone{background:none;border:0;padding:0;font-size:10px;color:var(--muted)}.booking-card{background:var(--panel);box-shadow:none}.workspace{grid-template-columns:minmax(0,1fr) 275px;gap:23px}#stage{padding:23px;min-height:0}.schedule-heading h2{font-size:18px}.schedule-heading .sub{font-size:11px;margin:0 0 14px}.agenda-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--line);padding:10px 0 12px}.agenda-navigation{display:flex;gap:8px;align-items:center}.agenda-navigation>span{font-size:13px}.icon-button{background:transparent}.date-jump{display:flex;gap:7px;align-items:center;font-size:11px;color:var(--muted)}.date-jump input{min-height:33px;max-width:135px;background:var(--input);color:var(--ink);border:1px solid var(--line);border-radius:7px;padding:5px;font-size:12px}.agenda-grid{display:grid;grid-template-columns:repeat(6,minmax(90px,1fr));gap:9px;max-height:338px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent;border-bottom:1px solid var(--line);padding:0 3px 12px;overscroll-behavior:contain}.day-column{min-width:0}.day-title{display:flex;flex-direction:column;align-items:center;gap:3px;position:sticky;top:0;background:var(--panel);padding:9px 0 10px;z-index:1;border-bottom:1px solid var(--line);margin-bottom:10px}.day-title>span{text-transform:capitalize;font-size:11px;color:var(--muted)}.day-title strong{font-size:21px;font-weight:500;color:var(--ink)}.day-title small{height:13px;font-size:9px;color:var(--accent-text)}.day-title.chosen-day strong{color:var(--accent-text)}.day-times{display:flex;flex-direction:column;gap:7px}.day-times button{font-size:11px;padding:7px 4px;min-height:36px;white-space:nowrap;background:var(--panel);border-radius:8px}.day-times button:hover{background:var(--pale);border-color:var(--accent-text)}.day-times button.selected{background:var(--selected);border-color:var(--selected);color:#fff;font-weight:600}.midday-gap{height:8px}.closed-day{font-size:10px;color:var(--muted);padding:12px 0;text-align:center}.agenda-hint{display:none}.inline-form{margin-top:23px}.form-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.form-heading h2{font-size:16px;margin:0}.form-heading span{font-size:10px;color:var(--muted)}.fields{margin:18px 0;gap:15px 16px}.field{gap:6px}.field label{font-size:11px}.field input{background:var(--input);color:var(--ink);border-color:var(--line);min-height:42px;padding:10px;font-size:13px}.field input::placeholder{color:var(--disabled)}.inline-selection{padding:10px 13px;background:var(--pale);border-radius:8px;color:var(--accent-text);font-size:12px;line-height:1.6;margin-top:18px}.actions{margin-top:16px;padding-top:16px}.actions small{color:var(--muted)}.primary{background:var(--purple);color:white;border-color:var(--purple)}.quiet{background:transparent;color:var(--muted)}.visit-card{background:var(--side);border-color:var(--line);padding:23px 20px}.eyebrow{color:var(--muted)}.visit-card h2{color:var(--deep);font-size:22px;margin:12px 0 20px}.aside-row p,.aside-note{color:var(--muted)}.aside-note{border-color:var(--line)}.aside-icon{color:var(--accent-text)}.selection-summary{background:var(--panel);color:var(--ink)}.prepare-card{padding:24px 5px}.prepare-card a{color:var(--ink)}.prepare-card p{color:var(--muted)}.selected-date{background:var(--pale);color:var(--deep)}.selected-date button{background:var(--panel);color:var(--ink)}.info-note,.email-preview,.previous{background:var(--paper);color:var(--muted)}.previous{border-color:var(--accent-text)}.info-note strong{color:var(--ink)}.success-mark{background:var(--success-bg);color:var(--success-text)}.success-title{color:var(--deep)}.share-box{background:var(--success-bg)}.share-box p{color:var(--success-text)}.share-box button{background:var(--panel);color:var(--success-text);border-color:var(--line)}.danger{color:var(--danger)}dialog{background:var(--panel);color:var(--ink);border-color:var(--line)}dialog textarea{background:var(--input);color:var(--ink);border-color:var(--line)}.email-preview{color:var(--ink)}.email-meta,.email-caption,.receipt-label,.notification-item small{color:var(--muted)}.mail-icon{color:var(--accent-text)}footer{color:var(--muted);padding-top:25px}
@media(min-width:1350px){main{padding-top:16px}.intro{margin-bottom:28px}#stage{min-height:0}}
@media(max-width:1000px){.workspace{grid-template-columns:minmax(0,1fr) 245px;gap:18px}.agenda-grid{grid-template-columns:repeat(6,minmax(88px,1fr))}.agenda-hint{display:block;font-size:10px;color:var(--muted);padding-top:8px}.agenda-hint span{float:right}#stage{padding:20px}.intro h1{font-size:31px}}
@media(max-width:820px){.workspace{grid-template-columns:1fr}.agenda-grid{grid-template-columns:repeat(6,minmax(85px,1fr))}.display-settings{align-items:flex-end}.intro{align-items:center}.timezone{margin-top:0}aside{margin-top:4px}}
@media(max-width:540px){.header{height:78px}.intro{display:block;margin-bottom:20px}.intro h1{font-size:31px}.intro p{font-size:12px}.display-settings{margin-top:18px;align-items:flex-start;gap:9px}.appearance-options{align-self:stretch}.appearance-options button{flex:1;min-height:35px}.timezone{margin:0;font-size:10px;padding:0}#stage{padding:18px 15px}.schedule-heading .sub{font-size:10px}.agenda-navigation{gap:2px}.agenda-navigation>span{font-size:11px;white-space:nowrap}.date-jump{font-size:0;gap:0}.date-jump input{font-size:11px;max-width:116px;min-width:0}.agenda-toolbar{gap:4px}.agenda-grid{grid-template-columns:repeat(6,91px);gap:8px;max-height:300px}.day-times button{min-height:40px}.agenda-hint{display:block}.inline-form{margin-top:22px}.form-heading{display:block}.form-heading span{display:block;margin-top:7px}.fields{gap:14px;margin-top:16px}.field label{font-size:12px}.field input{font-size:16px;min-height:45px}.actions{align-items:stretch;flex-direction:column;gap:12px}.actions small{max-width:none}.actions small br{display:none}.primary{min-height:46px}.visit-card{padding:22px}.inline-selection{font-size:11px}.date-jump input::-webkit-calendar-picker-indicator{margin:0;padding:0}.timezone small{display:none}}
.brand-logo{width:64px;height:64px;display:block;object-fit:contain;border-radius:50%;background:#fff;flex-shrink:0}.header{min-height:100px}@media(max-width:540px){.brand-logo{width:52px;height:52px}.brand{gap:10px}.header{min-height:88px}.brand strong{font-size:20px}}
.appearance-label{font-size:10px;color:var(--muted);letter-spacing:.3px}.display-settings{gap:7px}
[hidden]{display:none!important}
.preview-switch{max-width:1176px;margin:0 auto 15px;display:flex;gap:8px;border-bottom:1px solid var(--line);padding:0 0 12px}.preview-switch button{min-height:36px;padding:7px 13px;font-size:12px;border-color:transparent;background:transparent;color:var(--muted)}.preview-switch button[aria-pressed=true]{background:var(--pale);color:var(--accent-text);border-color:var(--line)}.public-notice{border:1px solid var(--line);border-left:3px solid var(--purple);border-radius:10px;background:var(--pale);padding:17px 20px;margin:0 0 22px}.public-notice strong{font-size:14px;color:var(--deep)}.public-notice p{font-size:13px;line-height:1.7;margin:8px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.public-notice small{display:block;font-size:11px;margin-top:15px;color:var(--muted)}.field textarea,.field select{font:inherit;width:100%;background:var(--input);color:var(--ink);border:1px solid var(--line);border-radius:9px;padding:11px;line-height:1.5;font-size:13px}.field textarea{resize:vertical;min-height:75px}.field select{min-height:43px}.observation-field{margin:18px 0}.summary-grid .full{grid-column:1/-1}.summary-grid .full dd{white-space:pre-wrap}.admin-demo-note{font-size:12px;color:var(--muted);line-height:1.7;border:1px dashed var(--line);padding:12px 17px;border-radius:10px;margin:0 0 20px}.admin-tabs{display:flex;gap:8px;overflow:auto;padding:0 0 14px}.admin-tabs button{white-space:nowrap;border-color:transparent;background:transparent;color:var(--muted);font-size:13px}.admin-tabs button[aria-pressed=true]{background:var(--pale);color:var(--accent-text);border-color:var(--line)}.admin-sheet{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:28px}.admin-two-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:34px;margin-top:25px}.admin-two-columns form{display:flex;flex-direction:column;gap:18px}.admin-two-columns .primary{align-self:flex-start}.admin-two-columns .eyebrow{display:block;margin-bottom:14px}.toggle-line{display:flex;align-items:center;gap:10px;font-size:13px;min-height:35px}.toggle-line input{width:17px;height:17px;accent-color:var(--purple)}.admin-status{font-size:13px;color:var(--success-text);line-height:1.7;margin:20px 0 0;white-space:pre-wrap}.admin-status:empty{display:none}.preview-notice{margin-top:0}.message-selector{max-width:380px}.token-help{font-size:12px;color:var(--muted);line-height:1.8}.token-help summary{cursor:pointer;color:var(--accent-text)}.token-help code{display:inline-block;background:var(--pale);border-radius:5px;padding:2px 5px;margin:2px;font-size:11px;color:var(--accent-text)}.mail-preview{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:20px;overflow-wrap:anywhere}.mail-preview .email-preview{padding:0}.whatsapp-bubble{border:1px solid var(--line);background:var(--success-bg);color:var(--ink);border-radius:0 15px 15px;padding:22px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.8}.admin-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.admin-heading button{white-space:nowrap;font-size:12px}.admin-heading .sub{margin-bottom:10px}.agenda-stat{background:var(--pale);color:var(--accent-text);border-radius:10px;padding:13px 16px;font-size:13px;margin:12px 0 22px}.agenda-stat strong{font-size:20px;margin-right:4px}.agenda-stat span{margin:0 8px}.booking-filters{display:grid;grid-template-columns:minmax(0,1fr) 180px auto;gap:14px;align-items:end;margin:24px 0}.booking-filters button{font-size:12px;min-height:42px}.admin-booking{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:22px 0;align-items:center}.admin-booking h3{font-size:17px;margin:10px 0 5px}.admin-booking p{font-size:12px;color:var(--muted);margin:0 0 10px;overflow-wrap:anywhere}.admin-booking strong{font-size:13px;font-weight:500}.admin-booking small{display:block;font-size:10px;color:var(--muted);margin-top:10px}.admin-booking button{font-size:12px;flex-shrink:0}.booking-badge{font-size:10px;color:var(--success-text);background:var(--success-bg);border-radius:20px;padding:4px 9px}.booking-badge.cancelled{color:var(--danger);background:var(--paper)}.booking-observations{font-size:12px;line-height:1.7;white-space:pre-wrap;background:var(--paper);padding:10px 12px;margin-top:12px;border-radius:8px;overflow-wrap:anywhere}.admin-empty{text-align:center;padding:35px 20px;border:1px dashed var(--line);border-radius:12px;margin:20px 0}.admin-empty h3{font-size:17px;font-weight:500}.admin-empty p{font-size:13px;color:var(--muted);max-width:460px;margin:0 auto;line-height:1.8}.calendar-connection{margin-top:22px;font-size:12px}.schedule-rules{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:25px 0}.schedule-rules input{font-size:14px}.schedule-day{display:grid;grid-template-columns:130px 1fr 1fr;gap:18px;padding:14px 0;border-bottom:1px solid var(--line);align-items:center}.time-window{display:flex;gap:8px;align-items:center;font-size:11px;color:var(--muted)}.time-window input{background:var(--input);color:var(--ink);border:1px solid var(--line);border-radius:8px;min-height:38px;padding:7px;font-size:13px;min-width:0;max-width:110px}.blocked-section{margin-top:32px;border-top:1px solid var(--line);padding-top:25px}.blocked-section h3{font-size:18px;margin:0 0 8px}.blocked-form{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:15px;align-items:end}.blocked-form button{min-height:42px;font-size:12px}.blocked-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}.blocked-row strong{font-size:13px}.blocked-row span{font-size:12px;color:var(--muted);display:block;margin-top:6px}.blocked-row button{font-size:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1240px){.preview-switch{margin-left:32px;margin-right:32px}}
@media(max-width:1000px){.schedule-day{grid-template-columns:110px 1fr 1fr;gap:10px}.time-window{gap:5px}.time-window>span:first-child{display:none}.time-window input{max-width:95px}.admin-two-columns{gap:23px}.schedule-rules{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.admin-two-columns{grid-template-columns:1fr}.admin-sheet{padding:22px}.schedule-day{grid-template-columns:1fr;gap:8px}.time-window>span:first-child{display:block;width:65px}.time-window input{max-width:130px}.booking-filters{grid-template-columns:1fr 1fr}.booking-filters .field:first-child{grid-column:1/-1}.blocked-form{grid-template-columns:1fr}.admin-heading{display:block}.admin-heading button{margin:8px 0}.admin-booking{align-items:flex-start;flex-direction:column}.admin-booking button{width:100%}.admin-two-columns textarea{font-size:14px}}
@media(max-width:540px){.preview-switch{margin:0 16px 16px;gap:5px}.preview-switch button{font-size:11px;padding:8px 10px;flex:1}.admin-sheet{padding:20px 16px}.admin-tabs{gap:4px}.admin-tabs button{font-size:12px;padding:9px 12px}.schedule-rules{gap:16px 12px}.field textarea,.field select{font-size:16px}.schedule-rules input{font-size:16px}.admin-status{font-size:12px}.agenda-stat{font-size:11px}.agenda-stat span{margin:0 4px}.public-notice{padding:15px}.blocked-row{align-items:flex-start;flex-direction:column}}

/* User reference palette: aqua #63ffda, green #00c752, yellow #ecff43,
   purple #6101eb. Dark text on bright fills; accents retain their role in all modes. */
:root{--purple:#6101eb;--aqua:#63ffda;--positive:#00c752;--yellow:#ecff43;--deep-green:#004c3f;--selected:#63ffda;--aqua-ink:#005e50;--aqua-tint:#edf9f5;--aqua-border:#c6e3d9;--green-ink:#005e2b;--yellow-ink:#4e5300;--yellow-tint:#f7f9dc;--purple-tint:#f2ebff;--focus-ring:#6101eb;--success-bg:#e6f7eb;--success-text:#00662d;--accent-text:#5900d4}
:root[data-appearance="tarde"]{--aqua-ink:#005d50;--aqua-tint:#e4eee0;--aqua-border:#b8cdb8;--green-ink:#005c2b;--yellow-ink:#514700;--yellow-tint:#f0ebbd;--purple-tint:#eae0ed;--focus-ring:#6101eb;--success-bg:#e0ecd5;--success-text:#245e32;--accent-text:#5829b0}
:root[data-appearance="noche"]{--aqua-ink:#63ffda;--aqua-tint:#17332f;--aqua-border:#36534e;--green-ink:#64e796;--yellow-ink:#ecff43;--yellow-tint:#30321d;--purple-tint:#302044;--focus-ring:#b486ff;--success-bg:#193527;--success-text:#70e79e;--accent-text:#c6a5ff}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,.agenda-grid:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.demo-dot{background:var(--yellow);box-shadow:0 0 0 1px #808c2266}.brand-logo{box-shadow:0 0 0 1px var(--line)}.appearance-options{background:var(--panel)}.appearance-options button{display:inline-flex;align-items:center;justify-content:center;gap:7px}.appearance-options button::before{content:'';width:9px;height:9px;border-radius:50%;border:1px solid #8887;flex-shrink:0}.appearance-options [data-theme="claro"]::before{background:#fff}.appearance-options [data-theme="tarde"]::before{background:#e5cc8f}.appearance-options [data-theme="noche"]::before{background:#252336}.appearance-options button[aria-pressed=true]{background:var(--purple-tint);color:var(--accent-text);box-shadow:inset 0 0 0 1px var(--accent-text)}.timezone{color:var(--aqua-ink)}.day-times button{background:var(--aqua-tint);border-color:var(--aqua-border);color:var(--ink)}.day-times button:hover{background:var(--aqua-tint);border-color:var(--aqua-ink);box-shadow:inset 0 0 0 1px var(--aqua-ink)}.day-times button.selected,.day-times button.selected:hover{background:var(--aqua);color:#004c3f;border-color:var(--aqua);box-shadow:inset 0 0 0 1px #004c3f55;font-weight:700}.day-title.chosen-day strong,.day-title small{color:var(--aqua-ink)}.day-title.chosen-day{border-bottom:2px solid var(--aqua-ink)}.agenda-navigation .icon-button{color:var(--accent-text);border:1px solid var(--line);background:var(--purple-tint)}.agenda-navigation .icon-button:hover:not(:disabled){border-color:var(--accent-text)}.inline-selection,.selection-summary{background:var(--aqua-tint);color:var(--aqua-ink);border:1px solid var(--aqua-border)}.inline-selection{border-left:3px solid var(--aqua-ink)}.selection-summary strong{color:var(--ink)}.selection-summary small{color:var(--aqua-ink)}.selected-date{background:var(--aqua-tint);color:var(--ink);border:1px solid var(--aqua-border)}.selected-date button{background:var(--purple-tint);color:var(--accent-text);border:1px solid var(--line)}.primary{background:var(--purple);color:#fff;border-color:var(--purple)}.primary:hover:not(:disabled){background:#4d00bc;border-color:#4d00bc}#submit-booking,#save-change{background:var(--positive);color:#003219;border-color:var(--positive);font-weight:700}#submit-booking:hover:not(:disabled),#save-change:hover:not(:disabled){background:#32db77;border-color:#32db77}#submit-booking:disabled,#save-change:disabled{background:var(--success-bg);color:var(--success-text);border-color:var(--line);opacity:.65}.public-notice{background:var(--yellow-tint);border-color:var(--line);border-left:4px solid var(--yellow)}.public-notice strong{color:var(--yellow-ink)}.public-notice p{color:var(--ink)}.public-notice::before{content:'!';display:inline-grid;place-items:center;width:19px;height:19px;border-radius:50%;background:var(--yellow);color:#344000;font-size:12px;font-weight:800;margin-right:8px;vertical-align:middle}.admin-tabs button[aria-pressed=true],.preview-switch button[aria-pressed=true]{background:var(--purple-tint);color:var(--accent-text);border-color:var(--line);box-shadow:inset 0 -2px 0 var(--accent-text)}.token-help code{background:var(--purple-tint);color:var(--accent-text)}.success-mark{background:var(--positive);color:#003219}.share-box,.whatsapp-bubble{background:var(--success-bg);border:1px solid var(--line)}.share-box button{color:var(--success-text);border-color:var(--success-text)}.share-box p{color:var(--muted)}.booking-badge{background:var(--success-bg);color:var(--success-text)}.agenda-stat{background:var(--aqua-tint);color:var(--aqua-ink)}.prepare-card a{color:var(--ink)}.prepare-card a span{color:var(--aqua-ink)}.prepare-card a:hover{color:var(--aqua-ink)}.aside-icon{color:var(--aqua-ink)}.calendar-connection{border-left:3px solid var(--yellow)}.admin-demo-note{border-left:3px solid var(--yellow);background:var(--paper)}.previous{border-left-color:var(--yellow)}.admin-booking button,.blocked-row button{color:var(--accent-text);background:var(--purple-tint)}.closed-day{font-style:italic}.actions .primary{transition:background .15s,color .15s}.time-window input:focus-visible{outline-color:var(--focus-ring)}
/* Calm schedule surface; aqua is reserved for selection and focus. */
:root{--slot-surface:#fff;--slot-hover:#f4f1fa;--slot-border:#dcd6e7;--slot-date:#514261}
:root[data-appearance="tarde"]{--slot-surface:#fcf6e9;--slot-hover:#f2e9d5;--slot-border:#d8c79e;--slot-date:#624e32}
:root[data-appearance="noche"]{--slot-surface:#252131;--slot-hover:#302a3e;--slot-border:#443b54;--slot-date:#d6c8e9}
.day-times button{background:var(--slot-surface);border-color:var(--slot-border);color:var(--ink);box-shadow:none}
.day-times button:hover:not(.selected){background:var(--slot-hover);border-color:var(--accent-text);box-shadow:none}
.day-times button.selected,.day-times button.selected:hover{background:var(--aqua);border-color:var(--aqua);color:#004c3f;box-shadow:inset 0 0 0 1px #004c3f55;font-weight:700}
.day-title.chosen-day strong,.day-title small{color:var(--slot-date)}
.day-title.chosen-day{border-bottom:1px solid var(--line)}

/* Keep the chosen appointment above the schedule; group identical opening days. */
.selected-at-top{margin:20px 23px 0;padding:15px 18px;border-left:4px solid var(--aqua-ink);display:flex;flex-wrap:wrap;align-items:baseline;column-gap:15px;row-gap:6px}
.selected-at-top .selected-label{flex-basis:100%;font-size:10px;letter-spacing:.8px;text-transform:uppercase;color:var(--aqua-ink)}
.selected-at-top strong{font-size:14px;line-height:1.5}
.selected-at-top .selected-clock{font-size:14px;font-weight:600;color:var(--aqua-ink)}
.selected-at-top .selected-clock small{font-size:11px;font-weight:400;color:var(--muted)}
.hours-group{display:block;font-size:11px;line-height:1.65}
.hours-group+.hours-group{margin-top:10px}
.hours-group b{display:block;color:var(--ink);font-size:11px;font-weight:600;margin-bottom:3px}
@media(max-width:540px){.selected-at-top{margin:16px 15px 0;padding:12px 14px;gap:5px}.selected-at-top strong{font-size:13px;flex-basis:100%}.selected-at-top .selected-clock{font-size:13px}}

/* Contain schedule scrolling and leave room for touch controls on phones. */
.workspace>*,.admin-two-columns>*,.booking-card,#stage,.agenda-grid{min-width:0}
.public-notice,.email-preview,.email-meta{overflow-wrap:anywhere}
@media(max-width:540px){
 .agenda-toolbar{flex-wrap:wrap;gap:10px}
 .agenda-navigation{gap:8px}
 .agenda-navigation .icon-button,.dialog-head .icon-button{min-width:44px;min-height:44px}
 .date-jump{font-size:12px;gap:8px;flex-basis:100%;justify-content:space-between}
 .date-jump input{font-size:16px;min-height:44px;max-width:180px;flex:1}
 .day-times button,.appearance-options button,.preview-switch button,.notification-item button,.toggle-line{min-height:44px}
 .field input,.field select,.field textarea,.time-window input,dialog textarea{font-size:16px;min-height:44px}
 .time-window{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:6px}
 .time-window>span:first-child{grid-column:1/-1;width:auto}
 .time-window label{min-width:0}
 .time-window input{width:100%;max-width:none;padding:6px 3px}
 .notification-item{flex-wrap:wrap}
 .notification-item button{margin-left:auto}
 dialog{max-height:85dvh;overflow:auto}
}
@media(max-width:380px){
 .header{height:auto;flex-wrap:wrap;gap:12px;padding-top:14px;padding-bottom:14px}
 .help-link{margin-left:auto}
 .schedule-rules,.booking-filters{grid-template-columns:minmax(0,1fr)}
}
