:root{--ink:#152b29;--muted:#75817d;--green:#147c66;--line:#e4e9e4;--bg:#f6f8f5;--amber:#bd792b}*{box-sizing:border-box}body{margin:0;font:14px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--bg)}button,input,select{font:inherit}button{cursor:pointer}aside{width:235px;background:#102f2c;position:fixed;inset:0 auto 0 0;color:#f0faf4;padding:32px 22px}.brand{color:inherit;text-decoration:none;font-size:24px;display:block;font-weight:700}.brand>span{background:#d3eb9f;color:#16382e;border-radius:10px;padding:6px 9px;margin-right:6px}.brand small{display:block;font-size:11px;font-weight:400;letter-spacing:3px;color:#97b3a9;margin:14px 0 50px}.navlabel{font-size:10px;letter-spacing:1.3px;color:#85a49b}nav button{display:block;border:0;background:none;color:#b9cdc4;text-align:left;padding:14px 12px;width:100%;margin:7px 0;border-radius:7px}nav button.active{background:#244c40;color:#e5f4b8}nav b{float:right;background:#3e6150;border-radius:4px;font-size:10px;padding:0 6px}.aside-bottom{position:absolute;bottom:30px;color:#c6d8cc;font-size:12px}.aside-bottom small{color:#7e9f92}.pulse{display:inline-block;width:6px;height:6px;border-radius:50%;background:#c6e890;margin-right:6px}main{margin-left:235px}header{height:76px;border-bottom:1px solid var(--line);padding:0 40px;display:flex;justify-content:space-between;align-items:center;background:#fff;color:var(--muted);font-size:12px}header>div:last-child{display:flex;gap:18px;align-items:center}.avatar{width:30px;height:30px;border-radius:50%;background:#e9eedf;text-align:center;line-height:30px;color:#526648}.notice{padding:10px 40px;background:#eef3e6;color:#52683f;font-size:12px;font-weight:600}.notice span{font-weight:400;margin-left:14px;color:#7a866e}#content{padding:32px 40px 50px;max-width:1650px;margin:auto}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--green);font-weight:700}.title{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px;gap:16px}h1{font-size:27px;letter-spacing:-.7px;margin:5px 0}h2{font-size:16px;margin:0}h3{font-size:15px;margin:0 0 10px}p{margin:7px 0}.sub,.muted{color:var(--muted);font-size:12px}.tag,.badge{font-size:11px;padding:3px 8px;border-radius:4px;background:#eef3ec;color:#5b7060;display:inline-block}.badge.warn{color:#a46a25;background:#fff1dd}.badge.red{color:#b0544b;background:#fcebe7}.badge.green{color:#18775f;background:#e2f3ea}.btn{border:1px solid #d5ded5;border-radius:6px;background:white;padding:9px 15px;color:var(--ink);font-size:12px}.btn.primary{background:var(--green);border-color:var(--green);color:white}.btn:focus-visible,nav button:focus-visible{outline:3px solid #c6dd8d;outline-offset:2px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat{background:#fff;border:1px solid var(--line);border-radius:9px;padding:20px 22px}.stat label{color:var(--muted);font-size:12px}.stat strong{display:block;font-size:32px;font-weight:550;line-height:1.6}.stat small{color:#839181;font-size:11px}.grid{display:grid;grid-template-columns:1.55fr 1fr;gap:22px}.panel{background:#fff;border:1px solid var(--line);border-radius:9px;overflow:hidden;margin-bottom:22px}.panel-head{padding:20px 24px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.panel-body{padding:22px 24px}.row{display:flex;gap:14px;align-items:center;padding:17px 0;border-bottom:1px solid #edf0eb}.row:last-child{border:0}.row .grow{flex:1}.icon{width:34px;height:34px;display:grid;place-items:center;border-radius:7px;background:#edf4e9;color:var(--green)}.textbtn{background:none;border:0;color:var(--green);font-size:12px;padding:4px}.flow{display:flex;gap:12px;align-items:center;margin:20px 0}.flow>div{flex:1;padding:16px 12px;background:#f3f6ef;border-radius:6px;text-align:center;font-size:12px}.flow strong{display:block;margin-bottom:4px}.flow span{color:#8c9b85}.barrow{display:flex;align-items:center;gap:14px;margin:19px 0;font-size:12px}.barrow label{width:75px}.bar{height:8px;background:#eef2e9;flex:1;border-radius:8px;overflow:hidden}.bar i{display:block;height:100%;background:#83a68a;border-radius:8px}.toolbar{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}input,select{border:1px solid var(--line);border-radius:6px;background:white;padding:9px 12px;outline:none;font-size:12px;color:var(--ink)}input{min-width:270px}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{background:#fafbf8;color:#7d897d;font-weight:500;padding:13px 19px;white-space:nowrap}td{padding:17px 19px;border-bottom:1px solid #edf0eb}tbody tr{cursor:pointer}tbody tr:hover{background:#f8fbf4}td strong{font-weight:550;display:block}td small{color:var(--muted)}.tablewrap{overflow:auto}.event{padding:24px;margin-bottom:17px;border:1px solid var(--line);border-radius:9px;background:white}.eventtop{display:flex;justify-content:space-between;gap:20px}.event h2{margin:9px 0}.eventmetrics{display:flex;gap:38px;margin:20px 0}.eventmetrics strong{font-size:22px;display:block;font-weight:500}.eventmetrics small{color:var(--muted)}.eventfoot{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px;font-size:12px}.schema{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.schema>div{background:#f7f9f4;border:1px solid var(--line);padding:20px;border-radius:7px}.schema code{display:block;font-size:11px;color:#61745f;margin:8px 0}.rule{padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.rule:last-child{border:0}#overlay{position:fixed;inset:0;background:#0b252a66;z-index:10}#overlay[hidden]{display:none}.drawer{position:absolute;right:0;top:0;bottom:0;width:min(610px,100%);background:#fff;overflow:auto;padding:35px}.close{position:absolute;right:22px;top:18px;border:0;background:#f2f5ed;border-radius:50%;width:30px;height:30px;font-size:22px;color:#647864}.conversation{border:1px solid var(--line);border-radius:7px;padding:15px;margin:12px 0;font-size:13px}.conversation.player{background:#f7f9f3}.conversation small{display:block;color:#7e9076;margin-bottom:6px}.evidence{padding:17px;background:#edf5eb;border-left:3px solid #9cb878;margin:15px 0;font-size:13px}.drawer h2{font-size:22px;margin:18px 0 8px}.drawer h3{margin-top:27px}.diff{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:12px 0}.diff>div{padding:13px;background:#f6f7f3;border-radius:6px;font-size:12px}.diff small{display:block;color:var(--muted);margin-bottom:8px}.detailfoot{display:flex;gap:12px;margin-top:24px}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:#173f32;color:white;padding:12px 22px;border-radius:7px;box-shadow:0 4px 24px #0002;z-index:30;display:none;font-size:12px}.empty{text-align:center;padding:45px;color:var(--muted)}@media(max-width:1050px){aside{width:190px;padding:28px 16px}main{margin-left:190px}#content{padding:24px}header,.notice{padding-left:24px;padding-right:24px}.stats{gap:10px}.stat{padding:16px}.grid{grid-template-columns:1fr}.schema{grid-template-columns:1fr}}@media(max-width:680px){aside{position:static;width:100%;padding:16px}.brand{font-size:20px}.brand small,.navlabel,.aside-bottom{display:none}nav{display:flex;overflow:auto;margin-top:16px}nav button{white-space:nowrap;width:auto;padding:8px 10px;font-size:11px;margin:0}nav b{display:none}main{margin:0}header{height:55px;padding:0 18px}.notice{padding:10px 18px}.notice span{display:block;margin:3px 0 0}#content{padding:23px 18px}.stats{grid-template-columns:1fr 1fr}.stat strong{font-size:27px}.title{align-items:flex-start}h1{font-size:24px}.title .btn{white-space:nowrap}.panel-head,.panel-body{padding:18px}.eventmetrics{gap:22px}.flow{gap:4px}.flow>div{padding:12px 5px}.drawer{padding:30px 22px}.eventfoot{align-items:flex-start;gap:12px}.diff{grid-template-columns:1fr}}
