:root{font-family:'LXGW WenKai Screen','Microsoft YaHei',sans-serif;color:#202d36;background:#f3f6f8;font-synthesis:none;line-height:1.65;font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{outline-offset:4px}button{cursor:pointer;border:1px solid #d5dee4;border-radius:9px;padding:9px 17px;background:#fff;color:inherit;transition:background .15s}button:hover{background:#e8eef2}button:disabled{opacity:.45;cursor:not-allowed}.primary{background:#116b68;color:#fff;border-color:#116b68}.primary:hover{background:#075653}h1,h2,p{margin-top:0}h1{font-size:32px;letter-spacing:.05em;margin-bottom:0}h2{font-size:23px}a{color:#087470;text-decoration:none}a:hover{text-decoration:underline}[hidden]{display:none!important}.eyebrow{font-size:13px;letter-spacing:.13em;color:#77858e;margin-bottom:3px}.muted,small{color:#71808a}.brand-icon{display:inline-grid;place-items:center;width:43px;height:43px;background:#e3f4ea;color:#12665f;border-radius:13px;font-size:27px}.brand{display:flex;gap:12px;align-items:center;margin-bottom:52px}.brand strong{font-size:25px;letter-spacing:.1em}.brand small{display:block;font-size:12px;color:#a6b6c0}aside{position:fixed;inset:0 auto 0 0;width:235px;background:#172e3b;color:#dce5eb;padding:34px 22px;display:flex;flex-direction:column}nav{display:grid;gap:8px}.nav{background:none;border:none;color:#acbdc8;text-align:left;padding:13px 16px}.nav.active,.nav:hover{background:#2b4452;color:white}.aside-bottom{margin-top:auto;font-size:14px;color:#a6b6c0;line-height:2}.aside-bottom span:last-of-type{display:block;font-size:12px;padding-left:16px}.text-button{background:none;border:0;color:inherit;padding-left:0}.dot{display:inline-block;background:#3aa08c;width:7px;height:7px;border-radius:50%;margin-right:8px}main{margin-left:235px;padding:34px 44px;max-width:1750px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:31px;gap:16px}.header-actions{display:flex;align-items:center;gap:10px}.badge{font-size:14px;padding:4px 10px;border-radius:6px;background:#e8ecef;color:#67747f}.badge.done{background:#def3e9;color:#1e7656}.badge.error{background:#fee8e4;color:#a63d30}.badge.review{background:#fff1d9;color:#936114}.badge.running,.badge.queued{background:#e3edff;color:#335d99}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:23px}.metrics article{border:1px solid #dfe6eb;background:white;padding:19px 22px;border-radius:12px}.metrics article>span{color:#586a75}.metrics strong{display:block;font-family:inherit;font-size:39px;font-weight:500;line-height:1.6}.metrics small{font-size:13px}.source-strip{display:flex;align-items:center;gap:4px;border-left:3px solid #319384;background:#e9f2f1;padding:14px 18px;font-size:14px}.source-strip>span:last-child{margin-left:auto;color:#6c807f}.list-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:29px 0 18px}.tabs{display:flex;gap:4px;flex-wrap:wrap}.tabs button{border:0;background:none;padding:8px 14px;color:#6d7a84}.tabs button.active{background:#172e3b;color:white}input,textarea,select{width:100%;border:1px solid #ccd7df;border-radius:8px;padding:10px 12px;background:#fff;color:#273c49}input[type=search]{max-width:235px}label{display:block;margin:16px 0 7px;font-size:14px}label input,label select{display:block;margin-top:6px}textarea{resize:vertical}.panel{border:1px solid #dfe6eb;background:white;border-radius:12px;padding:29px;max-width:1000px}.actions{display:flex;gap:10px;margin:18px 0}.empty{background:#fff;border:1px dashed #ced9df;border-radius:12px;padding:65px 20px;text-align:center}.empty-icon{font-size:40px;color:#738d99}.empty h2{margin:14px 0 7px}.empty p{color:#82909a;max-width:500px;margin:0 auto}.item{display:grid;grid-template-columns:45px minmax(0,1fr) auto;gap:15px;align-items:start;background:#fff;border:1px solid #dfe6eb;border-radius:11px;padding:20px;margin:12px 0}.item-icon{width:42px;height:48px;display:grid;place-items:center;border-radius:8px;background:#e9f2f1;color:#18706c;font-size:25px}.item h3{font-size:19px;margin:0 0 4px}.item .detail{color:#7b8891;font-size:14px;word-break:break-word}.item .error-text{color:#a45c26;margin-top:5px;font-size:14px}.item-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:end}.item-actions button{padding:4px 9px;font-size:14px}.path{font-size:13px;color:#8997a0;margin-top:7px;word-break:break-all}.preview-row{padding:15px 0;border-bottom:1px solid #e6ecef}.export-row{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid #e6ecef}.rules{padding-left:23px}.rules li{padding:9px 0}.rules p{color:#6b7b85;margin:6px 0}code{word-break:break-all;font-size:13px}footer{color:#97a4ac;font-size:13px;margin-top:35px}.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(125deg,#142d3b 0%,#204652 55%,#497a79 100%);padding:25px}.login-card{background:#fff;padding:40px;width:410px;max-width:100%;border-radius:17px;box-shadow:0 15px 70px #05131c30}.login-card>.brand-icon{margin-bottom:24px}.login-card h1{font-size:42px;margin:0 0 9px}.login-card .primary{width:100%;margin-top:20px}#login-error{color:#aa4036;font-size:14px;margin-top:12px}dialog{border:1px solid #d5dee4;border-radius:15px;width:580px;max-width:94vw;padding:28px;color:inherit}dialog::backdrop{background:#142c3c70}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:15px}#toast{position:fixed;z-index:10;right:24px;top:20px;max-width:440px;padding:12px 22px;color:#fff;background:#173e46;border-radius:9px;box-shadow:0 5px 25px #0002}@media(max-width:1000px){aside{width:195px;padding:28px 15px}main{margin-left:195px;padding:25px}header{align-items:start;flex-direction:column}.metrics{gap:10px}.metrics article{padding:15px}.item-actions{max-width:150px}.source-strip{flex-wrap:wrap}.source-strip>span:last-child{margin:0}}@media(max-width:700px){aside{position:static;width:100%;padding:17px 18px}.brand{margin-bottom:12px}.brand small,.aside-bottom{display:none}nav{display:flex;gap:0;overflow:auto}.nav{padding:9px;font-size:14px;white-space:nowrap}main{margin:0;padding:21px 16px}.metrics{grid-template-columns:repeat(2,1fr)}.header-actions{flex-wrap:wrap}.list-head{align-items:start;flex-direction:column}input[type=search]{max-width:none}.item{grid-template-columns:1fr}.item-icon{display:none}.item-actions{max-width:none;justify-content:start}.panel{padding:21px}.tabs button{padding:7px 10px}}
:root { color-scheme: light; }
@media(max-width:700px){nav{display:grid;grid-template-columns:1fr 1fr;overflow:visible}.nav{text-align:center}}
@media(max-width:700px){nav{display:grid;grid-template-columns:1fr 1fr;overflow:visible}.nav{text-align:center}}

.metadata-bar{display:flex;gap:16px;align-items:center;justify-content:space-between;margin:18px 0}.metadata-panel{border-bottom:1px solid #e2e7ed;padding-bottom:20px;margin-bottom:20px}.candidate{padding:16px 0;border-bottom:1px solid #e2e7ed}.candidate p{margin:8px 0}.candidate button{margin-top:12px}.candidate .muted{font-size:14px;line-height:1.6}#metadata-candidates{max-height:320px;overflow-y:auto}dialog{max-height:90vh;overflow-y:auto}#metadata-query{min-width:0;flex:1}@media(max-width:600px){.metadata-bar{align-items:flex-start;flex-direction:column}.metadata-panel .actions{flex-wrap:wrap}}

.schedule-status{font-size:14px;line-height:1.8;margin:12px 0 20px}.item-actions{display:flex;flex-direction:column;gap:10px}
