:root{font-family:system-ui,sans-serif;color:#283936;background:#f4f4ef;line-height:1.6}*{box-sizing:border-box}body{margin:0}header,nav,main,footer{max-width:960px;margin:auto;padding:1.3rem}header{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.brand{font-size:1.6rem;font-weight:800;text-decoration:none}a{color:#17624e}nav{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}nav form{margin-left:auto}main{min-height:65vh}h1{font-size:clamp(1.7rem,4vw,2.5rem);line-height:1.2}h2{font-size:1.2rem}.panel{background:white;border:1px solid #d7e0da;border-radius:14px;padding:1.5rem;margin-bottom:1.2rem}.narrow{max-width:560px;margin-inline:auto}.cards{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:1rem}.cards .panel{margin:0}label{display:block;font-weight:600}input:not([type=hidden]),textarea{width:100%;padding:.8rem;border:1px solid #85988c;border-radius:6px;font:inherit}button,.button{display:inline-block;border:0;background:#1c654e;color:white;padding:.75rem 1rem;border-radius:7px;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;min-height:44px}button.secondary{color:#33483f;background:#e8eee9}.helptext{display:block;font-size:.9rem;color:#54625b}.errorlist{color:#a02c2c}.notice{padding:1rem;background:#e0eee5;border-left:4px solid #287558}.eyebrow{font-weight:700;color:#557060}.invitation{border-top:1px solid #d7e0da;padding-block:1rem}footer{font-size:.9rem;color:#607166}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #bc7918;outline-offset:3px}@media(max-width:450px){header,nav,main,footer{padding:1rem}.panel{padding:1rem}nav{gap:.8rem}nav form{margin-left:0;width:100%}}
/* Bibliothek: gemeinsame Angaben und gut bedienbare Formulare. */
.game-cards .panel,.game-heading,.material-links li{overflow-wrap:anywhere;min-width:0}.game-cover{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:130px;background:#edf0e9;border:1px solid #d7e0da;border-radius:10px;color:#607166}.game-cover>span:first-child{font-size:2.7rem;line-height:1.2}.game-cover>span:last-child{font-size:.85rem}.game-heading{display:flex;gap:1.5rem;align-items:center}.game-heading .game-cover{flex:0 0 130px}.game-heading h1{margin-block:.3rem}.game-metadata,.muted{color:#54625b;font-size:.9rem}.group-entries,.material-links{list-style:none;padding:0}.group-entries li{padding:.5rem 0}.badges{display:flex;gap:.35rem;flex-wrap:wrap}.badges span{background:#edf2ed;border-radius:5px;padding:.15rem .45rem;font-size:.82rem}.detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.detail-columns>*{min-width:0}.checkbox-field{display:flex;align-items:center;gap:.7rem;margin-bottom:1rem;min-height:44px}.checkbox-field label{font-weight:500;cursor:pointer}input[type=checkbox]{width:1.25rem;height:1.25rem;flex:0 0 auto;accent-color:#1c654e}.form-field{margin-bottom:1rem}.form-field.checkbox-field{flex-direction:row-reverse;justify-content:flex-end}.material-links li{padding:1rem 0;border-bottom:1px solid #d7e0da}.material-links details{margin-top:.5rem}summary{cursor:pointer;min-height:44px;padding:.5rem 0;color:#17624e;font-weight:600}.link-form{max-width:560px}select{width:100%;padding:.8rem;border:1px solid #85988c;border-radius:6px;font:inherit;background:white}select:focus-visible,summary:focus-visible{outline:3px solid #bc7918;outline-offset:3px}@media(max-width:600px){.detail-columns{grid-template-columns:1fr;gap:0}.game-heading{align-items:flex-start;flex-direction:column}.game-heading .game-cover{width:100%;flex-basis:auto}.game-heading>div{max-width:100%}}

.bgg-row,.bgg-field{overflow-wrap:anywhere;min-width:0}.bgg-field{padding-block:.8rem;border-bottom:1px solid #d7e0da}.bgg-hit{margin-block:1rem}.game-cover img{max-width:100%;width:100%;height:180px;object-fit:contain}.game-cover [data-cover-fallback]{text-align:center;padding:1rem}.game-cover [data-cover-fallback] span{display:block}.game-cover [data-cover-fallback] span:first-child{font-size:2.7rem}.game-cover [hidden]{display:none}

/* Bibliothekskarten: kompaktes Cover links, alle Angaben rechts. */
.game-cards{grid-template-columns:minmax(0,1fr)}
.game-cards .panel:has(>.game-cover){display:grid;grid-template-columns:130px minmax(0,1fr);column-gap:1.5rem;align-content:start;align-items:start}
.game-cards .panel>.game-cover{grid-column:1;grid-row:1 / span 4;min-height:0;overflow:hidden}
.game-cards .panel>.game-cover~*{grid-column:2;min-width:0}
.game-cards .game-cover img{display:block;height:auto}
.game-cards .game-cover [data-cover-fallback]{min-height:128px}
.game-cards .panel:has(>.game-cover)>h2{margin:0}
.game-cards .group-entries{margin-block:0 .75rem}
@media(max-width:450px){.game-cards .panel:has(>.game-cover){grid-template-columns:80px minmax(0,1fr);column-gap:1rem}.game-cards .game-cover [data-cover-fallback]{min-height:78px;padding:.5rem}}

/* Detailcover folgen dem Bildformat, auch in der schmalen Ansicht. */
.game-heading .game-cover{width:130px;min-height:0;overflow:hidden}.game-heading .game-cover img{display:block;height:auto}.game-heading .game-cover [data-cover-fallback]{min-height:128px}

.member-avatar{display:inline-flex;width:80px;height:80px;border-radius:50%;object-fit:cover;vertical-align:middle}.member-avatar-placeholder{align-items:center;justify-content:center;background:#dce9df;color:#17624e;font-size:2rem;font-weight:700}.profile-picture{padding-bottom:1.5rem;margin-bottom:1.5rem;border-bottom:1px solid #ccd9d0}.profile-picture input[type=file]{max-width:100%;width:100%}

/* Avatar gallery: native keyboard-accessible radio choices. */
.avatar-current{display:flex;gap:1rem;align-items:center;margin-block:1.2rem}.avatar-category{border:0;padding:0;margin:1.8rem 0}.avatar-category legend{font-size:1.2rem;font-weight:700;margin-bottom:.7rem}.avatar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.8rem}.avatar-choice{position:relative;cursor:pointer;min-width:0}.avatar-choice input[type=radio]{position:absolute;top:.65rem;left:.65rem;width:1.15rem;height:1.15rem;margin:0;z-index:1;accent-color:#17624e}.avatar-tile{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.5rem;border:2px solid #d7e0da;background:#f4f4ef;border-radius:12px;padding:.65rem .4rem;font-size:.9rem;line-height:1.3;height:100%}.avatar-tile img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:50%}.avatar-choice input:checked+.avatar-tile{border-color:#17624e;background:#e0eee5;box-shadow:0 0 0 2px #17624e}.avatar-choice input:focus-visible+.avatar-tile{outline:3px solid #bc7918;outline-offset:3px}.avatar-gallery-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding:1rem 0}.avatar-gallery-actions button{max-width:100%;white-space:normal}@media(max-width:450px){.avatar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.avatar-current{align-items:center}.avatar-gallery-actions{align-items:stretch;flex-direction:column}}
/* Catalog details and personal editions use the existing green design. */
.description { white-space: normal; overflow-wrap: anywhere; max-height: 28rem; overflow: auto; margin-block: 1rem; }
.copy-list { list-style: none; padding: 0; }
.copy-list li { display: flex; gap: 1rem; align-items: center; margin-block: 1rem; }
.copy-list img { width: 80px; height: auto; object-fit: contain; }
fieldset { min-width: 0; margin-block: 1rem; border: 1px solid #b9c8b7; border-radius: 12px; padding: 1rem; }
select { max-width: 100%; }
/* Single-game search and preview, usable without JavaScript. */
.game-add{max-width:760px;margin-inline:auto}.add-actions{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center}.add-actions button{white-space:normal}.add-hit{display:flex;gap:1rem;justify-content:space-between;align-items:center;padding-block:1rem;border-bottom:1px solid #d7e0da}.add-hit>div{min-width:0;overflow-wrap:anywhere}.add-hit p{margin:.25rem 0}.add-hit button,.add-hit>.button{flex-shrink:0}.add-preview-heading{display:flex;gap:1.2rem;align-items:flex-start;overflow-wrap:anywhere}.add-preview-heading>.game-cover{flex:0 0 110px;width:110px;overflow:hidden}.add-preview-heading>div:last-child{min-width:0}.add-preview-heading h3{margin-top:0}.add-preview-heading .game-cover img{height:auto;max-height:160px}.game-add input[type=search]{appearance:none}@media(max-width:450px){.add-actions{align-items:stretch;flex-direction:column}.add-hit{align-items:flex-start;flex-direction:column}.add-preview-heading>.game-cover{width:80px;flex-basis:80px}.add-preview-heading{gap:.8rem}.add-hit button{width:100%}}
