:root{--bg:#f5f4ee;--paper:#fffefa;--ink:#182e2a;--green:#255d46;--muted:#63716a;--line:#d7ddd2;--lime:#dce8a1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--bg);color:var(--ink);font-family:'Yu Gothic UI','Meiryo',sans-serif;line-height:1.8}a{color:var(--green);text-underline-offset:4px}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b06b21;outline-offset:4px}header,main,footer{max-width:1160px;margin:auto}header{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;border-bottom:1px solid var(--line)}.brand{font-weight:900;font-size:24px;text-decoration:none;letter-spacing:.03em}.brand span{display:block;font-size:9px;letter-spacing:.22em}nav{display:flex;gap:26px;font-size:13px}nav a{text-decoration:none}main{padding:0 32px}.hero{display:grid;grid-template-columns:1.45fr 1fr;gap:70px;align-items:center;padding:70px 0 64px}.eyebrow,.section-title>span{font-size:12px;letter-spacing:.12em;font-weight:700;color:var(--green)}h1{font-size:clamp(38px,4.8vw,60px);line-height:1.45;letter-spacing:-.04em;margin:20px 0}h2{font-size:24px;line-height:1.6;margin:12px 0}h3{font-size:18px}.lead{font-size:16px;line-height:2}.primary{background:var(--green);color:#fff;border:0;border-radius:7px;padding:15px 24px;text-decoration:none;display:inline-flex;align-items:center;justify-content:space-between;gap:32px;font-weight:700}.primary:hover{background:#174532}.tiny{font-size:12px;color:var(--muted)}.receipt{background:var(--paper);padding:30px 28px;transform:rotate(3deg);border-top:6px solid var(--green);box-shadow:8px 18px 0 #e6e8df;position:relative}.receipt:after{content:'';height:10px;position:absolute;bottom:-10px;left:0;right:0;background:linear-gradient(135deg,var(--paper) 25%,transparent 25%) -5px 0,linear-gradient(225deg,var(--paper) 25%,transparent 25%) -5px 0;background-size:10px 10px}.receipt-top{font-size:12px;letter-spacing:.25em;border-bottom:1px dashed #aeb7a7;padding-bottom:20px}.receipt-line{display:grid;grid-template-columns:22px 1fr;gap:12px;padding:15px 0;border-bottom:1px dashed #c6cebd;font-size:15px}.receipt-line b{color:#80936a}.receipt-line em{grid-column:2;font-size:11px;color:var(--muted);font-style:normal;margin-top:-12px}.receipt p{font-size:17px;line-height:1.8}.barcode{height:25px;width:60%;background:repeating-linear-gradient(90deg,#253b30 0 2px,transparent 2px 4px,#253b30 4px 5px,transparent 5px 9px)}.disclosure{border:1px solid var(--line);border-radius:6px;font-size:12px;padding:12px 18px;color:var(--muted);margin-bottom:30px}.workspace{display:grid;grid-template-columns:1.05fr 1fr;gap:28px;align-items:start}.input-panel,.result-panel{border:1px solid var(--line);border-radius:12px;padding:28px;background:var(--paper)}.result-panel{position:sticky;top:24px;background:#eaf0e4;min-height:500px;overflow-wrap:anywhere}.muted{color:var(--muted);font-size:13px}.examples{display:flex;flex-wrap:wrap;gap:7px;font-size:12px;margin:20px 0}.examples button{border:1px solid #bdc9b5;background:white;border-radius:99px;padding:4px 10px;color:var(--green)}label{display:block;font-weight:700;font-size:13px;margin:18px 0 7px}input,select{width:100%;min-width:0;background:white;border:1px solid #b8c3b6;border-radius:5px;padding:11px 10px;color:var(--ink);font-size:14px}input::placeholder{font-size:12px;color:#7a827a}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}details{margin:20px 0;border-top:1px solid var(--line);padding-top:15px}summary{cursor:pointer;font-weight:700;font-size:13px}details p{font-size:13px}.submit{width:100%;margin-top:24px}.text-button{background:none;border:0;text-decoration:underline;color:var(--muted);display:block;margin:14px auto;font-size:12px}.error,.sample{font-size:13px;border-left:3px solid #ba6a27;background:#fff2de;padding:12px}.error{color:#8d2d20}.result-empty{padding:30px 0}.big-symbol{font-size:64px;font-weight:300}.result-empty h2{font-size:30px}.result-empty p,.result-empty li{font-size:14px;color:var(--muted)}.result-empty ul{padding-left:20px;margin-top:36px}.tag{display:inline-block;border-radius:3px;background:var(--lime);padding:4px 10px;font-size:11px;font-weight:700}.result-title{font-size:27px;line-height:1.6}.result-panel p{font-size:14px}.total{font-size:32px;font-weight:800;line-height:1.3}.metric{background:var(--paper);border-radius:6px;padding:16px;margin-top:14px}.metric small{display:block;color:var(--muted);font-size:12px}.bar{height:6px;background:#dbe3d1;margin-top:12px;border-radius:3px;overflow:hidden}.bar span{display:block;height:100%;background:var(--green)}.reason{border-top:1px solid #c9d4c0;padding-top:16px;margin-top:22px}.reason li{font-size:13px;margin-bottom:8px}.product{border:1px solid #bdcbb5;border-radius:6px;padding:16px;margin:15px 0;background:#f9fbf4}.product h3{margin:3px 0}.product p{font-size:12px}.disabled-link{display:block;border:1px dashed #a7b39d;border-radius:4px;padding:9px;color:#66735d;background:transparent;width:100%;font-size:12px;margin-top:12px}.guide{padding:70px 0 35px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:25px}.cards article{border-top:2px solid var(--green);padding-top:14px}.cards article>span{font-size:12px;color:var(--muted)}.cards p{font-size:14px}.notes{padding:30px 0 60px;border-top:1px solid var(--line)}.notes p,.notes li{font-size:13px;color:var(--muted)}.notes li{margin:10px 0}footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:24px 32px;font-size:11px;color:var(--muted)}[hidden]{display:none!important}@media(max-width:760px){header{padding:18px 20px}nav{gap:16px;font-size:12px}main{padding:0 20px}.hero{grid-template-columns:1fr;gap:26px;padding:38px 0}.hero .receipt{display:none}.workspace{grid-template-columns:1fr}.input-panel,.result-panel{padding:22px}.result-panel{position:static;min-height:300px}.cards{grid-template-columns:1fr;gap:20px}.guide{padding-top:40px}footer{display:block;padding:20px}footer span{display:block}h2{font-size:21px}.grid2{gap:0 12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{header,form,.examples,.primary,.disclosure,.guide,footer{display:none}.workspace{display:block}.input-panel{display:none}.result-panel{position:static}.notes details{display:block}body{background:white}}
