:root{--bg:#f6f7f8;--panel:#fff;--text:#202428;--muted:#66717c;--line:#d9dee3;--accent:#245f8f;--accent-soft:#eef5fa;--danger:#9f2f2f;--shadow:0 8px 24px rgba(0,0,0,.06)}
    *{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;background:var(--bg);color:var(--text);line-height:1.65}
    .site-nav{width:min(920px,calc(100% - 28px));margin:18px auto 0;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.site-nav a{display:inline-block;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);text-decoration:none;font-size:14px;font-weight:700}.site-nav a:hover,.site-nav a:focus-visible{border-color:var(--accent);color:var(--accent)}main{width:min(920px,calc(100% - 28px));margin:24px auto 72px}.prototype{display:inline-block;padding:4px 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:var(--panel);font-size:12px;font-weight:700}
    h1{margin:12px 0 6px;font-size:clamp(26px,5vw,38px);line-height:1.25}.lead{color:var(--muted);margin:0 0 24px}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:clamp(18px,4vw,30px);margin-top:18px}
    .field-grid{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr);gap:16px}label{display:block;font-size:14px;font-weight:700;margin-bottom:6px}input,select,button{font:inherit}input,select{width:100%;padding:11px 12px;border:1px solid #aeb7c0;border-radius:8px;background:#fff;color:var(--text)}
    input:focus,select:focus,button:focus-visible{outline:3px solid rgba(36,95,143,.22);outline-offset:1px;border-color:var(--accent)}.section-title{margin:26px 0 10px;font-size:18px}.thickness-row{display:grid;grid-template-columns:1fr 116px 44px;gap:8px;align-items:end;margin-bottom:8px}
    .unit-input{position:relative}.unit-input input{padding-right:42px}.unit{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}button{border:1px solid var(--line);border-radius:8px;padding:10px 14px;background:#fff;color:var(--text);cursor:pointer;font-weight:700}.remove{padding:10px 0;color:var(--danger);font-size:18px}
    .actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.primary{background:var(--accent);border-color:var(--accent);color:#fff;min-width:160px}.result{display:none;margin-top:24px;padding:20px;border:1px solid #bfd2e1;border-radius:12px;background:var(--accent-soft)}.result.show{display:block}.result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.metric{background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px}.metric small{display:block;color:var(--muted);margin-bottom:4px}.metric strong{font-size:clamp(20px,4vw,28px);line-height:1.2}.recommended{border-color:var(--accent)}.recommended strong{color:var(--accent)}.formula{margin-top:14px;padding-top:14px;border-top:1px solid #cbdbe7;font-size:14px}.result-note{margin-top:10px;color:var(--muted);font-size:13px}.result-warning{display:none;margin-top:12px;padding:12px 14px;border:1px solid #d6a23a;border-left-width:4px;border-radius:8px;background:#fff7e5;color:#6f4700;font-size:14px;font-weight:700}.result-warning.show{display:block}.error{display:none;margin-top:14px;color:var(--danger);font-weight:700}.error.show{display:block}.note{padding:14px 16px;border-left:4px solid #8c979f;background:#f1f3f4;font-size:14px}.small{color:var(--muted);font-size:13px}table{border-collapse:collapse;width:100%;margin-top:10px}th,td{border:1px solid var(--line);padding:9px 10px;text-align:center}th{background:#f1f3f4}
    @media(max-width:680px){.site-nav{margin-top:12px}.site-nav a{flex:1 1 auto;text-align:center}.field-grid,.result-grid{grid-template-columns:1fr}.thickness-row{grid-template-columns:1fr 92px 42px}main{margin-top:22px}}
