@font-face{font-family:Grenze;src:url('/assets/game/fonts/grenze-bold.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:Grenze;src:url('/assets/game/fonts/grenze-semibold.ttf') format('truetype');font-weight:600;font-display:swap}
:root{color-scheme:dark;--panel:rgba(9,27,47,.92);--panel-soft:rgba(13,38,64,.82);--gold:#8f7441;--border:#39516c;--text:#f4f5f7;--muted:#aebbc8;--accent:#d7bd77}
*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{min-height:100vh;color:var(--text);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:linear-gradient(rgba(3,10,20,.72),rgba(3,10,20,.9)),url('/assets/game/backgrounds/roguebook.png') center/cover fixed}
.page-shell{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:44px 0 64px}.hero{text-align:center;margin:0 auto 32px}.hero-seal{width:112px;height:112px;object-fit:contain}.eyebrow{margin:8px 0 0;color:var(--accent);font-size:.8rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.hero h1,.content-panel h2{font-family:Grenze,serif}.hero h1{margin:0;font-size:clamp(2.7rem,7vw,5rem);line-height:.95}.hero-copy{margin:12px auto 0;color:var(--muted);font-size:1.05rem}.content-panel{padding:26px;background:var(--panel);border:1px solid var(--gold);box-shadow:0 14px 40px rgba(0,0,0,.3)}.content-panel h2{margin:0;font-size:2rem}.content-panel>p{margin:4px 0 22px;color:var(--muted)}.timeline-placeholder{min-height:150px;display:grid;place-items:center;color:var(--muted);background:var(--panel-soft);border:1px solid var(--border);text-align:center;padding:20px}
@media(max-width:600px){.page-shell{width:min(100% - 20px,1180px);padding-top:24px}.hero-seal{width:88px;height:88px}.content-panel{padding:18px}.hero-copy{font-size:.95rem}}
.timeline-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.timeline-loading,.timeline-error{grid-column:1/-1;min-height:150px;display:grid;place-items:center;color:var(--muted);background:var(--panel-soft);border:1px solid var(--border);padding:20px;text-align:center}.timeline-card{min-width:0;padding:20px;background:var(--panel-soft);border:1px solid var(--border);box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)}.card-heading{display:flex;justify-content:space-between;gap:12px}.timeline-card h3{font-family:Grenze,serif;font-size:2rem;line-height:1;margin:5px 0 0}.status{display:inline-block;color:var(--muted);font-size:.68rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.status-active{color:var(--accent)}.description{min-height:3.9em;color:var(--muted);line-height:1.45}.run-info{display:flex;flex-direction:column;gap:4px;padding:13px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.run-info span,.server span{color:var(--muted);font-size:.8rem}.variants{display:flex;flex-wrap:wrap;gap:7px;padding:14px 0}.variant{min-width:32px;padding:5px 7px;text-align:center;border:1px solid var(--border);font-size:.78rem}.variant.default{color:var(--accent);border-color:var(--gold)}.server{display:flex;flex-direction:column;gap:4px}.server code{overflow-wrap:anywhere;color:var(--text);font-size:.78rem}@media(max-width:850px){.timeline-grid{grid-template-columns:1fr}.description{min-height:0}}
.countdown{color:var(--accent)!important;font-weight:700}.variants{align-items:center}.variant{position:relative;width:42px;height:42px;padding:0;border:0;background:transparent}.variant img{width:42px;height:42px;object-fit:contain;opacity:.72}.variant b{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:.72rem;text-shadow:0 1px 3px #000}.variant.default img{opacity:1}.variant.default{outline:1px solid var(--accent);outline-offset:2px}.server-row{display:flex;align-items:center;gap:8px;min-width:0}.server-row code{flex:1;min-width:0}.copy-server{flex:0 0 auto;min-height:32px;padding:5px 11px;color:var(--accent);font:inherit;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;background:rgba(7,19,34,.75);border:1px solid var(--gold);cursor:pointer}.copy-server:hover{background:rgba(143,116,65,.18)}.copy-server:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:420px){.server-row{align-items:stretch;flex-direction:column}.copy-server{align-self:flex-start;min-height:38px}}
.variant{appearance:none;cursor:pointer;font:inherit;color:inherit}.variant:hover img{opacity:1}.variant.selected{outline:1px solid var(--accent);outline-offset:2px}.variant.selected img{opacity:1}.variant:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:600px){.page-shell{padding-top:16px}.hero{margin-bottom:20px}.hero-seal{width:72px;height:72px}.eyebrow{margin-top:3px}.hero h1{font-size:clamp(2.35rem,11vw,3.35rem)}.hero-copy{margin-top:8px}.content-panel{padding:16px}.content-panel h2{font-size:1.75rem}.content-panel>p{margin-bottom:16px}.timeline-card{padding:16px}.timeline-card h3{font-size:1.8rem}.description{margin-top:12px;margin-bottom:14px}.variants{padding:12px 0}}
.schedule-info{display:flex;flex-direction:column;gap:3px;margin:0 0 14px;padding:10px 12px;background:rgba(7,19,34,.48);border-left:2px solid var(--gold)}.schedule-info span{color:var(--accent);font-size:.68rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.schedule-info strong{font-size:.82rem;font-weight:500;line-height:1.35;color:var(--text)}
.service-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:20px;padding:20px 24px;background:var(--panel);border:1px solid var(--border)}.service-panel .eyebrow{margin:0 0 2px}.service-panel h2{margin:0;font-family:Grenze,serif;font-size:1.7rem}.service-copy{margin:3px 0 0;color:var(--muted);font-size:.86rem}.service-version{margin-left:.35rem;opacity:.65;white-space:nowrap}.service-status{display:flex;align-items:center;gap:10px;min-width:170px;padding:10px 12px;background:var(--panel-soft);border:1px solid var(--border)}.service-status div{display:flex;flex-direction:column}.service-status strong{font-size:.82rem}.service-status small{color:var(--muted)}.status-dot{width:9px;height:9px;border-radius:50%;background:var(--muted);box-shadow:0 0 8px currentColor}.service-status.ready .status-dot{background:#72c58b}.service-status.unavailable .status-dot{background:#c45c5c}@media(max-width:600px){.service-panel{align-items:stretch;flex-direction:column;gap:14px;padding:16px}.service-status{min-width:0}}
.help-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}.help-block{padding:20px 24px;background:var(--panel);border:1px solid var(--border)}.help-block .eyebrow{margin:0 0 3px}.help-block h2{margin:0;font-family:Grenze,serif;font-size:1.65rem}.help-block p:last-child{margin:8px 0 0;color:var(--muted);font-size:.88rem;line-height:1.5}.help-block strong{color:var(--text)}@media(max-width:700px){.help-panel{grid-template-columns:1fr;gap:12px}.help-block{padding:16px}.help-block h2{font-size:1.5rem}}

.site-nav{width:min(1180px,calc(100% - 32px));min-height:64px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid rgba(143,116,65,.45)}.site-nav a{text-decoration:none}.brand{color:var(--text);font-family:Grenze,serif;font-size:1.45rem;font-weight:700}.nav-links{display:flex;align-items:center;gap:6px}.nav-links a{padding:8px 12px;color:var(--muted);font-size:.82rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border:1px solid transparent}.nav-links a:hover,.nav-links a.active{color:var(--accent);border-color:var(--gold);background:rgba(9,27,47,.72)}
.home-shell{padding-top:32px}.home-hero{max-width:850px;margin-bottom:34px}.home-hero .hero-copy{max-width:680px;line-height:1.55}.hero-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:22px}.primary-action,.secondary-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;text-decoration:none;font-weight:800;letter-spacing:.04em}.primary-action{color:#101722;background:var(--accent);border:1px solid var(--accent)}.primary-action:hover{filter:brightness(1.08)}.secondary-action{color:var(--accent);background:rgba(9,27,47,.72);border:1px solid var(--gold)}.secondary-action:hover{background:rgba(143,116,65,.18)}
.intro-panel{max-width:920px;margin:0 auto}.intro-panel .eyebrow{margin:0 0 4px}.intro-panel>p:not(.eyebrow){max-width:820px;color:var(--muted);line-height:1.6}.intro-panel strong{color:var(--text)}
.home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:20px}.home-card{position:relative;padding:22px 24px;background:var(--panel);border:1px solid var(--border);overflow:hidden}.home-card .step-number{position:absolute;right:16px;top:6px;color:rgba(215,189,119,.12);font-family:Grenze,serif;font-size:4rem;font-weight:700;line-height:1}.home-card .eyebrow{margin:0 0 3px}.home-card h2{position:relative;margin:0;font-family:Grenze,serif;font-size:1.7rem}.home-card p:not(.eyebrow){position:relative;color:var(--muted);font-size:.9rem;line-height:1.55}.home-card a{position:relative;color:var(--accent);font-size:.82rem;font-weight:700;text-decoration:none}.home-card a:hover{text-decoration:underline}
.section-hero{max-width:850px;margin:0 auto 28px;text-align:center}.section-hero h1{margin:0;font-family:Grenze,serif;font-size:clamp(2.5rem,6vw,4.3rem);line-height:1}.section-hero>p:last-child{max-width:700px;margin:10px auto 0;color:var(--muted);line-height:1.55}
.download-panel{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:26px;background:var(--panel);border:1px solid var(--gold)}.download-panel .eyebrow{margin:0 0 3px}.download-panel h2{margin:0;font-family:Grenze,serif;font-size:2rem}.download-panel p:last-child{max-width:720px;margin:7px 0 0;color:var(--muted);line-height:1.5}.download-action{flex:0 0 auto}.setup-steps{margin-top:18px}
@media(max-width:700px){.site-nav{width:min(100% - 20px,1180px);min-height:58px;gap:10px}.brand{font-size:1.15rem}.nav-links{gap:1px}.nav-links a{padding:7px 8px;font-size:.7rem}.home-grid{grid-template-columns:1fr;gap:12px}.download-panel{align-items:stretch;flex-direction:column;padding:18px}.download-action{align-self:flex-start}.section-hero{margin-bottom:20px}.home-shell{padding-top:20px}}

.discovery-card{display:flex;flex-direction:column}.discovery-card .timeline-link{display:inline-flex;align-self:flex-start;margin-top:auto;padding-top:16px;color:var(--accent);font-size:.85rem;font-weight:800;text-decoration:none}.discovery-card .timeline-link:hover{text-decoration:underline}.breadcrumbs{display:flex;align-items:center;gap:8px;margin:0 0 22px;color:var(--muted);font-size:.82rem}.breadcrumbs a{color:var(--accent);text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}.timeline-detail-hero{margin-bottom:22px}.timeline-config,.active-run-panel,.connection-panel{background:var(--panel);border:1px solid var(--border);padding:24px}.timeline-config{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:16px}.timeline-config .eyebrow,.active-run-panel .eyebrow,.connection-panel .eyebrow{margin:0 0 3px}.timeline-config h2,.active-run-panel h2,.connection-panel h2{margin:0;font-family:Grenze,serif;font-size:1.8rem}.timeline-config p:last-child,.active-run-panel p,.connection-panel p{margin-bottom:0;color:var(--muted);line-height:1.5}.active-run-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:16px;border-color:var(--gold)}.active-run-panel .countdown{display:inline-block;margin-top:12px;color:var(--accent)}.run-seal img{width:100px;height:100px;object-fit:contain;opacity:.72}.empty-run{border-color:var(--border)}.connection-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);align-items:center;gap:28px}.connection-panel .variants{margin-top:16px}.timeline-server{margin:0}.timeline-error a{color:var(--accent)}
@media(max-width:700px){.timeline-config,.active-run-panel{align-items:flex-start}.run-seal{display:none}.connection-panel{grid-template-columns:1fr;gap:18px}.timeline-config{flex-direction:column}.breadcrumbs{margin-bottom:16px}}

.run-overview{display:grid;grid-template-columns:minmax(260px,40%) 1fr;gap:28px;align-items:center;padding:24px;background:var(--panel);border:1px solid var(--gold)}.party-art img{display:block;width:100%;max-height:270px;object-fit:contain}.run-overview-copy h2,.tournament-section h2{margin:0;font-family:Grenze,serif;font-size:2rem}.run-facts{display:flex;flex-wrap:wrap;gap:18px;margin:18px 0}.run-facts span{display:flex;flex-direction:column;color:var(--muted);font-size:.82rem}.run-facts b{color:var(--text);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.tournament-section{margin-top:18px;padding:24px;background:var(--panel);border:1px solid var(--border)}.modifier-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.modifier-detail{display:flex;gap:14px;align-items:center;padding:12px;background:rgba(6,17,29,.55);border:1px solid rgba(143,116,65,.35)}.modifier-detail img{width:72px;height:72px;object-fit:contain;flex:0 0 auto}.modifier-detail h3{margin:0;font-family:Grenze,serif;font-size:1.35rem}.modifier-detail p{margin:3px 0;color:var(--muted);font-size:.85rem;line-height:1.4}.modifier-detail small{color:var(--muted)}.run-variants{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.run-variant{display:flex;flex-direction:column;min-width:120px;padding:10px 14px;border:1px solid var(--border);background:rgba(6,17,29,.55)}.run-variant span{color:var(--muted);font-size:.75rem}.active-run-panel .timeline-link{display:inline-block;margin-top:12px}
@media(max-width:700px){.run-overview{grid-template-columns:1fr;padding:16px}.party-art img{max-height:220px}.modifier-detail-grid{grid-template-columns:1fr}.tournament-section{padding:16px}.modifier-detail img{width:58px;height:58px}}

.active-run-copy{flex:1;min-width:0}.active-run-panel .tournament-action{display:inline-flex;align-items:center;gap:14px;margin-top:22px;padding:10px 15px;color:var(--accent);font-weight:800;text-decoration:none;border:1px solid var(--gold);background:rgba(7,19,34,.62)}.active-run-panel .tournament-action:hover{background:rgba(143,116,65,.18)}.active-run-panel .tournament-action span{font-size:1.25rem;line-height:1}.run-seal-timer{display:flex;flex:0 0 190px;flex-direction:column;align-items:center;justify-content:center}.run-seal-timer .run-seal img{display:block;width:104px;height:104px;opacity:.82}.rogue-countdown{margin-top:4px;text-align:center}.countdown-label{display:block;margin-bottom:4px;color:var(--accent);font-size:.68rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.countdown-units{display:flex;justify-content:center;gap:12px}.countdown-unit{display:flex;min-width:38px;flex-direction:column;align-items:center}.countdown-unit b{color:var(--accent);font-family:Grenze,serif;font-size:1.28rem;line-height:1}.countdown-unit small{margin-top:3px;color:var(--muted);font-size:.52rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:700px){.active-run-panel:not(.empty-run){display:grid;grid-template-columns:1fr auto;align-items:center}.run-seal-timer{display:flex;flex-basis:150px}.run-seal-timer .run-seal{display:block}.run-seal-timer .run-seal img{width:82px;height:82px}.countdown-units{gap:7px}.countdown-unit{min-width:32px}.active-run-panel .tournament-action{margin-top:18px}}@media(max-width:520px){.active-run-panel:not(.empty-run){grid-template-columns:1fr}.run-seal-timer{margin-top:20px;justify-self:center}.active-run-panel .tournament-action{width:max-content}}

.section-intro{max-width:760px;margin:6px 0 20px;color:var(--muted);line-height:1.55}.mirror-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mirror-rule{position:relative;min-height:150px;padding:18px 18px 18px 62px;border:1px solid rgba(143,116,65,.38);background:rgba(6,17,29,.55)}.mirror-rule .rule-number{position:absolute;top:18px;left:18px;color:var(--accent);font-family:Grenze,serif;font-size:1.25rem;font-weight:800}.mirror-rule h3{margin:0 0 7px;font-family:Grenze,serif;font-size:1.4rem}.mirror-rule p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.5}.setup-rules{margin-top:18px;padding:24px;border:1px solid var(--gold);background:var(--panel)}.setup-rules h2{margin:0;font-family:Grenze,serif;font-size:1.8rem}.setup-rules p{max-width:850px;color:var(--muted);line-height:1.55}.setup-rules a{color:var(--accent);font-weight:800;text-decoration:none}
@media(max-width:700px){.mirror-rule-grid{grid-template-columns:1fr}.mirror-rule{min-height:0}.setup-rules{padding:18px}}

.setup-rules .rules-action{display:inline-block;margin-top:20px}
.setup-guide,.setup-note{margin-top:18px;padding:24px;border:1px solid var(--border);background:var(--panel)}.setup-guide h2,.setup-note h2{margin:0;font-family:Grenze,serif;font-size:1.8rem}.setup-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.setup-guide-step{display:flex;gap:16px;min-height:128px;padding:18px;border:1px solid rgba(143,116,65,.38);background:rgba(6,17,29,.55)}.setup-guide-step .step-number{position:static;flex:0 0 auto;font-size:1.45rem}.setup-guide-step h3{margin:0 0 7px;font-family:Grenze,serif;font-size:1.35rem}.setup-guide-step p,.setup-note p{margin:0;color:var(--muted);line-height:1.5}.setup-guide-step a,.setup-note a,.content-panel .rules-action{display:inline-block;margin-top:10px;color:var(--accent);font-weight:800;text-decoration:none}@media(max-width:700px){.setup-guide-grid{grid-template-columns:1fr}.setup-guide,.setup-note{padding:18px}}
.epilogue-detail{flex:1 1 100%;padding:16px 18px}.epilogue-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.epilogue-heading strong{font-family:Grenze,serif;font-size:1.55rem}.epilogue-heading p{margin:3px 0 0;color:var(--muted);font-size:.86rem}.epilogue-multipliers{display:flex;flex:0 0 auto;flex-direction:column;align-items:flex-end;gap:3px}.epilogue-challenges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid rgba(143,116,65,.3)}.epilogue-challenge{padding:10px 12px;background:rgba(3,10,20,.35);border-left:2px solid var(--gold)}.epilogue-challenge span{color:var(--accent);font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.epilogue-challenge h3{margin:1px 0 0;font-family:Grenze,serif;font-size:1.15rem}.epilogue-challenge p{margin:4px 0 0;color:var(--muted);font-size:.78rem;line-height:1.4}@media(max-width:700px){.epilogue-heading{flex-direction:column;gap:10px}.epilogue-multipliers{align-items:flex-start}.epilogue-challenges{grid-template-columns:1fr}}
.epilogue-info-slot:empty{display:none}.epilogue-selection-info{margin-top:14px;padding:14px;border:1px solid rgba(143,116,65,.55);background:rgba(3,10,20,.42)}.epilogue-selection-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:10px}.epilogue-selection-heading .eyebrow{margin:0}.epilogue-selection-heading h3{margin:1px 0 0;font-family:Grenze,serif;font-size:1.35rem}.epilogue-selection-heading>p{max-width:330px;margin:0!important;font-size:.78rem!important;text-align:right}.epilogue-select-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.epilogue-select-card{padding:9px 10px;border:1px solid rgba(57,81,108,.8);background:rgba(9,27,47,.55)}.epilogue-select-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.epilogue-select-card strong{font-family:Grenze,serif;font-size:1.05rem}.epilogue-select-card span{color:var(--accent);font-size:.57rem;font-weight:800;text-transform:uppercase;white-space:nowrap}.epilogue-select-card p{margin:3px 0 0!important;color:var(--muted);font-size:.72rem!important;line-height:1.35!important}@media(max-width:700px){.epilogue-selection-heading{flex-direction:column;gap:5px}.epilogue-selection-heading>p{text-align:left}.epilogue-select-grid{grid-template-columns:1fr}.epilogue-select-card-head{align-items:flex-start;flex-direction:column;gap:1px}}
