:root{--hub-accent:#617a30;--hub-ink:#222821;--hub-line:#e9ece6}.hub-page{padding:30px clamp(20px,3vw,48px);max-width:1720px;margin:0 auto;width:100%;color:var(--hub-ink)}.hub-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px}.hub-header h1{font-size:27px;font-weight:730;letter-spacing:-.6px;margin:5px 0 0}.hub-eyebrow{font-size:10px;font-weight:750;letter-spacing:2.2px;color:#8b9587}.hub-local{font-size:12px;color:#7c8676}.hub-banner{background:#edf2e5;border:1px solid #e1e8d6;border-radius:15px;padding:26px 28px;display:flex;align-items:center;justify-content:space-between;gap:26px;margin-bottom:24px}.hub-banner h2{font-size:21px;font-weight:700;margin-bottom:9px}.hub-banner p{font-size:13px;line-height:1.9;color:#66725b;max-width:760px}.hub-banner .btn-brand{flex:0 0 auto;width:auto;min-width:130px}.hub-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:26px}.hub-stat{padding:18px 20px;border:1px solid var(--hub-line);background:white;border-radius:13px;display:flex;flex-direction:column;gap:10px}.hub-stat span{font-size:12px;color:#808b78}.hub-stat strong{font-size:29px;font-weight:700;letter-spacing:-1px}.hub-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.hub-panel{background:white;border:1px solid var(--hub-line);border-radius:14px;padding:24px;min-width:0}.hub-panel h2{font-size:16px;font-weight:700;margin:0 0 14px}.hub-panel h3{font-size:14px;font-weight:650;margin:12px 0}.hub-panel hr{margin:24px 0;border-color:var(--hub-line)}.hub-muted{font-size:13px;color:#7b8475;line-height:1.9;margin-bottom:14px}.hub-small{display:block;font-size:11px;line-height:1.8;color:#8a9285;margin:8px 0}.hub-label{display:block;font-size:12px;font-weight:650;margin:17px 0 8px;color:#57614e}.hub-panel .form-input-styled{font-size:13px;min-height:40px}.hub-panel .btn-brand{width:auto;min-width:130px;padding:10px 18px}.hub-panel textarea{resize:vertical}.hub-note{font-size:12px;color:#687653;line-height:1.9;padding:14px 17px;background:#f2f5ed;border:1px solid #e6ecd9;border-radius:10px;margin-bottom:20px}.hub-empty{text-align:center;color:#919a8a;font-size:13px;padding:38px 18px;line-height:2}.hub-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #f0f2ed;font-size:13px}.hub-row h2{margin:0}.hub-row:last-child{border-bottom:0}.hub-badge{font-size:10px;border-radius:6px;background:#f0f2ec;color:#7c8573;padding:5px 9px;white-space:nowrap}.hub-badge.succeeded{background:#e8f4e9;color:#39754a}.hub-badge.running,.hub-badge.queued{background:#eef1fc;color:#627bb4}.hub-badge.failed,.hub-badge.uncertain{background:#fcf0e7;color:#b37748}.hub-link{display:inline-block;font-size:12px;color:var(--hub-accent);font-weight:650;line-height:1.9}.hub-quick{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hub-quick a{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;background:#fafbf8;border:1px solid #eef1e8;border-radius:9px;font-size:13px;transition:background .15s}.hub-quick a:hover{background:#edf3e4}.hub-quick span{color:#8d9c7e}.hub-button{display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid #dce2d5;border-radius:8px;min-height:36px;padding:8px 14px;font-size:12px;font-weight:600;cursor:pointer;color:#63714f}.hub-button:hover{background:#f2f6eb}.hub-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px}.hub-checkbox{display:flex;align-items:flex-start;gap:8px;font-size:12px;line-height:1.8;margin:17px 0;color:#747e6c}.hub-checkbox input{margin-top:4px;accent-color:var(--hub-accent)}.hub-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.hub-chips{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0}.hub-chips span{padding:4px 8px;background:#f4f6f0;border-radius:5px;font-size:10px;color:#778268}.hub-code{font-family:Consolas,ui-monospace,monospace;font-size:11px!important;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;max-height:420px;overflow:auto}.hub-details{border-top:1px solid var(--hub-line);margin:18px 0;padding-top:14px;font-size:12px}.hub-details summary{cursor:pointer;color:#7d876f;font-weight:650;margin-bottom:10px}.hub-settings{grid-template-columns:270px 1fr}.hub-engine-list{display:flex;flex-direction:column;gap:3px;max-height:65vh;overflow:auto}.hub-engine-list a{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#828c7a;padding:9px 10px;border-radius:6px}.hub-engine-list a.active{background:#edf2e4;color:#5e733f;font-weight:650}.hub-engine-list span{font-size:9px;background:#e7efdc;padding:1px 5px;border-radius:4px}.hub-table-wrap{overflow-x:auto}.hub-table{width:100%;font-size:12px;border-collapse:collapse}.hub-table th{text-align:left;font-size:10px;color:#8c967f;font-weight:650;padding:11px 13px;border-bottom:1px solid var(--hub-line);background:#fafbf8}.hub-table td{padding:15px 13px;vertical-align:top;border-bottom:1px solid #edf0e8}.hub-table td p{color:#939b89;font-size:11px;margin-top:7px;line-height:1.7}.hub-table td small{display:block;color:#a0a892;margin-top:6px;font-size:10px}.hub-search{display:flex;gap:10px;margin-bottom:18px}.hub-search .form-input-styled{flex:1}.hub-total{font-size:40px;letter-spacing:-2px}.hub-error{background:#fdf2ed;border:1px solid #f3dfd4;color:#b36b45;border-radius:8px;padding:12px 15px;font-size:12px;line-height:1.8;margin-top:13px;overflow-wrap:anywhere}.hub-tool-frame{width:100%;height:72vh;border:0;background:white;margin-top:16px}.hub-logo{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:15px;background:#6d843c;color:white;font-size:26px;font-weight:750;margin:0 auto 22px}.hub-page form{margin:0}.sidebar-section-label{font-size:10px!important;letter-spacing:.8px}.sidebar-nav-item{font-size:12px!important}.sidebar-nav{padding-top:10px!important}.hub-panel input:focus,.hub-panel textarea:focus,.hub-panel select:focus{outline:2px solid #bacb9e;outline-offset:2px}@media(max-width:1250px){.hub-stats{grid-template-columns:repeat(3,1fr)}.hub-cards{grid-template-columns:1fr 1fr}.hub-settings{grid-template-columns:230px 1fr}}@media(max-width:760px){.hub-page{padding:22px 16px}.hub-grid,.hub-cards,.hub-settings{grid-template-columns:1fr}.hub-header{align-items:flex-start}.hub-header h1{font-size:23px}.hub-local{display:none}.hub-banner{align-items:flex-start;flex-direction:column;padding:22px}.hub-stats{grid-template-columns:repeat(2,1fr);gap:10px}.hub-panel{padding:20px}.hub-quick{grid-template-columns:1fr 1fr}.hub-engine-list{max-height:200px}}
/* Native pages and integrated tools share one brand palette. */
:root{
 --brand-50:#f5f7ef;--brand-100:#edf2e4;--brand-200:#dce5ca;
 --brand-300:#c4d2a5;--brand-400:#9caf75;--brand-500:#6d843c;
 --brand-600:#617a30;--brand-700:#4d6229;--brand-800:#405126;--brand-900:#344323;
 --color-orange-50:var(--brand-50);--color-orange-100:var(--brand-100);
 --color-orange-200:var(--brand-200);--color-orange-300:var(--brand-300);
 --color-orange-400:var(--brand-400);--color-orange-500:var(--brand-500);
 --color-orange-600:var(--brand-600);--color-orange-700:var(--brand-700);
 --color-orange-800:var(--brand-800);--color-orange-900:var(--brand-900);
 --color-orange-950:#202b16;--shadow-primary:0 4px 14px rgba(97,122,48,.2);
}
/* Shared platform navigation also appears on the upstream application's pages. */
.feature-sidebar-group summary{padding:10px 14px;cursor:pointer;font-size:12px;color:#737e6b}
.feature-sidebar-group .sidebar-nav-item{padding-left:25px}
.feature-sidebar-group{margin-bottom:5px}
