/* Riverside: restrained petrol, balanced typography and responsive layout. */
:root { --accent:#348d80; --accent-bright:#a0d3c9; --cyan:#a0d3c9; --discord:#073f3a; --surface:#101a1b; --border:#ffffff14; --muted:#a1b2ad; }
body,.view[data-view="/"] { background:#080f10; color:#f2f4f0; font-family:Arial,Helvetica,sans-serif; }
.hero::before,.hero::after,.cta-card::before,.join-grid::before,.join-step::after { display:none; }
.container { max-width:1200px; padding-inline:28px; }
.site-header,.site-header.scrolled { inset:18px 24px auto; height:68px; border:0; background:transparent; backdrop-filter:none; }
.nav-container,.site-header.scrolled .nav-container { max-width:1190px; height:68px; padding:0 24px; gap:20px; border:1px solid #ffffff16; border-radius:14px; background:#0b1615ed; box-shadow:0 12px 32px #0003; backdrop-filter:blur(20px); }
.brand { gap:10px; font-size:17px; letter-spacing:-.4px; text-transform:none; }
.brand img { width:40px; height:40px; border:0; border-radius:0; box-shadow:none; filter:none; }
.global-status { display:none; }
.main-nav { margin-left:auto; gap:4px; }
.main-nav a { padding:12px 10px; font-size:12px; font-weight:500; text-transform:none; letter-spacing:0; color:#a6b7b3; }
.main-nav a::before,.main-nav a.active::after { display:none; }
.main-nav a.active { color:#fff; background:#ffffff09; border-radius:6px; }
.login-link,.login-link:hover { padding:11px 17px; border:1px solid #659f8d42; border-radius:7px; background:#073f3a; color:#fff; box-shadow:none; font-size:12px; }
main { padding-top:0; }
.hero { min-height:750px; height:min(860px,95vh); max-height:none; display:flex; align-items:center; justify-content:center; background:#080f10; }
.hero-image { inset:0; background-position:center 42%; transform:none; filter:saturate(.9); }
.hero-shade { background:linear-gradient(180deg,#07111e80 0%,#09142666 30%,#07121d99 65%,#080f10 100%); }
.hero-content { display:block; width:100%; max-width:940px; min-height:0; margin:0 auto; padding:128px 28px 90px; text-align:center; }
.hero-logo { display:none; }
.hero-kicker { padding:0; margin:0 0 24px; border:0; background:none; box-shadow:none; color:#d1e7df; font-size:11px; font-weight:600; letter-spacing:.18em; }
.hero-kicker i { width:5px; height:5px; background:#a0d3c9; box-shadow:none; }
.hero h1 { max-width:850px; margin:0 auto 25px; font-size:clamp(46px,5.2vw,76px); line-height:1.08; font-weight:600; letter-spacing:-.045em; text-wrap:balance; }
.hero h1 span { color:#87cfff; background:none; -webkit-text-fill-color:currentColor; }
.hero p { max-width:520px; margin:0 auto 31px; font-size:16px; line-height:1.8; color:#cad3ce; }
.actions,.hero .actions { justify-content:center; gap:12px; }
.button { min-height:47px; padding:12px 23px; border-radius:7px; font-size:13px; font-weight:600; letter-spacing:0; text-transform:none; box-shadow:none; }
.discord,.discord:hover,.admin-button.primary,.dash-button.primary { color:#fff; border:1px solid #83cfff50; background:#1267a8; box-shadow:none; }
.discord:hover,.admin-button.primary:hover,.dash-button.primary:hover { background:#197abf; }
.secondary,.secondary:hover { background:#132221bf; border:1px solid #ffffff28; box-shadow:none; }
.outline,.outline:hover { color:#cfdfd8; border:1px solid #ffffff24; background:transparent; }
.status-pill { margin-top:27px; padding:0; border:0; background:none; box-shadow:none; color:#b6c5bf; font-size:12px; }
.status-pill .status-dot,.story-status .status-dot { background:#7c8783; box-shadow:none; }
.status-dot.online { background:#59c299; box-shadow:none; }
.status-dot.offline { background:#e27d7d; box-shadow:none; }
.stats { position:relative; max-width:1150px; margin:-25px auto 0; padding:0 28px 24px; z-index:2; }
.stats-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; padding:8px 0; border:1px solid #ffffff12; border-radius:12px; background:#101a1b; box-shadow:0 16px 50px #0002; }
.stats-grid .stat { display:flex; flex-direction:row; justify-content:center; align-items:center; min-height:100px; padding:15px 24px; border:0; border-radius:0; background:transparent; box-shadow:none; text-align:left; }
.stats-grid .stat + .stat { border-left:1px solid #ffffff10; }
.stat::before,.stat-icon { display:none; }
.stat p { color:#96aaa4; font-size:10px; font-weight:500; letter-spacing:.08em; }
.stat strong { font-size:25px; font-weight:500; }
.section { padding-block:70px; }
.section-heading { max-width:730px; margin:0 auto 34px; text-align:center; }
.section-heading h2,.cta-card h2,.home-story-copy h2 { font-size:clamp(28px,3vw,39px); line-height:1.2; font-weight:500; letter-spacing:-.035em; background:none; color:#f2f4f0; -webkit-text-fill-color:currentColor; }
.section-heading p { color:#9cada7; font-size:14px; line-height:1.8; }
.section-kicker { display:inline-block; padding:0; margin-bottom:13px; border:0; border-radius:0; background:none; box-shadow:none; color:#85c6ee; font-size:10px; letter-spacing:.15em; }
.section-kicker::before,.section-kicker::after { display:none; }
.glass { backdrop-filter:none; border-color:#ffffff12; background:#101a1b; box-shadow:none; }
.join-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; border:0; }
.join-step { min-height:240px; padding:27px!important; border:1px solid #ffffff12!important; border-radius:10px!important; background:#101a1b!important; box-shadow:none!important; }
.join-step .feature-icon { position:static; width:38px; height:38px; margin:0 0 20px; border:0; border-radius:8px; box-shadow:none; background:#17312b; color:#9cc5b6; }
.step-number { top:25px; right:25px; font-size:16px; color:#728b80; }
.join-step h3,.feature h3 { margin-top:0; font-size:17px; font-weight:500; }
.join-step p,.feature p { min-height:0; font-size:13px; line-height:1.8; color:#9fafa9; }
.join-step:hover,.feature:hover { transform:none; border-color:#84ad9b44!important; }
.muted-link { color:#8fcdf6; font-size:12px; }
.home-story-card { display:grid; grid-template-columns:1fr 1fr; min-height:430px; border-radius:12px; overflow:hidden; }
.home-story-copy { padding:44px; }
.home-story-media { min-height:430px; }
.home-story-media::after { background:linear-gradient(90deg,#101a1b44,transparent); }
.home-checklist li span { color:#aad6c4; background:#19382d; box-shadow:none; }
.home-story-copy > p { font-size:14px; }
.story-status { background:#0d1c18e6; border:1px solid #ffffff18; border-radius:7px; }
.feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.feature { min-height:210px; padding:25px; border-radius:10px; background:#101a1b; }
.feature-icon { color:#a0c8b8; background:#19332b; border:0; border-radius:8px; width:38px; height:38px; }
.home-news-card,.rules-card,.content-card,.info-card,.faq-list details { border-radius:10px; background:#101a1b; }
.home-news-empty { min-height:200px; background:#101a1b; }
.rules-list li > span.rule-number { background:#1b352d; color:#b0d6c5; box-shadow:none; }
.rules-list li > span.rule-summary { background:none; box-shadow:none; color:#bcc9c3; }
.community-card,.cta-card { background:#073f3a; border:1px solid #73a99a25; border-radius:12px; box-shadow:none; }
.community-icon { color:#d2e8dd; background:#ffffff0a; box-shadow:none; border-radius:12px; }
.community-card p,.cta-card p { color:#b0cbc0; }
.community-card h2 { font-size:29px; font-weight:500; }
.faq-list { grid-template-columns:1fr; }
.faq-list details[open] { border-color:#80a89644; background:#101a1b; }
.faq-list summary span { color:#bad4c6; background:none; }
.tag { color:#bdd7c9; background:#19382e; }
.site-footer { background:#070d0c; border-top:1px solid #ffffff0d; }
.footer-grid { padding-block:45px; }
.footer-links h2 { color:#a0b7ab; }
.footer-bottom { border-color:#ffffff0d; }
.subpage { padding-top:135px; background:none; }
.page-heading h1 { font-size:42px; font-weight:500; }
.login-page,.dashboard-view,.admin-view { background:#080f10; }
.login-card::before { display:none; }
.dashboard-view,.admin-view { padding-top:100px; }
.dashboard-sidebar,.admin-sidebar { background:#0b1513; }
.dash-card,.admin-panel,.admin-metric { background:#101a1b; border-color:#ffffff14; box-shadow:none; }
.dashboard-nav a.active,.admin-nav-item.active,.ticket-list-item.active,.ticket-category.active { color:#d5e8dd; background:#073f3a; }
.admin-hero h1 span,.admin-kicker,.admin-eyebrow { color:#a0d3c9; }
.admin-nav-item.active::before,.changelog-card::before { background:#348d80; }
.cookie-banner { background:#101b18f7; }
@media(max-width:1100px) { .nav-container { gap:10px; padding-inline:16px; } .main-nav a { padding-inline:7px; font-size:11px; } }
@media(max-width:900px) {
 .site-header,.site-header.scrolled { inset:12px 12px auto; height:62px; }
 .nav-container { height:62px; border-radius:10px; }
 .main-nav { top:69px; background:#101c18fa; border:1px solid #ffffff18; border-radius:10px; }
 .hero { min-height:710px; height:auto; }
 .hero-content { padding:150px 24px 100px; }
 .home-story-copy { padding:28px; }
}
@media(max-width:767px) {
 .hero h1 { font-size:48px; }
 .hero p { font-size:14px; max-width:420px; }
 .stats-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .stats-grid .stat { min-height:90px; padding:15px; }
 .stats-grid .stat:nth-child(3) { border-left:0; }
 .stats-grid .stat:nth-child(n+3) { border-top:1px solid #ffffff10; }
 .section { padding-block:45px; }
 .join-grid,.feature-grid { grid-template-columns:1fr; }
 .join-step { min-height:220px; }
 .home-story-card { grid-template-columns:1fr; }
 .home-story-media { min-height:260px; max-height:300px; }
 .home-story-copy h2 { font-size:30px; }
 .feature { min-height:170px; }
}
@media(max-width:420px) { .hero h1 { font-size:40px; } .hero .actions { flex-direction:column; align-items:stretch; } .hero-kicker { font-size:9px; } .container { padding-inline:20px; } .brand { font-size:14px; } }
