:root{--dusk:#2a1840;--dusk-2:#3b2457;--ember:#f2b134;--mint:#7fe0b5;--parch:#fbf6ea;--ink-m:#2b2233;--fog:#7b7088;--rim:#e7ddc8;--mana:#6d5bd0}
*{box-sizing:border-box}body{margin:0;background:var(--parch);color:var(--ink-m);font:16px/1.72 "Trebuchet MS","Segoe UI",Verdana,sans-serif}
a{color:var(--mana);text-underline-offset:3px}a:hover{color:var(--dusk)}
.realm{max-width:1060px;margin:0 auto;padding:0 18px}
.guild-bar{background:var(--dusk);color:#efe7ff;position:relative}
.guild-bar::after{content:"";display:block;height:6px;background:repeating-linear-gradient(90deg,var(--ember) 0 18px,var(--dusk-2) 18px 24px)}
.guild-bar .realm{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px;padding-top:15px;padding-bottom:15px}
.sigil{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font:700 19px/1 "Courier New",Courier,monospace;letter-spacing:.02em}
.sigil i{width:26px;height:26px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#ffe7a3,var(--ember) 60%,#b77a12);box-shadow:0 0 0 3px var(--dusk-2)}
.waypoints{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:14px}.waypoints a{color:#d9ccf4;text-decoration:none}.waypoints a:hover{color:var(--mint)}
.lobby{display:grid;grid-template-columns:1.3fr 1fr;gap:26px;align-items:center;padding:48px 0 30px}
.lobby h1{font:700 clamp(28px,5vw,48px)/1.12 "Trebuchet MS","Segoe UI",sans-serif;margin:0;color:var(--dusk)}
.lobby p{margin:12px 0 0;color:var(--fog);font-size:17px;max-width:46ch}
.idle-meter{background:var(--dusk);border-radius:14px;padding:18px 20px;color:#e9e0fb;font:13px/1.6 "Courier New",Courier,monospace}
.idle-meter b{display:block;color:var(--ember);font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px}
.xp-bar{height:12px;border-radius:6px;background:var(--dusk-2);overflow:hidden;margin:8px 0 12px}.xp-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--mint),var(--ember))}
.quest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:12px 0 84px}
.quest-tile{display:flex;flex-direction:column;gap:8px;background:#fff;border:2px solid var(--rim);border-radius:14px;padding:18px;text-decoration:none;color:var(--ink-m);min-width:0}
.quest-tile:hover{border-color:var(--mana);transform:translateY(-2px)}
.quest-tile h2{font-size:18.5px;line-height:1.3;margin:0;color:var(--dusk)}.quest-tile p{margin:0;color:var(--fog);font-size:14.5px;line-height:1.55}
.stage-chip{align-self:flex-start;font:700 11px/1.5 "Courier New",Courier,monospace;letter-spacing:.12em;text-transform:uppercase;background:var(--mint);color:var(--dusk);padding:2px 8px;border-radius:20px}
.questlog{max-width:720px;margin:38px auto 84px;background:#fff;border-radius:18px;border:2px solid var(--rim);padding:32px 36px;position:relative}
.questlog::before{content:"";position:absolute;left:0;top:28px;bottom:28px;width:5px;border-radius:0 4px 4px 0;background:linear-gradient(var(--ember),var(--mint))}
.questlog h1{font-size:clamp(25px,4.4vw,38px);line-height:1.18;color:var(--dusk);margin:12px 0 14px}
.lore{font-size:17.5px;color:var(--fog);margin:0 0 24px}
.questlog h2{font-size:20px;color:var(--mana);margin:32px 0 8px}
.questlog ul,.questlog ol{padding-left:22px}.questlog li{margin:6px 0}
.loot-note{background:#f3effd;border:1px dashed var(--mana);border-radius:10px;padding:12px 16px;font-size:15.5px}
.savepoint{margin-top:34px;font:12.5px/1.5 "Courier New",Courier,monospace;color:var(--fog)}
.tavern-foot{background:var(--dusk-2);color:#bfb1da;font-size:13.5px}.tavern-foot .realm{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 22px;padding-top:22px;padding-bottom:30px}.tavern-foot a{color:#fff}
@media(max-width:860px){.quest-grid{grid-template-columns:repeat(2,1fr)}.lobby{grid-template-columns:1fr}}
@media(max-width:560px){.quest-grid{grid-template-columns:1fr}.questlog{padding:24px 18px;margin-top:22px;border-radius:12px}.lobby{padding-top:30px}}