:root{font-family:Inter,"Segoe UI","Yu Gothic UI",Meiryo,sans-serif;color:#18382e;background:#f4f7f3;font-synthesis:none;line-height:1.7}*{box-sizing:border-box}body{margin:0}a{color:#176548;text-underline-offset:4px}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}header,main,footer{max-width:1180px;margin:auto;padding:24px 32px}header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d7e3d8;gap:20px}.brand{display:flex;align-items:center;gap:7px;text-decoration:none;color:#193f30;font-size:20px;white-space:nowrap}.logo{display:inline-grid;place-items:center;border-radius:9px;background:#174b37;color:#8be5b9;width:35px;height:38px;font-size:31px;font-weight:800;margin-right:4px}nav{display:flex;gap:20px;align-items:center;flex-wrap:wrap}nav a{font-size:13px}.intro{padding:52px 0 32px}.compact{padding-top:30px}h1{font-size:clamp(28px,4vw,46px);line-height:1.45;letter-spacing:-.8px;margin:18px 0}em{font-style:normal;color:#167252}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:700;color:#598070}.lead{font-size:16px;max-width:800px}.muted,.hint{color:#5c7366}.hint{font-size:12px}.notice{font-size:12px;padding:10px 14px;border-left:3px solid #70a68b;background:#e9f0e8;max-width:800px}.tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.tool-card{padding:28px;background:#fff;border:1px solid #d9e5d9;border-radius:14px;text-decoration:none;color:inherit;transition:border-color .2s}.tool-card:hover{border-color:#418466}.tool-card:first-child{grid-column:1/-1;background:#163f30;color:#f4fff6}.tool-card:first-child .eyebrow,.tool-card:first-child .tool-link{color:#98d5b3}.tool-card h2{font-size:22px;margin:10px 0}.tool-card p{font-size:14px;max-width:720px}.tool-link{color:#28714e;font-size:13px}.workspace{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,1fr);gap:24px;align-items:start}.card{background:white;border:1px solid #d9e5d9;padding:25px;border-radius:14px;margin-bottom:24px;min-width:0}.section-title{display:flex;justify-content:space-between;align-items:baseline;gap:14px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:22px 0}label{display:block;font-size:12px;font-weight:600;min-width:0}input,select{display:block;width:100%;min-width:0;padding:11px;border:1px solid #ccdcd0;border-radius:7px;margin-top:6px;font-size:16px;background:#fbfcf9;color:#193f30}input:disabled{opacity:.45;background:#e7eae5}h2{font-size:19px;line-height:1.5}button{cursor:pointer;border:1px solid #c6d8ca;border-radius:6px;padding:10px 14px;background:#f8fbf5;color:#194530;font-size:13px}.primary{background:#176548;color:white;width:100%;font-size:15px}.text-button{background:transparent;border:0;padding:0;font-size:12px}.results{padding:28px;border-radius:14px;background:#153d30;color:white;min-width:0}.results .eyebrow{color:#98c8ac}.results h2{font-weight:400;font-size:16px}.metric{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:12px 0;border-bottom:1px solid #ffffff21;font-size:12px}.metric span{color:#bad4c4}.metric strong{font-size:18px;overflow-wrap:anywhere;text-align:right}.hero-metric{display:block}.hero-metric strong{display:block;font-size:36px;text-align:left;margin-top:7px;line-height:1.4}.results .hint{color:#b6d0bf}.actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}.results button{background:#285c45;color:white;border-color:#589475}.results #status{font-size:12px;color:#c8e4cd}#error{color:#ffda95;font-size:13px}#error:empty{display:none}.table-wrap{overflow-x:auto;max-width:100%;scrollbar-gutter:stable}table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}caption{text-align:left;color:#5c7366;padding:0 0 10px}td,th{padding:10px 12px;border-bottom:1px solid #e4ece2;text-align:right}td:first-child,th:first-child{text-align:left}th{font-weight:600;background:#f2f6ef}.explain{max-width:900px;padding:28px 0}.explain h2{margin-top:30px}.explain p,.explain li,.prose p{font-size:14px}.formula{padding:20px;background:#e9f0e6;border-radius:8px}details{border-bottom:1px solid #d4e0d3;padding:15px 0}summary{cursor:pointer;font-size:14px;font-weight:600}.related{display:flex;flex-wrap:wrap;gap:14px}.related a{font-size:13px}.prose{max-width:800px;min-height:60vh;padding-bottom:40px}footer{border-top:1px solid #d3dfd2;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:11px}footer button{font-size:12px}.consent{position:fixed;bottom:20px;left:20px;right:20px;max-width:680px;margin:auto;z-index:10;background:white;border:1px solid #92b5a0;box-shadow:0 8px 40px #11351d25;padding:22px;border-radius:12px;font-size:13px}.consent[hidden]{display:none}.consent button{flex:1}.consent .actions{margin-top:12px}.skip{position:absolute;top:-100px;left:10px;background:white;padding:10px;z-index:20}.skip:focus{top:10px}:focus-visible{outline:3px solid #d2aa3f;outline-offset:3px}@media(max-width:800px){.workspace{grid-template-columns:1fr}.tool-grid{grid-template-columns:1fr}.tool-card:first-child{grid-column:auto}header,main,footer{padding:20px}.intro{padding-top:28px}footer{flex-wrap:wrap}header{align-items:flex-start}nav{gap:12px}.brand{font-size:16px}.logo{width:28px;height:32px;font-size:27px}.hero-metric strong{font-size:32px}}@media(max-width:420px){header,main,footer{padding:16px}.card,.results,.tool-card{padding:20px}.fields{gap:14px}.metric{gap:10px}.metric strong{font-size:16px}header nav{max-width:90px}label{font-size:11px}.section-title{flex-wrap:wrap}h1{font-size:27px}.consent{left:12px;right:12px;bottom:12px;padding:16px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
