*{box-sizing:border-box}body{margin:0;background:#f4f6f8;color:#1e3040;font:14px/1.6 'Segoe UI','Microsoft YaHei',sans-serif}aside{position:fixed;width:230px;background:#102d32;color:#d1e2e2;height:100vh;padding:30px 20px}.brand{font-size:30px;letter-spacing:4px;color:#fff;font-weight:750}.brand span{display:block;font-size:11px;letter-spacing:1px;color:#9ebbbc}.project{border:1px solid #365257;border-radius:8px;margin:35px 0 25px;padding:12px;font-size:12px}nav button{display:block;width:100%;background:none;text-align:left;color:#bdcfd0;border:0;margin:6px 0;padding:13px 10px}nav button.active{background:#234a4e;color:#fff;border-left:3px solid #85d9bc}.asidefoot{position:absolute;bottom:25px;font-size:21px;color:#88abae}.asidefoot small{display:block;font-size:11px;margin-top:16px}main{margin-left:230px}header{height:76px;background:white;border-bottom:1px solid #e2e7ea;display:flex;align-items:center;justify-content:space-between;padding:0 34px;color:#667883}select,input{padding:9px;border:1px solid #cfdbdf;border-radius:5px;background:white;color:#243f45}select{margin-left:10px}.notice{background:#fff5de;color:#785e2d;padding:10px 34px;font-size:12px}section{padding:28px 34px;max-width:1500px}.eyebrow{color:#33736a;letter-spacing:2px;font-size:11px}h1{font-size:28px;margin:4px 0 8px;letter-spacing:-.5px}h2{font-size:17px;margin:0 0 15px}h3{font-size:14px;margin:5px 0}p{color:#687b85}.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0}.card,.panel{background:white;border:1px solid #e0e7e8;border-radius:10px;padding:22px}.card small{color:#74858e}.card b{display:block;font-size:28px;margin-top:8px}.panel{margin:18px 0}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.between{justify-content:space-between}button,.upload{font:inherit;border-radius:6px;border:1px solid #c6d6d7;background:#fff;color:#24514d;padding:9px 16px;cursor:pointer}button.primary{background:#176657;border-color:#176657;color:white}button:disabled{opacity:.4;cursor:not-allowed}button:hover:not(:disabled){filter:brightness(.95)}.pill{font-size:11px;background:#e5f1ec;color:#246252;padding:4px 9px;border-radius:20px}.warn{background:#fff0da;color:#93662b}.bad{color:#bd553e}.muted{color:#7c8c94;font-size:12px}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:12px;font-weight:500;color:#7a8c94;background:#f7f9fa}td,th{padding:14px 10px;border-bottom:1px solid #edf0f1}details{margin:12px 0;border:1px solid #e2e9e8;border-radius:7px;padding:14px}summary{cursor:pointer;font-weight:600}.chain{border-left:2px solid #a3c7bb;padding-left:18px;margin:18px 5px}.chain div{padding:10px 0}.chain b{display:block;color:#285c52}.log{font-size:12px;border-bottom:1px solid #edf0f0;padding:9px 0}code{background:#edf4f1;padding:2px 6px}footer{padding:10px 34px 25px;color:#8a989e;font-size:11px}.empty{padding:30px;color:#74888c;text-align:center}a{color:#216e60}.toast{position:fixed;right:24px;bottom:24px;background:#153d36;color:white;padding:14px 24px;z-index:10;border-radius:6px;max-width:80vw}@media(max-width:850px){aside{position:static;width:100%;height:auto;padding:12px 20px}.project,.asidefoot{display:none}nav{display:flex;overflow:auto}nav button{min-width:130px}main{margin:0}header{padding:12px;height:auto;flex-wrap:wrap;gap:8px}section{padding:20px 14px}.cards{grid-template-columns:1fr}.notice{padding:10px 14px}.panel{overflow:auto}.top{display:block}}
.rule-picker{padding:20px}.perspectives{display:flex;gap:10px;margin:18px 0}.perspectives button{flex:1;text-align:left;padding:14px 18px;background:#f6f9f9}.perspectives strong{font-size:16px;display:block}.perspectives small,.rule-options small{display:block;color:#788c91;font-size:11px;margin-top:3px}.perspectives button.selected{background:#173f3b;color:white;border-color:#173f3b}.perspectives button.selected small{color:#b6d6ca}.rule-options button.chosen{border:2px solid #237c67;background:#eef7f2}.formula-strip{background:#f4f8f6;padding:13px 16px;border-left:3px solid #388671;margin-top:16px}.formula-strip span{display:block;color:#6a7f77;font-size:12px}.flow-guide{padding:18px 22px;background:#e6f2ec;border:1px solid #b9dacc;border-radius:9px;margin:20px 0}.permission-hint{padding:15px;background:#fff6df;border-radius:8px;margin:18px 0}.permission-hint p{color:#846a34;margin:5px 0 10px}@media(max-width:650px){.perspectives{flex-wrap:wrap}.perspectives button{min-width:120px}.flow-guide button{margin-top:10px}}
aside{overflow-y:auto;overscroll-behavior:contain}
