:root{color-scheme:light;font-family:system-ui,-apple-system,"Yu Gothic",Meiryo,sans-serif;line-height:1.6;color:#182536;background:#f5f7fa}
*{box-sizing:border-box}body{margin:0}main{max-width:980px;margin:0 auto;padding:22px 18px 70px}h1{font-size:clamp(1.4rem,4vw,2rem);line-height:1.35}h2{font-size:1.15rem;margin-top:0}p{margin:8px 0 14px}.eyebrow{font-size:.78rem;letter-spacing:.05em;color:#455876;font-weight:700}.muted{color:#49566c}.panel{background:white;border:1px solid #d9e0e9;border-radius:8px;padding:20px;margin-top:18px}.grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;align-items:end}.row-entry{border-top:1px solid #e5eaf0;margin-top:14px;padding-top:14px}.field{display:grid;gap:5px}.field label{font-size:.82rem;font-weight:700;color:#334155}input,select,button{font:inherit;min-width:0}input,select{width:100%;padding:10px 9px;border:1px solid #b4bfcd;border-radius:5px;background:#fff;color:#19253b}input:focus-visible,select:focus-visible,button:focus-visible{outline:3px solid #376ad1;outline-offset:2px}button{padding:10px 15px;border:1px solid #596981;background:#fff;color:#132640;border-radius:5px;cursor:pointer}button.primary{background:#174985;color:white;border-color:#174985}button:hover{filter:brightness(.97)}.actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.delete{width:100%;margin-top:2px}.danger{color:#912b2b}.note{font-size:.92rem;padding:10px 14px;border-left:3px solid #657c9c;background:#f0f4f8;margin:10px 0}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.value{padding:14px;border:1px solid #d9e0e9;border-radius:6px;overflow-wrap:anywhere}.value dt{font-size:.84rem;color:#43546d}.value dd{font-weight:700;font-size:1.25rem;margin:2px 0}.summary{padding:12px;border:1px solid #dae1ea;border-radius:6px;background:#f9fbfe}.status{min-height:1.4em;margin-top:8px}#result[hidden]{display:none}#result-heading:focus{outline:3px solid #376ad1;outline-offset:4px}.formula{font-family:ui-monospace,Consolas,monospace;font-size:.95rem;overflow-wrap:anywhere}.step{font-size:.9rem;border-bottom:1px solid #e7ecf2;padding:6px 0}.step:last-child{border-bottom:0}ul{padding-left:22px}@media(max-width:660px){.panel{padding:15px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field.name{grid-column:1/-1}.values{grid-template-columns:1fr}.delete{margin-top:4px}.field.direction{grid-column:auto}}@media(max-width:380px){main{padding:14px 10px 40px}.grid{gap:8px}.panel{padding:12px}button{padding:9px 11px}}
