/* Public browsing uses the same cards, palette, spacing and controls as Groven. */
.guest-screen.is-active{display:grid;align-content:start;gap:var(--layout-gap);width:100%;max-width:calc(var(--content-max-width) + var(--rail-width) + var(--layout-gap) + 2 * var(--page-padding));margin-inline:auto;padding:var(--page-padding);padding-top:max(var(--page-padding),env(safe-area-inset-top,0px));padding-bottom:max(var(--page-padding),env(safe-area-inset-bottom,0px));min-width:0}
.guest-screen [hidden]{display:none!important}
.guest-screen .outline-button{position:static;inset:auto;align-self:auto}
.guest-screen :is(.soft-button,.outline-button,.feed-filter,.post-social-bar button){border-radius:5px}
.guest-header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:var(--space-3);padding:var(--space-4);border-radius:14px;background:var(--glass-strong);backdrop-filter:none;-webkit-backdrop-filter:none}
.guest-header .wordmark{font-size:26px;min-width:0;white-space:nowrap}
.guest-access,.guest-tools{display:flex;align-items:center;gap:var(--space-2);min-width:0}
.guest-access button,.guest-tools button,.guest-tools select{min-height:var(--touch-height);margin:0;padding:8px 12px;font-size:13px}
.guest-tools .language-picker{margin:0}
.guest-tools select{width:auto;min-width:56px}
.guest-tools button{min-width:44px}
.guest-layout{display:grid;grid-template-columns:minmax(0,var(--rail-width)) minmax(0,1fr);align-items:start;gap:var(--layout-gap);min-width:0}
.guest-welcome{display:grid;align-content:start;gap:var(--space-4);padding:var(--space-5);border-radius:14px;position:sticky;top:var(--page-padding);min-width:0;backdrop-filter:none;-webkit-backdrop-filter:none}
.guest-welcome .eyebrow{margin:0;line-height:1.6}
.guest-welcome h1{margin:0;font-size:clamp(23px,2.5vw,29px);line-height:1.2;letter-spacing:-.04em;overflow-wrap:anywhere}
.guest-notice,.guest-welcome-hint{margin:0;color:var(--muted);font-size:13px;line-height:1.7;overflow-wrap:anywhere}
.guest-welcome-hint{font-size:11px}
.guest-welcome button{min-height:var(--touch-height);width:100%;justify-content:center;font-size:13px}
.guest-content{display:grid;align-content:start;gap:var(--layout-gap);min-width:0}
.guest-feed-controls{display:grid;gap:var(--space-4);padding:var(--space-4);border-radius:14px;min-width:0;backdrop-filter:none;-webkit-backdrop-filter:none}
.guest-nav,.guest-filters{display:grid;gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}
.guest-nav button{justify-content:center;min-width:0;min-height:var(--touch-height);padding:10px;font-size:13px;overflow-wrap:anywhere}
.guest-nav button[aria-pressed="true"]{box-shadow:inset 0 0 0 1px var(--accent);font-weight:700}
.guest-feed-heading{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap;min-width:0}
.guest-feed-heading h2{margin:0;font-size:clamp(21px,3vw,27px);line-height:1.2;overflow-wrap:anywhere}
.guest-feed-heading>span{color:var(--muted);font-size:11px}
.guest-filters{grid-template-columns:repeat(4,minmax(0,1fr))}
.guest-filters .feed-filter{width:100%;min-width:0;min-height:var(--touch-height);margin:0;padding:8px 2px;white-space:normal;font-size:11px}
#guestPosts{display:grid;gap:var(--layout-gap);min-width:0}
#guestPosts:empty,#guestDetails:empty,#guestStatus:empty{display:none}
#guestDetails{display:grid;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--line);border-radius:12px;background:var(--glass-strong);min-width:0;overflow-wrap:anywhere}
#guestDetails p{margin:0;line-height:1.6;white-space:pre-wrap;font-size:13px}
#guestDetails button{justify-content:center;min-height:var(--touch-height)}
#guestStatus{margin:0;padding:var(--space-4);border:1px solid var(--line);border-radius:12px;background:var(--glass-strong);color:var(--muted);font-size:13px;line-height:1.6;overflow-wrap:anywhere}
#guestStatus[data-state="loading"]::before{content:"";display:inline-block;width:12px;height:12px;margin-inline-end:10px;border:2px solid var(--muted);border-right-color:transparent;border-radius:50%;vertical-align:middle;animation:guest-loading 1s linear infinite}
#guestLoadMore,#guestRetry{min-height:var(--touch-height);width:100%;margin:0;text-align:center;font-size:13px}
.guest-community{padding:var(--space-4);border-radius:12px;min-width:0;overflow-wrap:anywhere}
.guest-community h3{margin:0 0 var(--space-3);font-size:19px}
.guest-community p{white-space:pre-wrap;margin:0 0 var(--space-3);font-size:13px;line-height:1.6;color:var(--muted)}
.guest-community button{min-height:var(--touch-height);width:100%;justify-content:center;font-size:13px}
.guest-author{border:0;background:none;padding:0;text-align:left;flex:1;min-width:0;cursor:pointer}
.guest-auth-action{min-height:var(--touch-height)}
.guest-screen .post-card{min-width:0;width:100%;margin:0;border-radius:12px;overflow:hidden}
.guest-screen .post-card-head{padding:12px 14px}
.guest-screen .post-card-author b{font-size:13px;line-height:1.5}
.guest-screen .post-card-author time{font-size:10px;line-height:1.5}
.guest-screen .post-card-avatar{width:38px;height:38px;flex:0 0 38px}
.guest-screen .post-card-body{padding:14px;font-size:14px;line-height:1.65;overflow-wrap:anywhere}
.guest-screen .post-media{width:auto;min-width:0;margin:0 14px 14px}
.guest-screen .post-social-bar{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px 14px}
.guest-screen .post-social-bar button{min-height:var(--touch-height)}
.guest-footer{display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:12px;justify-content:center;padding-block:var(--space-3)}
.guest-footer a{display:inline-flex;align-items:center;min-height:32px;color:var(--muted)}
#browseAsGuest{width:100%;margin-top:var(--space-3);min-height:var(--touch-height)}
.guest-screen :is(.guest-nav,.guest-filters,.guest-access)>button:hover{transform:none}
body.night .guest-screen .post-card-head{background:var(--glass);border-color:var(--line)}
body.night .guest-screen .post-card-author b,body.night .guest-screen .post-card-body{color:var(--ink)}
body.night .guest-screen .post-card-author time{color:var(--muted)}
@keyframes guest-loading{to{transform:rotate(360deg)}}
@media(max-width:800px){
  .guest-screen.is-active{max-width:calc(var(--content-max-width) + 2 * var(--page-padding));padding-left:max(var(--mobile-page-padding),env(safe-area-inset-left,0px));padding-right:max(var(--mobile-page-padding),env(safe-area-inset-right,0px))}
  .guest-layout{grid-template-columns:minmax(0,1fr)}
  .guest-welcome{position:static;gap:var(--space-3);padding:var(--space-4)}
  .guest-welcome h1{font-size:24px}
  .guest-welcome-hint{display:none}
}
@media(max-width:540px){
  .guest-header{grid-template-columns:minmax(0,1fr) auto;padding:var(--space-3)}
  .guest-access{grid-row:2;grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .guest-access button{width:100%;justify-content:center}
  .guest-tools{grid-column:2;grid-row:1}
  .guest-tools button,.guest-tools select{padding-inline:9px}
  .guest-feed-controls{padding:var(--space-3);gap:var(--space-3)}
  .guest-screen .post-card-body{font-size:14px}
}
@media(prefers-reduced-motion:reduce){#guestStatus[data-state="loading"]::before{animation:none}}
