/* Only these pages use the calm layout; maps, booking controls and expert settings keep their own rules. */
body:is(.calm-account,.calm-notifications,.calm-support) main.container{width:100%;max-width:720px;margin-inline:auto;box-sizing:border-box;padding-inline:var(--space-4)}
body:is(.calm-account,.calm-notifications,.calm-support) main h1{margin-block:var(--space-4);font-size:var(--type-page-title,26px)}
body:is(.calm-account,.calm-notifications,.calm-support) main .card{box-shadow:none}
body.calm-account #accountContent{display:flex;flex-direction:column;gap:var(--space-4)}
body.calm-account .account-identity{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-4) 0;border:0;border-bottom:1px solid var(--border);border-radius:0;margin:0;background:transparent}
body.calm-account #identity{grid-column:1;margin:0;font-size:var(--type-section);font-weight:650;overflow-wrap:anywhere}
body.calm-account #membershipState{grid-column:1;margin:0;color:var(--ink-muted);font-size:var(--type-small)}
body.calm-account #logout{grid-column:2;grid-row:1 / span 2;width:auto;min-height:var(--touch-target);padding:var(--space-2);background:transparent;color:var(--brand-ink);border:0;box-shadow:none}
body.calm-account #accountNextAction{padding:0;margin:0;border:0;background:transparent}
body.calm-account #accountNextAction h2{font-size:var(--type-section);margin-block:var(--space-2)}
body.calm-account #accountNextAction a{margin:0;width:100%;box-sizing:border-box;min-height:var(--touch-target)}
body.calm-account .account-links{display:block;margin:0;border:0;background:transparent;padding:0}
body.calm-account .account-links>a{display:flex;align-items:center;gap:var(--space-3);min-height:56px;margin:0;padding:var(--space-3) 0;box-sizing:border-box;box-shadow:none;background:transparent;color:var(--ink-body);border:0;border-bottom:1px solid var(--border);border-radius:0;font:inherit;text-align:left;text-decoration:none}
body.calm-account .account-links>a::after{content:'›';margin-left:auto;color:var(--ink-muted)}
body.calm-account .account-links .ui-icon{width:24px;height:24px;flex-shrink:0}
body.calm-account [data-account-notifications]>summary{min-height:var(--touch-target);align-content:center;cursor:pointer}
body.calm-account [data-account-notifications] .notification-settings{border:0;padding:var(--space-3) 0;background:transparent;margin:0}
body.calm-notifications #accountContent{display:flex;flex-direction:column;gap:var(--space-4)}
body.calm-notifications .booking-notifications,body.calm-notifications .notification-settings{padding:0;border:0;background:transparent;margin:0;position:relative}
body.calm-notifications .booking-notifications>details>summary{padding-block:var(--space-3);padding-right:calc(var(--touch-target)*3);min-height:var(--touch-target);font-size:var(--type-section);box-sizing:border-box}
body.calm-notifications .notification-refresh{position:absolute;right:0;top:0;margin:0;width:auto;padding:var(--space-2);min-height:var(--touch-target);border:0;background:transparent;box-shadow:none}
body.calm-notifications .notification-item{margin:0;padding:var(--space-4) 0;border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;gap:var(--space-2)}
body.calm-notifications .notification-item h3{margin:0;font-size:var(--type-body);font-weight:650}
body.calm-notifications .notification-item p{margin:0}
body.calm-notifications .notification-item>span{font-size:var(--type-small);color:var(--ink-muted)}
body.calm-notifications .notification-item .btn{margin-top:var(--space-2);min-height:var(--touch-target)}
body.calm-notifications .notification-list-help{margin-block:var(--space-3)}
body.calm-notifications .notification-list-help summary{min-height:var(--touch-target);align-content:center;cursor:pointer;color:var(--ink-muted)}
body.calm-support .support-layout{display:flex;flex-direction:column;gap:var(--space-4)}
body.calm-support #rightsContent{margin:0;padding:0;border:0;background:transparent;width:100%;min-width:0}
body.calm-support .support-layout>aside{width:100%;padding:0}
body.calm-support .support-reservation-link{display:flex;align-items:center;min-height:var(--touch-target);padding-block:var(--space-2)}
body.calm-support .support-email{border-top:1px solid var(--border);padding-block:var(--space-2)}
body.calm-support .support-email summary,body.calm-support .support-entry-guidance summary{min-height:var(--touch-target);align-content:center;cursor:pointer;font-weight:500;color:var(--ink-muted)}
body.calm-support .support-entry-guidance p{font-size:var(--type-small);margin-block:var(--space-2)}
body.calm-support .support-workspace>.review-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:var(--space-2);margin:0 0 var(--space-3)}
body.calm-support .support-workspace>.review-actions .btn{width:auto;min-width:0}
body.calm-support .support-workspace>.review-actions .btn.ghost{border:0;background:transparent;box-shadow:none;padding-inline:var(--space-2)}
body.calm-support #supportHistory h2{font-size:var(--type-section);margin-block:var(--space-3)}
body.calm-support .support-workspace .support-ticket-link{border:0;border-bottom:1px solid var(--border);background:transparent;border-radius:0;margin:0;padding:var(--space-4) 0}
body.calm-support .support-ticket-link strong{font-size:var(--type-body)}
body.calm-support #rightsForm{display:grid;gap:var(--space-3)}
body.calm-support #rightsForm label{display:grid;gap:var(--space-2)}
body.calm-support #rightsForm :is(select,textarea){width:100%;font:inherit;box-sizing:border-box;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-control)}
body:is(.calm-account,.calm-notifications,.calm-support) [hidden]{display:none!important}
@media(max-width:430px){body.calm-support .support-workspace>.review-actions{grid-template-columns:minmax(0,1fr) auto}body.calm-support .support-list-refresh{grid-column:2;justify-self:end}}
body.calm-support.support-chat-open main.container>.support-layout{display:block}
body.calm-support.support-chat-open .support-layout>aside{display:none}
body.calm-support.support-chat-open .support-layout{gap:0}
body.calm-support .support-workspace>.review-actions{grid-template-columns:minmax(0,1fr) auto}

/* Notification summaries and support composer use the same quiet reading rhythm. */
body.calm-notifications .notification-item{display:flex;flex-direction:column;align-items:flex-start}
body.calm-notifications .notification-item>time{font-size:var(--type-small);color:var(--ink-muted)}
body.calm-notifications .notification-item-info{width:100%;border:0;background:transparent;padding:0;margin:0}
body.calm-notifications .notification-item-info>summary{font-size:var(--type-small);font-weight:400;color:var(--ink-muted);min-height:var(--touch-target);align-content:center}
body.calm-notifications .notification-item-info p{font-size:var(--type-body);margin-block:var(--space-2)}
body.calm-notifications .notification-item-info span{font-size:var(--type-small);color:var(--ink-muted)}
body.calm-notifications .notification-item>.btn{align-self:stretch;background:var(--brand-ink);color:var(--card);border-color:var(--brand-ink);text-align:center}
body.calm-support .support-workspace .support-chat-welcome{padding:var(--space-4);text-align:left}
body.calm-support .support-chat-welcome h3{margin-bottom:var(--space-3)}
body.calm-support .support-chat-welcome p{font-size:var(--type-body);margin:var(--space-3) 0;max-width:none}
body.calm-support .support-chat-welcome>details{border:0;padding:0;background:transparent;margin:0}
body.calm-support .support-chat-welcome summary{font-size:var(--type-small);color:var(--ink-muted);min-height:var(--touch-target);align-content:center}
