:root{color-scheme:light;--brand-900:#0a0f27;--brand-600:#263a9e;--brand-500:#3049c5;--brand-400:#586cd0;--brand-100:#e8ebf8;--brand-50:#f7f7fa;--neutral-900:#171717;--neutral-600:#5e5e5e;--neutral-500:#757575;--neutral-300:#acacac;--neutral-100:#e3e3e3;--neutral-50:#f1f1f1;--neutral-0:#ffffff;--text-primary:#16325c;--text-secondary:#54698d;--borders:#d8dde6;--success-800:#00250f;--success-500:#007a31;--success-100:#cce4d6;--error-800:#330c00;--error-500:#a92900;--error-100:#eed4cc}*{box-sizing:border-box}html{min-width:320px}body,html{background:var(--brand-50)}body{margin:0;color:var(--text-primary);font-family:Lato,Arial,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}h1,h2,p{margin-top:0}h1{font-size:28px;line-height:1.25}h1,h2{margin-bottom:0;font-weight:700;letter-spacing:0}h2{font-size:22px;line-height:1.3}.app-header{height:64px;background:var(--neutral-0);border-bottom:1px solid var(--borders)}.header-inner{width:min(1180px,calc(100% - 48px));height:100%;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand-logo{width:116px;height:32px;display:block;object-fit:contain;object-position:left center}.header-profile{display:flex;align-items:center;gap:10px;color:var(--text-secondary);font-size:14px;font-weight:700}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--brand-100);color:var(--brand-600);font-size:12px;font-weight:900}.booking-page{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:32px 0 48px}.scheduler-shell{min-height:700px;display:grid;grid-template-columns:360px minmax(0,1fr);overflow:hidden;border:1px solid var(--borders);border-radius:6px;background:var(--neutral-0);box-shadow:0 12px 32px rgba(10,15,39,.08)}.event-panel{padding:40px 36px 32px;display:flex;flex-direction:column;gap:24px;border-right:1px solid var(--borders)}.eyebrow{margin-bottom:10px;color:var(--brand-500);font-size:12px;line-height:1.3;font-weight:900;text-transform:uppercase}.event-panel>div:first-child h1{font-size:30px;font-weight:900}.event-description{color:var(--text-secondary);font-size:14px;line-height:1.55;font-weight:500}.event-meta{display:grid;grid-gap:14px;gap:14px}.event-meta>div{display:grid;grid-template-columns:24px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center;color:var(--text-secondary);font-size:15px;line-height:1.45;font-weight:700}.event-meta svg,.timezone-row svg{width:20px;height:20px;stroke-width:1.8}.candidate-form{margin-top:8px;padding-top:28px;border-top:1px solid var(--borders)}.candidate-form h2{margin-bottom:18px;font-size:18px}.field-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px 12px;gap:14px 12px}.field-grid label,.timezone-field{color:var(--text-secondary);font-size:14px;font-weight:700}.full-field{grid-column:1/-1}input,select{min-height:44px;border:1px solid var(--borders);border-radius:6px;background:var(--neutral-0);color:var(--text-primary)}input{width:100%;margin-top:7px;padding:0 13px}select{padding:0 12px}button:focus-visible,input:focus,select:focus{outline:2px solid var(--brand-400);outline-offset:2px}.button{min-height:42px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:6px;font-size:16px;font-weight:700;white-space:nowrap}.button svg{width:18px;height:18px}.button.primary{border:1px solid var(--brand-500);background:var(--brand-500);color:var(--neutral-0)}.button.primary:hover:not(:disabled){border-color:var(--brand-600);background:var(--brand-600)}.button.secondary{border:1px solid var(--borders);background:var(--neutral-0);color:var(--text-primary)}.button.secondary:hover:not(:disabled){background:var(--neutral-50)}.full-button{width:100%;margin-top:18px}.booking-panel{min-width:0;padding:40px 44px 32px}.booking-panel>h1{margin-bottom:0}.alert{margin-top:20px;padding:12px 14px;display:flex;align-items:center;gap:8px;border-radius:6px;font-size:14px;line-height:1.45}.alert svg{width:18px;height:18px;flex:0 0 18px}.alert.error{border:1px solid var(--error-100);background:#fbf1ee;color:var(--error-800)}.alert.success{border:1px solid var(--success-100);background:#f2faf5;color:var(--success-800)}.schedule-grid{margin-top:28px}.schedule-grid.with-times{display:grid;grid-template-columns:minmax(0,1fr) 220px;grid-gap:28px;gap:28px}.calendar-column{min-width:0}.calendar{max-width:600px;margin:12px auto 0}.calendar-nav{margin-bottom:22px;display:grid;grid-template-columns:42px minmax(0,1fr) 42px;grid-gap:8px;gap:8px;align-items:center}.calendar-nav h2{text-align:center}.icon-control{width:38px;height:38px;padding:0;display:inline-grid;place-items:center;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--text-secondary)}.icon-control:hover:not(:disabled){border-color:var(--borders);background:var(--brand-50);color:var(--brand-500)}.icon-control svg{width:20px;height:20px}.calendar-grid,.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:6px;gap:6px}.calendar-weekdays{margin-bottom:8px}.calendar-weekdays span{padding:8px 0;color:var(--text-secondary);font-size:13px;font-weight:700;text-align:center}.calendar-day{width:44px;min-height:44px;justify-self:center;position:relative;display:inline-grid;place-items:center;border:1px solid transparent;border-radius:50%;background:transparent;color:var(--neutral-300);font-size:16px}.calendar-day.available{background:var(--brand-100);color:var(--brand-500);font-weight:700}.calendar-day.available:hover{background:var(--brand-400);color:var(--neutral-0)}.calendar-day.selected,.calendar-day.selected:hover{background:var(--brand-500);color:var(--neutral-0)}.outside-month{opacity:.45}.timezone-row{max-width:600px;margin:30px auto 0;display:flex;align-items:center;gap:10px;color:var(--text-secondary);font-size:14px;font-weight:700}.time-rail{min-width:0;margin-top:12px;padding-left:24px;border-left:1px solid var(--borders)}.time-rail h2{margin-bottom:14px;font-size:16px;line-height:1.4}.time-list{max-height:390px;padding-right:4px;display:grid;grid-gap:10px;gap:10px;overflow-y:auto}.time-button{min-height:46px;padding:0 14px;border:1px solid var(--borders);border-radius:6px;background:var(--neutral-0);color:var(--text-primary);font-weight:700}.time-button:hover{border-color:var(--brand-400);background:var(--brand-50)}.time-button.selected,.time-button.selected:hover{border-color:var(--brand-500);background:var(--brand-500);color:var(--neutral-0)}.availability-loading,.calendar-skeleton{min-height:430px;margin-top:28px;border:1px solid var(--borders);border-radius:6px;background:var(--brand-50);animation:loading-pulse 1.2s ease-in-out infinite alternate}@keyframes loading-pulse{to{opacity:.55}}.confirmation-page{min-height:calc(100vh - 64px);width:min(600px,calc(100% - 40px));margin:0 auto;padding:56px 0;display:grid;place-items:center}.confirmation-card{width:100%;padding:40px;border:1px solid var(--borders);border-radius:6px;background:var(--neutral-0);box-shadow:0 12px 32px rgba(10,15,39,.08)}.confirmation-icon{width:42px;height:42px;margin-bottom:18px;padding:8px;border-radius:6px;background:var(--success-100);color:var(--success-800)}.confirmation-card h1{margin-bottom:10px}.confirmation-card>p{margin-bottom:0;color:var(--text-secondary);line-height:1.5}.confirmation-details{margin:24px 0;overflow:hidden;border:1px solid var(--borders);border-radius:6px}.confirmation-details>div{padding:13px 16px;display:grid;grid-template-columns:110px minmax(0,1fr);grid-gap:12px;gap:12px;border-bottom:1px solid var(--borders)}.confirmation-details>div:last-child{border-bottom:0}.confirmation-details dt{color:var(--text-secondary);font-size:14px;font-weight:700}.confirmation-details dd{margin:0;font-weight:700}.availability-page{width:min(960px,calc(100% - 40px));margin:0 auto;padding:38px 0 56px}.page-heading{margin-bottom:24px}.page-heading h1{margin-bottom:8px}.availability-section-header p,.page-heading p{margin-bottom:0;color:var(--text-secondary);line-height:1.5}.availability-panel{overflow:hidden;border:1px solid var(--borders);border-radius:6px;background:var(--neutral-0);box-shadow:0 8px 24px rgba(10,15,39,.06)}.availability-section{padding:28px;border-bottom:1px solid var(--borders)}.availability-section-header{margin-bottom:22px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.availability-section-header h2{margin-bottom:6px}.timezone-field span{display:block;margin-bottom:7px}.timezone-field select{width:230px}.availability-toolbar{min-height:44px;padding:8px 12px;display:flex;justify-content:space-between;gap:16px;border:1px solid var(--borders);border-bottom:0;border-radius:6px 6px 0 0;background:var(--brand-50);color:var(--text-secondary)}.availability-toolbar,.text-button{align-items:center;font-size:14px;font-weight:700}.text-button{min-height:32px;padding:4px 8px;display:inline-flex;gap:6px;border:0;border-radius:4px;background:transparent;color:var(--brand-500)}.text-button:hover:not(:disabled){background:var(--brand-100)}.text-button svg{width:17px;height:17px}.day-list{border:1px solid var(--borders);border-radius:0 0 6px 6px}.day-row{min-height:72px;padding:14px 16px;display:grid;grid-template-columns:112px 48px minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start;border-bottom:1px solid var(--borders)}.day-row:last-child{border-bottom:0}.day-row.off{background:var(--neutral-50)}.day-row>strong{padding-top:10px}.switch{width:40px;height:24px;margin-top:9px;padding:0;position:relative;border:0;border-radius:999px;background:var(--neutral-300)}.switch span{width:18px;height:18px;position:absolute;left:3px;top:3px;border-radius:50%;background:var(--neutral-0);box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .15s ease}.switch[aria-checked=true]{background:var(--brand-500)}.switch[aria-checked=true] span{transform:translateX(16px)}.day-windows{min-width:0}.time-window{margin-bottom:10px;display:grid;grid-template-columns:minmax(120px,1fr) 20px minmax(120px,1fr) 38px;grid-gap:8px;gap:8px;align-items:center}.time-window select{width:100%}.time-window>span{color:var(--text-secondary);text-align:center}.remove-window:hover:not(:disabled){color:var(--error-500)}.add-hours{margin-top:2px}.unavailable-label{min-height:44px;display:flex;align-items:center;color:var(--text-secondary);font-size:14px}.form-actions{min-height:76px;padding:16px 28px;display:flex;align-items:center;justify-content:flex-end;gap:10px;background:var(--brand-50)}.availability-loading{min-height:480px}@media (max-width:920px){.booking-page{width:min(100% - 28px,760px);padding-top:18px}.scheduler-shell{grid-template-columns:1fr;min-height:0}.event-panel{padding:28px;border-right:0;border-bottom:1px solid var(--borders)}.booking-panel{padding:28px}.schedule-grid.with-times{grid-template-columns:1fr;gap:24px}.time-rail{margin-top:0;padding:24px 0 0;border-top:1px solid var(--borders);border-left:0}.time-list{max-height:none}}@media (max-width:760px){.header-inner{width:calc(100% - 28px)}.header-profile>span{display:none}.availability-page{width:min(100% - 24px,640px);padding-top:24px}.availability-section,.form-actions{padding-left:20px;padding-right:20px}.availability-section-header{display:grid}.timezone-field select{width:100%}.availability-toolbar{align-items:flex-start;flex-direction:column}.day-row{grid-template-columns:minmax(0,1fr) 48px;gap:8px 12px}.day-row>strong{grid-column:1}.switch{grid-column:2;grid-row:1;justify-self:end}.day-windows{grid-column:1/-1}}@media (max-width:560px){.booking-page{width:100%;padding:0}.scheduler-shell{border-left:0;border-right:0;border-radius:0;box-shadow:none}.booking-panel,.event-panel{padding:24px 20px}.field-grid{grid-template-columns:1fr}.full-field{grid-column:auto}.calendar-grid,.calendar-weekdays{gap:2px}.calendar-day{width:38px;min-height:38px;font-size:15px}.calendar-weekdays span{font-size:12px}.availability-page{width:100%;padding:20px 0 0}.page-heading{padding:0 20px}.availability-panel{border-left:0;border-right:0;border-radius:0;box-shadow:none}.time-window{grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr) 38px}.time-window select{padding:0 7px;font-size:14px}.form-actions{align-items:stretch;flex-direction:column-reverse}.confirmation-page{width:100%;padding:0}.confirmation-card{min-height:calc(100vh - 64px);padding:32px 20px;border:0;border-radius:0;box-shadow:none}.confirmation-details>div{grid-template-columns:1fr;gap:4px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important}}