/* Bavaria Roleplay public UI V30 — restrained, editorial, consistent */
:root{--pub-bg:#0b0f13;--pub-panel:#11161c;--pub-panel-2:#151b22;--pub-line:#242c35;--pub-line-2:#303a45;--pub-text:#f3f5f7;--pub-muted:#94a0ad;--pub-soft:#c4cbd3;--pub-accent:#e62b55;--pub-radius:10px}
.public-page{background:var(--pub-bg)!important;color:var(--pub-text)!important}
.public-page .pg-section{padding:34px 0!important}
.public-page .pg-container{max-width:var(--site-max)!important}
.public-page .pg-hero{padding:34px 0 28px!important;background:#0d1217!important}
.public-page .pg-hero-inner{text-align:left!important}
.public-page .pg-hero-eyebrow{margin-bottom:7px!important;color:#bdc6d0!important;font-size:.66rem!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.public-page .pg-hero-eyebrow::before{background:var(--pub-accent)!important;width:12px!important}
.public-page .pg-hero-h1{font:750 clamp(1.9rem,3.2vw,2.6rem)/1.08 Inter,sans-serif!important;letter-spacing:-.045em!important;text-transform:none!important;margin:0!important}
.public-page .pg-hero-sub{margin:9px 0 0!important;max-width:720px!important;font-size:.88rem!important;line-height:1.65!important;color:var(--pub-muted)!important}
.public-page .pg-hero-deco{display:none!important}

/* home stats */
.public-page .statsbar{border-top:1px solid var(--pub-line)!important;border-bottom:1px solid var(--pub-line)!important;background:#0d1217!important}
.public-page .statsbar-inner{max-width:var(--site-max)!important;display:grid!important;grid-template-columns:repeat(4,1fr)!important}
.public-page .sb-item{padding:17px 20px!important;border-right:1px solid var(--pub-line)!important;text-align:left!important}
.public-page .sb-item:last-child{border-right:0!important}
.public-page .sb-val{font:750 1.1rem/1.2 Inter,sans-serif!important;color:var(--pub-text)!important}
.public-page .sb-label{font-size:.67rem!important;letter-spacing:.02em!important;text-transform:none!important;color:var(--pub-muted)!important;margin-top:3px!important}

/* shared tabs / filters */
.public-page .rf-btn,.public-page .faq-cats .rf-btn,.public-page .cl-page-filters .rf-btn{
 min-height:36px!important;padding:0 13px!important;border-radius:7px!important;background:#11161c!important;border:1px solid var(--pub-line)!important;color:#aab3bd!important;font:650 .7rem Inter,sans-serif!important;letter-spacing:.02em!important;text-transform:none!important;box-shadow:none!important
}
.public-page .rf-btn:hover{border-color:var(--pub-line-2)!important;color:#fff!important}
.public-page .rf-btn.active{background:#202731!important;border-color:#3a4551!important;color:#fff!important}

/* faction directory */
.public-page-fraktionen .frak-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
.public-page-fraktionen .frak-card{min-height:164px!important;display:grid!important;grid-template-columns:150px minmax(0,1fr)!important;border:1px solid var(--pub-line)!important;border-top:1px solid var(--pub-line)!important;border-radius:var(--pub-radius)!important;background:var(--pub-panel)!important;box-shadow:none!important;transform:none!important}
.public-page-fraktionen .frak-card::before{display:none!important}
.public-page-fraktionen .frak-card:hover{transform:none!important;border-color:var(--pub-line-2)!important;box-shadow:none!important}
.public-page-fraktionen .frak-banner{height:auto!important;min-height:164px!important;background:#0d1217!important;border-right:1px solid var(--pub-line)!important;font:800 1.35rem Inter,sans-serif!important;letter-spacing:-.03em!important;text-transform:none!important;opacity:1!important;color:#dce2e8!important}
.public-page-fraktionen .frak-banner img{object-fit:cover!important}
.public-page-fraktionen .frak-body{padding:18px!important;gap:7px!important}
.public-page-fraktionen .frak-type{border-radius:5px!important;font-size:.59rem!important;padding:3px 7px!important}
.public-page-fraktionen .frak-name{font-size:1rem!important;font-weight:750!important}
.public-page-fraktionen .frak-desc{font-size:.78rem!important;line-height:1.55!important;color:var(--pub-muted)!important}
.public-page-fraktionen .frak-meta{justify-content:flex-start!important;margin-top:auto!important;padding-top:10px!important}
.public-page-fraktionen .frak-meta .btn{background:#171d24!important;border:1px solid var(--pub-line)!important;color:#d9dfe6!important;box-shadow:none!important}
.public-page-fraktionen .tcs-label{margin:22px 0 10px!important;font-size:.66rem!important;color:#aab3bd!important}
.public-page-fraktionen .public-cta{margin-top:28px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:24px!important;padding:20px!important;background:var(--pub-panel)!important;border:1px solid var(--pub-line)!important;border-radius:var(--pub-radius)!important;text-align:left!important}
.public-page-fraktionen .public-cta h3{font:750 1.05rem Inter,sans-serif!important;text-transform:none!important;margin:0 0 5px!important}
.public-page-fraktionen .public-cta p{margin:0!important;font-size:.78rem!important;color:var(--pub-muted)!important}

/* event system */
.events-section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:14px}
.events-section-head h2{font:750 1.25rem Inter,sans-serif;margin:0;letter-spacing:-.025em}
.events-section-head p{font-size:.76rem;color:var(--pub-muted);margin:4px 0 0}
.event-grid-v30{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.event-card-v30{background:var(--pub-panel);border:1px solid var(--pub-line);border-radius:var(--pub-radius);padding:17px;min-height:178px;display:flex;flex-direction:column}
.event-card-v30:hover{border-color:var(--pub-line-2)}
.event-card-v30__top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:14px}
.event-card-v30__type{font-size:.6rem;font-weight:750;color:#cbd3dc;background:#1a2129;border:1px solid var(--pub-line);border-radius:5px;padding:3px 7px}
.event-card-v30__date{font-size:.68rem;color:var(--pub-muted)}
.event-card-v30 h3{font-size:.92rem;margin:0 0 6px;font-weight:730}
.event-card-v30 p{font-size:.77rem;line-height:1.55;color:var(--pub-muted);margin:0 0 14px}
.event-card-v30__time{margin-top:auto;padding-top:11px;border-top:1px solid var(--pub-line);font-size:.72rem;color:#c7ced6}
.event-archive-v30{border:1px solid var(--pub-line);border-radius:var(--pub-radius);overflow:hidden;background:var(--pub-panel)}
.event-archive-row-v30{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:13px 15px;border-bottom:1px solid var(--pub-line)}
.event-archive-row-v30:last-child{border-bottom:0}.event-archive-row-v30 b{font-size:.8rem}.event-archive-row-v30 p{font-size:.7rem;color:var(--pub-muted);margin:3px 0 0}.event-archive-row-v30 time{font-size:.68rem;color:var(--pub-muted)}

/* changelog */
.public-page-changelogs .cl-page-filters{margin-bottom:14px!important}
.public-page-changelogs .cl-entry-page{border:1px solid var(--pub-line)!important;border-left:1px solid var(--pub-line)!important;border-radius:var(--pub-radius)!important;background:var(--pub-panel)!important;box-shadow:none!important;margin-bottom:8px!important}
.public-page-changelogs .cl-entry-page:hover{box-shadow:none!important;border-color:var(--pub-line-2)!important}
.public-page-changelogs .cl-ep-header{padding:13px 15px!important}
.public-page-changelogs .cl-ep-version{background:#192029!important;border:1px solid var(--pub-line)!important;color:#cbd5df!important;border-radius:5px!important}
.public-page-changelogs .cl-ep-title{font-size:.88rem!important;font-weight:700!important;color:var(--pub-text)!important}
.public-page-changelogs .cl-ep-date{font-size:.68rem!important;color:var(--pub-muted)!important}
.public-page-changelogs .cl-ep-arrow{color:var(--pub-muted)!important}
.public-page-changelogs .cl-ep-header:hover{background:#161c23!important}
.public-page-changelogs .cl-ep-header:hover .cl-ep-arrow{color:var(--pub-soft)!important}
.public-page-changelogs .cl-ep-body{background:#0f1419!important;padding:13px 15px 15px!important;border-top:1px solid var(--pub-line)!important}
.public-page-changelogs .cl-ep-desc{font-size:.83rem!important;line-height:1.62!important;color:var(--pub-soft)!important;margin-bottom:.8rem!important}
.public-page-changelogs .cl-ep-items{gap:.4rem!important}
.public-page-changelogs .cl-ep-item{font-size:.83rem!important;line-height:1.55!important;color:var(--pub-soft)!important}
.public-page-changelogs .cl-ep-dot{margin-top:.5rem!important}
.public-page-changelogs .cl-ep-author{font-size:.71rem!important;color:var(--pub-muted)!important;border-top:1px solid var(--pub-line)!important;padding-top:.7rem!important;margin-top:1rem!important}

/* faq */
.public-page-faq .faq-layout{display:grid!important;grid-template-columns:220px minmax(0,1fr)!important;gap:18px!important;align-items:start!important}
.public-page-faq .faq-cats{display:flex!important;flex-direction:column!important;gap:5px!important;position:sticky!important;top:78px!important}
.public-page-faq .faq-cats .rf-btn{text-align:left!important;justify-content:flex-start!important;width:100%!important}
.public-page-faq .faq-list{max-width:none!important}
.public-page-faq .faq-item{border:1px solid var(--pub-line)!important;border-radius:8px!important;background:var(--pub-panel)!important;margin-bottom:7px!important}
.public-page-faq .faq-q{padding:13px 15px!important;font-size:.8rem!important}.public-page-faq .faq-a{padding:12px 15px 14px!important;font-size:.77rem!important;color:var(--pub-soft)!important}
.public-page-faq .faq-help-card{margin-top:20px!important;padding:16px!important;background:var(--pub-panel)!important;border:1px solid var(--pub-line)!important;border-radius:var(--pub-radius)!important}

/* support */
.support-options-v30{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.support-option-v30{background:var(--pub-panel);border:1px solid var(--pub-line);border-radius:var(--pub-radius);padding:18px;display:flex;flex-direction:column;min-height:250px}
.support-option-v30__icon{width:36px;height:36px;border:1px solid var(--pub-line);border-radius:8px;display:grid;place-items:center;background:#171d24;color:#dbe2e9;margin-bottom:14px}
.support-option-v30 h2{font-size:.94rem;margin:0 0 7px}.support-option-v30 p{font-size:.77rem;line-height:1.55;color:var(--pub-muted);margin:0 0 12px}
.support-option-v30 ul{list-style:none;padding:0;margin:0 0 16px;display:grid;gap:7px}.support-option-v30 li{font-size:.7rem;color:#b9c2cc}
.support-option-v30 .btn{margin-top:auto;box-shadow:none!important;border-radius:7px!important}
.support-hours-v30{margin-top:18px;background:var(--pub-panel);border:1px solid var(--pub-line);border-radius:var(--pub-radius);padding:18px}
.support-hours-v30__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.support-hour-v30{padding:11px;background:#0e1318;border:1px solid var(--pub-line);border-radius:7px}.support-hour-v30 b{display:block;font-size:.68rem}.support-hour-v30 span{font-size:.72rem;color:var(--pub-muted)}

/* footer */
.public-page .footer{background:#0a0e12!important;border-top:1px solid var(--pub-line)!important;padding:32px 0 20px!important}
.public-page .footer-grid{grid-template-columns:1.6fr repeat(3,1fr)!important;gap:28px!important;padding-bottom:22px!important;margin-bottom:16px!important}
.public-page .footer-name{font:750 .9rem Inter,sans-serif!important}.public-page .fg-desc{font-size:.76rem!important;line-height:1.55!important;margin:.65rem 0 .8rem!important}.public-page .fg-discord{background:#171d24!important;border:1px solid var(--pub-line)!important;box-shadow:none!important;border-radius:7px!important;color:#dce3ea!important}
.public-page .fg-col-title{text-transform:none!important;letter-spacing:.02em!important;font-size:.7rem!important;color:#d3dae2!important}.public-page .fg-col a{font-size:.75rem!important;padding:3px 0!important}.public-page .footer-bottom{font-size:.68rem!important}

@media(max-width:900px){.public-page-fraktionen .frak-grid,.event-grid-v30,.support-options-v30{grid-template-columns:1fr!important}.public-page-fraktionen .frak-card{grid-template-columns:120px minmax(0,1fr)!important}.public-page-faq .faq-layout{grid-template-columns:1fr!important}.public-page-faq .faq-cats{position:static!important;flex-direction:row!important;overflow-x:auto!important}.support-hours-v30__grid{grid-template-columns:repeat(2,1fr)!important}.public-page .footer-grid{grid-template-columns:1fr 1fr!important}}
@media(max-width:640px){.public-page .statsbar-inner{grid-template-columns:1fr 1fr!important}.public-page-home .sb-item:nth-child(2){border-right:0!important}.public-page .sb-item:nth-child(-n+2){border-bottom:1px solid var(--pub-line)!important}.public-page-fraktionen .frak-card{grid-template-columns:1fr!important}.public-page-fraktionen .frak-banner{min-height:130px!important;border-right:0!important;border-bottom:1px solid var(--pub-line)!important}.public-page-fraktionen .public-cta{display:block!important}.public-page-fraktionen .public-cta>div:last-child{margin-top:14px!important;justify-content:flex-start!important}.support-hours-v30__grid{grid-template-columns:1fr!important}.public-page .footer-grid{grid-template-columns:1fr!important}}
