.personal-booking-page{max-width:1160px;margin:32px auto;padding:0 20px 60px;color:var(--vl-text,#182338)}
.personal-booking-page .card{background:var(--vl-surface,#fff);border:1px solid var(--vl-border-subtle,#d4dce7);border-radius:20px;margin:0}
.personal-booking-page h1,.personal-booking-page h2,.personal-booking-page h3{letter-spacing:-.025em;line-height:1.2}
.personal-booking-page h1{font-size:clamp(1.7rem,3.4vw,2.6rem);margin:5px 0 10px;overflow-wrap:anywhere}
.personal-booking-page h2{font-size:1.4rem;margin:0 0 18px}.personal-booking-page h3{font-size:1.08rem;margin:0 0 8px}
.personal-booking-page p{margin:8px 0 16px;line-height:1.65}.personal-booking-page .help{font-size:.9rem;color:var(--vl-text-muted,#59677c)}
.personal-profile{overflow:hidden;padding:0!important}.personal-cover{min-height:156px;box-sizing:border-box;padding:24px 30px;display:flex;justify-content:space-between;align-items:flex-start;gap:20px;background:radial-gradient(ellipse at 78% 130%,#5cd5c53d 0,transparent 60%),linear-gradient(118deg,#172c4e,#234b61 64%,#17625c);color:#fff}
.personal-cover-brand{font-size:1.25rem;font-weight:750;letter-spacing:-.03em}.personal-cover-caption{font-size:.65rem;letter-spacing:.15em;opacity:.85;padding-top:8px}
.personal-profile-body{display:grid;grid-template-columns:136px minmax(0,1fr) auto;gap:26px;align-items:start;padding:0 30px 24px}
.personal-avatar{margin-top:-42px;position:relative;width:136px;height:156px;border:5px solid var(--vl-surface,#fff);border-radius:20px;overflow:hidden;background:#253c50;display:grid;place-items:center;box-sizing:border-box}
.personal-initials{color:#f1f5fa;font-size:2.5rem;font-weight:700}.personal-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#253c50}
.personal-identity{padding-top:22px;min-width:0}.personal-identity .eyebrow{font-size:.65rem;letter-spacing:.13em;margin:0 0 8px}.personal-identity .personal-headline{font-size:1rem;margin-bottom:9px}.personal-identity .personal-languages{margin-bottom:10px;font-size:.9rem;font-weight:600}
.personal-presence{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--vl-border-subtle,#d4dce7);border-radius:22px;padding:4px 11px;font-size:.8rem;margin:0 10px 8px 0!important;background:var(--vl-surface-subtle,#f4f6f8)}
.personal-presence:before{content:'';width:7px;height:7px;background:#7b8798;border-radius:50%}.personal-presence[data-available=true]:before{background:#16806d}.personal-reference{display:block;font-size:.75rem;color:var(--vl-text-muted,#59677c)}
.personal-actions{display:grid;gap:10px;padding-top:26px}.personal-actions button{min-height:44px;font-size:.88rem;white-space:nowrap}.personal-section-nav{display:flex;gap:8px;padding:12px 30px;border-top:1px solid var(--vl-border-subtle,#d4dce7);overflow-x:auto}.personal-section-nav button{padding:10px 14px;border:0;background:transparent;box-shadow:none;white-space:nowrap;font-size:.86rem;min-height:44px}.personal-section-nav button:hover{background:var(--vl-surface-raised,#edf2f8)}
.personal-page-grid{display:grid;grid-template-columns:minmax(0,1fr) 356px;gap:24px;margin-top:24px;align-items:start}.personal-details,.personal-booking-sidebar{display:grid;gap:24px;min-width:0}.personal-panel{padding:26px;scroll-margin-top:24px;overflow-wrap:anywhere}.personal-panel:focus{outline:2px solid var(--vl-focus,#087c76);outline-offset:3px}
.personal-booking-sidebar{padding:0;margin:0;border:0;box-shadow:none;background:transparent}
.personal-bio{white-space:pre-line}.personal-facts{margin:24px 0 0}.personal-facts>div{padding:15px 0;border-top:1px solid var(--vl-border-subtle,#d4dce7)}.personal-facts dt{font-size:.76rem;color:var(--vl-text-muted,#59677c);margin-bottom:5px;font-weight:650}.personal-facts dd{margin:0;font-size:.93rem}
.personal-credentials{padding:0;list-style:none;margin:0}.personal-credentials li{padding:18px 0;border-top:1px solid var(--vl-border-subtle,#d4dce7)}.personal-credentials li:last-child{padding-bottom:0}.personal-credentials p{font-size:.87rem;color:var(--vl-text-muted,#59677c);margin-bottom:8px}.personal-credentials a{font-size:.88rem}
.personal-services{display:grid;gap:24px}.personal-service{padding-top:22px;border-top:1px solid var(--vl-border-subtle,#d4dce7)}.personal-service p{font-size:.9rem}.personal-service .primary{width:100%;min-height:46px;font-size:.9rem}.personal-booking-card{margin-bottom:24px}
.personal-notice:empty{display:none}.personal-notice:not(:empty){padding:12px 0;margin-bottom:0}#appointment-dialog{max-width:680px;width:calc(100% - 32px);max-height:90dvh;overflow:auto}#appointment-dialog .close{position:sticky;top:0;float:right}
.personal-preview-banner{padding:14px 18px;border:1px solid var(--vl-border-subtle,#d4dce7);border-radius:12px;background:var(--vl-surface,#fff);font-size:.88rem}
@media(max-width:940px){.personal-profile-body{grid-template-columns:116px minmax(0,1fr);gap:20px}.personal-avatar{width:116px;height:140px}.personal-actions{grid-column:2;display:flex;flex-wrap:wrap;padding:0}.personal-page-grid{grid-template-columns:minmax(0,1fr) 320px}.personal-panel{padding:22px}}
@media(max-width:720px){.personal-booking-page{padding:0 14px 40px;margin-top:16px}.personal-cover{min-height:112px;padding:20px}.personal-cover-caption{display:none}.personal-profile-body{padding:0 20px 22px;grid-template-columns:1fr;gap:12px}.personal-avatar{margin-top:-28px;width:100px;height:116px}.personal-identity{padding:0}.personal-actions{grid-column:1;display:grid;grid-template-columns:1fr 1fr;gap:8px}.personal-actions button{white-space:normal;padding:10px 8px}.personal-section-nav{padding:8px 12px;gap:0}.personal-section-nav button{padding:10px}.personal-page-grid{grid-template-columns:1fr;gap:20px}.personal-details{order:1}.personal-booking-sidebar{order:2}.personal-panel{padding:22px}.personal-details,.personal-booking-sidebar{gap:20px}}

/* Anonymous professional page: no portal controls or media components. */
.public-interpreter-page{margin:0;background:#f1f5f8;color:#182338;font-family:system-ui,-apple-system,sans-serif;--vl-text:#182338;--vl-surface:#fff;--vl-text-muted:#59677c;--vl-border-subtle:#d4dce7}
.public-profile-header,.public-profile-footer{max-width:1160px;margin:auto;padding:24px 20px;display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.public-profile-header .brand{color:#172c4e;font-weight:800;letter-spacing:-.04em;font-size:1.5rem;text-decoration:none}.public-profile-footer{font-size:.8rem;color:#59677c;justify-content:flex-start}
.public-interpreter-page a{color:#076b65}.public-interpreter-page .primary{display:inline-block;text-align:center;box-sizing:border-box;border-radius:12px;background:#087b73;color:#fff;padding:13px 16px;text-decoration:none;font-size:.9rem;font-weight:650}.public-interpreter-page .quiet{color:#086b65;background:#eaf0f5;border:1px solid #98a9bb;border-radius:12px;padding:12px 16px;text-decoration:none;cursor:pointer}
.public-interpreter-page .personal-section-nav a{font-size:.9rem;text-decoration:none;font-weight:600;padding:12px 14px;white-space:nowrap}.public-booking-link{width:100%}.public-interpreter-page .personal-notice input{display:block;width:100%;box-sizing:border-box;min-height:44px}.public-skip{position:fixed;top:-100px;background:#fff;padding:16px;z-index:2}.public-skip:focus{top:0}.public-interpreter-page :focus-visible{outline:3px solid #2768b7;outline-offset:3px}
@media(max-width:720px){.public-profile-header{padding:16px}.public-interpreter-page .personal-actions{grid-template-columns:1fr 1fr}.public-interpreter-page .personal-actions>.primary{grid-column:1/-1}.public-profile-footer{padding:20px}}
.public-interpreter-page .personal-section-nav a{display:inline-block}.public-interpreter-page .public-profile-footer a{display:inline;width:auto}.public-sharing-settings{margin:22px 0;border:1px solid #b9c7d6;border-radius:14px;padding:20px;min-width:0}.public-sharing-settings legend{font-weight:700;padding:0 8px}
/* Profile and cost pages share a contained portal header on narrow screens. */
body[data-private-workspace]>header.ip-header{flex-wrap:wrap;gap:12px;max-width:100%;box-sizing:border-box}
body[data-private-workspace]>header.ip-header>*{min-width:0;max-width:100%}
#cost-policy{margin-bottom:24px;padding:clamp(20px,4vw,36px)}
#cost-policy form{display:grid;gap:20px}
#cost-policy .translation-consent{display:flex;align-items:flex-start;gap:12px;line-height:1.6}
#cost-policy input[type=checkbox]{width:20px;height:20px;flex:0 0 20px;margin-top:4px}
#cost-statements{overflow-wrap:anywhere}

/* Personal profile presentation only. Keep portal navigation and media controls independent. */
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root){
  --profile-line:#9db9d9;--profile-heading:#214c86;
  max-width:1280px;display:grid;grid-template-columns:300px minmax(0,1fr);gap:24px;
  align-items:start;margin:28px auto;padding:0 24px 56px;
}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root)>:not(.personal-profile):not(.personal-page-grid){grid-column:1/-1;margin:0}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root)>.personal-profile{grid-column:1;grid-row:auto;border:1px solid var(--profile-line);border-radius:8px;box-shadow:none}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root)>.personal-page-grid{grid-column:2;grid-row:auto;margin:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root)>.personal-notice:not(:empty){grid-row:1;padding:12px 16px;border:1px solid var(--profile-line);border-radius:6px}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-cover{min-height:48px;padding:13px 18px;background:var(--profile-heading);align-items:center}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-cover-brand{font-size:1.05rem;letter-spacing:-.03em}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-cover-caption{display:none}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-profile-body{display:flex;flex-direction:column;align-items:stretch;gap:16px;padding:20px}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-avatar{margin:0;width:100%;height:248px;border:1px solid var(--profile-line);border-radius:5px;background:#26394b;flex:none}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-avatar img{object-fit:contain;background:#26394b}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-initials{font-size:4rem}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-identity{padding:0}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) h1{font-size:1.7rem;line-height:1.15;margin:6px 0 12px}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-identity .personal-headline{font-size:.96rem;line-height:1.5}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-actions{display:grid;grid-template-columns:1fr;gap:9px;padding:0}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-actions :is(a,button){min-height:44px;white-space:normal;line-height:1.4;border-radius:6px;box-shadow:none;margin:0;font-size:.9rem}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-section-nav{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:8px;background:color-mix(in srgb,#5893d1 12%,var(--vl-surface,#fff));border-top:1px solid var(--profile-line);overflow:visible}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-section-nav :is(a,button){display:flex;align-items:center;justify-content:flex-start;min-height:44px;box-sizing:border-box;padding:10px;font-size:.85rem;font-weight:650;white-space:normal;border-radius:4px;text-decoration:none}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-details,
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-booking-sidebar{display:contents}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-panel{padding:20px;border:1px solid var(--profile-line);border-radius:6px;box-shadow:none;min-width:0;overflow-wrap:anywhere}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-panel>h2{margin:-20px -20px 18px;padding:12px 18px;background:#deebfa;color:#203f68;border-radius:5px 5px 0 0;font-size:1.07rem;letter-spacing:0;line-height:1.4}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) :is(#profile-about,#profile-booking,#profile-pricing){grid-column:1/-1}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) #profile-booking>h2{background:#f7dfb6;color:#513811}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;margin-top:20px}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-facts>div{padding:12px 0}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-facts dt{font-size:.8rem}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-facts dd{line-height:1.5}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-services{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-service{padding-top:16px;display:flex;flex-direction:column;min-width:0}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-service .primary{margin-top:auto;white-space:normal;line-height:1.4;border-radius:6px;box-shadow:none}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-panel :is(p,dd){font-size:.94rem}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-panel .help{font-size:.85rem}
:is(.public-interpreter-page .personal-booking-page,#personal-booking-root) :is(button,a):focus-visible{outline:3px solid #3788d5;outline-offset:3px}
.public-interpreter-page{background:#f5f7fa}
.public-interpreter-page .public-profile-header{max-width:none;padding:24px max(24px,calc((100% - 1232px)/2));background:#214c86;color:#fff;border-bottom:6px solid #73a8df}
.public-interpreter-page .public-profile-header .brand{color:#fff;font-size:1.8rem}
.public-interpreter-page .public-profile-header .quiet{background:#fff;color:#214c86;border:0;border-radius:5px;min-height:44px;box-sizing:border-box;font-weight:650}
.public-interpreter-page .public-profile-footer{max-width:1280px;box-sizing:border-box;border-top:1px solid #c7d6e7;line-height:1.6}
@media(max-width:1050px){
 :is(.public-interpreter-page .personal-booking-page,#personal-booking-root){grid-template-columns:260px minmax(0,1fr);gap:20px}
 :is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-avatar{height:210px}
 :is(.public-interpreter-page .personal-booking-page,#personal-booking-root)>.personal-page-grid{grid-template-columns:minmax(0,1fr)}
 :is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-services{grid-template-columns:1fr}
}
@media(max-width:720px){
 :is(.public-interpreter-page .personal-booking-page,#personal-booking-root){display:flex;flex-direction:column;gap:18px;margin:18px auto;padding:0 14px 36px}
 :is(.public-interpreter-page .personal-booking-page,#personal-booking-root)>*{width:100%;box-sizing:border-box}
 :is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-profile-body{display:grid;grid-template-columns:104px minmax(0,1fr);gap:16px;padding:16px}
 :is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-avatar{width:104px;height:134px}
 :is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-initials{font-size:2.5rem}
 :is(.public-interpreter-page .personal-booking-page,#personal-booking-root) h1{font-size:1.45rem}
 :is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}
 :is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-actions>:first-child{grid-column:1/-1}
 :is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-panel{padding:18px}
 :is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-panel>h2{margin:-18px -18px 16px}
 :is(.public-interpreter-page .personal-booking-page,#personal-booking-root) .personal-facts{grid-template-columns:1fr}
 .public-interpreter-page .public-profile-header{padding:18px 14px}
}
@media(prefers-reduced-motion:reduce){.public-interpreter-page{scroll-behavior:auto}}
