/* UI-R1. Scoped to the task page; tokens and rhythm follow Figma 25:693 / 29:388. */
@font-face { font-family:"Treasury Runtime Inter"; src:url("../homepage/inter-regular.ttf") format("truetype"); font-weight:400; font-display:swap; }
@font-face { font-family:"Treasury Runtime Inter"; src:url("../homepage/inter-semibold.ttf") format("truetype"); font-weight:600; font-display:swap; }
@font-face { font-family:"Treasury Runtime Lora"; src:url("../homepage/lora-regular.ttf") format("truetype"); font-weight:400; font-display:swap; }
body:has(.runtime-page) > .topbar { display:none; }
.runtime-page { --rt-paper:#f7f4ed; --rt-card:#fffcf5; --rt-pale:#e8ebdf; --rt-green:#51674f; --rt-ink:#303a31; --rt-muted:#62675d; --rt-rust:#aa5b41; --rt-line:#d8d7c9; min-height:100vh; background:var(--rt-paper); color:var(--rt-ink); font:400 18px/1.6 "Treasury Runtime Inter",sans-serif; }
.runtime-page :where(h1,h2,h3,p,ol) { margin:0; }
.runtime-page :where(h1,h2) { font:400 25px/1.3 "Treasury Runtime Lora",Georgia,serif; color:var(--rt-ink); }
.runtime-page h1 { font-size:38px; }
.runtime-page h3 { font-size:18px; }
.runtime-page :where(a,button,input,select,textarea,summary):focus-visible { outline:2px solid var(--rt-rust); outline-offset:3px; }
.runtime-page .runtime-shell { max-width:1600px; margin-inline:auto; padding-inline:64px; }
.runtime-page .runtime-header { height:88px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.runtime-page .runtime-brand { display:flex; align-items:center; gap:12px; font:400 23px/1.3 "Treasury Runtime Lora",Georgia,serif; }
.runtime-page .runtime-icon { display:inline-block; flex:none; max-width:none; vertical-align:middle; }
.runtime-page .runtime-header nav { display:flex; align-items:center; gap:36px; }
.runtime-page a:hover { text-decoration:underline; text-underline-offset:4px; }
.runtime-page .runtime-nav-rule { height:18px; width:1px; background:var(--rt-line); }
.runtime-page .runtime-rule { height:1px; width:100%; background:var(--rt-line); }
.runtime-page .runtime-introduction { padding-block:24px 20px; display:flex; flex-direction:column; align-items:flex-start; gap:12px; }
.runtime-page .runtime-eyebrow { color:var(--rt-rust); font-size:15px; font-weight:600; }
.runtime-page .runtime-introduction > p:not(.runtime-eyebrow) { color:var(--rt-muted); font-size:18px; }
.runtime-page .runtime-back { display:flex; align-items:center; gap:9px; color:var(--rt-green); font-size:20px; font-weight:600; min-height:44px; }
.runtime-page .runtime-status-band { padding-block:16px; background:var(--rt-pale); color:var(--rt-green); font-size:16px; }
.runtime-page .job-status-panel { padding-block:28px 40px; }
.runtime-page .runtime-layout { display:grid; grid-template-columns:minmax(0,872fr) minmax(0,384fr); align-items:start; gap:24px; }
.runtime-page .runtime-layout.runtime-state-completed { grid-template-columns:minmax(0,1fr); }
.runtime-page:has(.runtime-state-completed) .runtime-status-band,
.runtime-page:has(.runtime-state-completed) .runtime-introduction > p:not(.runtime-eyebrow) { display:none; }
.runtime-page .runtime-completed-details > :is(.runtime-card,.runtime-journey) { margin-top:20px; }
.runtime-page .runtime-result-details > .reviewed-story { margin-top:16px; }
.runtime-page :is(.runtime-result-details,.runtime-completed-details) > summary { cursor:pointer; color:var(--rt-green); font-weight:600; }
.runtime-page .runtime-main { display:flex; flex-direction:column; gap:20px; min-width:0; }
.runtime-page .job-card, .runtime-page .runtime-journey { margin:0; padding:28px; border:1px solid var(--rt-line); border-radius:8px; background:var(--rt-card); box-shadow:none; min-width:0; overflow-wrap:anywhere; }
.runtime-page .job-card { display:flex; flex-direction:column; gap:18px; }
.runtime-page .runtime-card { padding:0; gap:0; overflow:hidden; }
.runtime-page .runtime-card-top { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:18px 28px; border-bottom:1px solid var(--rt-line); }
.runtime-page .runtime-state-label { display:flex; align-items:center; gap:12px; color:var(--rt-green); font-size:16px; font-weight:600; }
.runtime-page .runtime-account-link { color:var(--rt-muted); font-size:15px; }
.runtime-page .runtime-status-symbol { width:30px; height:30px; display:grid; place-items:center; border:1px solid currentColor; border-radius:50%; font-size:19px; font-weight:400; }
.runtime-page .runtime-summary { padding:28px; display:flex; flex-direction:column; gap:14px; min-height:220px; }
.runtime-page .runtime-summary h2 { font-size:30px; }
.runtime-page .runtime-summary > p:last-child { color:var(--rt-muted); min-height:48px; }
.runtime-page .runtime-stage-context { margin:0 28px 20px; color:var(--rt-muted); font-size:16px; }
.runtime-page .runtime-progress { margin:0 28px 18px; }
.runtime-page .progress-track { margin:0; height:8px; border-radius:4px; background:#e9e7df; overflow:hidden; }
.runtime-page .progress-track > span { display:block; height:100%; background:var(--rt-green); transition:none; }
.runtime-page .runtime-progress p { margin-top:9px; font-size:15px; color:var(--rt-muted); }
.runtime-page .runtime-work-count, .runtime-page .runtime-wait-note { margin:0 28px 20px; font-size:16px; color:var(--rt-muted); }
.runtime-page .runtime-guidance { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:22px 28px; background:var(--rt-pale); }
.runtime-page .runtime-guidance > p { flex:1; font-size:16px; color:var(--rt-green); }
.runtime-page .runtime-guidance > p:empty { display:none; }
.runtime-page .runtime-guidance:has(> p:empty):not(:has(.preview-actions)) { display:none; }
.runtime-page .preview-actions { display:flex; flex-wrap:wrap; gap:12px; margin:0; }
.runtime-page .button { min-height:46px; display:inline-flex; align-items:center; justify-content:center; gap:9px; padding:10px 18px; border:1px solid var(--rt-line); border-radius:4px; background:transparent; color:var(--rt-green); font:600 18px/1.5 "Treasury Runtime Inter",sans-serif; box-shadow:none; }
.runtime-page .button.primary { background:var(--rt-green); color:var(--rt-card); border-color:var(--rt-green); }
.runtime-page .button.soft { background:var(--rt-pale); }
.runtime-page .button.runtime-cancel { border-color:var(--rt-rust); color:var(--rt-rust); }
.runtime-page .button:not(:disabled):hover { background:#e2e6d8; text-decoration:none; transform:none; }
.runtime-page .button.primary:not(:disabled):hover { background:#41563f; }
.runtime-page .button:disabled { background:#e9e7df; color:#8a8d82; border-color:#e9e7df; cursor:default; opacity:1; }
.runtime-page .runtime-state-failed .runtime-state-label, .runtime-page .runtime-state-recoverable .runtime-state-label { color:var(--rt-rust); }
.runtime-page .runtime-state-failed .progress-track > span, .runtime-page .runtime-state-recoverable .progress-track > span { background:var(--rt-rust); }
.runtime-page .runtime-state-cancelled .runtime-state-label { color:var(--rt-muted); }
.runtime-page .runtime-state-cancelled .progress-track > span { background:#8a8d82; }
.runtime-page .runtime-state-review .runtime-state-label { color:#8a6335; }
.runtime-page .runtime-state-waiting .runtime-guidance { background:#efede2; }
.runtime-page .runtime-journey { padding:24px; }
.runtime-page .runtime-journey h2 { font-size:23px; }
.runtime-page .runtime-journey > p { margin-top:10px; color:var(--rt-muted); font-size:16px; }
.runtime-page .runtime-journey ol { list-style:none; padding:16px 0; display:flex; flex-direction:column; gap:6px; }
.runtime-page .runtime-step { display:flex; gap:12px; align-items:flex-start; padding:12px 0; color:var(--rt-muted); }
.runtime-page .runtime-step-marker { width:24px; height:24px; flex:none; display:grid; place-items:center; border-radius:50%; background:var(--rt-paper); color:var(--rt-muted); font-size:15px; }
.runtime-page .runtime-step > div { display:flex; flex-direction:column; gap:4px; }
.runtime-page .runtime-step strong { font-size:16px; font-weight:400; }
.runtime-page .runtime-step.active strong { font-weight:600; }
.runtime-page .runtime-step.active, .runtime-page .runtime-step.complete { color:var(--rt-green); }
.runtime-page .runtime-step.active .runtime-step-marker { background:var(--rt-green); color:var(--rt-card); }
.runtime-page .runtime-step-state { font-size:15px; }
.runtime-page .runtime-journey .runtime-note { padding-top:18px; border-top:1px solid var(--rt-line); font-size:15px; }
.runtime-page .runtime-next-link { font-size:16px; color:var(--rt-green); padding:4px; }
.runtime-page .runtime-connection-warning { margin:20px 28px; color:var(--rt-muted); font-size:16px; }
.runtime-page .runtime-review-item { padding:18px; background:var(--rt-paper); border:1px solid var(--rt-line); border-radius:4px; }
.runtime-page .runtime-review-item p { margin-top:8px; }
.runtime-page .reviewed-story-page { background:var(--rt-paper); border-color:var(--rt-line); border-radius:4px; }
.runtime-page .reviewed-story-page p { color:var(--rt-ink); }
.runtime-page .reviewed-story-page.flagged { border-color:var(--rt-rust); }
.runtime-page .reviewed-story-editor { font-size:16px; }
.runtime-page .reviewed-story-editor textarea { font:400 18px/1.65 "Treasury Runtime Inter",sans-serif; border-radius:4px; background:var(--rt-card); color:var(--rt-ink); }
.runtime-page .reviewed-story-page-head { flex-wrap:wrap; }
.runtime-page .review-page-flag { padding:4px 8px; border-radius:4px; background:#f2e6da; color:#934a35; font-size:16px; font-weight:600; }
.runtime-page .job-status-panel > .job-card > .button { align-self:flex-start; }
.runtime-page :where(textarea,select) { max-width:100%; border:1px solid var(--rt-line); border-radius:4px; background:var(--rt-card); color:var(--rt-ink); font-size:18px; }
.runtime-page .server-preview-shell { min-width:0; width:100%; }
.runtime-page .runtime-footer { padding-bottom:28px; }
.runtime-page .runtime-footer > div:last-child { padding-top:20px; display:flex; justify-content:space-between; gap:24px; font-size:16px; color:var(--rt-muted); }
.runtime-page .runtime-footer p:last-child { font-family:"Treasury Runtime Lora",Georgia,serif; color:var(--rt-green); }
@media (max-width:1199px) {
  .runtime-page .runtime-shell { padding-inline:40px; }
  .runtime-page .runtime-layout { grid-template-columns:minmax(0,1fr) 320px; }
  .runtime-page .runtime-guidance { flex-wrap:wrap; }
}
@media (max-width:899px) {
  .runtime-page .runtime-shell { padding-inline:28px; }
  .runtime-page .runtime-layout { grid-template-columns:1fr; }
}
@media (max-width:599px) {
  .runtime-page .runtime-shell { padding-inline:22px; }
  .runtime-page .runtime-header { height:auto; min-height:112px; flex-wrap:wrap; gap:20px; padding-block:22px; }
  .runtime-page .runtime-brand { font-size:22px; }
  .runtime-page .runtime-header nav { width:100%; justify-content:flex-end; gap:24px; }
  .runtime-page h1 { font-size:32px; }
  .runtime-page .job-status-panel { padding-block:22px 30px; }
  .runtime-page .job-card, .runtime-page .runtime-journey { padding:22px; }
  .runtime-page .runtime-card { padding:0; }
  .runtime-page .runtime-card-top { padding:18px 22px; flex-wrap:wrap; gap:12px; }
  .runtime-page .runtime-summary { padding:22px; min-height:240px; }
  .runtime-page .runtime-summary h2 { font-size:27px; }
  .runtime-page .runtime-progress, .runtime-page .runtime-work-count, .runtime-page .runtime-wait-note, .runtime-page .runtime-stage-context { margin-inline:22px; }
  .runtime-page .runtime-guidance { padding:22px; align-items:stretch; }
  .runtime-page .runtime-guidance .preview-actions { width:100%; }
  .runtime-page .runtime-footer > div:last-child { flex-direction:column; gap:16px; }
}

.runtime-page .runtime-card-top, .runtime-page .runtime-guidance { flex-wrap:wrap; }
.runtime-page .runtime-guidance > p { flex-basis:260px; }
.runtime-page .runtime-step-marker { width:28px; height:28px; }
