.content-wrap:has(.culture-library){grid-template-columns:minmax(0,1fr);max-width:1220px}
.content-wrap:has(.culture-library)>.right-rail{display:none}
.library-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 26px}
.library-head .eyebrow{font-size:11px;letter-spacing:.13em;margin:0 0 8px;color:var(--accent)}
.library-head h1{font-size:34px;line-height:1.15;letter-spacing:-.035em;margin:0 0 10px}
.library-head p{font-size:14px;line-height:1.6;color:var(--muted);margin:0}
.library-summary{display:grid;grid-template-columns:auto auto;align-items:baseline;gap:5px 10px;flex-shrink:0;border-left:1px solid var(--border);padding-left:24px}
.library-summary strong{font-size:22px;font-weight:600;color:var(--ink)}
.library-summary span{font-size:12px;color:var(--muted)}
.library-filters{padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:16px}
.library-search{max-width:none;width:100%;margin:0 0 16px;min-height:48px;background:var(--bg);box-shadow:none}
.library-search input{width:100%;min-width:0;font-size:14px}
.library-clear{flex:none;width:36px;height:36px;border-radius:8px;font-size:23px;color:var(--muted)}
.library-themes{display:flex;flex-wrap:wrap;gap:8px}
.library-themes button{display:flex;align-items:center;gap:8px;min-height:38px;padding:8px 12px;border:1px solid var(--border);border-radius:20px;color:var(--muted);font-size:12px;text-transform:capitalize;background:var(--surface)}
.library-themes button span{font-size:10px;opacity:.8;font-variant-numeric:tabular-nums}
.library-themes button.active{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.library-filter-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--border);margin-top:18px;padding-top:14px;flex-wrap:wrap}
.library-status{display:flex;gap:4px;flex-wrap:wrap}
.library-status button{padding:8px 12px;min-height:40px;border-radius:8px;font-size:13px;color:var(--muted)}
.library-status button.active{background:var(--soft);color:var(--accent);font-weight:600}
.library-reset{font-size:12px;min-height:40px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.library-results{margin:22px 0 14px;font-size:13px;color:var(--muted)}
.culture-library button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.culture-library .culture-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.culture-library .culture-tile{display:flex;flex-direction:column;width:100%;border-radius:15px;min-width:0}
.culture-library .culture-photo{width:100%;height:155px;flex-shrink:0}
.culture-library .culture-tile-body{padding:18px;display:flex;flex-direction:column;flex:1}
.culture-library .culture-tile-body .tiny-label{font-size:10px;letter-spacing:.07em;line-height:1.5}
.culture-library .culture-tile-body h2{font-size:17px;line-height:1.4;letter-spacing:-.02em;margin:8px 0 0}
.culture-library .culture-tile-body p{font-size:13px;line-height:1.65;margin:10px 0 18px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.culture-library .culture-tile-body .text-link{margin-top:auto;font-size:12px}
.culture-library .read-marker{font-size:10px;backdrop-filter:blur(8px);padding:5px 8px;border-radius:6px}
.library-pagination{display:flex;flex-direction:column;align-items:center;gap:12px;padding:28px 0}
.library-pagination .button{min-width:220px;min-height:46px}.library-pagination>span{font-size:12px;color:var(--muted)}
.library-unlock{display:flex;align-items:center;gap:14px;background:var(--soft);padding:18px 20px;border-radius:12px;color:var(--muted)}
.library-unlock>svg{flex-shrink:0}.library-unlock p{flex:1;margin:0;font-size:13px;line-height:1.6}.library-unlock strong{display:block;color:var(--ink);font-weight:600}.library-unlock .text-link{font-size:13px;white-space:nowrap}
.library-empty{padding:52px 20px;text-align:center;border:1px dashed var(--border);border-radius:15px}.library-empty h2{font-size:21px;margin:0 0 10px}.library-empty p{color:var(--muted);font-size:14px;margin-bottom:22px}
.dialog:has(.culture-reader){width:min(680px,calc(100% - 28px));padding:28px}
.culture-reader .dialog-image{height:210px;margin-bottom:20px}.culture-reader .tiny-label{font-size:11px;color:var(--muted)}
.culture-reader .reading-text{font-size:17px;line-height:1.85;margin:22px 0 28px}.culture-reader .reading-text p{margin:0 0 18px}
.reader-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:20px}.reader-actions .button{min-height:46px;font-size:13px}
.reader-read{display:flex;gap:8px;align-items:center;color:var(--accent);font-size:13px;padding:12px 0;margin-right:auto}.reader-next-title{font-size:12px;line-height:1.5;color:var(--muted);margin:12px 0 0}
@media(max-width:1100px){.culture-library .culture-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
 .library-head{align-items:flex-start;gap:14px}.library-head h1{font-size:29px}.library-head p{font-size:13px}.library-summary{padding-left:12px;gap:3px 6px}.library-summary strong{font-size:19px}.library-summary span{font-size:10px}
 .library-filters{padding:14px}.library-search input{font-size:13px}.library-themes{gap:6px}.library-themes button{font-size:11px;min-height:40px;padding:7px 10px}
 .library-status button{font-size:12px;padding:8px}.library-filter-bottom{gap:4px}
 .culture-library .culture-grid{grid-template-columns:1fr;gap:16px}.culture-library .culture-photo{height:180px}.culture-library .culture-tile-body{padding:18px}
 .library-unlock{align-items:flex-start;flex-wrap:wrap}.library-unlock .text-link{margin-left:34px}.library-unlock p{flex-basis:calc(100% - 40px)}
 .dialog:has(.culture-reader){padding:20px}.culture-reader .dialog-image{height:170px}.culture-reader .reading-text{font-size:16px;line-height:1.8}.reader-actions .button{flex:1 1 180px}
}
