/* Desktop is a full editorial workspace, not a scaled-up phone frame. */
@media (min-width: 900px) {
  html { background: #050609; }
  body { padding: 0; background: radial-gradient(ellipse 75% 48% at 78% -12%, #1a1d27 0%, #050609 62%); }
  #app { width: 100%; max-width: none; min-height: 100vh; margin: 0; background: transparent; box-shadow: none; }
  .shell { max-width: 1280px; padding-left: 36px; padding-right: 36px; }
  .top { height: 82px; position: sticky; top: 0; z-index: 20; background: #090a0ef0; backdrop-filter: blur(18px); }
  .top nav { display: flex; align-items: center; gap: 28px; margin-left: auto; margin-right: 30px; }
  .top nav a { font-size: 13px; white-space: nowrap; }
  .top .pill { font-size: 12px; padding: 10px 14px; }
  .bottom { display: none !important; }
  main { padding-bottom: 44px; }
  .hero { min-height: 470px; padding: 102px 0 70px; background: radial-gradient(ellipse 48% 105% at 78% 12%, #353848 0%, transparent 68%); }
  .hero h1 { max-width: 900px; font-size: clamp(62px, 6.5vw, 96px); }
  .hero p { font-size: 18px; line-height: 1.7; }
  .hero .filter input { width: 330px; }
  .section { padding: 52px 0; }
  .section h2 { font-size: 28px; }
  .editorial-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-right: 0; overflow: visible; }
  .editorial-card { min-width: 0; }
  .editorial-card img { height: 300px; }
  .editorial-card > div { padding: 18px; }
  .vibes { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
  .vibe { min-height: 142px; padding: 19px; }
  .grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
  .card-info { padding: 15px; }
  .card h3 { font-size: 16px; }
  .venue-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); overflow: visible; gap: 14px; }
  .venue-chip { min-width: 0; padding: 10px; }
  .detail { padding-top: 48px; }
  .detail-grid { grid-template-columns: minmax(330px, 440px) minmax(0, 1fr); gap: clamp(44px, 6vw, 92px); align-items: start; }
  .detail-grid > .poster { position: sticky; top: 108px; }
  .detail h1 { max-width: 720px; }
  .detail .social-panel { display: block; }
  .detail-fab { right: 36px; bottom: 34px; }
  .detail-fab .fab { min-height: 46px; }
  .directory-head { padding-top: 52px; }
  .directory-head .filters { max-width: 970px; }
  .directory-head .filter input { width: 360px; }
  .circle-header, .circle-compose, .circle-feed, .live-page .live-feed, .live-page .live-header, .live-page .live-gate, .live-page .live-unlocked { max-width: 820px; }
  .circle-compose { bottom: 0; padding: 18px 0; }
  .live-page { max-width: 1000px; }
  .live-hub { max-width: 1080px; }
  .live-hub-card { grid-template-columns: 42% 1fr; }
  .live-hub-card img { min-height: 300px; }
  .assistant { max-width: 900px; margin: 48px auto; }
  .profile-form { max-width: 920px; }
  .ops-shell { max-width: 1320px; padding: 34px 40px 70px; }
  .ops-top { position: sticky; top: 0; z-index: 15; padding-top: 4px; background: #090a0ef0; backdrop-filter: blur(18px); }
  .ops-tabs { position: sticky; top: 78px; z-index: 14; margin: 0 -16px; padding: 18px 16px; background: #090a0ef0; backdrop-filter: blur(18px); overflow: visible; }
  .ops-metrics { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .ops-panel { padding: 30px; }
  .ops-filter input { min-width: 330px !important; }
  .ops-community-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ops-community-post { height: 100%; }
}

.ops-inline-note {
  min-width: 170px;
  max-width: 260px;
  padding: 8px 9px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #090a0e;
  color: var(--ink);
  font-size: 11px;
}

.ops-inline-note:focus { outline: 0; border-color: #718640; }

@media (max-width: 760px) {
  .ops-inline-note { width: 100%; max-width: none; }
}

@media (min-width: 1440px) {
  .shell { max-width: 1360px; padding-left: 48px; padding-right: 48px; }
  .hero { min-height: 520px; }
  .editorial-card img { height: 330px; }
  .ops-shell { max-width: 1440px; padding-left: 48px; padding-right: 48px; }
}

/* Public pages use a native Mini Program-style shell. The ops console keeps
   its independent desktop workspace above. */
#app:not(.ops-app) { min-height: 100dvh; background: #0a0c12; }
#app:not(.ops-app) .mini-top { position: sticky; top: 0; z-index: 30; display: grid; grid-template-columns: 1fr auto; align-items: center; min-height: 52px; padding: 0 16px; border-bottom: 1px solid #222631; background: #0a0c12ee; backdrop-filter: blur(20px); }
#app:not(.ops-app) .mini-brand { display: grid; gap: 1px; width: max-content; letter-spacing: -1px; }
#app:not(.ops-app) .mini-brand b { color: #f5f6f7; font-size: 16px; line-height: 1; }
#app:not(.ops-app) .mini-brand small { color: #8b8f9d; font: 10px 'DM Mono'; letter-spacing: .12em; }
#app:not(.ops-app) .mini-city { display: inline-flex; align-items: center; gap: 5px; color: #f1f2f4; font-size: 13px; font-weight: 700; }
#app:not(.ops-app) .mini-city i { color: #d3ff58; font-style: normal; }
#app:not(.ops-app) .mini-ai-entry { justify-self: end; display: grid; width: 32px; height: 32px; place-items: center; border: 1px solid #5c7131; border-radius: 50%; background: #182110; color: #d3ff58; font-size: 15px; }
#app:not(.ops-app) .mini-main { padding-bottom: calc(86px + env(safe-area-inset-bottom)); }
#app:not(.ops-app) .mini-main .shell { max-width: 560px; padding-right: 16px; padding-left: 16px; }
#app:not(.ops-app) .hero { min-height: 0; padding: 31px 0 22px; background: radial-gradient(ellipse 95% 85% at 92% -7%, #384052 0%, transparent 58%), linear-gradient(180deg,#0e1119,#0a0c12); }
#app:not(.ops-app) .hero h1 { margin: 14px 0 10px; font-size: clamp(42px, 11.5vw, 54px); line-height: .98; letter-spacing: -.08em; }
#app:not(.ops-app) .hero h1 em { color: #d3ff58; font-style: normal; }
#app:not(.ops-app) .hero p { margin: 0; color: #afb3bd; font-size: 13px; line-height: 1.6; }
#app:not(.ops-app) .mini-hero { display: none; }
#app:not(.ops-app) .home-kicker { display: flex; align-items: center; justify-content: space-between; color: #8e95a4; font: 10px 'DM Mono'; letter-spacing: .12em; }
#app:not(.ops-app) .home-live-state { display: inline-flex; align-items: center; gap: 6px; color: #d4d7df; letter-spacing: .02em; }
#app:not(.ops-app) .home-live-state i { width: 6px; height: 6px; border-radius: 50%; background: #d3ff58; box-shadow: 0 0 0 4px #d3ff5822; }
#app:not(.ops-app) .home-actions { display: flex; gap: 9px; margin-top: 23px; }
#app:not(.ops-app) .home-actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; border-radius: 12px; font-size: 12px; font-weight: 800; }
#app:not(.ops-app) .home-primary { flex: 1; gap: 11px; background: #d3ff58; color: #15180e; }
#app:not(.ops-app) .home-primary i { font-size: 17px; font-style: normal; }
#app:not(.ops-app) .home-secondary { min-width: 88px; border: 1px solid #303744; background: #151820; color: #e8e9eb; }
#app:not(.ops-app) .home-carousel-section { padding-top: 16px; }
#app:not(.ops-app) .home-carousel-head { display: none; }
#app:not(.ops-app) .home-carousel-head span { color: #d3ff58; font: 10px 'DM Mono'; letter-spacing: .13em; }
#app:not(.ops-app) .home-carousel-head small { color: #8d93a0; font-size: 10px; }
#app:not(.ops-app) .home-carousel { display: flex; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
#app:not(.ops-app) .home-carousel::-webkit-scrollbar { display: none; }
#app:not(.ops-app) .home-carousel-slide { position: relative; flex: 0 0 100%; height: 178px; overflow: hidden; border: 1px solid #303743; border-radius: 17px; scroll-snap-align: start; background: #171a22; }
#app:not(.ops-app) .home-carousel-slide img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
#app:not(.ops-app) .home-carousel-slide:hover img { transform: scale(1.035); }
#app:not(.ops-app) .home-carousel-shade { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(7,8,12,.84),rgba(7,8,12,.34) 63%,rgba(7,8,12,.06)); }
#app:not(.ops-app) .home-carousel-copy { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: flex-start; justify-content: end; padding: 16px; }
#app:not(.ops-app) .carousel-status { display: inline-block; margin-bottom: 7px; padding: 4px 6px; border-radius: 99px; background: #101218d9; color: #d3ff58; font: 9px 'DM Mono'; }
#app:not(.ops-app) .home-carousel .carousel-status { display: none; }
#app:not(.ops-app) .carousel-status.live { color: #ffb6cb; background: #3a1722e6; }
#app:not(.ops-app) .carousel-status.recap { color: #b3d2ef; background: #152331e6; }
#app:not(.ops-app) .home-carousel-copy h2 { max-width: 84%; margin: 0; color: #fff; font-size: 23px; line-height: 1.05; letter-spacing: -.055em; }
#app:not(.ops-app) .home-carousel-copy p { margin: 7px 0 11px; color: #d9dce0; font-size: 10px; }
#app:not(.ops-app) .home-carousel-copy b { display: inline-flex; align-items: center; gap: 7px; color: #d3ff58; font-size: 11px; }
#app:not(.ops-app) .home-carousel-copy i { font-size: 15px; font-style: normal; }
#app:not(.ops-app) .home-carousel-dots { display: flex; justify-content: center; gap: 5px; margin-top: 9px; }
#app:not(.ops-app) .home-carousel-dots button { width: 5px; height: 5px; padding: 0; border: 0; border-radius: 99px; background: #48505d; transition: width .2s ease,background .2s ease; }
#app:not(.ops-app) .home-carousel-dots button.active { width: 16px; background: #d3ff58; }
#app:not(.ops-app) .filters { gap: 8px; margin-top: 20px; }
#app:not(.ops-app) .filter { flex: 1 1 200px; }
#app:not(.ops-app) .filter input { width: 100%; min-height: 42px; background: #151821; }
#app:not(.ops-app) .pill { min-height: 42px; padding: 10px 13px; font-size: 12px; }
#app:not(.ops-app) .section { padding: 27px 0; }
#app:not(.ops-app) .section-head { margin-bottom: 13px; }
#app:not(.ops-app) .section h2 { font-size: 20px; }
#app:not(.ops-app) .tonight-section { padding-top: 19px; }
#app:not(.ops-app) .home-picks { display: none; }
#app:not(.ops-app) .tonight-section .eyebrow { display: none; }
#app:not(.ops-app) .tonight-live-note { display: flex; align-items: center; gap: 8px; margin: 0 0 13px; padding: 10px 12px; border: 1px solid #44323a; border-radius: 12px; background: linear-gradient(100deg,#21161c,#15171d); color: #f4dce4; font-size: 11px; }
#app:not(.ops-app) .tonight-live-note { display: none; }
#app:not(.ops-app) .tonight-live-note small { margin-left: auto; color: #a89ba1; font-size: 10px; }
#app:not(.ops-app) .live-dot { width: 7px; height: 7px; border-radius: 50%; background: #ff6eaa; box-shadow: 0 0 0 5px #ff6eaa22; }
#app:not(.ops-app) .tonight-grid.tonight-single { grid-template-columns: 1fr; }
#app:not(.ops-app) .tonight-grid.tonight-single .card { display: grid; grid-template-columns: 39% 1fr; min-height: 156px; }
#app:not(.ops-app) .tonight-grid.tonight-single .card img { height: 100%; min-height: 156px; aspect-ratio: auto; }
#app:not(.ops-app) .tonight-grid.tonight-single .card-info { display: flex; flex-direction: column; justify-content: center; padding: 14px 12px; }
#app:not(.ops-app) .tonight-grid.tonight-single .card h3 { overflow: visible; white-space: normal; font-size: 15px; line-height: 1.25; }
#app:not(.ops-app) .tonight-grid.tonight-single .card .meta { font-size: 10px; }
#app:not(.ops-app) .tonight-grid.tonight-single .status { left: 8px; }
#app:not(.ops-app) .editorial-grid { display: flex; gap: 12px; margin-right: -16px; padding: 0 16px 4px 0; overflow-x: auto; scroll-snap-type: x proximity; }
#app:not(.ops-app) .editorial-card { min-width: min(82vw, 298px); scroll-snap-align: start; border-radius: 18px; }
#app:not(.ops-app) .editorial-card img { height: 174px; }
#app:not(.ops-app) .editorial-card > div { padding: 14px; }
#app:not(.ops-app) .editorial-card h3 { margin: 7px 0; font-size: 18px; }
#app:not(.ops-app) .editorial-card p { display: none; }
#app:not(.ops-app) .editorial-card .eyebrow { overflow: hidden; color: #b7bcaa; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
#app:not(.ops-app) .editorial-card .meta { padding-top: 2px; color: #a2a7b3; }
#app:not(.ops-app) .home-discover { padding-top: 4px; padding-bottom: 28px; }
#app:not(.ops-app) .discover-cta { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px; border: 1px solid #2d3440; border-radius: 16px; background: linear-gradient(120deg, #161b24, #10131a); color: #f3f5f6; }
#app:not(.ops-app) .discover-cta span { display: grid; gap: 5px; }
#app:not(.ops-app) .discover-cta small { color: #89909e; font: 10px 'DM Mono'; letter-spacing: .1em; }
#app:not(.ops-app) .discover-cta b { font-size: 14px; }
#app:not(.ops-app) .discover-cta i { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 50%; background: #d3ff58; color: #13170d; font-size: 18px; font-style: normal; }
#app:not(.ops-app) .mine-page { padding-top: 24px; }
#app:not(.ops-app) .mine-profile { display: grid; grid-template-columns: 52px minmax(0, 1fr) auto; gap: 11px; align-items: center; margin: 10px 0 14px; }
#app:not(.ops-app) .mine-profile .profile-avatar { width: 52px; height: 52px; flex-basis: 52px; font-size: 19px; }
#app:not(.ops-app) .mine-profile h2 { margin: 0; font-size: 20px; letter-spacing: -.05em; }
#app:not(.ops-app) .mine-profile small { display: block; margin-top: 3px; overflow: hidden; color: #8d93a0; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
#app:not(.ops-app) .mine-profile .text-button { padding: 7px 0 7px 8px; color: #d3ff58; font-size: 12px; }
#app:not(.ops-app) .party-level { display: grid; grid-template-columns: 1fr auto; gap: 14px; margin: 0 0 14px; padding: 13px; border: 1px solid #4b5d31; border-radius: 14px; background: linear-gradient(130deg, #192211, #10140e); }
#app:not(.ops-app) .party-level span { display: grid; gap: 4px; min-width: 0; }
#app:not(.ops-app) .party-level small { color: #aab497; font: 9px 'DM Mono'; letter-spacing: .08em; }
#app:not(.ops-app) .party-level b { color: #eff6d5; font-size: 13px; }
#app:not(.ops-app) .party-level em { overflow: hidden; color: #a6af96; font-size: 10px; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
#app:not(.ops-app) .party-level-xp { align-content: end; text-align: right; }
#app:not(.ops-app) .party-level-xp > b { color: #d3ff58; }
#app:not(.ops-app) .party-level-xp i { display: block; overflow: hidden; width: 112px; height: 5px; border-radius: 99px; background: #354027; }
#app:not(.ops-app) .party-level-xp u { display: block; height: 100%; border-radius: inherit; background: #d3ff58; text-decoration: none; }
#app:not(.ops-app) .my-stats.compact { grid-template-columns: repeat(2, 1fr); max-width: 230px; margin: 0 0 14px; }
#app:not(.ops-app) .my-stats.compact > div { padding: 10px 12px; }
#app:not(.ops-app) .profile-details { margin-top: 14px; border: 1px solid #2a303b; border-radius: 14px; background: #11141a; }
#app:not(.ops-app) .profile-details summary { position: relative; display: grid; gap: 3px; padding: 14px; cursor: pointer; list-style: none; }
#app:not(.ops-app) .profile-details summary::-webkit-details-marker { display: none; }
#app:not(.ops-app) .profile-details summary::after { position: absolute; right: 15px; content: '⌄'; color: #8e94a1; }
#app:not(.ops-app) .profile-details[open] summary { border-bottom: 1px solid #2a303b; }
#app:not(.ops-app) .profile-details[open] summary::after { transform: rotate(180deg); }
#app:not(.ops-app) .profile-details summary span { font-size: 13px; font-weight: 800; }
#app:not(.ops-app) .profile-details summary small { color: #858b98; font-size: 10px; }
#app:not(.ops-app) .profile-details > .muted { display: block; margin: 14px 14px 0; font-size: 11px; line-height: 1.55; }
#app:not(.ops-app) .profile-details .profile-form { margin: 14px; padding: 0; border: 0; background: transparent; }
#app:not(.ops-app) .profile-details .profile-fields { grid-template-columns: 1fr; }
#app:not(.ops-app) .profile-details .profile-row { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
#app:not(.ops-app) .profile-details .party-passport { margin: 0; padding: 14px; border-bottom: 1px solid #2a303b; }
#app:not(.ops-app) .saved-section { padding-top: 22px; }
#app:not(.ops-app) .vibes { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
#app:not(.ops-app) .vibe { min-height: 106px; padding: 13px; border-radius: 15px; }
#app:not(.ops-app) .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
#app:not(.ops-app) .card { border-radius: 15px; }
#app:not(.ops-app) .card-info { padding: 10px; }
#app:not(.ops-app) .card h3 { margin: 7px 0 5px; font-size: 13px; }
#app:not(.ops-app) .meta { font-size: 10px; line-height: 1.55; }
#app:not(.ops-app) .tag { padding: 3px 6px; font-size: 9px; }
#app:not(.ops-app) .status { top: 8px; left: 8px; padding: 5px 6px; font-size: 9px; }
#app:not(.ops-app) .heat-badge { right: 7px; bottom: 7px; font-size: 9px; }
#app:not(.ops-app) .venue-strip { margin-right: -16px; padding-right: 16px; }
#app:not(.ops-app) .directory-head { padding-top: 24px; }
#app:not(.ops-app) .date-rail { margin-right: -16px; padding-right: 16px; }
#app:not(.ops-app) .date-rail, #app:not(.ops-app) .when-tabs, #app:not(.ops-app) .editorial-grid, #app:not(.ops-app) .venue-strip { scrollbar-width: none; }
#app:not(.ops-app) .date-rail::-webkit-scrollbar, #app:not(.ops-app) .when-tabs::-webkit-scrollbar, #app:not(.ops-app) .editorial-grid::-webkit-scrollbar, #app:not(.ops-app) .venue-strip::-webkit-scrollbar { display: none; }
#app:not(.ops-app) .detail { padding-top: 22px; }
#app:not(.ops-app) .detail-grid { gap: 22px; }
#app:not(.ops-app) .detail h1 { font-size: 36px; }
#app:not(.ops-app) .info { grid-template-columns: 82px 1fr; padding: 13px 0; font-size: 13px; }
#app:not(.ops-app) .detail-fab { right: 16px; bottom: calc(82px + env(safe-area-inset-bottom)); }
#app:not(.ops-app) .mini-tabbar { position: fixed; z-index: 40; right: 0; bottom: 0; left: 0; display: grid !important; grid-template-columns: repeat(4, 1fr); height: calc(68px + env(safe-area-inset-bottom)); padding: 8px 12px env(safe-area-inset-bottom); border-top: 1px solid #252934; background: #11141cf7; backdrop-filter: blur(20px); }
#app:not(.ops-app) .mini-tabbar a { display: grid; justify-items: center; align-content: center; gap: 3px; color: #858a98; font-size: 10px; }
#app:not(.ops-app) .mini-tabbar i { display: grid; width: 23px; height: 23px; place-items: center; border-radius: 8px; color: currentColor; font-size: 18px; font-style: normal; }
#app:not(.ops-app) .mini-tabbar a.active { color: #d3ff58; font-weight: 800; }
#app:not(.ops-app) .mini-tabbar a.active i { background: #243015; }

@media (min-width: 761px) {
  body:has(#app:not(.ops-app)) { padding: 22px 0; background: radial-gradient(ellipse 75% 70% at 50% 0%, #202633 0%, #050609 68%); }
  #app:not(.ops-app) { width: min(100%, 560px); margin: 0 auto; overflow: visible; border: 1px solid #282d39; border-radius: 26px; box-shadow: 0 28px 90px #0009; }
  #app:not(.ops-app) .mini-main { min-height: calc(100vh - 44px); }
  #app:not(.ops-app) .mini-tabbar { right: auto; left: 50%; width: min(100vw, 560px); transform: translateX(-50%); border-right: 1px solid #282d39; border-left: 1px solid #282d39; }
}

/* PAICITY visual system — quiet, editorial, nightlife-first. */
#app:not(.ops-app) { --paicity-ink:#f5f4ef; --paicity-muted:#91939d; --paicity-line:rgba(255,255,255,.105); --paicity-panel:rgba(21,23,30,.82); background:radial-gradient(ellipse 90% 48% at 50% -8%,#1c2130 0%,#0c0d13 57%,#090a0e 100%); color:var(--paicity-ink); font-family:Inter,"PingFang SC","Helvetica Neue",Arial,sans-serif; }
#app:not(.ops-app) .mini-top { min-height:60px; padding:0 20px; border-bottom-color:rgba(255,255,255,.07); background:rgba(10,11,16,.72); box-shadow:0 12px 28px rgba(0,0,0,.12); }
#app:not(.ops-app) .mini-brand b { font-size:20px; font-weight:900; letter-spacing:-.08em; }
#app:not(.ops-app) .mini-city { gap:6px; padding:6px 10px; border:1px solid rgba(255,255,255,.1); border-radius:999px; background:rgba(255,255,255,.035); color:#d9dadf; font-size:11px; }
#app:not(.ops-app) .mini-main .shell { max-width:560px; padding-right:20px; padding-left:20px; }
#app:not(.ops-app) .section { padding:31px 0; }
#app:not(.ops-app) .section-head { align-items:flex-end; margin-bottom:15px; }
#app:not(.ops-app) .section h2 { color:#f6f5f1; font-size:22px; font-weight:850; letter-spacing:-.065em; }
#app:not(.ops-app) .section-head > a { color:#aeb1bc; font-size:11px; }
#app:not(.ops-app) .muted { color:var(--paicity-muted); }
#app:not(.ops-app) .eyebrow { color:#b9e952; font-size:9px; letter-spacing:.16em; }

/* Home */
#app:not(.ops-app) .home-carousel-section { padding-top:18px; }
#app:not(.ops-app) .home-carousel { gap:12px; border-radius:26px; }
#app:not(.ops-app) .home-carousel-slide { height:254px; border:1px solid rgba(255,255,255,.13); border-radius:25px; box-shadow:0 20px 48px rgba(0,0,0,.34); }
#app:not(.ops-app) .home-carousel-slide img { filter:saturate(.9) contrast(1.04); }
#app:not(.ops-app) .home-carousel-shade { background:linear-gradient(180deg,rgba(7,8,12,.04) 18%,rgba(7,8,12,.32) 48%,rgba(7,8,12,.94) 100%); }
#app:not(.ops-app) .home-carousel-copy { padding:20px; }
#app:not(.ops-app) .home-carousel-copy h2 { max-width:92%; font-size:29px; line-height:.96; letter-spacing:-.075em; text-wrap:balance; }
#app:not(.ops-app) .home-carousel-copy p { margin:9px 0 15px; color:#d7d9dd; font-size:11px; }
#app:not(.ops-app) .home-carousel-copy b { padding:8px 10px; border-radius:99px; background:#d8ff60; color:#16180f; font-size:10px; }
#app:not(.ops-app) .home-carousel-copy i { font-size:14px; }
#app:not(.ops-app) .home-carousel-dots { gap:6px; margin-top:12px; }
#app:not(.ops-app) .home-carousel-dots button { width:6px; height:6px; background:#59606c; }
#app:not(.ops-app) .home-carousel-dots button.active { width:22px; background:#d8ff60; }
#app:not(.ops-app) .tonight-section { padding-top:30px; }
#app:not(.ops-app) .tonight-section .section-head > div > .muted { display:block; margin-top:5px; font-size:11px; }
#app:not(.ops-app) .home-discover { padding:1px 0 34px; }
#app:not(.ops-app) .discover-cta { padding:18px; border-color:rgba(216,255,96,.26); border-radius:18px; background:linear-gradient(135deg,#1c2412,#12150e); box-shadow:inset 0 1px rgba(255,255,255,.06); }
#app:not(.ops-app) .discover-cta small { color:#b7c795; }
#app:not(.ops-app) .discover-cta b { font-size:15px; letter-spacing:-.035em; }

/* Cards and discovery */
#app:not(.ops-app) .grid { gap:12px; }
#app:not(.ops-app) .card { border-color:rgba(255,255,255,.09); border-radius:18px; background:#14161d; box-shadow:0 10px 24px rgba(0,0,0,.16); }
#app:not(.ops-app) .card:active { transform:scale(.985); }
#app:not(.ops-app) .card img { aspect-ratio:3 / 4; }
#app:not(.ops-app) .card-info { padding:12px; }
#app:not(.ops-app) .card h3 { margin:8px 0 6px; color:#f2f1ec; font-size:14px; font-weight:800; letter-spacing:-.045em; }
#app:not(.ops-app) .meta { color:#a7aab4; font-size:10px; line-height:1.65; }
#app:not(.ops-app) .tag { margin-right:3px; padding:3px 6px; border-color:rgba(216,255,96,.26); background:rgba(216,255,96,.07); color:#d8ff60; font-size:8px; }
#app:not(.ops-app) .status { top:9px; left:9px; padding:5px 7px; border:1px solid rgba(255,255,255,.12); background:rgba(12,13,18,.75); backdrop-filter:blur(10px); font-size:8px; }
#app:not(.ops-app) .heat-badge { right:8px; top:auto; bottom:8px; border:1px solid rgba(216,255,96,.25); background:rgba(22,29,15,.87); font-size:8px; }
#app:not(.ops-app) .directory-head { padding-top:30px; }
#app:not(.ops-app) .directory-head .section-head { padding:18px; border:1px solid var(--paicity-line); border-radius:18px; background:linear-gradient(135deg,rgba(31,34,44,.8),rgba(16,18,24,.72)); }
#app:not(.ops-app) .directory-head .section-head h2 { font-size:25px; }
#app:not(.ops-app) .when-tabs { margin:17px 0 11px; gap:7px; }
#app:not(.ops-app) .when-tabs button,#app:not(.ops-app) .date-chip { border-color:rgba(255,255,255,.1); background:#151720; color:#a7aab4; }
#app:not(.ops-app) .when-tabs button.selected { background:#d8ff60; border-color:#d8ff60; color:#15170e; box-shadow:0 8px 18px rgba(216,255,96,.14); }
#app:not(.ops-app) .date-chip { min-width:58px; border-radius:14px; }
#app:not(.ops-app) .date-chip.selected { border-color:#d8ff60; background:#222a16; color:#d8ff60; }
#app:not(.ops-app) .filters { display:grid; grid-template-columns:minmax(0,1fr) 1fr; gap:8px; }
#app:not(.ops-app) .filters .filter { grid-column:1 / -1; }
#app:not(.ops-app) .filter input,#app:not(.ops-app) .filter select,#app:not(.ops-app) .filters select { border-color:rgba(255,255,255,.11); border-radius:13px; background:#151720; }
#app:not(.ops-app) .filters .pill { min-height:40px; border-radius:13px; }
#app:not(.ops-app) .filters .pill.lime { background:#d8ff60; color:#15170e; }

/* Details, AI and profile */
#app:not(.ops-app) .detail { padding-top:26px; }
#app:not(.ops-app) .detail h1 { font-size:39px; line-height:.96; letter-spacing:-.08em; }
#app:not(.ops-app) .poster { border-radius:23px; box-shadow:0 18px 45px rgba(0,0,0,.3); }
#app:not(.ops-app) .actions { gap:8px; margin:20px 0; }
#app:not(.ops-app) .button { border-radius:12px; background:#1b1e27; box-shadow:inset 0 1px rgba(255,255,255,.05); }
#app:not(.ops-app) .button.primary { background:#d8ff60; color:#16180f; }
#app:not(.ops-app) .info { border-top-color:var(--paicity-line); }
#app:not(.ops-app) .info strong { font-size:11px; }
#app:not(.ops-app) .curator-note,#app:not(.ops-app) .social-panel { border-radius:18px; }
#app:not(.ops-app) .assistant { margin:4px 0; padding:22px; border-color:rgba(216,255,96,.22); border-radius:23px; background:radial-gradient(ellipse 90% 80% at 100% 0%,#283515 0%,transparent 58%),linear-gradient(135deg,#191d27,#101218); box-shadow:0 18px 40px rgba(0,0,0,.22); }
#app:not(.ops-app) .assistant h2 { margin:7px 0; font-size:29px; letter-spacing:-.07em; }
#app:not(.ops-app) .chat-log { min-height:190px; margin-top:18px; padding:5px 0; }
#app:not(.ops-app) .bubble { border:1px solid rgba(255,255,255,.08); border-radius:16px 16px 16px 5px; background:#1a1c25; }
#app:not(.ops-app) .bubble.me { border-color:rgba(216,255,96,.24); border-radius:16px 16px 5px 16px; background:#273115; }
#app:not(.ops-app) .chat-form input { border-color:rgba(255,255,255,.13); border-radius:13px; background:#0e1016; }
#app:not(.ops-app) .mine-page { padding-top:30px; }
#app:not(.ops-app) .mine-profile { padding:17px; border:1px solid var(--paicity-line); border-radius:20px; background:linear-gradient(135deg,rgba(34,37,48,.9),rgba(18,20,27,.88)); }
#app:not(.ops-app) .mine-profile .profile-avatar { width:56px; height:56px; border:1px solid rgba(216,255,96,.35); background:#263015; }
#app:not(.ops-app) .party-level { border-color:rgba(216,255,96,.23); border-radius:18px; background:linear-gradient(135deg,#202917,#11150f); }
#app:not(.ops-app) .my-stats.compact { max-width:none; gap:8px; }
#app:not(.ops-app) .my-stats.compact > div { border:1px solid var(--paicity-line); border-radius:13px; background:#151720; }
#app:not(.ops-app) .profile-details { border-color:var(--paicity-line); border-radius:18px; background:#151720; }
#app:not(.ops-app) .profile-details summary { padding:16px; }

/* Navigation */
#app:not(.ops-app) .mini-tabbar { height:calc(74px + env(safe-area-inset-bottom)); padding:8px 16px env(safe-area-inset-bottom); border-top-color:rgba(255,255,255,.08); background:rgba(14,16,23,.88); box-shadow:0 -12px 30px rgba(0,0,0,.2); }
#app:not(.ops-app) .mini-tabbar a { gap:4px; color:#858994; font-size:9px; }
#app:not(.ops-app) .mini-tabbar i { width:28px; height:28px; border-radius:10px; font-size:17px; }
#app:not(.ops-app) .mini-tabbar a.active { color:#e2ff92; }
#app:not(.ops-app) .mini-tabbar a.active i { background:#2b3717; box-shadow:inset 0 0 0 1px rgba(216,255,96,.2); }
