.appointment-scheduling-page .as-hero{background:var(--bg-main);padding:96px 0 64px}.appointment-scheduling-page .as-hero h1{font-family:var(--font-display);letter-spacing:-.025em;color:var(--convexa-ink);text-wrap:balance;margin:0;padding-bottom:.06em;font-size:96px;font-style:italic;font-weight:400;line-height:1.02}.appointment-scheduling-page .cal-card{background:var(--bg-card);border:1px solid var(--border-strong);box-shadow:var(--shadow-md);border-radius:24px;overflow:hidden}.appointment-scheduling-page .cal-head{border-bottom:1px solid var(--border-strong);background:#fafafc;justify-content:space-between;align-items:center;padding:16px 22px;display:flex}.appointment-scheduling-page .cal-head .ttl{font:500 14px var(--font-sans);color:var(--fg-strong)}.appointment-scheduling-page .cal-head .nav-arr{gap:4px;display:flex}.appointment-scheduling-page .cal-head .nav-arr button{border:1px solid var(--border-strong);background:var(--bg-card);cursor:pointer;width:28px;height:28px;color:var(--fg-muted);border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.appointment-scheduling-page .cal-head .nav-arr button svg{width:12px;height:12px}.appointment-scheduling-page .cal-grid-7{border-bottom:1px solid var(--border);grid-template-columns:60px repeat(5,1fr);display:grid}.appointment-scheduling-page .cal-grid-7>div{text-align:center;font:500 11px var(--font-mono);color:var(--fg-muted);border-right:1px solid var(--border);letter-spacing:.04em;padding:12px 8px}.appointment-scheduling-page .cal-grid-7>div:last-child{border-right:none}.appointment-scheduling-page .cal-grid-7 .day-name{color:var(--fg-strong)}.appointment-scheduling-page .cal-grid-7 .day-num{font:400 18px var(--font-display);color:var(--convexa-ink);font-style:italic}.appointment-scheduling-page .cal-body{grid-template-columns:60px repeat(5,1fr);min-height:320px;display:grid;position:relative}.appointment-scheduling-page .cal-body .time{font:500 11px var(--font-mono);color:var(--fg-muted);text-align:right;border-right:1px solid var(--border);padding:18px 8px}.appointment-scheduling-page .cal-body .slot-col{border-right:1px solid var(--border);padding:4px;position:relative}.appointment-scheduling-page .cal-body .slot-col:last-child{border-right:none}.appointment-scheduling-page .slot{background:var(--bg-subtle);font:500 11px var(--font-sans);color:var(--fg-strong);border-radius:8px;flex-direction:column;margin-bottom:4px;padding:8px 10px;display:flex}.appointment-scheduling-page .slot.is-new{background:var(--convexa-blue);color:#fff}.appointment-scheduling-page .slot.is-new .sub{color:#ffffffb3}.appointment-scheduling-page .slot.is-conflict{background:var(--bg-warm);color:var(--convexa-ink)}.appointment-scheduling-page .slot .sub{font:400 10px var(--font-mono);color:var(--fg-muted);margin-top:2px}.appointment-scheduling-page .slot.is-empty{background:0 0;height:28px}.appointment-scheduling-page .as-hero-grid{grid-template-columns:.9fr 1.1fr;align-items:center;gap:56px;display:grid}.appointment-scheduling-page .picker-card{background:var(--bg-card);border:1px solid var(--border-strong);border-radius:24px;padding:32px}.appointment-scheduling-page .picker-tabs{background:var(--bg-subtle);border-radius:999px;gap:4px;max-width:max-content;margin:0 0 22px;padding:4px;display:flex}.appointment-scheduling-page .picker-tabs button{font:500 13px var(--font-sans);color:var(--fg-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:8px 18px}.appointment-scheduling-page .picker-tabs button.is-on{background:var(--bg-card);color:var(--fg-strong);box-shadow:var(--shadow-xs)}.appointment-scheduling-page .slot-grid{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.appointment-scheduling-page .slot-pill{background:var(--bg-subtle);border:1px solid var(--border);font:500 13px var(--font-sans);color:var(--fg-strong);text-align:center;cursor:pointer;transition:all .14s var(--ease-out);border-radius:10px;padding:10px 12px}.appointment-scheduling-page .slot-pill:hover{border-color:var(--convexa-blue)}.appointment-scheduling-page .slot-pill.is-taken{opacity:.35;pointer-events:none;text-decoration:line-through}.appointment-scheduling-page .slot-pill.is-pick{background:var(--convexa-ink);color:#fff;border-color:var(--convexa-ink)}.appointment-scheduling-page .out-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.appointment-scheduling-page .out-card{background:var(--bg-card);border:1px solid var(--border-strong);border-radius:20px;flex-direction:column;padding:28px;display:flex}.appointment-scheduling-page .out-card .ico{background:var(--bg-accent-soft);width:44px;height:44px;color:var(--convexa-blue);border-radius:14px;justify-content:center;align-items:center;margin-bottom:16px;display:inline-flex}.appointment-scheduling-page .out-card .ico svg{width:20px;height:20px}.appointment-scheduling-page .out-card h3{font:500 18px/1.3 var(--font-sans);color:var(--fg-strong);min-height:2.6em;margin:0 0 6px}.appointment-scheduling-page .out-card p{font:400 14px var(--font-sans);color:var(--fg-muted);margin:0 0 16px;line-height:1.55}.appointment-scheduling-page .out-card .stat{font:400 36px/1 var(--font-display);color:var(--convexa-ink);border-top:1px solid var(--border);margin-top:auto;padding-top:14px;padding-bottom:.04em;font-style:italic}.appointment-scheduling-page .out-card .stat-sub{font:400 12px var(--font-sans);color:var(--fg-muted);margin-top:4px}.appointment-scheduling-page .rem-grid{grid-template-columns:220px 1fr;gap:32px;display:grid}.appointment-scheduling-page .rem-step{background:var(--bg-card);border:1px solid var(--border-strong);border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:12px;margin-bottom:10px;padding:16px 18px;display:grid}.appointment-scheduling-page .rem-step .nm{font:500 13px var(--font-sans);color:var(--fg-strong)}.appointment-scheduling-page .rem-step .sub{font:400 12px var(--font-sans);color:var(--fg-muted);margin-top:2px}.appointment-scheduling-page .rem-step .when{font:500 11px var(--font-mono);color:var(--convexa-blue);background:var(--bg-accent-soft);border-radius:6px;padding:4px 8px}.appointment-scheduling-page .rem-step.is-warm .when{color:#0e6b62;background:#4fd1c233}.appointment-scheduling-page .as-int-grid{grid-template-columns:repeat(6,1fr);gap:12px;max-width:920px;margin:0 auto;display:grid}@media (max-width:900px){.appointment-scheduling-page .as-hero-grid,.appointment-scheduling-page .out-grid{grid-template-columns:1fr}.appointment-scheduling-page .picker-row{grid-template-columns:1fr!important}.appointment-scheduling-page .rem-grid{grid-template-columns:1fr}.appointment-scheduling-page .as-int-grid{grid-template-columns:repeat(3,1fr)}.appointment-scheduling-page .cal-grid-7,.appointment-scheduling-page .cal-body{grid-template-columns:44px repeat(5,1fr)}}@media (max-width:640px){.appointment-scheduling-page .as-hero h1{font-size:52px}.appointment-scheduling-page .picker-card{min-width:0;padding:24px}.appointment-scheduling-page .picker-tabs{flex-wrap:wrap;max-width:none}}@media (max-width:560px){.appointment-scheduling-page .slot-grid{grid-template-columns:repeat(4,1fr)}.appointment-scheduling-page .as-int-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:400px){.appointment-scheduling-page .cal-grid-7,.appointment-scheduling-page .cal-body{grid-template-columns:36px repeat(5,1fr)}.appointment-scheduling-page .cal-body .slot-col{min-width:0}}
