.library-page main{max-width:1200px;padding:36px 24px;margin:auto}.library-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.library-intro h1{margin:10px 0 12px}.library-intro p{margin-bottom:0}.library-diary-link{color:var(--green);font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap}.gallery-controls{display:flex;align-items:center;gap:14px}.gallery-controls .search{margin:0;max-width:550px;flex:1}.gallery-controls .search input{padding:15px 4px;font-size:14px}.gallery-controls .chip{padding:14px 18px;font-size:13px}.gallery-categories{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.gallery-categories button{padding:9px 15px;font-size:12px;background:var(--surface,#fff);border:1px solid var(--line);border-radius:20px}.gallery-categories button[aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}.recipe-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:20px}.gallery-card{display:flex;flex-direction:column;min-width:0;text-decoration:none;color:var(--ink);background:var(--surface,#fff);border:1px solid var(--line);border-radius:20px;overflow:hidden;transition:transform .15s,box-shadow .15s}.gallery-card:hover{transform:translateY(-3px);box-shadow:0 8px 25px var(--ink)10;border-color:#b9c9df}.gallery-cover{height:150px;background:var(--soft);display:flex;align-items:center;justify-content:center;position:relative}.gallery-cover .food-miniature{width:118px;height:118px;flex-basis:118px}.gallery-cover .gallery-category{position:absolute;left:16px;top:14px;background:#ffffffce;padding:6px 10px;border-radius:12px;font-size:11px;color:var(--green)}.gallery-heart{position:absolute;right:16px;top:14px;color:var(--green);font-size:22px}.gallery-card-content{padding:22px;display:flex;flex:1;flex-direction:column}.gallery-card h2{font-size:21px;line-height:1.35;margin:0 0 10px}.gallery-description{font-size:13px;line-height:1.7;color:var(--muted);margin:0 0 20px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gallery-card-meta{font-size:12px;color:var(--muted);margin-top:auto;display:flex;gap:12px;flex-wrap:wrap}.gallery-card-bottom{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);margin-top:16px;padding-top:16px;font-size:12px;color:var(--green)}.gallery-empty{grid-column:1/-1;padding:40px;background:var(--surface,#fff);border:1px dashed var(--line);border-radius:20px;color:var(--muted);line-height:1.7}.gallery-empty a{color:var(--green)}@media(max-width:950px){.recipe-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.library-page main{padding:28px 18px}.library-intro{align-items:flex-start;flex-direction:column;gap:16px}.library-intro h1{font-size:36px}.recipe-gallery{grid-template-columns:1fr;gap:18px}.gallery-cover{height:130px}.gallery-card h2{font-size:20px}.gallery-controls{gap:8px}.gallery-controls .chip{padding:12px;font-size:12px}.gallery-controls .search input{font-size:12px}.gallery-categories{gap:6px}.gallery-categories button{padding:8px 12px}}
.gallery-cover .gallery-dish-image{width:150px;height:140px;object-fit:contain}

.gallery-nutrition{position:relative;cursor:help;outline-offset:4px}.gallery-nutrition-tooltip{display:none;position:absolute;bottom:calc(100% + 10px);left:0;width:max-content;max-width:250px;padding:10px 12px;line-height:1.8;border-radius:10px;background:#233c60;color:white;box-shadow:0 4px 14px #233c6025;z-index:2;font-size:12px}.gallery-nutrition:hover .gallery-nutrition-tooltip,.gallery-nutrition:focus .gallery-nutrition-tooltip{display:block}.gallery-cover .gallery-dish-image{width:100%;height:100%;object-fit:cover}.gallery-category,.gallery-heart{z-index:1}

.recipe-time-note{display:block;flex-basis:100%;font-size:12px;line-height:1.5;color:var(--muted);overflow-wrap:anywhere}
