:root {
    color-scheme: dark;
    --bg: #0d1016;
    --panel: #151a22;
    --panel-raised: #1b212b;
    --line: #2a303a;
    --ink: #f3f0e9;
    --dim: #9ba3b0;
    --gold: #d7b778;
    --red: #b4413c;
    font-family: Inter, "Segoe UI", Arial, sans-serif;
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--ink); line-height: 1.5; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
a:hover, summary:hover { color: var(--gold); }
a, button, summary { transition: color .15s, background .15s, border-color .15s; }
a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; }
img { max-width: 100%; }
.wrap { width: min(1280px, calc(100% - 80px)); margin-inline: auto; }
.bar { position: relative; z-index: 10; background: #10141b; border-bottom: 1px solid var(--line); }
.bar nav { min-height: 83px; display: flex; align-items: center; gap: 32px; }
.brand { flex: none; display: flex; align-items: center; gap: 10px; font: 700 17px/1.1 Georgia, serif; letter-spacing: .06em; }
.brand img { width: 43px; height: 43px; object-fit: cover; border-radius: 50%; }
.brand small { display: block; margin-top: 5px; color: var(--dim); font: 500 9px/1 "Segoe UI", sans-serif; letter-spacing: .19em; }
.links { display: flex; align-items: center; gap: 27px; margin-left: auto; }
.links > a, .more-nav > summary { color: #afb5bf; font-size: 13px; font-weight: 600; padding: 30px 0; border-bottom: 2px solid transparent; }
.links > a:hover, .links [aria-current=page] { color: white; border-bottom-color: var(--red); }
.account { flex: none; display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 10px 15px; background: #a53533; border: 1px solid #c3524b; border-radius: 4px; font-size: 12px; font-weight: 650; white-space: nowrap; }
.account:hover { color: #fff; background: #bb403c; }
.account-dot { width: 7px; height: 7px; border-radius: 50%; background: #e4c991; }
.more-nav { position: relative; }
.more-nav > summary { list-style: none; cursor: pointer; }
.more-nav > summary::-webkit-details-marker { display: none; }
.more-nav > summary span { padding-left: 6px; color: #727d8b; }
.more-nav > div { display: grid; min-width: 180px; position: absolute; right: -15px; top: 65px; background: #1a202a; border: 1px solid #353d4a; border-radius: 5px; padding: 8px; box-shadow: 0 15px 30px #0008; }
.more-nav > div a { font-size: 12px; padding: 8px 10px; }
.more-nav > div a:hover { background: #242c38; border-radius: 3px; }
main.wrap { min-height: 73vh; }
.guild-home { padding-top: 25px; }
.guild-hero { position: relative; display: grid; grid-template-columns: 1.2fr .8fr; align-items: center; min-height: 385px; overflow: hidden; border: 1px solid #34343b; border-radius: 7px 7px 0 0; background: #15171d; }
.hero-scene { position: absolute; inset: 0; background: linear-gradient(90deg, #10131bf5 0%, #10131bde 40%, #15131b80 100%), url('/brand/hero.webp') center 57% / cover; opacity: .86; }
.hero-main { position: relative; z-index: 1; padding: 49px 55px; }
.eyebrow { display: flex; align-items: center; gap: 8px; margin: 0 0 16px; color: var(--gold); font-size: 10px; line-height: 1.3; font-weight: 700; text-transform: uppercase; letter-spacing: .2em; }
.eyebrow:before { content: ''; width: 5px; height: 5px; background: var(--red); transform: rotate(45deg); }
h1, h2, h3 { font-family: Georgia, "Times New Roman", serif; font-weight: 500; line-height: 1.15; margin: 0; }
.guild-hero h1 { max-width: 600px; font-size: clamp(48px, 5.9vw, 79px); letter-spacing: -.055em; line-height: 1.03; }
.hero-facts { color: #b9b9bc; font-size: 13px; margin: 20px 0 0; }
.hero-facts i { color: #706662; margin: 0 11px; }
.hero-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 27px; }
.hero-actions a, .hero-actions button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 40px; border: 1px solid #70564b; border-radius: 4px; background: #a33731; padding: 10px 17px; font-size: 12px; font-weight: 650; }
.hero-actions a + a, .hero-actions .secondary { color: #d8d5d0; border-color: #5b5351; background: #1d1f2588; }
.hero-actions a:hover { color: white; border-color: var(--gold); }
.hero-crest { position: relative; z-index: 1; display: grid; place-items: center; align-self: stretch; overflow: hidden; padding: 12px 30px 12px 0; }
.hero-crest img { width: min(100%, 345px); height: 345px; object-fit: contain; mix-blend-mode: screen; filter: drop-shadow(0 12px 24px #000b); }
.guild-status { display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid #303640; border-top: 0; border-radius: 0 0 6px 6px; background: #171c24; }
.guild-stat { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; min-height: 94px; padding: 18px 26px; border-right: 1px solid #303640; }
.guild-stat:last-child { border: 0; }
.guild-stat small { color: #8993a3; font-size: 10px; text-transform: uppercase; letter-spacing: .12em; }
.guild-stat b { display: block; color: #eee9df; font: 500 24px/1.2 Georgia, serif; margin-top: 5px; }
.guild-stat span { margin-top: 4px; color: #7f8998; font-size: 10px; }
.community-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 340px); gap: 27px; margin-top: 33px; align-items: start; }
.guild-board, .progress-panel { min-width: 0; }
.section-head { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin: 0 0 19px; }
.section-head h2 { font-size: 26px; letter-spacing: -.025em; }
.section-head a { color: #8e98a6; font-size: 11px; white-space: nowrap; }
.section-head a:hover { color: var(--gold); }
.guild-board > section, .guild-board > .guild-module { margin-bottom: 31px; }
.progress-panel { padding: 23px; border: 1px solid #303642; border-radius: 6px; background: linear-gradient(150deg, #1a202a, #131820); }
.progress-panel .section-head { border-bottom: 1px solid #303642; padding-bottom: 17px; }
.progress-panel .section-head h2 { font-size: 23px; }
.rank-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 19px; }
.rank { display: grid; text-align: center; gap: 4px; padding: 14px 2px; border: 1px solid #313946; border-radius: 4px; background: #121820; }
.rank small, .rank span { font-size: 9px; text-transform: uppercase; letter-spacing: .08em; color: #8d98a9; }
.rank b, .rank strong { font: 500 24px/1.2 Georgia, serif; color: var(--gold); }
.source-note { font-size: 10px; color: #828c9b; line-height: 1.65; margin: 15px 0 0; }
.source-note a { color: #c4ad80; }
.boss-progress { margin-top: 20px; }
.boss-progress h3 { font-size: 18px; }
.boss-progress > p, .boss-progress small { font-size: 11px; color: #9da6b4; }
.boss-meter { height: 5px; background: #2b3340; overflow: hidden; margin: 14px 0; border-radius: 3px; }
.boss-meter > span { display: block; height: 100%; background: linear-gradient(90deg, #a33731, #d8a565); }
.boss-row { display: flex; justify-content: space-between; gap: 8px; font-size: 11px; padding: 9px 0; border-bottom: 1px solid #29313d; }
.boss-row span:last-child { color: var(--gold); }
.event-row { display: flex; align-items: center; gap: 17px; padding: 15px; background: #181e27; border: 1px solid #2c3440; border-radius: 5px; margin-bottom: 10px; }
.event-date { flex: none; text-align: center; min-width: 43px; color: var(--gold); font: 500 24px/1 Georgia, serif; }
.event-date small { display: block; margin-top: 6px; color: #8c98a9; font: 600 9px/1.2 "Segoe UI", sans-serif; text-transform: uppercase; letter-spacing: .12em; }
.event-copy { min-width: 0; }
.event-copy h3, .event-copy strong { font-family: inherit; font-size: 13px; font-weight: 650; }
.event-copy p, .event-copy small, .event-copy span { font-size: 11px; color: #939ead; margin: 5px 0 0; }
.chronicle-row { display: block; border-bottom: 1px solid #29313c; padding: 16px 0; }
.chronicle-row h3 { font-size: 19px; }
.chronicle-row time, .chronicle-row small { display: block; color: #929dad; font-size: 10px; margin-top: 8px; }
.chronicle-row p { color: #a0a9b7; font-size: 12px; line-height: 1.65; margin: 9px 0 0; }
.members-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.member-card { min-width: 0; padding: 17px 14px; border: 1px solid #2c3440; border-radius: 5px; background: #171d26; }
.member-avatar { display: grid; place-items: center; width: 41px; height: 41px; border: 1px solid #495366; border-radius: 50%; background: #242d3a; color: var(--gold); font: 500 21px Georgia, serif; margin-bottom: 14px; overflow: hidden; }
.member-avatar img { width: 100%; height: 100%; object-fit: cover; }
.member-card strong, .member-card h3 { display: block; font: 600 13px/1.4 "Segoe UI", sans-serif; overflow-wrap: anywhere; }
.member-class { display: block; color: #a8b4c2; font-size: 10px; margin-top: 5px; }
.member-summary { display: flex; align-items: center; gap: 10px; color: #9ba6b5; font-size: 11px; }
.memory-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.memory-card { min-width: 0; display: block; overflow: hidden; border: 1px solid #2c3440; border-radius: 5px; background: #171d26; }
.memory-card img { display: block; width: 100%; aspect-ratio: 1.55; object-fit: cover; }
.memory-card strong, .memory-card span { display: block; font-size: 11px; padding: 12px; }
.empty-module, .module-empty { position: relative; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; min-height: 127px; padding: 22px; border: 1px solid #2b3340; border-radius: 5px; background: #141a22; color: #a0a9b6; overflow: hidden; }
.empty-module h3, .empty-module strong, .module-empty h3 { font: 600 13px/1.4 "Segoe UI", sans-serif; color: #d8dce2; margin: 0 0 7px; }
.empty-module p, .module-empty p, .empty-module span, .module-empty span { max-width: 90%; margin: 0; font-size: 11px; line-height: 1.7; }
.empty-emblem { position: absolute; width: 94px; height: 94px; object-fit: contain; right: 16px; top: 18px; opacity: .08; mix-blend-mode: screen; }
.module-links { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 13px; }
.module-links a { color: var(--gold); font-size: 10px; }
.guild-intro { padding: 8px 0 0; font-size: 12px; color: #a6afbc; }
.subtle { color: #8c97a6; font-size: 11px; }
.guild-home > section { margin-top: 32px; }
/* Content views and member administration. */
h1 { font-size: clamp(36px, 4vw, 58px); letter-spacing: -.04em; }
h2 { font-size: 29px; letter-spacing: -.025em; }
h3 { font-size: 23px; }
.heading, .pagehead, .statusline, .headline, .indexlink, .listitem, .filters, .news-tabs { display: flex; align-items: center; gap: 16px; }
.heading, .pagehead, .indexlink, .listitem { justify-content: space-between; }
.heading { padding-bottom: 14px; border-bottom: 1px solid var(--line); }
.pagehead { padding: 42px 0 24px; border-bottom: 1px solid var(--line); flex-wrap: wrap; align-items: baseline; }
.heading a, small, time, dd, .empty { color: var(--dim); }
.heading a, .pagehead a, .pagehead time { font-size: 12px; }
.headline, .indexlink, .listitem, .statusline { padding: 15px 0; border-bottom: 1px solid var(--line); }
.headline a { font-weight: 500; font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
.headline time { flex: none; font-size: 11px; font-variant-numeric: tabular-nums; }
.headline button { margin-left: auto; }
.indexlink { font-size: 14px; }
.indexlink span:last-child { color: var(--gold); }
.tool-layout { display: grid; grid-template-columns: minmax(0, 1.75fr) minmax(220px, 1fr); gap: 65px; margin: 30px 0 50px; }
.spaced { margin-top: 40px; }
.filters, .news-tabs { flex-wrap: wrap; margin: 18px 0; }
.filters label, .shopform label, .stack label { display: grid; gap: 6px; color: var(--dim); font-size: 12px; }
.filters label:has([type=checkbox]) { display: flex; align-items: center; }
.shopform { display: grid; grid-template-columns: 2fr .8fr 1.15fr; gap: 12px; margin: 18px 0; }
.shopform button { justify-self: start; }
.result { font-size: 28px; color: var(--gold); font-variant-numeric: tabular-nums; margin: 8px 0; }
button, input, select, textarea { font: inherit; }
button, input, textarea, select { border: 1px solid #394352; background: #181f29; color: var(--ink); padding: 10px 13px; border-radius: 4px; }
input, textarea, select { min-width: 0; max-width: 100%; }
button { font-size: 12px; cursor: pointer; }
button:hover, button[aria-pressed=true] { color: var(--gold); border-color: #8b7857; }
button.save { font-size: 20px; line-height: 1; background: none; border: 0; }
.stack { display: grid; gap: 13px; max-width: 720px; margin: 24px 0; }
.stack textarea { min-height: 100px; }
.stack button { justify-self: start; }
.empty { padding: 25px 0; font-size: 13px; }
.statusline { justify-content: space-between; flex-wrap: wrap; font-size: 13px; }
.statusline button { padding: 6px 10px; }
.gallery { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 16px; }
.gallery .listitem { display: grid; }
.gallery img, .photo { max-width: 100%; height: auto; }
.copy { white-space: pre-line; font-size: 14px; line-height: 1.85; }
.listing, .copy { max-width: 850px; }
dt { color: var(--gold); font-size: 12px; }
dd { margin: 0 0 16px; font-size: 13px; }
.sr, .skip:not(:focus) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.skip:focus { position: absolute; z-index: 20; background: var(--bg); }
[hidden] { display: none !important; }
footer.wrap { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 27px 0 31px; margin-top: 45px; border-top: 1px solid var(--line); color: #8792a2; }
.footer-brand { font: 600 13px Georgia, serif; letter-spacing: .06em; color: #c1c6ce; }
.footer-brand span { display: block; margin-top: 6px; font: 400 10px "Segoe UI", sans-serif; color: #7b8797; letter-spacing: 0; }
.footer-links { display: flex; gap: 22px; flex-wrap: wrap; font-size: 10px; }
main details { padding: 16px 0; border-bottom: 1px solid var(--line); }
summary { cursor: pointer; }
@media (max-width: 1120px) {
    .wrap { width: calc(100% - 48px); }
    .bar nav { gap: 21px; }
    .links { gap: 19px; }
    .brand { font-size: 15px; }
    .account { font-size: 11px; padding: 9px 11px; }
    .hero-main { padding-left: 36px; }
    .hero-crest img { height: 305px; }
    .community-grid { grid-template-columns: minmax(0, 1fr) minmax(250px, 300px); gap: 22px; }
}
@media (max-width: 900px) {
    .bar nav { flex-wrap: wrap; gap: 0 15px; padding-top: 12px; }
    .brand { margin-right: auto; }
    .links { order: 3; width: 100%; justify-content: space-between; margin-top: 6px; gap: 12px; }
    .links > a, .more-nav > summary { padding: 13px 0 12px; font-size: 12px; }
    .more-nav > div { top: 40px; }
    .guild-hero { min-height: 335px; }
    .hero-main { padding: 35px 25px; }
    .hero-crest { padding: 10px; }
    .hero-crest img { height: 270px; }
    .guild-status { grid-template-columns: repeat(2, 1fr); }
    .guild-stat { border-bottom: 1px solid #303640; min-height: 84px; }
    .guild-stat:nth-child(2) { border-right: 0; }
    .guild-stat:nth-child(3) { border-bottom: 0; }
    .community-grid { grid-template-columns: minmax(0, 1fr) minmax(230px, .8fr); gap: 20px; }
    .members-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
    .wrap { width: calc(100% - 32px); }
    .brand { font-size: 13px; gap: 6px; }
    .brand img { width: 34px; height: 34px; }
    .brand small { font-size: 7px; }
    .account { max-width: 53%; font-size: 10px; padding: 9px; }
    .account > span { display: none; }
    .links { gap: 7px; }
    .links > a, .more-nav > summary { font-size: 10px; padding: 13px 0 10px; }
    .guild-home { padding-top: 15px; }
    .guild-hero { grid-template-columns: 1fr; min-height: 327px; }
    .hero-main { padding: 32px 25px; z-index: 2; }
    .guild-hero h1 { font-size: 49px; max-width: 250px; }
    .hero-scene { background-image: linear-gradient(90deg, #10131bfa 0%, #10131bd9 50%, #15131bd6 100%), url('/brand/hero.webp'); }
    .hero-crest { position: absolute; right: -35px; top: 29px; width: 205px; height: 245px; padding: 0; opacity: .24; }
    .hero-crest img { height: 245px; }
    .eyebrow { font-size: 8px; letter-spacing: .12em; }
    .hero-facts { font-size: 11px; }
    .hero-facts i { margin: 0 5px; }
    .hero-actions { gap: 9px; margin-top: 22px; }
    .hero-actions a { font-size: 10px; padding: 9px 12px; }
    .guild-stat { padding: 15px 17px; min-height: 83px; }
    .guild-stat small { font-size: 8px; }
    .guild-stat b { font-size: 20px; }
    .guild-stat span { font-size: 9px; }
    .community-grid { display: flex; flex-direction: column; margin-top: 27px; gap: 24px; }
    .guild-board, .progress-panel { width: 100%; }
    .progress-panel { padding: 21px; }
    .section-head h2 { font-size: 24px; }
    .members-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .memory-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .memory-grid .memory-card:last-child:nth-child(odd) { grid-column: 1 / -1; }
    .section-head a { font-size: 10px; }
    .tool-layout { grid-template-columns: 1fr; gap: 30px; }
    .pagehead { padding: 29px 0 19px; }
    .headline { gap: 10px; }
    .headline a { font-size: 12px; }
    .shopform { grid-template-columns: 1fr 1fr; }
    .shopform label:first-child { grid-column: 1 / -1; }
    .filters, .statusline { gap: 9px; }
    .listitem { align-items: flex-start; }
    .listitem span { font-size: 10px; }
    footer.wrap { align-items: flex-start; gap: 25px; }
    .footer-links { justify-content: flex-end; gap: 10px 15px; max-width: 55%; }
}
@media (prefers-reduced-motion: reduce) { * { transition: none !important; } }
.login-panel { max-width: 620px; margin: 55px auto; padding: 40px; text-align: center; background: var(--panel); border: 1px solid var(--line); border-radius: 8px; }
.login-panel img { object-fit: contain; mix-blend-mode: screen; }
.login-panel h1 { font-size: clamp(30px,4vw,46px); margin: 18px 0; }
.login-panel p { color: var(--dim); }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 11px 18px; border: 1px solid var(--line); border-radius: 4px; }
.button.primary { background: #a33731; border-color: #c35449; color: white; }
.hero-actions .quiet { background: #11162088; }
.full-progress { max-width: 800px; padding: 28px 0; }
.ranking-providers { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0; font-size:10px; color:var(--dim); }
.ranking-providers span { border:1px solid var(--line); padding:4px 8px; border-radius:3px; }
.source-link { display:block; color:var(--gold); font-size:12px; padding:5px 0; }
.calendar-symbol { font-size:28px; color:var(--gold); }
fieldset { border:1px solid var(--line); border-radius:5px; display:grid; gap:12px; padding:18px; }
.member-card[data-class*="warrior"], .member-card[data-class*="krieger"] { --class-color:#c79c6e; }
.member-card[data-class*="priest"], .member-card[data-class*="priester"] { --class-color:#f0ece6; }
.member-card[data-class*="mage"], .member-card[data-class*="magier"] { --class-color:#69ccf0; }
.member-card[data-class*="hunter"], .member-card[data-class*="jäger"] { --class-color:#abd473; }
.member-card[data-class*="rogue"], .member-card[data-class*="schurke"] { --class-color:#fff569; }
.member-card[data-class*="warlock"], .member-card[data-class*="hexenmeister"] { --class-color:#9482c9; }
.member-card[data-class*="druid"], .member-card[data-class*="druide"] { --class-color:#ff7d0a; }
.member-card[data-class*="shaman"], .member-card[data-class*="schamane"] { --class-color:#409cff; }
.member-class { color:var(--class-color,var(--dim)); }
.member-avatar { border-color:var(--class-color,var(--line)); }
/* Guild modules also retain their shape before the first data import. */
.guild-hero h1 em { font-style: normal; color: #dfb976; }
.section-head .eyebrow { margin-bottom: 8px; font-size: 8px; }
.event-date b { display: block; font-weight: 500; }
.event-date span { display: block; font: 600 9px/1.3 "Segoe UI", sans-serif; color: #929cac; letter-spacing: .1em; margin-top: 5px; }
.event-row > span:last-child { margin-left: auto; color: var(--gold); }
.calendar-symbol { font-size: 29px !important; color: #616f84; line-height: 1 !important; margin-bottom: 10px !important; }
.empty-module a, .module-empty a { display: inline-block; color: var(--gold); font-size: 10px; margin-top: 11px; }
.empty-module > div { position: relative; z-index: 1; }
.gallery-empty { min-height: 165px; background: linear-gradient(115deg, #181f2a, #111720); }
.guild-home > .module-links { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 19px 0; margin-top: 31px; gap: 25px; }
.guild-home > .module-links a { font-size: 11px; color: #aab3c1; }
.guild-home > .module-links a span { color: var(--gold); margin-right: 5px; }
.rankings { margin-top: 25px; padding-top: 23px; border-top: 1px solid #303642; }
.rankings > h3 { font-size: 19px; }
.ranking-providers { display: flex; flex-wrap: wrap; gap: 8px; margin: 17px 0 0; }
.ranking-providers span { border: 1px solid #323b49; background: #1b2330; border-radius: 3px; padding: 5px 8px; color: #8794a7; font-size: 9px; }
.source-link { display: block; margin-top: 13px; color: var(--gold); font-size: 10px; }
.boss-list > .boss-row { display: block; padding: 15px 0; }
.boss-row h3 { font-family: inherit; font-size: 13px; line-height: 1.5; font-weight: 600; }
.boss-row .boss-progress { display: flex; justify-content: space-between; gap: 8px; margin-top: 7px; font-size: 10px; color: #929fb0; }
.boss-progress b { color: var(--gold); }
progress.boss-meter { appearance: none; display: block; width: 100%; height: 5px; border: 0; margin: 12px 0 0; background: #2b3340; color: var(--red); }
progress.boss-meter::-webkit-progress-bar { background: #2b3340; border-radius: 3px; }
progress.boss-meter::-webkit-progress-value { background: #bc5446; border-radius: 3px; }
progress.boss-meter::-moz-progress-bar { background: #bc5446; border-radius: 3px; }
.full-progress { max-width: 850px; padding: 28px 0; }
.full-progress .rank-grid { max-width: 520px; }
.memory-card > div { padding: 13px; }
.memory-card h3 { font-family: inherit; font-size: 12px; font-weight: 600; line-height: 1.45; }
.memory-card time { font-size: 9px; display: block; margin-top: 5px; }
.member-card .member-class { margin: 6px 0 0; }
.member-card[data-class=warrior] .member-avatar, .member-card[data-class=krieger] .member-avatar { color: #c79c6e; border-color: #705c48; }
.member-card[data-class=mage] .member-avatar, .member-card[data-class=magier] .member-avatar { color: #69ccf0; border-color: #43677b; }
.member-card[data-class=priest] .member-avatar, .member-card[data-class=priester] .member-avatar { color: #f1f1ec; border-color: #7d807f; }
.member-card[data-class=shaman] .member-avatar, .member-card[data-class=schamane] .member-avatar { color: #4e95e9; border-color: #3c5d84; }
.member-card[data-class=druid] .member-avatar, .member-card[data-class=druide] .member-avatar { color: #ff914d; border-color: #865939; }
.member-card[data-class=rogue] .member-avatar, .member-card[data-class=schurke] .member-avatar { color: #fff0a2; border-color: #7b7549; }
.member-card[data-class=warlock] .member-avatar, .member-card[data-class=hexenmeister] .member-avatar { color: #b1a1dc; border-color: #675b84; }
.member-card[data-class=hunter] .member-avatar, .member-card[data-class=jäger] .member-avatar { color: #abd473; border-color: #586a42; }
.login-panel { max-width: 650px; margin: 58px auto; padding: 38px; text-align: center; border: 1px solid #323b49; border-radius: 7px; background: radial-gradient(ellipse at top, #25212a, #141a23 70%); }
.login-panel > img { display: block; width: 120px; height: 120px; object-fit: contain; margin: 0 auto 25px; mix-blend-mode: screen; }
.login-panel .eyebrow { justify-content: center; }
.login-panel h1 { font-size: 36px; line-height: 1.2; }
.login-panel p:not(.eyebrow) { color: #a5afbf; font-size: 13px; margin: 18px 0; }
.login-panel .hero-actions { justify-content: center; }
.login-panel > a { display: inline-flex; align-items: center; padding: 10px 17px; color: var(--gold); font-size: 12px; }
@media (max-width: 680px) {
    .guild-home > .module-links { gap: 14px 20px; }
    .guild-home > .module-links a { font-size: 10px; }
    .login-panel { margin: 30px 0; padding: 28px 20px; }
    .login-panel h1 { font-size: 29px; }
}
.guild-history { padding: 6px 0; }
.history-line { display:grid; grid-template-columns:96px 1fr; gap:18px; padding:13px 0; border-bottom:1px solid var(--line); align-items:baseline; }
.history-line time { color:var(--gold); font-size:12px; }
.history-line span { font-size:13px; color:var(--ink); }
