@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url("brand/fonts/inter-400.woff2") format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url("brand/fonts/inter-500.woff2") format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url("brand/fonts/inter-600.woff2") format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url("brand/fonts/inter-700.woff2") format("woff2")}
:root {
    color-scheme: light;
    --ink: #132820;
    --paper: #F3F1E7;
    --soft: #E8EEE3;
    --section: #FBFAF8;
    --line: #DCE2D5;
    --muted: #52675C;
    --green: #276A50;
    --stem: #5FB48C;
    --lime: #C7E46B;
    --warn: #B5651D;
    --warn-text: #8C5A14;
    --warn-bg: #F6E3D2;
    --amber: #D9A93A;
    --hidden: #9AA59E;
    --panel-line: #DDD9D3;
    --chip-dash: #B9C2B4;
    --kpi-dash: #C3CBBE;
    --capture-on: #46AD70;
    --lime-hover: #BCD95F;
    --cta: var(--section);
    --cta-hover: var(--soft);
    --on-cta: var(--ink);
    --surface: var(--section);
    --field: var(--section);
    --active: var(--paper);
    --on-green: var(--paper);
    --warning-bg: var(--warn-bg);
    --warning-line: var(--line);
    --warning-ink: var(--warn-text);
    --danger-bg: var(--warn-bg);
    --danger-line: var(--warn);
    --danger-ink: var(--warn-text);
    --radius-control: 12px;
    --radius-surface: 16px;
    --ease-out: ease}
* {
    box-sizing:border-box}
body {
    margin:0;
    font:400 14px/1.5 Inter,sans-serif;
    background:var(--soft);
    color:var(--ink);
    font-variant-numeric:tabular-nums}
a {
    color:var(--green)}
header {
    background:var(--section);
    min-height:72px;
    border-bottom:1px solid var(--line);
    padding:18px 5%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px}
.brand {
    font-size:21px;
    font-weight:800;
    letter-spacing:.04em;
    text-decoration:none}
.brand img {
    display:block;
    width:150px;
    height:auto}
.brand {
    display:flex;
    align-items:center;
    gap:16px}
.brand span {
    font-size:12px;
    color:var(--muted);
    margin-left:8px}
main {
    max-width:1300px;
    margin:auto;
    padding:34px 5% 80px}
h1 {
    font-size:35px;
    font-weight:500;
    line-height:1.1;
    margin:0 0 12px;
    letter-spacing:-.055em}
h2 {
    font-size:23px;
    font-weight:500;
    letter-spacing:-.04em;
    margin:0 0 14px}
h3 {
    margin:0 0 8px}
.muted,small {
    color:var(--muted)}
.eyebrow {
    text-transform:uppercase;
    letter-spacing:.12em;
    font-size:11px;
    font-weight:800;
    color:var(--green);
    margin-bottom:10px}
.banner {
    background:var(--warning-bg);
    border:1px solid var(--warning-line);
    color:var(--warning-ink);
    border-radius:var(--radius-surface);
    padding:14px 18px;
    margin:22px 0}
.support {
    background:var(--danger-bg);
    border-color:var(--danger-line);
    color:var(--danger-ink)}
.card {
    background:var(--paper);
    border:1px solid var(--panel-line);
    border-radius:16px;
    padding:24px;
    margin:20px 0;
    box-shadow:none}
.grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
    margin:24px 0}
.metric {
    background:white;
    border:1px solid var(--line);
    border-radius:var(--radius-surface);
    padding:20px}
.metric strong {
    display:block;
    font-size:30px;
    margin:4px 0}
.metric span {
    color:var(--muted);
    font-size:13px}
nav {
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin:24px 0}
nav a {
    padding:8px 14px;
    border:1px solid var(--line);
    border-radius:var(--radius-control);
    background:white;
    text-decoration:none;
    font-size:13px}
.scroll {
    overflow-x:auto}
.goal-history th[scope="row"] {
    color:var(--ink);
    font-size:13px;
    text-transform:none;
    letter-spacing:normal}
.history-field-label {display:none}
@media(max-width:640px) {
    .goal-history thead {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
    .goal-history table,.goal-history tbody,.goal-history tr,.goal-history th,.goal-history td {display:block;width:auto;max-width:none}
    .goal-history tr {padding:12px 0;border-bottom:1px solid var(--line)}
    .goal-history th[scope="row"] {padding:0 0 8px;border:0;font-weight:700}
    .goal-history td {display:flex;justify-content:space-between;gap:16px;padding:5px 0;border:0;overflow-wrap:normal}
    .goal-history .history-field-label {display:inline;flex-shrink:0;font-weight:650}
}
table {
    width:100%;
    border-collapse:collapse;
    font-size:13px}
th {
    text-align:left;
    color:var(--muted);
    font-size:10.5px;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase}
td,th {
    padding:10px 0;
    border-bottom:1px solid var(--line);
    vertical-align:top}
td {
    max-width:460px;
    overflow-wrap:anywhere}
tr:last-child td {
    border-bottom:0}
tbody tr:hover td {
    background:color-mix(in srgb, var(--ink) 4%, var(--surface))}
.badge {
    display:inline-block;
    background:var(--soft);
    color:var(--green);
    border-radius:var(--radius-control);
    padding:3px 9px;
    font-size:11px}
.empty {
    padding:20px 0;
    color:var(--muted)}
.gallery-chips {display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 16px}
.gallery-chip {
    display:flex;
    flex-direction:column;
    gap:2px;
    width:11.5rem;
    padding:8px 10px;
    border:1px solid var(--line);
    border-radius:10px;
    background:white;
    color:var(--ink);
    text-decoration:none}
.gallery-chip[aria-current="true"] {border-color:var(--green);background:var(--soft)}
.gallery-chip-label {font-weight:700}
.gallery-chip-count {font-size:18px;font-weight:700;color:var(--green)}
.gallery-chip-help {color:var(--muted);font-size:12px;line-height:1.35}
label {
    display:block;
    font-size:13px;
    font-weight:650;
    margin:16px 0 6px}
input,textarea,select {
    width:100%;
    border:1px solid var(--line);
    border-radius:var(--radius-control);
    padding:8px 12px;
    font:inherit;
    color:var(--ink);
    background:white}
button {
    background:white;
    color:var(--ink);
    border:1px solid var(--line);
    border-radius:var(--radius-control);
    font:600 13.6px/1.2 Inter,sans-serif;
    padding:10px 16px;
    min-height:40px;
    cursor:pointer;
    box-shadow:none}
button.secondary, .sidebar-link, .sidebar-backdrop {
    box-shadow:none}
button.secondary {
    background:white;
    color:var(--ink);
    border:1px solid var(--line)}
.error {
    color:var(--danger-ink)}
.login {
    max-width:460px;
    margin:45px auto}
.login button {
    width:100%;
    margin:22px 0 8px}
.json {
    white-space:pre-wrap;
    font:400 13px/1.6 Inter,sans-serif;
    margin:0}
.two {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px}
.two .card {
    margin:0}
.footer {
    background:var(--ink);
    color:var(--paper);
    font-size:13px;
    font-weight:700;
    letter-spacing:.18em;
    text-transform:uppercase;
    text-align:center;
    padding:16px 32px;
    margin:0}
@media(max-width:800px) {
    .grid {
    grid-template-columns:repeat(2,minmax(0,1fr))}
.two {
    grid-template-columns:1fr}
main {
    padding:26px 18px 50px}
header {
    padding:16px 18px}
h1 {
    font-size:28px}
.card {
    padding:18px}
td,th {
    padding:10px}
.brand img {
    display:block;
    width:150px;
    height:auto}
.brand {
    display:flex;
    align-items:center;
    gap:16px}
.brand span {
    display:none}
}



[hidden] {
    display:none!important}
header {
    background:var(--section)}
.card,.metric {
    background:var(--paper)}
input,select,textarea {
    background:var(--field)}
button:not(.secondary):not(.sidebar-link):not(.sidebar-backdrop):not(.account-menu-toggle):not(.account-menu-item) {
    background:var(--cta);
    color:var(--on-cta)}
.badge {
    background:var(--active);
    color:var(--green)}
.banner {
    color:var(--warning-ink)}
.support {
    color:var(--warn-text)}
main {
    max-width:1440px;
    padding:32px 36px 64px;
    min-width:0}
h1 {
    font-size:35px;
    font-weight:500;
    line-height:1.1;
    letter-spacing:-.055em}
.eyebrow {
    color:var(--muted)}
.skip-link {
    position:fixed;
    left:12px;
    top:-80px;
    z-index:100;
    background:var(--surface);
    padding:12px}
.skip-link:focus {
    top:12px}
.dashboard-shell {
    padding-left:288px}
.dashboard-shell header {
    min-height:72px;
    height:auto;
    padding:12px 32px}
.dashboard-shell header form {
    display:none}
.sidebar {
    position:fixed;
    left:0;
    top:0;
    bottom:0;
    width:288px;
    display:flex;
    flex-direction:column;
    background:var(--surface);
    border-right:1px solid var(--line);
    z-index:30}
.sidebar-brand {
    padding:28px 24px 24px;
    border-bottom:1px solid var(--line)}
.sidebar-brand img {
    width:92px;
    height:auto;
    display:block}
.sidebar-brand span {
    display:block;
    font-size:9px;
    font-weight:650;
    letter-spacing:.17em;
    text-transform:uppercase;
    color:var(--muted);
    margin-top:14px}
.organization-switcher {
    padding:8px 12px;
    border-bottom:1px solid var(--line)}
.organization-switcher label {
    margin:0 0 6px;
    font-size:10px;
    text-transform:uppercase;
    letter-spacing:.07em;
    color:var(--muted)}
.organization-switcher select {
    font-size:13px;
    padding:8px 10px}
.organization-switcher select:disabled {
    opacity:1}
.organization-name {
    margin:0;
    font-size:15px;
    font-weight:650;
    line-height:1.3}
.organization-switcher small {
    display:block;
    margin-top:6px;
    font-size:10px}
.organization-switcher summary {
    cursor:pointer;
    font-size:12px;
    margin:10px 0}
.organization-switcher textarea {
    font-size:12px;
    min-height:70px}
.organization-switcher button {
    width:100%;
    margin-top:10px;
    padding:8px}
.organization-switcher > a {
    display:block;
    margin-top:10px;
    font-size:12px}
.sidebar-nav {
    display:block;
    flex:1;
    min-height:0;
    overflow-y:auto;
    padding:4px 8px 8px;
    margin:0;
    scrollbar-width:thin}
.nav-group {
    margin:0;
    padding:6px 0 2px}
.nav-group + .nav-group {
    margin-top:2px;
    padding-top:6px;
    border-top:0}
.nav-group-title {
    font-size:10px;
    font-weight:650;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--ink);
    padding:0 8px 2px;
    margin:0}
.sidebar .sidebar-link {
    display:flex;
    align-items:center;
    gap:8px;
    min-height:30px;
    color:var(--muted);
    padding:3px 8px;
    margin:0;
    width:100%;
    border:1px solid transparent;
    border-radius:var(--radius-control);
    background:transparent;
    text-decoration:none;
    text-align:left;
    font:400 13.5px/1.2 Inter,sans-serif;
    white-space:nowrap;
    cursor:pointer}
.sidebar .sidebar-link span {
    white-space:nowrap}
.sidebar-link:hover {
    background:var(--soft)!important}
.sidebar .sidebar-link[aria-current="page"], .sidebar .sidebar-link[aria-current="page"]:hover {
    background:var(--soft)!important;
    background:color-mix(in srgb, var(--green) 12%, var(--surface))!important;
    border-color:transparent;
    box-shadow:none;
    color:var(--green);
    font-weight:500}
.sidebar-icon {
    display:block;
    flex:0 0 16px;
    width:16px;
    height:16px;
    color:currentColor;
    stroke:currentColor}
.sidebar-footer {
    border-top:1px solid var(--line);
    padding:12px 9px 8px;
    flex-shrink:0}
.sidebar-user {
    display:flex;
    align-items:center;
    gap:12px;
    background:var(--paper);
    padding:9px;
    border-radius:var(--radius-surface);
    margin:0 7px 8px}
.sidebar-user strong {
    font-size:13px;
    display:block;
    max-width:155px;
    overflow-wrap:anywhere}
.sidebar-user small {
    font-size:10px;
    letter-spacing:.05em;
    display:block}
.user-avatar {
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    flex:0 0 36px;
    border-radius:var(--radius-control);
    background:var(--muted);
    color:white;
    font-weight:650;
    font-size:12px}
.sidebar-footer .sidebar-link {
    min-height:36px;
    font-size:13px;
    margin:0;
    padding:8px 16px}
.sidebar-footer small {
    margin-left:auto;
    font-size:10px}
.dashboard-shell main>.card:first-of-type {
    margin-top:0}
.dashboard-overview {
    margin-bottom:24px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible {
    outline:2px solid var(--green);
    outline-offset:2px}
.sidebar-backdrop {
    position:fixed;
    inset:0;
    background:rgba(19,40,32,.28)!important;
    backdrop-filter:blur(10px);
    z-index:25;
    border:0;
    border-radius:0;
    padding:0}

@media(max-height:750px) and (min-width:801px) {
    .sidebar-brand {
    padding:18px 24px}
.sidebar-footer .sidebar-link {
    min-height:32px;
    padding-top:6px;
    padding-bottom:6px}
}

@media(max-width:1100px) {
    .grid {
    grid-template-columns:repeat(2,minmax(0,1fr))}
main {
    padding:26px 24px 50px}
.two {
    grid-template-columns:1fr}
}

@media(max-width:800px) {
    .dashboard-shell {
    padding-left:0}
.dashboard-shell .sidebar {
    transform:translateX(-100%);
    visibility:hidden}
.dashboard-shell.sidebar-open .sidebar {
    transform:translateX(0);
    visibility:visible}
.dashboard-shell.sidebar-open {
    overflow:hidden}
.dashboard-shell header {
    padding:12px 18px;
    justify-content:flex-start}
.dashboard-shell header .brand-lockup img.brand-wordmark {
    display:block;
    width:120px;
    height:40px}
.dashboard-shell .menu-toggle {
    display:block!important}
.dashboard-shell header .brand {
    margin-left:auto}
main {
    padding:24px 18px 50px}
.sidebar-brand {
    padding:20px 24px}
.sidebar-footer {
    padding-top:8px}
.sidebar-footer .sidebar-link {
    min-height:32px;
    padding-top:6px;
    padding-bottom:6px}
}

@media print {
    .sidebar,header,.skip-link,.sidebar-backdrop {
    display:none!important}
.dashboard-shell {
    padding:0}
main {
    padding:0}
[data-dashboard-panel][hidden] {
    display:block!important}
}


.sidebar-link .sidebar-icon {
    opacity:.8}
.sidebar .sidebar-link[aria-current="page"] .sidebar-icon {
    opacity:1;
    color:var(--green)}

#analytics>form {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    align-items:end}
#analytics>form label {
    margin:0}
#analytics>form button {
    justify-self:start}
#analytics figure {
    margin:22px 0;
    color:var(--muted)}
.workspace-state {
    margin-left:auto}
@media(max-width:1100px) {
    #analytics>form {
    grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:800px) {
    #analytics>form {
    grid-template-columns:1fr}
.workspace-state {
    font-size:10px;
    max-width:120px;
    text-align:right}
.dashboard-shell header {
    gap:12px}
}

/* Keep environment and support context visible during section navigation. */
.dashboard-shell header { position:sticky; top:0; z-index:20; }
[data-dashboard-panel] { scroll-margin-top:84px; }

#cron .maintenance-history table { min-width:1400px; }
#cron .maintenance-history th, #cron .maintenance-history td { white-space:nowrap; }
#cron .execution-history table, #run-history .execution-history table { min-width:100%; width:max-content; }
#run-history .execution-history th, #run-history .execution-history td { white-space:nowrap; }

#data-management code { overflow-wrap:anywhere; }
#data-management dl { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:8px 20px; }
#data-management dt { color:var(--muted); }
#data-management dd { margin:0; min-width:0; }
@media(max-width:800px) {
    #data-management dl { grid-template-columns:minmax(0,1fr); gap:4px; }
    #data-management dt { margin-top:8px; }
}

.screenshot-frame { display:block; position:relative; min-height:170px; background:var(--soft); }
.screenshot-processing { position:absolute; z-index:1; left:0; right:0; bottom:0; margin:0; padding:8px 10px; background:color-mix(in srgb, var(--ink) 88%, transparent); color:#fff; font-size:12px; font-weight:700; text-align:center; pointer-events:none; }
.manual-ai-capture[aria-busy="true"] { background:var(--soft); }
[data-manual-ai-state="l0_running"], [data-manual-ai-state="approved"] { color:var(--green); font-weight:700; }
.screenshot-frame img { display:block; }
.screenshot-frame [hidden] { display:none; }
.screenshot-unavailable { display:flex; align-items:center; justify-content:center; min-height:170px; margin:0; padding:16px; box-sizing:border-box; text-align:center; color:var(--muted); }
.screenshot-placeholder { display:flex; align-items:center; justify-content:center; min-height:170px; padding:12px; box-sizing:border-box; text-align:center; color:var(--muted); font-size:13px; }
.screenshot-detail { min-height:240px; }
.screenshot-detail .screenshot-unavailable { min-height:240px; }

.queue-field-label { display:none; }
.queue-records td:last-child { min-width:160px; }
@media(max-width:800px) {
    .queue-records thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
    .queue-records table,.queue-records tbody,.queue-records tr,.queue-records td { display:block; width:auto; max-width:none; }
    .queue-records tr { padding:16px 0; border-bottom:1px solid var(--line); }
    .queue-records tr:last-child { border-bottom:0; }
    .queue-records td { padding:8px 0; border:0; }
    .queue-records td:last-child { min-width:0; }
    .queue-records .queue-field-label { display:block; margin-bottom:4px; color:var(--muted); font-size:11px; font-weight:650; }
    .queue-records code { font-size:12px; }
    .queue-records .operations-counts { margin-top:12px; }
}

@media(max-width:800px) {
    .dashboard-shell header { height:auto; min-height:64px; flex-wrap:wrap; }
    .dashboard-shell header .brand { margin-left:0; }
    .dashboard-shell header > div { flex:1 1 100%; min-width:0; overflow-wrap:anywhere; text-align:right; }
}

.operations-heading > div { min-width:0; overflow-wrap:anywhere; }
.dashboard-shell h1 { font-size:35px; font-weight:500; line-height:1.1; letter-spacing:-.055em; }
.dashboard-shell h2 { font-size:23px; font-weight:500; letter-spacing:-.04em; }
.dashboard-shell h1,.dashboard-shell .eyebrow { overflow-wrap:anywhere; }
.dashboard-shell header > div { min-width:0; overflow-wrap:anywhere; }

.banner.support { overflow-wrap:anywhere; }

.cron-field-label { display:none; }
.cron-records td:nth-child(2) { white-space:nowrap; overflow-wrap:normal; }
.cron-records td:last-child { min-width:250px; }
.cron-records .operations-counts dd[data-run-timing],
.cron-records .operations-counts dd[data-run-detail="processed_count"],
.cron-records .operations-counts dd[data-run-detail="failed_count"] { flex-shrink:0; overflow-wrap:normal; white-space:nowrap; }
@media(max-width:800px) {
    .cron-records thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
    .cron-records table,.cron-records tbody,.cron-records tr,.cron-records td { display:block; width:auto; max-width:none; }
    .cron-records tr { padding:16px 0; border-bottom:1px solid var(--line); }
    .cron-records tr:last-child { border-bottom:0; }
    .cron-records td { padding:8px 0; border:0; }
    .cron-records td:last-child { min-width:0; }
    .cron-records .cron-field-label { display:block; margin-bottom:4px; color:var(--muted); font-size:11px; font-weight:650; }
}

.project-network, #entities, #tasks, #processes { overflow-wrap: anywhere; }

.network-diagram { max-width:100%; max-height:32rem; overflow:auto; margin:16px 0 24px; border:1px solid var(--line); border-radius:var(--radius-surface); background:var(--paper); }
.network-diagram:focus-visible { outline:2px solid var(--green); outline-offset:2px; }
.network-diagram svg { display:block; max-width:none; }
.network-edge { fill:none; stroke:var(--muted); stroke-width:1.5; }
.network-edge-project_membership { stroke-dasharray:8 5; }
.network-edge-current_assignment { stroke-dasharray:2 5; }
.network-arrow { fill:var(--muted); }
.network-node { fill:var(--paper); stroke:var(--green); stroke-width:1.5; }
.network-diagram a:hover .network-node, .network-diagram a:focus .network-node { stroke:var(--ink); stroke-width:3; }
.network-node-label { fill:var(--ink); font-size:13px; }
.network-node-kind, .network-column-label { fill:var(--muted); font-size:11px; font-weight:650; }
.network-legend { display:flex; flex-wrap:wrap; gap:8px 20px; color:var(--muted); font-size:12px; }

button,a,input,select,textarea,.sidebar-link {
    transition:background-color 150ms ease,color 150ms ease,border-color 150ms ease}
@media (hover:hover) and (pointer:fine) {
    button:not(.secondary):not(.sidebar-link):not(.sidebar-backdrop):not(.account-menu-toggle):not(.account-menu-item):hover:not(:disabled) {
        background:var(--cta-hover);
        opacity:1}
    button.secondary:hover:not(:disabled) {
        background:var(--paper);
        opacity:1}
}
button:not(.secondary):not(.sidebar-link):not(.sidebar-backdrop):not(.account-menu-toggle):not(.account-menu-item):active:not(:disabled) {
    box-shadow:none}
button:disabled,a.button-primary[aria-disabled="true"] { background:var(--soft); color:var(--muted); border-color:transparent; cursor:not-allowed; opacity:1 }
#dashboard-refresh, [data-operations-refresh], .sidebar-link, .sidebar-link:active {
    transition:none;
    transform:none}
table, .metric strong { font-variant-numeric:tabular-nums }
input, textarea { caret-color:var(--green) }
::selection { background:var(--soft); color:var(--ink) }
[aria-busy="true"] { opacity:.7 }

.analytics-bento {
    display:grid;
    grid-template-columns:1.4fr .8fr;
    gap:12px;
    margin:16px 0 8px}
#analytics .analytics-bento .analytics-chart { grid-column:1; grid-row:1 / span 2; margin:0 }
.analytics-lead { grid-column:2; grid-row:1 }
.analytics-next { grid-column:2; grid-row:2 }
.analytics-state { grid-column:1 / -1 }
.analytics-lead, .analytics-next, .analytics-state {
    background:var(--surface);
    border:1px solid var(--line);
    border-radius:var(--radius-surface);
    padding:16px;
    margin:0}
.analytics-lead strong { font-size:30px; font-variant-numeric:tabular-nums }
@media (max-width:800px) {
    .analytics-bento { grid-template-columns:1fr }
    #analytics .analytics-bento .analytics-chart, .analytics-lead, .analytics-next, .analytics-state { grid-column:1; grid-row:auto }
}

.cockpit section.card {
    background:transparent;
    border:0;
    border-radius:0;
    padding:0 0 16px;
    border-bottom:1px solid var(--line)}
.cockpit section.card:has(form) {
    background:var(--surface);
    border:1px solid var(--line);
    border-radius:var(--radius-surface);
    padding:16px}

.screenshot-detail {
    border:1px solid var(--line);
    border-radius:var(--radius-surface);
    background:color-mix(in srgb, var(--surface) 78%, transparent);
    backdrop-filter:blur(10px)}
@media (prefers-reduced-transparency:reduce) {
    .sidebar-backdrop { backdrop-filter:none; background:rgba(25,28,34,.72)!important }
    .screenshot-detail { backdrop-filter:none; background:var(--surface) }
}
@media (prefers-reduced-motion:reduce) {
    button, .sidebar-link { transition:none }
    button:active { transform:none }
}

.progress-track {
    height:10px;
    background:var(--line);
    border-radius:999px;
    overflow:hidden}
.progress-fill {
    height:100%;
    width:0;
    background:var(--green)}
.metric strong .metric-of {
    font-size:15px;
    font-weight:500;
    color:var(--muted)}
.metric .metric-progress {
    height:6px;
    margin:2px 0 8px}
.metric .metric-note {
    display:block;
    margin-top:4px}
.provisioning-steps {
    list-style:none;
    margin:12px 0 0;
    padding:0}
.provisioning-steps li { padding:4px 0 }
.provisioning-steps li[data-state="active"] { font-weight:650 }
.provisioning-steps li[data-state="failed"] { color:var(--warn-text) }
.provisioning-request { border-top:1px solid var(--line); margin-top:12px; padding-top:12px }
.provisioning-request h3 { margin:0 0 8px }
.radar-toolbar { display:flex; flex-wrap:wrap; gap:12px; align-items:end; margin-bottom:12px }
.radar-live { margin:0; font-weight:650 }
.radar-live[data-state="paused"] { color:var(--warn-text) }
.radar-log {
    list-style:none;
    margin:0;
    padding:12px;
    max-height:70vh;
    overflow:auto;
    background:#101410;
    color:#d7efe2;
    font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
    font-size:12px;
    line-height:1.45}
.radar-log li { padding:3px 0; border-bottom:1px solid rgba(255,255,255,.06); overflow-wrap:anywhere }
.radar-log li[data-status^="2"] { color:#b7f0c8 }
.radar-log li[data-status^="4"], .radar-log li[data-status^="5"] { color:#ffb4a8 }

.review-banner {
    background:var(--lime);
    color:var(--ink);
    font-size:12px;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
    text-align:center;
    padding:12px 32px}
.topbar {
    display:flex;
    align-items:center;
    gap:16px;
    flex-wrap:wrap}
.brand-lockup {
    display:flex;
    align-items:center;
    text-decoration:none;
    color:inherit}
.brand.brand-lockup img.brand-wordmark {
    display:block;
    width:120px;
    height:40px;
    object-fit:contain;
    object-position:left center}
.account-context { margin:0; color:var(--muted); font-size:13.6px }
.deploy-tag,.chip {
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:4px 10px;
    border-radius:99px;
    font-size:11px;
    font-weight:600;
    line-height:1.2}
.deploy-tag,.chip-visibility {
    background:var(--section);
    color:var(--muted);
    border:1px dashed var(--chip-dash)}
.chip-aggregate,.chip-holding,.chip-today {
    background:var(--soft);
    color:var(--green);
    border:0}
.chip-drifting { background:var(--warn-bg); color:var(--warn-text) }
.chip-hidden,.chip-roadmap {
    background:white;
    color:var(--muted);
    border:1px dashed var(--chip-dash)}
.chip-generated { background:var(--soft); color:var(--green) }
.capture-status {
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    background:white;
    border:1px solid var(--line);
    border-radius:12px;
    padding:8px 14px;
    margin-left:auto}
.account-menu {
    position:relative;
    flex:0 0 auto;
    margin-left:12px}
header:not(:has(.capture-status)) .account-menu {
    margin-left:auto}
.account-menu-toggle {
    display:flex;
    align-items:center;
    gap:8px;
    min-height:40px;
    padding:4px 10px 4px 12px;
    background:var(--paper);
    color:var(--ink);
    border:1px solid var(--line);
    border-radius:12px;
    font:500 13px/1.2 Inter,sans-serif;
    cursor:pointer}
.account-menu-identity {
    display:block;
    min-width:0;
    text-align:left}
.account-menu-identity strong {
    display:block;
    max-width:168px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:13px;
    font-weight:600}
.account-menu-identity small {
    display:block;
    color:var(--muted);
    font-size:10px;
    font-weight:500;
    letter-spacing:.04em}
.account-menu-chevron {
    flex:0 0 16px;
    transition:transform 150ms ease}
.account-menu-toggle[aria-expanded="true"] .account-menu-chevron {
    transform:rotate(180deg)}
.account-menu-panel {
    position:absolute;
    top:calc(100% + 6px);
    right:0;
    z-index:40;
    min-width:188px;
    padding:6px;
    background:var(--surface);
    border:1px solid var(--line);
    border-radius:12px;
    box-shadow:0 10px 28px rgba(19,40,32,.12)}
.account-menu-panel .account-menu-item {
    display:flex;
    align-items:center;
    gap:8px;
    width:100%;
    min-height:34px;
    margin:0;
    padding:6px 10px;
    border:0;
    border-radius:8px;
    background:transparent;
    color:var(--ink);
    box-shadow:none;
    font:500 13px/1.2 Inter,sans-serif;
    text-align:left;
    text-decoration:none;
    cursor:pointer}
.account-menu-panel .account-menu-item:hover,
.account-menu-panel .account-menu-item:focus-visible {
    background:var(--soft)}
.account-menu-panel .account-menu-item[aria-current="page"] {
    background:var(--paper);
    box-shadow:inset 2px 0 0 var(--green)}
.account-menu-panel .sidebar-icon {
    flex:0 0 16px;
    width:16px;
    height:16px}
.dashboard-shell header .account-menu form {
    display:block;
    margin:0}
@media (prefers-reduced-motion:reduce) {
    .account-menu-chevron { transition:none }
}
.capture-status .eyebrow { margin:0 }
.capture-status span { font-size:12px }
.capture-pipe { width:1px; height:16px; background:var(--line); padding:0; border-radius:0 }
.dot {
    display:inline-block;
    width:10px;
    height:10px;
    border-radius:99px;
    margin-right:6px;
    vertical-align:middle}
.dot-holding,.dot-on { background:var(--green) }
.dot-capture { background:var(--capture-on) }
.dot-drifting { background:var(--warn) }
.dot-paused { background:var(--amber) }
.dot-hidden { background:var(--hidden) }
a.button-primary,button.button-primary {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:var(--lime);
    color:var(--ink);
    border:0;
    border-radius:12px;
    min-height:40px;
    padding:10px 16px;
    font:600 13.6px/1.2 Inter,sans-serif;
    text-decoration:none}
a.button-primary:hover { background:var(--lime-hover) }
a.button-tertiary { color:var(--green); background:transparent; border:0; padding:0; min-height:40px }
a.button-tertiary:hover { text-decoration:underline }
.team-grid {
    display:grid;
    grid-template-columns:1.25fr 1fr;
    gap:20px;
    align-items:start}
.team-grid .span-2 { grid-column:1 / -1 }
.panel {
    background:var(--paper);
    border:1px solid var(--panel-line);
    border-radius:16px;
    padding:24px;
    box-shadow:none}
.panel-hero { border:2px solid var(--green) }
.panel-head { display:flex; justify-content:space-between; gap:16px; align-items:flex-start }
.panel h2 { margin-top:8px }
.panel-updated { color:var(--green); font-size:11px; font-weight:600; margin:8px 0 }
.kpi-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:16px 0 }
.kpi {
    border:1.5px dashed var(--kpi-dash);
    border-radius:12px;
    padding:14px;
    background:repeating-linear-gradient(135deg, transparent 0 8px, rgba(39,106,80,.04) 8px 16px)}
.kpi span { display:block; font-size:11px; color:var(--muted) }
.kpi strong { display:block; font-size:29px; font-weight:500; letter-spacing:-.04em; font-variant-numeric:tabular-nums }
.alert-row {
    display:grid;
    grid-template-columns:10px 1fr auto;
    gap:14px;
    align-items:start;
    padding:14px 0;
    border-top:1px solid var(--line)}
.alert-row h3 { font-size:14px; font-weight:600; margin:0 }
.alert-chart { margin:8px 0 0 24px }
.alert-chart svg { width:100%; height:86px; display:block }
.note {
    background:var(--section);
    border:1px solid var(--line);
    border-radius:9.6px;
    padding:8px 12px;
    font-size:11.5px;
    color:var(--muted)}
.note-warn { border-left:3px solid var(--warn) }
.hidden-row { color:var(--muted); font-style:italic }
.step-list { list-style:none; margin:16px 0; padding:0 }
.step-list li {
    display:grid;
    grid-template-columns:22px 1fr;
    gap:12px;
    align-items:start;
    padding:12px 0;
    border-top:1px solid var(--line)}
.step-num {
    width:22px;
    height:22px;
    border-radius:99px;
    border:1px solid var(--line);
    background:white;
    display:grid;
    place-items:center;
    font-size:11px;
    font-weight:600}
.changed { background:rgba(199,228,107,.35); border-radius:4px; padding:0 4px }
.health-bar { width:120px; height:8px; border-radius:4px; background:var(--line); overflow:hidden }
.health-bar span { display:block; height:100%; border-radius:4px }
.health-ok { background:var(--green) }
.health-mid { background:var(--amber) }
.health-bad { background:var(--warn) }
.placeholder {
    border:1.5px dashed var(--kpi-dash);
    border-radius:12px;
    min-height:120px;
    display:grid;
    place-items:center;
    color:var(--muted);
    background:repeating-linear-gradient(135deg, transparent 0 8px, rgba(39,106,80,.04) 8px 16px);
    margin-top:16px}
.chat { display:flex; flex-direction:column; gap:12px }
.bubble { max-width:92%; border:1px solid var(--line); border-radius:12px; padding:12px 14px; font-size:14px }
.bubble-q { align-self:flex-end; background:white }
.bubble-a { align-self:flex-start; background:var(--section) }
.bubble-a strong { display:block; margin-bottom:4px }
.bubble-refused { border-left:3px solid var(--warn) }
.chat-input {
    width:100%;
    border:1.5px dashed var(--kpi-dash);
    border-radius:12px;
    background:repeating-linear-gradient(135deg, transparent 0 8px, rgba(39,106,80,.04) 8px 16px);
    min-height:40px;
    padding:10px 12px}
.panel-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:16px }
.intro { color:var(--muted); font-size:13.6px }
@media (max-width:1023px) {
    .team-grid,.two { grid-template-columns:1fr }
    .team-grid .span-2 { grid-column:auto }
}
@media (max-width:800px) {
    .capture-status { margin-left:0 }
    .account-menu { margin-left:auto }
}
@media (prefers-reduced-motion:reduce) {
    button,a,input,select,textarea,.sidebar-link { transition:none }
}
@media print {
    .footer { display:block!important }
}
/* Manual AI test results: wrap long hashes and text inside their own cell so columns never draw over each other. */
.manual-ai-runs {table-layout:fixed}
.manual-ai-runs td {overflow:hidden}
.manual-ai-id {overflow-wrap:anywhere;word-break:break-all}
.manual-ai-result {min-width:0;max-width:100%}
.manual-ai-section {margin-top:14px}
.manual-ai-section h3 {margin:0 0 6px;font-size:15px}
.manual-ai-prompt-label {margin:0 0 2px;font-size:12px}
.stage-briefs {margin-top:12px}
.stage-briefs h2 {font-size:16px;margin:0 0 4px}
.stage-briefs article {margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}
.stage-briefs h3 {margin:0 0 6px;font-size:15px}
.stage-briefs pre {white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;max-width:100%;max-height:22em;overflow:auto;margin:4px 0 8px;font-size:12px;line-height:1.45}
.manual-ai-result pre {white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;max-width:100%;max-height:22em;overflow:auto;margin:4px 0;font-size:12px;line-height:1.45}
.manual-ai-result details {margin:6px 0}
.manual-ai-stages {display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px 10px;margin:0 0 6px;line-height:1.45}
.manual-ai-stages dt {font-weight:700;margin:0}
.manual-ai-stages dd {margin:0;min-width:0;overflow-wrap:anywhere;white-space:normal}
.manual-ai-tokens {display:block;margin-top:4px}
