body.admin-area .workspace { min-height:100dvh; }
body.admin-area .sidebar { height:100vh; height:100dvh; overflow:hidden; padding-bottom:calc(22px + env(safe-area-inset-bottom,0px)); }
@media(min-width:861px){
  body.admin-area { height:100vh; height:100dvh; min-height:0; overflow:hidden; }
  body.admin-area .app-shell { height:100vh; height:100dvh; min-height:0; }
  body.admin-area .sidebar { position:relative; top:auto; min-height:0; }
  body.admin-area .workspace { display:flex; flex-direction:column; height:100%; min-height:0; overflow:hidden; }
  body.admin-area .workspace>.topbar { flex:0 0 auto; }
  body.admin-area .workspace>main { flex:1 1 auto; width:100%; min-height:0; overflow-y:auto; scrollbar-gutter:stable; padding-bottom:calc(64px + env(safe-area-inset-bottom,0px)); }
}
body.admin-area #view-settings { min-width:0; padding-bottom:calc(56px + env(safe-area-inset-bottom,0px)); }
@media(min-width:861px) and (max-height:800px){
  body.admin-area .sidebar { gap:clamp(8px,1.6vh,12px); padding-top:clamp(12px,2.5vh,18px); padding-bottom:calc(clamp(12px,2.2vh,16px) + env(safe-area-inset-bottom,0px)); }
  body.admin-area .sidebar-footer { gap:8px; }
}
@media(min-width:861px) and (max-height:700px){
  body.admin-area .sidebar { gap:8px; }
  body.admin-area .sidebar .brand { padding-inline:0; gap:8px; }
  body.admin-area .sidebar .brand strong { font-size:20px; }
  body.admin-area .sidebar .brand small { font-size:10px; line-height:1.3; }
  body.admin-area .sidebar .shop-switch { min-height:44px; padding-block:7px; }
  body.admin-area .sidebar .shop-switch .avatar { width:28px; height:28px; flex-basis:28px; }
  body.admin-area .sidebar .plan-card { padding:12px; }
  body.admin-area .sidebar .plan-meter { margin-top:8px; }
}
body.admin-area .settings-content { min-width:0; }
body.admin-area #view-settings :is(.settings-card,.settings-form-grid,.form-field,.settings-nav-card) { min-width:0; }
body.admin-area #view-settings :is(.text-control,.select-control,textarea) { min-width:0; max-width:100%; }
body.admin-area #view-settings .settings-card-head>div { min-width:0; }
body.admin-area #view-settings .settings-actions { scroll-margin-bottom:calc(120px + env(safe-area-inset-bottom,0px)); }
body.admin-area #businessSettingsForm>.public-link-box { margin-bottom:12px; padding:18px; border:2px solid var(--accent-strong); background:#edf6db; }
body.admin-area #businessSettingsForm>.public-link-box>div { min-width:0; }
body.admin-area #businessSettingsForm>.public-link-box span { color:var(--ink); font-size:14px; font-weight:750; }
body.admin-area #businessSettingsForm>.public-link-box strong { margin-top:6px; font-size:13px; }
body.admin-area #copyBookingLink { flex-shrink:0; min-height:44px; }
body.admin-area #businessSettingsForm>.booking-link-note { margin:0 0 20px; font-size:12px; }
.subscription-details { padding:20px; }
.subscription-details h3 { margin:0 0 12px; font:700 20px Georgia,serif; }
.subscription-details dl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:0 0 14px; }
.subscription-details dt { color:var(--muted); font-size:12px; }
.subscription-details dd { margin:4px 0 0; font-weight:700; overflow-wrap:anywhere; }
.subscription-details p { margin:8px 0 0; font-size:14px; line-height:1.5; }
body.admin-area #billingStatusText { font-size:14px; line-height:1.5; }
.notification-panel { position:absolute; top:calc(100% + 8px); right:16px; z-index:50; width:min(360px,calc(100vw - 32px)); max-height:min(420px,calc(100dvh - 200px - env(safe-area-inset-bottom,0px))); overflow-y:auto; padding:18px; border:1px solid var(--line); border-radius:16px; background:var(--surface); box-shadow:var(--shadow); }
.notification-panel h2 { margin:0 0 12px; font:700 22px Georgia,serif; }
.notification-panel ul { margin:0; padding:0; list-style:none; }
.notification-panel li { padding:10px 0; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.notification-panel li strong,.notification-panel li span { display:block; }
.notification-panel li span,.notification-panel p { font-size:13px; color:var(--muted); }
.notification-panel>button { min-height:44px; margin-top:12px; }
@media(max-width:860px){
  body.admin-area main { padding-bottom:calc(120px + env(safe-area-inset-bottom,0px)); }
  body.admin-area .mobile-nav { bottom:calc(12px + env(safe-area-inset-bottom,0px)); }
}
@media(max-width:640px){
  body.admin-area #businessSettingsForm>.public-link-box { flex-direction:column; align-items:stretch; padding:14px; }
  .subscription-details dl { grid-template-columns:1fr; }
  .subscription-details { padding:16px; }
}
