:root{color-scheme:light;--ink:#16212a;--muted:#64717b;--line:#dbe2e7;--brand:#0b6172;--brand-dark:#084956;--soft:#f3f7f8;--warm:#fff8e7}
*{box-sizing:border-box}
body{margin:0;background:#eef3f5;color:var(--ink);font-family:Inter,"Noto Sans SC",system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.55}
a{color:var(--brand)}
.source-header{background:#fff;border-bottom:1px solid var(--line)}
.source-header>div,.source-shell{width:min(1080px,calc(100% - 28px));margin:auto}
.source-header>div{min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.source-brand{text-decoration:none;font-weight:850;letter-spacing:.04em;color:var(--ink)}
.language-link{border:1px solid var(--brand);border-radius:999px;padding:7px 13px;text-decoration:none;font-weight:750;white-space:nowrap}
.source-shell{padding:18px 0 38px}
.breadcrumbs{font-size:.86rem;color:var(--muted);margin-bottom:14px}
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.88fr);gap:22px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:0 12px 30px rgba(24,48,58,.07)}
.hero-media{min-height:360px;border-radius:16px;background:linear-gradient(145deg,#f7fafb,#e8eef1);display:grid;place-items:center;padding:18px}
.hero-media img{display:block;max-width:100%;max-height:430px;object-fit:contain}
.eyebrow{margin:0 0 4px;color:var(--brand);font-size:.78rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
h1{font-size:clamp(1.55rem,4vw,2.35rem);line-height:1.1;margin:0 0 10px}
.source-id{margin:0 0 18px;color:var(--muted);font-size:.9rem;overflow-wrap:anywhere}
.price-box{background:var(--soft);border-radius:14px;padding:14px;margin:0 0 16px}
.price-label{display:block;color:var(--muted);font-size:.8rem}
.price{display:block;font-size:1.55rem;font-weight:900;color:var(--brand-dark)}
.price-note,.boundary{font-size:.82rem;color:var(--muted);margin:5px 0 0}
.config-list{display:grid;gap:8px;margin:14px 0}
.config-button{width:100%;display:grid;grid-template-columns:1fr auto;gap:4px 12px;text-align:left;padding:11px 12px;border:1px solid var(--line);background:#fff;border-radius:12px;color:var(--ink);cursor:pointer}
.config-button strong{font-size:.95rem}.config-button span{font-weight:800;color:var(--brand-dark)}
.config-button small{grid-column:1/-1;color:var(--muted)}
.config-button[aria-pressed="true"]{border-color:var(--brand);box-shadow:0 0 0 2px rgba(11,97,114,.13);background:#f7fcfd}
.source-link{display:inline-block;margin-top:10px;font-size:.84rem;overflow-wrap:anywhere}
.details{margin-top:18px;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.details summary{cursor:pointer;padding:15px 17px;font-weight:850;list-style-position:inside}
.spec-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line)}
.spec-grid div{padding:11px 16px;border-bottom:1px solid var(--line)}
.spec-grid div:nth-last-child(-n+2){border-bottom:0}
.spec-grid dt{font-size:.78rem;color:var(--muted)}.spec-grid dd{margin:2px 0 0;font-weight:720}
.notice{margin-top:14px;background:var(--warm);border:1px solid #ecdba7;border-radius:13px;padding:12px 14px;font-size:.84rem;color:#66521d}
.source-links{margin:18px 0 0;padding:16px;border:1px solid #dbe2e7;border-radius:14px;background:#fff}
.source-links h2{margin:0 0 9px;font-size:1rem}.source-links p{margin:0;color:#64717b;font-size:.82rem}
.source-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:10px}
.source-link-grid a{display:block;padding:11px 12px;border:1px solid #dbe2e7;border-radius:10px;text-decoration:none;font-weight:800;color:#0b6172;background:#f7fafb}
@media(max-width:720px){.source-header>div,.source-shell{width:min(100% - 20px,1080px)}.source-header>div{min-height:54px}.hero{grid-template-columns:1fr;padding:12px;gap:14px;border-radius:16px}.hero-media{min-height:250px;padding:10px}.hero-media img{max-height:300px}.config-button{padding:10px}.spec-grid{grid-template-columns:1fr}.spec-grid div:nth-last-child(2){border-bottom:1px solid var(--line)}.source-link-grid{grid-template-columns:1fr}}
@media(min-width:721px){.hero-copy{padding:8px 4px}.details{margin-top:22px}}

