:root{--ink:#15201e;--paper:#f1f0e9;--panel:#faf9f3;--line:#d6d4c9;--muted:#66706c;--acid:#d9ff43;--green:#087f5b;--amber:#bc6b12;--red:#b53131;--navy:#172521}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body{margin:0;min-height:100vh;background-image:linear-gradient(rgba(21,32,30,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(21,32,30,.025) 1px,transparent 1px);background-size:32px 32px}.masthead{height:68px;padding:0 max(24px,calc((100vw - 1440px)/2));display:flex;align-items:center;justify-content:space-between;background:var(--navy);color:white;border-bottom:3px solid var(--acid)}.brandmark{display:flex;align-items:center;gap:11px;color:white;text-decoration:none;font-weight:900;letter-spacing:.08em}.brandmark span span{color:var(--acid)}.brandmark__signal{display:block;width:24px;height:24px;border:2px solid var(--acid);border-radius:50%;position:relative}.brandmark__signal:after{content:"";position:absolute;width:6px;height:6px;background:var(--acid);border-radius:50%;top:7px;left:7px;box-shadow:0 0 0 5px rgba(217,255,67,.12)}.environment{font:700 10px/1 ui-monospace,monospace;letter-spacing:.12em;color:#b9c3bd}.environment i{display:inline-block;width:6px;height:6px;background:var(--acid);border-radius:50%;margin-right:8px}.shell{max-width:1440px;margin:auto;padding:42px 24px 80px}.hero,.job-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:34px}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.14em;font:800 10px/1.3 ui-monospace,SFMono-Regular,monospace;color:var(--green)}h1,h2{font-family:Georgia,"Times New Roman",serif}h1{font-size:clamp(38px,5vw,66px);line-height:.96;letter-spacing:-.045em;margin:0;text-transform:capitalize}h2{margin:0;font-size:25px;letter-spacing:-.02em}.lede{color:var(--muted);font-size:16px;margin:15px 0 0;max-width:620px}.button{border:1px solid var(--ink);padding:11px 16px;background:transparent;color:var(--ink);font-weight:800;font-size:12px;cursor:pointer;text-decoration:none;white-space:nowrap}.button:hover{transform:translateY(-1px)}.button--primary{background:var(--acid);box-shadow:4px 4px 0 var(--ink)}.button--danger{border-color:var(--red);color:var(--red)}.kpis{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin-bottom:24px}.kpis article{padding:22px 24px;background:rgba(250,249,243,.82);border-right:1px solid var(--line);position:relative}.kpis article:last-child{border:0}.kpis span,.run-stats span{display:block;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.kpis strong{font:700 35px/1.25 Georgia,serif}.kpis small{display:block;color:var(--muted);font-size:11px}.kpi--live:before,.kpi--danger:before{content:"";position:absolute;left:-1px;top:-1px;right:-1px;height:3px;background:var(--green)}.kpi--danger:before{background:var(--red)}.grid{display:grid;gap:24px}.grid--main{grid-template-columns:minmax(0,1.7fr) minmax(310px,.8fr)}.grid--detail{grid-template-columns:minmax(0,1.45fr) minmax(320px,.65fr);align-items:start}.panel{background:var(--panel);border:1px solid var(--line);box-shadow:0 7px 24px rgba(28,38,34,.04)}.panel__head{padding:21px 24px 17px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.counter{font:800 11px/1 ui-monospace,monospace;background:var(--ink);color:white;padding:7px 9px}.counter--warn{background:var(--amber)}.job-row{display:flex;align-items:center;gap:14px;padding:17px 24px;border-bottom:1px solid var(--line);color:inherit;text-decoration:none}.job-row:hover{background:#fff}.status-dot{flex:0 0 auto;width:9px;height:9px;background:#98a09c;border-radius:50%}.status-dot--running{background:var(--green);box-shadow:0 0 0 4px rgba(8,127,91,.11)}.status-dot--queued{background:#5771b5}.status-dot--failed{background:var(--red)}.status-dot--succeeded{background:var(--green)}.status-dot--succeeded_with_warnings{background:var(--amber)}.job-row__body{display:block;min-width:0;flex:1}.job-row__body strong,.job-row__body small{display:block;text-transform:capitalize}.job-row__body small{color:var(--muted);font-size:11px;margin-top:3px}.job-row__body i{display:block;height:3px;background:#e3e2da;margin-top:10px}.job-row__body i b{display:block;height:100%;background:var(--green)}.job-row__metric{text-align:right;font:bold 13px ui-monospace,monospace}.job-row__metric small{display:block;color:var(--muted);font:9px ui-sans-serif,sans-serif;text-transform:uppercase}.dealer-row{display:flex;align-items:center;gap:12px;padding:15px 20px;border-bottom:1px solid var(--line)}.dealer-row>span{display:grid;place-items:center;width:32px;height:32px;background:#e7e6dd;border-radius:50%;font-size:10px;font-weight:900}.dealer-row div{min-width:0;flex:1}.dealer-row strong,.dealer-row small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dealer-row strong{font-size:13px}.dealer-row small{color:var(--muted);font-size:10px;margin-top:3px}.dealer-row time{font:700 10px ui-monospace,monospace;color:var(--amber)}.panel--recent{margin-top:24px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{text-align:left;padding:11px 18px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:9px;background:#efeee7}td{padding:14px 18px;border-top:1px solid var(--line)}tbody tr:hover{background:#fff}td a{font-weight:800;text-transform:capitalize;color:inherit;text-decoration:none}td small{display:block;color:var(--muted);margin-top:3px}.pill{display:inline-block;padding:5px 8px;border:1px solid currentColor;font:800 9px/1 ui-monospace,monospace;text-transform:uppercase;white-space:nowrap}.pill--succeeded{color:var(--green)}.pill--failed,.pill--cancelled{color:var(--red)}.pill--running{color:var(--green);background:#e6f4eb}.pill--queued{color:#4e63a1}.pill--succeeded_with_warnings{color:var(--amber)}.empty{text-align:center;padding:45px 20px;color:var(--muted)}.empty span{font-size:36px}.empty strong{display:block;color:var(--ink);margin:5px}.empty p{font-size:12px;margin:0}.empty--compact{padding:28px}.empty-cell{text-align:center;color:var(--muted)}dialog{width:min(540px,calc(100vw - 24px));padding:0;border:1px solid var(--ink);background:var(--panel);box-shadow:10px 10px 0 var(--ink)}dialog::backdrop{background:rgba(10,19,16,.68)}dialog form{padding:24px}.dialog__head{display:flex;justify-content:space-between;align-items:start;margin-bottom:25px}.close{border:0;background:none;font-size:28px;cursor:pointer}label{display:block;text-transform:uppercase;letter-spacing:.07em;font-size:10px;font-weight:800;margin:15px 0}label small{float:right;color:var(--muted);font-weight:500}input,select,textarea{display:block;width:100%;margin-top:7px;border:1px solid #aaa;background:white;padding:11px;font:13px ui-sans-serif,sans-serif;color:var(--ink)}textarea{font-family:ui-monospace,monospace;resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.dialog__actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.flash,.alert{padding:13px 16px;margin-bottom:20px;border-left:4px solid var(--green);background:#e4f2e8;font-size:13px}.alert--danger{border-color:var(--red);background:#fae7e3;color:#7d2424}.alert--warn{border-color:var(--amber);background:#fff0d8;color:#75440f}.back{display:inline-block;margin-bottom:25px;color:var(--muted);font-size:12px;font-weight:800;text-decoration:none}.job-hero{align-items:center}.job-hero h1{font-size:52px}.job-hero p:last-child{color:var(--muted)}.job-actions{display:flex;align-items:center;gap:12px}.job-actions form{margin:0}.run-stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:var(--panel);margin-bottom:24px}.run-stats div{padding:17px 20px;border-right:1px solid var(--line)}.run-stats div:last-child{border:0}.run-stats strong{display:block;font:700 13px ui-monospace,monospace;margin-top:7px}.target{border-bottom:1px solid var(--line)}.target summary{list-style:none;display:flex;align-items:center;gap:13px;padding:16px 22px;cursor:pointer}.target summary::-webkit-details-marker{display:none}.target summary>span:nth-child(2){min-width:0;flex:1}.target summary strong,.target summary small{display:block}.target summary small{font-size:10px;color:var(--muted);margin-top:3px}.target__detail{padding:0 22px 20px}.target__detail h3,.payload h3{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}pre{overflow:auto;padding:14px;background:#101b18;color:#d7e5dc;font:11px/1.55 ui-monospace,monospace;max-height:320px}.error-text{color:var(--red);font-size:12px;border-left:3px solid var(--red);padding-left:10px}.timeline{list-style:none;padding:20px 24px;margin:0}.timeline li{display:grid;grid-template-columns:55px 1fr;gap:14px;padding-bottom:21px;position:relative}.timeline li:after{content:"";position:absolute;left:61px;top:8px;bottom:0;border-left:1px solid var(--line)}.timeline li:last-child:after{display:none}.timeline time{font:10px ui-monospace,monospace;color:var(--muted)}.timeline div{padding-left:14px;position:relative}.timeline div:before{content:"";position:absolute;left:-11px;top:4px;width:7px;height:7px;border-radius:50%;background:var(--green);z-index:1}.timeline--error div:before{background:var(--red)}.timeline--warning div:before{background:var(--amber)}.timeline strong{font-size:12px;text-transform:capitalize}.timeline p{font-size:11px;color:var(--muted);line-height:1.45;margin:4px 0}.timeline__empty{display:block!important;color:var(--muted);font-size:12px}.payload{margin-top:24px}.payload__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;padding:20px}.payload__grid pre{height:100%;margin:0}.mono{font-family:ui-monospace,SFMono-Regular,monospace}footer{max-width:1440px;margin:auto;padding:20px 24px 40px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em}footer span{color:var(--green);padding:0 6px}@media(max-width:900px){.kpis{grid-template-columns:1fr 1fr}.kpis article:nth-child(2){border-right:0}.kpis article:nth-child(-n+2){border-bottom:1px solid var(--line)}.grid--main,.grid--detail{grid-template-columns:1fr}.job-hero{align-items:flex-start}.job-actions{align-items:flex-end;flex-direction:column}.run-stats{grid-template-columns:1fr 1fr}.run-stats div:nth-child(2){border-right:0}.run-stats div:nth-child(-n+2){border-bottom:1px solid var(--line)}}@media(max-width:600px){.masthead{height:58px;padding:0 16px}.environment{display:none}.shell{padding:28px 14px 60px}.hero,.job-hero{display:block}.hero .button{margin-top:22px}.job-hero h1{font-size:40px}.job-actions{align-items:flex-start;margin-top:20px}.kpis{grid-template-columns:1fr 1fr}.kpis article{padding:16px}.kpis strong{font-size:28px}.panel__head{padding:17px}.job-row{padding:15px}.job-row__metric{display:none}.form-grid{grid-template-columns:1fr}.run-stats{grid-template-columns:1fr}.run-stats div{border-right:0;border-bottom:1px solid var(--line)}.table-wrap{margin-bottom:-1px}th,td{padding:11px 13px}.timeline{padding:18px 15px}.payload__grid{grid-template-columns:1fr;padding:14px}}

.status-dot--error{background:var(--red)}.status-dot--warning{background:var(--amber)}.pill--error{color:var(--red)}.pill--warning{color:var(--amber)}.job-row--error{box-shadow:inset 3px 0 var(--red)}.job-row--warning{box-shadow:inset 3px 0 var(--amber)}.target--error>summary{background:#fae7e3}.target--warning>summary{background:#fff0d8}.run-stats{grid-template-columns:repeat(5,1fr)}.timeline--scrollable{max-height:32rem;overflow-y:auto;overscroll-behavior:contain}@media(max-width:900px){.run-stats{grid-template-columns:1fr 1fr}}@media(max-width:600px){.run-stats{grid-template-columns:1fr}}
.target__provider-change{color:var(--ink);font-weight:700}.pill--changed{margin-left:6px;background:var(--acid);color:var(--navy)}
.copy-pre{position:relative}.copy-pre pre{padding-top:48px}.copy-pre__button{position:absolute;top:10px;right:10px;z-index:1;padding:6px 9px;border:1px solid var(--line);border-radius:3px;background:var(--panel);color:var(--ink);cursor:pointer;font:700 10px/1 Inter,ui-sans-serif,system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase}.copy-pre__button:hover{background:var(--acid)}.copy-pre__button:focus-visible{outline:3px solid var(--acid);outline-offset:2px}

/* Shared control-plane refinements */
:root {
    --amber: #8a4b00;
}

.skip-link {
    position: fixed;
    left: 16px;
    top: -64px;
    z-index: 3000;
    padding: 10px 14px;
    background: var(--acid);
    color: var(--navy);
    font-weight: 900;
    text-decoration: none;
}

.skip-link:focus {
    top: 12px;
}

.primary-nav {
    position: sticky;
    top: 0;
    z-index: 100;
    border-bottom: 1px solid #31433e;
    background: #20312d;
    color: #dce4df;
}

.primary-nav__inner {
    display: flex;
    align-items: stretch;
    gap: 2px;
    max-width: 1440px;
    margin: auto;
    padding: 0 24px;
    overflow-x: auto;
    scrollbar-width: thin;
}

.primary-nav a {
    position: relative;
    flex: 0 0 auto;
    padding: 13px 12px 12px;
    color: inherit;
    font: 800 10px/1 ui-monospace, SFMono-Regular, monospace;
    letter-spacing: .06em;
    text-decoration: none;
    text-transform: uppercase;
}

.primary-nav a:hover,
.primary-nav a.is-active {
    color: #fff;
    background: rgba(255, 255, 255, .06);
}

.primary-nav a.is-active::after {
    position: absolute;
    right: 10px;
    bottom: 0;
    left: 10px;
    height: 3px;
    background: var(--acid);
    content: "";
}

.control-plane-page :where(a, button, input, select, textarea, summary):focus-visible {
    outline: 3px solid var(--acid);
    outline-offset: 2px;
}

.button--small {
    min-height: 32px;
    padding: 7px 10px;
    font-size: 10px;
}

.button--danger {
    border-color: #d8a095;
    color: var(--red);
}

.panel__head small {
    display: block;
    margin-top: 6px;
    color: var(--muted);
    font-size: 11px;
    line-height: 1.45;
}

.pill--success,
.pill--succeeded,
.pill--completed {
    background: #dcefe2;
    color: #086044;
}

.pill--processing,
.pill--running,
.pill--queued {
    background: #e4eee9;
    color: #155f4c;
}

.pill--warning,
.pill--partial {
    background: #f6e4cb;
    color: var(--amber);
}

.pill--error,
.pill--failed {
    background: #f7dfdc;
    color: var(--red);
}

.pill--cancelled,
.pill--paused {
    background: #e8e7e1;
    color: #535d59;
}

.status-dot--success,
.status-dot--succeeded,
.status-dot--completed {
    background: var(--green);
}

.status-dot--processing,
.status-dot--running,
.status-dot--queued {
    background: #39846f;
}

.status-dot--cancelled,
.status-dot--paused {
    background: #7d8581;
}

.run-stats {
    gap: 1px;
    border: 1px solid var(--line);
    background: var(--line);
}

.run-stats > div {
    border: 0 !important;
    background: var(--panel);
}

.table-wrap {
    position: relative;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
}

.table-wrap::after {
    position: sticky;
    right: 8px;
    bottom: 6px;
    float: right;
    padding: 3px 6px;
    border: 1px solid var(--line);
    background: rgba(250, 249, 243, .92);
    color: var(--muted);
    content: "Scroll for more";
    font: 700 9px/1.2 ui-monospace, SFMono-Regular, monospace;
    pointer-events: none;
    text-transform: uppercase;
}

.control-plane-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px 16px;
    min-height: 68px;
    padding: 20px 24px;
    border-top: 1px solid var(--line);
    color: var(--muted);
    font: 700 10px/1.4 ui-monospace, SFMono-Regular, monospace;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.control-plane-footer a {
    color: var(--green);
}

@media (max-width: 760px) {
    .masthead {
        height: 60px;
        padding-inline: 16px;
    }

    .environment {
        max-width: 42vw;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .primary-nav__inner {
        padding-inline: 8px;
    }

    .primary-nav a {
        padding-inline: 10px;
    }

    .shell {
        padding: 30px 16px 60px;
    }

    .hero,
    .job-hero {
        align-items: flex-start;
        flex-direction: column;
    }

    .panel__head {
        align-items: flex-start;
        flex-wrap: wrap;
        gap: 12px;
    }
}

@media (max-width: 600px) {
    .table-wrap::after {
        display: block;
    }
}

@media (min-width: 601px) {
    .table-wrap::after {
        display: none;
    }
}

.job-actions {
    flex-wrap: wrap;
    justify-content: flex-end;
}

.target > summary {
    position: relative;
    padding-right: 42px;
}

.target > summary::after {
    position: absolute;
    right: 16px;
    top: 50%;
    color: var(--muted);
    content: "+";
    font: 800 18px/1 ui-monospace, SFMono-Regular, monospace;
    transform: translateY(-50%);
}

.target[open] > summary::after {
    content: "-";
}

@media (max-width: 900px) {
    .job-actions {
        justify-content: flex-start;
    }
}
