:root{font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:#20352f;background:#f4f5f0;font-synthesis:none;line-height:1.65}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,select{cursor:pointer}button{border:1px solid #c5d4cb;background:#fff;border-radius:10px;padding:10px 15px;color:#24483c;min-height:44px}button:hover{background:#edf5ed;border-color:#638d72}button[aria-pressed=true],button.primary{background:#245a46;color:#fff;border-color:#245a46}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #d18b23;outline-offset:3px}[hidden]{display:none!important}.wrap{max-width:1100px;margin:auto;padding:0 24px}header{background:#e7eee1;border-bottom:1px solid #d7dfcf;padding:42px 0 34px}header p{margin:8px 0;color:#4c6356}h1{font-size:clamp(1.55rem,4vw,2.7rem);letter-spacing:-.04em;margin:0}h2{font-size:1.15rem;margin:0}h3{font-size:1.12rem;margin:0 0 12px}p{margin:10px 0}.eyebrow{font-size:.78rem;letter-spacing:.12em;font-weight:700;color:#416950}nav{display:flex;flex-wrap:wrap;gap:8px;padding:24px 0}nav button{flex:1 0 95px}.panel{background:#fff;border:1px solid #dbe2d7;border-radius:18px;padding:24px;min-width:0}.input-panel{margin-bottom:28px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}#category-note{color:#607368;font-size:.85rem}.input-row{display:flex;gap:12px;align-items:end;margin:14px 0}.grow{flex:1;min-width:0}label{display:block;font-size:.8rem;font-weight:600;margin:8px 0 5px}input,select{width:100%;border:1px solid #bdcec1;border-radius:10px;padding:11px 12px;background:#fff;color:#20352f;min-height:46px}input[aria-invalid=true]{border-color:#b33928}#amount{font-size:clamp(1.5rem,4vw,2.5rem);font-weight:700;line-height:1.3}#unit{font-size:1.15rem;min-height:62px;min-width:100px}.muted{font-size:.8rem;color:#5b6f63}.error{font-size:.85rem;color:#a32c20}.error:empty{display:none}.chips{display:flex;flex-wrap:wrap;gap:8px}.chips button{font-size:.8rem}.conversion{border-top:1px solid #e1e6dc;margin-top:18px;padding-top:16px;overflow-wrap:anywhere;font-size:.9rem;font-weight:600}.result-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:20px}.spotlight{background:#f9fcf5}.ratio{font-size:clamp(2rem,5vw,3.3rem);font-weight:800;color:#245a46;margin:8px 0;overflow-wrap:anywhere;line-height:1.3}.bars{margin:25px 0}.bar-row p{font-size:.8rem;overflow-wrap:anywhere}.bar-track{background:#e5ecdf;height:20px;border-radius:5px;overflow:hidden}.bar{height:100%}.bar.input{background:#32745a}.bar.reference{background:#bd7f2e}.formula{background:#edf1e8;padding:12px;border-radius:8px;font-size:.85rem;overflow-wrap:anywhere}.source{font-size:.8rem;border-top:1px solid #dbe2d7;padding-top:16px;margin-top:18px}.source a{color:#216647;text-underline-offset:3px}.badge{display:inline-block;background:#e9eee3;padding:3px 8px;border-radius:5px;font-size:.7rem;color:#526249}.catalogue-heading{margin-top:30px}.catalogue-heading label{display:flex;gap:8px;align-items:center;white-space:nowrap}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 32px}.comparison-card{text-align:left;padding:18px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.comparison-card strong{font-size:.9rem}.comparison-card[aria-pressed=true] .muted{color:#e0ede4}.card-ratio{font-size:1.4rem;font-weight:700;overflow-wrap:anywhere;max-width:100%;margin-top:auto}.about{margin:28px 0 40px;font-size:.85rem}.about p{margin-top:14px}#custom-apply{margin-top:8px;width:100%}#share-status:empty{display:none}#share-fallback{margin-bottom:20px}#share-url{font-size:.8rem}@media(max-width:720px){.wrap{padding:0 16px}header{padding:28px 0 22px}.result-layout{grid-template-columns:1fr}.panel{padding:19px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}nav button{flex-basis:70px;font-size:.85rem;padding:9px}.section-heading{align-items:flex-start}.catalogue-heading label{width:100%}}@media(max-width:360px){.cards{grid-template-columns:1fr}.input-row{gap:8px}.panel{padding:15px}}
