/* Shared website chrome: desktop hover rail, mobile tap controls, owned overlays. */
body[data-navigation="sidebar"]{--sidebar-width:72px;padding-left:72px}
.social-nav.social-nav--sidebar{width:72px;overflow:visible;transition:width .18s ease;background:var(--ps-surface);z-index:400}
.social-nav.social-nav--sidebar.is-expanded{width:224px;box-shadow:12px 0 28px #0003}
.social-nav .sidebar-brand{margin-bottom:20px;color:var(--ps-accent);font-weight:700}
.social-nav .social-nav-control{display:flex;align-items:center;gap:12px;position:relative;box-sizing:border-box;font:14px system-ui;color:var(--ps-muted);background:transparent;border:0;border-radius:12px;min-height:44px;padding:12px 14px;cursor:pointer;white-space:nowrap}
.social-nav--sidebar .nav-more{margin-top:auto}
.social-nav--sidebar.is-collapsed .social-nav-control{justify-content:center;padding:12px}
.social-nav--sidebar.is-collapsed .social-nav-control span{display:none}
.social-nav a:hover,.social-nav-control:hover{background:var(--ps-input);color:var(--ps-ink)}
.social-nav a:focus-visible,.social-nav-control:focus-visible,.social-overlay button:focus-visible,.social-overlay a:focus-visible,.social-footer a:focus-visible{outline:2px solid var(--ps-accent);outline-offset:-3px}
.notification-badge{position:absolute;left:32px;top:6px;display:grid;place-items:center;min-width:16px;height:16px;padding:2px;border-radius:50%;background:var(--ps-accent);color:var(--ps-button-ink);font:700 10px system-ui;font-style:normal}
.notification-badge[hidden]{display:none}
.social-overlay{position:fixed;z-index:500;background:var(--ps-surface);color:var(--ps-ink);border:1px solid var(--ps-border);font:15px/1.5 system-ui;box-sizing:border-box;box-shadow:12px 0 30px #0005}
.social-overlay[hidden]{display:none}
#social-notifications{inset:0 auto 0 72px;width:clamp(360px,33.333vw,640px);height:100dvh;display:flex;flex-direction:column;border-radius:0 20px 20px 0;padding:24px}
.social-overlay-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;margin-bottom:20px}
.social-overlay h2{font:700 24px system-ui;margin:0}
.social-overlay button,.social-overlay a{color:var(--ps-ink);font:inherit;min-height:44px;border:1px solid var(--ps-border);border-radius:12px;background:var(--ps-input);padding:10px 14px;cursor:pointer;text-decoration:none;box-sizing:border-box}
.social-overlay-header button{width:44px;padding:8px}
.notification-filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.notification-filters [aria-selected="true"]{background:var(--ps-accent);color:var(--ps-button-ink)}
.notification-content{overflow:auto;min-height:0;flex:1;overscroll-behavior:contain}
.notification-content h3{font-size:16px;margin:20px 0 12px;color:var(--ps-muted)}
.notification-row{padding:16px 0;border-bottom:1px solid var(--ps-border);display:grid;gap:12px;overflow-wrap:anywhere}
.notification-row.is-unread{border-left:3px solid var(--ps-accent);padding-left:12px}
.notification-row p{margin:0}.notification-row time{display:block;font-size:12px;color:var(--ps-muted);margin-top:6px}
.notification-row .notification-actions{display:flex;flex-wrap:wrap;gap:12px}
.notification-person{background:none!important;padding:0!important;min-height:0!important;border:0!important;font-weight:600!important;color:var(--ps-accent)!important}
.social-overlay-status{color:var(--ps-muted);margin:0 0 12px}
.notification-pager{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap;padding-top:16px}
#social-more-menu{left:84px;bottom:16px;width:260px;border-radius:18px;padding:12px;display:grid;gap:12px}
#social-more-menu a,#social-more-menu button{display:flex;align-items:center;gap:12px;width:100%;text-align:left}
.social-footer{padding:32px 16px 24px;display:grid;gap:12px;text-align:center;font:13px/1.5 system-ui;color:var(--ps-muted)}
.social-footer nav{display:flex;gap:24px;justify-content:center;flex-wrap:wrap}.social-footer a{color:var(--ps-muted);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}
.social-footer p{margin:0}
/* Survey layering is owned by the shared Survey module. */
body>header,.gallery-header,.social-header{position:relative;z-index:300}
#accountTools button[title="Settings"],#accountTools .settings-button{display:none}
@media(max-width:1099px){
 .social-nav--bottom{display:grid!important;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px!important}
 .social-nav--bottom .social-nav-control{flex-direction:column;justify-content:center;gap:4px;padding:8px 2px;font-size:11px;white-space:normal;text-align:center;min-width:0}
 .social-nav--bottom .social-nav-control span{overflow-wrap:normal}
 .social-nav--bottom .notification-badge{left:calc(50% + 6px)}
 #social-notifications{inset:0 0 100px;width:100%;height:auto;border-radius:0;padding:20px}
 #social-more-menu{left:auto;right:12px;bottom:108px;width:min(300px,calc(100vw - 24px))}
}
@media(prefers-reduced-motion:reduce){.social-nav.social-nav--sidebar{transition:none}}
.social-overlay{animation:social-panel-enter .2s ease-out}
#social-more-menu{transition:height .2s ease,width .2s ease;overflow:hidden}
#social-more-menu.appearance-submenu{width:300px}
.appearance-submenu .social-overlay-header{gap:12px;margin-bottom:12px}.appearance-submenu h2{font-size:18px}.appearance-submenu [role=status]:empty{display:none}
.appearance-mode{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 8px}
.appearance-mode input{appearance:none;width:48px;height:28px;border:1px solid var(--ps-border);border-radius:20px;background:var(--ps-muted);cursor:pointer;position:relative}
.appearance-mode input:before{content:'';position:absolute;left:3px;top:3px;width:20px;height:20px;background:var(--ps-bg);border-radius:50%;transition:transform .18s ease}.appearance-mode input:checked{background:var(--ps-accent)}.appearance-mode input:checked:before{transform:translateX(20px)}
@keyframes social-panel-enter{from{opacity:0;transform:translateX(-12px)}to{opacity:1;transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.social-overlay{animation:none}#social-more-menu,.appearance-mode input:before{transition:none}}

#social-more-menu[hidden],#social-notifications[hidden]{display:none}

#social-more-menu .social-overlay-header button{width:44px;flex:0 0 44px;justify-content:center}
#social-more-menu .social-overlay-header h2{white-space:nowrap}

/* Phone: two clear rows retain readable labels and twelve-pixel control gaps. */
@media(max-width:600px){
 body[data-navigation="bottom"]{padding-bottom:192px!important}
 .social-nav.social-nav--bottom{grid-template-columns:repeat(4,minmax(0,1fr));padding:8px 8px max(8px,env(safe-area-inset-bottom));gap:12px!important}
 .social-nav.social-nav--bottom .social-nav-control{min-height:60px;padding:6px 2px}
 .social-nav.social-nav--bottom .social-nav-control span{min-height:14px;line-height:1.2}
 #social-notifications{bottom:176px}
 #social-more-menu{bottom:184px}
 .social-footer{padding-bottom:184px}
 .social-footer nav{justify-content:flex-start;gap:8px}
}
@media(max-width:359px){.social-footer nav{flex-direction:column;align-items:flex-start;gap:4px}}
.social-nav.social-nav--sidebar{gap:12px}

.social-nav .nav-admin{margin-top:0}
.social-nav .nav-admin,.sidebar-admin-sections>a{position:relative}
.social-nav .admin-approval-dot{position:absolute;top:4px;left:32px;z-index:1;display:grid;place-items:center;box-sizing:border-box;min-width:18px;height:18px;padding:0 3px;border-radius:999px;background:#ff3b30;color:#fff;box-shadow:0 0 0 2px var(--ps-bg,#171717);font:700 11px/1 system-ui;font-style:normal;font-variant-numeric:tabular-nums}
.social-nav .admin-approval-dot[hidden]{display:none}
.social-nav--sidebar.is-collapsed .nav-admin>.admin-approval-dot{left:42px}
@media(min-width:1100px){.social-nav--sidebar .nav-admin:has(.admin-approval-dot)>span,.social-nav--sidebar .sidebar-admin-sections>a:has(.admin-approval-dot)>span{margin-left:10px}}
@media(max-width:1099px){.social-nav--bottom .admin-approval-dot{left:calc(50% + 4px)}.sidebar-admin-sections>a>.admin-approval-dot{left:calc(50% + 6px);top:5px}}

@media(max-width:1099px){
 .social-nav .nav-admin{grid-column:1/-1;justify-content:center}
 body[data-navigation="bottom"]{padding-bottom:calc(var(--social-nav-height,176px) + 16px)!important}
 #social-notifications{bottom:calc(var(--social-nav-height,176px) + 12px)}
 #social-more-menu{bottom:calc(var(--social-nav-height,176px) + 12px);max-height:calc(100dvh - var(--social-nav-height,176px) - 36px);overflow-y:auto}
}

.social-nav [hidden]{display:none!important}
.sidebar-admin-sections{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;width:100%}
.sidebar-admin-group{font:600 10px/1.4 system-ui;color:var(--ps-muted);padding:12px 8px 4px;margin:0}
.social-nav--sidebar.is-collapsed .sidebar-admin-group{display:none}
.social-nav--sidebar .nav-admin{flex-shrink:0}
body.admin-workspace[data-sidebar-mode="normal"]{grid-template-columns:minmax(0,1fr);padding-left:72px!important;--ps-surface:#191a1b;--ps-input:#111;--ps-ink:#ead9ad;--ps-accent:#efbf60;--ps-muted:#b5a98d;--ps-border:#80673e}
body.admin-workspace[data-sidebar-mode="normal"] .admin-sidebar{display:none!important}
@media(max-width:1099px){body.admin-workspace[data-sidebar-mode="normal"]{padding-left:0!important}.social-nav:has(.sidebar-admin-sections){display:flex!important;flex-direction:column;height:min(70dvh,600px);padding:12px}.sidebar-admin-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sidebar-admin-group{grid-column:1/-1}.social-nav:has(.sidebar-admin-sections) .nav-admin{width:100%;justify-content:center}}

/* Mobile rail: tap navigates; hold reveals labels. */
@media(max-width:1099px){
 .social-nav.social-nav--bottom:not(:has(.sidebar-admin-sections)){grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(44px,1fr);gap:0!important;padding:8px 8px max(8px,env(safe-area-inset-bottom));overflow-x:auto;overflow-y:hidden;transition:max-height .2s ease,padding .2s ease;max-height:90px;box-sizing:border-box}
 .social-nav.social-nav--bottom.is-collapsed .social-nav-control,.social-nav.social-nav--bottom.is-collapsed>a{min-height:44px;height:44px;padding:10px 4px}
 .social-nav.social-nav--bottom.is-collapsed span{display:none}
.social-nav.social-nav--bottom a,.social-nav.social-nav--bottom button{-webkit-touch-callout:none;user-select:none}
 .social-nav.social-nav--bottom.is-collapsed .nav-admin{grid-column:auto}
 .social-nav.social-nav--bottom.is-expanded:not(:has(.sidebar-admin-sections)){grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px!important;max-height:min(65dvh,360px);overflow-y:auto}
 .social-nav.social-nav--bottom.is-expanded .social-nav-control,.social-nav.social-nav--bottom.is-expanded>a{min-height:60px;flex-direction:column;gap:4px;padding:6px 2px}
 .social-footer{padding-bottom:24px}
 .social-nav--bottom .sidebar-admin-sections{align-content:start;grid-auto-rows:max-content}
 .social-nav--bottom .sidebar-admin-sections>a{min-height:88px;box-sizing:border-box;gap:8px;padding:12px 8px}
 .social-nav--bottom .sidebar-admin-sections>a>svg{display:block;width:28px;height:28px;min-width:28px;min-height:28px;flex:0 0 28px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
}
@media(prefers-reduced-motion:reduce){.social-nav.social-nav--bottom{transition:none}}
