/* A persistent, dismissible counselling announcement. */
html:has(.counselling-notice:not([hidden])){scroll-padding-bottom:var(--counselling-notice-space,130px)}
body:has(.counselling-notice:not([hidden])){padding-bottom:var(--counselling-notice-space,130px)}
.counselling-notice{position:fixed;z-index:25;inset-inline:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:calc(100% - 32px);max-width:1080px;margin-inline:auto;display:flex;align-items:center;gap:24px;padding:18px 20px 18px 24px;border:0;border-radius:12px;background:var(--surface-inverse);color:var(--text-on-inverse);box-shadow:none}
.counselling-notice-copy{flex:1;min-width:0;display:grid;grid-template-columns:9px minmax(0,1fr);column-gap:14px;align-items:start}
.counselling-notice-copy .availability-dot{grid-column:1;grid-row:1 / span 2;margin-top:8px}
.counselling-notice-copy :is(strong,p){grid-column:2}
.counselling-notice strong{display:block;font:700 18px/1.35 var(--font-display);letter-spacing:-.025em}
.counselling-notice p{margin:5px 0 0;font-size:14px;line-height:1.4;color:var(--text-muted-inverse)}
.counselling-notice .btn{flex-shrink:0;background:var(--text-on-inverse);color:var(--surface-inverse);min-height:48px}
.counselling-notice .btn:hover{background:var(--text-muted-inverse)}
.counselling-notice-dismiss{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;padding:0;border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--text-on-inverse);cursor:pointer}
.counselling-notice-dismiss:hover{border-color:var(--text-muted-inverse)}
.counselling-notice :is(a,button):focus-visible{outline:3px solid var(--text-on-inverse);outline-offset:4px}
@media(max-width:700px){
 html:has(.counselling-notice:not([hidden])){scroll-padding-bottom:var(--counselling-notice-space,190px)}
 body:has(.counselling-notice:not([hidden])){padding-bottom:var(--counselling-notice-space,190px)}
 .counselling-notice{inset-inline:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));width:calc(100% - 24px);display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px;padding:12px 14px}
 .counselling-notice strong{font-size:16px}
 .counselling-notice p{display:none}
 .counselling-notice .btn{grid-column:1/-1;justify-self:start;min-height:44px;padding:10px 16px;font-size:14px}
 .counselling-notice-dismiss{grid-column:2;grid-row:1;align-self:start}
}
@media print{.counselling-notice{display:none!important}body:has(.counselling-notice){padding-bottom:0}}
