.push-settings{margin-top:22px;padding-top:18px;border-top:1px solid rgba(128,160,149,.25);display:grid;gap:10px;min-width:0}
.push-settings h3{font-size:16px;margin:0}.push-settings p{font-size:14px;line-height:1.5;margin:0;opacity:.8;overflow-wrap:anywhere}
.push-settings button{width:100%;font:inherit;font-size:14px;font-weight:600;line-height:1.4;white-space:normal;padding:12px 16px;min-height:44px;border:1px solid #cadcd2;border-radius:15px;background:linear-gradient(145deg,#f1f7f3,#e5efe9);color:#365f50;box-shadow:inset 0 1px rgba(255,255,255,.65);cursor:pointer;transition:background .2s,border-color .2s}
.push-settings button[data-action="enable"]{background:linear-gradient(135deg,#487867,#365f50);color:#fff;border-color:#487867}
.push-settings button:hover:not(:disabled){border-color:#86aa98;background:#e0ece5}
.push-settings button[data-action="enable"]:hover:not(:disabled){background:#365f50}
.push-settings button:disabled{opacity:.55;cursor:wait}
body.dark-theme .push-settings button{background:linear-gradient(145deg,rgba(151,197,172,.12),rgba(151,197,172,.05));color:#d8eee1;border-color:rgba(169,209,187,.25);box-shadow:inset 0 1px rgba(255,255,255,.05)}
body.dark-theme .push-settings button[data-action="enable"]{background:linear-gradient(135deg,#bbd9ad,#8ac7b3);color:#173c2f;border-color:#d9eee266}
body.dark-theme .push-settings button:hover:not(:disabled){background:rgba(151,197,172,.18);border-color:rgba(169,209,187,.45)}
body.dark-theme .push-settings button[data-action="enable"]:hover:not(:disabled){background:linear-gradient(135deg,#c6e0ba,#9cd2bf)}
@media(prefers-reduced-motion:reduce){.push-settings button{transition:none}}
.push-settings a{font-size:14px;line-height:1.5;color:inherit;text-underline-offset:3px}
#avatar-editor.profile-sheet{max-height:calc(100dvh - 32px);overflow-y:auto}
.team-mobile .mobile-profile{font:inherit;color:inherit;background:none;border:0;padding:8px;min-height:44px;cursor:pointer}
@media(max-width:700px){#avatar-editor.profile-sheet{max-height:calc(100dvh - 16px);padding-bottom:max(22px,env(safe-area-inset-bottom))}}
.push-settings h4{margin:12px 0 0;font-size:15px}.push-devices{display:grid;gap:12px}.push-device{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:14px;border:1px solid rgba(128,160,149,.25);border-radius:16px;min-width:0}.push-device strong,.push-device small,.push-device input,.push-device p{grid-column:1/-1;overflow-wrap:anywhere}.push-device small{opacity:.7;font-size:12px}.push-device input{box-sizing:border-box;margin:0;width:100%;font-size:16px}.push-device input[hidden]{display:none}.push-device button{padding:10px;font-size:13px}.push-device .push-device-remove{color:#a74440;border-color:#c85e5840}body.dark-theme .push-device .push-device-remove{color:#ffc0ba}.push-device p:empty{display:none}

/* Quiet mobile account navigation. */
@media(max-width:700px){
  .team-mobile{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;margin-bottom:16px}
  .team-mobile [data-team-open],.team-mobile .mobile-profile{display:flex;align-items:center;gap:6px;min-width:0;min-height:30px;padding:6px 11px;font:inherit;font-size:11px;font-weight:500;line-height:1.3;color:#607d70;background:linear-gradient(145deg,rgba(255,255,255,.38),rgba(255,255,255,.12));border:1px solid rgba(255,255,255,.62);border-radius:20px;box-shadow:inset 0 1px rgba(255,255,255,.6),0 2px 6px rgba(63,107,95,.04);backdrop-filter:blur(12px) saturate(130%);-webkit-backdrop-filter:blur(12px) saturate(130%);cursor:pointer;transition:color .2s,background .2s;white-space:nowrap}
  .team-mobile [data-team-open]{grid-column:1;grid-row:1;justify-content:center;justify-self:start}
  .team-mobile .mobile-profile{grid-column:3;grid-row:1;justify-content:center;justify-self:end}
  .team-mobile .nav-icon{width:14px!important;height:14px!important;margin:0!important;flex:0 0 14px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
  .mobile-account-info{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;padding:0;min-width:0;color:#71897f}
  .mobile-account-info small{display:none}
  .mobile-account-role{font-size:11px;font-weight:500;line-height:1.4;text-align:center;overflow-wrap:anywhere;color:#607d70}
  .team-mobile button:hover,.team-mobile button:active{color:#365f50;background:rgba(255,255,255,.48)}
  .team-mobile button:focus-visible{outline:2px solid #538d7d;outline-offset:3px}
  html[data-theme="dark"] .team-mobile button{color:#a9c0b7;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.13);box-shadow:inset 0 1px rgba(255,255,255,.08),0 2px 6px rgba(0,0,0,.08)}
  html[data-theme="dark"] .team-mobile button:hover,html[data-theme="dark"] .team-mobile button:active{color:#d8eee1;background:rgba(255,255,255,.1)}
  html[data-theme="dark"] .mobile-account-info{color:#8da69b}
  html[data-theme="dark"] .mobile-account-role{color:#a9c0b7}
}

@media(max-width:360px){.team-mobile{gap:5px}.team-mobile [data-team-open],.team-mobile .mobile-profile{padding-inline:8px;gap:4px;font-size:10px}.mobile-account-role{font-size:10px}}

/* Calendar header: utility actions, title and primary action have distinct places. */
.page-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px 24px;align-items:end;margin-bottom:24px}.calendar-heading{grid-column:1;grid-row:2;min-width:0}.page-header .header-tools{grid-column:1/-1;grid-row:1;display:flex;justify-content:flex-end;align-items:center;gap:6px}.page-header .header-actions{grid-column:2;grid-row:2;display:flex}.page-header .header-tools :is(.appearance-toggle,.notification-bell){position:relative;top:auto;right:auto;width:40px;height:40px;min-height:40px;padding:0;border-radius:12px;box-shadow:inset 0 1px #ffffff44;background:transparent;flex-shrink:0}.header-tools .appearance-label{display:none}.header-tools .appearance-icon{width:18px;height:18px}.header-tools .notification-bell svg{width:20px;height:20px}.header-tools .notification-bell:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff55}.page-header h1{margin-top:8px}.page-header .intro{margin-bottom:0}.demo.live-environment{display:none!important}.demo:empty{display:none}.profile-help{border-top:1px solid #91b5a733;padding-top:18px;margin-top:22px;display:flex;justify-content:space-between;align-items:center;gap:12px}.profile-help small{color:#71897f;font-size:12px}.profile-help .demo-tour-button{margin:0;font-size:12px;min-height:40px}.profile-help .demo-tour-icon{width:20px;height:20px}
@media(max-width:700px){
body:not(.home-page) main{padding-top:calc(env(safe-area-inset-top,0px) + 16px)}.page-header{grid-template-columns:minmax(0,1fr);gap:16px;margin-bottom:20px}.calendar-heading{grid-row:2;grid-column:1}.page-header .header-tools{grid-row:1;grid-column:1;gap:6px}.page-header .header-actions{grid-row:3;grid-column:1;display:block}.page-header .header-actions #add{width:100%;min-width:0;height:46px;border-radius:16px;justify-content:center;padding:0 18px}.page-header .add .add-label{display:inline;font-size:13px}.page-header .add .add-icon{display:grid;width:20px;height:20px;font-size:22px}.page-header h1{font-size:29px;margin:8px 0}.page-header .intro{font-size:12px;line-height:1.5}.page-header .eyebrow{font-size:8px;line-height:1.5;letter-spacing:1px}.team-mobile{display:flex;justify-content:flex-end;gap:8px;margin:0 0 18px;padding:0}.team-mobile .mobile-account-info{display:none}.team-mobile [data-team-open],.team-mobile .mobile-profile{position:relative;min-height:32px;height:32px;padding:0 9px;border-radius:11px;grid-column:auto;font-size:11px;gap:5px;background:linear-gradient(145deg,rgba(255,255,255,.24),rgba(255,255,255,.08));border-color:rgba(255,255,255,.4);box-shadow:inset 0 1px rgba(255,255,255,.35)}.team-mobile [data-team-open]::after,.team-mobile .mobile-profile::after{content:"";position:absolute;inset:-6px 0;border-radius:inherit}.team-mobile{padding-block:6px;margin-bottom:12px}.team-mobile .nav-icon{width:13px!important;height:13px!important;flex-basis:13px}.mobile-tabs{margin-bottom:22px}.team-mobile button:active{transform:scale(.96)}
}
@media(hover:hover){.team-mobile button:hover{transform:translateY(-1px)}}
@media(prefers-reduced-motion:reduce){.team-mobile button,.header-tools button{transition:none;transform:none!important}}

@media(max-width:700px){.page-header .intro{max-width:none}.page-header .header-tools button{min-width:40px}main.clients-mode .page-header{padding-top:0}}

/* Team navigation sits at the left above the mobile section switch. */
@media(max-width:700px){.team-mobile [data-team-open]{margin-right:auto;justify-self:start}.team-mobile .mobile-profile{margin-left:0}}
