/* Theme-aware portal presentation, scoped to authenticated app and dialogs. */
:root{--pp-theme-primary:#102615;--pp-theme-gold:#D9B76E}
:root[data-pp-website-theme="burgundy"]{--pp-theme-primary:#351723;--pp-theme-gold:#D9B76E;--pp-deep:#351723;--pp-forest:#351723}
:root[data-pp-website-theme="green"]{--pp-theme-primary:#102615;--pp-theme-gold:#D9B76E}
/* Menu copy must be two distinct lines, never concatenated. */
#mobileMoreList .v114-more-copy{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:5px!important;min-width:0!important;line-height:1.35!important;text-align:left!important}
#mobileMoreList .v114-more-copy>b{display:block!important;font-size:inherit!important;line-height:1.25!important;white-space:normal!important;overflow-wrap:anywhere!important}
#mobileMoreList .v114-more-copy>span{display:block!important;font-size:.83em!important;line-height:1.4!important;white-space:normal!important;overflow-wrap:anywhere!important;font-weight:400!important}
#mobileMoreList button[data-k]{display:flex!important;align-items:center!important;gap:14px!important;min-width:0!important}
#mobileMoreList .v114-more-icon{flex:0 0 auto!important}
/* A restrained gold outline on structural elements; avoid nested double frames. */
#workspace .v118-profile-card,#workspace .v114-action,#workspace .panel,#workspace .card,#workspace .pp-calendar-booking,#mobileMoreList button[data-k]{border-color:rgba(217,183,110,.65)!important}
#mobileNav button.active,#workspace .btn.dark,#workspace button.primary,#workspace .v114-action.active{background-color:var(--pp-theme-primary)!important;color:#fff!important;border-color:var(--pp-theme-gold)!important}
#workspace .v118-profile-copy h2,#workspace .panel>h2,#workspace .card>h2{color:var(--pp-theme-primary)!important}
@media(max-width:640px){#mobileMoreList .v114-more-copy{gap:4px!important}}

/* Booking categories, accessible tabs and incremental history. */
.pp-booking-tablist{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 16px;border-bottom:1px solid rgba(217,183,110,.65);padding-bottom:12px}
.pp-booking-tab{font:inherit;font-weight:700;border:1px solid rgba(217,183,110,.75);background:#fff;color:var(--pp-theme-primary);border-radius:999px;padding:10px 14px;cursor:pointer;min-height:44px}
.pp-booking-tab.active{background:var(--pp-theme-primary);color:#fff}
.pp-booking-tab:focus-visible{outline:3px solid var(--pp-theme-gold);outline-offset:2px}
.pp-customer-booking-tabs [role="tabpanel"][hidden]{display:none!important}
.pp-customer-booking-tabs .item{border:1px solid rgba(217,183,110,.65);border-radius:15px;margin:10px 0;padding:14px}
.pp-booking-load-more{margin-top:14px}
@media(max-width:520px){.pp-booking-tablist{gap:5px}.pp-booking-tab{padding:9px 11px;font-size:13px}}
/* Calendar appointment branding: preserve status semantics and the existing blue left edge. */
#workspace .pp-cal-appt-top,#workspace .pp-cal-card-call,#workspace .pp-cal-card-navigate{background:var(--pp-theme-primary)!important;color:#fff!important}
#workspace .pp-cal-appt-content>b,#workspace .pp-cal-appt-actions{color:var(--pp-theme-primary)!important}
#workspace .pp-cal-appointment{border-color:rgba(217,183,110,.7)!important}
#workspace .pp-cal-appt-top strong{color:#f0dba6!important}
/* Customer hero and premium menu surfaces. */
body.pp-role-customer #workspace .v114-hero,body.pp-role-customer #workspace .v136-customer-home .v114-hero{background:var(--pp-theme-primary)!important;border:1.5px solid var(--pp-theme-gold)!important}
#mobileMoreList button[data-k]{border:1px solid rgba(217,183,110,.68)!important;border-radius:16px!important;padding:13px 15px!important;margin-bottom:9px!important;box-shadow:0 3px 12px rgba(0,0,0,.035)}
#mobileMoreList button[data-k]:focus-visible{outline:3px solid var(--pp-theme-gold)!important;outline-offset:2px!important}
