.rebirth { --rebirth-accent:#f5ce68; color:var(--text,#f3f5f7); padding-bottom:32px; }
.rebirth h1,.rebirth h2,.rebirth h3,.rebirth p { margin:0; letter-spacing:0; }
.rebirth h1 { font-size:20px; }.rebirth h2 { font-size:18px; }.rebirth h3 { font-size:14px; }
.rebirth-top { display:flex; align-items:center; gap:12px; }.rebirth-top>span { margin-left:auto; }
.rebirth-jumps { display:flex; gap:20px; }.rebirth-jumps a { display:inline-flex; align-items:center; min-height:44px; color:inherit; font-size:13px; text-decoration:underline; text-underline-offset:5px; }.rebirth :is(h2,h3) { scroll-margin-top:80px; }
.rebirth-calendar { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.rebirth-calendar button { display:flex; align-items:center; gap:10px; padding:10px; min-width:0; color:inherit; background:var(--card,#14181c); border:1px solid #46505a; border-radius:6px; cursor:pointer; text-align:left; }
.rebirth-calendar button[aria-pressed=true] { border-color:var(--rebirth-accent); box-shadow:inset 0 -2px var(--rebirth-accent); }
.rebirth-calendar img { object-fit:contain; flex:0 0 56px; }.rebirth-calendar span { display:grid; gap:3px; min-width:0; }.rebirth-calendar strong { font-size:13px; overflow-wrap:anywhere; }.rebirth-calendar small { font-size:10px; }
.rebirth-banner { display:flex; align-items:center; gap:28px; padding:24px 8px; border-bottom:1px solid #46505a; }
.rebirth-emblem { width:180px; height:180px; object-fit:contain; filter:drop-shadow(0 12px 18px #0005); }
.rebirth-intro { display:grid; gap:10px; flex:1; min-width:0; }.rebirth-intro h2 { font-size:32px; color:var(--rebirth-accent); }.rebirth-intro p { font-size:12px; line-height:1.6; }.rebirth-intro>span { font-size:12px; }
.rebirth-xp { display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; }.rebirth-xp strong { font-size:20px; }.rebirth-xp small,.rebirth-xp>span { font-size:12px; font-weight:400; }
.rebirth progress { appearance:none; width:100%; height:6px; border:0; border-radius:0; background:#364048; accent-color:var(--rebirth-accent); }.rebirth progress::-webkit-progress-bar { background:#364048; }.rebirth progress::-webkit-progress-value { background:var(--rebirth-accent); }.rebirth progress::-moz-progress-bar { background:var(--rebirth-accent); }
.rebirth-layout { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(270px,1fr); gap:28px; }.rebirth-map-section>header { display:flex; justify-content:space-between; gap:10px; align-items:center; margin-bottom:20px; }.rebirth-map-section>header>span { font-size:12px; }
.rebirth-map { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(10,minmax(0,1fr)); gap:14px 0; }
.rebirth-map li { position:relative; min-width:0; display:grid; place-items:center; height:32px; }
.rebirth-map li::before { content:''; position:absolute; top:50%; left:0; right:0; height:1px; background:#58616a; }
.rebirth-map li:nth-child(10n):not(:last-child)::after { content:''; position:absolute; width:1px; height:46px; top:50%; left:50%; background:#58616a; }
.rebirth-map li span { z-index:1; width:28px; height:28px; display:grid; place-items:center; background:#181e23; border:1px solid #65717c; color:#cad2d9; font-size:11px; font-variant-numeric:tabular-nums; border-radius:4px; }
.rebirth-map li.reached span { border-color:var(--rebirth-accent); color:var(--rebirth-accent); }.rebirth-map li.current span { background:var(--rebirth-accent); color:#111; border-color:var(--rebirth-accent); font-weight:900; outline:2px solid var(--rebirth-accent); outline-offset:3px; }
.rebirth-map li.milestone span { border-radius:50%; }.rebirth-map li i { position:absolute; top:-5px; right:3px; width:5px; height:5px; background:var(--rebirth-accent); transform:rotate(45deg); z-index:2; }
.rebirth-legend { display:flex; gap:14px; font-size:10px; padding:16px 0 24px; }.rebirth-legend span:first-child { color:var(--rebirth-accent); }.rebirth-map-section>h3 { margin-bottom:14px; }
.rebirth-rewards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }.rebirth-reward { position:relative; min-width:0; border:1px solid #46505a; border-radius:6px; padding:10px; }.rebirth-reward.earned { border-color:var(--rebirth-accent); }.rebirth-reward summary { display:grid; justify-items:center; gap:5px; cursor:pointer; text-align:center; list-style:none; }.rebirth-reward summary::-webkit-details-marker { display:none; }.rebirth-reward img { object-fit:contain; width:76px; height:76px; }.rebirth-reward strong { font-size:12px; overflow-wrap:anywhere; }.rebirth-reward small { font-size:10px; }.rebirth-tier { position:absolute; top:8px; right:8px; color:var(--rebirth-accent); font-size:11px; }.rebirth-reward p { font-size:12px; line-height:1.5; margin-top:10px; }
.rebirth-missions { min-width:0; }.rebirth-periods { display:flex; gap:4px; margin:16px 0; }.rebirth-periods button { flex:1; min-height:44px; padding:6px; border:0; border-bottom:2px solid transparent; background:transparent; color:inherit; font-size:12px; cursor:pointer; }.rebirth-periods button[aria-pressed=true] { border-color:var(--rebirth-accent); color:var(--rebirth-accent); }
.rebirth-task { display:grid; grid-template-columns:28px minmax(0,1fr) auto; gap:10px; padding:16px 0; border-bottom:1px solid #46505a; }.rebirth-task h3 { font-size:13px; line-height:1.5; }.rebirth-task>div>span { display:block; font-size:11px; margin:5px 0; }.rebirth-task>strong { font-size:14px; color:var(--rebirth-accent); text-align:right; }.rebirth-task strong small { display:block; font-size:9px; font-weight:400; }.rebirth-task-icon svg,.rebirth-task-icon img { width:24px; height:24px; object-fit:contain; fill:none; stroke:currentColor; stroke-width:1.8; }.rebirth-task details { font-size:12px; margin-top:6px; }.rebirth-task summary { cursor:pointer; padding:8px 0; }.rebirth-task p { line-height:1.5; }.rebirth-task.done>strong { color:#74e2ac; }
.rebirth-all { min-height:44px; margin:16px 0; padding:10px 14px; background:transparent; color:inherit; border:1px solid #64717d; border-radius:4px; cursor:pointer; }.rebirth-rules { border-top:1px solid #46505a; padding:16px 0; font-size:12px; }.rebirth-rules summary { cursor:pointer; min-height:32px; }.rebirth-rules p { margin:8px 0; line-height:1.6; }.rebirth-notice { font-size:13px; padding:12px 0; }
.rebirth :is(button,summary):focus-visible { outline:2px solid var(--rebirth-accent); outline-offset:3px; }
html[data-theme=light] .rebirth { --rebirth-accent:#8b3813!important; }
@media(max-width:760px){ .rebirth-layout { grid-template-columns:1fr; }.rebirth-calendar { grid-template-columns:repeat(2,minmax(0,1fr)); }.rebirth-banner { gap:14px; padding:18px 0; }.rebirth-emblem { width:112px; height:132px; }.rebirth-intro h2 { font-size:26px; } }
@media(max-width:380px){ .rebirth-emblem { width:80px; height:110px; }.rebirth-calendar button { gap:6px; padding:6px; }.rebirth-calendar img { width:40px; height:40px; flex-basis:40px; }.rebirth-map li span { width:23px; height:26px; font-size:10px; }.rebirth-rewards { grid-template-columns:repeat(2,minmax(0,1fr)); } }
