/* KLH-95 review hub: HP-10 layout, KLH-95 brand (charcoal / crimson / gold, Barlow Condensed + Source Serif 4 + Inter). */
:root{--ink:#16181e;--body:#3a3e46;--muted:#666a73;--page:#f0f2f5;--line:#e3ddd1;--crimson:#b3121c;--gold:#d9a21b;--gold-deep:#a8780a;--cream:#fdf4dc;
--cond:'Barlow Condensed','Arial Narrow',sans-serif;--serif:'Source Serif 4',Georgia,serif;--ui:'Inter',-apple-system,'Segoe UI',sans-serif;color-scheme:light}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--page);color:var(--body);font:16px/1.6 var(--ui)}
img{max-width:100%;display:block}
a{color:var(--crimson)}
.in{max-width:1120px;margin:0 auto;padding:0 22px}
.kick{font:800 .76rem/1.2 var(--ui);letter-spacing:.16em;color:var(--crimson);text-transform:uppercase;margin-bottom:8px}
h1,h2,h3{font-family:var(--cond);font-weight:800;color:var(--ink);line-height:1.05}
h2{font-size:2.1rem;margin-bottom:14px}
.top{background:#fff;border-bottom:1px solid var(--line)}
.top .in{display:flex;justify-content:space-between;align-items:center;padding-top:16px;padding-bottom:16px}
.wordmark{font-family:var(--cond);font-weight:800;font-size:1.9rem;letter-spacing:.06em;color:var(--ink);display:flex;align-items:center;gap:10px}
.wordmark .dot{width:12px;height:12px;border-radius:50%;background:var(--gold)}
.wordmark .n{color:var(--crimson)}
.lab{font:800 .78rem/1 var(--ui);letter-spacing:.14em;color:var(--ink);display:flex;align-items:center;gap:8px}
.lab i{width:9px;height:9px;border-radius:50%;background:#1d7a45;box-shadow:0 0 0 4px #e3f2e8}
.ver{background:var(--ink);color:#d7d9de;font-size:.86rem}
.ver .in{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline;padding-top:10px;padding-bottom:10px}
.ver b{background:var(--gold);color:#1b1406;border-radius:6px;padding:2px 8px;font-weight:800}
.ver .cn{color:#aeb2ba}
.intro{background:radial-gradient(900px 480px at 80% 30%,#2a2d36 0%,#16181e 60%);color:#e8e9ec;overflow:hidden}
.intro .grid{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center;padding-top:54px;padding-bottom:40px}
.intro .kick{color:var(--gold)}
.intro h1{color:#fff;font-size:clamp(2.8rem,6vw,4.6rem)}
.intro h1 em{font-family:var(--serif);font-style:italic;font-weight:600;color:var(--gold);font-size:.92em}
.intro .lead{font-size:1.08rem;color:#cfd1d7;margin:18px 0 26px;max-width:560px}
.acts{display:flex;flex-wrap:wrap;gap:18px;align-items:center}
.gbtn{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(180deg,#f3bd35,#d9a21b);color:#1b1406;font:800 1rem/1 var(--ui);padding:16px 24px;border-radius:999px;text-decoration:none;box-shadow:0 5px 0 var(--gold-deep),0 12px 26px rgba(217,162,27,.3)}
.tl{color:var(--gold);font-weight:700}
.intro .note{font-size:.86rem;color:#9ea2ab;margin-top:18px}
.hb img{max-height:380px;margin:0 auto;filter:drop-shadow(0 30px 40px rgba(0,0,0,.45))}
main{padding:0 22px}
.map,.master,.box,.viewer,.dec{background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;margin:26px 0;box-shadow:0 10px 30px rgba(22,24,30,.05)}
.map{margin-top:-18px;position:relative}
.flow{display:grid;grid-template-columns:1fr auto 1.35fr auto 1.1fr auto .8fr;gap:12px;align-items:stretch}
.flow>i{align-self:center;color:var(--crimson);font-style:normal;font-weight:800;font-size:1.4rem}
.st{border:1px solid var(--line);border-radius:14px;padding:16px;background:#fcfbf8;display:flex;flex-direction:column;gap:8px}
.st b{font-family:var(--cond);font-size:1.35rem;color:var(--ink)}
.st span{font-size:.92rem;color:var(--body)}
.st small{color:var(--muted)}
.st em{font-style:normal;font-size:.84rem;background:var(--cream);color:#6b5208;border-radius:8px;padding:8px 10px;margin-top:auto}
.master{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;border-top:4px solid var(--crimson)}
.master .ic{width:92px;height:112px;border-radius:14px;background:var(--ink);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-4deg);box-shadow:0 10px 24px rgba(0,0,0,.2)}
.master .ic span,.master .ic small{font:800 .66rem/1 var(--ui);letter-spacing:.14em;color:var(--gold)}
.master .ic b{font:800 2.6rem/1.1 var(--cond)}
.ma{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}
.ma span{font-size:.82rem;color:var(--muted)}
.sh{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin:40px 0 16px}
.sh>span{font-size:.86rem;color:var(--muted)}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 24px rgba(22,24,30,.05)}
.vis{position:relative;aspect-ratio:1280/860;overflow:hidden;background:#f3efe6;border-bottom:1px solid var(--line)}
.vis img{width:100%;height:100%;object-fit:cover;object-position:top}
.num{position:absolute;left:12px;top:12px;background:var(--ink);color:var(--gold);font:800 .8rem/1 var(--ui);padding:7px 9px;border-radius:999px}
.cb{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}
.cb h3{font-size:1.45rem;margin-bottom:4px}
.desc{font-size:.9rem;color:var(--muted);margin-bottom:8px}
.pr{font-weight:700;font-size:.9rem;color:var(--ink);margin-bottom:14px}
.ca{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.open{background:var(--crimson);color:#fff;text-decoration:none;font-weight:700;font-size:.88rem;padding:9px 14px;border-radius:10px}
.pv{background:#fff;border:1px solid var(--line);font:700 .88rem/1 var(--ui);padding:9px 12px;border-radius:10px;cursor:pointer;color:var(--ink)}
.dl{font-size:.84rem;font-weight:600;color:var(--body)}
.dl small{color:var(--muted)}
.vh{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:14px;margin-bottom:14px}
.vc{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.vc{min-width:0;max-width:100%}.vc select{width:100%;min-width:0;font:600 .9rem var(--ui);padding:10px 12px;border-radius:10px;border:1px solid var(--line);max-width:100%}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.seg button{border:0;background:#fff;font:700 .88rem var(--ui);padding:10px 16px;cursor:pointer;color:var(--body)}
.seg button.on{background:var(--ink);color:#fff}
.vframe{background:#e7e9ee;border-radius:14px;padding:18px;overflow:auto;display:flex;justify-content:center}
.vframe iframe{height:760px;max-width:100%;border:0;border-radius:12px;background:#fff;box-shadow:0 14px 40px rgba(0,0,0,.18);transition:width .25s}
.how,.box ol{padding-left:22px}
.how li,.box ol li{margin:8px 0}
.dgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.dq{border:1px solid var(--line);border-radius:16px;padding:18px;background:#fcfbf8}
.dq h3{font-size:1.3rem;margin-bottom:6px}
.dq p{font-size:.92rem;margin-bottom:10px}
.dq ul{list-style:none;display:grid;gap:6px}
.dq li{font-size:.86rem;font-weight:600;border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 10px}
.dq li:first-child{border-color:var(--gold);background:var(--cream)}
.q{background:var(--cream);border-color:#f0dfae}
.bl,.todo{padding-left:20px}
.bl li,.todo li{margin:6px 0}
.todo{list-style:none;padding:0}
.todo li::before{content:"\2610";margin-right:8px;color:var(--crimson)}
.score .big{font:800 3rem/1 var(--cond);color:var(--crimson)}
.score .big small{font-size:1.2rem;color:var(--muted)}
.dims{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:6px 18px;margin-top:12px}
.dims li{display:flex;justify-content:space-between;border-bottom:1px dashed var(--line);padding:4px 0;font-size:.88rem;text-transform:capitalize}
.rh14{font-size:.82rem;color:var(--muted);text-align:center;margin:10px 0 30px}
.ft{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:.82rem;color:var(--muted);padding-top:20px;padding-bottom:40px;border-top:1px solid var(--line)}
@media(max-width:900px){.intro .grid{grid-template-columns:1fr}.hb img{max-height:240px}.flow{grid-template-columns:1fr}.flow>i{transform:rotate(90deg);justify-self:center}
.master{grid-template-columns:1fr;text-align:center}.master .ic{margin:0 auto}.grid3,.dgrid{grid-template-columns:1fr}.dims{grid-template-columns:1fr 1fr}.vframe{padding:10px}.vframe iframe{height:640px}}
@media(max-width:520px){main{padding:0 12px}.in{padding:0 16px}.map,.master,.box,.viewer,.dec{padding:18px;border-radius:16px}h2{font-size:1.8rem}.dims{grid-template-columns:1fr}}
@media(max-width:520px){.vc{width:100%}.vh>div:first-child{width:100%}}
.ba{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:10px 0 14px}.ba figure{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;text-align:center}.ba img{max-height:230px;margin:0 auto;object-fit:contain}.ba figure.now{border:2px solid var(--crimson)}.ba figcaption{font-size:.84rem;color:var(--muted);margin-top:8px}@media(max-width:600px){.ba{grid-template-columns:1fr}}
