/* Community uses a summary strip and neutral review and leaderboard panels. */
.community-section{padding:20px 0 64px;}
.community-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:center;gap:24px;}
.community-intro{margin-top:16px;max-width:36rem;font-size:16px;line-height:1.65;color:rgb(var(--n-300));}
.community-search{width:100%;max-width:360px;margin-top:24px;}
.community-search input{min-height:44px;}

.community-stats{display:block;margin-top:28px;padding:22px 8px;border-radius:16px;}
.community-stat-grid{display:grid;grid-template-columns:repeat(var(--cells,4),minmax(0,1fr));}
.community-stat-grid.hidden{display:none;}
.community-stats-art{padding:0 12px;}
.community-stats-art img{display:block;width:100%;height:auto;}
.community-stat{min-width:0;padding:0 24px;}
.community-stat + .community-stat{border-left:1px solid rgb(var(--ink) / .08);}
.community-stat > div:nth-child(2){font-size:32px;line-height:1.25;margin:8px 0 4px;font-variant-numeric:tabular-nums;}
.community-stat-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:rgb(var(--n-400));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.community-stat-value{font-weight:700;color:rgb(var(--ink));}
.community-stat-suffix{font-size:14px;font-weight:500;color:rgb(var(--n-500));}
.community-stat-suffix.hidden{display:none;}
.community-stat-sub{font-size:12px;line-height:1.35;color:rgb(var(--n-500));}
.community-spark{height:26px;margin-top:8px;max-width:140px;}
.community-spark svg{display:block;width:100%;height:100%;overflow:visible;}
.community-columns{display:block;margin-top:40px;}
.community-view{min-width:0;}
.community-panel{min-width:0;padding:28px;border:1px solid rgb(var(--ink) / .1);border-radius:16px;background:linear-gradient(120deg,rgb(var(--gold) / .06),transparent 60%),rgb(var(--surface));}
.community-panel-title,.community-page #boardTitle{font-size:24px;line-height:1.2;letter-spacing:-.02em;}
.community-panel > div:first-child{padding-bottom:20px;border-bottom:1px solid rgb(var(--ink) / .08);}
.community-panel > div:first-child > span,.community-panel > div:first-child > div:first-child > span{width:28px;height:28px;border:0;background:none;}
.community-page #reviewSummary{background:none;border:0;border-bottom:1px solid rgb(var(--ink) / .08);border-radius:0;padding:20px 0;}
.community-page #boardTabs{margin-left:0;margin-right:0;padding:0 0 4px;}
.community-page .board-tab{min-height:44px;}
.community-page #boardList{margin-top:8px;}
.community-page #reviewSort{display:flex;width:fit-content;max-width:100%;flex-wrap:wrap;}
.community-page #reviewSort.hidden{display:none;}
.community-page .review-sort{min-height:44px;}
@media(max-width:1023px){
  .community-hero{gap:24px;}
  .community-columns{grid-template-columns:minmax(0,1fr);}
  .community-stat{padding:0 16px;}
  .community-stat-grid{grid-template-columns:repeat(min(var(--cells,4),3),minmax(0,1fr));gap:20px 0;}
  .community-stat:nth-child(4){border-left:0;}
}
/* Phones: the desktop layout, scaled down. The four stats stay in one row
   beside a small Cybercab; the panels keep their desktop structure with
   tighter spacing, smaller titles, tabs and buttons. */
@media(max-width:639px){
  .community-section{padding:20px 0 32px;}
  .community-hero{grid-template-columns:minmax(0,1fr);gap:12px;}
  .community-intro{margin-top:8px;font-size:13px;line-height:1.5;}
  .community-search{max-width:none;margin-top:14px;}
  .community-search input{min-height:40px;font-size:13px;}
  .community-stats{margin-top:14px;padding:12px 4px;border-radius:12px;}
  .community-stat-grid{grid-template-columns:repeat(var(--cells,4),minmax(0,1fr));gap:0;}
  .community-stat{padding:0 5px;}
  .community-stat:nth-child(4){border-left:1px solid rgb(var(--ink) / .08);}
  .community-stat > div:first-child{font-size:8.5px;letter-spacing:.02em;}
  .community-stat > div:nth-child(2){font-size:19px;line-height:1.2;margin:4px 0 0;}
  .community-stat-sub{display:none;}
  .community-spark{height:16px;margin-top:4px;}
  .community-stat-suffix{font-size:10px;}
  .community-columns{gap:14px;margin-top:16px;}
  .community-panel{padding:14px 12px;border-radius:12px;}
  .community-panel > div:first-child{padding-bottom:12px;}
  .community-panel > div:first-child > span,.community-panel > div:first-child > div:first-child > span{width:20px;height:20px;}
  .community-panel > div:first-child svg{width:16px;height:16px;}
  .community-panel-title,.community-page #boardTitle{font-size:17px;}
  .community-page #reviewWriteBtn{min-height:32px;padding:6px 10px;font-size:11px;border-radius:9px;}
  .community-page .board-tab{min-height:32px;padding:0 11px;font-size:11px;}
  .community-page #boardTabs{gap:6px;}
  .community-page .review-sort{min-height:32px;font-size:11px;}
}
@media(max-width:339px){
  .community-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 0;}
}

/* ---- Spotting Streaks (js/streaks.js) ---- */
.streaks .streak-mine{margin-top:20px;}
.streak-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.streak-card{position:relative;min-width:0;padding:18px 20px;border:1px solid rgb(var(--ink) / .1);border-radius:14px;background:rgb(var(--ink) / .02);}
.streak-card.is-weekly{border-color:rgb(var(--gold) / .35);background:linear-gradient(120deg,rgb(var(--gold) / .1),transparent 70%);}
.streak-card.is-skeleton{height:150px;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;}
.streak-card-head{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgb(var(--n-400));}
.streak-icon{display:inline-flex;width:18px;height:18px;color:rgb(var(--gold));}
.streak-icon svg,.streak-ms-icon svg,.streak-status svg{width:100%;height:100%;}
.streak-tag{margin-left:auto;padding:2px 8px;border-radius:999px;font-size:10px;letter-spacing:.04em;text-transform:none;color:rgb(var(--gold-ink));background:rgb(var(--gold) / .12);border:1px solid rgb(var(--gold) / .3);}
.streak-value{margin-top:10px;font-size:18px;font-weight:600;color:rgb(var(--ink));}
.streak-value .stat-value{font-size:44px;line-height:1;font-weight:700;color:rgb(var(--gold-ink));margin-right:4px;}
.streak-longest{margin-top:6px;font-size:12px;color:rgb(var(--n-400));}
.streak-status{display:inline-flex;align-items:center;gap:6px;margin-top:12px;font-size:11px;color:rgb(var(--n-500));}
.streak-status svg{width:13px;height:13px;}
.streak-status.is-done{color:rgb(var(--ok-ink));font-weight:600;}
.streak-empty,.streak-error{margin-top:14px;font-size:12px;line-height:1.55;color:rgb(var(--n-400));}
.streak-calendar,.streak-milestones,.streak-board{margin-top:28px;padding-top:20px;border-top:1px solid rgb(var(--ink) / .08);}
.streak-cal-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;}
.streak-cal-head h3{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgb(var(--ink));}
.streak-cal-head span{font-size:11px;color:rgb(var(--n-500));}
.streak-cal-scroll{margin-top:12px;overflow-x:auto;}
.streak-cal-grid{display:inline-block;}
.streak-months{display:flex;height:14px;font-size:10px;color:rgb(var(--n-500));white-space:nowrap;}
.streak-months span{display:inline-block;overflow:visible;}
.streak-weeks{display:flex;}
.streak-week{display:flex;flex-direction:column;}
.streak-day{display:block;border-radius:3px;background:rgb(var(--ink) / .06);border:0;padding:0;cursor:pointer;}
.streak-day.l1{background:rgb(var(--gold) / .45);}
.streak-day.l2{background:rgb(var(--gold) / .72);}
.streak-day.l3{background:rgb(var(--gold));box-shadow:0 0 6px rgb(var(--gold) / .45);}
.streak-day.is-today{outline:1.5px solid rgb(var(--ink) / .75);outline-offset:1px;}
.streak-day.is-selected,.streak-day:focus-visible{outline:2px solid rgb(var(--gold));outline-offset:1px;}
.streak-day.is-future{background:transparent;cursor:default;}
.streak-cal-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;font-size:11px;color:rgb(var(--n-400));}
.streak-cal-foot strong{color:rgb(var(--ink));font-weight:600;}
.streak-legend{display:inline-flex;align-items:center;gap:4px;font-size:10px;color:rgb(var(--n-500));flex-shrink:0;}
.streak-legend i{display:inline-block;width:10px;height:10px;border-radius:2px;background:rgb(var(--ink) / .06);}
.streak-legend i.l1{background:rgb(var(--gold) / .45);} .streak-legend i.l2{background:rgb(var(--gold) / .72);} .streak-legend i.l3{background:rgb(var(--gold));}
.streak-ms-group{margin-top:14px;}
.streak-ms-group h4{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgb(var(--n-500));}
.streak-ms-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:8px;}
.streak-ms{display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px;border:1px solid rgb(var(--ink) / .08);border-radius:12px;background:rgb(var(--ink) / .02);opacity:.55;}
.streak-ms.is-unlocked{opacity:1;border-color:rgb(var(--gold) / .45);background:linear-gradient(140deg,rgb(var(--gold) / .14),transparent 80%);}
.streak-ms-icon{display:inline-flex;width:18px;height:18px;color:rgb(var(--n-500));}
.streak-ms.is-unlocked .streak-ms-icon{color:rgb(var(--gold));}
.streak-ms-name{font-size:13px;font-weight:700;color:rgb(var(--ink));}
.streak-ms-sub{font-size:10.5px;line-height:1.35;color:rgb(var(--n-500));}
.streak-ms.is-unlocked .streak-ms-sub{color:rgb(var(--gold-ink));}
.streak-how{margin-top:24px;padding:14px 16px;border:1px solid rgb(var(--ink) / .08);border-radius:12px;background:rgb(var(--ink) / .02);}
.streak-how summary{cursor:pointer;font-size:13px;font-weight:700;color:rgb(var(--ink));list-style:none;display:flex;align-items:center;gap:8px;min-height:28px;}
.streak-how summary::-webkit-details-marker{display:none;}
.streak-how summary::before{content:"";width:7px;height:7px;border-right:1.5px solid rgb(var(--gold));border-bottom:1.5px solid rgb(var(--gold));transform:rotate(-45deg);transition:transform .2s;}
.streak-how[open] summary::before{transform:rotate(45deg);}
.streak-how ol{margin-top:10px;display:grid;gap:8px;padding-left:18px;list-style:decimal;font-size:12px;line-height:1.55;color:rgb(var(--n-400));}
.streak-how ol span{color:rgb(var(--ink));font-weight:600;}
.streak-safety{margin-top:10px;font-size:11px;line-height:1.5;color:rgb(var(--n-500));}
.streak-signin{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border:1px dashed rgb(var(--gold) / .35);border-radius:14px;background:rgb(var(--gold) / .04);}
.streak-signin h3{font-size:15px;font-weight:700;color:rgb(var(--ink));}
.streak-signin p{margin-top:4px;font-size:12px;line-height:1.5;color:rgb(var(--n-400));}
.streak-signin-btn{flex-shrink:0;display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:12px;font-size:13px;font-weight:700;color:#1a1204;background:linear-gradient(90deg,rgb(var(--gold-soft, var(--gold))),rgb(var(--gold)));}
.streak-board-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0;}
.streak-board-tabs button{min-height:36px;padding:0 14px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid rgb(var(--ink) / .12);color:rgb(var(--n-400));}
.streak-board-tabs button:hover{color:rgb(var(--ink));}
.streak-board-tabs button[aria-pressed="true"]{color:#1a1204;background:rgb(var(--gold));border-color:transparent;}
.streak-rank-list{display:grid;gap:6px;}
.streak-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;border:1px solid transparent;}
a.streak-row:hover{border-color:rgb(var(--gold) / .45);background:rgb(var(--ink) / .03);}
.streak-rank{width:28px;height:28px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;color:rgb(var(--n-400));}
.streak-rank.is-first{border-radius:999px;color:#1a1204;background:rgb(var(--gold));}
.streak-avatar{width:36px;height:36px;flex-shrink:0;border-radius:10px;overflow:hidden;display:block;}
.streak-who{min-width:0;flex:1;}
.streak-name{display:block;font-size:14px;font-weight:600;color:rgb(var(--ink));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.streak-sub{display:block;margin-top:2px;font-size:11px;color:rgb(var(--n-500));}
.streak-score{flex-shrink:0;text-align:right;}
.streak-score .stat-value{display:block;font-size:20px;font-weight:700;line-height:1;color:rgb(var(--gold-ink));}
.streak-score > span:last-child{display:block;margin-top:3px;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:rgb(var(--n-500));}
.streak-privacy{margin-top:12px;font-size:11px;line-height:1.5;color:rgb(var(--n-500));}
.streak-privacy span{color:rgb(var(--n-300));} .streak-privacy a{color:rgb(var(--gold-ink));}
@media (max-width:1023px){ .streak-ms-grid{grid-template-columns:repeat(3,minmax(0,1fr));} }
@media (max-width:639px){
  .streak-cards{grid-template-columns:minmax(0,1fr);gap:10px;}
  .streak-card{padding:14px 16px;}
  .streak-value .stat-value{font-size:38px;}
  .streak-ms-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .streak-ms{padding:10px;}
  .streak-signin{flex-direction:column;align-items:stretch;}
  .streak-signin-btn{justify-content:center;}
  .streak-cal-foot{flex-direction:column;align-items:flex-start;}
  .streak-row{gap:9px;padding:8px;}
  .streak-sub{white-space:normal;line-height:1.35;}
}

/* ==== Polish (Oct 2026): hero, motion, leaderboard rows, streaks, empty states ==== */
/* Hero: headline and intro beside the Cybercab on a layered gold glow; one entrance. */
.community-hero-copy{min-width:0;}
.community-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgb(var(--gold-ink));}
.community-eyebrow-dot{width:7px;height:7px;border-radius:999px;background:rgb(var(--gold));box-shadow:0 0 0 4px rgb(var(--gold) / .15),0 0 12px rgb(var(--gold) / .6);}
.community-title{margin-top:10px;font-size:clamp(2.6rem,5.2vw,4.4rem);line-height:.95;letter-spacing:-.04em;color:rgb(var(--ink));background:linear-gradient(180deg,rgb(var(--ink)) 55%,rgb(var(--ink) / .62));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.community-title::after{content:"";display:block;width:64px;height:3px;margin-top:14px;border-radius:999px;background:linear-gradient(90deg,rgb(var(--gold)),rgb(var(--gold) / 0));}
.community-intro.is-swapping{animation:cch-fade-up .35s ease both;}
.community-hero-art{position:relative;min-height:180px;display:flex;align-items:center;justify-content:center;isolation:isolate;min-width:0;max-width:100%;}
.community-hero-art img{position:relative;z-index:2;width:min(100%,460px);height:auto;filter:drop-shadow(0 26px 30px rgb(0 0 0 / .55));animation:cch-car-in .9s cubic-bezier(.2,.8,.2,1) .1s both;}
.community-hero-glow{position:absolute;inset:8% 6% 2%;z-index:0;border-radius:50%;background:radial-gradient(closest-side,rgb(var(--gold) / .28),rgb(var(--gold) / .08) 55%,transparent 72%);filter:blur(6px);animation:cch-glow-in 1.2s ease both;}
.community-hero-grid{position:absolute;inset:0;z-index:1;background-image:linear-gradient(rgb(var(--ink) / .05) 1px,transparent 1px),linear-gradient(90deg,rgb(var(--ink) / .05) 1px,transparent 1px);background-size:28px 28px;-webkit-mask-image:radial-gradient(closest-side,#000 30%,transparent 78%);mask-image:radial-gradient(closest-side,#000 30%,transparent 78%);}
.community-hero-copy > *{animation:cch-fade-up .6s ease both;}
.community-hero-copy > *:nth-child(2){animation-delay:.06s;} .community-hero-copy > *:nth-child(3){animation-delay:.12s;}
@keyframes cch-fade-up{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}
@keyframes cch-car-in{from{opacity:0;transform:translateX(28px) scale(.97);}to{opacity:1;transform:none;}}
@keyframes cch-glow-in{from{opacity:0;transform:scale(.85);}to{opacity:1;transform:none;}}
/* Sections and boards ease in when switched. */
.community-view:not(.hidden),.community-stat-grid:not(.hidden){animation:cch-fade-up .32s ease both;}
#boardList:not(.hidden){animation:cch-fade-up .28s ease both;}
/* Shimmer placeholders while data loads. */
.skeleton-row,.skeleton-block{position:relative;overflow:hidden;background:rgb(var(--ink) / .04);border-radius:12px;}
.skeleton-row{height:64px;}
.skeleton-row::after,.skeleton-block::after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgb(var(--ink) / .07),transparent);animation:cch-shimmer 1.4s infinite;}
@keyframes cch-shimmer{to{transform:translateX(100%);}}
.streak-card.is-skeleton{animation:none;}
/* Main tabs and board tabs: one row each, scrolling sideways on phones. */
#communityTabs{flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
#communityTabs::-webkit-scrollbar,#boardTabs::-webkit-scrollbar,.streak-board-tabs::-webkit-scrollbar{display:none;}
#communityTabs > button{flex-shrink:0;scroll-snap-align:start;transition:background-color .2s,color .2s,border-color .2s,transform .15s;}
.community-page #boardTabs{scroll-snap-type:x mandatory;scrollbar-width:none;}
.community-page #boardTabs > button{scroll-snap-align:start;}
/* Leaderboard: the count, medal ranks, tactile rows that open their breakdown. */
.board-count{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:rgb(var(--n-500));}
.board-search{max-width:none;margin-top:18px;}
.lb-item{list-style:none;}
.lb-row{width:100%;display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;border:1px solid rgb(var(--ink) / .06);background:rgb(var(--ink) / .015);text-align:left;cursor:pointer;transition:border-color .2s,background-color .2s,transform .15s,box-shadow .2s;}
.lb-row:hover{border-color:rgb(var(--gold) / .4);background:rgb(var(--ink) / .035);box-shadow:0 8px 22px -16px rgb(var(--gold) / .6);}
.lb-row:active{transform:scale(.995);}
.lb-row:focus-visible{outline:2px solid rgb(var(--gold));outline-offset:2px;}
.lb-item.is-first .lb-row{border-color:rgb(var(--gold) / .45);background:linear-gradient(90deg,rgb(var(--gold) / .12),transparent 70%);}
.lb-rank{width:32px;height:32px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:999px;font-weight:700;font-size:13px;color:rgb(var(--n-400));font-variant-numeric:tabular-nums;}
.lb-rank.is-gold{color:#1a1204;background:linear-gradient(140deg,#fff3a6,rgb(var(--gold)) 45%,#b8860b);box-shadow:0 0 0 1px rgb(var(--gold) / .5),0 0 14px rgb(var(--gold) / .45);}
.lb-rank.is-silver{color:#16181c;background:linear-gradient(140deg,#ffffff,#c9ced6 45%,#8a919c);box-shadow:0 0 0 1px rgb(255 255 255 / .25);}
.lb-rank.is-bronze{color:#1f1006;background:linear-gradient(140deg,#f6c49a,#cd7f32 45%,#8a4d1c);box-shadow:0 0 0 1px rgb(205 127 50 / .4);}
.lb-tie{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;vertical-align:1px;color:rgb(var(--n-400));border:1px solid rgb(var(--ink) / .14);}
.lb-chevron{width:16px;height:16px;flex-shrink:0;color:rgb(var(--n-500));transition:transform .25s;}
.lb-row[aria-expanded="true"] .lb-chevron{transform:rotate(180deg);color:rgb(var(--gold));}
.lb-details{padding:0 12px;}
.lb-details:not([hidden]){animation:cch-fade-up .25s ease both;}
.lb-details-inner{margin:6px 0 4px 44px;padding:12px 14px;border-radius:12px;border:1px solid rgb(var(--ink) / .07);background:rgb(var(--ink) / .02);}
.lb-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;}
.lb-metrics dt{font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:rgb(var(--n-500));}
.lb-metrics dd{margin-top:2px;font-size:17px;font-weight:700;color:rgb(var(--ink));}
.lb-math{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin-top:12px;padding-top:10px;border-top:1px dashed rgb(var(--ink) / .1);font-size:11px;color:rgb(var(--n-500));}
.lb-math span{display:inline-flex;align-items:baseline;gap:4px;}
.lb-math b{font-size:13px;color:rgb(var(--ink));font-variant-numeric:tabular-nums;}
.lb-math i{font-style:normal;color:rgb(var(--n-500));}
.lb-math-total b{color:rgb(var(--gold-ink));font-size:15px;}
.lb-profile{display:inline-flex;margin-top:12px;font-size:12px;font-weight:600;color:rgb(var(--gold-ink));}
.lb-profile:hover{text-decoration:underline;text-underline-offset:3px;}
.lb-noprofile{margin-top:12px;font-size:12px;color:rgb(var(--n-500));}
.board-invite{margin-top:12px;padding:10px 12px;border-radius:12px;border:1px dashed rgb(var(--gold) / .3);font-size:12px;color:rgb(var(--n-300));background:rgb(var(--gold) / .04);}
.board-privacy{margin-top:14px;font-size:11.5px;line-height:1.55;color:rgb(var(--n-500));}
/* Reviews: an empty section that teaches. */
.review-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px auto 0;max-width:640px;text-align:left;list-style:none;}
.review-steps li{display:flex;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid rgb(var(--ink) / .08);background:rgb(var(--ink) / .02);}
.review-step-n{width:24px;height:24px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:999px;font-size:12px;font-weight:700;color:#1a1204;background:rgb(var(--gold));}
.review-steps b{display:block;font-size:12px;color:rgb(var(--ink));}
.review-steps li > span:last-child{font-size:11px;line-height:1.4;color:rgb(var(--n-400));}
/* Streaks: a ring toward the next milestone, a designed calendar, the crown. */
.streak-card-body{display:flex;align-items:center;gap:16px;margin-top:10px;}
.streak-ring-wrap{position:relative;width:64px;height:64px;flex-shrink:0;}
.streak-ring{width:64px;height:64px;transform:rotate(-90deg);}
.streak-ring-track{fill:none;stroke:rgb(var(--ink) / .08);stroke-width:6;}
.streak-ring-fill{fill:none;stroke:rgb(var(--gold));stroke-width:6;stroke-linecap:round;transition:stroke-dashoffset .9s cubic-bezier(.2,.8,.2,1);}
.streak-ring.is-glow .streak-ring-fill{filter:drop-shadow(0 0 5px rgb(var(--gold) / .8));}
.streak-ring-num{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:rgb(var(--gold));}
.streak-ring-num svg{width:24px;height:24px;}
.streak-card-body .streak-value{margin-top:0;}
.streak-next{display:block;margin-top:6px;font-size:11.5px;line-height:1.4;color:rgb(var(--n-400));}
.streak-next b{color:rgb(var(--ink));font-weight:600;}
.streak-cal-body{display:flex;gap:6px;}
.streak-daylabels{display:flex;flex-direction:column;width:22px;font-size:9px;color:rgb(var(--n-500));}
.streak-daylabels span{display:flex;align-items:center;}
.streak-calendar{position:relative;}
.streak-cal-scroll{padding:14px 14px 10px;border-radius:14px;border:1px solid rgb(var(--ink) / .07);background:radial-gradient(120% 140% at 100% 0%,rgb(var(--gold) / .06),transparent 60%),rgb(var(--ink) / .015);}
.streak-day{border-radius:4px;background:rgb(var(--ink) / .055);box-shadow:inset 0 0 0 1px rgb(var(--ink) / .03);transition:transform .12s,box-shadow .15s;}
.streak-day:not(.is-future):hover{transform:scale(1.18);}
.streak-day.l1{background:linear-gradient(140deg,rgb(var(--gold) / .5),rgb(var(--gold) / .35));}
.streak-day.l2{background:linear-gradient(140deg,rgb(var(--gold) / .85),rgb(var(--gold) / .6));}
.streak-day.l3{background:linear-gradient(140deg,#fff2a0,rgb(var(--gold)));box-shadow:0 0 8px rgb(var(--gold) / .55);}
.streak-day.is-today{outline:1.5px solid rgb(var(--ink) / .8);outline-offset:1.5px;animation:cch-today 2.4s ease-in-out infinite;}
@keyframes cch-today{50%{outline-color:rgb(var(--gold));}}
.streak-ms{position:relative;transition:transform .15s,border-color .2s;}
.streak-ms:hover{transform:translateY(-1px);}
.streak-ms.is-unlocked{box-shadow:0 0 0 1px rgb(var(--gold) / .15),0 10px 24px -18px rgb(var(--gold) / .8);}
.streak-ms-bar{display:block;height:3px;margin-top:4px;border-radius:999px;background:rgb(var(--ink) / .08);overflow:hidden;}
.streak-ms-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,rgb(var(--gold) / .5),rgb(var(--gold)));}
.streak-crown{display:flex;align-items:center;gap:10px;margin-top:12px;padding:10px 12px;border-radius:12px;border:1px solid rgb(var(--gold) / .35);background:linear-gradient(90deg,rgb(var(--gold) / .12),transparent 75%);font-size:13px;color:rgb(var(--n-300));}
.streak-crown b{color:rgb(var(--ink));}
.streak-crown-icon{width:22px;height:22px;flex-shrink:0;color:rgb(var(--gold));}
.streak-crown-icon svg{width:100%;height:100%;}
.streak-asof{margin-top:10px;font-size:11px;color:rgb(var(--n-500));}
.streak-board-tabs{flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;}
.streak-board-tabs button{flex-shrink:0;scroll-snap-align:start;}
.streak-rank.lb-rank{width:28px;height:28px;font-size:12px;}
/* The page clears the phone tab bar, so the last line is never hidden under it. */
@media(max-width:1023px){
  .community-hero{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);}
  .lb-metrics{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:639px){
  .community-page{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px));}
  .community-hero{grid-template-columns:minmax(0,1fr) 120px;gap:8px;}
  .community-hero-art{min-height:90px;}
  .community-hero-art img{width:100%;}
  .community-hero-glow{inset:0;}
  .community-title{font-size:2.1rem;margin-top:6px;}
  .community-title::after{width:44px;margin-top:10px;}
  .community-eyebrow{font-size:9.5px;letter-spacing:.12em;}
  #communityTabs > button{min-height:38px;padding:0 9px;font-size:10.5px;letter-spacing:.02em;}
  #communityTabs{gap:6px;}
  .lb-row{gap:9px;padding:9px 10px;}
  .lb-rank{width:26px;height:26px;font-size:12px;}
  .lb-details{padding:0 4px;}
  .lb-details-inner{margin-left:0;padding:10px;}
  .lb-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;}
  .lb-metrics dt{font-size:8.5px;letter-spacing:.02em;}
  .lb-metrics dd{font-size:14px;}
  .lb-math{font-size:10px;gap:4px 6px;}
  .review-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;}
  .review-steps li{flex-direction:column;gap:6px;padding:8px;}
  .review-steps b{font-size:11px;} .review-steps li > span:last-child{font-size:10px;}
  .streak-card-body{gap:12px;}
  .streak-ring-wrap,.streak-ring{width:52px;height:52px;}
  .streak-ring-num svg{width:20px;height:20px;}
  .streak-cal-scroll{padding:10px 8px 8px;}
  .streak-crown{font-size:12px;}
}
@media (prefers-reduced-motion: reduce){
  .community-hero-art img,.community-hero-glow,.community-hero-copy > *,.community-view:not(.hidden),.community-stat-grid:not(.hidden),#boardList:not(.hidden),.lb-details:not([hidden]),.community-intro.is-swapping{animation:none;}
  .skeleton-row::after,.skeleton-block::after,.streak-day.is-today{animation:none;}
  .streak-ring-fill{transition:none;}
}
/* Phones keep the desktop structure, compacted: the two streak cards side by
   side, milestones three across. */
@media(max-width:639px){
  .streak-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .streak-card{padding:10px;}
  .streak-card-head{font-size:9px;letter-spacing:.04em;gap:5px;}
  .streak-card-head .streak-icon{display:none;}
  .streak-tag{display:none;}
  .streak-card-body{gap:8px;margin-top:6px;}
  .streak-ring-wrap,.streak-ring{width:38px;height:38px;}
  .streak-ring-num svg{width:15px;height:15px;}
  .streak-value{font-size:12px;}
  .streak-value .stat-value{font-size:26px;}
  .streak-longest{margin-top:2px;font-size:10px;}
  .streak-next{font-size:9.5px;margin-top:4px;}
  .streak-status{margin-top:6px;font-size:9.5px;line-height:1.3;}
  .streak-ms-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;}
  .streak-ms{padding:8px;gap:2px;}
  .streak-ms-icon{width:14px;height:14px;}
  .streak-ms-name{font-size:11px;}
  .streak-ms-sub{font-size:9px;}
}

/* The section tabs and Find riders share one row (search on the right); on
   phones the search sits full width under the tabs. Works from every section. */
.community-toolbar{position:relative;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:16px;}
.community-toolbar #communityTabs{min-width:0;}
.community-toolbar-search{width:320px;max-width:100%;margin-top:0;flex-shrink:0;}
.community-toolbar-search input{min-height:44px;}
@media(max-width:767px){
  .community-toolbar{flex-direction:column;align-items:stretch;gap:10px;}
  .community-toolbar-search{width:100%;}
  .community-toolbar-search input{min-height:40px;font-size:13px;}
}
.community-toolbar #riderSearchList{background:rgb(var(--surface) / .98);}

/* ==== Spotter progression (js/progress.js): rank titles are TEXT, not badges ==== */
.spotter-rank{font-weight:700;letter-spacing:.01em;}
.rank-bronze{color:#d08a4a;} .rank-silver{color:#c3c9d2;} .rank-gold{color:rgb(var(--gold-ink));}
.rank-platinum{color:#e6ecf2;} .rank-diamond{color:#bfe6ff;}
:root[data-theme="light"] .rank-bronze{color:#9a5a1e;} :root[data-theme="light"] .rank-silver{color:#6b7280;}
:root[data-theme="light"] .rank-platinum{color:#64748b;} :root[data-theme="light"] .rank-diamond{color:#2b7bb9;}
.lb-spotter-rank{font-size:11.5px;font-weight:600;}
.lb-level{color:rgb(var(--n-500));}
.progress .xp-body{margin-top:20px;}
.xp-hero{padding:20px 22px;border:1px solid rgb(var(--gold) / .35);border-radius:16px;background:linear-gradient(120deg,rgb(var(--gold) / .1),transparent 70%);}
.xp-hero-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.xp-hero-title{font-size:20px;font-weight:800;letter-spacing:.02em;color:rgb(var(--ink));}
.xp-total{font-size:14px;font-weight:600;color:rgb(var(--n-400));}
.xp-total .stat-value{font-size:44px;line-height:1;font-weight:800;color:rgb(var(--gold-ink));margin-right:4px;}
.xp-bar{height:10px;margin-top:14px;border-radius:999px;background:rgb(var(--ink) / .08);overflow:hidden;}
.xp-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,rgb(var(--gold) / .65),rgb(var(--gold)));box-shadow:0 0 10px rgb(var(--gold) / .45);transition:width .8s cubic-bezier(.2,.8,.2,1);}
.xp-hero-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:10px;font-size:12.5px;color:rgb(var(--n-400));}
.xp-hero-meta b{color:rgb(var(--ink));font-weight:600;}
.xp-block{margin-top:24px;}
.xp-block-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px;}
.xp-block-head h3{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgb(var(--ink));}
.xp-block-head span{font-size:11px;color:rgb(var(--n-500));}
.mission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;}
.mission-grid.is-weekly{grid-template-columns:repeat(2,minmax(0,1fr));}
.mission{display:flex;flex-direction:column;min-width:0;padding:14px 16px;border:1px solid rgb(var(--ink) / .09);border-radius:14px;background:rgb(var(--ink) / .025);}
.mission.is-weekly{padding:16px 18px;}
.mission.is-done{border-color:rgb(var(--gold) / .45);}
.mission-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;}
.mission-head h4{font-size:12.5px;font-weight:800;letter-spacing:.05em;color:rgb(var(--ink));}
.mission-reward{flex-shrink:0;font-size:13px;font-weight:800;color:rgb(var(--gold-ink));}
.mission-desc{margin-top:4px;font-size:12px;line-height:1.45;color:rgb(var(--n-400));}
.mission .xp-bar{height:6px;margin-top:10px;}
.mission-foot{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:8px;font-size:11.5px;color:rgb(var(--n-400));}
.mission-foot b{color:rgb(var(--ink));}
.mission-status{font-size:11px;color:rgb(var(--n-500));}
.mission-status.is-done{font-weight:800;letter-spacing:.03em;color:rgb(var(--gold-ink));}
.rank-ladder{display:flex;align-items:stretch;gap:6px;list-style:none;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;}
.rank-ladder::-webkit-scrollbar{display:none;}
.rank-step{position:relative;flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid rgb(var(--ink) / .08);border-radius:12px;background:rgb(var(--ink) / .02);font-size:12.5px;}
.rank-step:not(.is-reached){opacity:.6;}
.rank-step.is-current{opacity:1;border-color:rgb(var(--gold) / .55);background:linear-gradient(140deg,rgb(var(--gold) / .12),transparent 80%);}
.rank-xp{font-size:11px;color:rgb(var(--n-500));font-variant-numeric:tabular-nums;}
.rank-you{position:absolute;top:8px;right:10px;font-size:9.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:rgb(var(--gold-ink));}
.rank-arrow{align-self:center;flex-shrink:0;color:rgb(var(--n-500));font-size:12px;}
.xp-activity{display:grid;gap:4px;list-style:none;}
.xp-activity li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:baseline;gap:12px;padding:8px 12px;border-radius:10px;background:rgb(var(--ink) / .02);font-size:12.5px;}
.xp-activity-reason{color:rgb(var(--ink));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.xp-activity-when{font-size:11px;color:rgb(var(--n-500));}
.xp-activity-amt{font-weight:800;color:rgb(var(--gold-ink));font-variant-numeric:tabular-nums;}
.xp-activity-amt.is-neg{color:rgb(var(--n-400));}
.xp-empty,.xp-board-link{font-size:12.5px;line-height:1.5;color:rgb(var(--n-400));}
.xp-board-link{margin-top:18px;}
.xp-board-link a{color:rgb(var(--gold-ink));font-weight:600;}
.xp-rewards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 16px;margin-top:10px;list-style:none;font-size:12px;color:rgb(var(--n-400));}
.xp-rewards li{display:flex;justify-content:space-between;gap:8px;}
.xp-rewards b{color:rgb(var(--gold-ink));}
.progress .streak-signin{margin-bottom:4px;}
@media(max-width:767px){ .mission-grid{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media(max-width:639px){
  .xp-hero{padding:14px;}
  .xp-hero-title{font-size:15px;}
  .xp-total .stat-value{font-size:32px;}
  .xp-hero-meta{font-size:11px;gap:4px 10px;}
  .mission-grid,.mission-grid.is-weekly{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .mission{padding:10px;}
  .mission-head h4{font-size:10.5px;}
  .mission-reward{font-size:11px;}
  .mission-desc{font-size:10.5px;}
  .mission-foot{font-size:10px;}
  .mission-status{font-size:9.5px;}
  .rank-step{padding:8px;font-size:10.5px;}
  .rank-xp{font-size:9.5px;}
  .rank-you{position:static;}
  .rank-arrow{display:none;}
  .xp-activity li{grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;font-size:11.5px;padding:7px 10px;}
  .xp-activity-when{grid-column:1;grid-row:2;}
  .xp-activity-amt{grid-row:1 / span 2;align-self:center;}
  .xp-rewards{grid-template-columns:minmax(0,1fr);}
  .lb-spotter-rank{display:block;font-size:10.5px;}
}
@media (prefers-reduced-motion: reduce){ .xp-bar i{transition:none;} }

/* ---- Community Social (js/social.js): feed ~70%, sidebar ~30%; one column on phones ---- */
.social-layout{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,3fr);gap:24px;align-items:start;}
.social-main{min-width:0;display:flex;flex-direction:column;gap:14px;}
.social-sidebar{min-width:0;display:flex;flex-direction:column;gap:14px;position:sticky;top:88px;}
.social-card{padding:16px;border:1px solid rgb(var(--ink) / .08);border-radius:14px;background:rgb(var(--surface));}
.social-card-title{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgb(var(--n-400));margin-bottom:10px;}
.social-muted{font-size:12.5px;color:rgb(var(--n-500));line-height:1.45;}
.social-hint{font-size:12px;line-height:1.45;color:rgb(var(--n-500));margin-top:6px;}
.social-error{font-size:12.5px;color:rgb(var(--danger-ink));margin-top:8px;}
.social-error.hidden,.social-attach.hidden,.social-previews.hidden,.social-signin.hidden,.social-count.hidden,.social-sort.hidden,.social-more.hidden,.social-empty.hidden,.social-thread.hidden,.social-menu.hidden,.social-editing.hidden,.social-composer-row.hidden,.social-card.hidden{display:none;}
.social-linkbtn{font-size:12.5px;font-weight:600;color:rgb(var(--gold-ink));background:none;border:0;padding:0;cursor:pointer;}
.social-linkbtn:hover{text-decoration:underline;}
.social-back{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:rgb(var(--n-300));margin-bottom:10px;}
.social-back:hover{color:rgb(var(--ink));}

/* Avatars */
.social-avatar{width:40px;height:40px;flex-shrink:0;border-radius:999px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:rgb(var(--n-800));color:rgb(var(--n-400));}
.social-avatar.is-small{width:28px;height:28px;}
.social-avatar.is-small svg{width:16px;height:16px;}

/* Composer */
.social-composer{padding:16px 18px;}
.community-panel.social-composer > div:first-child{padding-bottom:0;border-bottom:0;}
.social-composer-row{display:flex;gap:12px;align-items:flex-start;}
.social-composer-who{font-size:13px;font-weight:600;color:rgb(var(--ink));display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;}
.social-editing{font-size:12px;font-weight:500;color:rgb(var(--gold-ink));}
.social-textarea{display:block;width:100%;min-height:72px;margin-top:6px;padding:4px 0;resize:none;border:0;outline:0;background:transparent;color:rgb(var(--ink));font-size:16px;line-height:1.5;}
.social-textarea::placeholder{color:rgb(var(--n-500));}
.social-input{width:100%;min-height:40px;padding:8px 10px;border-radius:10px;border:1px solid rgb(var(--hair-2));background:rgb(var(--bg));color:rgb(var(--ink));font-size:14px;}
.social-input:focus{outline:2px solid rgb(var(--focus) / .5);outline-offset:1px;border-color:transparent;}
textarea.social-input{resize:vertical;min-height:40px;}
.social-attach{margin-top:12px;padding:12px;border-radius:12px;border:1px solid rgb(var(--ink) / .1);background:rgb(var(--ink) / .02);display:flex;flex-direction:column;gap:10px;}
.social-attach-title{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:rgb(var(--ink));width:100%;}
legend.social-attach-title{float:left;padding:0;}
.social-attach-title svg{color:rgb(var(--gold-ink));}
.social-attach-title .social-linkbtn{margin-left:auto;font-weight:500;color:rgb(var(--n-400));}
.social-attach-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
.social-field-label{display:block;font-size:11px;font-weight:600;letter-spacing:.03em;color:rgb(var(--n-400));margin-bottom:4px;}
.social-previews{display:grid;gap:8px;margin-top:10px;grid-template-columns:repeat(4,minmax(0,1fr));max-width:440px;}
.social-preview{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;background:rgb(var(--n-800));}
.social-preview img{width:100%;height:100%;object-fit:cover;}
.social-preview button{position:absolute;top:4px;right:4px;width:26px;height:26px;border-radius:999px;background:rgb(0 0 0 / .72);color:#fff;font-size:16px;line-height:1;}
.social-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid rgb(var(--ink) / .08);}
.social-tools{display:flex;align-items:center;gap:2px;flex-wrap:wrap;min-width:0;}
.social-tool{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 10px;border-radius:999px;font-size:12.5px;font-weight:600;color:rgb(var(--gold-ink));cursor:pointer;background:none;border:0;}
.social-tool:hover{background:rgb(var(--gold) / .1);}
.social-tool[aria-pressed="true"]{background:rgb(var(--gold) / .14);}
.social-tool.is-disabled{opacity:.4;pointer-events:none;}
.social-category{min-height:36px;padding:0 28px 0 10px;border-radius:999px;border:1px solid rgb(var(--hair-2));background:rgb(var(--surface));color:rgb(var(--n-300));font-size:12.5px;font-weight:600;}
.social-publish{display:flex;align-items:center;gap:12px;flex-shrink:0;}
.social-count{font-size:12.5px;font-variant-numeric:tabular-nums;color:rgb(var(--n-400));}
.social-count.is-near{color:rgb(var(--warn-ink));}
.social-count.is-over{color:rgb(var(--danger-ink));font-weight:700;}
.social-publish-btn{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 20px;border-radius:999px;font-size:14px;font-weight:700;color:#1a1204;background:rgb(var(--gold));border:0;cursor:pointer;transition:filter var(--t-fast) var(--ease),opacity var(--t-fast);}
.social-publish-btn:hover{filter:brightness(1.06);}
.social-publish-btn:disabled{opacity:.45;cursor:not-allowed;}
.social-publish-btn.is-small{min-height:34px;padding:0 14px;font-size:13px;}
.social-btn-ghost{min-height:38px;padding:0 16px;border-radius:999px;font-size:14px;font-weight:600;color:rgb(var(--n-300));border:1px solid rgb(var(--hair-2));background:none;}
.social-signin{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:14px;color:rgb(var(--n-300));}

/* Filters */
.social-filters{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid rgb(var(--ink) / .08);}
.social-filters.hidden{display:none;}
.social-filter-tabs{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;}
.social-filter{position:relative;min-height:44px;padding:0 14px;font-size:14px;font-weight:600;color:rgb(var(--n-400));background:none;border:0;white-space:nowrap;cursor:pointer;}
.social-filter:hover{color:rgb(var(--ink));}
.social-filter[aria-selected="true"]{color:rgb(var(--ink));}
.social-filter[aria-selected="true"]::after{content:"";position:absolute;left:14px;right:14px;bottom:-1px;height:3px;border-radius:3px;background:rgb(var(--gold));}

/* Feed and post cards */
.social-feed{display:flex;flex-direction:column;gap:12px;}
.social-feed.hidden{display:none;}
.social-skeleton{height:140px;border-radius:14px;background:linear-gradient(90deg,rgb(var(--ink) / .03),rgb(var(--ink) / .07),rgb(var(--ink) / .03));background-size:200% 100%;animation:social-shimmer 1.4s linear infinite;}
@keyframes social-shimmer{to{background-position:-200% 0;}}
.social-empty{padding:32px 20px;text-align:center;border:1px dashed rgb(var(--ink) / .12);border-radius:14px;font-size:13px;color:rgb(var(--n-400));}
.social-empty-title{font-weight:700;color:rgb(var(--ink));margin-bottom:4px;font-size:15px;}
.social-more{min-height:44px;border-radius:12px;border:1px solid rgb(var(--hair-2));font-size:14px;font-weight:600;color:rgb(var(--n-300));background:rgb(var(--surface));}
.social-more:hover{color:rgb(var(--ink));}
.social-post{padding:16px 18px;border:1px solid rgb(var(--ink) / .08);border-radius:14px;background:rgb(var(--surface));transition:border-color var(--t-fast) var(--ease);}
.social-post:hover{border-color:rgb(var(--ink) / .14);}
.social-post.is-new{animation:social-in var(--t-slow) var(--ease);}
@keyframes social-in{from{opacity:0;transform:translateY(-6px);}}
.social-post-row{display:flex;gap:12px;align-items:flex-start;}
.social-post-head{display:flex;align-items:flex-start;gap:8px;}
.social-post-who{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;min-width:0;flex:1;font-size:14px;}
.social-name{font-weight:700;color:rgb(var(--ink));}
.social-rank{font-size:11.5px;}
.social-level{font-size:11px;font-weight:600;color:rgb(var(--n-400));padding:1px 6px;border-radius:999px;border:1px solid rgb(var(--ink) / .1);}
.social-dot{color:rgb(var(--n-600));}
.social-time{font-size:13px;color:rgb(var(--n-500));}
a.social-time:hover{text-decoration:underline;}
.social-cat{flex-shrink:0;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:3px 8px;border-radius:999px;color:rgb(var(--n-300));background:rgb(var(--ink) / .06);}
.social-cat.cat-sighting{color:rgb(var(--gold-ink));background:rgb(var(--gold) / .12);}
.social-cat.cat-review{color:rgb(var(--ok-ink));background:rgb(var(--ok-ink) / .12);}
.social-cat.cat-question{color:#8ab4f8;background:rgb(138 180 248 / .12);}
.social-cat.cat-news{color:#c4a7ff;background:rgb(196 167 255 / .12);}
.social-body{margin-top:6px;font-size:15px;line-height:1.55;color:rgb(var(--n-200));white-space:pre-wrap;overflow-wrap:anywhere;}
.social-body a,.social-comment-body a,.social-announcement a{color:rgb(var(--gold-ink));text-decoration:underline;text-underline-offset:2px;}
.social-photos{display:grid;gap:4px;margin-top:10px;border-radius:14px;overflow:hidden;border:1px solid rgb(var(--ink) / .08);}
.social-photos button{display:block;padding:0;border:0;background:rgb(var(--n-800));min-height:0;}
.social-photos img{width:100%;height:100%;object-fit:cover;display:block;}
.social-photos.n-1 button{max-height:520px;}
.social-photos.n-1 img{max-height:520px;height:auto;}
.social-photos.n-2{grid-template-columns:1fr 1fr;aspect-ratio:16/9;}
.social-photos.n-3{grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;aspect-ratio:16/9;}
.social-photos.n-3 button:first-child{grid-row:1 / span 2;}
.social-photos.n-4{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;aspect-ratio:16/9;}
.social-review{margin-top:10px;padding:10px 12px;border-radius:12px;border:1px solid rgb(var(--gold) / .2);background:rgb(var(--gold) / .05);}
.social-review-head{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.social-review-label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgb(var(--n-400));}
.social-review-stars{color:rgb(var(--gold-ink));letter-spacing:.08em;font-size:16px;}
.social-review-facts{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:4px;font-size:12.5px;color:rgb(var(--n-300));}
.social-vehicle{display:inline-flex;align-items:center;gap:6px;margin-top:10px;margin-right:8px;padding:4px 10px;border-radius:999px;border:1px solid rgb(var(--ink) / .1);font-size:12.5px;font-weight:600;color:rgb(var(--n-200));}
.social-vehicle:hover{border-color:rgb(var(--gold) / .4);}
.social-verified{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600;color:rgb(var(--ok-ink));}
.social-unverified{font-size:11px;color:rgb(var(--n-500));}
.social-linkcard{display:flex;align-items:center;gap:10px;margin-top:10px;padding:10px 12px;border-radius:12px;border:1px solid rgb(var(--ink) / .1);color:rgb(var(--n-300));max-width:100%;}
.social-linkcard:hover{border-color:rgb(var(--gold) / .4);}
.social-linkcard svg{flex-shrink:0;color:rgb(var(--gold-ink));}
.social-linkcard-host{display:block;font-size:12px;font-weight:700;color:rgb(var(--ink));}
.social-linkcard-url{display:block;font-size:12px;color:rgb(var(--n-500));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.social-actions{display:flex;align-items:center;gap:4px;margin-top:10px;margin-left:-8px;}
.social-action{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 10px;border-radius:999px;font-size:13px;font-weight:600;color:rgb(var(--n-400));background:none;border:0;cursor:pointer;font-variant-numeric:tabular-nums;}
.social-action:hover{color:rgb(var(--ink));background:rgb(var(--ink) / .05);}
.social-action.pulse-heart[data-liked="true"]{color:#f0567a;}
.social-removed-note{margin:-4px 0 10px;padding:6px 10px;border-radius:8px;font-size:12px;font-weight:600;color:rgb(var(--danger-ink));background:rgb(var(--danger) / .08);}
.social-icon-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;color:rgb(var(--n-400));background:none;border:0;cursor:pointer;margin:-6px -6px 0 0;}
.social-icon-btn:hover{color:rgb(var(--ink));background:rgb(var(--ink) / .06);}
.social-menu-wrap{position:relative;flex-shrink:0;}
.social-menu{position:absolute;right:0;top:30px;z-index:30;min-width:190px;padding:6px;border-radius:12px;border:1px solid rgb(var(--hair-2));background:rgb(var(--surface-2));box-shadow:0 18px 40px -16px rgb(var(--shadow) / .7);}
.social-menu > *{display:block;width:100%;text-align:left;padding:9px 10px;border-radius:8px;font-size:13.5px;font-weight:500;color:rgb(var(--n-200));background:none;border:0;cursor:pointer;}
.social-menu > *:hover,.social-menu > *:focus-visible{background:rgb(var(--ink) / .06);outline:0;}
.social-menu .is-danger{color:rgb(var(--danger-ink));}

/* Comments */
.social-thread{margin-top:10px;padding-top:12px;border-top:1px solid rgb(var(--ink) / .08);display:flex;flex-direction:column;gap:10px;}
.social-comments,.social-replies{display:flex;flex-direction:column;gap:10px;}
.social-replies:empty{display:none;}
.social-replies{margin:10px 0 0 38px;}
.social-comment-row{display:flex;gap:10px;align-items:flex-start;}
.social-comment-bubble{padding:8px 12px;border-radius:12px;background:rgb(var(--ink) / .04);}
.social-comment-bubble .social-post-who{font-size:13px;}
.social-comment-body{font-size:14px;line-height:1.5;color:rgb(var(--n-200));white-space:pre-wrap;overflow-wrap:anywhere;margin-top:2px;}
.social-comment-actions{display:flex;gap:14px;margin:4px 0 0 12px;}
.social-comment-actions button{font-size:12px;font-weight:600;color:rgb(var(--n-500));background:none;border:0;padding:0;cursor:pointer;}
.social-comment-actions button:hover{color:rgb(var(--ink));}
.social-comment.is-removed > p{padding:6px 12px;font-style:italic;}
.social-comment-form{display:flex;gap:8px;align-items:flex-end;margin-top:6px;}
.social-comment-form textarea{flex:1;min-width:0;min-height:38px;resize:none;}

/* Sidebar lists */
.social-trending{display:flex;flex-direction:column;gap:2px;}
.social-trending a{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:8px;margin:0 -8px;border-radius:10px;}
.social-trending a:hover{background:rgb(var(--ink) / .04);}
.social-trend-text{font-size:13.5px;line-height:1.4;color:rgb(var(--n-200));display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;}
.social-trend-meta{font-size:11.5px;color:rgb(var(--n-500));}
.social-top{display:flex;flex-direction:column;gap:8px;}
.social-top li{display:flex;align-items:center;gap:10px;font-size:13.5px;}
.social-top-n{width:16px;text-align:center;font-size:12px;font-weight:700;color:rgb(var(--n-500));}
.social-top-score{font-size:12px;font-weight:700;color:rgb(var(--gold-ink));font-variant-numeric:tabular-nums;}
.social-announcement{border-color:rgb(var(--gold) / .35);background:linear-gradient(120deg,rgb(var(--gold) / .1),transparent 70%),rgb(var(--surface));font-size:13.5px;line-height:1.5;color:rgb(var(--n-200));display:flex;flex-direction:column;gap:6px;}
.social-announcement .social-card-title{margin-bottom:0;color:rgb(var(--gold-ink));}
.social-rules summary{cursor:pointer;margin-bottom:0;list-style:none;}
.social-rules summary::-webkit-details-marker{display:none;}
.social-rules[open] summary{margin-bottom:10px;}
.social-rules ul{display:flex;flex-direction:column;gap:6px;padding-left:16px;list-style:disc;font-size:12.5px;line-height:1.45;color:rgb(var(--n-300));}

/* Dialogs */
.social-lightbox{max-width:none;max-height:none;width:100vw;height:100vh;margin:0;padding:0;border:0;background:rgb(0 0 0 / .9);display:none;align-items:center;justify-content:center;}
.social-lightbox[open]{display:flex;}
.social-lightbox::backdrop{background:rgb(0 0 0 / .6);}
.social-lightbox img{max-width:min(92vw,1400px);max-height:86vh;object-fit:contain;border-radius:8px;}
.social-lightbox-close{position:absolute;top:16px;right:16px;width:44px;height:44px;border-radius:999px;background:rgb(255 255 255 / .12);color:#fff;font-size:26px;line-height:1;}
.social-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:999px;background:rgb(255 255 255 / .12);color:#fff;font-size:30px;line-height:1;}
.social-lightbox-nav[data-step="-1"]{left:16px;} .social-lightbox-nav[data-step="1"]{right:16px;}
.social-lightbox-nav.hidden{display:none;}
.social-dialog{width:min(440px,calc(100vw - 32px));padding:20px;border-radius:16px;border:1px solid rgb(var(--hair-2));background:rgb(var(--surface-2));color:rgb(var(--ink));}
.social-dialog::backdrop{background:rgb(var(--scrim) / .7);backdrop-filter:blur(3px);}
.social-report-reasons{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0;font-size:14px;color:rgb(var(--n-200));}
.social-report-reasons label{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;border:1px solid rgb(var(--ink) / .1);cursor:pointer;}
.social-report-reasons label:has(input:checked){border-color:rgb(var(--gold) / .6);background:rgb(var(--gold) / .06);}

@media(max-width:1023px){
  .social-layout{grid-template-columns:minmax(0,1fr);}
  .social-sidebar{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
  .social-sidebar > .social-announcement{grid-column:1 / -1;}
}
@media(max-width:639px){
  .social-layout{gap:16px;}
  .social-sidebar{grid-template-columns:minmax(0,1fr);}
  .social-composer{padding:12px;}
  .social-composer-row{gap:10px;}
  .social-avatar{width:34px;height:34px;}
  .social-avatar.is-small{width:26px;height:26px;}
  .social-textarea{font-size:16px;min-height:60px;}
  .social-attach-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .social-tool{min-height:40px;padding:0 9px;}
  .social-toolbar{flex-wrap:wrap;}
  .social-publish{margin-left:auto;}
  .social-filter{padding:0 10px;font-size:13px;}
  .social-filter[aria-selected="true"]::after{left:10px;right:10px;}
  .social-post{padding:12px;border-radius:12px;}
  .social-post-row{gap:10px;}
  .social-post-who{font-size:13.5px;}
  .social-body{font-size:14.5px;}
  .social-replies{margin-left:20px;}
  .social-report-reasons{grid-template-columns:minmax(0,1fr);}
  .social-photos.n-1 img{max-height:380px;}
}
@media (prefers-reduced-motion: reduce){ .social-skeleton{animation:none;} .social-post.is-new{animation:none;} }

/* ---- Social, part 2: Cybercab picker and card, pins, saved, notifications ---- */
.social-vpick{position:relative;}
.social-vpick.hidden{display:none;}
.social-vresults{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:35;max-height:320px;overflow-y:auto;padding:6px;border-radius:12px;border:1px solid rgb(var(--hair-2));background:rgb(var(--surface-2));box-shadow:0 18px 40px -16px rgb(var(--shadow) / .7);}
.social-vresults.hidden{display:none;}
.social-vopt{border-radius:10px;cursor:pointer;}
.social-vopt[aria-selected="true"],.social-vopt:hover{background:rgb(var(--gold) / .08);}
.social-vopt .social-vcard{border-color:transparent;background:none;margin:0;}
.social-vempty{padding:12px;font-size:13px;line-height:1.45;color:rgb(var(--n-400));}
.social-vpreview{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.social-vpreview .social-vcard{flex:1;min-width:0;margin:0;}
.social-vpreview-actions{display:flex;gap:14px;}
.social-vcard{display:flex;align-items:center;gap:12px;margin-top:10px;padding:10px 12px;border-radius:12px;border:1px solid rgb(var(--gold) / .28);background:linear-gradient(120deg,rgb(var(--gold) / .07),transparent 70%),rgb(var(--bg));color:rgb(var(--n-200));min-width:0;}
a.social-vcard:hover{border-color:rgb(var(--gold) / .6);}
.social-vcard-img{width:64px;height:40px;object-fit:contain;flex-shrink:0;}
.social-vcard-icon{width:40px;height:40px;flex-shrink:0;border-radius:10px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ink) / .05);color:rgb(var(--gold-ink));}
.social-vcard-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.social-vcard-plate{font-weight:700;font-size:14px;letter-spacing:.04em;color:rgb(var(--ink));font-variant-numeric:tabular-nums;}
.social-vcard-kind{font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:2px 7px;border-radius:999px;color:#1a1204;background:rgb(var(--gold));}
.social-vcard-facts{display:flex;flex-wrap:wrap;gap:2px 12px;margin-top:3px;font-size:12px;color:rgb(var(--n-400));min-width:0;}
.social-vcard-facts > span{overflow-wrap:anywhere;}
.social-vfact-k{font-size:10.5px;font-weight:700;letter-spacing:.05em;color:rgb(var(--n-500));}
.social-vcard-go{margin-left:auto;font-size:22px;line-height:1;color:rgb(var(--gold-ink));}
.social-pinned{display:flex;align-items:center;gap:5px;margin:-4px 0 8px 52px;font-size:12px;font-weight:700;color:rgb(var(--gold-ink));}
.social-post.is-pinned{border-color:rgb(var(--gold) / .3);}
.social-save{margin-left:auto;}
.social-save[aria-pressed="true"]{color:rgb(var(--gold-ink));}
.social-save[aria-pressed="true"] svg{fill:currentColor;}
.social-comment.is-highlight > .social-comment-row .social-comment-bubble{box-shadow:0 0 0 2px rgb(var(--gold) / .55);}
.social-empty .social-publish-btn.hidden{display:none;}
.social-empty .social-publish-btn{margin-top:12px;}
.social-top-rank{display:block;font-size:11.5px;color:rgb(var(--n-500));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.social-top-rank .spotter-rank{font-size:11.5px;}

/* Notifications bell, beside Find riders */
.community-toolbar-end{display:flex;align-items:center;gap:10px;min-width:0;}
.social-bell-wrap{position:relative;flex-shrink:0;}
.social-bell-wrap.hidden{display:none;}
.social-bell{position:relative;width:44px;height:44px;border-radius:999px;display:flex;align-items:center;justify-content:center;border:1px solid rgb(var(--gold) / .25);background:rgb(var(--surface));color:rgb(var(--n-200));}
.social-bell:hover,.social-bell[aria-expanded="true"]{color:rgb(var(--ink));border-color:rgb(var(--gold) / .6);}
.social-bell-count{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:rgb(var(--gold));color:#1a1204;font-size:11px;font-weight:800;line-height:20px;text-align:center;font-variant-numeric:tabular-nums;}
.social-bell-count.hidden{display:none;}
.social-notif-panel{position:absolute;right:0;top:calc(100% + 8px);z-index:50;width:min(380px,calc(100vw - 32px));max-height:min(480px,70vh);overflow-y:auto;padding:10px;border-radius:14px;border:1px solid rgb(var(--hair-2));background:rgb(var(--surface-2));box-shadow:0 22px 50px -18px rgb(var(--shadow) / .8);}
.social-notif-panel.hidden{display:none;}
.social-notif-head{display:flex;align-items:center;justify-content:space-between;padding:2px 4px 8px;}
.social-notif-head .social-card-title{margin:0;}
.social-notif-head .social-linkbtn.hidden{display:none;}
.social-notif-list{display:flex;flex-direction:column;gap:2px;}
.social-notif-list > .social-muted{padding:10px 6px;}
.social-note{display:flex;align-items:flex-start;gap:10px;padding:9px 8px;border-radius:10px;color:rgb(var(--n-300));}
.social-note:hover{background:rgb(var(--ink) / .05);}
.social-note.is-unread{background:rgb(var(--gold) / .06);}
.social-note-icon{width:30px;height:30px;flex-shrink:0;border-radius:999px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ink) / .06);color:rgb(var(--gold-ink));}
.social-note-icon .pulse-heart__heart svg{width:16px;height:16px;fill:currentColor;}
.social-note-at{font-weight:800;font-size:15px;}
.social-note-text{display:block;font-size:13.5px;line-height:1.4;}
.social-note-excerpt{display:block;margin-top:2px;font-size:12.5px;color:rgb(var(--n-500));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.social-note-time{display:block;margin-top:2px;font-size:11.5px;color:rgb(var(--n-500));}
.social-note-dot{width:8px;height:8px;flex-shrink:0;margin-top:6px;border-radius:999px;background:rgb(var(--gold));}
@media(max-width:1023px){
  .community-toolbar-end{width:100%;}
  .community-toolbar-end .community-toolbar-search{flex:1;width:auto;}
  /* The bell sits at the row's left edge here: open the panel rightward. */
  .social-notif-panel{left:0;right:auto;}
}
@media(max-width:639px){
  .social-bell{width:40px;height:40px;}
  .social-vcard{gap:10px;padding:9px 10px;}
  .social-vcard-img{width:52px;height:32px;}
  .social-pinned{margin-left:44px;}
  .social-vpreview-actions{width:100%;justify-content:flex-end;}
}

/* The feed's order: its own row under the filter tabs (never squeezes them). */
.social-feedbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:36px;margin-top:-4px;}
.social-feedbar.hidden{display:none;}
.social-sort-note{font-size:12.5px;color:rgb(var(--n-500));}
.social-sort-note.hidden{display:none;}
.social-sort{display:flex;align-items:center;gap:8px;margin-left:auto;}
.social-sort-label{font-size:12.5px;font-weight:600;color:rgb(var(--n-400));}
.social-count-msg{margin-top:6px;font-size:12.5px;color:rgb(var(--warn-ink));}
.social-count-msg.is-over{color:rgb(var(--danger-ink));font-weight:600;}
.social-count-msg.hidden{display:none;}
