/* Bauwerks-Übersicht (/structures) – ergänzt creature.css + biome.css */
:root { --r1-bg: var(--surface2); --r2-bg: #e3edfb; --r2: #2d5fa8; --r3-bg: #f6e9c8; --r3: #8a5a00; }
@media (prefers-color-scheme: dark) { :root { --r2-bg: #1d2b44; --r2: #9cc0f5; --r3-bg: #3a2e14; --r3: #f2c86b; } }
.controls > * { min-width: 0; }
.seg { overflow-x: auto; scrollbar-width: none; }
.seg::-webkit-scrollbar { display: none; }
.seg button { font-size: 13px; padding: 7px 8px; }
.play { white-space: nowrap; }
@media (max-width: 480px) { .brand span { display: none; } .nav { gap: 10px; } .nav a:not(.play) { font-size: 13px; } }
@media (max-width: 560px) { .seg button b { display: none; } }
.chips button[data-s] { font-weight: 600; }
.bio .sub { margin: 2px 0 0; font-size: 12px; color: var(--muted); line-height: 1.35; }
.badges { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 5px; }
.badge { font-size: 11px; font-weight: 700; padding: 1px 7px; border-radius: 6px; background: var(--surface2); border: 1px solid var(--line); color: var(--muted); }
.badge.boss { background: var(--mon-bg); color: var(--mon); border-color: transparent; }
.cl .bt { display: inline-flex; flex-direction: column; line-height: 1.2; padding: 3px 9px; border-radius: 9px; }
.cl .bt small { font-size: 11px; color: var(--muted); }
.cl span.it { font-size: 13px; padding: 2px 8px; border-radius: 999px; background: var(--r1-bg); border: 1px solid transparent; }
.cl span.it.r2 { background: var(--r2-bg); color: var(--r2); }
.cl span.it.r3 { background: var(--r3-bg); color: var(--r3); font-weight: 700; }
.cl span.it i { font-style: normal; opacity: .7; font-weight: 500; }
.cl span.tag { font-size: 13px; padding: 2px 8px; border-radius: 999px; background: var(--surface2); }
.note { font-size: 12px; color: var(--muted); }
details.lt { border: 1px solid var(--line); border-radius: 9px; background: var(--surface2); }
details.lt + details.lt { margin-top: 4px; }
details.lt summary { cursor: pointer; padding: 6px 10px; font-size: 13px; font-weight: 600; display: flex; justify-content: space-between; gap: 8px; list-style: none; }
details.lt summary::-webkit-details-marker { display: none; }
details.lt summary::before { content: '▸'; color: var(--muted); margin-right: 2px; }
details.lt[open] summary::before { content: '▾'; }
details.lt summary span:first-of-type { flex: 1; }
details.lt summary small { font-weight: 500; color: var(--muted); white-space: nowrap; }
table.loot { width: 100%; border-collapse: collapse; font-size: 13px; background: var(--surface); border-radius: 0 0 9px 9px; }
table.loot th { text-align: left; font-size: 11px; text-transform: uppercase; letter-spacing: .04em; color: var(--muted); font-weight: 700; padding: 5px 10px; border-top: 1px solid var(--line); }
table.loot td { padding: 4px 10px; border-top: 1px solid var(--line); vertical-align: middle; }
table.loot td.n { white-space: nowrap; font-variant-numeric: tabular-nums; }
table.loot td.p { width: 38%; }
table.loot tr.r2 td:first-child { color: var(--r2); }
table.loot tr.r3 td:first-child { color: var(--r3); font-weight: 700; }
table.loot tr.hit td:first-child { text-decoration: underline; text-decoration-color: var(--accent); text-decoration-thickness: 2px; }
.bar-p { display: flex; align-items: center; gap: 6px; font-variant-numeric: tabular-nums; }
.bar-p b { font-weight: 600; min-width: 34px; text-align: right; }
.bar-p i { flex: 1; height: 6px; border-radius: 3px; background: var(--surface2); position: relative; overflow: hidden; }
.bar-p i::after { content: ''; position: absolute; inset: 0; width: var(--w); background: var(--accent); border-radius: 3px; }
.lootcard .uses { font-size: 12px; color: var(--muted); }
.lootcard .uses a { color: var(--text); }
.bio.flash { outline: 3px solid var(--accent); outline-offset: 2px; }
.chips[hidden], #sort[hidden] { display: none; }

/* Zufallswaffen je Seltenheit */
.it.wr0 { color: #e8e8e8; } .it.wr1 { color: #7ee07e; } .it.wr2 { color: #6fb4ff; } .it.wr3 { color: #c77dff; } .it.wr4 { color: #ffb640; }
/* Beute-Stufen je Truhe (lootrules.js) */
.lvtag { flex: 0 0 auto !important; font-size: 11px; font-weight: 700; padding: 1px 7px; border-radius: 99px; background: var(--surface); border: 1px solid var(--line); color: var(--muted); white-space: nowrap; }
.lvtag.l1 { color: #6c6; } .lvtag.l2 { color: #bb5; } .lvtag.l3 { color: #e93; } .lvtag.l4 { color: #e55; } .lvtag.l5 { color: #c4f; }
.lvsel { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; font-size: 12px; color: var(--muted); margin: 2px 0 6px; }
.lvsel button { font: inherit; font-size: 12px; padding: 2px 9px; border-radius: 99px; border: 1px solid var(--line); background: var(--surface2); color: inherit; cursor: pointer; }
.lvsel button.on { background: var(--accent, #3a7); color: #fff; border-color: transparent; }
.lvsel small { margin-left: 4px; }
table.loot tr.locked td { opacity: .45; }
table.loot tr.locked td.lockp { opacity: .8; font-size: 12px; color: var(--muted); }
.rules { font-size: 12px; color: var(--muted); margin: 6px 2px 0; line-height: 1.45; }
.it.wr4 { color: #ff6fd8; } .it.wr5 { color: #ffb640; } .it.wr6 { color: #ff4d4d; }
/* Stufen 1–7: Schwierigkeit (Karten, Punkte) und Seltenheit (Items, Truhen) */
.lv6 { --lv: #8a1030; } .lv7 { --lv: #4a0a1a; }
.lvtag.l1 { color: #8a8a8a; } .lvtag.l2 { color: #3aa84a; } .lvtag.l3 { color: #2f7fe0; } .lvtag.l4 { color: #9b4be0; }
.lvtag.l5 { color: #d63aa8; } .lvtag.l6 { color: #e08a10; } .lvtag.l7 { color: #e02a2a; font-weight: 800; }
.it.lv1 { color: #8a8a8a; } .it.lv2 { color: #3aa84a; } .it.lv3 { color: #2f7fe0; } .it.lv4 { color: #9b4be0; } .it.lv5 { color: #d63aa8; } .it.lv6 { color: #e08a10; } .it.lv7 { color: #e02a2a; }
table.loot tr.r4 td:first-child { color: #9b4be0; } table.loot tr.r5 td:first-child { color: #d63aa8; } table.loot tr.r6 td:first-child { color: #e08a10; font-weight: 600; } table.loot tr.r7 td:first-child { color: #e02a2a; font-weight: 700; }
details.story { margin: 8px 0 2px; }
details.story p { margin: 0; padding: 4px 12px 10px; font-size: 14px; line-height: 1.55; color: var(--text, inherit); background: var(--surface); border-radius: 0 0 9px 9px; }
