:root{font-family:system-ui,-apple-system,"Microsoft YaHei",sans-serif;color:#193b2a;background:#f3f7f0}*{box-sizing:border-box}body{margin:0}.wrap{max-width:800px;margin:40px auto;padding:0 16px}header{display:flex;align-items:center;gap:16px;margin-bottom:25px}.logo{font-size:42px;background:#e1f0d7;border-radius:18px;padding:12px}h1{font-size:27px;margin:0}h2{margin:0 0 22px;font-size:21px}p{line-height:1.6}header p,.hint,footer{color:#698073;font-size:14px}.card{background:white;padding:28px;border-radius:20px;box-shadow:0 12px 35px #153d2410;margin-bottom:20px}label{display:block;font-weight:650;margin:18px 0 8px}input:not([type=radio]),textarea,select{width:100%;font:inherit;padding:13px 14px;border:1px solid #ccd9ce;border-radius:10px;background:white;color:#193b2a}textarea{resize:vertical}input:focus,textarea:focus{outline:2px solid #9fc6a9}.choice{display:flex;gap:12px}.choice label{flex:1;background:#eff6ed;border:1px solid #d8e7d6;border-radius:12px;padding:16px;margin:0;cursor:pointer}.choice input{accent-color:#257c50}.notice{background:#f2f7f1;padding:12px 15px;border-radius:10px;margin-top:15px;white-space:pre-wrap;font-size:14px}.notice.bad{background:#fff0eb;color:#a63224}.totals{display:flex;justify-content:space-between;align-items:center;margin:22px 0;font-size:16px}.totals strong{font-size:22px;color:#18804d}button{font:inherit;cursor:pointer;background:#237c4c;color:white;border:0;border-radius:10px;padding:13px 19px;font-weight:700}button:hover{background:#18643b}button:disabled{opacity:.5;cursor:not-allowed}form>button{width:100%}#result{font-weight:600}a{color:#257b50}footer{text-align:center;margin:28px 0}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:end}.toolbar>*{flex:1;min-width:120px}.toolbar label{font-size:13px;margin:4px 0}.toolbar button{flex:0 0 auto}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px}th,td{border-bottom:1px solid #e5eee5;padding:11px 8px;text-align:left;white-space:nowrap}th{background:#f4f8f3}td.tags{max-width:250px;white-space:normal;word-break:break-all}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.muted{color:#6e8075}.hide{display:none!important}@media(max-width:550px){.wrap{margin:18px auto}.card{padding:18px}h1{font-size:22px}.choice label{padding:12px}.totals{font-size:14px}}
