:root {
    --blue: #2563eb;
    --green: #22c55e;
    --violet: #8B5CF6;
    --red: #ef4444;
    --warning: #f59e0b;
    --info: #3b82f6;
    --neutral-900: #0f172a;
    --neutral-700: #334155;
    --neutral-500: #64748b;
    --neutral-300: #cbd5e1;
    --neutral-100: #f1f5f9;
    --white: #fff;
    --page-background: #f8fafc;
    --surface: #fff;
    --surface-muted: #f0f0ed;
    --text: var(--neutral-700);
    --text-muted: var(--neutral-500);
    --border: var(--neutral-300);
    --border-strong: var(--neutral-500);
    --link: var(--violet);
    --focus: var(--blue);
    --heading: var(--neutral-900);
    --header-background: #fff;
    --button-background: var(--violet);
    --button-hover: #7c3aed;
    --button-text: #fff;
    --button-disabled: #f0f0ed;
    --button-disabled-text: #626262;
    --danger: var(--red);
    --danger-surface: #fbf2f2;
    --success: var(--green);
    --success-surface: #f0f7f2;
    --code-background: #f2f2ef;
    --accent: var(--blue);
    --accent-strong: #1d4ed8;
    --accent-text: #fff;
    --mastering-canvas: #e7edf4;
    --mastering-canvas-inner: #d7e2ef;
    --mastering-overlay: #f7f7f5b8;
    --mastering-popover: #fff;
    --content-width: 72rem;
    --reading-width: 48rem;
    --space-0: 0;
    --space-1: .5rem;
    --space-2: 1rem;
    --space-3: 1.5rem;
    --space-4: 2rem;
    --space-5: 3rem;
    --space-6: 4rem;
    --space-7: 5rem;
    --space-8: 6rem;
    --radius-small: .5rem;
    --radius-card: 1rem;
    --font-small: .875rem;
    --font-body: 1rem;
    --font-large: clamp(2.25rem, 4vw, 2.75rem);
    --line-body: 1.5;
}

:root[data-platform-theme="dark"] { color-scheme:dark;--page-background:#090c11;--surface:#111821;--surface-muted:#182332;--text:#f3f6fa;--text-muted:#aab8ca;--heading:#fff;--border:#263344;--border-strong:#4b617c;--link:var(--violet);--focus:#9bc8ff;--header-background:#111821;--button-background:var(--violet);--button-hover:#7c3aed;--button-text:#f3f6fa;--button-disabled:#253140;--button-disabled-text:#aab8ca;--danger:#ff7474;--danger-surface:#311b20;--success:#69d39b;--success-surface:#14271e;--code-background:#111821;--accent:#67a4ef;--accent-strong:#9bc8ff;--accent-text:#07101c;--mastering-canvas:#0b1119;--mastering-canvas-inner:#172538;--mastering-overlay:#05080ba8;--mastering-popover:#111821}
@media(prefers-color-scheme:dark){:root[data-platform-theme="system"]{color-scheme:dark;--page-background:#090c11;--surface:#111821;--surface-muted:#182332;--text:#f3f6fa;--text-muted:#aab8ca;--heading:#fff;--border:#263344;--border-strong:#4b617c;--link:var(--violet);--focus:#9bc8ff;--header-background:#111821;--button-background:var(--violet);--button-hover:#7c3aed;--button-text:#f3f6fa;--button-disabled:#253140;--button-disabled-text:#aab8ca;--danger:#ff7474;--danger-surface:#311b20;--success:#69d39b;--success-surface:#14271e;--code-background:#111821;--accent:#67a4ef;--accent-strong:#9bc8ff;--accent-text:#07101c;--mastering-canvas:#0b1119;--mastering-canvas-inner:#172538;--mastering-overlay:#05080ba8;--mastering-popover:#111821}}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
html.forum-instant-scroll { scroll-behavior: auto; }
body {
    min-width: 20rem;
    margin: 0;
    background: var(--page-background);
    color: var(--text);
    font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
    font-size: var(--font-body);
    line-height: var(--line-body);
    text-rendering: optimizeLegibility;
}
body > main { min-height: 55vh; }
img, svg { max-width: 100%; }
.web-image-picture { display: block; max-width: 100%; line-height: 0; }
.web-image-picture > img { display: block; width: 100%; height: 100%; max-width: none; max-height: inherit; object-fit: inherit; object-position: inherit; }
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
a { color: var(--link); text-decoration-thickness: .08em; text-underline-offset: .18em; }
a:hover { text-decoration-thickness: .14em; }
h1, h2, h3, h4 { color:var(--heading);line-height: 1.18; overflow-wrap: anywhere; }
h1 { margin: 0 0 var(--space-4); font-size: var(--font-large); letter-spacing: -.035em; }
h2 { margin: var(--space-5) 0 var(--space-3); font-size: clamp(1.4rem, 3vw, 2rem); letter-spacing: -.02em; }
h3 { margin: var(--space-4) 0 var(--space-2); font-size: 1.2rem; }
p, ul, ol, dl { margin-top: 0; }
hr { border: 0; border-top: 1px solid var(--border); }
pre { max-width: 100%; overflow-x: auto; padding: var(--space-3); border: 1px solid var(--border); background: var(--code-background); color: var(--text); font-size: .9rem; line-height: 1.55; }
code { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
blockquote { margin: var(--space-4) 0; padding: var(--space-2) var(--space-4); border-left: 2px solid var(--border-strong); color: var(--text); }
blockquote footer { margin-bottom: var(--space-1); color: var(--text-muted); font-size: var(--font-small); }
.post-body blockquote { margin: .7rem 0; padding: .7rem var(--space-2); border: 1px solid var(--border); border-left: 3px solid var(--violet); border-radius: var(--radius-small); background: var(--surface-muted); }
.post-body blockquote footer { margin-bottom: .25rem; color: var(--link); font-weight: 700; }
.post-markup-color--red { color: color-mix(in srgb,var(--red) 82%,var(--text)); }
.post-markup-color--green { color: color-mix(in srgb,var(--green) 72%,var(--text)); }
.post-markup-color--blue { color: color-mix(in srgb,var(--blue) 78%,var(--text)); }
.post-markup-color--violet { color: color-mix(in srgb,var(--violet) 82%,var(--text)); }
.post-markup-size--small { font-size: .85em; }
.post-markup-size--normal { font-size: 1em; }
.post-markup-size--large { font-size: 1.25em; }

main { width: min(100% - 2rem, var(--content-width)); margin: var(--space-5) auto var(--space-6); }
.page-intro { max-width: var(--reading-width); margin-bottom: var(--space-3); }
.page-lead { max-width: 62ch; color: var(--text-muted); font-size: 1.1rem; }
.legal-page, .access-code-page { max-width: var(--reading-width); }
.legal-page h2 { margin-top: var(--space-5); }
.legal-page p, .legal-page li { max-width: 72ch; }
.legal-contact-address { display: inline-block; width: auto; height: 1.06em; max-width: 100%; max-height: 1.06em; margin: 0; vertical-align: -3.5px; line-height: 1; }
.community-rules-list { display: grid; gap: var(--space-2); margin: var(--space-3) 0; padding-inline-start: var(--space-3); }
.community-rule { padding-inline-start: var(--space-1); }
.community-rule::marker { color: var(--heading); font-weight: 700; }
.community-rule-statement { display: block; color: var(--heading); font-size: 1.1rem; line-height: 1.4; }
.community-rule-explanation { display: block; margin-top: var(--space-1); color: var(--text-muted); font-size: var(--font-small); line-height: var(--line-body); }
.legal-table-wrap { max-width: 100%; overflow-x: auto; }
.legal-table { width: 100%; border-collapse: collapse; font-size: var(--font-small); }
.legal-table th, .legal-table td { padding: var(--space-2); border-bottom: 1px solid var(--border); text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.legal-table th { background: var(--surface-muted); color: var(--text-muted); }
.legal-table tr:last-child td { border-bottom: 0; }
.license-metadata { display: grid; gap: var(--space-1); margin-bottom: var(--space-3); }
.license-metadata div { display: grid; grid-template-columns: minmax(7rem,.25fr) minmax(0,1fr); gap: var(--space-2); padding-bottom: var(--space-1); border-bottom: 1px solid var(--border); }
.license-metadata dt { color: var(--text-muted); font-weight: 700; }
.license-metadata dd { margin: 0; }
.track-cover-frame{position:relative;display:block;width:fit-content;overflow:hidden;border-radius:var(--design-radius)}
.track-cover-frame>.mastering-track-cover{display:block}
.track-content-badges{position:absolute;z-index:2;right:.3rem;bottom:.3rem;left:.3rem;display:flex;align-items:center;gap:.25rem;pointer-events:none}
.track-content-badge{display:inline-flex;min-height:1.15rem;align-items:center;padding:.08rem .3rem;border:1px solid color-mix(in srgb,#fff 36%,transparent);border-radius:var(--design-radius);background:color-mix(in srgb,#0f172a 84%,transparent);color:#fff;font-size:.58rem;font-weight:800;line-height:1;letter-spacing:.035em;white-space:nowrap;box-shadow:var(--design-shadow-sm)}
.track-content-badge--explicit{min-width:1.15rem;justify-content:center;padding-inline:.2rem}
.track-content-metadata{margin:.45rem 0;color:var(--text-muted);font-size:var(--font-small);line-height:1.45}
.track-content-metadata strong{color:var(--text)}
.license-text { max-height: 34rem; white-space: pre-wrap; overflow-wrap: anywhere; }

.platform-header { border-bottom: 1px solid var(--border); background: var(--header-background); color: var(--text); }
.platform-header-inner { width: min(100% - 2rem, 84rem); margin: 0 auto; }
.platform-header-navigation { display: grid; min-height: 4.75rem; grid-template-columns: auto max-content minmax(0, 1fr); align-items: center; gap: var(--space-3); }
.platform-brand { display: inline-flex; align-items: center; gap: var(--space-1); color: var(--heading); font-size: 1.45rem; font-weight: 800; letter-spacing: -.04em; text-decoration: none; white-space: nowrap; }
.platform-brand > .web-image-picture { width: 2.65rem; height: 2.65rem; }
.platform-nav, .platform-account-nav { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 0 var(--space-3); }
.platform-nav { align-self: end; flex-wrap: nowrap; white-space: nowrap; }
.platform-nav .platform-nav-link { font-size: 1.05rem; }
.platform-secondary-navigation { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 0 var(--space-3); }
.platform-account-nav { justify-content: flex-end; }
.platform-secondary-navigation > .platform-account-nav { align-self: stretch; }
.platform-secondary-navigation > .platform-account-nav .platform-nav-link { display: inline-flex; align-items: center; line-height: 1; }
.platform-nav-link, .platform-nav-button {
    min-height: 2.6rem;
    padding: .55rem .1rem .45rem;
    border: 0;
    border-bottom: 2px solid transparent;
    border-radius: 0;
    background: transparent;
    color: var(--text);
    font: inherit;
    font-size: .92rem;
    font-weight: 620;
    line-height: 1.25;
    text-decoration: none;
}
.platform-nav-link:hover, .platform-nav-button:hover { border-bottom-color: var(--border-strong); background: transparent; }
.platform-nav-link.is-active { border-bottom-color: var(--text); font-weight: 620; }
.platform-account-name { color: var(--text-muted); font-size: var(--font-small); overflow-wrap: anywhere; }
.platform-account-initials { display: inline-grid; width: 1.9rem; height: 1.9rem; flex: 0 0 auto; place-items: center; border: 1px solid var(--border-strong); border-radius: 50%; background: var(--surface-muted); font-size: .72rem; letter-spacing: .02em; }
.platform-private-home:hover .platform-account-initials, .platform-private-home:focus-visible .platform-account-initials { background: var(--surface-strong); }
.platform-logout-form { margin: 0; }
.platform-account-menu,.platform-notification-menu{position:relative}.platform-account-menu>summary,.platform-notification-menu>summary{display:flex;min-height:2.6rem;align-items:center;gap:.4rem;padding:.25rem;cursor:pointer;list-style:none}.platform-account-menu>summary::-webkit-details-marker,.platform-notification-menu>summary::-webkit-details-marker{display:none}.platform-account-menu-name{max-width:10rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.platform-menu-panel,.platform-notification-panel{position:absolute;z-index:20;top:calc(100% + .25rem);right:0;display:grid;min-width:13rem;padding:.4rem;border:1px solid var(--border-strong);background:var(--surface);box-shadow:0 .7rem 1.8rem #0002}.platform-menu-panel>a,.platform-menu-panel button{display:block;width:100%;padding:.55rem .65rem;border:0;background:transparent;color:var(--text);font:inherit;text-align:left;text-decoration:none}.platform-menu-panel>a:hover,.platform-menu-panel button:hover{background:var(--surface-muted)}.platform-menu-panel hr{width:100%;margin:.35rem 0}.platform-notification-menu>summary{position:relative;font-size:1.25rem}.platform-notification-dot{position:absolute;top:.45rem;right:.15rem;width:.5rem;height:.5rem;border:2px solid var(--surface);border-radius:50%;background:var(--danger)}.platform-notification-panel{width:min(23rem,calc(100vw - 1rem));gap:.25rem}.platform-notification-item,.platform-notification-read-all{margin:0}.platform-notification-item button,.platform-notification-read-all button{width:100%;padding:.55rem;border:0;background:transparent;color:var(--text);font:inherit;text-align:left}.platform-notification-item.is-unread button{border-left:3px solid var(--link);background:var(--surface-muted);font-weight:650}.platform-notification-item time{display:block;color:var(--text-muted);font-size:.72rem;font-weight:400}.platform-notification-read-all{border-top:1px solid var(--border)}.platform-notification-read-all button{font-size:.8rem}.platform-notification-panel p{margin:.45rem;color:var(--text-muted);font-size:.85rem}
.platform-theme-menu{position:relative}.platform-theme-menu>summary{display:flex;justify-content:space-between;padding:.55rem .65rem;color:var(--text);cursor:pointer;list-style:none}.platform-theme-menu>summary::-webkit-details-marker{display:none}.platform-theme-menu>summary:focus-visible{outline:3px solid var(--focus);outline-offset:-2px}.platform-theme-menu>div{display:grid;padding-left:.6rem}.platform-theme-menu form{margin:0}.platform-theme-menu button{display:grid;grid-template-columns:1rem 1fr;gap:.35rem}.platform-theme-menu button[aria-current="true"]{background:var(--surface-muted);color:var(--text);font-weight:750}
.language-switcher { position: relative; flex: 0 0 auto; font-size: var(--font-small); }
.language-switcher summary { padding: .3rem 0; cursor: pointer; list-style: none; white-space: nowrap; }
.language-switcher summary::-webkit-details-marker { display: none; }
.language-switcher ul { position: absolute; z-index: 5; right: 0; min-width: 9rem; margin: .25rem 0 0; padding: .35rem 0; border: 1px solid var(--border-strong); background: var(--surface); list-style: none; }
.language-switcher a { display: block; padding: .35rem .65rem; color: var(--text); text-decoration: none; white-space: nowrap; }
.language-switcher a:hover, .language-switcher a:focus-visible, .language-switcher a[aria-current="true"] { background: var(--surface-muted); }
.platform-header a, .platform-header summary, .platform-header button { color: var(--text); }
.ph-icon { display: inline-block; width: 1.25rem; height: 1.25rem; flex: 0 0 auto; background: currentColor; -webkit-mask: var(--ph-icon) center / contain no-repeat; mask: var(--ph-icon) center / contain no-repeat; }
.ph-icon--article { --ph-icon: url('/assets/icons/phosphor/regular/article.svg'); }
.ph-icon--bell { --ph-icon: url('/assets/icons/phosphor/regular/bell.svg'); }
.ph-icon--book-open { --ph-icon: url('/assets/icons/phosphor/regular/book-open.svg'); }
.ph-icon--circuitry { --ph-icon: url('/assets/icons/phosphor/regular/circuitry.svg'); }
.ph-icon--chat-circle { --ph-icon: url('/assets/icons/phosphor/regular/chat-circle.svg'); }
.ph-icon--chat-circle-text { --ph-icon: url('/assets/icons/phosphor/regular/chat-circle-text.svg'); }
.ph-icon--check-circle { --ph-icon: url('/assets/icons/phosphor/regular/check-circle.svg'); }
.ph-icon--cloud { --ph-icon: url('/assets/icons/phosphor/regular/cloud.svg'); }
.ph-icon--cookie { --ph-icon: url('/assets/icons/phosphor/regular/cookie.svg'); }
.ph-icon--heart { --ph-icon: url('/assets/icons/phosphor/regular/heart.svg'); }
.ph-icon--headphones { --ph-icon: url('/assets/icons/phosphor/regular/headphones.svg'); }
.ph-icon--info { --ph-icon: url('/assets/icons/phosphor/regular/info.svg'); }
.ph-icon--lock-key { --ph-icon: url('/assets/icons/phosphor/regular/lock-key.svg'); }
.ph-icon--magnifying-glass { --ph-icon: url('/assets/icons/phosphor/regular/magnifying-glass.svg'); }
.ph-icon--monitor { --ph-icon: url('/assets/icons/phosphor/regular/monitor.svg'); }
.ph-icon--microphone-stage { --ph-icon: url('/assets/icons/phosphor/regular/microphone-stage.svg'); }
.ph-icon--moon { --ph-icon: url('/assets/icons/phosphor/regular/moon.svg'); }
.ph-icon--music-notes { --ph-icon: url('/assets/icons/phosphor/regular/music-notes.svg'); }
.ph-icon--play-circle { --ph-icon: url('/assets/icons/phosphor/regular/play-circle.svg'); }
.ph-icon--play { --ph-icon: url('/assets/icons/phosphor/regular/play.svg'); }
.ph-icon--pencil-simple { --ph-icon: url('/assets/icons/phosphor/regular/pencil-simple.svg'); }
.ph-icon--dots-three { --ph-icon: url('/assets/icons/phosphor/regular/dots-three.svg'); }
.ph-icon--trash { --ph-icon: url('/assets/icons/phosphor/regular/trash.svg'); }
.ph-icon--envelope-simple { --ph-icon: url('/assets/icons/phosphor/regular/envelope-simple.svg'); }
.ph-icon--globe { --ph-icon: url('/assets/icons/phosphor/regular/globe.svg'); }
.ph-icon--link { --ph-icon: url('/assets/icons/phosphor/regular/link.svg'); }
.ph-icon--quotes { --ph-icon: url('/assets/icons/phosphor/regular/quotes.svg'); }
.ph-icon--image { --ph-icon: url('/assets/icons/phosphor/regular/image.svg'); }
.ph-icon--shield-check { --ph-icon: url('/assets/icons/phosphor/regular/shield-check.svg'); }
.ph-icon--spinner-gap { --ph-icon: url('/assets/icons/phosphor/regular/spinner-gap.svg'); }
.ph-icon--push-pin-simple { --ph-icon: url('/assets/icons/phosphor/regular/push-pin-simple.svg'); }
.ph-icon--push-pin-simple-fill { --ph-icon: url('/assets/icons/phosphor/fill/push-pin-simple-fill.svg'); }
.ph-icon--speaker-high { --ph-icon: url('/assets/icons/phosphor/regular/speaker-high.svg'); }
.ph-icon--sun { --ph-icon: url('/assets/icons/phosphor/regular/sun.svg'); }
.ph-icon--upload-simple { --ph-icon: url('/assets/icons/phosphor/regular/upload-simple.svg'); }
.ph-icon--users { --ph-icon: url('/assets/icons/phosphor/regular/users.svg'); }
.ph-icon--user { --ph-icon: url('/assets/icons/phosphor/regular/user.svg'); }
.ph-icon--waveform { --ph-icon: url('/assets/icons/phosphor/regular/waveform.svg'); }
.ph-icon--chart-bar { --ph-icon: url('/assets/icons/phosphor/regular/chart-bar.svg'); }
.ph-icon--users-three { --ph-icon: url('/assets/icons/phosphor/regular/users-three.svg'); }
.platform-icon-link { display: grid; width: 2.6rem; height: 2.6rem; place-items: center; border-radius: 50%; text-decoration: none; }
.platform-icon-link:hover { background: var(--surface-muted); }
.platform-theme-controls { display: flex; align-items: center; padding: .2rem; border: 1px solid var(--border); border-radius: 999px; background: var(--surface); }
.platform-theme-controls form { margin: 0; }
.platform-theme-controls button { min-height: 2.15rem; gap: .3rem; padding: .35rem .55rem; border: 0; border-radius: 999px; background: transparent; color: var(--text-muted); font-size: .75rem; font-weight: 650; }
.platform-theme-controls button:hover, .platform-theme-controls button[aria-current="true"] { background: var(--surface-muted); color: var(--text); }
.platform-theme-controls--guest { gap: .35rem; min-height: 2.55rem; padding-inline: .7rem; color: var(--text-muted); font-size: .78rem; }
.platform-login-link { min-height: 2.6rem; padding: .55rem 1rem; border: 1px solid var(--violet); border-radius: 999px; color: var(--violet) !important; }
.platform-login-link:hover { border-color: var(--blue); background: color-mix(in srgb,var(--violet) 7%,var(--surface)); }

.character-counter-field { position: relative; display: block; min-width: 0; }
.character-counter-field > input,
.character-counter-field > textarea { width: 100%; }
.character-counter-field > input { padding-inline-end: 5.25rem; }
.character-counter { position: absolute; right: var(--space-2); bottom: var(--space-1); color: var(--text-muted); font-size: .75rem; font-variant-numeric: tabular-nums; line-height: 1; pointer-events: none; }
.character-counter[data-state="near-limit"] { color: var(--warning); }
.character-counter[data-state="limit"] { color: var(--danger); }
.character-counter-field--textarea > textarea { padding-bottom: var(--space-4); }

.home-hero { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(18rem, .9fr); align-items: center; gap: var(--space-6); min-height: 29rem; padding: var(--space-6) 0; }
.home-hero-copy { max-width: 42rem; }
.home-eyebrow { margin: 0 0 var(--space-1); color: var(--violet); font-size: var(--font-small); font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.home-hero h1 { margin-bottom: var(--space-3); font-size: clamp(2.5rem, 5vw, 3.6rem); line-height: 1.08; letter-spacing: -.045em; }
.home-lead { max-width: 60ch; margin-bottom: var(--space-4); color: var(--text-muted); font-size: 1.1rem; }
.home-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.home-button { display: inline-flex; min-height: 3rem; align-items: center; justify-content: space-between; gap: var(--space-3); padding: .7rem 1.25rem; border: 1px solid var(--button-background); border-radius: var(--radius-small); font-weight: 700; text-decoration: none; }
.home-button--primary { background: var(--button-background); color: var(--white); }
.home-button--primary:hover { background: #7c3aed; }
.home-button--outline { background: transparent; color: var(--link); }
.home-button--outline:hover { background: color-mix(in srgb, var(--link) 10%, transparent); }
.home-mascot-slot { display: grid; min-width: 0; min-height: 24rem; place-items: end center; overflow: hidden; }
.home-mascot-slot > .web-image-picture { display: block; width: min(100%, 31rem); height: auto; max-height: 29rem; object-fit: contain; object-position: center bottom; }
.privacy-strip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: var(--space-3); border: 1px solid var(--border); border-radius: var(--radius-card); background: var(--surface); }
.privacy-strip article { display: flex; align-items: center; gap: var(--space-2); min-width: 0; padding: var(--space-3); }
.privacy-strip article > span { display: grid; width: 3rem; height: 3rem; flex: 0 0 auto; place-items: center; }
.home-custom-icon { display: block; width: 100%; height: 100%; object-fit: contain; }
.privacy-strip strong, .privacy-strip small { display: block; }
.privacy-strip small { margin-top: .15rem; color: var(--text-muted); line-height: 1.35; }
.home-areas { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-2); margin: var(--space-3) 0 var(--space-5); }
.home-area-card { display: flex; min-height: 18rem; flex-direction: column; padding: var(--space-3); border: 1px solid var(--border); border-radius: var(--radius-card); background: var(--surface); }
.home-area-icon { display: grid; width: 3.25rem; height: 3.25rem; place-items: center; }
.home-area-card h3 { margin: var(--space-2) 0 var(--space-1); font-size: 1.25rem; }
.home-area-card p { color: var(--text-muted); font-size: var(--font-small); }
.home-area-preview { display: block; width: 100%; height: auto; max-height: 11rem; margin: auto 0 var(--space-2); object-fit: contain; }
.home-area-card .home-area-action { display: flex; min-height: 2.75rem; align-items: center; justify-content: space-between; gap: var(--space-2); margin-top: auto; padding: .6rem .85rem; border: 1px solid currentColor; border-radius: var(--radius-small); background: transparent; font-weight: 700; text-decoration: none; }
.home-area-card .home-area-action:hover { background: color-mix(in srgb, currentColor 9%, transparent); }
.home-area-card--forum .home-area-action { color: var(--violet); }
.home-area-card--mastering .home-area-action { color: var(--green); }
.home-area-card--player .home-area-action { color: var(--red); }
.home-area-card--rules .home-area-action { color: var(--blue); }
.home-information-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--space-2); margin-bottom: var(--space-2); }
.home-latest, .home-processing { position: relative; min-height: 20rem; padding: var(--space-3); overflow: hidden; border: 1px solid var(--border); border-radius: var(--radius-card); background: var(--surface); }
.home-section-heading { display: flex; align-items: end; justify-content: space-between; gap: var(--space-3); }
.home-section-heading h2 { margin: 0; font-size: 1.35rem; }
.home-latest ol { margin: var(--space-3) 0 0; padding: 0; border-top: 1px solid var(--border); list-style: none; }
.home-latest li { border-bottom: 1px solid var(--border); }
.home-latest li:last-child { border-bottom: 0; }
.home-latest li a { display: grid; grid-template-columns: 1.75rem minmax(0,1fr) auto; align-items: center; gap: var(--space-2); padding: var(--space-2) 0; color: var(--text); text-decoration: none; }
.home-list-icon { display: block; width: 1.75rem; height: 1.75rem; object-fit: contain; }
.home-latest li a:hover strong { color: var(--link); }
.home-latest li span { color: var(--text-muted); font-size: var(--font-small); text-align: right; }
.home-processing .home-section-heading, .home-public-track-list, .home-processing .home-empty { position: relative; z-index: 1; }
.home-public-track-list, .home-processing .home-empty { max-width: calc(100% - 11rem); }
.home-public-track-list { display: grid; gap: 0; margin: var(--space-3) 0 0; padding: 0; list-style: none; }
.home-public-track-list li { display: grid; grid-template-columns: 1.75rem minmax(0,1fr); align-items: center; gap: var(--space-2); padding: var(--space-2) 0; border-top: 1px solid var(--border); }
.home-public-track-list li div { display: grid; gap: .15rem; }
.home-public-track-list li span { color: var(--text-muted); font-size: .78rem; }
.home-empty { margin-top: var(--space-4); color: var(--text-muted); }
.home-empty strong { color: var(--text); }
.home-empty p { margin: var(--space-1) 0; }
.home-processing-audine { position: absolute; right: -.75rem; bottom: 0; width: 13rem; max-height: 18rem; object-fit: contain; object-position: right bottom; }
.home-statistics { display: grid; grid-template-columns: repeat(auto-fit,minmax(10rem,1fr)); margin-bottom: var(--space-5); border: 1px solid var(--border); border-radius: var(--radius-card); background: var(--surface); }
.home-statistics article { display: flex; align-items: center; justify-content: center; gap: var(--space-2); min-height: 6rem; padding: var(--space-2); border-right: 1px solid var(--border); }
.home-statistics article:last-child { border-right: 0; }
.home-statistics .ph-icon { width: 2rem; height: 2rem; color: var(--violet); }
.home-statistics strong, .home-statistics span { display: block; }
.home-statistics strong { color: var(--heading); font-size: 1.35rem; font-variant-numeric: tabular-nums; }
.home-statistics span { color: var(--text-muted); font-size: var(--font-small); }

.platform-footer { margin-top: var(--space-6); border-top: 1px solid var(--border); background: var(--surface); color: var(--text-muted); }
.platform-footer nav, .platform-footer p { width: min(100% - 2rem, var(--content-width)); margin-inline: auto; }
.platform-footer nav { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-4); padding: var(--space-4) 0; }
.platform-footer a { color: var(--text); font-size: var(--font-small); }
.platform-footer p { padding: 0 0 var(--space-4); font-size: .8rem; }

.forum, .topic, .post, .form-card, .error-page, .search-panel, .search-result, .empty,
.admin-statistics article, .admin-table-wrap, .remembered-account-card, .external-link-card {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radius-small);
}
.forum { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--space-3); margin: 0; padding: .9rem 0; border-width: 1px 0 0; background: transparent; }
.forum:last-child { border-bottom-width: 1px; }
.forum h2 { margin: 0 0 var(--space-1); font-size: 1.25rem; }
.forum h2 a { text-decoration: none; }
.forum h2 a:hover { text-decoration: underline; }
.forum p, .statistics, .topic-meta, .topic-last { color: var(--text-muted); }
.forum p { margin-bottom: 0; font-size: var(--font-small); line-height: 1.4; }
.statistics { display: grid; min-width: 10rem; grid-template-columns: repeat(2, auto); align-content: start; gap: var(--space-3); font-size: var(--font-small); text-align: right; }

.topic-list { margin-top: var(--space-4); border-top: 1px solid var(--border-strong); }
.topic { display: grid; grid-template-columns: minmax(0, 1fr) minmax(13rem, auto); gap: var(--space-3); padding: .65rem 0; border-width: 0 0 1px; background: transparent; }
.topic > div { min-width: 0; }
.topic a { overflow-wrap: anywhere; font-size: 1.05rem; }
.topic-meta, .topic-last { margin-top: .15rem; font-size: var(--font-small); line-height: 1.4; }
.topic-last { margin-top: 0; text-align: right; }

/* Public forum directory and topic lists */
.forum-overview-page main, .forum-topics-page main { width: min(100% - 2rem, 78rem); }
.forum-hero { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(21rem,.95fr); align-items: stretch; gap: var(--space-5); margin-bottom: var(--space-4); }
.forum-hero-copy { display: flex; min-height: 18rem; flex-direction: column; justify-content: center; }
.forum-title { display: flex; align-items: center; gap: var(--space-2); }
.forum-title > .web-image-picture { width: 3.75rem; height: 3.75rem; flex: 0 0 auto; object-fit: contain; }
.forum-title h1 { margin: 0; font-size: clamp(2.35rem,5vw,3.4rem); letter-spacing: -.045em; }
.forum-hero-copy .page-lead { margin: var(--space-2) 0 0; }
.forum-language-notice { margin: var(--space-3) 0 0; font-size: var(--font-small); line-height: 1.5; }
.forum-tip { position: relative; display: grid; min-height: 18rem; grid-template-columns: minmax(0,1fr) 17rem; align-items: center; gap: var(--space-2); padding: var(--space-3); overflow: hidden; border: 1px solid var(--border); border-radius: var(--radius-card); background: var(--surface); }
.forum-tip > div { position: relative; z-index: 1; }
.forum-tip p:not(.home-eyebrow) { color: var(--text-muted); font-size: var(--font-small); }
.forum-tip > .web-image-picture { align-self: end; width: 18.5rem; height: 18.5rem; margin: 0 -1.5rem -1.5rem; object-fit: contain; object-position: center bottom; }
.forum-outline-action { display: inline-flex; min-height: 2.5rem; align-items: center; padding: .5rem .8rem; border: 1px solid var(--link); border-radius: var(--radius-small); background: transparent; font-size: var(--font-small); font-weight: 700; text-decoration: none; }
.forum-overview-search { display: grid; grid-template-columns: minmax(12rem,.35fr) minmax(0,1fr); align-items: end; gap: var(--space-3); margin: 0 0 var(--space-4); padding: var(--space-3); border: 1px solid var(--border); border-radius: var(--radius-card); background: var(--surface); }
.forum-overview-search h2 { margin: 0; }
.forum-overview-search > div > p { margin: .25rem 0 0; color: var(--text-muted); font-size: var(--font-small); }
.forum-overview-search .forum-search { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: stretch; gap: var(--space-1); }
.forum-search { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: stretch; gap: var(--space-1); }
.forum-search input[type="search"] { height: 3rem; min-height: 3rem; margin: 0; background: var(--surface); }
.forum-search button { min-height: 3rem; padding: .55rem .9rem; white-space: nowrap; }
.forum-overview-search .search-status, .forum-overview-search .search-results { grid-column: 1 / -1; }
.forum-overview-layout { display: grid; grid-template-columns: minmax(0,1fr) 17rem; align-items: start; gap: var(--space-3); }
.forum-directory { min-width: 0; }
.forum-directory-heading { display: grid; grid-template-columns: minmax(0,1fr) 5.5rem 5.5rem 9rem; align-items: end; gap: var(--space-2); padding: 0 var(--space-2) var(--space-1); color: var(--text-muted); font-size: .78rem; }
.forum-directory-heading h2 { margin: 0; color: var(--heading); font-size: 1.35rem; }
#forenbereiche { overflow: hidden; border: 1px solid var(--border); border-radius: var(--radius-card); background: var(--surface); }
.forum-overview-page .forum { display: grid; grid-template-columns: 2.75rem minmax(0,1fr) 5.5rem 5.5rem 9rem; align-items: center; gap: var(--space-2); padding: var(--space-2); border: 0; border-bottom: 1px solid var(--border); }
.forum-overview-page .forum:last-child { border-bottom: 0; }
.forum-row-icon { display: grid; width: 2.75rem; height: 2.75rem; place-items: center; border-radius: 50%; background: color-mix(in srgb,var(--violet) 11%,var(--surface)); color: var(--violet); }
.forum-row-icon .ph-icon { width: 1.4rem; height: 1.4rem; }
.forum-row-copy { min-width: 0; }
.forum-row-copy h3 { margin: 0 0 .2rem; font-size: 1rem; }
.forum-row-copy h3 a { color: var(--heading); text-decoration: none; }
.forum-row-copy h3 a:hover { color: var(--link); }
.forum-overview-page .forum-row-copy p { margin: 0; color: var(--text-muted); font-size: .78rem; }
.forum-count { color: var(--heading); font-size: .9rem; font-variant-numeric: tabular-nums; }
.forum-count span { display: none; color: var(--text-muted); font-size: .72rem; font-weight: 400; }
.forum-last { display: grid; gap: .15rem; color: var(--text-muted); font-size: .75rem; line-height: 1.3; }
.forum-last time { color: var(--text); }
.forum-overview-aside { display: grid; gap: var(--space-2); }
.forum-side-card { padding: var(--space-3); border: 1px solid var(--border); border-radius: var(--radius-card); background: var(--surface); }
.forum-side-card h2 { margin: 0 0 var(--space-1); font-size: 1.1rem; }
.forum-side-card p, .forum-side-card li { color: var(--text-muted); font-size: var(--font-small); }
.forum-side-card ul { padding-left: 1.2rem; }
.forum-side-card summary { color: var(--link); cursor: pointer; font-weight: 700; }
.forum-breadcrumbs { display: flex; flex-wrap: wrap; gap: var(--space-1); margin-bottom: var(--space-3); color: var(--text-muted); font-size: var(--font-small); }
.forum-breadcrumbs a { text-decoration: none; }
.forum-list-hero { display: flex; align-items: end; justify-content: space-between; gap: var(--space-4); margin-bottom: var(--space-4); }
.forum-list-hero .page-lead { margin: var(--space-1) 0; }
.forum-topic-total { margin: 0; color: var(--text-muted); font-size: var(--font-small); }
.forum-new-topic { display: inline-flex; min-height: 2.75rem; flex: 0 0 auto; align-items: center; padding: .6rem 1rem; border: 1px solid var(--button-background); border-radius: var(--radius-small); background: var(--button-background); color: var(--button-text); font-weight: 700; text-decoration: none; }
.forum-new-topic:hover { background: var(--button-hover); }
.forum-topics-page .topic-list { margin-top: 0; overflow: hidden; border: 1px solid var(--border); border-radius: var(--radius-card); background: var(--surface); }
.topic-list-heading { display: grid; grid-template-columns: minmax(0,1fr) 5.5rem 12rem; gap: var(--space-2); padding: .65rem var(--space-2) .65rem calc(var(--space-2) + 1.75rem + var(--space-2)); border-bottom: 1px solid var(--border); color: var(--text-muted); font-size: .78rem; }
.forum-topics-page .topic { display: grid; grid-template-columns: 1.75rem minmax(0,1fr) 5.5rem 12rem; align-items: center; gap: var(--space-2); padding: var(--space-2); border: 0; border-bottom: 1px solid var(--border); }
.forum-topics-page .topic:last-child { border-bottom: 0; }
.topic-row-icon { width: 1.75rem; height: 1.75rem; object-fit: contain; }
.topic-copy { min-width: 0; }
.topic-sticky-label { display: inline-flex; align-items: center; gap: .25rem; margin-left: var(--space-1); color: var(--text-muted); font-size: .72rem; font-weight: 600; line-height: 1.4; white-space: nowrap; }
.topic-sticky-label .ph-icon { width: .85rem; height: .85rem; }
.forum-topics-page .topic-copy > strong a { color: var(--heading); font-size: 1rem; text-decoration: none; }
.forum-topics-page .topic-copy > strong a:hover { color: var(--link); }
.topic-post-count { color: var(--heading); font-size: .9rem; font-variant-numeric: tabular-nums; }
.topic-post-count span { display: none; color: var(--text-muted); font-size: .72rem; font-weight: 400; }
.forum-topics-page .topic-last { font-size: .78rem; }
.forum-topics-page .pagination { margin-block: var(--space-3); }

.topic-detail-page main { width: min(100% - 2rem,78rem); }
.topic-detail-hero { display: flex; align-items: end; justify-content: space-between; gap: var(--space-4); margin-bottom: var(--space-4); }
.topic-detail-hero .forum-title { align-items: flex-start; }
.topic-detail-hero .forum-title > .web-image-picture { width: 3.5rem; height: 3.5rem; margin-top: .15rem; }
.topic-detail-hero .forum-title h1 { max-width: 24ch; font-size: clamp(2.1rem,4.3vw,3.15rem); }
.topic-detail-meta { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: var(--space-2); margin: var(--space-2) 0 0 4.5rem; color: var(--text-muted); font-size: var(--font-small); }
.topic-detail-meta-copy { display: flex; min-width: 0; flex-wrap: wrap; gap: .35rem .65rem; }
.topic-pin-action { flex: 0 0 auto; margin: 0 0 0 auto; }
.topic-pin-action button { display: grid; width: 2.25rem; min-height: 2.25rem; padding: 0; place-items: center; border: 0; border-radius: 50%; background: transparent; color: var(--text-muted); }
.topic-pin-action button:hover { background: var(--surface-muted); color: var(--text); }
.topic-pin-action.is-active button { color: var(--violet); }
.topic-pin-action .ph-icon { width: 1.2rem; height: 1.2rem; }
.topic-detail-hero .topic-subscription { flex: 0 0 auto; margin: 0; }
.topic-detail-hero .forum-outline-action { background: transparent; color: var(--link); }
.topic-detail-layout { display: grid; grid-template-columns: minmax(0,1fr) 20rem; align-items: start; gap: var(--space-3); }
.topic-post-stream { min-width: 0; }
.topic-post-stream .post { display: grid; grid-template-columns: 10.5rem minmax(0,1fr); margin: 0 0 var(--space-2); padding: 0; overflow: hidden; border: 1px solid var(--border); border-radius: var(--radius-card); background: var(--surface); }
.topic-post-stream .reply-post { margin-left: 0; }
.post-author { display: flex; min-width: 0; flex-direction: column; align-items: center; padding: var(--space-2) .75rem; border-right: 1px solid var(--border); background: color-mix(in srgb,var(--surface-muted) 55%,var(--surface)); text-align: center; }
.post-author-avatar { display: grid; width: 3.5rem; height: 3.5rem; place-items: center; margin-bottom: .35rem; border: 1px solid color-mix(in srgb,var(--violet) 28%,var(--border)); border-radius: 50%; background: color-mix(in srgb,var(--violet) 11%,var(--surface)); color: var(--violet); font-size: 1rem; font-weight: 800; letter-spacing: .03em; }
.post-author-avatar.is-guest { color: var(--text-muted); background: var(--surface); }
.post-author-avatar .ph-icon { width: 1.75rem; height: 1.75rem; }
.post-author > strong { max-width: 100%; overflow-wrap: anywhere; color: var(--link); }
.post-author-status { margin-top: .15rem; color: var(--text-muted); font-size: .75rem; }
.post-author dl { width: 100%; margin: .65rem 0 0; color: var(--text-muted); font-size: .72rem; }
.post-author dl div { display: flex; justify-content: space-between; gap: .35rem; padding-top: .2rem; }
.post-author dt, .post-author dd { margin: 0; }
.post-author dd { color: var(--text); font-variant-numeric: tabular-nums; }
.post-content { display: flex; min-width: 0; flex-direction: column; padding: var(--space-2); }
.post-content > header { display: flex; align-items: center; gap: var(--space-1); padding-bottom: .5rem; border-bottom: 1px solid var(--border); color: var(--text-muted); font-size: .75rem; line-height: 1.25; }
.post-content > header .post-kind { margin-left: auto; padding: .12rem .4rem; border-radius: 999px; background: color-mix(in srgb,var(--violet) 10%,var(--surface)); color: var(--link); font-size: .7rem; font-weight: 700; }
.post-content .post-anchor { text-decoration: none; }
.topic-post-stream .post-body { min-height: 0; padding: .75rem 0; color: var(--text); font-size: .95rem; line-height: 1.42; }
.topic-post-stream .post-body p { margin-bottom: .65rem; }
.topic-post-stream .post-body ul, .topic-post-stream .post-body ol, .topic-post-stream .post-body pre { margin-top: .7rem; margin-bottom: .7rem; }
.topic-post-stream .post-body pre { padding: .75rem; line-height: 1.4; }
.post-actions { display: flex; justify-content: flex-end; gap: var(--space-2); margin-top: auto; padding-top: .5rem; border-top: 1px solid var(--border); font-size: .7rem; line-height: 1.25; }
.post-actions .post-report { margin: 0; padding: 0; border: 0; color: var(--text-muted); }
.post-quote-action,.post-report { font-family: inherit; font-size: inherit; font-weight: 700; text-decoration: none; }
.post-message-action { color: var(--link); font-weight: 700; text-decoration: none; }
.messages-page { width: min(100% - 2rem, 52rem); }
.messages-heading { margin-bottom: var(--space-3); }
.messages-heading h1 { margin-bottom: var(--space-1); }
.messages-heading p, .messages-privacy { color: var(--text-muted); }
.messages-inbox, .messages-conversation { border: 1px solid var(--border); border-radius: var(--radius-card); background: var(--surface); }
.messages-inbox h2, .messages-conversation > header { margin: 0; padding: var(--space-2); border-bottom: 1px solid var(--border); }
.message-conversation-header { display: flex; align-items: baseline; flex-wrap: wrap; gap: var(--space-1); }
.message-conversation-header h2 { display: flex; min-width: 0; align-items: baseline; flex-wrap: wrap; gap: .35rem; margin: 0; font-size: 1rem; line-height: 1.4; }
.message-conversation-header h2 span { color: var(--text-muted); font-weight: 500; }
.message-conversation-header h2 strong { color: var(--text); font-size: 1.15rem; overflow-wrap: anywhere; }
.message-conversation-header form { margin: 0; }
.message-block-action { min-height: 0; padding: 0; font-size: .78rem; }
.messages-inbox ol, .message-stream { margin: 0; padding: 0; list-style: none; }
.messages-inbox li { border-bottom: 1px solid var(--border); }
.messages-inbox li:last-child { border: 0; }
.messages-inbox a { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .2rem var(--space-2); padding: var(--space-2); color: var(--text); text-decoration: none; }
.messages-inbox li.is-unread a { border-left: 3px solid var(--link); background: var(--surface-muted); }
.messages-inbox span { grid-column: 1; overflow: hidden; color: var(--text-muted); font-size: var(--font-small); text-overflow: ellipsis; white-space: nowrap; }
.messages-inbox time, .message-stream time { color: var(--text-muted); font-size: .75rem; }
.message-stream { display: grid; gap: var(--space-2); padding: var(--space-2); }
.message-stream li { position: relative; max-width: 85%; padding: var(--space-2); border: 1px solid var(--border); border-radius: var(--radius-small); background: var(--surface-muted); }
.message-stream li.is-own { justify-self: end; background: color-mix(in srgb,var(--violet) 10%,var(--surface)); }
.message-stream li.is-own { padding-bottom: calc(var(--space-2) + 1.25rem); }
.message-stream p { margin: .3rem 0; overflow-wrap: anywhere; }
.message-delete-form { position: absolute; right: .35rem; bottom: .25rem; margin: 0; }
.message-delete-action { display: grid; width: 1.65rem; height: 1.65rem; min-height: 0; place-items: center; padding: 0; border: 0; border-radius: var(--radius-small); background: transparent; color: var(--danger); }
.message-delete-action .ph-icon { width: 1rem; height: 1rem; color: currentColor; }
.message-delete-action:hover, .message-delete-action:focus-visible { border: 0; background: color-mix(in srgb,var(--danger) 12%,transparent); color: var(--danger); }
.message-conversation-state { margin: 0; padding: var(--space-2); border-top: 1px solid var(--border); color: var(--text-muted); }
.message-compose { display: grid; gap: var(--space-1); padding: var(--space-2); border-top: 1px solid var(--border); }
.message-compose textarea { width: 100%; box-sizing: border-box; margin-top: .4rem; }
.message-compose button { justify-self: start; }
.messages-privacy { margin-top: var(--space-3); font-size: var(--font-small); }
.messages-error { padding: var(--space-2); border: 1px solid var(--danger); border-radius: var(--radius-small); background: var(--danger-surface); }
.message-confirm-dialog { width: min(30rem,calc(100% - 2rem)); padding: 0; border: 1px solid var(--border-strong); border-radius: var(--radius-card); background: var(--surface); color: var(--text); }
.message-confirm-dialog::backdrop { background: rgb(15 23 42 / .62); }
.message-confirm-dialog form { display: grid; gap: var(--space-2); padding: var(--space-3); }
.message-confirm-dialog h2, .message-confirm-dialog p { margin: 0; }
.message-confirm-dialog h2 { font-size: 1.25rem; }
.message-confirm-dialog p, .message-confirm-dialog .checkbox-label { color: var(--text-muted); }
.message-confirm-actions { display: flex; justify-content: flex-end; gap: var(--space-1); margin-top: var(--space-1); }
.message-confirm-destructive:not(:disabled) { border-color: var(--danger); background: var(--danger); color: var(--white); }
@media(max-width:32rem){.message-conversation-header{align-items:flex-start;flex-direction:column}.message-confirm-actions{flex-direction:column-reverse}.message-confirm-actions button{width:100%}}
.blocked-user-list { display: grid; gap: var(--space-1); margin: 0; padding: 0; list-style: none; }
.blocked-user-list li { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); padding: var(--space-1) 0; border-bottom: 1px solid var(--border); }
.message-report-snapshot { margin: var(--space-1) 0; padding: var(--space-2); border: 1px solid var(--border); border-radius: var(--radius-small); background: var(--surface-muted); }
.message-report-snapshot.is-reported { border-color: var(--danger); background: var(--danger-surface); }
.topic-detail-aside { position: sticky; top: var(--space-2); display: grid; gap: var(--space-2); }
.topic-detail-aside .forum-side-card { padding: var(--space-2); }
.topic-detail-aside .forum-side-card h2 { display: flex; align-items: center; gap: var(--space-1); }
.topic-detail-aside .forum-side-card h2 .ph-icon { width: 1.15rem; height: 1.15rem; color: var(--violet); }
.topic-facts { display: grid; gap: var(--space-1); margin: 0; }
.topic-facts div { display: flex; justify-content: space-between; gap: var(--space-2); color: var(--text-muted); font-size: var(--font-small); }
.topic-facts dt, .topic-facts dd { margin: 0; }
.topic-facts dd { max-width: 60%; color: var(--text); text-align: right; overflow-wrap: anywhere; }
.topic-related-list { display: grid; gap: .7rem; margin: 0 0 var(--space-2); padding: 0; list-style: none; }
.topic-related-list li { display: grid; gap: .1rem; }
.topic-related-list a { color: var(--heading); font-size: .86rem; font-weight: 700; line-height: 1.3; text-decoration: none; }
.topic-related-list a:hover { color: var(--link); }
.topic-related-list span { color: var(--text-muted); font-size: .72rem; line-height: 1.35; }
.topic-sidebar-more { display: inline-flex; font-size: .78rem; font-weight: 700; text-decoration: none; }
.topic-rules-card ul { display: grid; gap: .45rem; margin: 0 0 var(--space-2); padding: 0; list-style: none; }
.topic-rules-card li { position: relative; padding-left: 1.25rem; color: var(--text-muted); font-size: .8rem; }
.topic-rules-card li::before { position: absolute; top: .25rem; left: 0; width: .8rem; height: .8rem; border-radius: 50%; background: var(--green); color: var(--white); content: '✓'; font-size: .6rem; font-weight: 800; line-height: .8rem; text-align: center; }
.topic-audine-tip { position: relative; display: grid; min-height: 13rem; align-items: center; padding: var(--space-3) 7.5rem var(--space-3) var(--space-3); overflow: hidden; border: 1px solid color-mix(in srgb,var(--violet) 55%,var(--border)); border-radius: var(--radius-card); background: color-mix(in srgb,var(--violet) 5%,var(--surface)); }
.topic-audine-tip > div { position: relative; z-index: 1; }
.topic-audine-tip p:not(.home-eyebrow) { color: var(--text-muted); font-size: .82rem; }
.topic-audine-tip > .web-image-picture { position: absolute; right: -1.4rem; bottom: -1.2rem; width: 10.5rem; height: 12.5rem; object-fit: contain; object-position: center bottom; }
.topic-reply-action { display: inline-flex; min-height: 2.75rem; align-items: center; padding: .6rem 1rem; border: 1px solid var(--button-background); border-radius: var(--radius-small); background: var(--button-background); color: var(--button-text); font-weight: 700; text-decoration: none; }
.topic-reply-action:hover { background: var(--button-hover); }
.post-format-toolbar { display: flex; gap: var(--space-1); margin: 0; padding: .35rem var(--space-1); border: 1px solid var(--border-strong); border-top: 0; border-radius: 0 0 var(--radius-small) var(--radius-small); background: var(--surface-muted); }
.post-format-toolbar button { display: grid; width: 2.25rem; min-height: 2.25rem; place-items: center; padding: 0; border: 1px solid transparent; border-radius: var(--radius-small); background: transparent; color: var(--text); }
.post-format-toolbar button:hover { border-color: var(--border); background: var(--surface); }
.post-format-toolbar .has-toolbar-tooltip{position:relative}.forum-toolbar-tooltip{position:absolute;z-index:4;bottom:calc(100% + .5rem);left:50%;display:grid;width:max-content;max-width:min(18rem,80vw);gap:.15rem;padding:.45rem .6rem;transform:translate(-50%,.25rem);border:1px solid var(--border);border-radius:var(--radius-small);background:var(--surface);color:var(--text);font-size:var(--font-small);font-weight:400;line-height:1.35;text-align:left;opacity:0;pointer-events:none;transition:opacity .12s ease,transform .12s ease}.forum-toolbar-tooltip strong{font-weight:700}.post-format-toolbar .has-toolbar-tooltip:hover .forum-toolbar-tooltip,.post-format-toolbar .has-toolbar-tooltip:focus-visible .forum-toolbar-tooltip{transform:translate(-50%,0);opacity:1}
.post-format-toolbar .has-toolbar-tooltip:first-child .forum-toolbar-tooltip{left:0;transform:translate(0,.25rem)}.post-format-toolbar .has-toolbar-tooltip:first-child:hover .forum-toolbar-tooltip,.post-format-toolbar .has-toolbar-tooltip:first-child:focus-visible .forum-toolbar-tooltip{transform:translate(0,0)}
.topic-reply-card { width: calc(100% - 23rem); margin-top: var(--space-3); padding: var(--space-2); }
.topic-reply-header { display: flex; align-items: center; gap: var(--space-2); margin-bottom: var(--space-2); }
.topic-reply-header h3 { margin: 0; font-size: 1.1rem; }
.topic-reply-header p { margin: .15rem 0 0; color: var(--text-muted); font-size: .78rem; }
.topic-reply-avatar { display: grid; width: 2.75rem; height: 2.75rem; flex: 0 0 auto; place-items: center; border: 1px solid color-mix(in srgb,var(--violet) 28%,var(--border)); border-radius: 50%; background: color-mix(in srgb,var(--violet) 11%,var(--surface)); color: var(--violet); font-size: .82rem; font-weight: 800; }
.topic-reply-avatar.is-guest { background: var(--surface-muted); color: var(--text-muted); }
.topic-reply-card form > input:not([type="hidden"]) { margin-bottom: var(--space-1); }
.topic-reply-card form > label:not(.checkbox-label):not(.visually-hidden) { margin: .75rem 0 .35rem; font-size: .85rem; }
.topic-reply-card textarea { min-height: 6.5rem; margin: 0; border-radius: var(--radius-small) var(--radius-small) 0 0; line-height: 1.4; }
.forum-editor { min-width: 0; }
.character-counter-field + .forum-editor { margin-top: var(--space-1); }
.forum-editor-viewport { --forum-editor-border-inline: 1px; --forum-editor-padding-inline: .75rem; display: grid; min-width: 0; }
.forum-editor-viewport > textarea,
.forum-editor-viewport > .character-counter-field,
.forum-editor-viewport > .forum-editor-preview { grid-area: 1 / 1; width: 100%; }
.forum-editor-viewport textarea,
.forum-editor-viewport > .forum-editor-preview { box-sizing: border-box; padding: .65rem var(--forum-editor-padding-inline) var(--space-4); border-inline-width: var(--forum-editor-border-inline); font-family: inherit; font-size: inherit; font-weight: inherit; line-height: 1.4; letter-spacing: normal; word-spacing: normal; }
.forum-editor-viewport > [hidden] { display: none !important; }
.forum-editor-preview { min-height: 6.5rem; margin: 0; overflow: auto; border: 1px solid var(--border-strong); border-radius: var(--radius-small) var(--radius-small) 0 0; background: var(--surface); color: var(--text); }
.forum-editor-preview > :first-child { margin-block-start: 0; margin-inline: 0; }
.forum-editor-preview > :last-child { margin-bottom: 0; }
.forum-editor-preview > p { margin: 0; }
.forum-editor.is-previewing .post-format-toolbar { opacity: .55; }
.topic-preview-button.is-pressed { transform: translateY(1px); box-shadow: inset 0 2px 4px color-mix(in srgb,var(--text) 18%,transparent); }
.topic-reply-options { margin-top: .55rem; }
.forum-image-picker>input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.forum-image-picker{margin-top:var(--space-2)}.forum-image-picker>p{margin:.35rem 0;color:var(--text-muted);font-size:var(--font-small)}.forum-image-previews{display:flex;flex-wrap:wrap;gap:var(--space-1)}.forum-image-previews figure{width:7rem;margin:0}.forum-image-previews img{width:7rem;height:5rem;object-fit:cover;border:1px solid var(--border);border-radius:var(--radius-small)}.forum-image-previews figcaption{overflow:hidden;color:var(--text-muted);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.forum-image-previews button{padding:.2rem 0;border:0;background:transparent;color:var(--red);font-size:.72rem}.post-attachment{margin:var(--space-2) 0}.post-attachment img{display:block;max-width:100%;height:auto;border:1px solid var(--border);border-radius:var(--radius-small)}.post-attachment figcaption,.historical-attachment-unavailable{color:var(--text-muted);font-size:var(--font-small)}.historical-attachment-unavailable{display:inline-block;padding:.45rem .65rem;border-left:2px solid var(--border);background:var(--surface-muted)}
.topic-reply-options .checkbox-label { margin: 0; color: var(--text-muted); font-size: .78rem; }
.topic-reply-card form > .checkbox-label { margin: .65rem 0 0; color: var(--text-muted); font-size: .78rem; }
.topic-reply-actions { justify-content: flex-end; gap: var(--space-1); margin-top: var(--space-2); }
.topic-reply-actions button { min-width: 7rem; min-height: 2.5rem; padding: .5rem .85rem; }
.topic-reply-actions .topic-preview-button { border-color: var(--violet); background: transparent; color: var(--violet); }
.topic-reply-actions .topic-preview-button:hover { background: color-mix(in srgb,var(--violet) 8%,var(--surface)); }
.topic-reply-actions .topic-submit-button { border-color: var(--violet); background: var(--violet); color: var(--white); }
.topic-reply-actions .topic-submit-button:hover { background: var(--button-hover); }
.topic-reply-actions .topic-submit-button:disabled,
.topic-reply-actions .topic-submit-button:disabled:hover { border-color: var(--border); background: var(--button-disabled); color: var(--button-disabled-text); cursor: default; }

.post { margin-top: var(--space-4); padding: var(--space-4); border-width: 1px 0 0; background: transparent; }
.post > header { display: flex; justify-content: space-between; gap: var(--space-3); padding-bottom: var(--space-2); border-bottom: 1px solid var(--border); color: var(--text-muted); font-size: var(--font-small); }
.post > header > div { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.post-kind, .search-kind, .admin-kicker { color: var(--text-muted); font-size: .75rem; font-weight: 780; letter-spacing: .09em; text-transform: uppercase; }
.start-post { border-top-color: var(--text); }
.reply-post { margin-left: var(--space-4); padding-left: var(--space-4); border-left: 2px solid var(--border); }
.post-body { padding-top: var(--space-4); overflow-wrap: anywhere; word-break: break-word; }
.post-body > :last-child { margin-bottom: 0; }
.post-report { margin: var(--space-4) 0 0; text-align: right; }
.post-anchor { color: inherit; font-weight: 650; text-decoration: none; }
.post:target { border-top-color: var(--text); outline: 2px solid var(--border-strong); outline-offset: 3px; }

.form-card, .error-page, .search-panel { margin-top: var(--space-4); padding: clamp(1rem, 4vw, 2rem); }
.error-document{min-height:100vh}.error-header{width:min(100% - 2rem,var(--content-width));margin:0 auto;padding:var(--space-3) 0}.error-page-main{display:grid;min-height:calc(100vh - 7rem);align-items:center;margin-top:0}.error-page--custom{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(15rem,.85fr);align-items:center;gap:var(--space-4);margin:0;padding:clamp(1.5rem,5vw,3rem);border-radius:var(--radius-card);overflow:hidden}.error-page-code{margin:0 0 var(--space-1);color:var(--violet);font-size:clamp(4.5rem,13vw,8.5rem);font-weight:850;letter-spacing:-.07em;line-height:.85;font-variant-numeric:tabular-nums}.error-page--custom h1{max-width:18ch;margin:var(--space-3) 0 var(--space-2);font-size:clamp(2rem,4vw,3.25rem)}.error-page-description{max-width:54ch;margin-bottom:var(--space-2);color:var(--text-muted);font-size:1.08rem}.error-page-details{max-width:54ch;margin:0 0 var(--space-3);padding-left:1.2rem;color:var(--text-muted)}.error-page-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4)}.error-action{display:inline-flex;min-height:2.8rem;align-items:center;justify-content:center;padding:.65rem 1rem;border:1px solid var(--border-strong);border-radius:var(--radius-small);color:var(--text);font-weight:680;text-decoration:none}.error-action:hover{background:var(--surface-muted)}.error-action--primary{border-color:var(--button-background);background:var(--button-background);color:var(--button-text)}.error-action--primary:hover{background:var(--button-hover)}.error-action--quiet{border-color:transparent;color:var(--link)}.error-page-visual{display:grid;align-self:end;place-items:end center}.error-page-visual > .web-image-picture{width:min(100%,22rem);max-height:32rem;object-fit:contain;object-position:center bottom}
.form-card > :first-child, .search-panel > :first-child { margin-top: 0; }
form label { display: block; margin: var(--space-3) 0 var(--space-1); font-weight: 680; }
input, textarea, select {
    display: block;
    width: 100%;
    min-height: 2.9rem;
    margin-top: var(--space-1);
    padding: .65rem .75rem;
    border: 1px solid var(--border-strong);
    border-radius: var(--radius-small);
    background: var(--surface);
    color: var(--text);
    font: inherit;
}
textarea { min-height: 9rem; resize: vertical; }
select { cursor: pointer; }
.checkbox-label { display: flex; align-items: flex-start; gap: var(--space-2); font-weight: 520; }
.checkbox-label input { width: 1.2rem; min-height: 1.2rem; flex: 0 0 auto; margin-top: .2rem; }
button, .external-link-button {
    display: inline-flex;
    min-height: 2.8rem;
    align-items: center;
    justify-content: center;
    padding: .65rem 1rem;
    border: 1px solid var(--button-background);
    border-radius: var(--radius-small);
    background: var(--button-background);
    color: var(--button-text);
    font: inherit;
    font-weight: 680;
    line-height: 1.25;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
}
button:hover, .external-link-button:hover { background: var(--button-hover); }
button:disabled { border-color: var(--border); background: var(--button-disabled); color: var(--button-disabled-text); cursor: not-allowed; }
.text-button { min-height: 2.75rem; padding: .25rem 0; border: 0; background: transparent; color: var(--link); text-decoration: underline; }
.text-button:hover { background: transparent; text-decoration-thickness: .14em; }
.danger-button { border-color: var(--danger); background: var(--danger); }
.admin-danger-zone { margin-top: 1.5rem; padding-top: 1rem; border-top: 2px solid var(--danger); }
.admin-danger-zone .danger { display: inline-block; padding: .65rem .9rem; border: 1px solid var(--danger); border-radius: .45rem; color: var(--danger); font-weight: 700; }
.admin-danger-zone button.danger { color: #fff; background: var(--danger); }
.form-actions, .account-nav, .remembered-account-links { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2) var(--space-3); }
.form-actions button:first-child { border-color: var(--border-strong); background: var(--surface); color: var(--text); }
.account-nav { margin-bottom: var(--space-4); padding-bottom: var(--space-3); border-bottom: 1px solid var(--border); }
.account-nav form { margin: 0; }
.muted { color: var(--text-muted); }
.account-settings-page { max-width: var(--reading-width); }
.account-settings { border-block: 1px solid var(--border); }
.account-settings-page{display:flex;flex-direction:column}.account-danger-zone{order:99}
.account-danger-zone{margin:var(--space-6) 0;padding-top:var(--space-3);border-top:1px solid var(--border)}.account-danger-zone h2{font-size:var(--font-medium)}.danger-outline-button{display:inline-flex;min-height:2.75rem;align-items:center;padding:.6rem .9rem;border:1px solid var(--danger);border-radius:var(--radius-small);color:var(--danger);font-weight:700;text-decoration:none}.danger-outline-button:hover{background:var(--danger-surface)}.account-deletion-page{max-width:var(--reading-width)}.account-deletion-card form{display:grid;gap:var(--space-3)}.account-deletion-card .danger-button{justify-self:start}
.account-setting { border-bottom: 1px solid var(--border); }
.account-setting:last-child { border-bottom: 0; }
.account-setting > summary { display: grid; grid-template-columns: minmax(7rem,.4fr) minmax(0,1fr) auto; align-items: center; gap: var(--space-2); padding: var(--space-2) 0; color: var(--text); cursor: pointer; list-style: none; }
.account-setting > summary::-webkit-details-marker { display: none; }
.account-setting > summary strong { overflow-wrap: anywhere; }
.account-setting > summary small { display: block; color: var(--text-muted); font-weight: 400; }
.account-edit { display: inline-grid; width: 2rem; height: 2rem; place-items: center; border: 1px solid var(--border); border-radius: 50%; color: var(--text); }
.account-setting[open] .account-edit { background: var(--surface-muted); }
.account-setting > form { max-width: 28rem; margin: 0 0 var(--space-2) min(10rem,30%); padding: var(--space-2); border: 1px solid var(--border); background: var(--surface); }
.account-notification-settings { margin-top: var(--space-3); padding-block: var(--space-2); }
.account-notification-settings h2 { margin: 0 0 var(--space-2); font-size: 1.25rem; }
.account-notification-settings form { display: grid; gap: var(--space-2); }
.account-notification-settings .checkbox-label { gap: var(--space-2); }
.account-notification-settings .checkbox-label input { width: 1.2rem; min-height: 1.2rem; margin-top: .15rem; }
.account-notification-settings .checkbox-label span { display: grid; gap: .25rem; }
.account-notification-settings .checkbox-label small { color: var(--text-muted); font-size: var(--font-small); font-weight: 400; }
.account-notification-settings button { min-height: 2.4rem; padding: .45rem .8rem; justify-self: start; }

.error, .notice, .success, .warning, .information, .legal-draft, .external-link-notice { padding: var(--space-3); border: 1px solid var(--border-strong); border-left-width: 3px; border-radius: var(--radius-small); }
.error { border-color: var(--danger); background: var(--danger-surface); color: var(--danger); }
.nickname-availability-status{display:block;margin:.25rem 0 0;color:var(--text-muted);font-size:var(--font-small);line-height:1.4}.nickname-availability-status--unavailable{color:var(--danger)}.nickname-availability-status--available{color:var(--success)}.nickname-availability-status--limited{color:var(--text-muted)}input.is-nickname-unavailable{border-color:var(--danger)}
.success { border-color: var(--success); background: var(--success-surface); color: var(--success); }
.notice { background: var(--surface-muted); color: var(--text); }
.anonymous-note { margin: 0 0 var(--space-3); padding: .45rem .7rem; border-width: 0 0 0 2px; font-size: var(--font-small); line-height: 1.4; }
.anonymous-guidance { display: flex; flex-wrap: wrap; align-items: flex-start; gap: .25rem var(--space-2); margin-bottom: var(--space-3); }
.anonymous-guidance .anonymous-note { margin-bottom: 0; }
.account-benefits { max-width: 34rem; font-size: var(--font-small); }
.account-benefits summary { min-height: 2.25rem; padding: .35rem .2rem; font-weight: 680; cursor: pointer; }
.account-benefits ul { margin: .25rem 0 0; padding-left: 1.2rem; }
.account-benefits li { margin-bottom: .2rem; }
.topic-subscription { margin: calc(-1 * var(--space-2)) 0 var(--space-3); }
.subscription-list { display: grid; gap: var(--space-2); padding: 0; list-style: none; }
.subscription-list li { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); padding-bottom: var(--space-2); border-bottom: 1px solid var(--border); }
.subscription-list li > div { display: grid; min-width: 0; }
.subscription-list span { color: var(--text-muted); font-size: var(--font-small); }
.subscription-list form { flex: 0 0 auto; }
.warning, .information { background: var(--surface-muted); color: var(--text); }
.legal-draft { background: var(--surface-muted); color: var(--text-muted); }
.external-link-notice { background: var(--surface-muted); }
.status-pending, .status-spam, .status-deleted, .status-closed { font-weight: 700; }
.status-spam, .status-deleted { color: var(--danger); }

.pagination { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .35rem; margin: var(--space-3) 0; font-size: .8rem; }
.pagination-page, .pagination-control { display: grid; width: 2.25rem; height: 2.25rem; place-items: center; border: 1px solid var(--border); border-radius: var(--radius-small); background: var(--surface); color: var(--text); font-weight: 700; line-height: 1; text-decoration: none; }
.pagination-page:hover, .pagination-control:hover { border-color: var(--link); color: var(--link); }
.pagination-page.is-current { border-color: var(--violet); background: var(--violet); color: var(--white); }
.pagination-control { font-size: 1.15rem; }
.pagination-control.is-disabled { color: var(--text-muted); opacity: .5; }
.pagination-ellipsis { display: grid; width: 1.5rem; height: 2.25rem; place-items: center; color: var(--text-muted); }
.search-panel { border-color: var(--border-strong); background: var(--surface-muted); }
.search-panel h2 { font-size: 1.5rem; }
.search-panel--compact { margin-top: var(--space-5); padding: var(--space-3); border-width: 1px 0; background: transparent; }
.search-panel--compact h2 { margin-bottom: var(--space-1); font-size: 1.25rem; }
.search-panel--compact > p { margin-bottom: var(--space-2); color: var(--text-muted); font-size: var(--font-small); }
.search-panel--compact .forum-search label { margin-top: 0; }
.search-page main { width: min(100% - 2rem, 78rem); }
.search-back { gap: var(--space-1); color: var(--link); }
.search-page-panel { margin-top: var(--space-3); border: 1px solid var(--border); border-radius: var(--radius-card); background: var(--surface); }
.search-page-panel h1 { margin-bottom: var(--space-1); font-size: 1.5rem; }
.search-page-panel .forum-search { margin-top: var(--space-2); }
.search-status:empty, .search-results:empty { display: none; }
.search-status { margin-top: var(--space-3); color: var(--text-muted); }
.search-results { display: grid; gap: var(--space-2); margin-top: var(--space-3); }
.search-result { padding: var(--space-3); border-left: 2px solid var(--border-strong); }
.search-result h3, .search-result p { margin: var(--space-1) 0 0; }
.search-result p { color: var(--text-muted); }
.new-topic-callout { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-3); margin-top: var(--space-3); }
#forenbereiche { scroll-margin-top: var(--space-3); }

.admin-area { width:auto;max-width:none;margin:0 0 0 15rem;padding:var(--space-4);min-height:100vh;background:var(--page-background); }
body:has(.admin-area)>.platform-header,body:has(.admin-area)>.platform-footer{display:none}
.admin-heading{margin-bottom:var(--space-4)}
.admin-heading h1 { margin-bottom:.2rem;font-size:2rem; }
.admin-heading p{margin:0;color:var(--text-muted);font-size:var(--font-small)}
.admin-heading .admin-kicker{display:none}
.admin-sidebar{position:fixed;z-index:10;inset:0 auto 0 0;display:flex;width:15rem;flex-direction:column;padding:var(--space-3) var(--space-2) 0;border-right:1px solid var(--border);background:var(--surface);overflow:hidden}
.admin-brand{display:grid;grid-template-columns:2rem 1fr;align-items:center;margin:0 .5rem var(--space-3);color:var(--heading);font-weight:800;line-height:1;text-decoration:none;text-transform:uppercase}.admin-brand-mark{grid-row:1/3;color:var(--violet);font-size:1.7rem}.admin-brand small{grid-column:2;width:max-content;margin-top:.35rem;padding:.15rem .35rem;border-radius:.25rem;background:var(--violet);color:#fff;font-size:.62rem;letter-spacing:.06em}
.admin-nav { display:grid;gap:.2rem;margin:0; }
.admin-nav a { display:flex;align-items:center;justify-content:space-between;gap:var(--space-1);padding:.65rem .75rem;border-radius:var(--radius-small);color:var(--text);font-size:.86rem;text-decoration:none; }
.admin-nav a:hover, .admin-nav a.is-active { background:color-mix(in srgb,var(--violet) 12%,var(--surface));color:var(--heading); }
.admin-nav-count{display:inline-grid;min-width:1.5rem;height:1.5rem;flex:0 0 auto;place-items:center;padding:0 .35rem;border-radius:999px;background:var(--danger);color:var(--white);font-size:.72rem;font-weight:750;font-variant-numeric:tabular-nums;line-height:1}
.admin-maintenance-badge{display:inline-grid;min-width:1.8rem;height:1.5rem;flex:0 0 auto;place-items:center;padding:0 .4rem;border:1px solid var(--danger);border-radius:999px;background:var(--danger);color:var(--white);font-size:.68rem;font-weight:800;line-height:1;letter-spacing:.04em}.admin-nav a.is-maintenance-active:not(.is-active){background:color-mix(in srgb,var(--danger) 7%,var(--surface))}.admin-maintenance-warning{border-color:var(--danger);background:var(--danger-surface);color:var(--danger)}
.admin-nav a:last-child{margin-top:var(--space-2);border-top:1px solid var(--border);border-radius:0}
.admin-audine{width:12rem;max-height:42vh;margin:auto auto 0;object-fit:contain;object-position:bottom}
.admin-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-2);margin-bottom:var(--space-2)}
.admin-kpi,.admin-panel{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface)}
.admin-kpi{display:grid;gap:.3rem;min-height:6.5rem;padding:var(--space-2)}.admin-kpi span{color:var(--text-muted);font-size:.78rem}.admin-kpi strong{color:var(--heading);font-size:1.55rem;font-variant-numeric:tabular-nums}.admin-kpi-details{display:grid;gap:.2rem;margin:0;font-size:var(--font-small)}.admin-kpi-details div{display:flex;justify-content:space-between;gap:var(--space-1)}.admin-kpi-details dt{color:var(--text-muted)}.admin-kpi-details dd{margin:0;color:var(--heading);font-variant-numeric:tabular-nums}.admin-kpi--failed strong{color:var(--danger)}.admin-kpi--jobs strong{color:var(--blue)}.admin-kpi--storage strong{color:var(--green)}
.admin-panel{min-width:0;padding:var(--space-2)}.admin-area>.admin-panel+.admin-panel{margin-top:var(--space-2)}.admin-panel--warning{border-inline-start:3px solid var(--warning)}.admin-panel--error{border-inline-start:3px solid var(--danger)}.admin-panel>header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-2)}.admin-panel h2{margin:0;font-size:1.05rem}.admin-panel>header a{font-size:.78rem;text-decoration:none}
.admin-dashboard-main{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(23rem,.75fr);gap:var(--space-2);margin-bottom:var(--space-2)}.admin-dashboard-lower{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}
.admin-table progress{width:5rem;height:.45rem;accent-color:var(--blue)}.admin-error-detail{display:block;max-width:22rem;margin-top:.25rem;color:var(--danger)}
.admin-badge{display:inline-block;padding:.12rem .4rem;border:1px solid var(--border);border-radius:999px;font-size:.7rem;line-height:1.25;white-space:nowrap}.admin-badge--failed{border-color:color-mix(in srgb,var(--danger) 45%,var(--border));background:color-mix(in srgb,var(--danger) 10%,var(--surface));color:var(--danger)}.admin-badge--running{border-color:color-mix(in srgb,var(--blue) 45%,var(--border));background:color-mix(in srgb,var(--blue) 10%,var(--surface));color:var(--blue)}.admin-badge--completed{border-color:color-mix(in srgb,var(--success) 45%,var(--border));background:color-mix(in srgb,var(--success) 10%,var(--surface));color:var(--success)}
.admin-status-badge{display:inline-block;padding:.12rem .4rem;border:1px solid currentColor;border-radius:999px;font-size:.7rem;font-weight:700;line-height:1.25;white-space:nowrap}.admin-status-badge--ok{background:color-mix(in srgb,var(--success) 10%,var(--surface));color:var(--success)}.admin-status-badge--warning{background:color-mix(in srgb,var(--warning) 10%,var(--surface));color:var(--warning)}.admin-status-badge--error{background:color-mix(in srgb,var(--danger) 10%,var(--surface));color:var(--danger)}.admin-status-badge--neutral{background:var(--surface-muted);color:var(--text-muted)}
.admin-compact-list,.admin-system-list{display:grid;gap:0;margin:0;padding:0;list-style:none}.admin-compact-list li,.admin-system-list li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:.55rem 0;border-bottom:1px solid var(--border);font-size:.8rem}.admin-compact-list li:last-child,.admin-system-list li:last-child{border:0}.admin-health{grid-template-columns:1fr}.admin-health li{display:flex;justify-content:space-between;gap:var(--space-2);font-size:.78rem}.is-muted{color:var(--text-muted)}.is-warning{color:var(--warning)}
.admin-storage-summary{margin:0}.admin-storage-summary div{display:flex;justify-content:space-between;gap:var(--space-2);padding:.45rem 0;border-bottom:1px solid var(--border);font-size:.8rem}.admin-storage-summary div:last-child{border:0}.admin-storage-summary dd{margin:0;font-variant-numeric:tabular-nums}
.admin-filter--compact{display:flex;flex-wrap:wrap;align-items:end;gap:var(--space-2);margin-bottom:var(--space-2)}.admin-filter--compact label{min-width:12rem}.admin-settings-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.admin-settings-links a{display:grid;gap:.25rem;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-small);text-decoration:none}.admin-settings-links span{color:var(--text-muted);font-size:var(--font-small)}
.admin-definition-list{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);margin:0;color:var(--text-muted)}.admin-definition-list div{display:flex;gap:.35rem}.admin-definition-list dt{font-weight:700;color:var(--text)}.admin-definition-list dd{margin:0}.admin-definition-list--backup{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-definition-list--backup div{align-items:start}.admin-definition-list--backup dd{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.admin-definition-list--backup small{flex-basis:100%;color:var(--text-muted)}.admin-backup-settings{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border)}.admin-backup-settings .checkbox-label{align-items:center;padding-bottom:.55rem}.admin-backup-settings .checkbox-label input{margin-top:0}
.admin-section-nav{display:flex;align-items:center;gap:var(--space-1);margin:0 0 var(--space-3);padding:.25rem;border:1px solid var(--border);border-radius:var(--radius-small);background:var(--surface);width:max-content;max-width:100%}.admin-section-nav>a{display:flex;align-items:center;gap:.4rem;padding:.45rem .7rem;border-radius:calc(var(--radius-small) - 2px);color:var(--text);text-decoration:none}.admin-section-nav>a:hover,.admin-section-nav>a:focus-visible,.admin-section-nav>a.is-active{background:color-mix(in srgb,var(--violet) 12%,var(--surface));color:var(--heading)}
.admin-statistics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-block: 1px solid var(--border); }
.admin-statistics article { display: grid; gap: var(--space-1); padding: var(--space-3); border-width: 0 1px 0 0; background: transparent; }
.admin-statistics article:last-child { border-right: 0; }
.admin-statistics strong { font-size: 1.65rem; font-variant-numeric: tabular-nums; }
.admin-statistics span { color: var(--text-muted); font-size: var(--font-small); }
.admin-dashboard-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3);margin-bottom:var(--space-4)}.admin-dashboard-card{display:grid;gap:.25rem;padding:var(--space-3);border:1px solid var(--border);border-radius:.8rem;background:var(--surface);color:inherit;text-decoration:none}.admin-dashboard-card strong{font-size:1.8rem;font-variant-numeric:tabular-nums}.admin-dashboard-card span{color:var(--text-muted);font-size:var(--font-small)}.admin-dashboard-card.is-alert{border-color:#b83b3b;background:color-mix(in srgb,#b83b3b 8%,var(--surface))}.admin-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.admin-dashboard-grid>.form-card:last-child{grid-column:1/-1}.admin-spark{display:flex;align-items:end;gap:3px;height:8rem}.admin-spark i{flex:1;height:var(--value);min-width:2px;border-radius:2px 2px 0 0;background:var(--text-muted)}.admin-health{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);padding:0;list-style:none}.is-ok{color:#23854a}.is-bad{color:#b83b3b}.admin-workbench{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(20rem,1fr);gap:var(--space-4);align-items:start}.admin-inspector{position:sticky;top:1rem}.admin-problem{background:color-mix(in srgb,#b83b3b 8%,transparent)}.mastering-report-link{width:min(100% - 2rem,var(--content-width));margin:0 auto var(--space-5);font-size:var(--font-small);text-align:right}
.admin-filter { display: grid; grid-template-columns: minmax(15rem, 2fr) minmax(11rem, 1fr) auto; align-items: end; gap: var(--space-3); }
.admin-filter.admin-filter--moderation{display:flex;flex-wrap:wrap;align-items:end;gap:.6rem 1rem;margin-bottom:var(--space-3)}.admin-filter--moderation label{flex:0 0 auto;margin:0;font-size:.78rem}.admin-filter--moderation input,.admin-filter--moderation select{min-height:2.35rem;padding:.4rem .55rem}.admin-filter--moderation .admin-filter-field--status{width:12.5rem}.admin-filter--moderation .admin-filter-field--id{width:7rem}.admin-filter--moderation .admin-filter-field--author{width:10.5rem}.admin-filter--moderation .admin-filter-field--date{width:10rem}.admin-filter--moderation .admin-filter-field--search{width:clamp(14rem,20vw,17rem)}.admin-filter--moderation .admin-filter-field--reported{align-self:center;width:auto;margin-top:1.25rem;white-space:nowrap}.admin-filter--moderation .admin-filter-field--reported input{width:1rem;min-height:1rem;margin:0;padding:0}.admin-filter--moderation button{flex:0 0 auto;min-height:2.35rem;padding:.4rem .75rem}
.admin-filter.admin-filter--notes{display:flex;flex-wrap:wrap;align-items:end;gap:var(--space-2);margin-bottom:var(--space-2)}.admin-filter--notes label{width:min(100%,24rem);margin:0}.admin-filter--notes input{min-height:2.35rem;padding:.4rem .55rem}.admin-filter--notes button{min-height:2.35rem;padding:.4rem .75rem}
.admin-note-action-cell{width:15rem}.admin-note-action{display:flex;align-items:center;gap:.6rem;margin:0;white-space:nowrap}.admin-note-action .checkbox-label{align-items:center;gap:.35rem;margin:0;font-size:.78rem;white-space:nowrap}.admin-note-action .checkbox-label input{display:inline-block;width:1rem;height:1rem;min-height:0;margin:0;padding:0}.admin-note-action button{flex:0 0 auto;min-height:2.15rem;padding:.35rem .65rem;font-size:.78rem}
.admin-table-wrap { max-width: 100%; overflow-x: auto; }
.admin-table { width: 100%; border-collapse: collapse; font-size: var(--font-small); }
.admin-table th, .admin-table td { padding: .75rem; border-bottom: 1px solid var(--border); text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.admin-table th { background: var(--surface-muted); color: var(--text-muted); font-size: .78rem; letter-spacing: .03em; }
.admin-table tr:last-child td { border-bottom: 0; }
.admin-table .admin-reported-row{background:var(--danger-surface);color:var(--danger);font-weight:700}.admin-table .admin-reported-row a{color:var(--danger)}
.admin-details { display: grid; grid-template-columns: minmax(11rem, .4fr) 1fr; gap: var(--space-2) var(--space-4); }
.admin-details dt { color: var(--text-muted); font-weight: 680; }
.admin-details dd { margin: 0; overflow-wrap: anywhere; }
.admin-actions form { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.audit-list { display: grid; gap: var(--space-2); padding: 0; list-style: none; }
.audit-list li { display: flex; justify-content: space-between; gap: var(--space-3); padding-bottom: var(--space-2); border-bottom: 1px solid var(--border); }

.external-link-page main { max-width: var(--reading-width); margin-top: clamp(2rem, 8vh, 5.5rem); }
.external-link-card { padding: clamp(1.5rem, 5vw, 3rem); border-color: var(--border-strong); }
.external-link-target { display: grid; gap: var(--space-2); margin: var(--space-4) 0; padding: var(--space-3); border-left: 2px solid var(--border-strong); background: var(--surface-muted); }
.external-link-host { font-size: 1.15rem; font-weight: 750; overflow-wrap: anywhere; word-break: break-word; }
.external-link-url { color: var(--text-muted); font-size: var(--font-small); overflow-wrap: anywhere; word-break: break-word; }
.external-link-actions { display: flex; gap: var(--space-3); margin-top: var(--space-4); }
.external-link-button { flex: 1 1 0; }
.external-link-button--secondary { border-color: var(--border-strong); background: var(--surface); color: var(--text); }
.external-link-button--secondary:hover { background: var(--surface-muted); }

.honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.auth-page { width: min(100% - 2rem, 46rem); }
.auth-card { width: 100%; max-width: 46rem; margin-inline: auto; padding: clamp(1.1rem, 3vw, 1.5rem); }
.auth-card--embedded { margin-inline: auto; }
.auth-card h2 { margin: 0 0 var(--space-2); font-size: clamp(2rem, 4vw, 2.3rem); line-height: 1.12; }
.auth-card > p { margin-bottom: var(--space-2); }
.auth-card > .notice { padding: .55rem .75rem; border-width: 0 0 0 2px; font-size: var(--font-small); line-height: 1.4; }
.auth-form { margin-top: var(--space-3); }
.auth-form label { margin: .8rem 0 .25rem; font-size: .9rem; line-height: 1.35; }
.auth-input {
    min-width: 0;
    min-height: 3.2rem;
    margin-top: 0;
    padding: .65rem .8rem;
    border: 1px solid var(--border-strong);
    border-radius: .8rem;
    font-size: 1rem;
}
.auth-input:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
.auth-inline-control {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: .35rem;
    padding: .25rem;
    border: 1px solid var(--border-strong);
    border-radius: .9rem;
    background: var(--surface);
}
.auth-inline-control:focus-within { border-color: var(--text); outline: 2px solid var(--focus); outline-offset: 2px; }
.auth-inline-control .auth-input { min-height: 2.7rem; padding-inline: .6rem; border: 0; border-radius: .65rem; }
.auth-inline-control .auth-input:focus-visible { outline: 0; }
.auth-arrow-submit {
    width: 2.75rem;
    min-height: 2.75rem;
    flex: 0 0 2.75rem;
    padding: 0;
    border-radius: 50%;
    font-size: 1.35rem;
    line-height: 1;
}
.auth-arrow-submit:focus-visible { outline: 2px solid var(--surface); outline-offset: -4px; }
.auth-submit { width: auto; min-height: 2.8rem; margin-top: var(--space-3); border-radius: .7rem; }
.auth-help { margin: .25rem 0 0; font-size: .82rem; line-height: 1.4; }
.auth-checkbox { min-height: 2.75rem; margin-top: var(--space-2) !important; }
.auth-checkbox-row { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: var(--space-2); min-height: 2.75rem; margin-top: var(--space-3); }
.auth-checkbox-row input { width: 1.2rem; min-height: 1.2rem; margin-top: .2rem; }
.auth-checkbox-row label { margin: 0; font-weight: 520; overflow-wrap: anywhere; }
.auth-secondary-links { display: grid; justify-items: start; gap: .45rem; margin-top: var(--space-3); font-size: var(--font-small); line-height: 1.4; }
.auth-secondary-link { margin-top: var(--space-3); font-size: var(--font-small); }
.access-code-card { border-top-color: var(--text); }
.access-code-input { font-size: 1.2rem; font-variant-numeric: tabular-nums; font-weight: 680; letter-spacing: .14em; text-align: left; }
.access-code-submit { width: 2.75rem; margin-top: 0; }
.access-code-submit.is-ready { border-color: var(--button-background); background: var(--button-background); color: var(--button-text); }
.access-code-resend { margin-top: var(--space-3); text-align: left; }
.remembered-accounts { margin: var(--space-4) 0; }
.remembered-account-card { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: var(--space-2); margin: var(--space-2) 0; padding: var(--space-3); }
.remembered-account-initials { display: grid; width: 2.75rem; height: 2.75rem; place-items: center; border: 1px solid var(--border); border-radius: 50%; background: var(--surface-muted); font-weight: 750; }
.remembered-account-details { display: grid; min-width: 0; }
.remembered-account-details span { overflow-wrap: anywhere; color: var(--text-muted); font-size: var(--font-small); }
.remembered-account-card .text-button { grid-column: 2 / -1; justify-self: start; }
.mastering-intro { max-width: var(--reading-width); border-width: 1px 0; background: transparent; }
.design-page > main .mastering-primary-cta { color: var(--accent-text); }

:focus-visible { outline: 3px solid var(--focus); outline-offset: 3px; }
input:focus-visible, textarea:focus-visible, select:focus-visible { border-color: var(--text); }

@media (max-width: 48rem) {
    .admin-area{margin-left:10rem;padding:var(--space-2)}.admin-sidebar{width:10rem;padding-inline:.45rem}.admin-brand{margin-inline:0}.admin-nav a{padding:.55rem;font-size:.76rem}.admin-audine{display:none}.admin-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-dashboard-main,.admin-dashboard-lower{grid-template-columns:1fr}.admin-settings-links,.admin-definition-list--backup{grid-template-columns:1fr}
    .admin-dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-dashboard-grid,.admin-workbench{grid-template-columns:1fr}.admin-dashboard-grid>.form-card:last-child{grid-column:auto}.admin-inspector{position:static}
    .platform-header-navigation { grid-template-columns: auto 1fr; gap: 0 var(--space-3); padding-top: var(--space-1); }
    .platform-nav { justify-content: flex-end; }
    .platform-secondary-navigation { grid-column: 1 / -1; }
    .platform-secondary-navigation { justify-content: flex-start; border-top: 1px solid var(--border); }
    .platform-account-nav { justify-content: flex-start; border-top: 1px solid var(--border); }
    .platform-secondary-navigation .platform-account-nav { border-top: 0; }
    .forum, .topic { grid-template-columns: 1fr; gap: var(--space-2); }
    .statistics { min-width: 0; justify-content: start; text-align: left; }
    .topic-last { text-align: left; }
    .forum-hero { grid-template-columns: 1fr; gap: var(--space-3); }
    .forum-hero-copy { min-height: 0; }
    .forum-tip { min-height: 13rem; grid-template-columns: minmax(0,1fr) 11rem; }
    .forum-tip > .web-image-picture { width: 13rem; height: 13rem; margin-bottom: -1.5rem; }
    .forum-overview-layout { grid-template-columns: 1fr; }
    .forum-overview-aside { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .forum-directory-heading { grid-template-columns: minmax(0,1fr) 4.5rem 4.5rem; }
    .forum-directory-heading span:last-child { display: none; }
    .forum-overview-page .forum { grid-template-columns: 2.5rem minmax(0,1fr) 4.5rem 4.5rem; }
    .forum-row-icon { width: 2.5rem; height: 2.5rem; }
    .forum-last { display: none; }
    .topic-list-heading { grid-template-columns: minmax(0,1fr) 4.5rem 10rem; }
    .forum-topics-page .topic { grid-template-columns: 1.75rem minmax(0,1fr) 4.5rem 10rem; }
    .topic-detail-layout { grid-template-columns: 1fr; }
    .topic-detail-aside { position: static; grid-template-columns: repeat(2,minmax(0,1fr)); }
    .admin-statistics { grid-template-columns: 1fr 1fr; }
    .admin-statistics article:nth-child(2) { border-right: 0; }
    .admin-statistics article:nth-child(-n+2) { border-bottom: 1px solid var(--border); }
    .admin-filter { grid-template-columns: 1fr; }
    .admin-details { grid-template-columns: 1fr; gap: 0; }
    .admin-details dd { margin-bottom: var(--space-2); }
    .home-hero { grid-template-columns: 1fr; gap: var(--space-4); padding: var(--space-5) 0; }
    .home-mascot-slot { min-height: 0; place-items: center; }
    .home-mascot-slot > .web-image-picture { width: min(100%, 24rem); max-height: 24rem; }
    .privacy-strip, .home-areas { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .home-information-grid { grid-template-columns: 1fr; }
    .home-statistics { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .home-statistics article { border-right: 0; border-bottom: 1px solid var(--border); }
    .home-statistics article:nth-last-child(-n+2) { border-bottom: 0; }
}

@media (max-width: 37.5rem) {
    main.admin-area{width:auto;margin:0;padding:var(--space-2);padding-top:4.5rem}.admin-sidebar{inset:0 0 auto;width:auto;height:3.75rem;display:block;padding:.4rem;overflow-x:auto;white-space:nowrap}.admin-brand,.admin-audine{display:none}.admin-nav{display:flex}.admin-nav a{min-width:max-content;min-height:auto;padding:.55rem;font-size:.72rem}.admin-nav a::first-letter{font-size:inherit}.admin-nav a:last-child{display:none}.admin-kpis{grid-template-columns:1fr 1fr}.admin-kpi{min-height:5.5rem}.admin-kpi:last-child{grid-column:1/-1}
    main, .platform-header-inner, .platform-footer nav, .platform-footer p { width: min(100% - 1.25rem, var(--content-width)); }
    main { margin-top: var(--space-4); margin-bottom: var(--space-5); }
    h1 { margin-bottom: var(--space-3); font-size: 2.2rem; }
    h2 { margin-top: var(--space-4); }
    .page-intro { margin-bottom: var(--space-2); }
    .page-lead { margin-bottom: var(--space-2); font-size: 1rem; line-height: 1.5; }
    .forum-title { align-items: flex-start; }
    .forum-title > .web-image-picture { width: 3rem; height: 3rem; }
    .forum-title h1 { font-size: clamp(2rem,10vw,2.7rem); }
    .forum-tip { min-height: 0; grid-template-columns: minmax(0,1fr) 7rem; padding: var(--space-2); }
    .forum-tip > .web-image-picture { width: 10.5rem; height: 10.5rem; margin: 0 -1rem -1.5rem -1rem; }
    .forum-overview-search { grid-template-columns: 1fr; padding: var(--space-2); }
    .forum-overview-search .forum-search { grid-template-columns: 1fr; }
    .forum-search { grid-template-columns: 1fr; }
    .forum-search button { width: 100%; }
    .forum-overview-aside { grid-template-columns: 1fr; }
    .forum-directory-heading { grid-template-columns: 1fr; padding-inline: 0; }
    .forum-directory-heading > span { display: none; }
    .forum-overview-page .forum { grid-template-columns: 2.25rem minmax(0,1fr); gap: var(--space-1) var(--space-2); }
    .forum-row-icon { width: 2.25rem; height: 2.25rem; }
    .forum-count { grid-column: 2; display: inline-flex; gap: .3rem; margin-right: var(--space-2); color: var(--text); font-size: .78rem; }
    .forum-count + .forum-count { margin-top: calc(-1 * var(--space-1)); }
    .forum-count span { display: inline; }
    .forum-list-hero { align-items: stretch; flex-direction: column; gap: var(--space-2); }
    .forum-new-topic { justify-content: center; }
    .topic-list-heading { display: none; }
    .forum-topics-page .topic { grid-template-columns: 1.75rem minmax(0,1fr); gap: var(--space-1) var(--space-2); }
    .topic-post-count, .forum-topics-page .topic-last { grid-column: 2; text-align: left; }
    .topic-post-count { display: flex; gap: .3rem; }
    .topic-post-count span { display: inline; }
    .topic-detail-hero { align-items: stretch; flex-direction: column; gap: var(--space-2); }
    .topic-detail-meta { margin-left: 0; }
    .topic-detail-hero .topic-subscription, .topic-detail-hero .forum-outline-action { width: 100%; }
    .topic-detail-hero .forum-outline-action { justify-content: center; }
    .topic-post-stream .post { grid-template-columns: 1fr; }
    .post-author { display: grid; grid-template-columns: 3rem minmax(0,1fr); align-items: center; justify-items: start; gap: 0 var(--space-1); padding: var(--space-2); border-right: 0; border-bottom: 1px solid var(--border); text-align: left; }
    .post-author-avatar { width: 3rem; height: 3rem; grid-row: 1 / 3; margin: 0; }
    .post-author-status { margin: 0; }
    .post-author dl { display: flex; grid-column: 1 / -1; gap: var(--space-2); margin-top: var(--space-1); }
    .post-author dl div { justify-content: flex-start; gap: .3rem; padding: 0; }
    .post-content { padding: var(--space-2); }
    .topic-post-stream .post-body { min-height: 0; }
    .topic-detail-aside { grid-template-columns: 1fr; }
    .topic-reply-card { width: 100%; }
    .platform-nav, .platform-account-nav { column-gap: var(--space-2); }
    .platform-nav-link, .platform-nav-button { min-height: 2.5rem; padding-block: .45rem .35rem; font-size: .84rem; }
    .platform-nav .platform-nav-link { font-size: .94rem; }
    .platform-account-name { width: 100%; padding-top: var(--space-2); }
    .external-link-actions { flex-direction: column; gap: var(--space-2); }
    .external-link-button { width: 100%; }
    .post > header { flex-direction: column; gap: var(--space-1); }
    .reply-post { margin-left: var(--space-2); padding-left: var(--space-3); }
    .forum { gap: var(--space-1); padding: .7rem 0; }
    .forum h2 { margin-bottom: .2rem; font-size: 1.08rem; }
    .forum p { line-height: 1.35; }
    .statistics { gap: var(--space-2); line-height: 1.3; }
    .topic { gap: var(--space-1); padding: .55rem 0; }
    .topic a { font-size: 1rem; line-height: 1.3; }
    .topic-meta, .topic-last { font-size: .82rem; line-height: 1.35; }
    .form-card, .error-page, .search-panel { padding: var(--space-3); }
    .error-header{width:min(100% - 1.25rem,var(--content-width));padding:var(--space-2) 0}.error-page-main{min-height:auto}.error-page--custom{grid-template-columns:1fr;gap:var(--space-2);padding:var(--space-3)}.error-page-code{font-size:clamp(4rem,25vw,6.5rem)}.error-page--custom h1{font-size:clamp(1.75rem,8vw,2.35rem)}.error-page-actions{align-items:stretch;flex-direction:column}.error-action{width:100%}.error-page-visual{order:-1;place-items:center}.error-page-visual > .web-image-picture{width:min(65vw,13rem);max-height:16rem}
    .auth-page { width: min(100% - 1.25rem, 46rem); }
    .auth-card { padding: var(--space-3); }
    .auth-card h2 { font-size: clamp(1.7rem, 8vw, 2rem); }
    .auth-input { min-height: 3rem; }
    .auth-inline-control .auth-input { min-height: 2.65rem; }
    textarea { min-height: 7rem; }
    .search-panel--compact { margin-top: var(--space-4); padding-inline: 0; }
    .pagination { gap: .25rem; }
    .pagination-page, .pagination-control { width: 2rem; height: 2rem; }
    .pagination-ellipsis { width: 1rem; height: 2rem; }
    .admin-statistics { grid-template-columns: 1fr; }
    .admin-statistics article { border-right: 0; border-bottom: 1px solid var(--border); }
    .audit-list li { flex-direction: column; gap: 0; }
    .remembered-account-card { grid-template-columns: auto minmax(0, 1fr); }
    .remembered-account-card > button:not(.text-button), .remembered-account-card .text-button { grid-column: 1 / -1; width: 100%; }
    .account-setting > summary { grid-template-columns: minmax(0, 1fr) auto; gap: var(--space-2); }
    .account-setting > summary > span:first-child { grid-column: 1 / -1; }
    .account-setting > form { max-width: none; margin-left: 0; }
    .form-actions > button { flex: 1 1 100%; }
    .topic-reply-actions > button { flex: 1 1 8rem; }
    .subscription-list li { align-items: flex-start; flex-direction: column; gap: var(--space-1); }
    .platform-header-navigation { grid-template-columns: 1fr; }
    .platform-brand { padding: var(--space-1) 0; }
    .platform-nav { justify-content: flex-start; border-top: 1px solid var(--border); }
    .platform-secondary-navigation { grid-column: auto; }
    .platform-theme-controls button span { display: none; }
    .platform-theme-controls button { width: 2.15rem; padding: 0; }
    .home-hero { padding: var(--space-4) 0; }
    .home-hero h1 { font-size: clamp(2.25rem, 11vw, 3rem); }
    .home-mascot-slot > .web-image-picture { width: min(100%, 20rem); max-height: 20rem; }
    .home-actions, .home-button { width: 100%; }
    .privacy-strip, .home-areas { grid-template-columns: 1fr; }
    .privacy-strip article + article { border-top: 1px solid var(--border); }
    .home-area-card { min-height: 15rem; }
    .home-section-heading { align-items: flex-start; flex-direction: column; gap: var(--space-1); }
    .home-latest li a { grid-template-columns: 1.75rem minmax(0,1fr); }
    .home-latest li span { grid-column: 2; text-align: left; }
    .home-processing .home-section-heading, .home-public-track-list, .home-processing .home-empty { max-width: 100%; }
    .home-processing-audine { display: none; }
    .home-statistics { grid-template-columns: 1fr; }
    .home-statistics article, .home-statistics article:nth-last-child(-n+2) { justify-content: flex-start; border-bottom: 1px solid var(--border); }
    .home-statistics article:last-child { border-bottom: 0; }
}

@media (max-width: 23.4375rem) {
    .platform-header-navigation { row-gap: 0; }
    .platform-account-nav { column-gap: .65rem; }
    .platform-nav-link, .platform-nav-button { font-size: .8rem; }
    .page-intro .search-kind { margin-bottom: .2rem; }
    .anonymous-note { margin-bottom: var(--space-2); }
    .anonymous-guidance { display: block; }
    .anonymous-guidance .anonymous-note { margin-bottom: .2rem; }
    .auth-card { padding: .9rem; }
    .auth-card h2 { font-size: 1.75rem; }
    .auth-inline-control { gap: .2rem; padding: .2rem; }
    .auth-arrow-submit { width: 2.75rem; min-height: 2.75rem; flex-basis: 2.75rem; }
    .auth-secondary-links { gap: .55rem; }
}

@media (max-width: 20rem) {
    main, .platform-header-inner, .platform-footer nav, .platform-footer p { width: min(100% - 1rem, var(--content-width)); }
    main { margin-top: var(--space-3); }
    h1 { font-size: 2rem; line-height: 1.08; }
    .page-lead { font-size: .96rem; line-height: 1.42; }
    .platform-nav, .platform-account-nav { column-gap: .55rem; }
    .platform-nav-link, .platform-nav-button { min-height: 2.4rem; font-size: .76rem; }
    .platform-nav .platform-nav-link { font-size: .88rem; }
    .platform-account-name { padding-top: .4rem; font-size: .78rem; }
    .form-card, .error-page, .search-panel { padding: .75rem; }
    .auth-page { width: min(100% - 1rem, 46rem); }
    .auth-card { padding: .75rem; }
    .auth-card h2 { font-size: 1.7rem; }
    .auth-form label { font-size: .86rem; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Forum polish: shared sidebars, compact thread heading and inline composer. */
.forum-title-icon{display:grid;width:2.75rem;height:2.75rem;flex:0 0 auto;place-items:center;border:1px solid color-mix(in srgb,var(--violet) 35%,var(--border));border-radius:50%;background:color-mix(in srgb,var(--violet) 9%,var(--surface));color:var(--violet)}
.forum-title-icon .ph-icon{width:1.4rem;height:1.4rem}.topic-detail-hero .forum-title h1{font-size:var(--font-large);line-height:1.12}.topic-detail-meta{margin-left:3.75rem}.topic-post-stream{display:flex;min-width:0;flex-direction:column}.topic-post-stream>.post{order:0}.topic-post-stream>.pagination{order:1}.topic-post-stream>.topic-reply-card,.topic-post-stream>.topic-locked-notice{order:2}.topic-reply-card{width:100%;margin-top:var(--space-2)}
.topic-related-card h2{font-size:0}.topic-related-card h2::after{content:"Ähnliche Themen";font-size:1rem}html[lang^="en"] .topic-related-card h2::after{content:"Similar topics"}
.topic-audine-tip{padding-right:8.5rem}.topic-audine-tip > .web-image-picture{right:-1.1rem;bottom:-1rem;width:12rem;height:13rem}
.forum-section-layout{display:grid;grid-template-columns:minmax(0,1fr) 17rem;align-items:start;gap:var(--space-3)}.forum-section-main{min-width:0}.forum-shared-sidebar{display:grid;gap:var(--space-3)}.forum-shared-sidebar .forum-side-card h2{display:flex;align-items:center;gap:.45rem}.forum-sidebar-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin:0}.forum-sidebar-stats div{padding:.65rem;border-radius:var(--radius-small);background:var(--surface-muted)}.forum-sidebar-stats dt{color:var(--text-muted);font-size:var(--font-small)}.forum-sidebar-stats dd{margin:.15rem 0 0;font-size:1.2rem;font-weight:800}.forum-active-authors{display:grid;gap:.65rem;margin:0;padding:0;list-style:none}.forum-active-authors li{display:flex;align-items:center;gap:.6rem}.forum-active-authors .topic-reply-avatar{width:2rem;height:2rem;font-size:.7rem}.forum-active-authors span:last-child{display:grid;min-width:0}.forum-active-authors small{color:var(--text-muted);font-size:.72rem}.forum-sidebar-audine{position:relative;min-height:10rem;padding:var(--space-3) 6.25rem var(--space-3) var(--space-3);overflow:hidden;border:1px solid color-mix(in srgb,var(--violet) 45%,var(--border));border-radius:var(--radius-card);background:color-mix(in srgb,var(--violet) 5%,var(--surface))}.forum-sidebar-audine p{position:relative;z-index:1;margin:.3rem 0}.forum-sidebar-audine > .web-image-picture{position:absolute;right:-1.4rem;bottom:-1rem;width:8.5rem;height:10.5rem;object-fit:contain}
@media(max-width:52rem){.forum-section-layout{grid-template-columns:1fr}.forum-shared-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}.forum-sidebar-audine{grid-column:1/-1}}
@media(max-width:38rem){.forum-shared-sidebar{grid-template-columns:1fr}.forum-sidebar-audine{grid-column:auto}.topic-detail-meta{margin-left:0}.topic-detail-hero .forum-title h1{font-size:clamp(1.65rem,8vw,var(--font-large))}}

.mastering-upload-page{width:min(var(--design-content),calc(100% - 2rem));margin:clamp(1.5rem,5vw,4rem) auto;display:grid;gap:1.25rem}.mastering-upload-intro{max-width:46rem}.mastering-upload-intro h1{font-size:var(--design-font-lg);margin:.2rem 0 .8rem}.mastering-upload-card,.mastering-track-list{padding:clamp(1.1rem,4vw,1.8rem)}.mastering-upload-card input{width:100%}.mastering-file-hint,.mastering-processing,.mastering-track-list span{color:var(--design-muted);font-size:var(--design-font-sm)}.mastering-upload-button{justify-self:start}.mastering-upload-button:disabled{cursor:default;opacity:.45}.mastering-track-list ul{list-style:none;margin:0;padding:0}.mastering-track-list li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 0;border-top:1px solid var(--design-border)}.mastering-track-list li:first-child{border-top:0}.mastering-track-list li div{display:grid;gap:.25rem}@media(max-width:520px){.mastering-track-list li{align-items:start;flex-direction:column}}
.mastering-file-summary{display:grid;gap:.25rem}.mastering-file-summary p{margin:0}.mastering-cover-preview{width:min(10rem,100%);max-height:10rem;margin-top:.5rem;border-radius:.5rem;object-fit:contain}.mastering-waveform{position:relative;height:14rem;border:1px solid var(--design-border);border-radius:var(--design-radius);overflow:hidden;background:var(--mastering-canvas);touch-action:none}.mastering-waveform canvas{width:100%;height:100%}.mastering-waveform-shade{position:absolute;inset-block:0;background:var(--mastering-overlay);pointer-events:none}.mastering-waveform-shade--left{left:0}.mastering-waveform-shade--right{right:0}.mastering-waveform-window{position:absolute;inset-block:0;border:2px solid var(--design-active);background:color-mix(in srgb,var(--accent) 18%,transparent);cursor:grab;touch-action:none}.mastering-waveform-window:active{cursor:grabbing}.mastering-waveform-window:focus-visible{outline:3px solid var(--focus);outline-offset:-5px}.mastering-preview-form{justify-items:start}.mastering-preview-form p{margin:.25rem 0 0}.mastering-preview-submit{display:inline-flex!important;width:fit-content!important;max-width:100%;justify-self:start;align-items:center}
.mastering-landing-hero{max-width:50rem;padding:clamp(1.5rem,5vw,3.5rem) 0;border-bottom:1px solid var(--design-border)}.mastering-landing-hero h1{margin:.15rem 0 1rem;font-size:var(--design-font-lg)}.mastering-landing-hero>p:not(.mastering-eyebrow){max-width:62ch;color:var(--design-muted)}.mastering-eyebrow{margin:0;color:var(--design-muted);font-size:var(--design-font-sm);font-weight:750;letter-spacing:.11em;text-transform:uppercase}.mastering-primary-cta{display:inline-flex;padding:.65rem 1rem;border:1px solid var(--accent);border-radius:var(--design-radius);background:var(--accent);color:var(--accent-text);font-weight:700;text-decoration:none}.mastering-community{margin-top:var(--space-5)}.mastering-list-heading{display:flex;align-items:end;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-3)}.mastering-list-heading h2{margin:.2rem 0 0}.mastering-list-heading form{display:block;font-size:var(--design-font-sm)}.mastering-list-heading select{min-width:0;min-height:2.5rem}.mastering-track-grid{border-top:1px solid var(--design-border)}.mastering-track-card{border-bottom:1px solid var(--design-border)}.mastering-track-main{display:grid;grid-template-columns:4rem minmax(0,1fr) 5rem;align-items:center;gap:var(--space-3);padding:.8rem 0;color:inherit;text-decoration:none}.mastering-track-main:hover strong{text-decoration:underline}.mastering-track-cover{width:4rem;height:4rem;border-radius:var(--design-radius);object-fit:cover;background:var(--design-surface)}.mastering-track-cover--empty{display:grid;place-items:center;border:1px solid var(--design-border);color:var(--design-muted);font-size:1.4rem}.mastering-track-copy{display:grid;min-width:0;line-height:1.35}.mastering-track-copy strong,.mastering-track-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mastering-track-copy>span{color:var(--design-muted);font-size:var(--design-font-sm)}.mastering-track-meta{margin-top:.2rem}.mastering-mini-circle{width:5rem;height:5rem;overflow:visible}.mastering-mini-boundary{fill:var(--design-surface);stroke:var(--design-border);stroke-width:2}.mastering-mini-vote{fill:#d74343;stroke:var(--design-text);stroke-width:.7}.mastering-mini-favorite{fill:#f3c84b;stroke:var(--design-text);stroke-width:1}.mastering-social-links{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:-.5rem 0 .7rem;padding-left:5rem}.mastering-social-links a{color:var(--design-muted);font-size:.78rem}.mastering-empty{padding:var(--space-4) 0;border-block:1px solid var(--design-border);color:var(--design-muted)}@media(max-width:37.5rem){.mastering-landing-hero h1{font-size:clamp(2rem,9vw,2.5rem)}.mastering-list-heading{align-items:start;flex-direction:column}.mastering-list-heading form{display:block;width:100%}.mastering-list-heading select{width:100%}.mastering-track-main{grid-template-columns:3.25rem minmax(0,1fr) 4rem;gap:.7rem}.mastering-track-cover{width:3.25rem;height:3.25rem}.mastering-mini-circle{width:4rem;height:4rem}.mastering-social-links{padding-left:3.95rem}}
.mastering-owner-page{width:min(var(--design-content),calc(100% - 2rem));margin:clamp(1.5rem,5vw,4rem) auto;display:grid;gap:var(--space-4)}.mastering-owner-intro{max-width:48rem}.mastering-owner-track{padding:clamp(1rem,4vw,1.6rem);display:grid;gap:var(--space-3)}.mastering-owner-track-head{display:grid;grid-template-columns:6rem minmax(0,1fr);gap:var(--space-3);align-items:center}.mastering-owner-cover{width:6rem;height:6rem;object-fit:cover;border-radius:var(--design-radius);background:var(--design-surface)}.mastering-owner-track h2,.mastering-owner-track h3{margin:.2rem 0}.mastering-owner-track p{margin:.35rem 0}.mastering-owner-actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3)}.mastering-owner-actions form{margin:0}.mastering-owner-edit form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2) var(--space-3);margin-top:var(--space-3)}.mastering-owner-edit input{width:100%}.mastering-cover-field,.mastering-social-editor,.mastering-owner-edit-form>button{grid-column:1/-1}.mastering-cover-field input{max-width:28rem}.mastering-social-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2) var(--space-3);padding:var(--space-2) 0 0;border:0;border-top:1px solid var(--design-border)}.mastering-social-editor legend{padding:0;font-weight:700}.mastering-social-editor .muted{grid-column:1/-1;margin:0}.mastering-social-editor label{font-size:var(--design-font-sm)}.mastering-social-editor input{min-height:2.35rem;padding:.4rem .55rem}.mastering-owner-notes,.mastering-owner-releases{display:grid;gap:.45rem}.mastering-community-favorite{padding:.75rem;border-left:3px solid #f3c84b;background:var(--design-surface)}@media(max-width:37.5rem){.mastering-owner-track-head{grid-template-columns:4rem minmax(0,1fr)}.mastering-owner-cover{width:4rem;height:4rem}.mastering-owner-actions{align-items:start;flex-direction:column}.mastering-owner-edit form,.mastering-social-editor{grid-template-columns:1fr}}
