@font-face{font-family:'Inter Variable';src:url(/book/inter.woff2) format('woff2');font-weight:100 900;font-display:swap}
[hidden]{display:none!important}
:root{--black:#050508;--dark:#0A0B10;--charcoal:#131520;--slate:#1B1D2E;--steel:#2A2D42;--silver:#C8CCD2;--silver-hi:#E2E6EC;--text:#E8E9ED;--muted:#9CA3AF;--dim:#6B7280;--border:#1F2137;--err:#F87171;--ok:#00D4AA;color-scheme:dark}
*{box-sizing:border-box}
html{background:var(--black);color:var(--text);-webkit-text-size-adjust:100%}
body{margin:0;min-height:100vh;font-family:'Inter Variable','Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;-webkit-font-smoothing:antialiased;background:radial-gradient(1200px 500px at 50% -120px,#1B1D2E 0%,var(--black) 70%) no-repeat,var(--black);line-height:1.5}
a{color:var(--silver-hi)}
.top{max-width:640px;margin:0 auto;padding:16px 16px 0}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--text);font-weight:600;font-size:18px;letter-spacing:-.01em}
.brand b{color:var(--silver);font-weight:600}
.wrap{max-width:640px;margin:0 auto;padding:8px 16px 32px}
h1{text-wrap:balance;font-size:clamp(26px,6.5vw,36px);line-height:1.15;letter-spacing:-.02em;margin:24px 0 8px;font-weight:700}
.metal{background:linear-gradient(135deg,#A0AABB 0%,#E8ECF2 22%,#9AA4B4 40%,#F8FAFC 55%,#AEB8C6 75%,#E2E6EC 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--silver-hi)}
.big{font-size:28px;margin:0 0 8px}
.lede{color:var(--muted);margin:0 0 20px;font-size:16px}
.card{background:linear-gradient(135deg,rgba(19,21,32,.92),rgba(10,11,16,.85));border:1px solid var(--border);border-radius:16px;padding:20px 16px;margin:0 0 16px}
.step{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600;margin:0 0 12px;color:var(--text)}
.step span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--steel);color:var(--silver-hi);font-size:12px}
.step:not(:first-child){margin-top:22px}
.days{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.day{flex:0 0 auto;scroll-snap-align:start;min-width:72px;padding:10px 8px;border-radius:12px;border:1px solid var(--steel);background:var(--charcoal);color:var(--text);font:inherit;text-align:center;cursor:pointer;line-height:1.2}
.day small{display:block;color:var(--muted);font-size:12px}
.day strong{display:block;font-size:20px;font-weight:650;margin:2px 0}
.day[disabled]{opacity:.35;cursor:not-allowed}
.day[aria-pressed=true],.time[aria-pressed=true]{background:linear-gradient(135deg,#E8ECF2 0%,#F8FAFC 25%,#D4DAE4 50%,#F1F5F9 75%,#C8D0DC 100%);color:#131520;border-color:transparent}
.day[aria-pressed=true] small,.time[aria-pressed=true] small{color:#2A2D42}
.times{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px}
.time{padding:11px 6px;border-radius:10px;border:1px solid var(--steel);background:var(--charcoal);color:var(--text);font:inherit;font-weight:600;font-size:15px;cursor:pointer;line-height:1.2}
.time small{display:block;font-weight:400;font-size:12px;color:var(--muted);margin-top:2px}
.day:focus-visible,.time:focus-visible,.btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--silver);outline-offset:2px}
@media (hover:hover){.day:not([disabled]):hover,.time:hover{border-color:#606570}}
.muted{color:var(--muted)}.small{font-size:13px}
.chosen{font-weight:600;color:var(--silver-hi);margin:0 0 14px}
.chosen button{background:none;border:0;color:var(--muted);text-decoration:underline;font:inherit;font-weight:400;cursor:pointer;padding:0 0 0 6px}
form{display:grid;gap:12px}
label{display:grid;gap:6px;font-size:14px;color:var(--text);font-weight:500}
label i{color:var(--muted);font-style:normal;font-weight:400}
input,select,textarea{width:100%;font:inherit;font-size:16px;color:var(--text);background:var(--dark);border:1px solid var(--steel);border-radius:10px;padding:11px 12px}
select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:32px}
textarea{resize:vertical;min-height:80px}
input[aria-invalid=true],select[aria-invalid=true]{border-color:var(--err)}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.err{color:var(--err);margin:0;min-height:0;font-size:14px}
.err:empty{display:none}
.btn{display:inline-block;width:100%;padding:14px 18px;border:0;border-radius:12px;font:inherit;font-weight:650;font-size:16px;color:#131520;background:linear-gradient(135deg,#E8ECF2 0%,#F8FAFC 25%,#D4DAE4 50%,#F1F5F9 75%,#C8D0DC 100%);box-shadow:0 1px 0 rgba(255,255,255,.5) inset,0 6px 18px rgba(0,0,0,.45);cursor:pointer;text-align:center;text-decoration:none}
.btn:hover{box-shadow:0 0 30px rgba(200,204,210,.25),0 6px 18px rgba(0,0,0,.45)}
.btn[disabled]{opacity:.6;cursor:wait}
.btn.ghost{background:transparent;color:var(--silver-hi);border:1px solid var(--steel);box-shadow:none}
.foot{max-width:640px;margin:0 auto;padding:0 16px 32px;color:var(--muted);font-size:13px}
.foot a{color:var(--muted);text-decoration:none}
@media (min-width:640px){.card{padding:24px}.btn{width:auto;min-width:220px}}
@media (prefers-reduced-motion:no-preference){.day,.time,.btn{transition:background .15s,border-color .15s,box-shadow .2s}}
.next{display:grid;gap:10px;margin-top:18px}
@media (min-width:640px){.next{grid-auto-flow:column;justify-content:start}}
