/* Guest journey: compact, legible controls and one clear message entry. */
#pp-portal .pp-content,#pp-portal .pp-booking,#pp-portal .pp-item,#pp-portal .pp-walk-body{min-width:0;max-width:100%}
#pp-portal .pp-payment dl{grid-template-columns:repeat(3,minmax(0,1fr))}
#pp-portal .pp-payment dl>div{min-width:0}
#pp-portal .pp-payment dd{overflow-wrap:anywhere}
#pp-portal .pp-item-compact>summary{padding:14px;line-height:1.45}
#pp-portal .pp-item-compact>summary small{margin-top:6px;line-height:1.5}
#pp-portal .pp-item-compact[open]>summary{border-bottom:1px solid #e4ddd0;margin-bottom:12px}
#pp-portal .pp-item-compact .pp-walk-body{padding:0}
#pp-portal .pp-item-compact .pp-meta{margin-top:0}
#pp-portal .pp-back-to-trips{margin:0 0 12px}
#pp-portal .pp-conversation .pp-message-list{height:auto;min-height:0;max-height:45dvh;margin:16px 0;padding:0}
#pp-portal .pp-message-list:not(:has(.pp-message)){max-height:none;padding:12px;background:#f4f6f1;border-radius:7px}
#pp-portal .pp-conversation>p{margin:10px 0;line-height:1.5}
#pp-portal .pp-conversation form{margin-top:16px;padding-top:16px;border-top:1px solid #e4ddd0}
#pp-portal .pp-conversation-entry{padding-top:16px;border-top:1px solid #e4ddd0}
@media(max-width:600px){
 #pp-portal .pp-payment dl{gap:8px}#pp-portal .pp-payment dd{font-size:18px!important}
 #pp-portal .pp-payment dt{font-size:12px}#pp-portal .pp-booking{overflow-wrap:anywhere}
 #pp-portal .pp-item-compact{padding:0 12px 12px}#pp-portal .pp-item-compact>summary{margin:0 -12px}
 #pp-portal .pp-item-compact .pp-walk{grid-template-columns:1fr}
 #pp-portal .pp-conversation form>.pp-button{width:100%;margin:12px 0}
 #pp-portal .pp-conversation-entry .pp-button{width:100%}
}
#pp-portal .pp-next-step{padding:12px 14px;background:#eff5f0;border-left:3px solid #b98029;border-radius:6px;font:14px/1.6 Arial,sans-serif;margin:12px 0 18px}
#pp-portal .pp-payment-guidance{font-size:13px;line-height:1.6;color:#345349;margin:8px 0 16px}
#pp-portal .pp-address-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0}
#pp-portal .pp-address-row .pp-address{flex:1;min-width:0;margin:0}
#pp-portal .pp-copy-address{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;min-height:44px;padding:10px;border:1px solid #bcc9bf;border-radius:7px;background:transparent;color:#064c3b;cursor:pointer}
#pp-portal .pp-copy-status{flex-basis:100%;font:12px/1.5 Arial,sans-serif;color:#345349}
#pp-portal .pp-copy-status:empty{display:none}
#pp-portal .pp-copy-address:focus-visible,#pp-portal .pp-utility-action:focus-visible{outline:2px solid #86601f;outline-offset:3px}
#pp-portal .pp-utility-action{gap:7px;max-width:100%;font-size:12px;line-height:1.4;text-align:left;text-decoration:none;padding:6px 0;min-height:44px}
#pp-portal .pp-utility-action .pp-icon{width:18px;height:18px;flex-shrink:0}
#pp-portal .pp-address{font-size:13px;line-height:1.5;overflow-wrap:anywhere}
#pp-portal .pp-item-compact{border:1px solid #e7d9c5;border-radius:8px;margin:10px 0;padding:12px}
#pp-portal .pp-item-compact>summary{cursor:pointer;padding:4px 0;font:600 16px/1.4 Arial,sans-serif}
#pp-portal .pp-item-compact>summary small{display:block;font:13px/1.6 Arial,sans-serif;color:#53695e;margin:5px 0}
#pp-portal .pp-item-compact[open]>.pp-walk{margin-top:16px}
#pp-portal .pp-item-compact .pp-meeting{margin-top:12px}
#pp-portal .pp-conversation-entry{margin:16px 0 0}
#pp-portal .pp-conversation-entry a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;font-weight:600;border:1px solid #064c3b;border-radius:7px;padding:10px 16px;text-decoration:none;background:#064c3b;color:white}
#pp-portal .pp-conversation-entry a:hover{background:#155442}
#pp-portal .pp-has-rail .pp-card-actions{display:flex}
#pp-portal .pp-card-actions:empty{display:none}
#pp-portal .pp-print{margin-top:12px;min-height:44px}
#pp-portal .pp-archive-form small{display:block;font-size:12px;color:#53695e}
#pp-portal .pp-tool-status:empty{display:none}
#pp-portal .pp-conversation select{width:100%;padding:10px;border:1px solid #b9cec3;border-radius:6px;background:white;margin:6px 0;font-size:16px;min-height:44px}
#pp-portal .pp-details li{margin:10px 0;line-height:1.5}
#pp-portal .pp-right-rail .pp-support{display:none}
#pp-portal .pp-balance-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
#pp-portal .pp-balance-actions form{max-width:100%}
#pp-portal .pp-meeting .pp-address-row .pp-address{font:13px/1.5 Arial,sans-serif;margin:0;color:#345349}
#pp-portal .pp-card-actions:has(+.pp-print):empty{padding:0}
@media(max-width:899px){
 #pp-portal .pp-conversation-entry a,#pp-portal .pp-route-button{width:100%;box-sizing:border-box}
 #pp-portal .pp-auth-layout{display:flex;flex-direction:column;gap:18px}
 #pp-portal .pp-auth-card{order:0}#pp-portal .pp-auth-intro{order:1;padding:8px 4px}
 #pp-portal .pp-auth-intro h1{font-size:25px}#pp-portal .pp-auth-intro .pp-lead{font-size:13px}
 #pp-portal .pp-booking .pp-walk>.pp-photo{aspect-ratio:2.2/1;max-height:170px}
 #pp-portal .pp-payment dl{gap:6px}#pp-portal .pp-payment dt{font-size:12px;line-height:1.4}
 #pp-portal .pp-payment dd{font-size:20px}#pp-portal .pp-next-step{font-size:13px}
 #pp-portal .pp-text-link{min-height:44px;display:inline-flex;align-items:center}
 #pp-portal .pp-mobile-meeting .pp-meeting{padding:12px;margin-top:14px}
 #pp-portal .pp-mobile-meeting .pp-meeting p{font:13px/1.5 Arial,sans-serif;margin:6px 0 10px}
 #pp-portal .pp-meeting-name{font:600 14px/1.5 Arial,sans-serif;margin-left:0}
 #pp-portal .pp-details summary{font:500 13px/1.45 Arial,sans-serif;padding:10px 0}
 #pp-portal .pp-conversation-entry{margin:12px 0 0}
 #pp-portal .pp-balance-actions,#pp-portal .pp-balance-actions form,#pp-portal .pp-balance-actions button{width:100%}
 #pp-portal .pp-archive-form{margin-top:10px;padding-top:8px;border-top:1px solid #e6dfd3}
 #pp-portal .pp-print{margin-top:4px}
}
@media print{
 body.pp-print-one header,body.pp-print-one footer,body.pp-print-one .mobile-sticky-actions,body.pp-print-one #wpadminbar{display:none!important}
 body.pp-print-one #pp-portal .pp-booking:not(.pp-print-target),body.pp-print-one #pp-portal .pp-page-header,body.pp-print-one #pp-portal .pp-preparation,body.pp-print-one #pp-portal .pp-sidebar,body.pp-print-one #pp-portal .pp-tabs,body.pp-print-one #pp-portal .pp-right-rail,body.pp-print-one #pp-portal .pp-conversation,body.pp-print-one #pp-portal .pp-test-notice{display:none!important}
 body.pp-print-one #pp-portal .pp-print-target{display:block!important;break-inside:auto;width:100%;border:0}
 body.pp-print-one #pp-portal button,body.pp-print-one #pp-portal .pp-card-actions,body.pp-print-one #pp-portal .pp-conversation-entry,body.pp-print-one #pp-portal .pp-archive-form,body.pp-print-one #pp-portal iframe{display:none!important}
 body.pp-print-one #pp-portal .pp-mobile-meeting{display:block!important}
 body.pp-print-one #pp-portal .pp-container,body.pp-print-one #pp-portal .pp-dashboard-shell,body.pp-print-one #pp-portal .pp-content{display:block!important;width:100%;max-width:none;margin:0;padding:0}
}

#pp-portal .pp-conversation p{min-height:0!important}#pp-portal .pp-conversation>p:empty{display:none}#pp-portal .pp-message-list p{margin:0}

/* Walk headings and accounting stay within their own card. */
#pp-portal .pp-booking .pp-item-compact{padding:0;overflow:hidden}
#pp-portal .pp-booking .pp-item-compact>summary{display:grid;grid-template-columns:16px minmax(0,1fr);gap:6px 8px;padding:14px!important;margin:0;list-style:none;outline:none}
#pp-portal .pp-item-compact>summary::-webkit-details-marker{display:none}
#pp-portal .pp-item-compact>summary::before{content:'›';grid-row:1 / 3;align-self:start;font-size:20px;line-height:22px;text-align:center;transition:transform .15s}
#pp-portal .pp-item-compact[open]>summary::before{transform:rotate(90deg)}
#pp-portal .pp-item-compact>summary small{grid-column:2;margin:0!important}
#pp-portal .pp-item-compact>summary:focus-visible{box-shadow:inset 0 0 0 2px #987128;border-radius:7px}
#pp-portal .pp-item-compact>.pp-walk,#pp-portal .pp-item-compact>.pp-meeting,#pp-portal .pp-item-compact>.pp-payment{margin:12px 14px 14px!important}
#pp-portal .pp-guide-phone{display:inline-flex;align-items:center;min-height:44px;gap:7px;flex-wrap:wrap;max-width:100%;overflow-wrap:anywhere}
#pp-portal .pp-walk-payment h3{font-size:17px;margin:0 0 10px}
#pp-portal .pp-payment dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:100%}
#pp-portal .pp-payment dl>div{min-width:0;overflow-wrap:anywhere}
#pp-portal .pp-order-payment{margin-top:14px}
@media(max-width:599px){#pp-portal .pp-payment dd{font-size:18px}#pp-portal .pp-payment{padding:12px}#pp-portal .pp-payment dl>div{padding:0 5px}}

#pp-portal .pp-tabs{scrollbar-width:none}#pp-portal .pp-tabs::-webkit-scrollbar{display:none}
#pp-portal .pp-walk .pp-text-link{margin-right:12px}

@media(max-width:599px){
 #pp-portal .pp-walk-payment dl{display:flex;flex-direction:column;gap:0}
 #pp-portal .pp-walk-payment dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border:0;border-bottom:1px solid #e8e0d5;padding:8px 0}
 #pp-portal .pp-walk-payment dl>div:last-child{border-bottom:0}
 #pp-portal .pp-walk-payment dt{max-width:60%;font:13px/1.45 Arial,sans-serif}
 #pp-portal .pp-walk-payment dd{margin:0;white-space:nowrap;font:600 17px/1.45 Arial,sans-serif}
 #pp-portal .pp-walk-payment h3{display:block;font:600 15px/1.45 Arial,sans-serif}
}

/* Guest audit: hierarchy follows the stage of the walk, not the checkout container. */
#pp-portal .pp-history-booking .pp-photo{width:120px;height:90px;object-fit:cover;border-radius:7px}
#pp-portal .pp-history-booking .pp-walk{grid-template-columns:120px minmax(0,1fr);align-items:start}
#pp-portal .pp-history-booking .pp-walk-no-photo{grid-template-columns:1fr}
#pp-portal .pp-history-booking .pp-booking-top{margin-bottom:10px}
#pp-portal .pp-old-meeting{margin:12px 14px;border:0;border-top:1px solid #e5ded1;padding-top:6px}
#pp-portal .pp-old-meeting>summary{padding:10px 0;font:600 14px/1.5 Arial,sans-serif;cursor:pointer}
#pp-portal .pp-old-meeting .pp-meeting{margin:6px 0 12px;border:0;padding:12px;background:#f7f6f0}
#pp-portal .pp-walk-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin:12px 14px 18px}
#pp-portal .pp-walk-actions form{margin:0}
#pp-portal .pp-walk-actions button{min-height:40px}
#pp-portal .pp-review-sent{color:#0b604b;background:#edf4ed;border-radius:5px;padding:8px 12px}
#pp-portal .pp-payment-breakdown{display:grid;gap:5px;padding:12px 0;border-bottom:1px solid #e5ded1;font:14px/1.5 Arial,sans-serif}
#pp-portal .pp-payment-breakdown span{color:#4b625a}
#pp-portal .pp-payment-guidance{font:13px/1.6 Arial,sans-serif;color:#4b625a}
#pp-portal .pp-remember{display:flex;align-items:flex-start;gap:10px;font:14px/1.5 Arial,sans-serif;margin:8px 0}
#pp-portal .pp-remember input{width:18px;height:18px;min-height:18px;margin-top:2px;flex:0 0 18px}
#pp-portal .pp-logout-all{margin-top:20px;border-top:1px solid #e5ded1;padding-top:14px}
#pp-portal .pp-order-payment{padding:6px 0}
#pp-portal .pp-item-compact>summary small{line-height:1.5}
@media(max-width:599px){
 #pp-portal .pp-booking{padding:12px!important}
 #pp-portal .pp-history-booking .pp-walk{grid-template-columns:84px minmax(0,1fr);gap:12px}
 #pp-portal .pp-history-booking .pp-photo{width:84px;height:84px}
 #pp-portal .pp-history-booking .pp-walk-no-photo{grid-template-columns:1fr}
 #pp-portal .pp-item-compact>summary{padding:14px 12px!important}
 #pp-portal .pp-walk-actions{gap:8px;margin:10px 12px 14px}
 #pp-portal .pp-payment dl{display:flex;flex-direction:column;gap:0}
 #pp-portal .pp-payment dl>div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border:0;border-bottom:1px solid #e5ded1}
 #pp-portal .pp-payment dd{margin:0;white-space:nowrap;font:600 17px/1.5 Arial,sans-serif}
 #pp-portal .pp-payment dt{max-width:60%;font:13px/1.5 Arial,sans-serif}
}

/* 2.15.1: complete card outline and a single, inset action row. */
#pp-portal .pp-booking .pp-item.pp-item-compact{border:1px solid #e7d9c5;border-radius:8px}
#pp-portal .pp-walk-actions{margin:10px 14px 14px;gap:8px;align-items:stretch}
#pp-portal .pp-walk-actions:empty{display:none}
#pp-portal .pp-walk-actions form{display:flex}
#pp-portal .pp-walk-actions .pp-text-link{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:40px;padding:8px 12px;margin:0;border:1px solid #d6dfd5;border-radius:6px;background:#f7f9f5;color:#064936;text-decoration:none;font:600 12px/1.4 Arial,sans-serif;white-space:normal;text-align:center}
#pp-portal .pp-walk-actions .pp-text-link:hover{background:#e9f1e9;border-color:#9fb8aa}
#pp-portal .pp-walk-actions .pp-text-link:focus-visible{outline:2px solid #987128;outline-offset:2px}
#pp-portal .pp-walk-payment{padding:12px!important}
#pp-portal .pp-walk-payment dd{font:600 18px/1.4 Arial,sans-serif!important}
#pp-portal .pp-walk-payment p{margin:8px 0 0;font-size:12px;line-height:1.45}
#pp-portal .pp-walk-payment p.pp-payment-status{margin:0 0 6px;padding:4px 8px;font-size:11px}
#pp-portal .pp-old-meeting{margin-bottom:6px}
@media(max-width:599px){
 #pp-portal .pp-walk-payment dl>div{padding:6px 0}
 #pp-portal .pp-walk-payment dd{font-size:15px!important;font-weight:600}
 #pp-portal .pp-walk-payment dt{font-size:12px}
 #pp-portal .pp-walk-payment p{font-size:11px}
 #pp-portal .pp-walk-actions{margin:8px 14px 14px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px}
 #pp-portal .pp-walk-actions form button{width:100%}
 body.pp-tourist-portal-page footer.site-footer{padding-bottom:16px!important}
}
@media(max-width:599px){body.pp-tourist-portal-page .site-footer .copyright{padding-right:44px;}}

/* Consistent landscape photography and a readable per-excursion statement. */
#pp-portal .pp-booking.pp-history-booking .pp-walk{grid-template-columns:220px minmax(0,1fr);gap:20px;align-items:center}
#pp-portal .pp-booking.pp-history-booking .pp-walk>.pp-photo{width:220px;height:165px;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
#pp-portal .pp-booking.pp-history-booking .pp-walk.pp-walk-no-photo{grid-template-columns:1fr}
#pp-portal .pp-history-booking .pp-meta{gap:9px;margin:0 0 10px}
#pp-portal .pp-history-booking .pp-meta dd{font-size:14px;line-height:1.5}
#pp-portal .pp-payment-list{display:grid;gap:10px;margin:12px 0}
#pp-portal .pp-payment-list .pp-payment-breakdown{padding:14px;border:1px solid #e5ded1;border-radius:7px;background:#fffefa;gap:10px}
#pp-portal .pp-payment-breakdown h3,#pp-portal .pp-payment-total h3{font:600 14px/1.5 Arial,sans-serif;margin:0}
#pp-portal .pp-payment-breakdown dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}
#pp-portal .pp-payment-breakdown dt{font:12px/1.5 Arial,sans-serif;color:#586b63}
#pp-portal .pp-payment-breakdown dd{font:600 15px/1.5 Arial,sans-serif;margin:3px 0 0;white-space:nowrap}
#pp-portal .pp-payment-total{padding:14px;background:#edf3ed;border-radius:7px;margin:12px 0}
#pp-portal .pp-payment-total dl{display:grid;gap:8px;margin:10px 0 0}
#pp-portal .pp-payment-total dl>div{display:flex;justify-content:space-between;gap:14px}
#pp-portal .pp-payment-total dt{font:13px/1.5 Arial,sans-serif}
#pp-portal .pp-payment-total dd{font:600 15px/1.5 Arial,sans-serif;margin:0;white-space:nowrap}
#pp-portal .pp-order-payment>summary:focus-visible{outline:2px solid #987128;outline-offset:2px;border-radius:5px}
@media(max-width:599px){
 #pp-portal .pp-booking.pp-history-booking .pp-walk{grid-template-columns:1fr;gap:12px}
 #pp-portal .pp-booking.pp-history-booking .pp-walk>.pp-photo{width:100%;height:auto;aspect-ratio:16/9;max-height:190px}
 #pp-portal .pp-history-booking .pp-meta dd{font-size:13px}
 #pp-portal .pp-payment-list .pp-payment-breakdown,#pp-portal .pp-payment-total{padding:12px}
}
/* Dedicated guest conversation: compact context, readable history and unobscured composer. */
#pp-portal:has(.pp-guest-chat) .pp-page-header{display:none}
#pp-portal:has(.pp-guest-chat) .pp-content{max-width:820px;width:100%;min-width:0}
#pp-portal .pp-back-to-trips{display:inline-flex;margin:0 0 16px;font:600 13px/1.5 Arial,sans-serif}
#pp-portal .pp-guest-chat{padding:24px;border:1px solid #dfdbcf;border-radius:10px;background:#fffefa;box-shadow:none}
#pp-portal .pp-guest-chat h2{font-size:26px;margin:0 0 12px}
#pp-portal .pp-guest-chat .pp-chat-tours{padding:12px;background:#f3f5ef;border-radius:6px;font:13px/1.5 Arial,sans-serif}
#pp-portal .pp-guest-chat .pp-chat-tours strong{font-weight:400}
#pp-portal .pp-guest-chat .pp-message-list{max-height:420px;max-height:45dvh;margin:18px 0 8px;padding:2px;scrollbar-width:thin}
#pp-portal .pp-guest-chat .pp-message-list:not(:has(.pp-message)){padding:12px;margin:14px 0 8px;background:#f5f6f2}
#pp-portal .pp-guest-chat .pp-chat-empty{font:13px/1.6 Arial,sans-serif;color:#52685e}
#pp-portal .pp-guest-chat .pp-message{max-width:88%;box-sizing:border-box}
#pp-portal .pp-guest-chat .pp-message.from-team{align-self:flex-start;background:#f0f2ec}
#pp-portal .pp-guest-chat .pp-message.from-guest{align-self:flex-end;background:#e2eee7}
#pp-portal .pp-guest-chat .pp-chat-refresh{display:inline-flex;align-items:center;min-height:36px;font:13px/1.5 Arial,sans-serif;margin:0}
#pp-portal .pp-guest-chat .pp-chat-status:empty{display:none}
#pp-portal .pp-guest-chat form[data-pp-submit]{margin-top:8px;padding-top:12px}
#pp-portal .pp-guest-chat label{margin:8px 0 0;font:600 13px/1.5 Arial,sans-serif}
#pp-portal .pp-guest-chat [data-topic-hint][hidden]{display:none}
#pp-portal .pp-guest-chat textarea{min-height:120px;margin:8px 0 12px;background:white}
#pp-portal .pp-guest-chat select{font-weight:400;margin:6px 0;box-sizing:border-box}
#pp-portal .pp-guest-chat .pp-chat-note{margin:12px 0 0;font:12px/1.5 Arial,sans-serif}
html body.pp-tourist-portal-page:has(.pp-guest-chat) .mobile-sticky-actions{display:none!important}
@media(max-width:899px){
 #pp-portal .pp-guest-chat{padding:16px;margin-bottom:16px}
 #pp-portal .pp-guest-chat h2{font-size:23px}
 #pp-portal .pp-guest-chat .pp-message{max-width:94%;padding:10px 12px}
 #pp-portal .pp-guest-chat .pp-message p{font-size:14px;line-height:1.55}
 #pp-portal .pp-guest-chat form>.pp-button{margin:0;width:100%}
 #pp-portal .pp-back-to-trips{margin:0 0 12px;min-height:36px;align-items:center}
}

html body.pp-tourist-portal-page:has(.pp-guest-chat){padding-bottom:0!important}

.pp-card-payment-option{padding:16px 0;border-bottom:1px solid #dedfd8}.pp-card-payment-option h3{font-size:17px;line-height:1.4;margin:0 0 10px}.pp-card-payment-option input{width:100%;min-width:0}.pp-payment-share{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:10px}.pp-balance-actions{padding:16px;border:1px solid #d4dfd8;border-radius:10px;background:#f2f7f3;margin:16px 0}.pp-balance-actions h3{margin:0 0 8px}.pp-balance-actions p{font:14px/1.5 Arial,sans-serif}.pp-balance-actions form+form{margin-top:10px}#walk-card-payment{scroll-margin-top:100px}
#pp-portal .pp-meeting{background:#eef4ec;border-radius:12px}
#pp-portal .pp-map-toggle{margin-top:10px}
#pp-portal .pp-map-toggle summary{cursor:pointer;padding:8px 0}

#pp-portal .pp-item-compact > :is(.pp-balance-actions,.pp-cancel-request) {
 box-sizing:border-box;
 width:calc(100% - 28px);
 max-width:calc(100% - 28px);
 min-width:0;
 margin-inline:14px;
 grid-column:1/-1;
}
#pp-portal .pp-cancel-request {
 margin-block:4px 14px;
 color:#3b5149;
 font:14px/1.5 Arial,sans-serif;
}
#pp-portal .pp-cancel-request > summary {
 display:flex;align-items:center;gap:9px;
 min-height:44px;padding:0 2px;box-sizing:border-box;
 cursor:pointer;list-style:none;font-weight:600;
}
#pp-portal .pp-cancel-request > summary::-webkit-details-marker {display:none}
#pp-portal .pp-cancel-request > summary::after {
 content:'';width:7px;height:7px;border:solid currentColor;border-width:0 1.5px 1.5px 0;
 transform:rotate(45deg);margin:-3px 3px 0;
}
#pp-portal .pp-cancel-request[open] > summary::after {transform:rotate(225deg);margin-top:4px}
#pp-portal .pp-cancel-request > summary:focus-visible {outline:2px solid #467260;outline-offset:1px;border-radius:4px}
#pp-portal .pp-cancel-request > .pp-cancel-body {
 padding:12px 14px;border:1px solid #dfdcd2;border-radius:8px;background:#faf8f3;
}
#pp-portal .pp-cancel-body p {margin:0 0 10px;overflow-wrap:anywhere}
#pp-portal .pp-cancel-body form {margin:0}
#pp-portal .pp-cancel-body button {min-height:42px;max-width:100%;white-space:normal}
@media print {#pp-portal .pp-cancel-request {display:none}}

#pp-portal .pp-item>.pp-balance-actions{
 display:grid;
 grid-template-columns:minmax(0,1fr);
 gap:10px;
 width:auto;
 min-width:0;
 margin:8px 14px 16px;
 background:#faf4e9;
 border-radius:10px;
}
#pp-portal .pp-item>.pp-balance-actions :is(h3,p,form){margin:0;min-width:0;overflow-wrap:anywhere}
#pp-portal .pp-item>.pp-balance-actions :is(form,button){box-sizing:border-box;max-width:100%}
body:has(#pp-portal .pp-booking) .mobile-sticky-actions{display:none!important}
#pp-portal .pp-booking .pp-item-compact>summary:has(.pp-date-tile){grid-template-columns:48px minmax(0,1fr) 14px;align-items:center}
#pp-portal .pp-item-compact>summary:has(.pp-date-tile)::before{grid-column:3;grid-row:1/3;align-self:center}
#pp-portal .pp-date-tile{grid-area:1/1/3/2;background:#e4eee5;border-radius:8px;text-align:center;padding:5px 0;font:24px Georgia,serif}
#pp-portal .pp-item-compact>summary .pp-date-tile small{font:12px Arial,sans-serif;display:block}
#pp-portal .pp-date-tile+span{grid-column:2}
#pp-portal .pp-booking-tools{min-width:0}
@media screen and (min-width:1050px){
 #pp-portal .pp-booking:has(>.pp-booking-tools){display:block}
 #pp-portal .pp-booking-tools{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:16px;padding:12px 16px;background:#f7f7f1;border-radius:10px}
 #pp-portal .pp-booking-tools>*{margin:0}
 #pp-portal .pp-booking-tools>.pp-order-payment{flex:1 1 200px}
 #pp-portal .pp-booking-tools>:is(details[open],.pp-balance-actions,.pp-guest-note){flex-basis:100%}
 #pp-portal .pp-booking-tools>.pp-card-actions:empty{display:none}
 #pp-portal .pp-booking-tools>.pp-conversation-entry{padding:0;border:0}
 #pp-portal .pp-item-compact[open]:has(>.pp-meeting)::details-content{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;
 }
 #pp-portal .pp-item-compact:has(>.pp-meeting)>.pp-walk{grid-column:1}
 #pp-portal .pp-item-compact:has(>.pp-meeting)>.pp-meeting{grid-column:2;grid-row:1;margin-left:0}
 #pp-portal .pp-item-compact:has(>.pp-meeting)>:is(.pp-payment,.pp-balance-actions,.pp-walk-actions){grid-column:1/-1}
}
