.hf-main{max-width:1180px}
.hf-main h1{font-size:clamp(2.4rem,7vw,5rem);line-height:1.03;letter-spacing:-.045em;max-width:1000px;overflow-wrap:anywhere}
.hf-main h2{font-size:clamp(1.65rem,3vw,2.5rem);line-height:1.15}
.hf-main h3{font-size:1.4rem;line-height:1.2}
.hf-main p{line-height:1.65}
.hf-main .lede{max-width:780px}
.hf-breadcrumb,.hf-small,.hf-support,figcaption{color:var(--text-muted,#aeb4be)}
.hf-breadcrumb{font-size:.9rem}
.hf-jumps,.hf-actions,.hf-footer{display:flex;gap:18px;flex-wrap:wrap}
.hf-jumps{margin:28px 0}
.hf-jumps a,.hf-more,.hf-footer a{color:var(--accent)}
.hf-section{margin-top:58px;scroll-margin-top:130px}
.hf-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:24px}
.hf-card{min-width:0;border:1px solid #30343b;border-radius:14px;overflow:hidden;background:var(--surface-panel,#111318)}
.hf-card-body{padding:24px}
.hf-card h3 a{color:var(--text-strong,#f6f6f3);text-decoration:none}
.hf-card h3 a:hover{text-decoration:underline}
.hf-card p{color:var(--text-muted,#b6bbc4)}
.hf-card .tag{font-size:.7rem;letter-spacing:.09em}
.hf-card-image{background:var(--surface-panel,#090a0b);padding:16px;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center}
.hf-card-image>img{display:block;max-width:100%;width:100%;height:100%;object-fit:contain}
.hf-more{font-weight:700}
.hf-detail{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:36px;margin-top:36px;align-items:start}
.hf-detail:has(>.hf-notes:only-child){grid-template-columns:1fr;max-width:760px}
.hf-figure{margin:24px 0;max-width:900px;min-width:0}
.hf-detail .hf-figure{margin:0}
.hf-image{position:relative;background:var(--surface-panel,#090a0b);border:1px solid #30343b;border-radius:12px;padding:20px 20px 54px;text-align:center}
.hf-image>img{display:block;width:auto;height:auto;max-width:100%;max-height:720px;margin:auto;object-fit:contain}
.hf-brand{position:absolute;bottom:15px;right:18px;display:flex;align-items:center;gap:8px;font-weight:800;font-size:.8rem;color:var(--text-strong,white)}
.hf-brand img{width:24px;height:24px}
.hf-figure figcaption{font-size:.85rem;line-height:1.5;margin-top:10px}
.hf-facts{display:grid;grid-template-columns:1fr;gap:8px}
.hf-facts dt{color:var(--text-muted,#aeb4be);font-size:.85rem}
.hf-facts dd{margin:0 0 10px;font-weight:700}
.hf-status{display:inline-block;background:var(--surface-panel,#202b12);color:var(--text-muted,#d2ff67);padding:5px 12px;border-radius:6px;font-size:.9rem}
.hf-notes h2{margin-top:0}
.hf-actions .button{white-space:normal;text-align:center;max-width:100%}
.hf-support,.hf-small{font-size:.88rem}
.hf-recipe{border:1px solid #30343b;border-radius:12px;padding:22px;margin:32px 0;max-width:900px}
.hf-recipe summary{cursor:pointer;font-size:1.2rem;font-weight:800}
.hf-recipe table{border-collapse:collapse;width:100%;font-size:.9rem}
.hf-recipe caption{text-align:left;padding:12px 0;color:var(--text-muted,#aeb4be)}
.hf-recipe th,.hf-recipe td{padding:12px 8px;text-align:left;border-bottom:1px solid #30343b}
.hf-recommend{padding:28px;border-left:4px solid #c6ff00;background:var(--surface-panel,#111318)}
.hf-footer{padding-block:25px 60px;font-size:.9rem}
.hf-skip{position:absolute;left:10px;top:-100px;background:#c6ff00;color:#111;padding:12px;z-index:1000}
.hf-skip:focus{top:10px}
.hf-main a:focus-visible,.hf-main summary:focus-visible{outline:3px solid #c6ff00;outline-offset:5px}

@media(max-width:950px){.hf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.hf-detail{grid-template-columns:1fr}
.hf-detail .hf-figure{max-width:650px}
.hf-notes{max-width:760px}
}

@media(max-width:620px){.hf-grid{grid-template-columns:minmax(0,1fr)}
.hf-card-body{padding:20px}
.hf-card-image{aspect-ratio:4/3}
.hf-section{margin-top:42px}
.hf-jumps{gap:12px 20px}
.hf-image{padding:12px 12px 48px}
.hf-recipe{padding:16px}
.hf-recipe th,.hf-recipe td{padding:10px 4px}
}

.hf-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.hf-gallery .hf-figure{margin:0}
@media(max-width:620px){.hf-gallery{grid-template-columns:minmax(0,1fr)}}

.hf-card-image{position:relative;padding-bottom:48px}
.hf-card-image>.hf-brand{bottom:12px;right:14px;font-size:.75rem}
.hf-card-image>.hf-brand img{width:22px;height:22px}
