:root{color-scheme:light;--bg:oklch(.985 0 0);--surface:oklch(1 0 0);--ink:oklch(.20 .006 190);--muted:oklch(.43 .009 190);--line:oklch(.60 .007 190);--soft:oklch(.95 .004 190);--yellow:oklch(.86 .16 95);--button-ink:oklch(.135 .004 190);--focus:oklch(.40 .07 190);--error:oklch(.43 .17 25);--radius:12px;font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.55;font-kerning:normal}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){color-scheme:dark;--bg:oklch(.135 .004 190);--surface:oklch(.19 .005 190);--ink:oklch(.965 0 0);--muted:oklch(.76 .008 190);--line:oklch(.55 .007 190);--soft:oklch(.25 .005 190);--focus:oklch(.86 .16 95);--error:oklch(.80 .11 25)}}
:root[data-theme="dark"]{color-scheme:dark;--bg:oklch(.135 .004 190);--surface:oklch(.19 .005 190);--ink:oklch(.965 0 0);--muted:oklch(.76 .008 190);--line:oklch(.55 .007 190);--soft:oklch(.25 .005 190);--focus:oklch(.86 .16 95);--error:oklch(.80 .11 25)}
*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}button,select{cursor:pointer}button,input,select,textarea{border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);min-height:46px}button{padding:10px 16px;transition:background .16s ease-out,color .16s ease-out}button:hover:not(:disabled){background:var(--soft)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{cursor:default;color:var(--muted);background:var(--soft)}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}input,select,textarea{width:100%;padding:12px}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}textarea{min-height:112px;resize:vertical}h1,h2,h3,p{margin-top:0}h1,h2,h3{text-wrap:balance}h1{font-size:2.5rem;letter-spacing:-.035em;line-height:1.12;margin-bottom:12px}h2{font-size:1.5rem;letter-spacing:-.02em;line-height:1.3}h3{font-size:1.125rem}p{max-width:70ch;text-wrap:pretty}select{max-width:100%}.shell{width:100%;max-width:1184px;margin:0 auto;padding:32px 24px 48px}.preview-bar{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-bottom:48px}.preview-bar p,.theme-label{font-size:.875rem;color:var(--muted);margin:0}.theme-label{display:flex;align-items:center;gap:12px}.theme-label select{width:auto;font-size:.875rem;padding:8px 12px}.intro{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:32px}.intro p{color:var(--muted);margin-bottom:0}.intro .host{font-size:.875rem;margin-bottom:16px;color:var(--ink)}#progress{display:flex;flex-wrap:wrap;gap:16px;padding:0;margin:0 0 4px;list-style:none;font-size:.875rem;color:var(--muted)}#progress li{display:flex;align-items:center;gap:8px}#progress li::before{content:'';width:10px;height:10px;border:1px solid currentColor;border-radius:50%;flex-shrink:0}#progress [aria-current="step"]{color:var(--ink);font-weight:700}#progress [aria-current="step"]::before{background:var(--yellow);border-color:var(--button-ink)}.stage{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0;overflow-wrap:anywhere}.calendar-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr)}.month-pane{padding:32px}.month-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:32px}.month-nav h2{font-size:1.5rem;margin:0}.month-nav button{min-width:46px;padding:8px}.calendar{width:100%;border-collapse:separate;border-spacing:4px;table-layout:fixed}.calendar caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.calendar th{font-weight:400;color:var(--muted);font-size:.875rem;height:40px}.calendar td{text-align:center;padding:2px}.day{width:100%;min-height:48px;padding:8px 0;background:transparent;border-color:transparent;font-variant-numeric:tabular-nums}.day:disabled{background:transparent;color:var(--muted)}.day[aria-pressed="true"],.slot[aria-pressed="true"]{background:var(--yellow);border-color:var(--button-ink);color:var(--button-ink);font-weight:700}.day[aria-pressed="true"]:hover,.slot[aria-pressed="true"]:hover{background:var(--yellow)}.day.today{border-color:var(--line)}.times-pane{padding:32px;border-inline-start:1px solid var(--line);display:flex;flex-direction:column;gap:20px;min-width:0}.times-pane h2{margin-bottom:4px}.subtle{color:var(--muted);font-size:.875rem;margin:0}.slot-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-height:280px;overflow:auto;padding:4px}.slot{min-height:48px;padding:10px 8px;font-variant-numeric:tabular-nums}.timezone-label{font-size:.875rem;display:block}.timezone-label select{display:block;margin-top:8px}.primary{background:var(--yellow);color:var(--button-ink);font-weight:700;border-color:var(--button-ink);min-height:52px;padding:12px 24px}.primary:hover:not(:disabled){background:oklch(.90 .14 95)}.primary:disabled{color:var(--muted);border-color:var(--line);background:var(--soft)}.selection{padding:16px;background:var(--soft);border-radius:8px;font-size:.875rem;margin:0}.selection strong{display:block;font-size:1rem;margin-top:4px}.step-content{max-width:720px;padding:40px;margin:0 auto}.step-content>h2{font-size:1.75rem;margin-bottom:12px}.step-content>p{color:var(--muted)}.field{display:block;margin:24px 0}.field>span,.field>label{display:block;margin-bottom:8px}.field small{display:block;color:var(--muted);font-size:.875rem;margin-top:8px}.field-error{color:var(--error);font-size:.875rem;margin-top:8px;min-height:0}.field-error:empty{display:none}[aria-invalid="true"]{border-color:var(--error)}.actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:32px}.actions .primary{margin-inline-start:auto}.quiet{background:transparent}.questions{padding:0;border:0;margin:32px 0}.questions legend{font-weight:700;font-size:1.125rem;line-height:1.5;padding:0;margin-bottom:16px}.choice{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--line);border-radius:8px;padding:12px 16px;margin-bottom:12px;min-height:52px;cursor:pointer}.choice:has(:checked){background:var(--soft);border-color:var(--ink)}.choice input{width:20px;height:20px;min-height:20px;flex-shrink:0;margin:3px 0 0;accent-color:var(--button-ink)}.choice:focus-within{outline:2px solid var(--focus);outline-offset:3px}.review-list{margin:28px 0}.review-list dt{font-size:.875rem;color:var(--muted);margin-top:20px}.review-list dd{margin:4px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.hold-note{background:var(--soft);padding:16px;border-radius:8px;margin-bottom:28px}.hold-note strong{display:block}.privacy-note{font-size:.875rem;color:var(--muted);margin:20px 0 32px;max-width:85ch}.preview-tools{border-top:1px solid var(--line);padding-top:16px;font-size:.875rem;color:var(--muted)}.preview-tools summary{min-height:44px;padding:8px 0;cursor:pointer;color:var(--ink)}.preview-tools p{margin:16px 0}.tools-row{display:flex;align-items:flex-end;gap:24px;margin-top:16px}.tools-row label{display:block;flex:1}.tools-row select{display:block;margin-top:8px}.receipts{max-height:240px;overflow:auto;padding-inline-start:24px}.receipts li{padding:4px}.skip{position:absolute;top:-100px;left:24px;background:var(--yellow);color:var(--button-ink);padding:12px;z-index:10}.skip:focus{top:8px}#notice:not(:empty){padding:16px;border:1px solid var(--line);border-radius:8px;margin-bottom:20px}#notice.error{color:var(--error)}.loading{padding:40px;color:var(--muted);animation:pulse 1s ease-out alternate infinite}.empty{padding:32px 0}.empty p{color:var(--muted)}@keyframes pulse{to{opacity:.5}}
.day{position:relative}.day:not(:disabled){background:var(--soft);border-color:var(--line);font-weight:600}.day:not(:disabled)::after{content:'';position:absolute;left:50%;bottom:7px;transform:translateX(-50%);width:5px;height:5px;border-radius:50%;background:var(--focus)}.day[aria-pressed="true"]::after{background:var(--button-ink)}.day:hover:not(:disabled){border-color:var(--ink)}.day:disabled{opacity:.55}.day[aria-pressed="true"]{background:var(--yellow);border-color:var(--button-ink);color:var(--button-ink);font-weight:700}.slot[aria-pressed="true"]{background:var(--yellow);border-color:var(--button-ink);color:var(--button-ink);font-weight:700}
@media(min-width:1000px){.slot-list{grid-template-columns:1fr}}
@media(max-width:760px){.shell{padding:24px 16px 32px}.preview-bar{align-items:flex-start;gap:12px;margin-bottom:32px;flex-direction:column}.intro{display:block;margin-bottom:24px}h1{font-size:2rem}.intro .host{margin-bottom:12px}#progress{margin-top:24px;gap:12px;font-size:.8125rem}.calendar-layout{display:block}.month-pane,.times-pane{padding:24px 16px}.month-nav{margin-bottom:20px}.month-nav h2{font-size:1.25rem}.calendar{border-spacing:0}.calendar td{padding:1px}.day{min-height:44px}.times-pane{border-inline-start:0;border-top:1px solid var(--line)}.step-content{padding:28px 20px}.step-content>h2{font-size:1.5rem}.actions{flex-wrap:wrap}.actions .primary{flex:1}.tools-row{align-items:stretch;flex-direction:column;gap:16px}.theme-label select{min-height:44px}}
#celebration{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:20}.success-mark{display:inline-grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--yellow);color:var(--button-ink);font-size:1.75rem;font-weight:700;margin-bottom:24px}
.host-profile{display:flex;align-items:center;gap:16px;margin-bottom:24px;text-align:left}.host-profile strong{font-size:1rem;line-height:1.4;display:block}.intro .host-profile p,.host-profile p{font-size:.875rem;color:var(--muted);margin:4px 0 0}.host-avatar{width:64px;height:64px;display:block;flex-shrink:0;border-radius:50%;overflow:hidden;background:var(--soft)}.host-avatar img{display:block;width:100%;height:100%;object-fit:cover;object-position:55% 0%;transform:scale(1.55);transform-origin:55% 20%}
.intro.is-confirmed{display:block;text-align:center;margin:40px auto 32px}.intro.is-confirmed>div{display:flex;flex-direction:column;align-items:center}.intro.is-confirmed #host-profile,.intro.is-confirmed .call-description,.intro.is-confirmed #progress{display:none}.intro.is-confirmed h1{margin-bottom:0}#completion-mark{width:72px;height:72px;display:grid;place-items:center;margin:0 auto 20px}#completion-mark svg{display:block}
.shell.is-confirmed .stage{max-width:680px;margin-inline:auto}.confirmation{text-align:center;max-width:640px;padding:36px 40px}.confirmation .host-profile{flex-direction:column;gap:12px;margin:0 auto 24px;text-align:center}.confirmation .host-avatar{width:96px;height:96px}.confirmation-message{font-size:1.25rem;line-height:1.6;max-width:45ch;margin:0 auto;color:var(--ink)!important}.confirmation .selection{margin:28px auto;max-width:420px;text-align:center}.confirmation .demo-complete{margin:24px auto 16px;font-size:.875rem}.confirmation .demo-reference{font-size:.75rem;margin:0 auto 20px;overflow-wrap:anywhere}.shell.is-confirmed>.privacy-note{max-width:680px;margin-inline:auto}
@media(max-width:760px){.intro.is-confirmed{margin-top:24px}.confirmation{padding:28px 20px}.confirmation-message{font-size:1.125rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}#celebration{display:none!important}}
@media(forced-colors:active){.day,.slot,.primary,.choice{border:1px solid ButtonText}.day[aria-pressed="true"],.slot[aria-pressed="true"]{outline:3px solid Highlight}.day:disabled{border-color:GrayText}#progress [aria-current="step"]::before{background:Highlight}}
#calendar-root .intro{scroll-margin-block-start:32px}
.detour{border:1px solid var(--button-ink);background:var(--soft);border-radius:8px;padding:24px;margin:24px 24px 0}
.detour h2{margin-bottom:8px}
.detour p{color:var(--muted);margin-bottom:16px}
.detour-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}
@media(max-width:760px){.detour{margin:16px 16px 0;padding:20px}}

.actions a.primary{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.secondary{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:8px;min-height:52px;padding:12px 24px;font-weight:600;cursor:pointer}
.secondary:hover{background:var(--soft)}
.confirmation .actions{justify-content:center}
