:root{--ink:#142b45;--muted:#6f8098;--line:#dbe5f1;--blue:#315fe8;--soft:#f5f8fc;--mint:#ddf6eb;--orange:#ff7a32;--danger:#c94436;--shadow:0 16px 44px rgba(24,55,94,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#f6f9fd;font:16px/1.65 system-ui,-apple-system,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}.wrap{width:min(1380px,calc(100% - 48px));margin:auto}.top{position:sticky;top:0;z-index:20;border-bottom:1px solid #e3eaf3;background:rgba(255,255,255,.95);backdrop-filter:blur(12px)}.top nav{display:flex;min-height:78px;align-items:center;gap:28px}.brand{display:flex;color:var(--ink);text-decoration:none;align-items:center;gap:10px;font-size:20px;font-weight:850}.brand span{display:flex;flex-direction:column}.brand small{color:#8996a9;font-size:11px;font-weight:600;letter-spacing:1.5px}.nav{display:flex;margin-left:auto;gap:28px}.nav a{padding:25px 0 18px;border-bottom:3px solid transparent;color:#5d6b80;text-decoration:none;font-weight:700;white-space:nowrap}.nav a:hover,.nav a[aria-current]{color:var(--ink);border-color:var(--blue)}button,.button{padding:11px 18px;border:1px solid var(--line);border-radius:11px;color:var(--ink);background:#fff;font:inherit;font-weight:750;cursor:pointer}button:hover{border-color:#9cb1d0}button:disabled{cursor:not-allowed;opacity:.55}.primary{border-color:var(--blue);color:#fff;background:var(--blue)}.hero{display:grid;margin:42px 0 70px;padding:56px 62px;border:1px solid #d7e3f0;border-radius:30px;background:linear-gradient(125deg,#fff 0,#edf6ff 65%,#e8f8f0 100%);box-shadow:var(--shadow);grid-template-columns:minmax(0,1.4fr) minmax(270px,.6fr);gap:44px}.eyebrow,.section-head span{color:#5579b7;font-size:13px;font-weight:850;letter-spacing:2px}.hero h1{margin:12px 0;font-size:clamp(38px,5vw,66px);line-height:1.15;letter-spacing:-2px}.hero p{max-width:720px;color:#546780;font-size:18px}.hero-actions{display:flex;margin-top:28px;gap:12px;flex-wrap:wrap}.hero-card{display:grid;padding:27px;border:1px solid rgba(105,145,188,.25);border-radius:22px;background:rgba(255,255,255,.76);align-content:center;gap:12px}.hero-card b{font-size:20px}.hero-card span:before{content:'✓';margin-right:9px;color:#1b9a70}.section{scroll-margin-top:100px}.section-head{display:flex;margin-bottom:25px;align-items:flex-end;justify-content:space-between;gap:20px}.section-head h2{margin:3px 0;font-size:32px}.section-head p{max-width:520px;color:var(--muted)}.guest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.guest-card{display:flex;min-height:330px;padding:25px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 10px 28px rgba(25,55,88,.05);flex-direction:column}.guest-top{display:flex;gap:14px;align-items:center}.avatar{display:flex;width:64px;height:64px;border-radius:50%;align-items:center;justify-content:center;color:#315fe8;background:#e9efff;font-size:25px;font-weight:850;object-fit:cover}.guest-card h3{margin:0;font-size:23px}.guest-card .headline{color:var(--muted)}.verified{display:inline-flex;margin-top:5px;padding:3px 8px;border-radius:999px;color:#147654;background:#e5f7ef;font-size:12px;font-weight:800}.tags{display:flex;margin:18px 0;gap:7px;flex-wrap:wrap}.tags span{padding:5px 9px;border-radius:7px;color:#52677f;background:#f0f4f9;font-size:13px}.guest-card .bio{display:-webkit-box;overflow:hidden;color:#5f7087;-webkit-box-orient:vertical;-webkit-line-clamp:3}.guest-card .card-foot{display:flex;margin-top:auto;align-items:end;justify-content:space-between;gap:12px}.price{color:var(--orange);font-size:24px;font-weight:850}.state{font-size:13px}.state.active{color:#15815e}.state.full{color:#a86a12}.state.paused{color:#8a94a4}.empty{grid-column:1/-1;padding:50px;border:1px dashed #ccd8e7;border-radius:18px;color:var(--muted);background:#fff;text-align:center}.rules{margin:80px 0 40px}.rules>div{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.rules article{padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff}.rules p{margin-bottom:0;color:var(--muted)}footer{padding:45px;color:#7c8ba0;text-align:center}#notice{min-height:24px;margin:-45px 0 25px;color:#b44b35}dialog{width:min(980px,calc(100% - 30px));max-height:90vh;padding:0;border:0;border-radius:22px;box-shadow:0 30px 90px rgba(8,25,47,.28);overflow:auto}dialog::backdrop{background:rgba(16,31,50,.48)}#modalBody{padding:34px}.close{position:sticky;top:12px;z-index:3;float:right;margin:12px 12px -55px;padding:5px 12px;border:0;border-radius:50%;font-size:24px}.guest-detail h2,.panel h2{margin:0 0 5px;font-size:31px}.detail-summary{color:var(--muted)}.service-list{display:flex;margin:20px 0;gap:10px;flex-wrap:wrap}.service-list label{padding:12px 17px;border:1px solid var(--line);border-radius:11px;cursor:pointer}.service-list label:has(input:checked){border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue);background:#f3f6ff}.service-list input{margin-right:7px}.field{display:grid;margin:15px 0;gap:7px}.field label,.field>span{font-weight:780}.field input,.field select,.field textarea{width:100%;padding:12px 13px;border:1px solid #cfdbea;border-radius:10px;background:#fff;font:inherit}.field textarea{min-height:110px;resize:vertical}.booking-note{padding:14px;border-radius:10px;color:#5c6d84;background:#f2f6fb;font-size:14px}.booking-note b{color:var(--ink)}.payment{display:grid;grid-template-columns:1fr 300px;gap:28px}.payment-qr{text-align:center}.payment-qr img,.qr{width:220px;height:220px}.order-list{display:grid;gap:12px}.order-card{padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff}.order-card h3{margin:0}.order-meta{color:var(--muted)}.order-actions{display:flex;margin-top:12px;gap:8px;flex-wrap:wrap}.status-pill{display:inline-flex;padding:4px 9px;border-radius:999px;color:#5e55b4;background:#eeeaff;font-size:12px;font-weight:800}.calendar-form{display:grid;grid-template-columns:1fr 1fr 130px auto;gap:10px;align-items:end}.calendar-list{display:grid;margin-top:16px;gap:8px}.calendar-row{display:flex;padding:10px 12px;border-radius:9px;background:#f2f5fa;align-items:center;justify-content:space-between}.profile-section,.service-section{margin:24px 0;padding:20px;border:1px solid var(--line);border-radius:16px;background:#fbfdff}.profile-heading{display:flex;align-items:start;justify-content:space-between;gap:12px}.profile-heading h3{margin:0}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.profile-grid .full{grid-column:1/-1}.private-profile{margin:18px 0;padding:16px;border-radius:12px;background:#fff7e9}.profile-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.profile-service{display:grid;padding:12px;border:1px solid var(--line);border-radius:11px;background:#fff;gap:8px}.profile-service input{width:100%;padding:10px;border:1px solid #cfdbea;border-radius:8px;font:inherit}.profile-actions{display:flex;margin-top:18px;gap:10px;flex-wrap:wrap}.rules-box{max-height:240px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#f8fafc;overflow:auto}.rules-box li{margin:7px 0}.room{display:grid;gap:18px}.recording-banner{display:flex;padding:13px;border:1px solid #f0b8af;border-radius:11px;color:#a63d31;background:#fff1ee;align-items:center;gap:10px}.recording-dot{width:11px;height:11px;border-radius:50%;background:#e3483d;box-shadow:0 0 0 6px rgba(227,72,61,.14);animation:pulse 1.4s infinite}@keyframes pulse{50%{opacity:.4}}.room-stage{display:grid;padding:35px;border-radius:20px;color:#fff;background:linear-gradient(135deg,#193a63,#315fe8);text-align:center;place-items:center;min-height:260px}.room-stage .avatar{width:88px;height:88px;color:#244fba;background:#fff}.room-status{color:#dbe6ff}.audio-meter{width:80%;height:7px;border-radius:10px;background:rgba(255,255,255,.2);overflow:hidden}.audio-meter i{display:block;width:30%;height:100%;background:#8aefc8;transition:.12s}.room-controls{display:flex;justify-content:center;gap:10px}.danger{border-color:#e2a59d;color:#b4382b;background:#fff}.dispute-form{padding-top:15px;border-top:1px solid var(--line)}.muted{color:var(--muted)}@media(max-width:1000px){.nav{gap:14px;font-size:14px}.hero{grid-template-columns:1fr}.guest-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.wrap{width:min(100% - 24px,1380px)}.top nav{min-height:66px}.nav{position:absolute;top:66px;left:0;width:100%;padding:0 12px;border-top:1px solid #edf1f6;background:#fff;overflow:auto}.nav a{padding:12px 4px;font-size:12px}.brand small{display:none}#account{margin-left:auto;padding:8px 10px}.hero{margin-top:60px;padding:30px 22px;border-radius:20px}.hero h1{font-size:39px}.guest-grid,.rules>div,.profile-grid,.profile-services{grid-template-columns:1fr}.profile-grid .full{grid-column:auto}.section-head{display:block}.payment{grid-template-columns:1fr}.calendar-form{grid-template-columns:1fr}#modalBody{padding:25px 18px}.guest-card{min-height:0}}

/* Keep the 1v1 consultation header identical to the shared website/classroom header. */
header.cj-header{display:block;height:90px;position:sticky;top:0;z-index:20;padding:0;background:#f7f8faf0;border-bottom:1px solid #e7ebef;backdrop-filter:blur(18px);font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;font-size:15px;line-height:1.65;color:#142439}
.cj-header nav.cj-wrap{width:min(1200px,calc(100% - 96px));height:100%;min-height:0;margin-inline:auto;padding:0;display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:30px}
.cj-header .cj-brand{display:flex;align-items:center;gap:10px;flex:none;white-space:nowrap;font-size:20px;font-weight:700;letter-spacing:.04em;color:#18283e;line-height:normal;text-decoration:none;touch-action:manipulation}
.cj-header .cj-brand img{display:block;flex:none;width:32px;height:32px;max-width:100%;object-fit:cover;object-position:left}
.cj-header .cj-brand span{display:block}
.cj-header .cj-brand small{display:block;font-size:10px;letter-spacing:.14em;color:#697586;font-weight:400;margin-top:4px;line-height:normal}
.cj-header .cj-nav{display:flex;align-self:stretch;flex:none;justify-content:center;gap:44px}
.cj-header .cj-nav a{display:flex;align-items:center;position:relative;padding:0;border:0;color:#697586;font-size:15px;font-weight:500;text-decoration:none;white-space:nowrap;touch-action:manipulation}
.cj-header .cj-nav a[aria-current=page]{color:#18283e;font-weight:700}
.cj-header .cj-nav a[aria-current=page]:after{content:"";position:absolute;right:0;bottom:0;left:0;height:3px;background:#315ced}
.cj-header .account-menu{position:relative;flex:none}
.cj-header #account{display:inline-block;flex:none;padding:9px 17px;border:1px solid #e0e7eb;border-radius:10px;background:#fff;color:#142439;white-space:nowrap;font:inherit;font-weight:400;touch-action:manipulation}
.cj-header #account:hover{border-color:#91a6bd;background:#f3f7fd}
.cj-header .account-dropdown{position:absolute;right:0;top:calc(100% + 10px);z-index:100;width:180px;padding:7px;border:1px solid #dbe5f1;border-radius:12px;background:#fff;box-shadow:0 10px 30px rgba(29,52,75,.1)}
.cj-header .account-dropdown[hidden]{display:none}
.cj-header .account-dropdown button{display:block;width:100%;padding:10px 14px;border:0;border-radius:8px;background:#fff;color:#142b45;text-align:left;white-space:nowrap;font:inherit;font-weight:500}
.cj-header .account-dropdown button:hover,.cj-header .account-dropdown button:focus-visible{color:#315fe8;background:#f0f5fc}
.cj-header :focus-visible{outline:3px solid #90baff;outline-offset:3px}
@media(max-width:760px){
  .cj-header{height:112px}
  .cj-header nav.cj-wrap{width:calc(100% - 40px);flex-wrap:wrap;gap:0;align-content:center;position:relative}
  .cj-header .cj-brand{font-size:18px}
  .cj-header .cj-brand img{width:28px;height:28px}
  .cj-header .cj-brand small{font-size:9px}
  .cj-header .account-menu{margin-left:auto}
  .cj-header #account{padding:8px 10px;font-size:12px}
  .cj-header .cj-nav{order:3;width:100%;height:44px;margin-top:12px;justify-content:flex-start;gap:0;overflow-x:auto;scrollbar-width:none}
  .cj-header .cj-nav::-webkit-scrollbar{display:none}
  .cj-header .cj-nav a{flex:0 0 auto;padding:0 6px;font-size:14px}
}

/* 1v1 consultation banner: aligned to the classroom banner footprint. */
.consult-banner{position:relative;isolation:isolate;display:flex;width:min(1200px,100%);height:159.24px;min-height:159.24px;margin:28px auto 44px;padding:22px 32px;border:1px solid #cfe0ee;border-radius:20px;background:#eef5fb url('/website-assets/consult-1v1-banner-v1.webp') center 38%/cover no-repeat;box-shadow:none;align-items:center;overflow:hidden}
.consult-banner:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(248,252,255,.97) 0%,rgba(248,252,255,.9) 38%,rgba(248,252,255,.38) 64%,rgba(248,252,255,.04) 100%)}
.consult-banner>div{position:relative;z-index:1}
.consult-banner h1{max-width:610px;margin:0;color:#142b45;font-size:36px;line-height:1.25;letter-spacing:-1px;text-shadow:0 1px 0 rgba(255,255,255,.45)}
.consult-home-hub{width:min(1200px,100%);margin:-20px auto 30px}
.consult-home-hub[hidden]{display:none}
.consult-home-hub-shell{padding:14px;border:1px solid #d5e1f0;border-radius:20px;background:rgba(255,255,255,.92);box-shadow:0 16px 38px rgba(39,74,119,.09)}
.consult-home-hub-head{display:flex;padding:2px 4px 12px;align-items:center;justify-content:space-between;gap:16px}
.consult-home-hub-head>div{display:flex;align-items:center;gap:10px}
.consult-home-hub-head h2{margin:0;font-size:18px;line-height:1.3}
.consult-home-hub-head span{padding:4px 9px;border-radius:999px;color:#315fe8;background:#edf2ff;font-size:12px;font-weight:800}
.consult-home-hub-head small{color:#7989a0;font-size:13px}
.consult-home-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,min(581px,calc(50vw - 25px))));gap:12px;align-items:start}
.consult-home-reminder{display:flex;min-height:148px;padding:18px;border-radius:15px;flex-direction:column;justify-content:space-between;gap:14px}
.consult-home-reminder-main{color:#fff;background:linear-gradient(135deg,#244fc9 0%,#3c6eef 62%,#5488f7 100%);box-shadow:0 10px 22px rgba(49,95,232,.2)}
.consult-home-reminder-main .consult-home-kicker{color:#dfe8ff}
.consult-home-reminder-main p{color:#eaf0ff}
.consult-home-reminder-secondary{border:1px solid #e1e8f2;background:#f8faff}
.consult-home-reminder-secondary.is-warning{border-color:#f1d69b;background:#fff9eb}
.consult-home-reminder-secondary.is-ready{border-color:#bfe7d5;background:#f0fbf6}
.consult-home-kicker{display:block;color:#6b7f9a;font-size:12px;font-weight:850;letter-spacing:.08em}
.consult-home-reminder h3{margin:3px 0 4px;font-size:20px;line-height:1.35}
.consult-home-reminder-secondary h3{font-size:17px}
.consult-home-reminder p{margin:0;color:#64768d;font-size:13px;line-height:1.6}
.consult-home-reminder-time{display:flex;margin-top:9px;align-items:center;gap:8px;flex-wrap:wrap}
.consult-home-reminder-time strong{font-size:15px}
.consult-home-reminder-time span{padding:2px 8px;border-radius:999px;color:#2950bd;background:rgba(255,255,255,.84);font-size:12px;font-weight:800}
.consult-home-reminder-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.consult-home-reminder-actions button{padding:8px 13px;border-color:rgba(255,255,255,.42);border-radius:9px;color:#2348ae;background:#fff;font-size:13px}
.consult-home-reminder-secondary .consult-home-reminder-actions button{border-color:#cfdcf0;color:#315fe8;background:#fff}
.consult-home-reminder-actions small{color:#eaf0ff;font-size:12px}
.consult-home-reminder-secondary .consult-home-reminder-actions small{color:#7a899d}
.consult-home-intake-list{display:grid;min-width:0;gap:12px}
.consult-home-intake-card{appearance:none;width:100%;color:#263b58;text-align:left;font:inherit;font-weight:400}
.consult-home-intake-card:disabled{opacity:.65;cursor:wait}
.consult-home-intake-status{padding:4px 9px;border-radius:999px;color:#9b6717;background:#fff2cf;font-weight:800}
.consult-home-intake-card.is-locked .consult-home-intake-status{color:#65758b;background:#edf1f6}
.consult-home-intake-title{display:block;margin:0 0 3px;color:#243750;font-size:20px;font-weight:700;line-height:1.65}
.consult-home-intake-schedule{display:block;color:#647891;font-size:14px;line-height:1.65}
.section.guest-only{width:min(1200px,100%);margin:0 auto 64px}
.guest-onboarding-dialog{width:min(890px,calc(100% - 32px));border-radius:12px}
.guest-onboarding-dialog #modalBody{padding:28px 32px}
.guest-onboarding{text-align:center;color:#18283e}
.guest-onboarding-symbol{display:block;width:44px;height:44px;margin:0 auto 10px;object-fit:cover;object-position:left}
.guest-onboarding>h2{margin:0;font-size:25px;font-weight:600;line-height:1.5}
.guest-onboarding-flow{margin:12px 0 0;color:#697586;font-size:13px}
.guest-onboarding-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:32px;margin-top:24px;text-align:left}
.guest-onboarding-action{text-align:center}
.guest-onboarding-action h3{margin:6px 0 8px;font-size:21px}
.guest-onboarding-action>p{margin:0;color:#697586;font-size:12px;line-height:1.8}
.guest-onboarding-action form{text-align:left}
.guest-onboarding-action form button,.guest-onboarding-action>button{width:100%}
.guest-onboarding-action small{display:block;margin-top:12px;color:#697586;font-size:12px;line-height:1.8}
.guest-binding-code{margin:22px 0 16px;padding:18px;border-radius:9px;background:#f1f5fc;text-align:center}
.guest-binding-code span{display:block;color:#697586;font-size:12px}
.guest-binding-code strong{display:block;margin-top:5px;color:#2556d9;font-size:32px;letter-spacing:.16em}
.guest-onboarding-guide{padding-left:30px;border-left:1px solid #dfe5ec}
.guest-onboarding-label{margin:0;color:#315ced;font-size:13px;font-weight:600}
.guest-onboarding-guide>h3{margin:6px 0 17px;font-size:23px}
.guest-onboarding-guide ol{margin:0;padding-left:22px}
.guest-onboarding-guide li{margin-bottom:15px;padding-left:3px}
.guest-onboarding-guide li::marker{color:#315ced;font-weight:700}
.guest-onboarding-guide strong{font-size:14px}
.guest-onboarding-guide li p{margin:5px 0 0;color:#697586;font-size:12px;line-height:1.8}
.guest-onboarding-note{padding:14px 16px;border-radius:9px;background:#f1f5fc}
.guest-onboarding-note p{margin:6px 0 0;color:#697586;font-size:12px;line-height:1.8}
.guest-workbench-page[hidden]{display:none!important}
body.guest-workbench-active{color:#182438;background:#fff;font:16px/1.6 system-ui,-apple-system,"Microsoft YaHei",sans-serif}
body.guest-workbench-active>.cj-header,body.guest-workbench-active>main.wrap,body.guest-workbench-active>footer{display:none!important}
.guest-workbench-page{min-height:100vh;color:#182438;background:#fff;--workbench-blue:#2556d9;--workbench-muted:#63718a;--workbench-line:#e2e7ef}
.guest-workbench-sidebar{position:fixed;inset:0 auto 0 0;display:flex;width:228px;padding:26px 18px;border-right:1px solid var(--workbench-line);background:#fff;flex-direction:column;overflow:auto}
.guest-workbench-brand{display:flex;gap:10px;align-items:center;color:#162448;font-size:21px;font-weight:750;text-decoration:none}
.guest-workbench-brand img{width:34px;height:34px;object-fit:contain}
.guest-workbench-caption{margin:10px 0 22px 44px;color:var(--workbench-muted);font-size:14px}
.guest-workbench-nav button{display:block;width:100%;margin:3px 0;padding:10px 16px;border:0;border-radius:8px;color:#43516b;background:transparent;text-align:left;font-weight:400}
.guest-workbench-nav button:hover,.guest-workbench-nav button[aria-current=page]{color:var(--workbench-blue);background:#edf2ff}
.guest-workbench-nav button[aria-current=page]{font-weight:650}
.guest-workbench-side-actions{display:grid;margin-top:auto;padding-top:24px;gap:10px}
.guest-workbench-side-actions button{width:100%;padding:9px 17px;border-radius:8px;font-weight:400}
.guest-workbench-workspace{min-width:0;margin-left:228px;background:#f6f9fd}
.guest-workbench-topbar{display:flex;height:76px;padding:0 38px;border-bottom:1px solid var(--workbench-line);background:#fff;align-items:center;justify-content:space-between;gap:20px}
.guest-workbench-topbar strong{font-size:16px}
.guest-workbench-topbar span{color:#5377ad;font-size:14px}
.guest-workbench-content{width:100%;max-width:1440px;min-height:75vh;margin:0 auto;padding:32px 38px;background:#f6f9fd}
.guest-workbench-page .guest-workbench{width:100%}
.guest-workbench-page [data-workbench-panel][hidden]{display:none!important}
.guest-dashboard-home>h1,.guest-panel-heading h1{margin:0 0 24px;font-size:28px;line-height:1.4}
.guest-dashboard-hero{position:relative;isolation:isolate;display:flex;min-height:170px;margin-bottom:24px;padding:32px 34px;border:1px solid #dbe4f1;border-radius:18px;background:#eef5fb url('/website-assets/consult-1v1-banner-v1.webp') center 38%/cover no-repeat;flex-direction:column;justify-content:center;overflow:hidden}
.guest-dashboard-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(248,252,255,.98) 0%,rgba(248,252,255,.92) 43%,rgba(248,252,255,.5) 65%,rgba(248,252,255,.1) 100%)}
.guest-dashboard-hero span{color:#5579b7;font-size:13px;font-weight:700;letter-spacing:.08em}
.guest-dashboard-hero h2{margin:10px 0 4px;font-size:24px}
.guest-dashboard-hero p{max-width:680px;margin:0;color:var(--workbench-muted);font-size:15px}
.guest-dashboard-stats{display:grid;margin-bottom:24px;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.guest-dashboard-stats article{padding:26px;border:1px solid var(--workbench-line);border-radius:12px;background:#fff}
.guest-dashboard-stats span{display:block;font-size:15px;font-weight:550}
.guest-dashboard-stats strong{display:block;margin-top:5px;font-size:30px;line-height:1.4}
.guest-dashboard-reminders{margin:0 0 24px;padding:18px;border:1px solid #d7e2f2;border-radius:16px;background:#fff}
.guest-dashboard-reminders>header{display:flex;margin-bottom:14px;align-items:center;justify-content:space-between;gap:20px}
.guest-dashboard-reminders>header>div{display:flex;align-items:center;gap:10px}
.guest-dashboard-reminders>header h2{margin:0;color:#213750;font-size:18px;line-height:1.35}
.guest-dashboard-reminders>header span{display:inline-flex;padding:4px 9px;border-radius:999px;color:#315fe8;background:#eaf1ff;font-size:12px;font-weight:800;white-space:nowrap}
.guest-dashboard-reminders>header p{margin:0;color:#7a899d;font-size:13px;text-align:right}
.guest-dashboard-reminder-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.guest-dashboard-reminder-list .guest-order-card{min-height:188px}
.guest-dashboard-reminder-empty{margin:0;padding:24px;border:1px dashed #cbd8ea;border-radius:12px;color:#71829a;background:#fff;text-align:center;grid-column:1/-1}
.guest-order-calendar{margin:0 0 24px;padding:20px;border:1px solid #d7e2f2;border-radius:16px;background:#fff}
.guest-order-calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
.guest-order-calendar-heading>div:first-child>span{color:#5579b7;font-size:12px;font-weight:800;letter-spacing:.08em}
.guest-order-calendar-heading h2{margin:2px 0 1px;color:#213750;font-size:20px;line-height:1.4}
.guest-order-calendar-heading p{margin:0;color:#7a899d;font-size:13px}
.guest-order-calendar-toolbar{display:flex;align-items:center;gap:7px}
.guest-workbench-page .guest-order-calendar-toolbar button{display:grid;min-width:38px;height:36px;padding:0 11px;border:1px solid #d7e1ef;border-radius:9px;color:#315fe8;background:#fff;font-size:14px;font-weight:750;place-items:center}
.guest-workbench-page .guest-order-calendar-toolbar button:first-child,.guest-workbench-page .guest-order-calendar-toolbar button:last-child{font-size:23px;line-height:1}
.guest-workbench-page .guest-order-calendar-toolbar button:hover{border-color:#8ba8ea;background:#f3f7ff}
.guest-order-calendar-summary{display:flex;margin:17px 0 11px;padding-top:14px;border-top:1px solid #e7edf5;align-items:center;justify-content:space-between;gap:12px}
.guest-order-calendar-summary strong{font-size:14px}
.guest-order-calendar-summary span{padding:4px 9px;border-radius:999px;color:#315fe8;background:#edf3ff;font-size:12px;font-weight:800;white-space:nowrap}
.guest-order-calendar-legend{display:flex;margin-bottom:13px;gap:14px 18px;flex-wrap:wrap}
.guest-order-calendar-legend span{display:inline-flex;color:#66778e;font-size:12px;align-items:center;gap:6px}
.guest-order-calendar-legend i{width:10px;height:10px;border:1px solid currentColor;border-radius:3px;background:currentColor;opacity:.72}
.guest-order-calendar-legend .is-upcoming{color:#3970d8}
.guest-order-calendar-legend .is-needs-plan{color:#b67a17}
.guest-order-calendar-legend .is-in-service{color:#258264}
.guest-order-calendar-legend .is-completed{color:#7a8493}
.guest-order-calendar-scroll{border:1px solid #dce5f1;border-radius:13px;overflow-x:auto;scrollbar-color:#c5d3e5 transparent;overscroll-behavior-x:contain}
.guest-order-calendar-week{display:grid;min-width:1050px;background:#fff;grid-template-columns:repeat(7,minmax(146px,1fr))}
.guest-order-calendar-day{min-width:0;min-height:226px;border-right:1px solid #e3e9f2;background:#fff}
.guest-order-calendar-day:last-child{border-right:0}
.guest-order-calendar-day.is-today{background:#f8fbff;box-shadow:inset 0 3px 0 #315fe8}
.guest-order-calendar-day>header{display:grid;min-height:62px;padding:10px 11px;border-bottom:1px solid #e3e9f2;grid-template-columns:1fr auto;align-items:center;gap:0 7px}
.guest-order-calendar-day>header span{color:#708198;font-size:12px;font-weight:750}
.guest-order-calendar-day>header strong{color:#253a55;font-size:15px;text-align:right}
.guest-order-calendar-day>header em{grid-column:1/-1;color:#98a5b6;font-size:11px;font-style:normal}
.guest-order-calendar-day>div{display:grid;padding:10px;align-content:start;gap:8px}
.guest-order-calendar-day>div>p{margin:5px 0;padding:14px 4px;color:#a0aaba;font-size:12px;text-align:center}
.guest-workbench-page .guest-order-calendar-card{display:flex;width:100%;min-height:104px;padding:10px;border:1px solid;border-radius:10px;color:#29425f;text-align:left;box-shadow:0 3px 9px rgba(34,62,97,.04);flex-direction:column;align-items:stretch;gap:5px;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.guest-workbench-page .guest-order-calendar-card:hover{transform:translateY(-1px);box-shadow:0 7px 16px rgba(34,62,97,.1)}
.guest-order-calendar-card>span{display:flex;align-items:center;justify-content:space-between;gap:6px}
.guest-order-calendar-card>span b{font-size:13px}
.guest-order-calendar-card>span em{font-size:10px;font-style:normal;font-weight:800;white-space:nowrap}
.guest-order-calendar-card>strong{font-size:14px;line-height:1.35}
.guest-order-calendar-card>small{margin-top:auto;font-size:11px;opacity:.78}
.guest-workbench-page .guest-order-calendar-card.is-upcoming{border-color:#90afea;background:#edf4ff}
.guest-workbench-page .guest-order-calendar-card.is-needs-plan{border-color:#e6bd6f;background:#fff5df}
.guest-workbench-page .guest-order-calendar-card.is-in-service{border-color:#7ac9ad;background:#eaf8f2}
.guest-workbench-page .guest-order-calendar-card.is-completed{border-color:#c9d0da;color:#687384;background:#f2f4f7}
.guest-dashboard-status{margin:0;color:var(--workbench-muted);font-size:14px}
.guest-panel-heading{margin-bottom:24px}
.guest-panel-heading h1{margin-bottom:8px}
.guest-panel-heading p{margin:0;color:var(--workbench-muted)}
.guest-workbench-page .profile-section,.guest-workbench-page .service-section{margin:0 0 20px;padding:26px;border:1px solid var(--workbench-line);border-radius:12px;background:#fff}
.guest-workbench-page .profile-section.profile-section-flush{padding:0;border:0;background:transparent}
.guest-workbench-page .profile-section h3,.guest-workbench-page .service-section h3,.guest-workbench-page .order-card h3{font-size:17px}
.guest-workbench-page .field{margin:0 0 20px;gap:0}
.guest-workbench-page .field label,.guest-workbench-page .field>span{display:block;margin-bottom:7px;font-size:15px;font-weight:550}
.guest-workbench-page .field input,.guest-workbench-page .field select,.guest-workbench-page .field textarea{padding:10px 12px;border-color:#cbd4e2;border-radius:8px}
.guest-workbench-page .field textarea{min-height:115px;overflow-y:hidden;resize:none}
.guest-workbench-page .field small,.guest-workbench-page .profile-section small{display:block;margin-top:7px;color:var(--workbench-muted);font-size:14px}
.guest-workbench-page button{padding:9px 17px;border-color:var(--workbench-line);border-radius:8px;font-weight:400}
.guest-workbench-page .guest-workbench-nav button{padding:10px 16px}
.guest-workbench-page .primary{background:var(--workbench-blue);border-color:var(--workbench-blue)}
.guest-workbench-page .booking-note{padding:16px 20px;border-radius:5px;border-left:4px solid #e7a228;background:#fff8e9}
.guest-workbench-page .profile-information-block{margin:20px 0 0;padding:22px;border:1px solid #d8e3f2;border-radius:10px;background:#fff}
.guest-workbench-page .profile-information-block.private-profile{margin:20px 0;padding:22px;border:1px solid #eadfca;border-radius:10px;background:#fff}
.profile-block-heading{display:flex;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid #e1e8f2;align-items:flex-start;gap:14px}
.profile-block-heading>.status-pill{margin-left:auto;align-self:flex-start;white-space:nowrap}
.profile-block-heading h4{margin:0 0 3px;font-size:18px}
.profile-block-heading p{margin:0;color:var(--workbench-muted);font-size:14px}
.profile-block-heading em{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:999px;color:#9a641a;background:#fff0cf;font-size:12px;font-style:normal;font-weight:600;vertical-align:2px}
.profile-block-index{display:inline-flex;min-width:68px;padding:4px 10px;border-radius:999px;color:#235ed6;background:#e9f0ff;font-size:13px;font-weight:650;justify-content:center}
.profile-block-index.private{color:#9a641a;background:#fff0cf}
.guest-workbench-page .profile-information-block>.profile-grid{gap:0 20px}
.private-profile-loading{padding:32px;color:var(--workbench-muted);text-align:center}
.private-profile-error{padding:18px;border-radius:8px;color:#a13c32;background:#fff0ed}
.private-profile-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:28px}
.private-profile-left,.private-profile-right{min-width:0}
.private-profile-left,.public-profile-left{align-self:start}
.private-profile-right .field{display:block;height:auto}
.private-profile-right textarea{min-height:115px}
.private-photo-uploader{display:flex;min-height:118px;padding:12px;border:1px solid #d8deea;border-radius:9px;background:#fff;align-items:center;gap:16px}
.private-photo-preview{display:grid;width:92px;height:106px;border-radius:8px;color:#8a96a9;background:#edf1f7;font-size:13px;overflow:hidden;place-items:center;flex:0 0 92px}
.private-photo-preview img{width:100%;height:100%;object-fit:cover}
.private-id-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.private-id-row .field{min-width:0}
.public-profile-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:28px}
.public-profile-column{min-width:0}
.public-avatar-row{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(220px,1.2fr);gap:18px}
.public-profile-layout .field{min-width:0}
.public-profile-left #profileExpertise{min-height:126px}
.public-profile-right .field{display:block;height:auto}
.public-profile-right textarea{min-height:115px}
.public-avatar-picker{display:flex;min-height:106px;align-items:center;gap:13px}
.public-avatar-preview{display:grid;width:96px;height:96px;border:3px solid #fff;border-radius:50%;background:#e9f0ff;box-shadow:0 0 0 1px #cbd9ec,0 8px 22px rgba(45,86,145,.12);flex:0 0 96px;overflow:hidden;place-items:center}
.public-avatar-preview img{width:100%;height:100%;object-fit:cover}
.public-avatar-preview span{color:#2d62cf;font-size:32px;font-weight:700}
.public-avatar-controls{min-width:0}
.public-avatar-controls button{padding:8px 12px;color:#235ed6;background:#fff;white-space:nowrap}
.public-avatar-controls p,.voice-mode-help{margin:7px 0 0;color:var(--workbench-muted);font-size:13px;line-height:1.6}
.guest-workbench-page .voice-mode-help{display:block;padding:10px 12px;border-radius:7px;background:#eef4ff}
.guest-approved-profile{display:grid;margin-top:20px;gap:20px}
.guest-approved-profile[hidden]{display:none}
.guest-approved-loading{margin-top:20px;padding:34px;border:1px solid #d8e3f2;border-radius:12px;color:var(--workbench-muted);background:#fff;text-align:center}
.guest-approved-section{padding:24px;border:1px solid #d8e3f2;border-radius:12px;background:#fff}
.guest-approved-section.guest-approved-private{border-color:#e2e8f0;background:#fff}
.guest-approved-section-head{display:flex;margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid #e1e8f2;align-items:flex-start;justify-content:space-between;gap:18px}
.guest-approved-title{display:flex;align-items:flex-start;gap:14px}
.guest-approved-title>span{display:inline-flex;min-width:68px;padding:4px 10px;border-radius:999px;color:#235ed6;background:#e9f0ff;font-size:13px;font-weight:650;justify-content:center}
.guest-approved-title.private>span{color:#9a641a;background:#fff0cf}
.guest-approved-title h4{margin:0 0 3px;font-size:18px}
.guest-approved-title p{margin:0;color:var(--workbench-muted);font-size:14px}
.guest-approved-title em{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:999px;color:#9a641a;background:#fff0cf;font-size:12px;font-style:normal;font-weight:600;vertical-align:2px}
.guest-approved-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.guest-approved-actions button{padding:7px 16px;border:0;border-radius:999px;color:#2762d6;background:#eaf1ff;font-weight:600}
.guest-profile-view-toggle{display:flex;margin:20px 0 16px;padding:14px 16px;border:1px solid #b9cef5;border-left:4px solid var(--workbench-blue);border-radius:10px;background:#eef4ff;box-shadow:0 8px 22px rgba(49,95,232,.08);align-items:center;gap:14px}
.guest-profile-view-toggle[hidden]{display:none}
.guest-profile-view-toggle button{padding:10px 18px;border-color:var(--workbench-blue);color:#fff;background:var(--workbench-blue);font-weight:650;white-space:nowrap;box-shadow:0 6px 14px rgba(49,95,232,.2)}
.guest-profile-view-toggle button:hover{border-color:#244fc8;background:#244fc8}
.guest-profile-view-toggle span{color:#526784;font-size:14px}
.guest-approved-public-grid,.guest-approved-private-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:30px}
.guest-approved-public-left,.guest-approved-documents{min-width:0}
.guest-approved-person,.guest-approved-identity{display:flex;align-items:center;gap:20px;min-width:0}
.guest-approved-person>div,.guest-approved-identity>div{min-width:0}
.guest-approved-person h3,.guest-approved-identity h3{margin:0 0 7px;font-size:24px;line-height:1.4;overflow-wrap:anywhere}
.guest-approved-person p,.guest-approved-identity p{margin:0;color:#637189;overflow-wrap:anywhere}
.guest-approved-identity{margin-bottom:26px}
.guest-approved-identity p{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.guest-approved-identity i{color:#a5afbd;font-style:normal}
.guest-approved-image{display:grid;overflow:hidden;place-items:center;flex-shrink:0;text-decoration:none}
.guest-approved-image img{width:100%;height:100%;object-fit:cover}
.guest-approved-avatar{width:100px;height:100px;border:3px solid #fff;border-radius:50%;background:#eaf1ff;box-shadow:0 0 0 1px #cbd9ec,0 8px 22px rgba(45,86,145,.12)}
.guest-approved-real-photo{width:96px;height:112px;border:1px solid #d8e1ee;border-radius:10px;background:#eef2f7}
.guest-approved-image-empty{padding:10px;color:#7d899b;font-size:13px;text-align:center}
.guest-approved-detail{margin-top:20px;padding:16px 18px;border-radius:10px;background:#fff}
.guest-approved-section h5{margin:0 0 9px;font-size:15px}
.guest-approved-detail p,.guest-approved-narrative p{margin:0;color:#52647b;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}
.guest-approved-narrative{min-height:100%;padding:20px;border-left:1px solid #e4eaf2;background:#fff}
.guest-approved-proof-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.guest-approved-proof{display:flex;min-height:178px;padding:10px;border:1px solid #dce4ef;border-radius:10px;background:#f8fafc;flex-direction:column;gap:8px;text-decoration:none}
.guest-approved-proof img{display:block;width:100%;height:138px;border-radius:6px;object-fit:contain;background:#fff}
.guest-approved-proof span{color:#597295;font-size:13px}
.guest-approved-proof-empty{align-items:center;justify-content:center}
.guest-approved-materials{margin-top:20px}
.guest-approved-material-list{display:flex;gap:8px;flex-wrap:wrap}
.guest-approved-material-list a,.guest-approved-material-list span{display:inline-flex;padding:7px 11px;border:1px solid #d7e1ee;border-radius:8px;color:#3868ba;background:#f7faff;font-size:13px;text-decoration:none}
.guest-approved-empty{margin:0;color:#8b96a7}
.guest-approved-career{border:1px solid #e4eaf2;border-radius:10px}
@media(max-width:900px){.guest-approved-public-grid,.guest-approved-private-grid{grid-template-columns:1fr}.guest-approved-narrative{border-left:0;border-top:1px solid #e4eaf2}.guest-approved-career{border:1px solid #e4eaf2}}
@media(max-width:620px){.guest-approved-section{padding:18px}.guest-approved-section-head,.guest-approved-title{display:grid}.guest-approved-actions{justify-content:space-between}.guest-approved-proof-grid{grid-template-columns:1fr}.guest-approved-person,.guest-approved-identity{align-items:flex-start}.guest-approved-avatar{width:82px;height:82px}.guest-approved-real-photo{width:82px;height:96px}.guest-profile-view-toggle{align-items:flex-start;flex-direction:column}}
dialog.avatar-crop-dialog{width:min(600px,calc(100% - 30px))}
.avatar-cropper{text-align:center}
.avatar-cropper h2{margin:6px 0 4px}
.avatar-cropper>p{margin:0 auto 20px;max-width:470px;color:var(--muted)}
.avatar-crop-stage{position:relative;width:min(390px,100%);margin:auto;border-radius:50%;background:#e8eef7;box-shadow:0 0 0 8px #f0f4fa,0 0 0 10px #bdd0e8;overflow:hidden}
.avatar-crop-stage canvas{display:block;width:100%;height:auto;border-radius:50%;cursor:grab;touch-action:none}
.avatar-crop-stage canvas:active{cursor:grabbing}
.avatar-crop-zoom{display:grid;max-width:390px;margin:25px auto 0;color:var(--ink);font-weight:650;grid-template-columns:auto 1fr;align-items:center;gap:14px;text-align:left}
.avatar-crop-zoom input{width:100%;accent-color:var(--blue)}
.avatar-crop-actions{display:flex;margin-top:22px;justify-content:center;gap:10px}
.guest-rules-card,.profile-service-settings{margin-bottom:20px;padding:26px;border:1px solid var(--workbench-line);border-radius:12px;background:#fff}
.guest-rules-card h2,.profile-service-settings h2{margin:0;font-size:20px}
.guest-rules-list{margin:18px 0;padding-left:24px;color:#53647b}
.guest-rules-list li{margin:9px 0;padding-left:5px}
.guest-rules-actions,.service-settings-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}
.guest-rules-actions{padding-top:18px;border-top:1px solid #e6ebf2}
.rules-accepted,.rules-pending,.service-settings-heading>span{display:inline-flex;padding:4px 10px;border-radius:999px;font-size:13px;font-weight:650;white-space:nowrap}
.rules-accepted{color:#147654;background:#e5f7ef}
.rules-pending{color:#9a641a;background:#fff0cf}
.service-settings-heading{margin-bottom:20px}
.service-settings-heading p{margin:4px 0 0;color:var(--workbench-muted);font-size:14px}
.service-settings-heading>span{color:#235ed6;background:#e9f0ff}
.profile-service-settings .profile-actions{padding-top:18px;border-top:1px solid #e6ebf2}
.profile-service-readonly{gap:12px;background:#f9fbff}
.profile-service-readonly>b{font-size:16px}
.profile-service-readonly>span{display:flex;padding-top:10px;border-top:1px solid #e5ebf3;align-items:center;justify-content:space-between;gap:12px}
.profile-service-readonly small{color:var(--workbench-muted);font-size:13px}
.profile-service-readonly strong{color:var(--ink);font-size:16px}
.profile-services-empty{grid-column:1/-1;margin:0;padding:22px;border:1px dashed #cbd8e8;border-radius:10px;color:var(--workbench-muted);background:#f9fbff;text-align:center}
.profile-review-lock{margin:0 0 18px;padding:13px 16px;border:1px solid #efd69b;border-radius:8px;color:#75531e;background:#fff7e5;font-weight:650}
.profile-review-locked input:disabled,.profile-review-locked textarea:disabled,.profile-review-locked select:disabled{color:#39465a;background:#f2f4f7;opacity:1;-webkit-text-fill-color:#39465a}
.profile-review-locked .public-avatar-controls button:disabled{color:#7a8799;background:#f2f4f7}
.private-file-status,.private-file-list{display:flex;margin-top:8px;gap:8px;color:#32654f;font-size:13px;flex-wrap:wrap;align-items:center}
.private-file-status span,.private-file-list span{padding:5px 8px;border-radius:6px;background:#edf8f2}
.private-file-status a,.private-file-list a{margin-left:5px;color:#235ed6;font-weight:650;text-decoration:none}
.private-file-status a:hover,.private-file-list a:hover{text-decoration:underline}
.guest-workbench-page .order-list{margin-top:14px}
.guest-workbench-page .order-card{padding:22px;border-color:var(--workbench-line);border-radius:10px}
@media(max-width:720px){
  .consult-banner{height:188px;min-height:188px;margin:20px auto 32px;padding:18px 20px;background-position:60% 40%}
  .consult-banner:before{background:linear-gradient(90deg,rgba(248,252,255,.97) 0%,rgba(248,252,255,.88) 52%,rgba(248,252,255,.28) 100%)}
  .consult-banner h1{max-width:72%;font-size:30px;letter-spacing:-.5px}
}
@media(max-width:900px){.consult-home-hub-grid{grid-template-columns:1fr}.consult-home-reminder-main,.consult-home-next-order{grid-column:auto}}
@media(max-width:680px){.consult-home-hub{margin:-12px auto 24px}.consult-home-hub-shell{padding:11px;border-radius:16px}.consult-home-hub-head{align-items:flex-start;flex-direction:column;gap:4px}.consult-home-reminder{min-height:0;padding:16px}.consult-home-reminder h3{font-size:18px}}
@media(max-width:900px){
  .guest-workbench-sidebar{position:static;width:100%;padding:15px}
  .guest-workbench-brand{font-size:18px}
  .guest-workbench-caption{display:none}
  .guest-workbench-nav{display:flex;margin-top:14px;overflow-x:auto;gap:4px;scrollbar-width:none}
  .guest-workbench-nav::-webkit-scrollbar{display:none}
  .guest-workbench-nav button{width:auto;flex:0 0 auto;white-space:nowrap}
  .guest-workbench-side-actions{display:flex;margin-top:14px;padding-top:0}
  .guest-workbench-side-actions button{width:auto}
  .guest-workbench-workspace{margin:0}
  .guest-workbench-topbar{height:60px;padding:0 20px}
  .guest-workbench-content{padding:24px 18px}
  .guest-dashboard-reminder-list{grid-template-columns:1fr}
  .guest-order-calendar-heading{align-items:flex-start;flex-direction:column}
  .guest-workbench-page .profile-section,.guest-workbench-page .service-section{padding:20px}
}
@media(max-width:680px){
  .guest-onboarding-dialog #modalBody{padding:28px 20px 22px}
  .guest-onboarding-layout{grid-template-columns:1fr;gap:22px}
  .guest-onboarding-guide{padding:20px 0 0;border-top:1px solid #dfe5ec;border-left:0}
  .guest-dashboard-stats{grid-template-columns:1fr;gap:14px}
  .guest-dashboard-hero{padding:24px 20px}
  .guest-dashboard-reminders>header{align-items:flex-start;flex-direction:column;gap:5px}
  .guest-dashboard-reminders>header p{text-align:left}
  .guest-order-calendar{padding:14px}
  .guest-order-calendar-summary{align-items:flex-start;flex-direction:column;gap:7px}
  .guest-order-calendar-week{min-width:980px}
  .public-profile-layout,.public-avatar-row,.private-profile-layout,.private-id-row{grid-template-columns:1fr;gap:0}
  .public-profile-right textarea,.private-profile-right textarea{min-height:115px}
  .public-avatar-picker{align-items:flex-start;flex-direction:column}
  .avatar-crop-stage{width:min(330px,100%)}
  .profile-block-heading,.guest-rules-actions,.service-settings-heading{align-items:flex-start;flex-direction:column}
  .public-information>.profile-block-heading{flex-direction:row;flex-wrap:wrap}
  .guest-workbench-page .profile-information-block,.guest-workbench-page .profile-information-block.private-profile,.guest-rules-card,.profile-service-settings{padding:18px}
}

/* Public guest cards: centered identity, clear hierarchy and whole-card interaction. */
.guest-card{position:relative;min-height:420px;cursor:pointer;outline:none;transform:translateZ(0);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.guest-card:hover{border-color:#b8c9e4;box-shadow:0 18px 42px rgba(25,55,88,.12);transform:translateY(-3px) scale(1.018)}
.guest-card:focus-visible{border-color:#7096ee;box-shadow:0 0 0 4px rgba(49,95,232,.16),0 18px 42px rgba(25,55,88,.12);transform:translateY(-2px) scale(1.012)}
.guest-card-head{display:grid;justify-items:center;text-align:center}
.guest-avatar-wrap{position:relative;display:inline-flex;width:max-content;align-items:center;justify-content:center}
.guest-card .avatar{width:96px;height:96px;font-size:34px;box-shadow:0 8px 22px rgba(24,55,94,.12)}
.guest-avatar-verified{position:absolute;right:-2px;bottom:3px;display:flex;width:27px;height:27px;border:3px solid #fff;border-radius:50%;color:#fff;background:#22a06b;box-shadow:0 4px 10px rgba(24,94,68,.22);font-size:14px;font-weight:900;line-height:1;align-items:center;justify-content:center}
.guest-card h3{margin:13px 0 0;line-height:1.35;text-align:center}
.guest-card .headline{display:flex;max-width:100%;overflow:hidden;text-align:center;align-items:center;justify-content:center}
.guest-card .headline span{display:-webkit-box;width:100%;max-width:100%;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}
.guest-card .bio{height:72px;min-height:72px;max-height:72px;margin:20px 0;font-size:14px;line-height:24px;-webkit-line-clamp:3;line-clamp:3}
.guest-card .card-foot{padding-top:16px;border-top:1px solid #edf1f6;align-items:flex-end}
.guest-card-action{text-align:right}
.guest-card .price{margin-bottom:4px;font-size:20px}
.card-link{display:inline-flex;color:#315fe8;font-size:14px;font-weight:800;align-items:center;gap:4px}
.guest-next-slot{display:block;margin-top:3px;color:var(--muted)}
.guest-detail .guest-top{align-items:center}
.guest-detail .detail-avatar .avatar{width:76px;height:76px;font-size:28px}
.guest-detail .detail-avatar .guest-avatar-verified{width:25px;height:25px;font-size:13px}
.guest-detail-section{margin:24px 0}
.guest-detail-section h3{margin:0 0 10px;font-size:17px}
.guest-detail-section .tags{margin:0}
.guest-detail .detail-bio{margin:0;color:#445a73;white-space:pre-wrap}
.guest-booking-unavailable{margin-top:24px}
@media(hover:none){.guest-card:hover{border-color:var(--line);box-shadow:0 10px 28px rgba(25,55,88,.05);transform:none}}
@media(prefers-reduced-motion:reduce){.guest-card{transition:none}.guest-card:hover,.guest-card:focus-visible{transform:none}}
@media(max-width:720px){.guest-card{min-height:0}.guest-card .avatar{width:88px;height:88px}.guest-card .headline{min-height:0}.guest-card .bio{min-height:0}}

/* Public guest card layout: up to four columns with a vertical golden ratio. */
.guest-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.guest-card{width:100%;min-height:0;aspect-ratio:1 / 1.618}
.guest-card-head{width:100%}
.guest-card .headline{width:100%;height:64px;min-height:64px;max-height:64px;margin-top:20px;padding:8px 12px;border:1px solid #d9e5f5;border-radius:10px;color:#526b89;background:linear-gradient(135deg,#f2f6fd,#eaf1fb);font-size:14px;line-height:22px}
@media(max-width:1180px){.guest-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.guest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.guest-grid{grid-template-columns:1fr}.guest-card .headline{height:64px;min-height:64px;max-height:64px}.guest-card .bio{height:72px;min-height:72px;max-height:72px}}

/* Guest details use a normal in-page view instead of the modal overlay. */
#consultMain[hidden],.guest-detail-page[hidden],.my-orders-page[hidden]{display:none}
.guest-detail-page{padding-top:34px;padding-bottom:78px}
.guest-detail-toolbar{width:min(1120px,100%);margin:0 auto 18px}
.guest-detail-toolbar button{padding:10px 0;border:0;color:#315fe8;background:transparent;font-weight:800}
.guest-detail-toolbar button:hover{border-color:transparent;color:#234ec9}
.guest-detail-surface{width:min(1120px,100%);margin:0 auto;padding:40px 44px;border:1px solid #dbe5f1;border-radius:20px;background:#fff}
.guest-detail-page .guest-top{padding-bottom:28px;border-bottom:1px solid #e8eef6;align-items:center}
.guest-detail-page .guest-detail-section{margin:30px 0}
.guest-detail-page .guest-detail-section h3{font-size:20px}
.guest-detail-page .detail-summary{margin:7px 0 0;font-size:16px}
.guest-detail-page .detail-bio{font-size:16px;line-height:1.85}
.guest-detail-page .service-list{margin-top:16px}
.guest-detail-page .booking-note{margin-top:22px}
@media(max-width:720px){.guest-detail-page{padding-top:22px;padding-bottom:48px}.guest-detail-surface{padding:26px 20px;border-radius:16px}.guest-detail-page .guest-top{align-items:flex-start}.guest-detail-page .detail-summary{font-size:14px}}

/* Student consultation orders use a normal in-page view instead of a floating dialog. */
.my-orders-page{width:min(1180px,calc(100% - 32px));max-width:1180px;padding:30px 0 78px}
.my-orders-page.is-detail-view{width:min(1500px,calc(100% - 32px));max-width:1500px}
.my-orders-toolbar{margin:0 0 18px}
.my-orders-toolbar button{padding:10px 0;border:0;color:#315fe8;background:transparent;font-weight:800}
.my-orders-toolbar button:hover{border-color:transparent;color:#234ec9}
.my-orders-heading{padding:0 0 24px;border-bottom:1px solid #dfe7f1}
.my-orders-heading>span{display:block;margin-bottom:5px;color:#315fe8;font-size:13px;font-weight:850;letter-spacing:.08em}
.my-orders-heading h1{margin:0;color:#142b45;font-size:36px;line-height:1.3}
.my-orders-heading p{margin:9px 0 0;color:#6f8098}
#myOrdersBody>.order-list{display:grid;margin-top:24px;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
#myOrdersBody>.order-list>.empty{margin:0;grid-column:1/-1}
#myOrdersBody>.user-order-groups{grid-template-columns:minmax(0,1fr);gap:30px}
#myOrdersBody .user-order-status-group{display:grid;min-width:0;gap:14px}
#myOrdersBody .user-order-status-list{display:grid;grid-template-columns:repeat(2,minmax(0,min(581px,calc(50vw - 25px))));gap:18px}
#myOrdersBody .user-order-status-list>.empty{margin:0;grid-column:1/-1}
.user-order-card{display:flex;min-height:188px;padding:22px;border-color:#d8e2ef;border-radius:16px;background:#fff;cursor:pointer;outline:0;flex-direction:column;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease}
.user-order-card:hover{border-color:#94afe7;background:#fbfdff}
.user-order-card:focus-visible{border-color:#315fe8;box-shadow:0 0 0 4px rgba(49,95,232,.14)}
.user-order-card.is-expired{background:#fafbfd}
.user-order-card.is-expired:hover{background:#f7f9fc}
.user-order-card.consult-home-intake-card{border-color:#f1d69b;background:#fff9eb}
.user-order-card.consult-home-intake-card:hover{border-color:#d9ae4d;background:#fff8e5;box-shadow:0 7px 18px rgba(135,96,20,.12)}
.user-order-card.consult-home-intake-card:focus-visible{border-color:#d9ae4d;box-shadow:0 0 0 4px rgba(217,174,77,.2)}
.user-order-card.consult-home-intake-card.is-locked{border-color:#d9e0ea;background:#f6f8fb}
.user-order-card.consult-home-intake-card.is-locked:hover{border-color:#aebed2;background:#f3f6fa;box-shadow:0 7px 18px rgba(64,85,114,.1)}
.user-order-detail-columns{display:grid;margin-top:24px;grid-template-columns:minmax(0,1fr) 32px var(--user-order-side-width,430px);gap:0;align-items:start}
.user-order-detail-columns.is-stacked{grid-template-columns:minmax(0,1fr);gap:20px}
.user-order-detail-main{position:relative;min-width:0;padding:30px;border:1px solid #dbe5f1;border-radius:20px;background:#fff;overflow:hidden}
.user-order-detail-tools{display:grid;min-width:0;gap:20px}
.user-order-detail-heading{padding-bottom:22px;border-bottom:1px solid #e4eaf2}
.user-order-detail-heading>div{display:flex;margin-bottom:9px;color:#8795a8;font-size:12px;align-items:center;gap:10px}
.user-order-detail-heading h2{margin:0;color:#213750;font-size:27px;line-height:1.3}
.user-order-detail-heading p{margin:7px 0 0;color:#718198;font-size:14px}
.user-order-detail-overview{display:grid;margin:22px 0 18px;padding:18px;border:1px solid #dce5f1;border-radius:12px;background:#f8faff;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.user-order-detail-overview div{min-width:0}
.user-order-detail-overview span{display:block;margin-bottom:3px;color:#8290a3;font-size:12px}
.user-order-detail-overview strong{display:block;color:#293d57;font-size:14px;overflow-wrap:anywhere}
.user-order-detail-main .order-intake-summary{margin:0;padding:20px;border:1px solid #e0e7f0;border-radius:12px;background:#fff}
.user-order-detail-main .order-intake-summary>b{margin-bottom:14px;font-size:17px}
.user-order-detail-main .order-intake-summary p{margin:10px 0;grid-template-columns:90px minmax(0,1fr);line-height:1.75}
.user-order-detail-main>.order-actions{margin-top:20px;padding-top:18px;border-top:1px solid #e4eaf2}
.user-order-entry-card .order-actions{margin:0;padding:0;border:0}
.user-order-entry-card .order-actions button{width:100%;min-height:44px}
.order-dispute-help{display:inline-flex;width:26px;height:26px;padding:0;border-color:#d8e0ea;border-radius:50%;color:#98a5b7;background:transparent;font-size:13px;font-weight:750;line-height:1;align-items:center;justify-content:center;opacity:.72;box-shadow:none}
.order-dispute-help:hover,.order-dispute-help:focus-visible{border-color:#aebccd;color:#65758b;background:#f8fafc;opacity:1}
.user-order-note-card textarea{display:block;width:100%;height:auto;min-height:160px;padding:13px;border:1px solid #cbd7e7;border-radius:9px;background:#fff;color:#2e435e;font:inherit;line-height:1.75;overflow-y:hidden;resize:none}
.user-order-note-card textarea:focus{border-color:#5b83e9;outline:3px solid rgba(49,95,232,.1)}
.user-order-note-actions{display:flex;margin-top:11px;color:#8794a6;font-size:12px;align-items:center;justify-content:space-between;gap:12px}
.user-order-note-actions button,.user-order-review-actions button{display:inline-flex;width:92px;height:44px;padding:0;border-color:#315fe8;color:#fff;background:#315fe8;font-weight:750;align-items:center;justify-content:center}
.user-order-note-actions button:disabled{opacity:.62;cursor:wait}
.user-order-review-rating{display:flex;margin:4px 0 16px;min-height:40px;color:#30445f;align-items:center;gap:12px}
.user-order-review-rating>strong{color:#718198;font-size:14px;white-space:nowrap}
.user-order-review-stars{display:flex;align-items:center;gap:3px}
.user-order-review-star{width:auto;min-width:0;min-height:0;padding:0 2px;border:0;border-radius:5px;color:#c9d1dd;background:transparent;font-size:30px;line-height:1;cursor:pointer;box-shadow:none;transition:color .15s ease,transform .15s ease}
.user-order-review-star.is-selected{color:#ffbd2e}
.user-order-review-star:hover{color:#f0ad1b;transform:translateY(-1px)}
.user-order-review-star:focus-visible{outline:3px solid rgba(49,95,232,.18);outline-offset:2px}
.user-order-review-card textarea{display:block;width:100%;min-height:140px;padding:13px;border:1px solid #cbd7e7;border-radius:9px;background:#fff;color:#2e435e;font:inherit;line-height:1.75;resize:vertical}
.user-order-review-card textarea:focus{border-color:#5b83e9;outline:3px solid rgba(49,95,232,.1)}
.user-order-review-card.is-submitted textarea{background:#f8faff;resize:none;cursor:default}
.user-order-review-card.is-submitted textarea:focus{border-color:#cbd7e7;outline:0}
.user-order-review-card.is-submitted .user-order-review-star{cursor:default;pointer-events:none}
.user-order-review-actions{display:flex;margin-top:12px;align-items:center;justify-content:flex-end;gap:12px}
.user-order-review-actions button:disabled{opacity:.62;cursor:wait}
@media(max-width:900px){#myOrdersBody>.order-list,#myOrdersBody .user-order-status-list{grid-template-columns:1fr}.user-order-detail-columns{grid-template-columns:minmax(0,1fr);gap:20px}.user-order-detail-tools{grid-template-columns:1fr}}
@media(max-width:720px){.my-orders-page{padding:22px 0 48px}.my-orders-heading h1{font-size:30px}.user-order-card{min-height:0;padding:20px 16px}.user-order-detail-main{padding:22px 16px;border-radius:15px}.user-order-detail-overview{grid-template-columns:1fr}.user-order-detail-main .order-intake-summary p{display:block}.user-order-detail-main .order-intake-summary p span{display:block;margin-bottom:2px}.user-order-note-actions,.user-order-review-actions{align-items:flex-start;flex-direction:column}.user-order-note-actions button,.user-order-review-actions button{width:100%}.user-order-review-rating{align-items:flex-start;flex-wrap:wrap}.user-order-review-star{font-size:27px}}

/* Classroom-inspired guest detail page: overview, schedule, biography and real reviews. */
.guest-detail-page{width:min(1200px,calc(100% - 32px));max-width:1200px;padding:30px 0 72px}
.guest-detail-toolbar{width:100%;max-width:none;margin:0 0 18px}
.guest-detail-layout{display:grid;gap:24px}
.guest-detail-overview,.guest-availability-panel,.guest-bio-card,.guest-reviews-card{border:1px solid #dce6f1;border-radius:18px;background:#fff;box-shadow:0 6px 22px rgba(29,58,91,.025)}
.guest-detail-overview{display:grid;padding:30px;grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);gap:34px}
.guest-detail-profile{display:flex;min-width:0;flex-direction:column;justify-content:center}
.guest-profile-identity{display:flex;min-width:0;align-items:center;gap:22px}
.guest-detail-page .detail-avatar .avatar{width:104px;height:104px;font-size:36px;box-shadow:0 10px 28px rgba(30,66,108,.12)}
.guest-detail-page .detail-avatar .guest-avatar-verified{right:1px;bottom:4px;width:29px;height:29px;font-size:15px}
.guest-profile-identity>div{min-width:0}
.guest-detail-kicker{margin:0 0 5px;color:#315fe8;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.guest-profile-identity h1{margin:0;color:#13243b;font-size:34px;line-height:1.2}
.guest-detail-headline{margin:10px 0 0;color:#657891;font-size:16px;line-height:1.8}
.guest-detail-expertise{margin-top:26px;padding-top:23px;border-top:1px solid #e8eef5}
.guest-detail-expertise h2{margin:0 0 12px;font-size:18px}
.guest-detail-expertise .tags{margin:0;gap:9px}
.guest-detail-expertise .tags span{padding:8px 12px;border:0;border-radius:9px;color:#506984;background:#f0f4fa;font-size:13px;line-height:1.45}
.guest-service-panel{align-self:stretch;padding:24px;border:1px solid #d9e5f5;border-radius:15px;background:linear-gradient(145deg,#f8fbff,#f0f5fd)}
.guest-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.guest-section-heading>div>span{display:block;margin-bottom:4px;color:#315fe8;font-size:12px;font-weight:800;letter-spacing:.08em}
.guest-section-heading h2{margin:0;color:#17283f;font-size:22px;line-height:1.35}
.guest-section-heading>em{padding:5px 10px;border-radius:999px;color:#157a57;background:#e7f8f0;font-size:12px;font-style:normal;font-weight:800;white-space:nowrap}
.guest-section-heading>em.muted-state{color:#8a641f;background:#fff3d8}
.guest-section-heading>p{margin:6px 0 0;color:#7b8ba1;font-size:13px;text-align:right}
.guest-service-options{display:grid;margin-top:20px;gap:10px}
.guest-service-option{position:relative;display:grid;padding:14px 15px;border:1px solid #d8e2ef;border-radius:11px;background:#fff;cursor:pointer;grid-template-columns:1fr auto;gap:2px 12px;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.guest-service-option:hover{border-color:#99b5ed;transform:translateY(-1px)}
.guest-service-option:has(input:checked){border-color:#315fe8;box-shadow:0 0 0 3px rgba(49,95,232,.1)}
.guest-service-option:has(input:disabled){cursor:default;opacity:.7;transform:none}
.guest-service-option input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.guest-service-option span{color:#263c57;font-size:15px;font-weight:800}
.guest-service-option strong{color:#2458dd;font-size:16px}
.guest-service-option small{grid-column:1/-1;color:#8390a3;font-size:12px}
.guest-service-option:focus-within{outline:3px solid rgba(49,95,232,.16);outline-offset:2px}
.guest-service-empty{margin:20px 0 0;padding:22px;border:1px dashed #cbd8e7;border-radius:10px;color:#718198;background:#fff;text-align:center}
.guest-service-panel>p{margin:16px 0 0;color:#718198;font-size:12px;line-height:1.65}
.guest-availability-panel{padding:30px}
.guest-availability-panel>.guest-section-heading{padding-bottom:22px;border-bottom:1px solid #e8eef5}
.guest-booking-form{margin-top:24px}
.guest-availability-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:30px}
.guest-slot-column{min-width:0}
.guest-slot-groups{display:grid;max-height:430px;padding-right:8px;overflow:auto;gap:0;scrollbar-width:thin;scrollbar-color:#bfd0e7 transparent}
.guest-slot-choice-note{display:flex;margin:0 0 10px;padding:10px 12px;border-radius:9px;color:#536a86;background:#f2f6fc;align-items:center;justify-content:space-between;gap:12px;font-size:12px}
.guest-slot-choice-note b{color:#234fc4;font-size:13px}
.guest-slot-day{display:grid;padding:17px 0;border-bottom:1px solid #edf1f6;grid-template-columns:132px 1fr;gap:18px}
.guest-slot-day:first-child{padding-top:0}
.guest-slot-day:last-child{border-bottom:0}
.guest-slot-day h3{margin:8px 0 0;color:#344b67;font-size:14px;line-height:1.5}
.guest-slot-day>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.guest-slot-day button{display:flex;min-width:0;padding:10px 12px;border:1px solid #d8e2ef;border-radius:10px;color:#425a76;background:#f9fbfe;flex-direction:column;align-items:flex-start;gap:1px}
.guest-slot-day button:hover{border-color:#88a8e8;background:#f2f6ff}
.guest-slot-day button[aria-pressed=true]{border-color:#315fe8;color:#1f51d6;background:#eaf0ff;box-shadow:0 0 0 2px rgba(49,95,232,.08)}
.guest-slot-day button.is-unavailable{cursor:not-allowed;opacity:1;box-shadow:none}
.guest-slot-day button.is-sold_out{border-color:#efc4bd;color:#a23d34;background:#fff0ed}
.guest-slot-day button.is-sold_out span{color:#b45147;font-weight:750}
.guest-slot-day button.is-locked{border-color:#ead7a7;color:#86631f;background:#fff8e6}
.guest-slot-day button.is-locked span{color:#987329;font-weight:750}
.guest-slot-day button.is-unavailable:hover{transform:none}
.guest-slot-day button strong{font-size:14px}
.guest-slot-day button span{color:#8090a5;font-size:11px}
.guest-slot-day button[aria-pressed=true] span{color:#5775b8}
.guest-slot-summary{min-height:22px;margin:14px 0 0;color:#2556d9;font-size:13px;font-weight:700}
.guest-slots-empty,.guest-booking-unavailable-page{padding:30px;border:1px dashed #cbd8e7;border-radius:12px;color:#6d7f96;background:#f8fafd;text-align:center}
.guest-booking-unavailable-page{margin-top:24px}
.guest-booking-side{display:flex;min-width:0;padding-left:28px;border-left:1px solid #e7edf5;flex-direction:column}
.guest-booking-side>label{margin-bottom:8px;color:#233751;font-size:15px;font-weight:800}
.guest-booking-side textarea{width:100%;min-height:120px;padding:12px 14px;border:1px solid #ccd8e7;border-radius:10px;line-height:1.7;resize:vertical}
.guest-payment-step{padding:18px;border:1px solid #d9e4f3;border-radius:12px;background:#f8faff}
.guest-payment-step>span{color:#315fe8;font-size:12px;font-weight:850;letter-spacing:.08em}
.guest-payment-step h3{margin:4px 0 6px;color:#1c304c;font-size:19px}
.guest-payment-step p{margin:0;color:#6c7890;font-size:13px;line-height:1.7}
.guest-booking-rule{margin:14px 0;padding:13px 14px;border-radius:9px;color:#6c7890;background:#f3f6fb;font-size:12px;line-height:1.65}
.guest-booking-rule b{display:block;margin-bottom:3px;color:#43556d}
.guest-booking-rule p{margin:0}
.guest-inline-payment{display:flex;min-height:100%;flex-direction:column}
.guest-inline-payment-card{padding:18px;border:1px solid #cfdcf0;border-radius:13px;background:#fff;text-align:center;box-shadow:0 8px 24px rgba(37,75,133,.08)}
.guest-inline-payment-card h3{margin:0 0 12px;color:#1c304c;font-size:19px}
.guest-inline-payment-selection{display:flex;margin-bottom:12px;padding:9px 11px;border-radius:9px;color:#53667f;background:#f3f6fb;flex-direction:column;gap:2px}
.guest-inline-payment-selection b{color:#253e5e;font-size:13px}
.guest-inline-payment-selection span{font-size:12px}
.guest-inline-payment-qr{display:grid;place-items:center}
.guest-inline-payment-qr img{display:block;width:184px;height:184px;margin:auto}
.guest-inline-payment-countdown{display:flex;margin-top:10px;padding:9px 11px;border:1px solid #f1c2b8;border-radius:9px;color:#9a4b3e;background:#fff1ed;align-items:center;justify-content:space-between;gap:12px;font-size:12px}
.guest-inline-payment-countdown strong{color:#d63b2f;font-size:18px;font-variant-numeric:tabular-nums;letter-spacing:.04em}
.guest-inline-payment-countdown.is-urgent{border-color:#e98878;color:#8f2e25;background:#ffe7e2;box-shadow:0 0 0 3px rgba(214,59,47,.08)}
.guest-inline-payment-countdown.is-urgent strong{color:#bd241b;animation:guest-payment-urgent 1s ease-in-out infinite alternate}
.guest-inline-payment-status{margin:10px 0 2px;color:#2f725d;font-size:13px;font-weight:750}
.guest-inline-payment-status:empty{display:none}
.guest-inline-payment-cancel{display:inline-flex;width:auto;margin:10px auto 2px;padding:7px 13px;border-color:#dce3ed;color:#68788d;background:#fff;align-items:center;justify-content:center;font-size:12px;font-weight:650}
.guest-inline-payment-cancel:hover{border-color:#ef9b8d;color:#a73c30;background:#fff5f2}
.guest-inline-payment-cancel:disabled{cursor:wait;opacity:.58}
.guest-inline-payment-error{margin-top:12px;padding:10px 12px;border:1px solid #f1d0c9;border-radius:9px;color:#9b493c;background:#fff4f1;font-size:12px;line-height:1.65}
.guest-student-registration{display:grid;margin-top:12px;padding:16px;border:1px solid #d6e2f2;border-radius:12px;background:#fff;place-items:center;gap:11px;text-align:center;box-shadow:0 8px 22px rgba(37,75,133,.06)}
.guest-student-registration img{display:block;width:min(176px,100%);height:auto;border-radius:10px}
.guest-student-registration b{display:block;color:#263c57;font-size:15px}
.guest-student-registration p{margin:4px 0 0;color:#6c7890;font-size:12px;line-height:1.65}
.guest-payment-loading{position:relative;padding-left:52px}
.guest-payment-loading:before{position:absolute;top:24px;left:20px;width:18px;height:18px;border:3px solid #d8e3fb;border-top-color:#315fe8;border-radius:50%;content:'';animation:guest-payment-spin .8s linear infinite}
.guest-payment-expired button{width:100%;margin-top:12px;color:#315fe8;background:#fff}
@keyframes guest-payment-spin{to{transform:rotate(360deg)}}
@keyframes guest-payment-urgent{from{transform:scale(1)}to{transform:scale(1.04)}}
.guest-booking-side .primary{width:100%;margin-top:auto;padding:12px 18px;border-radius:10px}
.guest-booking-side .primary:disabled{cursor:not-allowed;opacity:.55}
.consult-intake-dialog{width:min(900px,calc(100vw - 32px));max-height:90vh;border-radius:22px;color:#24354c;box-shadow:0 30px 120px #071a3440}
.consult-intake-dialog #modalBody{padding:36px}
.consult-intake-dialog .close{top:0;width:40px;height:40px;margin:0 0 -40px;padding:0;border:1px solid #dce6f3;border-radius:50%;color:#24354c;background:#fff;font-size:25px;line-height:1;box-shadow:none}
.consult-intake-dialog .close:focus-visible{outline:3px solid #9dbdff;outline-offset:2px}
.consult-intake-panel{max-width:none;margin:0;color:#24354c}
.consult-intake-panel>.eyebrow{display:block;margin:2px 0 4px;color:#5579b7;font-size:12px;letter-spacing:1.2px}
.consult-intake-panel>h2{margin:0 0 18px;padding-right:45px;font-size:27px;line-height:1.4;letter-spacing:-.4px}
.consult-intake-panel>p.muted{margin:0 0 20px;color:#738296;font-size:14px}
.consult-intake-order{display:flex;margin:0 0 20px;padding:14px 16px;border:1px solid #dce6f3;border-radius:12px;background:#f8faff;align-items:center;justify-content:space-between;gap:16px;font-size:14px}
.consult-intake-order b{color:#24354c;font-size:16px}.consult-intake-order span{color:#738296}
.consult-intake-status{margin:0 0 20px;padding:11px 13px;border:1px solid #efd59b;border-radius:10px;color:#7b591a;background:#fff8e8;font-size:13px}
.consult-intake-status.is-submitted{border-color:#bfe6d4;color:#28694f;background:#f0fbf6}
.consult-intake-section{margin:0;padding:24px 0;border:0;border-top:1px solid #e3eaf3;background:transparent}
.consult-intake-section-head{display:block;margin-bottom:18px}
.consult-intake-section-head>span{display:none}
.consult-intake-section-head h3{margin:0;color:#24354c;font-size:19px;line-height:1.5}
.consult-intake-section-head p{margin:3px 0 0;color:#738296;font-size:13px}
.consult-intake-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}
.consult-intake-grid .full{grid-column:1/-1}
.consult-intake-panel .field{min-width:0;margin:0;gap:8px}
.consult-intake-panel .field label,.consult-intake-panel .consult-intake-gender legend{padding:0;color:#61738a;font-size:13px;font-weight:500;line-height:1.65}
.consult-intake-panel .field input,.consult-intake-panel .field select{width:100%;height:46px;min-height:46px;margin:0;padding:10px 12px;border:1px solid #d6e3f5;border-radius:10px;color:#24354c;background:#fff;box-sizing:border-box;font-size:13px;line-height:1.65}
.consult-intake-panel .field select{-webkit-appearance:none;appearance:none;padding-right:32px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%2361738a' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 10px center}
.consult-intake-panel .field textarea{min-height:96px;margin:0;padding:11px 12px;border:1px solid #d6e3f5;border-radius:10px;color:#24354c;background:#fff;box-sizing:border-box;font-size:13px;line-height:1.75;resize:vertical}
.consult-intake-panel #intakeQuestion{min-height:118px}
.consult-intake-panel .field input:focus,.consult-intake-panel .field select:focus,.consult-intake-panel .field textarea:focus{border-color:#7ca8ff;outline:3px solid #dce9ff;outline-offset:1px}
.consult-intake-gender{min-width:0;padding:0;border:0}
.consult-intake-gender legend{display:block;width:auto;max-width:100%;white-space:nowrap;writing-mode:horizontal-tb;text-orientation:mixed}
.consult-intake-gender>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.consult-intake-gender label{position:relative;min-width:0;cursor:pointer}
.consult-intake-gender input{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;opacity:0}
.consult-intake-gender span{display:flex;height:46px;min-height:46px;border:1px solid #d6e3f5;border-radius:10px;color:#61738a;background:#fff;align-items:center;justify-content:center;box-sizing:border-box;font-size:13px}
.consult-intake-gender input:checked+span{border-color:#2860df;color:#215bdd;background:#e9f1ff;font-weight:700;box-shadow:inset 0 0 0 1px #2860df}
.consult-intake-gender input:focus-visible+span{outline:3px solid #9dbdff;outline-offset:2px}
.consult-intake-legacy{margin-top:16px;padding:10px 12px;border-radius:9px;color:#61738b;background:#f0f4fa;font-size:13px}
.consult-intake-legacy summary{cursor:pointer;font-weight:750}.consult-intake-legacy p{margin:7px 0 0;white-space:pre-wrap}
.consult-intake-attachment{margin:0 0 22px!important;padding:18px;border:1px solid #d6e3f5;border-radius:12px;background:#fff}
.consult-intake-attachment input[type=file]{height:auto;min-height:42px;padding:7px;font-size:12px}
.consult-intake-attachment small{color:#738296;font-size:12px;line-height:1.65}
.consult-intake-current-file{display:flex;margin-top:10px;padding:9px 11px;border-radius:8px;color:#40566f;background:#edf3fb;align-items:center;justify-content:space-between;gap:12px;font-size:13px}
.consult-intake-current-file a,.order-intake-attachment{color:#315fe8;font-weight:750;text-decoration:none}.consult-intake-current-file a:hover,.order-intake-attachment:hover{text-decoration:underline}
.consult-intake-actions{display:grid;margin-top:0;padding-top:20px;border-top:1px solid #e3eaf3;grid-template-columns:1fr 1.4fr;gap:12px}
.consult-intake-actions button{width:100%;min-height:46px;border-radius:10px}
.order-intake-summary{margin:14px 0;padding:14px 16px;border-radius:11px;background:#f5f8fc}
.order-intake-summary>b{display:block;margin-bottom:7px;color:#213750}
.order-intake-summary p{display:grid;margin:6px 0;color:#52677f;grid-template-columns:76px 1fr;gap:8px}
.order-intake-summary p span{color:#8290a4;font-size:13px;font-weight:750}
.order-intake-pending{margin:14px 0;padding:12px 14px;border:1px solid #f0d7a8;border-radius:10px;color:#8c651d;background:#fff9ed;font-size:14px}
@media(max-width:620px){.consult-intake-dialog #modalBody{padding:24px 20px}.consult-intake-panel>h2{font-size:25px}.consult-intake-order,.consult-intake-current-file{align-items:flex-start;flex-direction:column}.consult-intake-grid{grid-template-columns:1fr;gap:16px}.consult-intake-grid .full,.consult-intake-gender{grid-column:auto}.consult-intake-gender>div{grid-template-columns:repeat(2,minmax(0,1fr))}.consult-intake-section{padding:20px 0}.consult-intake-actions{grid-template-columns:1fr}}
.guest-detail-bottom{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,.55fr);gap:24px;align-items:start}
.guest-bio-card,.guest-reviews-card{padding:30px}
.guest-detail-bio{margin-top:24px;color:#455b75;font-size:15px;line-height:2;white-space:pre-wrap}
.guest-reviews-card .guest-section-heading{padding-bottom:18px;border-bottom:1px solid #e8eef5}
.guest-reviews-card .guest-section-heading>em{color:#55708e;background:#eff4fa}
.guest-reviews-empty{padding:38px 10px 26px;color:#7a8ba0;text-align:center}
.guest-reviews-empty>span{display:block;color:#a9b9cb;font-size:34px;line-height:1}
.guest-reviews-empty h3{margin:12px 0 6px;color:#465b74;font-size:16px}
.guest-reviews-empty p{margin:0;font-size:13px;line-height:1.7}
.guest-review-list{display:grid;margin-top:18px;gap:14px}
.guest-review-item{padding-bottom:14px;border-bottom:1px solid #edf1f6}
.guest-review-item:last-child{padding-bottom:0;border-bottom:0}
.guest-review-item>div{display:flex;align-items:center;justify-content:space-between;gap:10px}
.guest-review-stars{color:#f0a629;letter-spacing:.08em}
.guest-review-item small,.guest-review-item>span{color:#91a0b2;font-size:11px}
.guest-review-item p{margin:8px 0;color:#4d627b;font-size:13px;line-height:1.7}
@media(max-width:960px){
  .guest-detail-overview,.guest-availability-grid,.guest-detail-bottom{grid-template-columns:1fr}
  .guest-booking-side{padding:24px 0 0;border-top:1px solid #e7edf5;border-left:0}
  .guest-booking-side .primary{margin-top:0}
}
@media(max-width:720px){
  .guest-detail-page{width:min(100% - 24px,1200px);padding-top:18px}
  .guest-detail-overview,.guest-availability-panel,.guest-bio-card,.guest-reviews-card{padding:20px;border-radius:14px}
  .guest-profile-identity{align-items:flex-start;gap:15px}
  .guest-detail-page .detail-avatar .avatar{width:78px;height:78px;font-size:28px}
  .guest-profile-identity h1{font-size:27px}
  .guest-detail-headline{font-size:14px}
  .guest-section-heading{align-items:flex-start;flex-direction:column;gap:8px}
  .guest-section-heading>p{text-align:left}
  .guest-slot-day{grid-template-columns:1fr;gap:10px}
  .guest-slot-day h3{margin:0}
  .guest-slot-day>div{grid-template-columns:repeat(2,minmax(0,1fr))}
  .guest-slot-choice-note{align-items:flex-start;flex-direction:column;gap:2px}
  .guest-slot-groups{max-height:none;padding-right:0;overflow:visible}
}

/* Guest workbench availability calendar. */
.guest-workbench-page .guest-calendar-form{display:block;margin-top:18px}
.guest-calendar-layout{display:grid;grid-template-columns:minmax(520px,1.35fr) minmax(310px,.65fr);border:1px solid var(--workbench-line);border-radius:14px;background:#fff;overflow:hidden}
.guest-calendar-picker{min-width:0;padding:24px;border-right:1px solid var(--workbench-line)}
.guest-calendar-toolbar{display:grid;margin-bottom:18px;grid-template-columns:42px 1fr 42px;align-items:center;gap:10px}
.guest-calendar-toolbar strong{color:#1c2e48;font-size:18px;text-align:center}
.guest-calendar-toolbar button{display:grid;width:42px;height:38px;padding:0;border-color:#d8e0eb;border-radius:9px;color:#315fe8;background:#f8faff;font-size:26px;line-height:1;place-items:center}
.guest-calendar-toolbar button:disabled{color:#aab4c2;background:#f5f6f8}
.guest-calendar-weekdays,.guest-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.guest-calendar-weekdays{margin-bottom:8px;color:#8795a8;font-size:12px;font-weight:700;text-align:center}
.guest-calendar-weekdays span{padding:4px}
.guest-calendar-grid{min-height:360px;align-content:start}
.guest-calendar-grid>button{position:relative;display:flex;min-width:0;min-height:62px;padding:8px;border:1px solid #e2e8f0;border-radius:10px;color:#334963;background:#fff;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:3px}
.guest-calendar-grid>button:hover:not(:disabled){border-color:#8eabeb;background:#f6f9ff}
.guest-calendar-grid>button[aria-pressed=true]{border-color:#315fe8;color:#214fc5;background:#eaf0ff;box-shadow:0 0 0 2px rgba(49,95,232,.08)}
.guest-calendar-grid>button:disabled{color:#b3bdca;background:#f7f8fa;opacity:.78}
.guest-calendar-grid>button>span{font-size:14px;font-weight:750}
.guest-calendar-grid>button>small{position:relative;padding-left:10px;color:#2c8066;font-size:10px;line-height:1.3;white-space:nowrap}
.guest-calendar-grid>button>small:before{position:absolute;top:4px;left:0;width:6px;height:6px;border-radius:50%;background:#2aa879;content:''}
.guest-calendar-blank{min-height:62px}
.guest-calendar-legend{display:flex;margin-top:16px;padding-top:14px;border-top:1px solid #edf1f6;color:#8593a6;font-size:12px;align-items:center;justify-content:space-between;gap:12px}
.guest-calendar-legend span:first-child{display:flex;align-items:center;gap:6px}
.guest-calendar-legend i{width:7px;height:7px;border-radius:50%;background:#2aa879}
.guest-calendar-settings{display:flex;min-width:0;padding:26px;background:#fff;flex-direction:column}
.guest-calendar-step{color:#315fe8;font-size:12px;font-weight:800;letter-spacing:.08em}
.guest-calendar-settings h3{margin:6px 0 4px;font-size:20px}
.guest-calendar-settings>p{margin:0 0 20px;color:#75869c;font-size:13px;line-height:1.65}
.guest-calendar-time-range{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:10px}
.guest-calendar-time-range>span{padding-bottom:11px;color:#9aa7b8}
.guest-calendar-time-range label{display:grid;color:#42546b;font-size:13px;font-weight:700;gap:7px}
.guest-calendar-time-range select{width:100%;padding:10px 11px;border:1px solid #cbd6e5;border-radius:9px;color:#253a55;background:#fff;font:inherit}
.guest-calendar-day-slots{margin:20px 0 18px;padding:14px;border:1px solid #dce5f0;border-radius:10px;background:#fff}
.guest-calendar-day-slots b{display:block;margin-bottom:9px;color:#354b65;font-size:13px}
.guest-calendar-day-slots>div{display:flex;gap:7px;flex-wrap:wrap}
.guest-calendar-day-slots span{padding:5px 8px;border-radius:7px;color:#3d6d5d;background:#eaf7f2;font-size:11px;font-weight:700}
.guest-calendar-day-slots .guest-calendar-slot-chip{display:flex;min-width:124px;padding:7px 9px;flex-direction:column;gap:2px}
.guest-calendar-slot-chip strong{font-size:11px;line-height:1.35}
.guest-calendar-slot-chip small{color:#588073;font-size:9px;font-weight:650;line-height:1.35}
.guest-calendar-day-slots p{margin:0;color:#7d8da1;font-size:12px}
.guest-calendar-actions{display:grid;margin-top:auto;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px}
.guest-workbench-page .guest-calendar-actions .field{margin:0}
.guest-calendar-actions>button{min-height:44px;padding:10px 17px;white-space:nowrap}
.guest-calendar-summary{min-height:42px;margin:14px 0 0!important;padding:10px 12px;border-radius:8px;color:#23634e!important;background:#e9f7f1;font-size:12px!important;line-height:1.7}
.guest-calendar-summary.is-error{color:#9d4b36!important;background:#fff0eb}
.guest-calendar-list-heading{display:flex;margin:24px 0 10px;align-items:flex-end;justify-content:space-between;gap:14px}
.guest-calendar-list-heading h4{margin:0;font-size:16px}
.guest-calendar-list-heading p{margin:3px 0 0;color:var(--workbench-muted);font-size:12px}
.guest-calendar-list-heading>span{padding:4px 9px;border-radius:999px;color:#315fe8;background:#edf2ff;font-size:12px;font-weight:750;white-space:nowrap}
.guest-availability-groups{display:grid;gap:18px}
.guest-availability-group{padding:15px;border:1px solid #e1e8f2;border-radius:12px;background:#fff}
.guest-availability-group-heading{display:flex;margin-bottom:10px;align-items:center;justify-content:space-between;gap:14px}
.guest-availability-group-heading h5{margin:0;color:#223750;font-size:14px}
.guest-availability-group-heading p{margin:3px 0 0;color:var(--workbench-muted);font-size:11px}
.guest-availability-group-heading>span{padding:4px 9px;border-radius:999px;color:#247257;background:#e9f7f1;font-size:11px;font-weight:750;white-space:nowrap}
.guest-availability-group.is-past{background:#fafbfd}
.guest-availability-group.is-past .guest-availability-group-heading>span{color:#69798d;background:#eef1f5}
.guest-workbench-page .guest-calendar-list{display:grid;margin-top:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.guest-workbench-page .guest-calendar-list .calendar-row{padding:11px 13px;border:1px solid #e1e7ef;border-radius:9px;background:#f9fbfd;gap:10px}
.guest-workbench-page .guest-calendar-list .calendar-row span{color:#4b5f78;font-size:13px}
.guest-workbench-page .guest-calendar-list .guest-availability-row-info{display:flex;min-width:0;flex-direction:column;gap:2px}
.guest-workbench-page .guest-calendar-list .guest-availability-row-info b{font-weight:650}
.guest-workbench-page .guest-calendar-list .guest-availability-row-info small{color:#2d7a62;font-size:11px;font-weight:650}
.guest-workbench-page .guest-calendar-list .calendar-row button{padding:5px 9px;color:#b14539;background:#fff;font-size:12px}
.guest-workbench-page .guest-calendar-list>p{grid-column:1/-1;margin:0;padding:18px;border:1px dashed #ccd8e7;border-radius:9px;text-align:center}
@media(max-width:1050px){
  .guest-calendar-layout{grid-template-columns:1fr}
  .guest-calendar-picker{border-right:0;border-bottom:1px solid var(--workbench-line)}
  .guest-calendar-grid{min-height:0}
}
@media(max-width:680px){
  .guest-calendar-picker,.guest-calendar-settings{padding:18px 14px}
  .guest-calendar-weekdays,.guest-calendar-grid{gap:4px}
  .guest-calendar-grid>button,.guest-calendar-blank{min-height:54px}
  .guest-calendar-grid>button{padding:6px}
  .guest-calendar-grid>button>small{width:6px;height:6px;padding:0;border-radius:50%;background:#2aa879;font-size:0}
  .guest-calendar-grid>button>small:before{display:none}
  .guest-calendar-legend{align-items:flex-start;flex-direction:column}
  .guest-calendar-time-range{grid-template-columns:1fr 1fr}
  .guest-calendar-time-range>span{display:none}
  .guest-calendar-actions{grid-template-columns:1fr}
  .guest-calendar-actions>button{width:100%}
  .guest-availability-group{padding:12px}
  .guest-availability-group-heading{align-items:flex-start}
  .guest-workbench-page .guest-calendar-list{grid-template-columns:1fr}
}

/* Calendar week, month and year views. */
.guest-workbench-page .guest-calendar-form .field[hidden]{display:none!important}
.guest-calendar-toolbar{display:flex;margin-bottom:18px;align-items:center;justify-content:space-between;gap:16px}
.guest-calendar-nav{display:grid;min-width:340px;grid-template-columns:42px minmax(180px,1fr) 42px;align-items:center;gap:10px}
.guest-calendar-nav strong{color:#1c2e48;font-size:18px;text-align:center}
.guest-calendar-toolbar .guest-calendar-nav button{display:grid;width:42px;height:38px;padding:0;border-color:#d8e0eb;border-radius:9px;color:#315fe8;background:#f8faff;font-size:26px;line-height:1;place-items:center}
.guest-calendar-view-switch{display:grid;padding:3px;border:1px solid #dce3ed;border-radius:9px;background:#eef1f5;grid-template-columns:repeat(3,42px);gap:2px}
.guest-calendar-toolbar .guest-calendar-view-switch button{display:block;width:auto;height:32px;padding:0;border:0;border-radius:7px;color:#607187;background:transparent;font-size:13px;font-weight:750;line-height:32px;box-shadow:none}
.guest-calendar-toolbar .guest-calendar-view-switch button:hover{color:#315fe8;background:rgba(255,255,255,.7)}
.guest-calendar-toolbar .guest-calendar-view-switch button[aria-pressed=true]{color:#1f4fc9;background:#fff;box-shadow:0 1px 4px rgba(35,54,82,.16)}
.guest-calendar-surface{min-height:360px}
.guest-calendar-surface.is-month .guest-calendar-grid{min-height:326px}
.guest-calendar-week-view{display:grid;min-height:360px;border:1px solid #e2e8f0;border-radius:11px;overflow:hidden;grid-template-columns:repeat(7,minmax(0,1fr))}
.guest-calendar-week-day{display:flex;min-width:0;padding:12px 8px;border:0;border-right:1px solid #e6ebf2;border-radius:0;color:#455a74;background:#fff;flex-direction:column;align-items:center;gap:4px}
.guest-calendar-week-day:last-child{border-right:0}
.guest-calendar-week-day:hover:not(:disabled){background:#f5f8ff}
.guest-calendar-week-day[aria-pressed=true]{color:#214fc5;background:#eaf0ff;box-shadow:inset 0 3px 0 #315fe8}
.guest-calendar-week-day:disabled{color:#b4bdca;background:#f7f8fa}
.guest-calendar-week-day>span{font-size:11px;font-weight:750}
.guest-calendar-week-day>strong{font-size:18px}
.guest-calendar-week-day>div{display:flex;width:100%;margin-top:12px;flex-direction:column;gap:6px}
.guest-calendar-week-day i,.guest-calendar-week-day em{display:block;padding:6px 4px;border-radius:6px;font-size:10px;font-style:normal;line-height:1.4;text-align:center}
.guest-calendar-week-day i{color:#286952;background:#e8f6f1}
.guest-calendar-week-day i.guest-calendar-slot-chip{display:flex;padding:7px 5px;flex-direction:column;gap:2px}
.guest-calendar-week-day i.guest-calendar-slot-chip strong{font-size:10px;line-height:1.3}
.guest-calendar-week-day i.guest-calendar-slot-chip small{color:#4e7c6d;font-size:8px;line-height:1.3}
.guest-calendar-week-day em{color:#9aa6b6;background:#f4f6f8}
.guest-calendar-year-view{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 18px}
.guest-calendar-mini-month{min-width:0;padding:11px;border:1px solid #e2e8f0;border-radius:10px;background:#fff}
.guest-calendar-mini-month h4{margin:0 0 9px;color:#2a405c;font-size:13px;text-align:center}
.guest-calendar-mini-month .guest-calendar-weekdays,.guest-calendar-mini-month .guest-calendar-grid{gap:2px}
.guest-calendar-mini-month .guest-calendar-weekdays{margin-bottom:3px;font-size:9px}
.guest-calendar-mini-month .guest-calendar-weekdays span{padding:1px}
.guest-calendar-mini-month .guest-calendar-grid{min-height:0}
.guest-calendar-mini-month .guest-calendar-grid>button,.guest-calendar-mini-month .guest-calendar-blank{min-height:23px;padding:0;border:0;border-radius:5px;align-items:center;justify-content:center}
.guest-calendar-mini-month .guest-calendar-grid>button>span{font-size:10px}
.guest-calendar-mini-month .guest-calendar-grid>button>i{position:absolute;bottom:2px;width:3px;height:3px;border-radius:50%;background:#2aa879}
.guest-calendar-mini-month .guest-calendar-grid>button[aria-pressed=true]{box-shadow:0 0 0 1px #315fe8}
@media(max-width:1180px){
  .guest-calendar-toolbar{align-items:stretch;flex-direction:column}
  .guest-calendar-nav{min-width:0}
  .guest-calendar-view-switch{align-self:center}
  .guest-calendar-year-view{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
  .guest-calendar-nav{grid-template-columns:38px minmax(150px,1fr) 38px}
  .guest-calendar-view-switch{width:100%;grid-template-columns:repeat(3,1fr)}
  .guest-calendar-surface{min-height:0}
  .guest-calendar-week-view{min-height:300px;overflow-x:auto;grid-template-columns:repeat(7,minmax(82px,1fr))}
  .guest-calendar-year-view{grid-template-columns:1fr}
}

/* Multiple slots and batch ranges. */
.guest-calendar-mode-heading{display:flex;margin-bottom:9px;align-items:flex-end;justify-content:space-between;gap:10px}
.guest-calendar-mode-heading b{color:#243a56;font-size:14px}
.guest-calendar-mode-heading span{color:#718299;font-size:11px;text-align:right}
.guest-calendar-add-mode{display:grid;margin-bottom:20px;padding:3px;border:1px solid #dce3ed;border-radius:9px;background:#eef1f5;grid-template-columns:1fr 1fr;gap:2px}
.guest-calendar-add-mode button{padding:8px 10px;border:0;border-radius:7px;color:#607187;background:transparent;font-size:13px;font-weight:750;box-shadow:none}
.guest-calendar-add-mode button[aria-pressed=true]{color:#1f4fc9;background:#fff;box-shadow:0 1px 4px rgba(35,54,82,.16)}
.guest-calendar-batch-range{display:grid;margin:0 0 18px;padding:13px;border:1px solid #dce5f0;border-radius:10px;background:#fff;grid-template-columns:1fr auto 1fr;align-items:end;gap:9px}
.guest-calendar-batch-range[hidden]{display:none!important}
.guest-calendar-batch-range>span{padding-bottom:11px;color:#9aa7b8}
.guest-calendar-batch-range label{display:grid;color:#42546b;font-size:12px;font-weight:700;gap:6px}
.guest-calendar-batch-range input{width:100%;padding:9px 8px;border:1px solid #cbd6e5;border-radius:8px;color:#253a55;background:#fff;font:inherit}
.guest-calendar-batch-range p{grid-column:1/-1;margin:2px 0 0;color:#7d8da1;font-size:11px;line-height:1.5}
.guest-calendar-grid>button[data-in-batch=true],.guest-calendar-week-day[data-in-batch=true]{border-color:#b9caf5;color:#214fc5;background:#edf2ff}
.guest-calendar-grid>button[data-batch-edge=true],.guest-calendar-week-day[data-batch-edge=true]{border-color:#315fe8;background:#dfe8ff;box-shadow:0 0 0 2px rgba(49,95,232,.08)}
.guest-calendar-mini-month .guest-calendar-grid>button[data-in-batch=true]{background:#dfe8ff}
.guest-calendar-day-slots>p+div{margin-top:8px}
@media(max-width:680px){
  .guest-calendar-mode-heading{align-items:flex-start;flex-direction:column;gap:3px}
  .guest-calendar-mode-heading span{text-align:left}
  .guest-calendar-batch-range{grid-template-columns:1fr 1fr}
  .guest-calendar-batch-range>span{display:none}
}

/* Guest workbench consultation order cards and detail view. */
.guest-orders-panel .order-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.guest-orders-panel .guest-order-groups{grid-template-columns:minmax(0,1fr);gap:30px}
.guest-order-status-group{display:grid;min-width:0;gap:14px}
.guest-order-status-group>header{display:flex;padding-bottom:12px;border-bottom:1px solid #e1e7f0;align-items:flex-end;justify-content:space-between;gap:20px}
.guest-order-status-group>header h2{margin:0;color:#213750;font-size:21px;line-height:1.3}
.guest-order-status-group>header p{margin:4px 0 0;color:#78889d;font-size:13px}
.guest-order-status-group>header>span{display:inline-flex;padding:5px 10px;border-radius:999px;color:#315fe8;background:#edf3ff;font-size:12px;font-weight:800;white-space:nowrap}
.guest-order-status-completed>header>span{color:#6e5bb7;background:#f0edff}
.guest-order-status-list>.empty{margin:0;grid-column:1/-1}
.guest-orders-panel>.guest-panel-heading[hidden],.guest-orders-panel>.order-list[hidden]{display:none!important}
.guest-workbench-page .guest-order-card{display:flex;min-height:188px;padding:20px;border:1px solid #d8e2ef;border-radius:14px;background:#fff;cursor:pointer;outline:0;flex-direction:column;transition:border-color .18s ease,background-color .18s ease}
.guest-workbench-page .guest-order-card:hover{border-color:#94afe7;background:#fbfdff}
.guest-workbench-page .guest-order-card:focus-visible{border-color:#315fe8;box-shadow:0 0 0 4px rgba(49,95,232,.14)}
.guest-order-card-head{display:flex;color:#8795a8;font-size:12px;align-items:center;justify-content:space-between;gap:12px}
.guest-order-card-main{display:flex;margin:22px 0 18px;align-items:center;justify-content:space-between;gap:18px}
.guest-order-card-main h3{margin:0 0 3px!important;color:#243750;font-size:20px!important}
.guest-order-card-main p{margin:0;color:#647891;font-size:14px}
.guest-order-card-link{display:inline-flex;color:#315fe8;font-size:13px;font-weight:750;white-space:nowrap;align-items:center;gap:7px}
.guest-order-card-link i{font-size:18px;font-style:normal}
.guest-order-card-foot{display:flex;margin-top:auto;padding-top:14px;border-top:1px solid #edf1f6;color:#63768d;font-size:12px;align-items:center;gap:8px;flex-wrap:wrap}
.guest-order-card-foot>span{padding:4px 8px;border-radius:7px;background:#f2f5f9}
.guest-order-card-foot .is-ready{color:#247258;background:#eaf8f2}
.guest-order-card-foot .is-waiting{color:#8b641d;background:#fff6df}
.guest-order-inline-detail{scroll-margin-top:24px}
.guest-order-page-heading{display:flex;margin:0 0 24px;align-items:flex-start;justify-content:space-between;gap:24px}
.guest-order-page-heading h1{margin:0;color:#1b2e48;font-size:30px;line-height:1.2}
.guest-order-page-heading p{margin:8px 0 0;color:#708098;font-size:14px}
.guest-order-back{display:inline-flex;margin:0;padding:11px 17px;border:1px solid #cfd8e5;border-radius:9px;background:#fff;color:#263b56;font-size:14px;font-weight:700;cursor:pointer;align-items:center;white-space:nowrap}
.guest-order-back:hover{border-color:#315fe8;background:#f3f7ff}
.guest-order-back:focus-visible{outline:3px solid rgba(49,95,232,.18);outline-offset:2px}
.guest-order-detail-panel{color:#263b56}
.guest-order-detail-heading{padding:0 0 22px;border-bottom:1px solid #e4eaf2}
.guest-order-detail-heading>div{display:flex;margin-bottom:8px;align-items:center;gap:10px}
.guest-order-detail-number{color:#8593a6;font-size:12px}
.guest-order-detail-heading h2{margin:0 0 4px;font-size:28px}
.guest-order-detail-heading p{margin:0;color:#718198;font-size:14px}
.guest-order-detail-columns{display:grid;grid-template-columns:minmax(0,1fr) 32px var(--guest-order-side-width,420px);gap:0;align-items:start}
.guest-order-detail-main{position:relative;min-width:0;padding:28px;border:1px solid #dce5f1;border-radius:20px;background:#fff;overflow:hidden}
.guest-order-detail-main.has-attachment-preview{min-height:600px}
.guest-order-detail-overview{display:grid;margin:0 0 18px;padding:18px;border:1px solid #dce5f1;border-radius:12px;background:#fff;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.guest-order-detail-overview div{min-width:0}
.guest-order-detail-overview span{display:block;margin-bottom:3px;color:#8290a3;font-size:12px}
.guest-order-detail-overview strong{display:block;color:#293d57;font-size:14px;overflow-wrap:anywhere}
.guest-order-detail-panel .order-intake-summary{margin:0;padding:20px;border:1px solid #e0e7f0;border-radius:12px;background:#fff}
.guest-order-detail-panel .order-intake-summary>b{margin-bottom:14px;font-size:17px}
.guest-order-detail-panel .order-intake-summary p{margin:10px 0;grid-template-columns:90px minmax(0,1fr);line-height:1.75}
.guest-order-detail-panel .order-intake-summary p span{padding-top:1px}
.guest-order-detail-panel .order-actions{margin-top:20px;padding-top:18px;border-top:1px solid #e4eaf2}
.guest-order-detail-tools{display:grid;min-width:0;gap:20px}
.guest-order-tool-card{padding:22px;border:1px solid #dce5f1;border-radius:20px;background:#fff}
.guest-order-tool-heading{display:flex;margin-bottom:15px;align-items:flex-start;gap:11px}
.guest-order-tool-heading>span{display:inline-flex;width:30px;height:30px;border-radius:8px;color:#315fe8;background:#edf3ff;font-size:12px;font-weight:800;align-items:center;justify-content:center;flex:0 0 auto}
.guest-order-tool-heading h3{margin:1px 0 3px;color:#253a55;font-size:17px}
.guest-order-tool-heading p{margin:0;color:#7a899e;font-size:12px;line-height:1.55}
.guest-order-entry-card{border-color:#dce5f1;background:#fff}
.guest-order-entry-card .order-actions{margin:0;padding:0;border:0}
.guest-order-entry-card .order-actions button{width:100%;min-height:44px}
.guest-order-entry-card.is-active{padding:14px;background:#fff}
.guest-order-entry-card.is-active .room{gap:12px}
.guest-order-entry-card.is-active .recording-banner{font-size:12px;flex-wrap:wrap}
.guest-order-entry-card.is-active .room-stage{min-height:220px;padding:24px 14px;border-radius:14px}
.guest-order-entry-card.is-active .room-stage .avatar{width:68px;height:68px}
.guest-order-entry-card.is-active .room-stage h2{margin:0;font-size:18px}
.guest-order-entry-card.is-active .room>.muted{margin:0;font-size:11px;line-height:1.6}
.user-order-entry-card.is-active{padding:14px;background:#fff}
.user-order-entry-card.is-active .room{gap:12px}
.user-order-entry-card.is-active .recording-banner{font-size:12px;flex-wrap:wrap}
.user-order-entry-card.is-active .room-stage{min-height:220px;padding:24px 14px;border-radius:14px}
.user-order-entry-card.is-active .room-stage .avatar{width:68px;height:68px}
.user-order-entry-card.is-active .room-stage h2{margin:0;font-size:18px}
.user-order-entry-card.is-active .room>.muted{margin:0;font-size:11px;line-height:1.6}
.guest-order-entry-state{display:flex;padding:12px;border-radius:9px;background:#f8fafc;color:#708198;align-items:center;justify-content:space-between;gap:10px}
.guest-order-entry-state strong{color:#394f6b}
.guest-order-entry-state span{font-size:12px;text-align:right}
.guest-order-note-card textarea{display:block;width:100%;height:auto;min-height:132px;padding:12px;border:1px solid #cbd7e7;border-radius:9px;background:#fff;color:#2e435e;font:inherit;line-height:1.75;overflow-y:hidden;resize:none}
.guest-order-note-card textarea:focus{border-color:#5b83e9;outline:3px solid rgba(49,95,232,.1)}
.guest-order-note-actions{display:flex;margin-top:11px;color:#8794a6;font-size:12px;align-items:center;justify-content:space-between;gap:12px}
.guest-order-note-actions button{padding:8px 13px;border-color:#315fe8;color:#fff;background:#315fe8;font-weight:750}
.guest-order-note-actions button:disabled{opacity:.62;cursor:wait}
.guest-attachment-preview{position:absolute;z-index:8;inset:14px;display:flex;min-height:520px;border:1px solid #cfd9e8;border-radius:15px;background:#fff;box-shadow:0 18px 48px rgba(31,55,91,.18);flex-direction:column;overflow:hidden;overscroll-behavior:contain}
.guest-attachment-preview>header{display:flex;min-height:66px;padding:12px 16px;border-bottom:1px solid #e1e7f0;background:#fff;align-items:center;justify-content:space-between;gap:16px}
.guest-attachment-preview>header>div{display:flex;min-width:0;align-items:center;gap:10px}
.guest-attachment-preview>header>div:first-child{align-items:flex-start;flex-direction:column;gap:1px}
.guest-attachment-preview>header span{color:#7b899b;font-size:11px}
.guest-attachment-preview>header strong{max-width:100%;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.guest-attachment-preview>header a{color:#315fe8;font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}
.guest-attachment-preview>header button{display:grid;width:34px;height:34px;padding:0;border:1px solid #d9e1ec;border-radius:50%;color:#263b56;background:#fff;font-size:22px;line-height:1;place-items:center}
.guest-attachment-preview-body{display:flex;min-height:0;background:#f8fafc;flex:1;overflow:auto}
.guest-attachment-preview-frame{display:block;width:100%;min-height:640px;border:0;background:#fff;flex:1}
.guest-attachment-preview-image{display:flex;width:100%;min-height:100%;padding:22px;align-items:flex-start;justify-content:center}
.guest-attachment-preview-image img{display:block;max-width:100%;height:auto;border-radius:8px;background:#fff;box-shadow:0 4px 18px rgba(31,55,91,.1)}
.guest-attachment-preview-fallback{display:flex;width:100%;min-height:420px;padding:36px;text-align:center;align-items:center;justify-content:center;flex-direction:column}
.guest-attachment-preview-fallback>span{font-size:42px}
.guest-attachment-preview-fallback h3{max-width:100%;margin:12px 0 4px;overflow-wrap:anywhere}
.guest-attachment-preview-fallback p{margin:0 0 18px;color:#738299;font-size:13px}
.guest-attachment-preview-fallback a{display:inline-flex;padding:9px 16px;border-radius:8px;color:#fff;background:#315fe8;font-weight:700;text-decoration:none}
.guest-order-splitter{align-self:stretch;position:relative;min-height:180px;cursor:col-resize;touch-action:none;outline-offset:-6px}
.guest-order-splitter:before{content:'';position:absolute;top:0;bottom:0;left:14px;width:4px;border-radius:4px;background:#dce3ed;transition:background .15s}
.guest-order-splitter:after{content:'⋮';position:sticky;top:45vh;display:grid;width:20px;height:48px;margin:60px auto 0;border:1px solid #cbd4e2;border-radius:8px;background:#fff;color:#63718a;font-size:23px;line-height:1;place-items:center}
.guest-order-splitter:hover:before,.guest-order-splitter:focus-visible:before{background:#8badf8}
.guest-order-splitter[hidden]{display:none}
.guest-order-resizing,.guest-order-resizing *{cursor:col-resize!important;user-select:none!important}
.guest-order-detail-columns.is-stacked{grid-template-columns:minmax(0,1fr)}
.room-countdown{display:grid;width:min(100%,390px);margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;justify-items:start;align-content:start;gap:2px}
.room-countdown>span{color:#c9d9ff;font-size:13px;font-weight:750;letter-spacing:.04em}
.room-countdown>strong{color:#fff;font-size:42px;line-height:1.15;font-variant-numeric:tabular-nums;letter-spacing:.05em}
.room-countdown>small{max-width:340px;color:#d7e3ff;font-size:11px;line-height:1.45;text-align:center}
.room-countdown[data-state="running"]{border:0;background:transparent}
.room-countdown[data-state="running"]>span{color:#aef6dc}
.room-countdown[data-state="ended"]{border:0;background:transparent}
.room-countdown[data-state="ended"]>span,.room-countdown[data-state="ended"]>small{color:#c5cfdf}
.guest-order-entry-card.is-active .room-countdown{margin:0;padding:0;border-radius:0}
.guest-order-entry-card.is-active .room-countdown>strong{font-size:32px}
.guest-order-entry-card.is-active .room-countdown>small{font-size:10px}
.user-order-entry-card.is-active .room-countdown{margin:0;padding:0;border-radius:0}
.user-order-entry-card.is-active .room-countdown>strong{font-size:32px}
.user-order-entry-card.is-active .room-countdown>small{font-size:10px}
.room-controls{flex-wrap:wrap}
.room-speaker{border-color:#90aeea;color:#234d9f;background:#eef4ff}
.room-speaker.is-active{border-color:#65c8a3;color:#12684c;background:#e8f8f1}
.room-speaker.needs-action{border-color:#f0a36f;color:#9a4717;background:#fff2e8;box-shadow:0 0 0 3px rgba(240,125,47,.12)}
.room-audio-help{margin:0;padding:9px 12px;border-radius:9px;color:#586d88;background:#f4f7fb;font-size:12px;line-height:1.55;text-align:center}
.guest-order-entry-card.is-active .room-audio-help{padding:7px 9px;font-size:10px}
.user-order-entry-card.is-active .room-audio-help{padding:7px 9px;font-size:10px}
.room-stage{position:relative;display:grid;align-content:start;justify-items:stretch;place-items:unset;gap:16px;text-align:left}
.room-stage-head{display:grid;width:100%;padding-right:20px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:22px}
.room-stage-head .room-countdown{width:100%;margin:0;justify-items:start;text-align:left}
.room-stage-head .room-countdown>small{text-align:left}
.room-recording-dot{position:absolute;top:18px;right:18px;width:12px;height:12px;background:#ff766d;box-shadow:0 0 0 7px rgba(255,118,109,.18)}
.room-stage .room-status{margin:0;color:#dbe6ff;text-align:center}
.room-stage .audio-meter{width:100%}
.room-stage .room-controls{display:flex;width:100%;margin:0;justify-content:center;gap:10px;flex-wrap:wrap}
.room-stage .room-controls button{min-height:44px;background:rgba(255,255,255,.96)}
.room-stage .room-speaker.is-active{border-color:#7ee0ba;color:#12684c;background:#e8f8f1}
.room-stage .room-speaker.needs-action{border-color:#ffc08e;color:#91420f;background:#fff2e8}
.room-stage .room-audio-help{color:#dbe6ff;background:rgba(255,255,255,.1);text-align:center}
.room-stage audio{display:none}
@media(max-width:1180px) and (min-width:901px){.guest-order-detail-columns{--guest-order-side-width:360px}.guest-order-detail-main{padding:24px}}
@media(max-width:900px){.guest-order-detail-columns{grid-template-columns:minmax(0,1fr);gap:20px}.guest-order-detail-tools{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}.guest-order-entry-card{grid-column:1/-1}}
@media(max-width:980px){.guest-orders-panel .order-list{grid-template-columns:1fr}}
@media(max-width:560px){.guest-order-status-group>header{align-items:flex-start;flex-direction:column;gap:8px}}
@media(max-width:560px){.guest-order-card-main{align-items:flex-start;flex-direction:column;gap:10px}.guest-order-page-heading{align-items:stretch;flex-direction:column}.guest-order-page-heading h1{font-size:26px}.guest-order-back{justify-content:center}.guest-order-detail-main{padding:18px;border-radius:15px}.guest-order-detail-main.has-attachment-preview{min-height:520px}.guest-order-tool-card{padding:18px;border-radius:15px}.guest-order-detail-overview,.guest-order-detail-tools{grid-template-columns:1fr}.guest-order-detail-panel .order-intake-summary p{display:block}.guest-order-detail-panel .order-intake-summary p span{display:block;margin-bottom:2px}.guest-order-detail-heading h2{font-size:24px}.guest-order-note-actions{align-items:flex-start;flex-direction:column}.guest-order-note-actions button{width:100%}.guest-attachment-preview{inset:8px;min-height:460px}.guest-attachment-preview>header{align-items:flex-start;flex-direction:column}.guest-attachment-preview>header>div:last-child{width:100%;justify-content:space-between}}
.guest-workbench-page[data-onboarding-locked="1"] .guest-workbench-nav button:not([data-workbench-section="profile"]){display:none}
.guest-onboarding-progress{margin:0 0 24px;padding:22px 24px;border:1px solid #cddcfb;border-radius:14px;background:linear-gradient(135deg,#f8fbff,#eef4ff)}
.guest-onboarding-progress h1{margin:18px 0 6px;color:#17243a;font-size:25px}
.guest-onboarding-progress p{margin:0;color:#60708a;line-height:1.7}
.guest-onboarding-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.guest-onboarding-steps span{padding:10px 12px;border-radius:9px;color:#728098;background:#fff;font-size:12px;font-weight:650;text-align:center}
.guest-onboarding-steps .is-done{color:#177352;background:#e9f8f1}
.guest-onboarding-steps .is-current{color:#2458d5;background:#e8efff}
.guest-rules-onboarding{max-width:720px}
.guest-rules-onboarding>p:last-child{margin-bottom:0;text-align:right}
@media(max-width:700px){.guest-onboarding-progress{padding:18px}.guest-onboarding-steps{grid-template-columns:1fr}.guest-onboarding-progress h1{font-size:22px}}
