:root{--ink: #1e261c;--ink-soft: #5a6256;--paper: #fffdf8;--paper-2: #f4efe4;--page: #f6f1e6;--accent: #b8860b;--accent-deep: #8a6508;--pass: #2a6b45;--warn: #b85a2a;--line: #e4d8bc;--shadow: 0 10px 28px rgba(40, 32, 12, .08);--radius: 12px;--font-display: "Shippori Mincho", "Yu Mincho", serif;--font-ui: "IBM Plex Sans JP", "Yu Gothic", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:radial-gradient(1200px 500px at 10% -10%,#fff8dc 0%,transparent 55%),var(--page);font-family:var(--font-ui);font-size:16px;line-height:1.75;min-height:100vh}a{color:var(--accent-deep);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--accent)}.wrap{width:min(1120px,calc(100% - 32px));margin-inline:auto}.site-header{padding:20px 0 8px}.brand{display:flex;align-items:baseline;gap:10px;color:inherit;text-decoration:none}.brand-mark{font-family:var(--font-mono);font-size:11px;letter-spacing:.28em;color:var(--accent)}.brand-name{font-family:var(--font-display);font-size:22px;font-weight:600;letter-spacing:.08em}.cat-jump{display:flex;flex-wrap:wrap;gap:8px 16px;padding:10px 0 12px;border-bottom:1px solid var(--line);font-size:13px}.cat-jump a{color:var(--ink-soft);text-decoration:none}.cat-jump a:hover{color:var(--ink)}.page .cat-jump{border-bottom:0;padding:0 0 8px;margin:0 0 20px}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:center;padding:48px 0 36px}.kicker{font-family:var(--font-mono);font-size:12px;letter-spacing:.22em;color:var(--accent-deep);margin:0 0 12px}.hero h1{font-family:var(--font-display);font-size:clamp(32px,5vw,52px);font-weight:600;line-height:1.28;margin:0 0 16px}.lede{max-width:40em;color:var(--ink-soft);margin:0 0 24px}.hero-visual{margin:0}.hero-visual img{width:100%;aspect-ratio:16 / 10;height:auto;object-fit:cover;object-position:center;display:block;border-radius:var(--radius);box-shadow:var(--shadow);background:#fff}.hero-visual figcaption{margin-top:8px;font-size:12px;color:var(--ink-soft)}.hero-cats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hero-cats a{position:relative;display:block;color:inherit;text-decoration:none;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.hero-cats a:hover{outline:2px solid var(--accent);outline-offset:2px}.hero-cats img{width:100%;aspect-ratio:16 / 9;max-height:128px;height:auto;object-fit:cover;object-position:center;display:block;border-radius:0;box-shadow:none;background:#efe8d6}.hero-cats span{position:absolute;left:10px;bottom:8px;background:color-mix(in srgb,var(--ink) 78%,transparent);color:#fff;font-size:13px;letter-spacing:.04em;padding:3px 10px;border-radius:4px}.checker{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:18px;display:grid;gap:12px;box-shadow:var(--shadow)}.checker label{font-size:12px;letter-spacing:.12em;color:var(--ink-soft)}.checker-row{display:grid;grid-template-columns:1fr auto;gap:8px}.checker input{width:100%;background:#fff;border:1px solid var(--line);color:var(--ink);font:15px var(--font-mono);padding:14px 12px;border-radius:8px}.checker input:focus{outline:2px solid color-mix(in srgb,var(--accent) 55%,white)}.btn{appearance:none;border:0;background:var(--accent);color:#fff;font-family:var(--font-ui);font-weight:600;letter-spacing:.08em;padding:0 22px;border-radius:8px;cursor:pointer}.btn:hover{background:var(--accent-deep)}.checker-note{margin:0;font-size:12px;color:var(--ink-soft)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding-bottom:48px}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:inherit;display:flex;flex-direction:column;box-shadow:var(--shadow)}.card:hover{border-color:var(--accent)}.card img{display:block;width:100%;height:auto;max-height:160px;aspect-ratio:16 / 9;object-fit:cover;object-position:center;background:#efe8d6}.card-body{padding:16px 16px 18px;display:flex;flex-direction:column;gap:6px}.tag{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;color:var(--accent-deep)}.card h2{font-family:var(--font-display);font-size:22px;margin:0}.card p{margin:0;color:var(--ink-soft);font-size:14px}.section{padding:8px 0 56px}.section h2{font-family:var(--font-display);font-size:28px;margin:0 0 18px}.paper{background:var(--paper);color:var(--ink);padding:28px 24px;border-radius:var(--radius);border:1px solid var(--line)}.labels{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0}.labels div{border:1px solid var(--line);border-radius:8px;padding:14px;background:var(--paper-2)}.labels dt{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;margin-bottom:6px}.pass{color:var(--pass)}.warn{color:var(--warn)}.dim{color:var(--ink-soft)}.site-footer{border-top:1px solid var(--line);padding:28px 0 48px;font-size:12px;color:var(--ink-soft)}.site-footer p{margin:0 0 8px;max-width:70em}.sister-sites{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin:14px 0 10px}.sister-label{font-family:var(--font-mono, inherit);letter-spacing:.08em;text-transform:uppercase;font-size:10px;color:var(--ink-soft)}.sister-sites a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line)}.sister-sites a:hover{border-bottom-color:var(--ink)}.page{padding:36px 0 72px}.page h1{font-family:var(--font-display);font-size:clamp(28px,4vw,44px);margin:0 0 16px}.page h2{font-family:var(--font-display);font-size:22px;margin:28px 0 12px}.page h3{font-family:var(--font-display);font-size:18px;margin:20px 0 8px}.page ol,.page ul{padding-left:1.35em}.page li{margin:8px 0}.page code{font-family:var(--font-mono);font-size:.92em;background:var(--paper-2);padding:0 5px;border-radius:4px}.related{display:grid;gap:10px;margin-top:28px}.related a{display:block;background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:12px 14px;text-decoration:none;color:inherit}.related a:hover{border-color:var(--accent)}.related a strong{display:block;font-family:var(--font-display);margin-bottom:2px}.product-grid{padding-bottom:8px}.product-card img{aspect-ratio:4 / 3;max-height:220px;object-fit:contain;object-position:center;background:#fff}.product-card .card-body{min-height:0}.product-card h2{font-size:18px}.product-cta{margin-top:auto;font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;color:var(--accent-deep)}.product-note{font-size:13px;color:var(--ink-soft);margin:8px 0 0}.model-table-wrap{overflow-x:auto;margin:12px 0 20px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.model-table{width:100%;border-collapse:collapse;font-size:14px}.model-table th,.model-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}.model-table th{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;background:var(--paper-2)}.model-table tr:last-child td{border-bottom:0}.model-id{font-family:var(--font-mono);font-size:12px;white-space:nowrap}.page-visual{margin:0 0 24px}.page-visual a{display:inline-block;border-radius:var(--radius)}.page-visual img{width:min(100%,720px);aspect-ratio:16 / 9;height:auto;object-fit:cover;object-position:center;border-radius:var(--radius);box-shadow:var(--shadow)}@media(max-width:800px){.hero,.grid-3,.labels,.checker-row{grid-template-columns:1fr}.checker .btn{min-height:48px}}
