:root{font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif;color:#24282b;background:#f5f6f7;font-size:14px;letter-spacing:0;--accent:#147b64;--line:#e1e5e8}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;border:1px solid #cdd3d8;border-radius:5px;background:#fff;color:#30373c;padding:7px 12px;cursor:pointer;white-space:nowrap}button:hover{background:#f0f4f3}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:white}.icon{width:36px;height:36px;padding:8px;flex:0 0 36px}svg{width:18px;height:18px;flex-shrink:0}header{height:64px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 24px;gap:12px}.brand,.header-right{display:flex;align-items:center;gap:12px}.brand>svg{width:26px;height:26px;color:var(--accent)}.brand strong{font-size:18px}.layout{display:grid;grid-template-columns:204px minmax(0,1fr);min-height:calc(100vh - 64px)}aside{border-right:1px solid var(--line);background:#fff;padding:22px 12px;display:flex;flex-direction:column;justify-content:space-between}nav{display:flex;flex-direction:column;gap:5px}nav button{justify-content:flex-start;width:100%;border:none;min-height:42px;color:#596268;background:transparent}nav button.active{background:#e8f3ee;color:#176449;font-weight:600}.version{font-size:12px;color:#939a9f;padding:15px}main{padding:26px 30px;min-width:0}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}h1{font-size:23px;line-height:1.3;margin:0;font-weight:600}h2{font-size:19px;margin:0}#latency{font-size:12px;color:#82898e}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px}.toolbar .spacer{flex:1}.toolbar input{max-width:210px}.table-wrap{overflow:auto;width:100%;background:white;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;text-align:left;table-layout:auto;min-width:740px}th{background:#fafbfc;color:#697178;font-size:12px;font-weight:500;white-space:nowrap}td,th{padding:12px 14px;border-bottom:1px solid #edf0f2;line-height:1.5}td{max-width:260px;overflow-wrap:anywhere}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfdfd}.row-actions{display:flex;gap:5px;white-space:nowrap}.row-actions button{width:30px;height:30px;min-height:30px;padding:5px;flex-basis:30px}.badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:12px;line-height:1.5;background:#eef0f2;color:#616b74;white-space:nowrap}.badge.ready,.badge.succeeded,.badge.online{background:#e6f3eb;color:#28774c}.badge.unknown,.badge.review,.badge.failed,.badge.error{background:#fcecea;color:#ac4038}.badge.running,.badge.pending,.badge.queued{background:#e7f2fa;color:#33759b}.badge.blocked,.badge.disabled{background:#f2f0e4;color:#807137}.pagination{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.empty{text-align:center;padding:55px 20px;color:#8a9298}.empty svg{width:36px;height:36px;margin-bottom:10px}.empty p{margin:8px 0}label{display:flex;flex-direction:column;gap:7px;color:#515960;font-size:13px;margin-bottom:16px}input,textarea,select{width:100%;min-height:37px;padding:8px 10px;border:1px solid #cdd4d9;background:white;color:#252d32;border-radius:4px}input:focus,textarea:focus,select:focus{outline:2px solid #a6cfc2;outline-offset:1px}textarea{resize:vertical;min-height:115px}input[type=checkbox]{width:17px;min-height:17px;height:17px;accent-color:var(--accent)}.check{flex-direction:row;align-items:center}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.operation-form{max-width:720px}.form-actions{display:flex;justify-content:flex-end;margin-top:18px;gap:10px}.form-actions .primary{min-width:100px}dialog{border:1px solid #d9dfe3;border-radius:7px;box-shadow:0 15px 55px #0002;width:540px;max-width:calc(100vw - 28px);padding:24px;max-height:calc(100dvh - 32px);overflow:auto}dialog::backdrop{background:#171e2645}#login{width:380px}#login h2{margin-bottom:24px}#login .primary{width:100%}.dialog-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}#notice{padding:12px 16px;background:#edf5ef;border-left:3px solid #3c8664;margin-bottom:16px;overflow-wrap:anywhere}#notice.error{background:#fff1f0;border-color:#b9554e}.error{color:#ae4239;font-size:13px;overflow-wrap:anywhere}.settings-row{display:grid;grid-template-columns:minmax(130px,1fr) 130px 150px 44px;gap:16px;align-items:center;border-bottom:1px solid var(--line);padding:15px 0;max-width:760px}.settings-row input{width:100%}.settings-title{font-size:16px;margin:30px 0 10px;font-weight:600}.muted{color:#7f888f;font-size:12px}pre{font:12px/1.65 Menlo,monospace;white-space:pre-wrap;overflow-wrap:anywhere;background:#f4f6f8;padding:14px;border-radius:4px;margin:0}.summary-band{display:flex;gap:32px;border-bottom:1px solid var(--line);padding:0 0 22px;margin:0 0 22px;flex-wrap:wrap}.summary-band strong{display:block;font-size:23px;color:#263c37;margin-top:7px}.summary-band span{font-size:12px;color:#778088}[hidden]{display:none!important}@media(max-width:760px){header{height:58px;padding:0 14px}.brand strong{font-size:16px}.header-right{gap:5px}.header-right .badge{max-width:100px;white-space:normal;text-align:center}.layout{display:block;min-height:calc(100vh - 58px)}aside{padding:8px;border-right:0;border-bottom:1px solid var(--line)}nav{flex-direction:row;overflow-x:auto;gap:3px}nav button{width:auto;flex-shrink:0;padding:8px 11px;min-height:36px}nav button svg{display:none}.version{display:none}main{padding:20px 14px}.page-heading{margin-bottom:18px}h1{font-size:21px}.toolbar{gap:8px}.toolbar input{max-width:150px}.toolbar select{max-width:135px}.toolbar .spacer{display:none}.settings-row{grid-template-columns:minmax(85px,1fr) 90px 76px 36px;gap:8px;font-size:12px}.form-grid{grid-template-columns:1fr}dialog{padding:20px}.summary-band{gap:20px}.header-right .icon{width:32px;flex-basis:32px;height:32px}}
.toolbar select{width:auto;min-width:130px;max-width:220px}
