/*
 * Olurmu Premium UI
 * A clean, responsive visual layer for the existing product surfaces.
 * The legacy stylesheet remains loaded for backwards-compatible selectors;
 * this file is intentionally loaded after it.
 */

:root{
  --border:rgba(31,41,55,.12);
  --accent:#6557f5;
  --accent-2:#1fbea5;
  --accent-3:#ec6f9d;
  --bg:#f5f7fb;
  --bg2:#eef1f7;
  --card:#ffffff;
  --card2:#f8f9fc;
  --text:#172033;
  --muted:#718096;
  --line:rgba(31,41,55,.12);
  --line2:rgba(31,41,55,.14);
  --lineSoft:rgba(31,41,55,.08);
  --shadow:0 18px 48px rgba(31,41,55,.08);
  --ui1:rgba(31,41,55,.045);
  --ui2:rgba(31,41,55,.07);
  --ui3:rgba(31,41,55,.11);
  --topbarBg:rgba(255,255,255,.82);
  --floatBg:rgba(255,255,255,.84);
  --sheetBg:rgba(255,255,255,.97);
  --radius:18px;
  --radius2:24px;
  --focus:rgba(101,87,245,.18);
}

html[data-theme="dark"]{
  --border:rgba(255,255,255,.12);
  --accent:#8e83ff;
  --accent-2:#42d3b9;
  --accent-3:#f18db2;
  --bg:#0d1220;
  --bg2:#121a2b;
  --card:#151e31;
  --card2:#19243a;
  --text:#f4f7ff;
  --muted:#9aa8c0;
  --line:rgba(255,255,255,.12);
  --line2:rgba(255,255,255,.15);
  --lineSoft:rgba(255,255,255,.08);
  --shadow:0 22px 58px rgba(0,0,0,.28);
  --ui1:rgba(255,255,255,.055);
  --ui2:rgba(255,255,255,.08);
  --ui3:rgba(255,255,255,.13);
  --topbarBg:rgba(13,18,32,.84);
  --floatBg:rgba(21,30,49,.88);
  --sheetBg:rgba(21,30,49,.98);
  --focus:rgba(142,131,255,.24);
}

html{scroll-behavior:smooth;background:var(--bg)}
body{
  min-height:100%;
  background:
    radial-gradient(900px 420px at 6% -5%, rgba(101,87,245,.12), transparent 62%),
    radial-gradient(780px 420px at 96% 4%, rgba(31,190,165,.10), transparent 58%),
    var(--bg);
  color:var(--text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:-.01em;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.16;
  background-image:radial-gradient(rgba(101,87,245,.22) .7px, transparent .7px);
  background-size:22px 22px;
  mask-image:linear-gradient(to bottom, black, transparent 75%);
  z-index:-1;
}
button,a,input,textarea{ -webkit-tap-highlight-color:transparent }
button{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{
  outline:3px solid var(--focus);
  outline-offset:2px;
}

.topbar{
  position:sticky;
  top:0;
  background:var(--topbarBg);
  border-bottom:1px solid var(--lineSoft);
  box-shadow:0 10px 34px rgba(31,41,55,.06);
  backdrop-filter:blur(22px) saturate(150%);
  -webkit-backdrop-filter:blur(22px) saturate(150%);
}
.topbar-inner{max-width:1180px;padding:14px 22px 10px}
.brandMain{gap:12px}
.logo{
  width:42px;height:42px;border-radius:15px;
  background:linear-gradient(145deg,var(--accent),var(--accent-2));
  border:0;box-shadow:0 12px 26px rgba(101,87,245,.22);
}
.logo::before{background:rgba(255,255,255,.14)}
.logo::after{background:conic-gradient(from 180deg,transparent,rgba(255,255,255,.36),transparent)}
.logo span{font-size:20px;color:#fff}
.brandText .title{
  font-size:23px;
  letter-spacing:-.06em;
  background:linear-gradient(100deg,var(--accent),var(--accent-3) 48%,var(--accent-2));
  -webkit-background-clip:text;background-clip:text;
}
.brandText .sub{font-size:11px;font-weight:700;letter-spacing:.02em;color:var(--muted)}
.stats{gap:8px}
.iconBtn{
  width:42px;height:42px;border-radius:14px;
  background:var(--ui1);
  border:1px solid var(--line);
  color:var(--text);
  box-shadow:0 4px 14px rgba(31,41,55,.04);
}
.iconBtn:hover{transform:translateY(-2px);background:var(--ui2);box-shadow:0 10px 22px rgba(31,41,55,.10)}
.adminBadge{background:rgba(236,111,157,.12);border-color:rgba(236,111,157,.26)}
.topbar-tabs{max-width:1180px;padding:2px 22px 12px}
.topbar-tabs .seg{
  padding:5px;
  gap:4px;
  background:var(--ui1);
  border:1px solid var(--line);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4);
}
.topbar-tabs .segBtn{padding:10px 15px;font-size:13px;color:var(--muted)}
.topbar-tabs .segBtn.active{
  color:var(--text);
  background:var(--card);
  border:1px solid var(--lineSoft);
  box-shadow:0 6px 16px rgba(31,41,55,.08);
}

.stage{max-width:1180px;padding:26px 22px 112px}
.stories,.quickHub,.feed,.empty{max-width:760px;margin-left:auto;margin-right:auto}
.stories{
  margin-top:0;
  padding:17px 18px 14px;
  border:1px solid var(--line);
  border-radius:var(--radius2);
  background:linear-gradient(135deg,rgba(101,87,245,.10),rgba(31,190,165,.06) 55%,var(--card) 100%);
  box-shadow:var(--shadow);
}
.storiesHead{margin-bottom:12px}
.storiesTitle{font-size:16px;font-weight:900;letter-spacing:-.03em}
.storiesHint{font-size:12px;color:var(--muted)}
#btnAddStory.storyAddBtn{width:36px;height:36px;border-radius:12px;background:var(--card);border-color:var(--line)}
.storiesRow{gap:14px;padding:2px 1px 5px}
.storyCircle{
  width:62px;height:62px;
  border:3px solid transparent;
  background:linear-gradient(var(--card),var(--card)) padding-box,linear-gradient(135deg,var(--accent),var(--accent-3),var(--accent-2)) border-box;
  box-shadow:0 8px 18px rgba(101,87,245,.12);
}
.storyBubble.unseen .storyCircle{border-width:3px}
.storyBubble.seen .storyCircle{opacity:.7}
.storyName{font-size:11px;font-weight:800;color:var(--muted);max-width:80px}
.storyAddBubble .storyCircle{background:var(--card);border:2px dashed var(--accent);color:var(--accent)}

.quickHub{margin-top:18px}
.quickRow3{gap:12px}
.quickCard{
  min-height:82px;
  padding:14px;
  border-radius:20px;
  border:1px solid var(--line);
  background:var(--card);
  box-shadow:0 10px 26px rgba(31,41,55,.05);
}
.quickCard:hover{transform:translateY(-3px);border-color:rgba(101,87,245,.36);box-shadow:0 16px 32px rgba(101,87,245,.12)}
.quickMini{align-items:center}
.quickMini .quickIcon{
  width:46px;height:46px;border-radius:15px;
  background:linear-gradient(135deg,rgba(101,87,245,.14),rgba(31,190,165,.12));
}
.quickTitle{font-size:14px}
.quickSub{color:var(--muted)}
.quickCardGlow::before{background:radial-gradient(closest-side,rgba(101,87,245,.13),transparent 72%)}

.feed{gap:16px;margin-top:18px}
.card{
  padding:20px;
  border:1px solid var(--line);
  border-radius:var(--radius2);
  background:linear-gradient(180deg,var(--card),color-mix(in srgb,var(--card) 88%,var(--bg2)));
  box-shadow:var(--shadow);
}
.card:hover{border-color:rgba(101,87,245,.22);box-shadow:0 22px 56px rgba(31,41,55,.12)}
.cardHead{align-items:center}
.meta{font-size:12px;color:var(--muted)}
.badges{gap:7px}
.badge{padding:6px 9px;border-radius:999px;background:var(--ui1);border-color:var(--line);font-size:11px;font-weight:800}
.badge.hot{background:rgba(31,190,165,.12);border-color:rgba(31,190,165,.26)}
.badge.editor{background:rgba(101,87,245,.12);border-color:rgba(101,87,245,.26)}
.text{margin-top:14px;font-size:20px;line-height:1.55;letter-spacing:-.025em}
.media{border-radius:18px;border-color:var(--line);background:var(--bg2)}
.actions{margin-top:16px}
.voteRow{gap:12px}
.btnVote{padding:13px 15px;border-radius:16px;background:var(--ui1)}
.btnVote.yes{border-color:rgba(31,190,165,.34)}
.btnVote.no{border-color:rgba(236,111,157,.34)}
.btn{border-radius:14px;background:var(--ui1);border-color:var(--line);padding:10px 13px}
.btn:hover{background:var(--ui2)}
.primary{
  border:0;
  background:linear-gradient(135deg,var(--accent),#8278ff);
  color:#fff;
  border-radius:14px;
  box-shadow:0 10px 22px rgba(101,87,245,.22);
}
.primary:hover{background:linear-gradient(135deg,#594be9,var(--accent));box-shadow:0 14px 28px rgba(101,87,245,.28);transform:translateY(-1px)}
.ghost{background:var(--ui1);border-color:var(--line);border-radius:14px}
.ghost:hover{background:var(--ui2);border-color:rgba(101,87,245,.30);transform:translateY(-1px)}
.fab{
  right:28px;bottom:28px;width:62px;height:62px;border-radius:21px;
  background:linear-gradient(135deg,var(--accent),var(--accent-3));
  box-shadow:0 18px 36px rgba(101,87,245,.28);
}
.chatFab{right:104px;bottom:31px;width:54px;height:54px;border-radius:18px;background:var(--floatBg);border-color:var(--line);box-shadow:var(--shadow)}

.backdrop{
  padding:18px;
  background:rgba(10,16,30,.58);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.sheet{
  border:1px solid var(--line);
  border-radius:26px;
  background:var(--sheetBg);
  box-shadow:0 30px 100px rgba(4,10,24,.30);
}
.sheetHead,.sheetTop{
  padding:16px 18px;
  background:linear-gradient(180deg,var(--ui1),transparent);
  border-bottom:1px solid var(--lineSoft);
}
.sheetTitle{font-size:18px;letter-spacing:-.03em}
.sheetBody{padding:0 18px 18px}
.input,.textarea,#composeText{
  border:1px solid var(--line);
  background:var(--ui1);
  color:var(--text);
  border-radius:16px;
}
.input:focus,.textarea:focus,#composeText:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--focus)}
.input::placeholder,.textarea::placeholder,#composeText::placeholder{color:var(--muted)}
.composeSheet{border-radius:28px}
.composeHead{padding:17px 18px 14px}
.composeBody{padding:4px 0 12px}
.composeTools{padding:0 18px 12px;gap:8px}
.toolBtn{border:1px solid var(--line);background:var(--ui1);border-radius:14px;color:var(--text)}
.composeFoot{padding:14px 18px calc(16px + env(safe-area-inset-bottom));background:var(--ui1);border-top:1px solid var(--lineSoft)}
.rules{border-color:var(--line);background:var(--ui1)}
.comment,.notifItem,.qaCard,.inboxItem,.profileQ{border-color:var(--line);background:var(--ui1);border-radius:18px}
.commentComposer{padding:14px 18px;background:var(--ui1);border-top-color:var(--lineSoft)}
.siteFooter{max-width:760px;margin:32px auto 0;padding:18px 0;color:var(--muted)}
.footLinks{display:flex;gap:10px;flex-wrap:wrap}
.footLinks a{color:var(--muted)}

.profileSheet{width:min(900px,96vw);border-radius:28px}
.profileAppBar{padding:14px 18px;background:var(--sheetBg);border-bottom:1px solid var(--lineSoft)}
.profileAppTitle{font-size:20px}
.profileSheetBody{padding:14px 18px 28px}
.profileHero{
  padding:22px;
  border-radius:24px;
  border:1px solid var(--line);
  background:
    radial-gradient(420px 180px at 0% 0%,rgba(101,87,245,.20),transparent 70%),
    radial-gradient(360px 160px at 100% 10%,rgba(31,190,165,.15),transparent 70%),
    var(--card);
  box-shadow:0 16px 36px rgba(31,41,55,.08);
}
.profileAvatar{width:84px;height:84px;border-radius:25px;background:var(--ui1);border-color:rgba(101,87,245,.34);box-shadow:0 12px 28px rgba(101,87,245,.15)}
.profileAvatarImg,.profileAvatarFallback{width:84px;height:84px;border-radius:25px}
.profileAvatarFallback{font-size:32px}
.profileName{font-size:23px;letter-spacing:-.04em}
.profilePresence{color:var(--muted)}
.profileHeroActions{margin-top:18px}
.profileHeroActions .primary{padding:13px 16px}
.profileActionRow .ghost{border-radius:14px}
.profileStats{gap:10px;margin-top:16px}
.statPill{min-width:128px;padding:12px 13px;border-radius:17px;border-color:var(--line);background:var(--ui1)}
.statPill b{font-size:20px}
.pCard{padding:16px;border-radius:20px;border-color:var(--line);background:linear-gradient(135deg,var(--ui1),transparent);box-shadow:none}
.pBar{height:9px;background:var(--ui2);border:0}
.pBar>div{background:linear-gradient(90deg,var(--accent),var(--accent-2))}
.profileTabs{gap:8px;margin:18px 0 10px;padding:5px;border:1px solid var(--line);border-radius:17px;background:var(--ui1)}
.profileTabs .tabBtn{border:0;background:transparent;border-radius:12px;padding:10px 12px;color:var(--muted)}
.profileTabs .tabBtn.active{background:var(--card);color:var(--text);box-shadow:0 5px 15px rgba(31,41,55,.08)}
.profileSettings{border-color:var(--line);background:var(--ui1);border-radius:18px}
.profileSettingsBody{padding:0 14px 14px}

.doc{font-size:15px;line-height:1.72}
.doc h3{margin:26px 0 8px;font-size:17px;color:var(--accent)}
.doc p,.doc ul{margin-top:10px}
.h2{font-size:25px;letter-spacing:-.04em}

.enterBody{
  min-height:100vh;
  background:
    radial-gradient(700px 500px at 0% 0%,rgba(101,87,245,.22),transparent 65%),
    radial-gradient(620px 460px at 100% 0%,rgba(31,190,165,.15),transparent 64%),
    var(--bg);
}
.enterWrap{max-width:1060px;padding:42px 22px 64px}
.enterCard{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);
  gap:28px;
  padding:28px;
  border-radius:30px;
  border:1px solid var(--line);
  background:linear-gradient(145deg,rgba(255,255,255,.76),rgba(255,255,255,.46));
  box-shadow:0 30px 90px rgba(31,41,55,.12);
}
html[data-theme="dark"] .enterCard{background:linear-gradient(145deg,rgba(21,30,49,.92),rgba(21,30,49,.72))}
.enterHero{grid-column:1 / -1;margin-bottom:0}
.enterLogo{width:60px;height:60px;border-radius:20px;background:linear-gradient(145deg,var(--accent),var(--accent-2));border:0;box-shadow:0 16px 32px rgba(101,87,245,.22)}
.enterTitle{font-size:23px;letter-spacing:-.05em}
.enterSub{color:var(--muted)}
.enterHighlights,.enterTour,.enterRules{margin:0;padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--ui1)}
.enterHighlights{grid-column:1;grid-row:2}
.enterTour{grid-column:2;grid-row:2 / span 2}
.enterRules{grid-column:1;grid-row:3}
.enterActions{grid-column:1;grid-row:4}
.enterFoot{grid-column:1 / -1;grid-row:5}
.hl{color:var(--text)}
.enterRulesTitle,.chkRow,.miniLink,.tourTitle,.tourStep{color:var(--text)}
.enterRulesTitle{font-weight:800}
.chkRow{line-height:1.45}
.miniLink{border-bottom-color:var(--line)}
.tourStep{color:var(--text)}
.tourNo{background:rgba(101,87,245,.12);border-color:rgba(101,87,245,.2);color:var(--accent)}
.mockCard{background:var(--card);border-color:var(--line);box-shadow:var(--shadow)}
.mockTop,.mockText,.mockBtns{color:var(--text)}
.tinyMuted{color:var(--muted)}

.adminWrap{max-width:1180px!important;padding:30px 22px!important}
.adminTop{padding:10px 0 18px}
.adminTop .brand{font-size:24px;font-weight:950;letter-spacing:-.05em;color:var(--accent)}
.adminCard{border-color:var(--line)!important;border-radius:24px!important;background:var(--card)!important;box-shadow:var(--shadow)}
.adminCard .tab{border-color:var(--line);background:var(--ui1);border-radius:12px;color:var(--text)}
.adminCard .tab.active{background:rgba(101,87,245,.13);border-color:rgba(101,87,245,.3)}
.adminCard th,.adminCard td{border-bottom-color:var(--lineSoft)}
.adminCard table{display:block;overflow-x:auto}

.ttBody{
  background:#090d18;
  color:#fff;
}
.ttTop{background:linear-gradient(180deg,rgba(9,13,24,.88),rgba(9,13,24,.25));backdrop-filter:blur(18px)}
.ttTopSearch{padding:16px 18px 10px}
.ttSearchTop{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);border-radius:15px;color:#fff}
.ttCatsBar{padding:6px 18px 12px;gap:8px}
.ttCat{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);border-radius:999px;color:rgba(255,255,255,.76)}
.ttCat.active{background:#fff;color:#111827;border-color:#fff}
.ttSlide{background:#090d18}
.ttCapTitle{font-size:17px}
.ttAct{border-radius:17px;background:rgba(9,13,24,.55);border-color:rgba(255,255,255,.16);backdrop-filter:blur(12px)}
.ttFab{background:linear-gradient(135deg,var(--accent),var(--accent-3));border:0}

@media (min-width:721px){
  .feed{max-width:760px}
  .stories,.quickHub{max-width:760px}
  .card{padding:22px}
}
@media (max-width:720px){
  .topbar-inner{padding:11px 14px 8px}
  .topbar-tabs{padding:0 14px 10px}
  .topbar-tabs .segBtn{padding:9px 12px;font-size:12px}
  .stage{padding:14px 12px 104px}
  .stories{padding:14px 14px 11px;border-radius:21px}
  .quickHub{margin-top:12px}
  .quickRow3{gap:9px}
  .quickRow3>.quickCard{min-width:146px}
  .feed{margin-top:12px;gap:12px}
  .card{padding:16px;border-radius:21px}
  .text{font-size:18px;line-height:1.52}
  .fab{right:16px;bottom:calc(16px + env(safe-area-inset-bottom));width:58px;height:58px}
  .chatFab{left:16px;right:auto;bottom:calc(18px + env(safe-area-inset-bottom))}
  .backdrop{padding:0}
  .sheet,.profileSheet,.composeSheet{width:100%;max-width:none;border-radius:24px 24px 0 0}
  .sheetTall{height:min(92vh,860px)}
  .profileSheet{height:94vh;max-height:94vh}
  .profileSheetBody{padding:12px 14px calc(32px + env(safe-area-inset-bottom))}
  .profileHero{padding:17px;border-radius:21px}
  .profileAvatar,.profileAvatarImg,.profileAvatarFallback{width:68px;height:68px;border-radius:21px}
  .profileName{font-size:20px}
  .profileStats .statGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .siteFooter{padding:16px 2px}
  .footInner{align-items:flex-start;flex-direction:column}
  .enterWrap{padding:16px 12px 34px}
  .enterCard{display:flex;flex-direction:column;gap:12px;padding:18px;border-radius:24px}
  .enterHero,.enterHighlights,.enterTour,.enterRules,.enterActions,.enterFoot{order:initial}
  .enterHero{margin-bottom:3px}
  .enterHighlights,.enterTour,.enterRules{padding:15px}
  .adminWrap{padding:18px 12px!important}
}
@media (max-width:420px){
  .brandText .title{font-size:19px}
  .logo{width:36px;height:36px;border-radius:13px}
  .stats{gap:5px}
  .iconBtn{width:38px;height:38px}
  .storiesHint{display:none}
  .quickRow3>.quickCard{min-width:136px}
  .quickMini .quickIcon{width:38px;height:38px}
  .quickMini{padding:9px}
  .text{font-size:17px}
  .voteRow{gap:8px}
  .btnVote{padding:12px 11px;font-size:13px}
  .profileTabs .tabBtn{font-size:12px;padding:9px 7px}
  .profileActionRow{flex-wrap:wrap}
  .profileActionRow .ghost{min-width:calc(50% - 4px)}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
}

/*
 * Visual direction v2 — Editorial Signal
 * A deliberately different surface from the legacy rounded/glass UI:
 * warm paper in light mode, ink/navy in dark mode, sharper geometry,
 * stronger type hierarchy and lime/cobalt signal colors.
 */
:root{
  --bg:#0b0f14;
  --bg2:#111821;
  --card:#151d26;
  --card2:#1c2732;
  --text:#f3f6f8;
  --muted:#93a0ad;
  --line:rgba(255,255,255,.13);
  --line2:rgba(255,255,255,.18);
  --lineSoft:rgba(255,255,255,.08);
  --shadow:0 20px 52px rgba(0,0,0,.28);
  --ui1:rgba(255,255,255,.055);
  --ui2:rgba(255,255,255,.085);
  --ui3:rgba(255,255,255,.13);
  --topbarBg:rgba(11,15,20,.92);
  --floatBg:rgba(21,29,38,.94);
  --sheetBg:#151d26;
  --accent:#c8f36a;
  --accent-2:#55d7c2;
  --accent-3:#ff906b;
  --focus:rgba(200,243,106,.24);
  --radius:14px;
  --radius2:16px;
  color-scheme:dark;
}

html[data-theme="dark"]{
  --bg:#0b0f14;
  --bg2:#111821;
  --card:#151d26;
  --card2:#1c2732;
  --text:#f3f6f8;
  --muted:#93a0ad;
  --line:rgba(255,255,255,.13);
  --line2:rgba(255,255,255,.18);
  --lineSoft:rgba(255,255,255,.08);
  --shadow:0 20px 52px rgba(0,0,0,.28);
  --ui1:rgba(255,255,255,.055);
  --ui2:rgba(255,255,255,.085);
  --ui3:rgba(255,255,255,.13);
  --topbarBg:rgba(11,15,20,.92);
  --floatBg:rgba(21,29,38,.94);
  --sheetBg:#151d26;
  --accent:#c8f36a;
  --accent-2:#55d7c2;
  --accent-3:#ff906b;
  color-scheme:dark;
}

html[data-theme="light"]{
  --bg:#f1eee7;
  --bg2:#e8e4dc;
  --card:#fffdf8;
  --card2:#f7f3eb;
  --text:#18202a;
  --muted:#69727c;
  --line:rgba(24,32,42,.14);
  --line2:rgba(24,32,42,.2);
  --lineSoft:rgba(24,32,42,.08);
  --shadow:0 18px 42px rgba(52,46,36,.11);
  --ui1:rgba(24,32,42,.045);
  --ui2:rgba(24,32,42,.075);
  --ui3:rgba(24,32,42,.12);
  --topbarBg:rgba(241,238,231,.92);
  --floatBg:rgba(255,253,248,.95);
  --sheetBg:#fffdf8;
  --accent:#4458e8;
  --accent-2:#079e94;
  --accent-3:#e86c43;
  --focus:rgba(68,88,232,.2);
  color-scheme:light;
}

body{
  background:
    linear-gradient(120deg,rgba(200,243,106,.045),transparent 30%),
    radial-gradient(700px 420px at 100% 0%,rgba(85,215,194,.09),transparent 65%),
    var(--bg);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
html[data-theme="light"] body{
  background:
    linear-gradient(120deg,rgba(68,88,232,.06),transparent 34%),
    radial-gradient(700px 420px at 100% 0%,rgba(232,108,67,.08),transparent 64%),
    var(--bg);
}
body::before{
  opacity:.08;
  background-image:linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px);
  background-size:34px 34px;
  mask-image:linear-gradient(to bottom,black,transparent 70%);
}
html[data-theme="light"] body::before{
  background-image:linear-gradient(90deg,rgba(24,32,42,.10) 1px,transparent 1px);
}

.topbar{
  box-shadow:0 12px 30px rgba(0,0,0,.18);
  border-bottom:1px solid var(--line);
}
.topbar-inner{max-width:1240px;padding:16px 26px 11px}
.topbar-tabs{max-width:1240px;padding:3px 26px 14px}
.brandMain{gap:13px}
.logo{
  width:44px;height:44px;border-radius:12px;
  background:var(--accent);
  box-shadow:5px 5px 0 var(--accent-3);
}
html[data-theme="light"] .logo{box-shadow:5px 5px 0 var(--accent-3)}
.logo::before{background:rgba(0,0,0,.12)}
.logo::after{background:conic-gradient(from 180deg,transparent,rgba(255,255,255,.52),transparent)}
.logo span{color:#101710;font-size:21px}
.brandText .title{
  font-family:"Space Grotesk",Inter,sans-serif;
  background:none;
  color:var(--text);
  letter-spacing:-.07em;
  text-shadow:none;
  animation:none;
}
.brandText .sub{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:10px}
.iconBtn{
  border-radius:11px;
  background:var(--ui1);
  border-color:var(--line);
  box-shadow:none;
}
.iconBtn:hover{background:var(--ui2);box-shadow:3px 3px 0 var(--accent-3);transform:translate(-1px,-1px)}
.topbar-tabs .seg{
  border-radius:12px;
  padding:4px;
  background:var(--ui1);
  border-color:var(--line);
}
.topbar-tabs .segBtn{border-radius:9px;padding:10px 16px;font-weight:850}
.topbar-tabs .segBtn.active{
  color:#111710;
  background:var(--accent);
  border-color:transparent;
  box-shadow:none;
}
html[data-theme="light"] .topbar-tabs .segBtn.active{color:#fff;background:var(--accent)}

.stage{max-width:1240px;padding:32px 26px 120px}
.stories,.quickHub,.feed,.empty{max-width:860px}
.stories{
  padding:18px 20px 15px;
  border-radius:14px;
  border:1px solid var(--line);
  background:var(--card);
  box-shadow:var(--shadow);
}
.storiesHead{display:flex;align-items:center;gap:12px}
.storiesTitle{
  font-family:"Space Grotesk",Inter,sans-serif;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
}
.storiesHint{margin-right:auto;letter-spacing:.02em}
#btnAddStory.storyAddBtn{border-radius:10px;background:var(--accent);color:#111710;border:0}
.storyCircle{
  width:58px;height:58px;border-radius:14px;
  border:2px solid var(--accent);
  background:var(--card2);
  box-shadow:none;
}
.storyBubble.seen .storyCircle{border-color:var(--line2);opacity:.65}
.storyName{font-size:10px;letter-spacing:.03em;text-transform:uppercase}
.storyAddBubble .storyCircle{background:transparent;border:2px dashed var(--accent);color:var(--accent)}

.quickHub{margin-top:22px}
.quickRow3{gap:10px}
.quickCard{
  min-height:78px;
  border-radius:13px;
  border:1px solid var(--line);
  background:var(--card);
  box-shadow:none;
}
.quickCard:hover{transform:translateY(-2px);border-color:var(--accent);box-shadow:4px 4px 0 var(--accent)}
.quickMini .quickIcon{
  width:42px;height:42px;border-radius:10px;
  background:var(--accent);
  color:#111710;
}
.quickTitle{font-family:"Space Grotesk",Inter,sans-serif;font-size:14px}
.quickSub{font-size:11px;letter-spacing:.03em}

.feed{gap:12px;margin-top:22px}
.card{
  padding:22px;
  border-radius:14px;
  border:1px solid var(--line);
  background:var(--card);
  box-shadow:none;
}
.card:hover{border-color:var(--accent);box-shadow:5px 5px 0 color-mix(in srgb,var(--accent-3) 75%,transparent)}
.cardHead{align-items:flex-start}
.badge{border-radius:6px;padding:5px 8px;font-size:10px;letter-spacing:.05em;text-transform:uppercase}
.badge.hot{background:rgba(85,215,194,.14);border-color:rgba(85,215,194,.38)}
.badge.editor{background:rgba(200,243,106,.14);border-color:rgba(200,243,106,.38)}
.text{
  margin-top:17px;
  font-family:"Space Grotesk",Inter,sans-serif;
  font-size:22px;
  line-height:1.38;
  letter-spacing:-.035em;
}
.media{border-radius:12px;background:var(--bg2);border-color:var(--line)}
.actions{margin-top:18px}
.voteRow{gap:9px}
.btnVote{padding:13px 15px;border-radius:10px;background:var(--ui1)}
.btnVote.yes{border-color:rgba(85,215,194,.48)}
.btnVote.no{border-color:rgba(255,144,107,.48)}
.btn{border-radius:10px;padding:10px 13px}
.primary{
  border-radius:10px;
  background:var(--accent);
  color:#111710;
  box-shadow:none;
}
.primary:hover{background:var(--accent);color:#111710;box-shadow:4px 4px 0 var(--accent-3);transform:translate(-1px,-1px)}
.ghost{border-radius:10px}
.fab{
  right:28px;bottom:28px;width:60px;height:60px;border-radius:14px;
  background:var(--accent);color:#111710;
  box-shadow:5px 5px 0 var(--accent-3);
}
.chatFab{right:106px;bottom:31px;border-radius:13px}

.backdrop{background:rgba(4,7,10,.76);backdrop-filter:blur(8px)}
.sheet{
  border-radius:16px;
  border-color:var(--line);
  background:var(--sheetBg);
  box-shadow:0 28px 90px rgba(0,0,0,.4);
}
.sheetHead,.sheetTop{background:var(--ui1);border-bottom-color:var(--line)}
.sheetTitle{font-family:"Space Grotesk",Inter,sans-serif}
.input,.textarea,#composeText{border-radius:10px;background:var(--ui1);border-color:var(--line)}
.input:focus,.textarea:focus,#composeText:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--focus)}
.comment,.notifItem,.qaCard,.inboxItem,.profileQ{border-radius:12px;background:var(--ui1);border-color:var(--line)}

.profileHero{
  border-radius:14px;
  background:var(--card);
  border-color:var(--line);
  box-shadow:none;
}
.profileAvatar,.profileAvatarImg,.profileAvatarFallback{border-radius:14px}
.profileAvatar{border-color:var(--accent);box-shadow:5px 5px 0 var(--accent-3)}
.profileName{font-family:"Space Grotesk",Inter,sans-serif}
.statPill{border-radius:11px;background:var(--ui1);border-color:var(--line)}
.profileTabs{border-radius:11px;background:var(--ui1);border-color:var(--line)}
.profileTabs .tabBtn{border-radius:8px}
.profileTabs .tabBtn.active{background:var(--accent);color:#111710;box-shadow:none}

.enterBody{
  background:
    radial-gradient(600px 500px at 0% 0%,rgba(200,243,106,.13),transparent 66%),
    radial-gradient(620px 500px at 100% 0%,rgba(85,215,194,.12),transparent 65%),
    var(--bg);
}
.enterWrap{max-width:1120px;padding:52px 26px 74px}
.enterCard{
  gap:30px;
  padding:34px;
  border-radius:18px;
  border:1px solid var(--line);
  background:var(--card);
  box-shadow:12px 12px 0 rgba(200,243,106,.18);
}
html[data-theme="light"] .enterCard{background:var(--card);border-color:var(--line);box-shadow:12px 12px 0 rgba(232,108,67,.2)}
.enterLogo{border-radius:14px;background:var(--accent);box-shadow:6px 6px 0 var(--accent-3)}
.enterLogo span{color:#111710}
.enterTitle{font-family:"Space Grotesk",Inter,sans-serif;font-size:28px}
.enterHighlights,.enterTour,.enterRules{
  border-radius:13px;
  background:var(--card2);
  border-color:var(--line);
}
.tourNo{background:var(--accent);color:#111710;border-color:transparent}
.mockCard{border-radius:12px;background:var(--card);border-color:var(--line);box-shadow:none}

.adminCard{background:var(--card)!important;border-radius:14px!important}
.adminCard .tab{border-radius:9px;background:var(--ui1);border-color:var(--line)}
.adminCard .tab.active{background:var(--accent);color:#111710;border-color:transparent}

@media (max-width:720px){
  .topbar-inner{padding:12px 14px 9px}
  .topbar-tabs{padding:2px 14px 11px}
  .stage{padding:17px 13px 108px}
  .card{padding:17px;border-radius:13px}
  .text{font-size:19px}
  .stories{border-radius:13px}
  .enterWrap{padding:20px 13px 42px}
  .enterCard{padding:19px;border-radius:15px;box-shadow:7px 7px 0 rgba(200,243,106,.18)}
  html[data-theme="light"] .enterCard{box-shadow:7px 7px 0 rgba(232,108,67,.2)}
  .fab{right:16px;bottom:calc(16px + env(safe-area-inset-bottom))}
}