.puzzle-library-heading{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:2rem;align-items:end;margin-bottom:1.25rem}.puzzle-library-heading h2{font-family:var(--serif,Georgia,serif);font-size:clamp(2rem,4.2vw,3.4rem);font-weight:500;letter-spacing:-.035em;line-height:1.08;margin:.7rem 0 1rem;max-width:670px}.puzzle-library-heading p{max-width:620px;color:#5e6358;line-height:1.7;margin:0}.puzzle-library-stat{border-left:1px solid #d6d4c4;padding:1rem 0 1rem 2rem;display:flex;flex-direction:column;gap:.3rem}.puzzle-library-stat strong{font-family:Georgia,serif;font-weight:400;font-size:3.7rem;line-height:1;color:#354432}.puzzle-library-stat span{font-size:.9rem}.puzzle-library-stat small{font-size:.75rem;line-height:1.5;color:#696d60;margin-top:.6rem}.puzzle-library-note{background:#eeeee4;border:1px solid #dcdecf;border-radius:8px;color:#5a6154;padding:1rem 1.2rem;font-size:.85rem;line-height:1.6;margin:1.5rem 0}.puzzle-filters{display:grid;grid-template-columns:1.2fr 1.2fr 1fr 1.5fr;gap:1rem}.puzzle-filters label{display:flex;flex-direction:column;gap:.4rem;font-size:.75rem;letter-spacing:.03em;color:#606355}.puzzle-filters select,.puzzle-filters input{font:inherit;font-size:.85rem;color:#2d342a;background:#fbfaf6;border:1px solid #d4d4c6;border-radius:7px;min-height:44px;padding:.65rem .75rem;min-width:0;width:100%}.puzzle-filters input:focus,.puzzle-filters select:focus{outline:2px solid #88764c;outline-offset:2px}.puzzle-library-tools{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin:1.3rem 0}.puzzle-library-tools p{font-size:.8rem;color:#676e5f;margin:0}.puzzle-library-tools>div{display:flex;gap:1rem;align-items:center}.puzzle-cards{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.7rem!important;overflow:visible!important}.puzzle-card{display:flex!important;flex-direction:column;align-items:flex-start;text-align:left;position:relative;min-width:0!important;min-height:135px;padding:1rem 1.1rem 1rem 3.6rem!important;flex-basis:auto!important}.puzzle-card .puzzle-number{position:absolute;left:.9rem;top:1rem;font-size:.8rem;font-variant-numeric:tabular-nums}.puzzle-card small{letter-spacing:.07em;font-size:.6rem;line-height:1.5;max-width:100%}.puzzle-card strong{font-size:.97rem;line-height:1.35;margin:.4rem 0;overflow-wrap:anywhere}.puzzle-card-theme{font-size:.72rem;color:#6c715e;line-height:1.3}.puzzle-card-complete{font-size:.67rem;color:#4c653c;margin-top:.4rem}.puzzle-card.done::after{display:none}.puzzle-pagination{display:flex;justify-content:center;align-items:center;gap:1.2rem;margin:1.5rem 0 .5rem}.puzzle-pagination span{font-size:.8rem;color:#616956}.puzzle-empty{text-align:center;background:#efeee5;border-radius:8px;padding:2rem;color:#616956}.puzzle-objective-kind{font-size:.75rem!important;line-height:1.4!important;margin:.5rem 0 1rem!important;color:#7b694c!important}.puzzle-controls .inline-link{display:block;text-align:left;margin-top:.8rem;line-height:1.5}.puzzle-library-tools button:disabled,.puzzle-pagination button:disabled{opacity:.4;cursor:default}
@media(max-width:1000px){.puzzle-filters{grid-template-columns:1fr 1fr}.puzzle-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}.puzzle-library-heading{grid-template-columns:minmax(0,1fr) 180px}}
@media(max-width:560px){.puzzle-library-heading{grid-template-columns:1fr;gap:1rem}.puzzle-library-heading h2{font-size:2.25rem}.puzzle-library-stat{border-left:0;border-top:1px solid #d6d4c4;padding:1rem 0 0;display:grid;grid-template-columns:auto 1fr;column-gap:.85rem;align-items:center}.puzzle-library-stat strong{font-size:2.7rem;grid-row:span 2}.puzzle-library-stat small{margin:0}.puzzle-filters{gap:.75rem}.puzzle-library-tools{align-items:flex-start;flex-direction:column}.puzzle-library-tools>div{width:100%;justify-content:space-between}.puzzle-cards{grid-template-columns:1fr!important}.puzzle-card{min-height:104px}.puzzle-pagination{gap:.5rem;justify-content:space-between}.puzzle-pagination .button{font-size:.72rem;padding:.7rem .6rem}.puzzle-pagination span{font-size:.68rem}.puzzle-library-note{padding:.85rem}.puzzle-filters select,.puzzle-filters input{font-size:16px}}
