:root{--navy:#172a2c;--navy2:#223c3e;--green:#14785a;--mint:#dff3e9;--bg:#f5f6f4;--ink:#1c302e;--muted:#75817b;--line:#e4e9e3;--red:#bc4a46;--amber:#b37b27;--white:#fff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 "Segoe UI",Arial,sans-serif}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{color:inherit;text-decoration:none}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1{font-size:34px;line-height:1.16;letter-spacing:-1.1px;font-weight:650}h2{font-size:18px;font-weight:650;letter-spacing:-.25px}h3{font-size:15px}.shell{display:grid;grid-template-columns:234px 1fr;min-height:100vh}.sidebar{background:var(--navy);color:#e8f1eb;padding:34px 22px;position:fixed;width:234px;inset:0 auto 0 0;display:flex;flex-direction:column}.brand{display:grid;grid-template-columns:38px 1fr;gap:0 11px;font-size:22px;font-weight:700;letter-spacing:1px;align-items:center}.brand-mark{background:#d9eedb;color:#1b4136;display:grid;place-items:center;border-radius:11px;width:38px;height:42px;font-size:25px;font-weight:750;grid-row:span 2;letter-spacing:-2px}.brand-caption{font-size:9px;letter-spacing:2.6px;color:#9eada5;font-weight:400}.nav-label{margin:52px 13px 14px;font-size:10px;letter-spacing:1.8px;color:#81998f}.nav-item{border:0;color:#abc0b7;display:flex;gap:12px;align-items:center;padding:13px 15px;width:100%;margin:4px 0;background:transparent;text-align:left;border-radius:8px;font-weight:500}.nav-item span{font-size:20px;width:22px}.nav-item.active{background:#2b4741;color:#ecf7ee}.nav-item:hover{background:#25413b}.sidebar-note{margin-top:auto;padding:23px 10px 27px;border-bottom:1px solid #355047;font-size:12px;color:#bcd0c4}.pulse{display:inline-block;background:#8dcc9d;width:7px;height:7px;border-radius:50%;margin-right:8px}.sidebar-time{display:block;margin:7px 0 12px;color:#edf5ed;font-size:22px;letter-spacing:-.5px}.sidebar-note p{color:#8fa79b;font-size:11px}.sidebar-bottom{display:flex;gap:10px;align-items:center;margin-top:24px}.avatar{width:30px;height:30px;background:#405b50;border-radius:50%;display:grid;place-items:center;font-size:11px}.sidebar-bottom strong{font-size:11px;font-weight:500}.sidebar-bottom span{display:block;font-size:10px;color:#91a99a}.sidebar-bottom button{margin-left:auto;border:0;background:none;color:#b7cabd;font-size:21px}.shell main{grid-column:2;min-width:0}.topbar{height:73px;padding:0 44px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:#fafbf9;font-size:11px;color:var(--muted)}.topbar-right{display:flex;align-items:center;gap:14px}.icon-button{border:1px solid var(--line);background:white;border-radius:7px;width:31px;height:31px;font-size:20px;color:var(--ink)}.content{max-width:1370px;padding:38px 44px 50px;margin:auto}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:30px}.eyebrow{display:block;font-size:10px;letter-spacing:1.9px;font-weight:600;color:var(--muted);margin-bottom:12px}.subtitle{margin-top:11px;color:var(--muted);font-size:13px}.button{border:1px solid var(--line);background:white;color:var(--ink);padding:10px 16px;border-radius:7px;display:inline-flex;gap:10px;align-items:center;justify-content:center;font-size:12px;font-weight:600;white-space:nowrap;min-height:39px}.button.primary{background:var(--green);border-color:var(--green);color:white}.button.primary:hover{background:#106448}.button.text{border:0;background:none;padding:4px 0;color:var(--green);min-height:auto}.heading-actions{display:flex;gap:9px;margin-top:7px;flex-wrap:wrap}.status-banner{padding:23px 25px;border:1px solid #cce3d1;border-radius:11px;background:#edf6ed;display:flex;align-items:center;gap:17px;margin-bottom:22px}.status-banner.warning{background:#fdf5e8;border-color:#eadbc0}.status-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#d9edda;color:var(--green);font-size:23px;flex-shrink:0}.status-banner.warning .status-icon{background:#f1e3c7;color:var(--amber)}.status-banner h2{font-size:15px}.status-banner p{font-size:12px;color:#647b64;margin-top:4px}.status-banner .badge{margin-left:auto}.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:5px;background:#edf0ed;color:#6e7a70;font-size:10px;font-weight:650;white-space:nowrap}.badge.ok{background:#e2f1e6;color:#287041}.badge.error{background:#f9e6e5;color:var(--red)}.badge.partial,.badge.running,.badge.queued{background:#fbefd8;color:#956b2a}.badge.test{background:#e7edf5;color:#536984}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:31px}.metric{background:white;border:1px solid var(--line);border-radius:10px;padding:20px 21px}.metric .label{color:var(--muted);font-size:11px;display:flex;justify-content:space-between;gap:10px}.metric .number{font-size:32px;letter-spacing:-1.2px;line-height:1.4;margin:10px 0 4px;font-weight:600}.metric .hint{font-size:10px;color:var(--muted)}.metric .number.green{color:var(--green)}.metric .number.time{font-size:29px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 16px;gap:15px}.section-heading .small{color:var(--muted)}.account-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:32px}.account-card{border:1px solid var(--line);border-radius:10px;background:white;padding:20px 22px}.account-card-top{display:flex;align-items:center;gap:12px}.account-avatar{width:38px;height:38px;border-radius:10px;background:#edf0e8;display:grid;place-items:center;color:#5b7562;font-size:12px;font-weight:700}.account-card-top .badge{margin-left:auto}.account-meta{font-size:10px;color:var(--muted);margin-top:3px}.account-stats{display:grid;grid-template-columns:repeat(3,1fr);padding:18px 0 14px;margin-top:12px;border-bottom:1px solid #eef0eb;gap:10px}.account-stat strong{display:block;font-size:20px;font-weight:600}.account-stat span{font-size:10px;color:var(--muted)}.account-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;margin-top:13px;color:var(--muted)}.table-wrap{border:1px solid var(--line);border-radius:10px;overflow:auto;background:white}table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap}th{padding:13px 18px;background:#fafbf8;border-bottom:1px solid var(--line);font-size:10px;font-weight:550;color:#849082}td{padding:16px 18px;border-bottom:1px solid #edf0e9;font-size:12px}tr:last-child td{border-bottom:0}td .sub{display:block;font-size:10px;color:var(--muted);margin-top:3px}.empty{padding:46px 24px;text-align:center;color:var(--muted);font-size:13px}.empty h3{margin-bottom:7px;color:var(--ink)}.page-footer{font-size:10px;color:#96a093;padding:0 44px 20px;display:flex;justify-content:space-between}.filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px;padding:18px 20px;background:white;border:1px solid var(--line);border-radius:10px;margin-bottom:22px}.filters label{font-size:10px;color:var(--muted);display:grid;gap:6px}.filters select,.filters input{border:1px solid var(--line);border-radius:6px;padding:8px 10px;min-height:35px;background:white;color:var(--ink);font-size:12px}.filters .counter{margin-left:auto;color:var(--muted);font-size:11px;align-self:center}.notice{margin:18px 44px 0;padding:12px 17px;border-radius:7px;background:#e4eee5;border:1px solid #ccdccc;font-size:12px}.notice.error{background:#fae9e6;border-color:#edcbc5;color:#9c4740}.job-strip{background:#eaf0f7;border:1px solid #d1deed;border-radius:9px;padding:14px 18px;margin-bottom:21px;font-size:12px;color:#496785;display:flex;gap:12px;align-items:center}.spin{display:inline-block;animation:rotate 2s linear infinite;font-size:20px}@keyframes rotate{to{transform:rotate(360deg)}}.modal-overlay{position:fixed;inset:0;background:#14292770;display:flex;align-items:center;justify-content:center;z-index:10;padding:24px;backdrop-filter:blur(3px)}.modal{background:white;border-radius:13px;padding:30px;width:470px;max-width:100%;max-height:90vh;overflow:auto;box-shadow:0 20px 80px #14292730}.modal.wide{width:850px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.modal-header button{border:0;background:none;color:var(--muted);font-size:24px}.modal p{color:var(--muted);font-size:12px;margin-bottom:22px}.form-grid{display:grid;gap:17px}.form-grid label,.login-card label{font-size:12px;font-weight:600;display:grid;gap:7px}.form-grid input,.login-card input{width:100%;border:1px solid #dbe3d9;border-radius:7px;padding:11px 12px;background:white;color:var(--ink);font-weight:400}.form-grid .check{display:flex;align-items:center;gap:10px}.form-grid .check input{width:16px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.form-message{font-size:12px;color:var(--red);min-height:18px;margin-top:8px}.error-list{padding:15px 17px;background:#fbefec;border-radius:7px;margin-top:15px;color:#aa5447;font-size:11px}.small{font-size:11px}.info-box{border-radius:8px;background:#f0f4ee;border:1px solid var(--line);padding:16px;font-size:12px;line-height:1.7}.login-shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;background:radial-gradient(ellipse at 80% 20%,#e2edde,transparent 55%),var(--bg)}.login-brand{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:700;letter-spacing:1px;margin-bottom:28px}.login-card{width:420px;max-width:100%;background:white;border:1px solid var(--line);padding:35px;border-radius:13px;box-shadow:0 15px 60px #213e2c08}.login-card h1{font-size:32px}.login-card p{font-size:12px;color:var(--muted);margin:16px 0 24px}.login-card label{margin-top:17px}.login-card .button{width:100%;margin-top:15px;justify-content:space-between}.login-footer{font-size:10px;color:#91a08d;margin-top:25px}.initial-loading{min-height:100vh;display:grid;place-items:center;color:var(--muted)}.execution-button{border:0;background:none;color:var(--green);padding:0;font-weight:600;font-size:12px}.account-state{font-size:11px;color:var(--muted)}.account-name{display:flex;align-items:center;gap:11px}.disabled-row{opacity:.6}@media(min-width:1500px){.account-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:1050px){.shell{grid-template-columns:200px 1fr}.sidebar{width:200px;padding:28px 15px}.content{padding:30px 26px}.topbar{padding:0 26px}.metrics{grid-template-columns:repeat(2,1fr)}.page-heading{flex-direction:column}.heading-actions{margin:0}.account-card{padding:18px}.page-footer{padding:0 26px 20px}}@media(max-width:700px){h1{font-size:28px}.shell{display:block}.sidebar{position:static;width:auto;padding:15px 18px;display:block}.brand{display:inline-grid;font-size:18px}.brand-mark{width:31px;height:34px;font-size:21px}.nav-label,.sidebar-note,.sidebar-bottom{display:none}.sidebar nav{display:flex;margin-top:15px;gap:6px}.nav-item{font-size:10px;justify-content:center;gap:5px;padding:8px 5px}.nav-item span{font-size:16px;width:17px}.topbar{height:50px;padding:0 19px}.content{padding:26px 18px}.account-grid{grid-template-columns:1fr}.metrics{gap:10px}.metric{padding:16px}.metric .number{font-size:28px}.status-banner{padding:18px 15px}.status-banner .badge{display:none}.heading-actions{width:100%}.heading-actions .button{flex:1;font-size:10px}.section-heading .small{max-width:130px;text-align:right}.notice{margin:12px 18px 0}.page-footer{padding:0 18px 20px}.filters .counter{margin-left:0}.modal{padding:24px}.modal-overlay{padding:12px}.topbar-right #refresh-text{font-size:9px}.login-card{padding:28px}}@media(prefers-reduced-motion:reduce){.spin{animation:none}}
.detail-table{margin-top:18px}

.brand{font-size:19px;letter-spacing:0}.brand-caption{font-size:11px;letter-spacing:.3px;text-transform:none;display:block}.login-brand{letter-spacing:0}.login-brand .brand-caption{font-weight:400;margin-top:2px}.brand-text{display:block}
.brand-logo{width:42px;height:46px;object-fit:contain;background:#fff;border-radius:9px;padding:4px;grid-row:span 2}.brand{grid-template-columns:42px 1fr;gap:0 8px}.login-brand .brand-logo{width:52px;height:56px}@media(max-width:1050px) and (min-width:701px){.brand{font-size:16px}}
