:root{font-family:system-ui,'Microsoft YaHei',sans-serif;color:#173e38;background:#f5f6f0}*{box-sizing:border-box}body{margin:0}header,main,footer{max-width:1200px;margin:auto;padding:20px}header{display:flex;justify-content:space-between;border-bottom:1px solid #cedbce;font-size:14px}a{color:inherit}h1{font-size:clamp(26px,4vw,42px);margin:10px 0}h2{font-size:clamp(23px,3vw,34px)}p{line-height:1.7}form{display:flex;align-items:end;gap:16px;flex-wrap:wrap;background:#eaf0e3;border-radius:12px;padding:18px}label{font-size:14px}input,select,button{font:inherit;min-height:44px;border:1px solid #b7cabd;border-radius:8px;padding:10px;background:white;color:inherit}input,select{display:block;max-width:100%;margin-top:6px}input[type=number]{width:100px}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}.primary{background:#235a49;color:white}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:22px 0}#board{background:white;border:1px solid #cedbce;border-radius:14px;padding:clamp(18px,4vw,32px)}.eyebrow{font-size:12px;color:#57725e}.flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:24px}.flow span{padding:15px;border:1px solid #cbd9cb;background:#f1f5ec;border-radius:8px}.flow .active{background:#225a4c;color:white;animation:appear .4s ease-out}.table-scroll{overflow-x:auto;max-width:100%}table{width:100%;border-collapse:collapse;line-height:1.6;font-size:17px}th,td{padding:10px 14px;border-bottom:1px solid #d7e1d4;text-align:left}th{background:#edf3e6;font-size:14px}.active td{background:#e2edd3}.facts{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}.facts>div{background:#f0f5ea;padding:15px;flex:1;min-width:130px}.facts small,.facts strong{display:block}.facts strong{font-size:21px;margin-top:5px}.explanation{border-left:4px solid #648957;background:#f3f6ef;padding:18px;margin-top:22px}.explanation p{margin:8px 0 0}.explanation b{font-size:14px}#error{color:#a43121}footer{text-align:center;font-size:12px;color:#567060}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible,.table-scroll:focus-visible{outline:3px solid #9e7635;outline-offset:3px}@keyframes appear{from{transform:translateY(4px);opacity:.5}to{transform:none;opacity:1}}@media(max-width:600px){main,header,footer{padding:14px}header span{display:none}.flow{gap:6px}.flow span{padding:10px;font-size:14px}.flow b{font-size:12px}.actions #position{width:100%;font-size:13px}th,td{padding:8px;font-size:14px}form{padding:12px;gap:12px}.explanation{padding:12px}.facts strong{font-size:18px}}@media(prefers-reduced-motion:reduce){*{animation:none!important}}
