/* Study library: inherit Huntar colours, typography and buttons; keep pictures uncropped. */
.image-library {padding-top: clamp(24px, 4vw, 60px); padding-bottom:60px;}
.image-library [hidden] {display:none !important;}
.image-library-intro {display:grid;grid-template-columns:minmax(0,1.6fr) minmax(240px,1fr);gap:42px;align-items:center;margin-bottom:34px;}
.image-library-intro h1 {font-size:clamp(32px,4vw,58px);line-height:1.12;letter-spacing:-.035em;margin:12px 0 20px;}
.image-library-intro h1 span {color:#637149;}
.image-library-intro .lead {font-size:17px;line-height:1.75;max-width:740px;}
.library-totals {display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:22px;}
.library-totals span {font-size:14px;color:#535a49;}
.library-totals strong {font-size:20px;color:#303923;}
.library-guide {border:1px solid #daddd0;border-radius:20px;background:#f1f2e9;padding:28px;}
.library-guide h2 {font-size:23px;line-height:1.3;margin:10px 0 22px;}
.library-guide p {font-size:15px;line-height:1.6;}
.library-guide b {margin-right:10px;color:#66744e;font-variant-numeric:tabular-nums;}
.library-filters {display:flex;flex-wrap:wrap;gap:16px;align-items:end;padding:22px;background:#fff;border:1px solid #daddd0;border-radius:16px;}
.library-filters label {display:flex;flex:1 1 165px;flex-direction:column;gap:7px;font-weight:600;font-size:14px;min-width:0;}
.library-filters .library-search {flex:2 1 270px;}
.library-filters input,.library-filters select {width:100%;min-width:0;padding:12px;border-radius:8px;border:1px solid #c8cfbc;background:#fff;color:#293023;font:inherit;min-height:47px;}
.library-filters input:focus,.library-filters select:focus {outline:2px solid #637149;outline-offset:2px;}
.library-resultbar {display:flex;gap:16px;justify-content:space-between;align-items:center;margin:24px 0;flex-wrap:wrap;}
.library-resultbar p {font-size:15px;font-weight:600;margin:0;}
.library-resultbar [aria-disabled=true] {opacity:.45;pointer-events:none;}
.library-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start;}
.library-card {min-width:0;background:#fff;border:1px solid #dcdfd3;border-radius:16px;overflow:hidden;scroll-margin-top:24px;}
.library-card:target {outline:3px solid #7d8c60;outline-offset:3px;}
.library-image {display:block;position:relative;background:#f4f4ee;aspect-ratio:4/3;border-bottom:1px solid #e5e6dc;}
.library-image img {width:100%;height:100%;display:block;object-fit:contain;}
.library-image span {position:absolute;bottom:10px;right:10px;background:#fff;color:#343c27;padding:5px 10px;border:1px solid #daddd0;border-radius:6px;font-size:12px;box-shadow:0 2px 8px #28351a12;}
.library-card-body {padding:20px;}
.library-card-meta {display:flex;gap:6px;align-items:center;justify-content:space-between;font-size:10px;color:#666e5a;flex-wrap:wrap;letter-spacing:.035em;}
.library-origin {background:#eff1e7;padding:5px 7px;border-radius:4px;color:#52613e;font-weight:700;}
.library-origin.is-real {background:#edf1f6;color:#36546c;}
.library-card h2 {font-size:20px;line-height:1.35;margin:16px 0 6px;letter-spacing:-.015em;}
.library-categories {font-size:12px;color:#657052;margin:0 0 18px;}
.library-questions > summary,.library-caution > summary,.library-answer > summary {cursor:pointer;font-size:14px;font-weight:600;padding:12px 0;line-height:1.5;}
.library-questions > summary span {border-radius:20px;background:#eef1e6;padding:3px 8px;margin-left:5px;white-space:nowrap;}
.library-question {border-top:1px solid #e5e6dc;padding:18px 0 5px;}
.library-question h3 {font-size:17px;line-height:1.5;margin:8px 0;}
.library-question .eyebrow {font-size:10px;}
.library-question h4 {font-size:14px;margin:14px 0 8px;}
.library-question p,.library-answer,.library-caution p {font-size:14px;line-height:1.75;overflow-wrap:anywhere;}
.library-answer {background:#f6f7f0;padding:0 12px 10px;border-radius:8px;margin:10px 0;}
.library-answer:not([open]) {padding-bottom:0;}
.library-caption {border-left:3px solid #c0c9a9;padding:0 10px;color:#566147;}
.library-source-links a {display:block;margin:10px 0;}
.library-sources summary {cursor:pointer;}
.library-caution {border-top:1px solid #e5e6dc;margin-top:5px;}
.library-card-actions {display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:16px;}
.library-card-actions .button {font-size:13px;padding:11px 14px;min-height:43px;}
.library-permalink {font-size:12px;color:#52613e;text-underline-offset:3px;}
.library-note,.library-empty {padding:22px;background:#edf0e6;border-radius:12px;font-size:14px;line-height:1.75;margin-top:30px;}
.library-card a:focus-visible,.image-library summary:focus-visible {outline:3px solid #758654;outline-offset:3px;}
.game-picture-filters {display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;border-top:1px solid #dce0d3;padding-top:15px;margin-top:16px;}
.game-picture-filters label {display:flex;align-items:center;gap:10px;font-size:14px;}
.game-picture-filters select {max-width:100%;padding:8px;border:1px solid #c8cfbc;border-radius:6px;background:#fff;font:inherit;}
.game-picture-selection {font-size:14px;line-height:1.7;background:#eff2e6;border:1px solid #d8dfcb;border-radius:10px;padding:12px 16px;margin-top:16px;}
.game-picture-selection .game-text-button {margin-left:8px;}
.game-library-link {display:inline-block;margin-top:14px;font-size:14px;font-weight:600;}
@media(max-width:1050px) {.library-grid {grid-template-columns:repeat(2,minmax(0,1fr));}.image-library-intro{gap:24px;}}
@media(max-width:720px) {.image-library-intro{grid-template-columns:1fr;gap:20px;}.library-guide{padding:22px;}.library-filters{padding:18px;}.library-resultbar .button{width:100%;text-align:center;}.library-totals{gap:12px 18px;}}
@media(max-width:550px) {.library-grid{grid-template-columns:1fr;}.library-card-body{padding:18px;}.library-filters label{flex-basis:100%;}.library-filters .button{width:100%;}.game-picture-filters label{flex-wrap:wrap;}}
@media print {.library-filters,.library-resultbar .button,.library-card-actions,.library-image span{display:none!important;}.library-grid{display:block;}.library-card{break-inside:avoid;margin-bottom:20px;}.library-image{max-height:240px;aspect-ratio:auto;}.library-image img{max-height:240px;}}
