.catalog-table{min-width:980px}
.catalog-table td:first-child{font-weight:720;color:var(--paper)}
.stat{display:inline-block;color:var(--sun);font-size:.82rem;font-weight:750}
.gallery-toolbar{display:flex;gap:.55rem;flex-wrap:wrap;margin:1rem 0}
.filter-button{cursor:pointer;border:1px solid var(--line);background:var(--moss);color:var(--muted);padding:.62rem .8rem}
.filter-button:hover,.filter-button.active{background:var(--paper);border-color:var(--paper);color:var(--night-deep)}
.gallery{display:block}
.media-device-group{margin:2.5rem 0 3.5rem}
.media-device-group h3{font-family:PixelAE,monospace;font-size:1.2rem;font-weight:400;color:var(--paper);margin:0 0 1rem}
.device-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;align-items:start}
.device-gallery[data-device="iPad"],.device-gallery[data-device="Mac"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.device-gallery[data-device="Apple Watch"]{grid-template-columns:repeat(4,minmax(0,1fr))}
.gallery figure{width:100%;margin:0;background:var(--night-deep);overflow:hidden}
.gallery img{display:block;width:100%;height:auto;cursor:zoom-in;transition:filter .2s ease}
.gallery img:hover{filter:brightness(1.08)}
.gallery figcaption{padding:.6rem .72rem;color:var(--muted);font-size:.78rem}
.video-card{background:var(--night-deep);border-top:3px solid var(--clay);padding:1rem;margin:1rem 0}
.video-card video{display:block;width:100%;max-height:560px}
.lightbox{position:fixed;inset:0;background:rgba(2,11,24,.96);z-index:200;display:none;align-items:center;justify-content:center;padding:1rem}
.lightbox.open{display:flex}
.lightbox img{max-width:min(95vw,1200px);max-height:88vh;object-fit:contain}
.lightbox button{position:absolute;top:1rem;right:1rem;border:1px solid var(--paper);width:44px;height:44px;background:var(--night);color:var(--paper);font-size:1.3rem;cursor:pointer}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin:1rem 0}
.related-grid a{display:block;padding:.9rem;background:var(--moss);text-decoration:none}
.related-grid a:hover{background:var(--moss-light)}
.definition-list{display:grid;grid-template-columns:minmax(130px,.3fr) 1fr;gap:.65rem 1rem}
.definition-list dt{font-weight:720;color:var(--paper)}
.definition-list dd{margin:0;color:var(--muted)}
@media(max-width:850px){.device-gallery,.device-gallery[data-device="Apple Watch"]{grid-template-columns:repeat(2,minmax(0,1fr))}.related-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.device-gallery,.device-gallery[data-device="iPad"],.device-gallery[data-device="Mac"],.device-gallery[data-device="Apple Watch"]{grid-template-columns:1fr}.related-grid{grid-template-columns:1fr}.definition-list{grid-template-columns:1fr}}

.recipe-planner{scroll-margin-top:2rem}
.planner-controls{display:grid;grid-template-columns:minmax(220px,1fr) minmax(110px,.28fr) auto;gap:1rem;align-items:end;margin:1rem 0 0;padding:1.25rem 0;border-top:3px solid var(--clay);border-bottom:1px solid var(--line)}
.planner-controls label{display:grid;gap:.4rem;color:var(--paper);font-weight:720;font-size:.82rem}
.planner-controls select,.planner-controls input{width:100%;min-height:46px;background:var(--night-deep);color:var(--ink);border:1px solid var(--line);border-radius:0;padding:.7rem .75rem}
.planner-reset{min-height:46px;border:0;border-radius:0;background:var(--paper);color:var(--night-deep);font-weight:780;padding:.7rem 1rem;cursor:pointer}
.planner-reset:hover{background:#fff}
.planner-output{min-height:8rem;padding:1.25rem 0}
.planner-empty{color:var(--muted);margin:.35rem 0}
.planner-summary{display:flex;align-items:baseline;justify-content:space-between;gap:1.5rem;padding:1rem 0;border-bottom:2px solid var(--sun)}
.planner-summary strong{font-family:PixelAE,monospace;font-size:1.1rem;font-weight:400;color:var(--paper)}
.planner-summary span{color:var(--muted);text-align:right}
.planner-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2.25rem;margin-top:1.5rem}
.planner-result-section{min-width:0}
.planner-result-section h3{font-family:PixelAE,monospace;font-size:1.05rem;font-weight:400;margin:0 0 .7rem;color:var(--paper)}
.planner-list{margin:0}
.planner-list>dt,.planner-list>dd{display:inline-block;margin:0;padding:.52rem 0;border-top:1px solid var(--line)}
.planner-list>dt{width:75%;color:var(--muted)}
.planner-list>dd{width:25%;color:var(--sun);text-align:right;font-weight:720}
.planner-steps{margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--line)}
.planner-step-list{margin:0;padding-left:1.4rem}
.planner-step-list li{padding:.3rem 0;color:var(--muted)}
.planner-step-list strong{color:var(--paper)}
@media(max-width:650px){.planner-controls,.planner-result-grid{grid-template-columns:1fr}.planner-reset{width:100%}.planner-summary{display:grid;gap:.3rem}.planner-summary span{text-align:left}}
