@charset "UTF-8";
:root{--paper:#f5f3ec;--surface:#fffefa;--ink:#242c28;--muted:#626b64;--line:#dcded4;--accent:#245742;--accent-hover:#183f2e;--soft:#e9eee4;--danger:#923e31;--radius:8px;--sans:"Avenir Next",Avenir,"Segoe UI",sans-serif;--serif:"Iowan Old Style","Palatino Linotype",Palatino,serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55}a{color:var(--accent);text-underline-offset:4px}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.48}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #ba7622;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1{font-family:var(--serif);font-weight:500;font-size:clamp(40px,4.6vw,60px);line-height:1.1;letter-spacing:-1.3px;margin-bottom:16px}h2{font-size:24px;font-weight:600;letter-spacing:-.5px;line-height:1.3;margin-bottom:12px}h3{font-size:16px;margin-bottom:3px}p{margin-bottom:16px}small{font-size:12px;color:var(--muted)}[hidden]{display:none!important}.site-header{max-width:1320px;margin:auto;padding:28px 54px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;align-items:center;gap:13px;color:var(--ink);text-decoration:none;font-weight:600;font-size:17px;letter-spacing:-.3px}.brand-mark{display:grid;place-items:center;width:43px;height:43px;background:var(--accent);color:#fff;font-family:var(--serif);font-size:32px;border-radius:3px}.brand small{display:block;font-size:9px;letter-spacing:2px;font-weight:600;margin-top:1px}.site-header nav{display:flex;gap:24px;align-items:center}.site-header form{margin:0}.username{font-size:14px}.text-button{border:0;padding:8px 0;background:transparent;color:var(--accent);font-size:14px;text-decoration:underline;text-underline-offset:4px}.local-label{font-size:12px;color:var(--muted)}.local-label span{color:var(--accent);font-size:9px;margin-right:6px}.main-content{max-width:1212px;margin:0 auto;padding:64px 40px 90px;min-height:calc(100vh - 200px)}.site-footer{max-width:1212px;margin:auto;padding:24px 40px;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);font-size:11px;letter-spacing:.2px;color:var(--muted)}.eyebrow{font-size:10px;font-weight:650;letter-spacing:2.2px;margin-bottom:20px;color:var(--accent)}.lede{color:var(--muted);font-size:17px;max-width:540px}.muted{color:var(--muted);font-size:14px}.account-grid{display:grid;grid-template-columns:1fr 430px;gap:96px;align-items:center;max-width:1040px;margin:12px auto 20px}.account-intro h1{font-size:clamp(48px,5.4vw,74px);line-height:1.08;letter-spacing:-2px}.account-intro .lede{max-width:365px}.intro-note{display:flex;gap:18px;border-top:1px solid var(--line);padding-top:25px;margin-top:54px;max-width:350px}.intro-note p{font-size:12px;color:var(--muted);margin:0}.note-number{font-family:var(--serif);font-size:24px;color:var(--accent);white-space:nowrap}.account-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:38px;box-shadow:0 8px 26px #243e2810}.account-card h2{font-family:var(--serif);font-weight:500;font-size:32px}.account-card .eyebrow{margin-bottom:12px}.form-stack{display:flex;flex-direction:column;margin-top:30px}.form-stack label{font-size:13px;font-weight:600;margin-bottom:7px}.form-stack small{margin-top:6px;margin-bottom:22px;font-size:11px}input{width:100%;min-width:0;background:#fffefb;border:1px solid #b6bdb3;border-radius:5px;color:var(--ink);padding:12px 14px;font-size:14px;min-height:46px}input::placeholder{color:#717a70}.primary,.secondary{border-radius:5px;min-height:46px;padding:11px 19px;font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:20px;transition:background .15s,border-color .15s}.primary{background:var(--accent);border:1px solid var(--accent);color:#fff}.primary:hover:not(:disabled){background:var(--accent-hover)}.primary span{font-size:18px;line-height:1}.secondary{background:var(--surface);color:var(--accent);border:1px solid #a4b4a4}.secondary:hover:not(:disabled){background:var(--soft)}.form-stack .primary{justify-content:space-between}.account-switch{font-size:12px;text-align:center;margin:24px 0 0}.account-switch a{font-weight:600}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:34px}.page-heading .lede{margin-bottom:0}.count-label{color:var(--muted);font-size:10px;letter-spacing:1.6px}.create-panel{background:var(--surface);border:1px solid var(--line);padding:26px 30px;border-radius:var(--radius);display:grid;grid-template-columns:1fr 1.3fr;gap:32px;align-items:center;margin-bottom:42px}.create-panel h2{font-size:19px;margin-bottom:6px}.create-panel p{margin-bottom:0;font-size:12px}.create-form{display:grid;grid-template-columns:1fr auto;gap:10px}.create-form .form-message{grid-column:1/-1;color:var(--danger)}.empty-state{text-align:center;padding:46px 24px 60px;border:1px dashed #c6cbbf;border-radius:var(--radius)}.empty-mark{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--soft);color:var(--accent);font-size:24px;margin-bottom:20px}.empty-state h2{font-family:var(--serif);font-size:30px;font-weight:500}.empty-state p{max-width:420px;margin:0 auto;font-size:14px;color:var(--muted)}.list-heading{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.6px;color:var(--muted);padding:0 25px 13px}.project-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px;background:var(--surface);border-top:1px solid var(--line);text-decoration:none;color:var(--ink);transition:background .15s}.project-row:last-child{border-bottom:1px solid var(--line)}.project-row:hover{background:var(--soft)}.project-row h2{font-size:20px;margin-bottom:4px;overflow-wrap:anywhere}.project-row .muted{font-size:12px}.row-end{display:flex;align-items:center;gap:24px}.row-arrow{font-size:22px;color:var(--accent)}.status-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:4px;background:#e9ebe5;color:#485348;font-size:12px;white-space:nowrap}.status-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.status-badge[data-state=Running]{background:#dfeddf;color:#235233}.status-badge[data-state=Starting]{background:#f6ead0;color:#785318}.status-badge[data-state=Failed]{background:#f5e3db;color:var(--danger)}.back-link{font-size:12px;text-decoration:none;display:inline-block;margin-bottom:28px}.detail-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:24px}.worker-card{padding:34px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface)}.worker-card h2{font-family:var(--serif);font-size:29px;font-weight:500}.worker-card .muted{max-width:430px}.action-row{display:flex;gap:12px;margin:30px 0 20px}.worker-footnote{border-top:1px solid var(--line);padding-top:18px;font-size:11px;color:var(--muted);margin:26px 0 0}#operation-message{font-size:12px;min-height:20px;color:var(--muted);margin-bottom:0}.diagnostics{margin-top:28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px}.diagnostics summary{padding:22px 0;cursor:pointer;font-weight:600}.diagnostics summary span{font-weight:400;font-size:12px;margin-left:16px}.diagnostics-body{padding:0 0 26px;max-width:100%;color:var(--muted)}.diagnostics-body>p{max-width:680px}.diagnostics dl{display:grid;grid-template-columns:120px 1fr;gap:10px;font-size:12px;margin-top:25px}.diagnostics dd{margin:0;overflow-wrap:anywhere;font-family:monospace}.probe-marker{margin-top:18px;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:5px}.probe-marker h3{font-size:13px}.probe-marker pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px}.error-box{color:var(--danger);background:#faede6;border-left:3px solid #ba6650;padding:13px 16px;font-size:13px;margin-top:20px;overflow-wrap:anywhere}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:absolute;top:-80px;left:20px;z-index:10;background:var(--surface);padding:12px}.skip-link:focus{top:10px}
@media(max-width:900px){.account-grid{gap:36px;grid-template-columns:1fr 390px}.main-content{padding:44px 28px 60px}.site-header{padding:24px 28px}.create-panel{grid-template-columns:1fr;gap:20px}.detail-grid{gap:16px}.worker-card{padding:26px}}
@media(max-width:680px){.site-header{padding:20px;gap:12px}.brand{font-size:14px}.brand-mark{width:36px;height:36px;font-size:27px}.brand small{font-size:8px}.site-header nav{gap:12px}.username{max-width:85px;overflow:hidden;text-overflow:ellipsis}.local-label{font-size:10px}.main-content{padding:34px 20px 48px}.account-grid,.detail-grid{grid-template-columns:1fr;gap:28px}.account-intro h1{font-size:48px}.intro-note{display:none}.account-card{padding:28px}.account-intro .lede{font-size:15px}.site-footer{padding:22px 20px;flex-direction:column;gap:6px}.page-heading{align-items:flex-start;gap:12px}.page-heading h1{font-size:39px;overflow-wrap:anywhere}.page-heading .lede{font-size:14px}.count-label{margin-top:9px;white-space:nowrap}.create-panel{padding:22px}.create-form{grid-template-columns:1fr}.project-row{padding:20px 14px}.row-end{gap:10px}.project-row h2{font-size:18px}.list-heading{padding:0 14px 12px;font-size:8px;gap:10px}.diagnostics summary span{display:block;margin:6px 0 0 17px}.action-row{flex-wrap:wrap}.diagnostics dl{grid-template-columns:1fr;gap:5px}.diagnostics dd{margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}


/* Conversations reuse the application’s paper, ink and single green accent. */
.conversation-grid{display:grid;grid-template-columns:245px minmax(0,1fr);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}
.conversation-sidebar{padding:24px;background:var(--soft);border-right:1px solid var(--line)}
.conversation-sidebar label,.conversation-main label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}
.conversation-sidebar form{display:grid;gap:12px;margin-bottom:28px}.session-choice{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);background:transparent;padding:14px 10px;color:var(--ink);overflow-wrap:anywhere}.session-choice[aria-current=true]{background:var(--surface);border-left:3px solid var(--accent);font-weight:600}
.conversation-main{padding:30px;min-width:0}.conversation-heading{border-bottom:1px solid var(--line);margin-bottom:24px}.conversation-heading h2{font-family:var(--serif);font-size:30px;font-weight:500}.conversation-heading p{font-size:13px;color:var(--muted)}
.chat-turn{padding:12px 0 24px;border-bottom:1px solid var(--line);margin-bottom:24px}.chat-turn h3{font-size:12px;letter-spacing:.05em;color:var(--accent);margin:14px 0 8px}.chat-message{white-space:pre-wrap;overflow-wrap:anywhere;max-width:75ch}.user-message{background:var(--paper);padding:15px;border-radius:5px}.chat-turn>.muted{font-size:12px}.turn-details,.chat-auth{font-size:12px;color:var(--muted)}.turn-details summary,.chat-auth summary{cursor:pointer;padding:8px 0}.turn-events pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:250px;overflow:auto;background:var(--paper);padding:12px}.chat-auth{border-top:1px solid var(--line);padding-top:12px}.chat-auth code{display:block;overflow-wrap:anywhere;color:var(--ink)}
#chat-prompt{width:100%;resize:vertical;padding:14px;font:inherit;background:var(--surface);color:var(--ink);border:1px solid #a4b4a4;border-radius:5px}#chat-prompt:focus-visible{outline:3px solid #ba7622;outline-offset:3px}.conversation-main .action-row{margin:14px 0 24px}
@media(max-width:800px){.conversation-grid{grid-template-columns:1fr}.conversation-sidebar{border-right:0;border-bottom:1px solid var(--line);padding:20px}.conversation-sidebar nav{max-height:180px;overflow:auto}.conversation-main{padding:20px}}

/* History groups preserve their DOM identity across late source enrichment. */
.history-bucket { margin-block: .7rem; border-top: 1px solid var(--border, #d8d3cb); padding-top: .5rem; }
.history-bucket summary { cursor: pointer; font-weight: 600; }
.history-event { margin-block: .7rem; padding-inline: .6rem; border-left: 2px solid #c7bca7; }
.history-event pre, .turn-usage { white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-word; max-width: 100%; }
.history-event pre { max-height: 24rem; overflow-y: auto; font-size: .85rem; }

/* Reporting stays secondary to conversation; numeric columns are scan-friendly. */
.session-utilization { border: 1px solid var(--border, #d8d2c6); border-radius: .6rem; padding: 1rem 1.2rem; margin: 1rem 0; background: #f5f2eb; }
.utilization-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.utilization-heading h3 { margin: 0; }
.session-utilization p { font-size: .88rem; }
.usage-table-wrap { overflow-x: auto; }
.usage-table-wrap table { width: 100%; border-collapse: collapse; font-size: .83rem; font-variant-numeric: tabular-nums; }
.usage-table-wrap caption { text-align: left; margin: .7rem 0; font-weight: 600; }
.usage-table-wrap th, .usage-table-wrap td { padding: .55rem; border-bottom: 1px solid #d8d2c6; text-align: right; }
.usage-table-wrap th:first-child, .usage-table-wrap td:first-child { text-align: left; min-width: 9rem; }
.history-bucket .history-bucket { margin-left: .5rem; border-left: 2px solid #d8d2c6; padding-left: .7rem; }
.history-event > summary { cursor: pointer; padding: .5rem 0; }
.chat-turn:focus { outline: 2px solid #386b55; outline-offset: .25rem; }
@media (max-width: 600px) { .session-utilization { padding: .75rem; } }

/* Categories are shared presentation preferences; activity keeps one causal ordering. */
.activity-line { display: flex; flex-wrap: wrap; gap: .35rem .75rem; align-items: center; border-block: 1px solid var(--border, #d8d3cb); padding-block: .55rem; margin-block: .75rem; font-size: .85rem; }
.activity-line .inline-state { color: var(--muted, #625c53); }
.activity-line button[aria-pressed="true"] { text-decoration: underline; text-underline-offset: .25rem; font-weight: 700; }
.inline-events > .history-bucket { border-top: 0; margin-top: 0; }
.inline-events .history-event { background: var(--surface, #faf8f3); padding-inline: .75rem; }

/* Conversation reading surface: roles are explicit; evidence stays between request and response. */
.chat-bubble{width:fit-content;padding:1rem 1.35rem;border:1px solid var(--line,#d9ddd5);border-radius:16px;background:var(--surface,#fff)}
.chat-turn .user-bubble{max-width:85%;margin:0 .5rem 0 auto;background:#e4ece5;border-color:#c6d6ca;border-bottom-right-radius:4px}
.chat-turn .agent-bubble{max-width:94%;margin:0 auto 0 0;border-bottom-left-radius:4px}
.chat-bubble h3{font-size:.7rem;letter-spacing:.07em;text-transform:uppercase;margin:0 0 .5rem;color:#315442}
.chat-bubble .chat-message{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.turn-inline-activity{margin:1.25rem .75rem;border-left:2px solid #d9ddd5;padding-left:1rem}
.turn-state,.turn-details{margin-left:.75rem}.turn-details{font-size:.8rem}
.session-view-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-bottom:1px solid #d9ddd5;padding:.6rem 0;margin-bottom:1.5rem}
.session-view-bar nav{display:flex;gap:.4rem}.session-view-bar [aria-pressed=true]{background:#e4ece5;color:#275d4c;border-radius:6px}
.usage-glance{font-size:.75rem}.session-utilization{background:transparent;border:0;padding:0}
.token-chart-card{border:1px solid #d9ddd5;background:#fff;padding:1.25rem;border-radius:12px;margin:1.5rem 0}.token-chart-card h4{margin:0 0 .5rem}
.token-chart-card p,.accounting-notes,.measurement-pager{font-size:.8rem}.token-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:.7rem}
.token-legend span:before{content:'';display:inline-block;width:9px;height:9px;background:#497c9b;margin-right:5px}.token-legend .fresh:before{background:#bb829d}.token-legend .output:before{background:#b57c35}.token-legend .reasoning:before{background:#7f778c}
.token-step-chart{display:flex;gap:2px;overflow:auto;padding:18px 4px;align-items:end}.token-step{flex:1 0 44px;min-width:44px;border:0;background:transparent;display:flex;flex-direction:column;align-items:center;gap:5px;padding:4px 2px;font-size:.65rem;color:#263c32}.token-step.turn-boundary{border-left:2px solid #9cae9e;margin-left:6px;padding-left:6px}.token-step:focus-visible{outline:2px solid #285c45;outline-offset:-2px}.token-step:hover{background:#f1f4ed}.token-step strong,.token-step small{font-size:.55rem;white-space:nowrap;line-height:1.4}.token-step strong{font-size:.6rem}
.token-stack-space{height:195px;display:flex;align-items:end;width:100%;border-bottom:1px solid #d9ddd5}.token-stack{display:flex;flex-direction:column-reverse;width:70%;margin:0 auto}.token-segment{display:block}.token-segment.cached{background:#497c9b}.token-segment.fresh{background:#bb829d}.token-segment.output{background:#b57c35}.token-segment.reasoning{background:#7f778c}.token-segment.unknown,.token-segment.unknown-output{background:repeating-linear-gradient(45deg,#89938b 0 3px,#cdd2cc 3px 6px)}.token-gap{font-size:.7rem;color:#667267;margin:auto}
.counter-sample{display:grid;grid-template-columns:55px minmax(50px,1fr) minmax(130px,1fr);align-items:center;gap:12px;margin:6px 0;font-size:.7rem}.counter-track{background:#edf1eb;height:8px}.counter-track i{display:block;height:100%;background:#477460}.series-boundary{padding-top:10px;border-top:1px dashed #d9ddd5}
.measurement-pager{display:flex;gap:12px;align-items:center;justify-content:space-between}.usage-table-wrap td{vertical-align:top}.usage-table-wrap pre{max-width:350px;max-height:250px;overflow:auto}.usage-table-wrap details{min-width:160px;font-size:.7rem}.accounting-notes{margin:1rem 0;padding:1rem;background:#efeee8;border-radius:8px}
@media(max-width:650px){.chat-turn .user-bubble{max-width:94%;margin-right:4px}.chat-turn .agent-bubble{max-width:98%}.chat-bubble{padding:.85rem 1rem}.token-chart-card{padding:.8rem}.counter-sample{grid-template-columns:40px 1fr}.counter-sample small{grid-column:2}.session-view-bar{align-items:start}.turn-inline-activity{margin-left:4px}}
.chat-bubble .user-message{background:transparent;padding:0;border-radius:0}
.chat-turn .chat-bubble h3{margin:0 0 .5rem;font-size:.7rem}
.turn-inline-activity .activity-line{border:0;padding:0;margin:.3rem 0;font-size:.75rem}
.turn-inline-activity .activity-line button{border:1px solid #d9ddd5;border-radius:6px;padding:3px 8px;text-decoration:none;font-size:.7rem}
.turn-inline-activity .activity-line button[aria-pressed=true]{background:#275d4c;color:white;border-color:#275d4c;text-decoration:none}
.inline-uncategorized>.history-bucket{border:0;padding:0;margin:.5rem 0;font-size:.75rem}

/* Callback context stays compact; operational controls live in Async Requests. */
.callback-context{margin-top:.3rem;font-size:.85rem;color:var(--muted);overflow-wrap:anywhere}

/* Local observability: quiet hierarchy, explicit text states and tabular time. */
.session-tree-node{margin:6px 0;padding:6px 0}.session-tree-heading{display:flex;align-items:center;gap:4px}.tree-toggle{padding:8px;min-width:32px;background:transparent;color:var(--ink);border:0;border-radius:5px}.session-tree-heading .session-choice{flex:1;min-width:0;text-decoration:none;overflow-wrap:anywhere}.session-tree-children{margin-left:14px;padding-left:10px;border-left:1px solid var(--line)}
.session-badge{display:block;padding:3px 8px;font-size:.72rem;line-height:1.45;font-variant-numeric:tabular-nums;color:#475c52;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-badge[data-level=quiet]{color:#75520b}.session-badge[data-level=attention]{color:#8d361c;background:#fff0df;border-radius:4px}.session-badge[data-level=stale]{color:#62586c}.session-choice[aria-current=page]{background:#e4eee7;font-weight:700}
.async-request{border:1px solid var(--line);border-radius:10px;padding:16px;margin:14px 0;overflow-wrap:anywhere}.request-state{font-weight:600}.request-version{font-size:.75rem;color:#58655e}.request-times{display:grid;grid-template-columns:minmax(100px,1fr) 2fr;gap:8px;font-size:.85rem;font-variant-numeric:tabular-nums}.request-times dd{margin:0}.session-view-bar nav{display:flex;flex-wrap:wrap;gap:8px}.tree-toggle:focus-visible,.session-choice:focus-visible{outline:3px solid #356c57;outline-offset:2px}
@media(max-width:600px){.request-times{grid-template-columns:1fr}.request-times dd{margin-bottom:8px}.session-tree-children{margin-left:8px;padding-left:6px}}

/* Project occupations reuse the application’s controls and focus treatment. */
#occupation-setup{margin:24px 0}#occupation-library{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:16px}
.occupation-choice fieldset{border:1px solid var(--line);border-radius:5px;padding:18px;min-width:0}.occupation-choice legend{font-weight:600}.occupation-choice label{display:flex;align-items:center;gap:8px;margin:8px 0 16px}.occupation-choice input[type=checkbox]{width:20px;min-height:20px;margin:0;accent-color:var(--accent)}
#session-workflow{width:100%;font:inherit;color:var(--ink);background:var(--surface);padding:10px;border:1px solid var(--line);border-radius:5px;margin:8px 0}#session-workflow:focus-visible{outline:3px solid #ba7622;outline-offset:3px}#session-configuration{font-size:13px;margin-bottom:16px}#session-configuration p{margin:10px 0;overflow-wrap:anywhere}
/* Occupation setup separates installed state from selection; dashboard content stays isolated. */
#occupation-dialog{width:min(850px,calc(100vw - 32px));max-height:85vh;overflow:auto;border:1px solid var(--border,#d8dcd3);border-radius:12px;padding:28px;background:#f7f7f0;color:#26332c}
#occupation-dialog::backdrop{background:rgb(12 29 24 / .5)}
.modal-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}
.occupation-installed{padding:16px 0;border-bottom:1px solid #d8dcd3}.occupation-installed h3{margin:0}.occupation-installed p{margin:8px 0}.occupation-installed button{margin:8px 8px 0 0}
#dashboard-frame{display:block;width:100%;height:75vh;min-height:520px;border:1px solid #d8dcd3;border-radius:12px;margin-top:20px;background:#f7f7f0}
@media(max-width:600px){#occupation-dialog{padding:16px}.modal-heading{align-items:start}#occupation-library{display:block}#dashboard-frame{height:80vh}}

.occupation-card { white-space: normal; margin-block: .8rem; }
.occupation-inline-frame { width: 100%; height: 460px; border: 0; background: #fafaf5; }

/* Session details are available on demand; conversation content stays primary. */
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.session-profile-card { inset:auto; top:10vh; left:min(25vw,22rem); width:min(30rem,calc(100vw - 2rem)); max-height:80vh; overflow:auto; padding:1rem; border:1px solid #cdd6ce; border-radius:.6rem; box-shadow:0 8px 32px #0002; background:#fafaf5; color:#243c32; }
.session-profile-card section { border-top:1px solid #dce2dc; padding-block:.5rem; }
.session-profile-card h3 { font-size:1rem; margin:.2rem 0; }
.session-profile-card p { margin:.3rem 0; }
.session-profile-card small { display:block; overflow-wrap:anywhere; }
.session-profile-card pre { white-space:pre-wrap; overflow-wrap:anywhere; max-height:18rem; overflow:auto; }
#chat-status:empty { display:none; }
#session-uncategorized { display:block; }
#session-uncategorized .history-bucket, .activity-line > .history-bucket { border:0; margin:0; padding:0; font-size:.85rem; }
#session-uncategorized summary, .activity-line > .history-bucket > summary { border:1px solid #dce2dc; border-radius:.35rem; padding:.3rem .6rem; font-weight:400; }
@media(max-width:600px){.session-profile-card {left:1rem;}}

.inline-choices { margin: .75rem 0; white-space: normal; }
.inline-choices fieldset { display: grid; gap: .65rem; border: 0; padding: 0; margin-bottom: .75rem; }
.inline-choices label { display: flex; gap: .5rem; align-items: baseline; }
.inline-choices input { width: auto; }
.inline-choices button { margin-right: .5rem; }

.navigation-plan { margin: 1rem 0; border: 1px solid #cbd8cc; border-radius: 8px; background:var(--paper); overflow-wrap:anywhere; min-width:0; }
.navigation-plan > summary { padding:.85rem 1rem; cursor:pointer; color:var(--accent); }
.navigation-title { font-weight:700; font-size:.95rem; }
.navigation-progress { display:block; font-size:.8rem; color:var(--muted); margin:.25rem 0 0 1rem; font-variant-numeric:tabular-nums; }
.navigation-body { padding:0 1rem .75rem; max-height: min(50vh,28rem); overflow:auto; overscroll-behavior:contain; scrollbar-gutter:stable; }
.navigation-summary { font-size:.9rem; margin-bottom:.75rem; }
.navigation-plan ol { list-style:none; padding:0; margin:0; }
.navigation-plan li { display:grid; grid-template-columns:1rem minmax(0,1fr); gap:.15rem .4rem; padding:.65rem 0; border-top:1px solid var(--line); font-size:.9rem; }
.navigation-step-icon { grid-row:1 / 3; color:var(--accent); font-weight:700; }
.navigation-plan li[data-status="in_progress"] .navigation-step-text { font-weight:700; }
.navigation-step-state { grid-column:2; font-size:.75rem; color:var(--muted); }
.navigation-plan li[data-status="in_progress"] .navigation-step-state { color:#785318; }
.navigation-unavailable { margin:0 1rem .5rem; color:#785318; font-size:.8rem; }
.navigation-connection { display:block; color:#785318; font-size:.8rem; margin-left:1rem; }
.navigation-plan > button { margin:0 1rem .5rem; }
@media(min-width:1280px){
    .main-content:has(#conversations) { max-width:1800px; padding-inline:32px; }
    .conversation-grid { grid-template-columns:215px minmax(0,1fr); overflow:clip; }
    .conversation-main { padding:24px; }
    #conversation-content:has(> .navigation-plan:not([hidden])) { display:grid; grid-template-columns:minmax(0,1fr) minmax(270px,20rem); column-gap:24px; align-items:start; }
    #conversation-content > :not(.navigation-plan) { grid-column:1; min-width:0; }
    .navigation-plan { grid-column:2; grid-row:1 / 4; position:sticky; top:1rem; margin:0; }
    .navigation-body { max-height:calc(100dvh - 13rem); }
}

.navigation-inspector { width:min(56rem, calc(100vw - 2rem)); max-height:85vh; overflow:auto; padding:1.5rem; }
.navigation-inspector details { margin:.6rem 0; padding:.5rem; border:1px solid #ccd5cb; }
.navigation-inspector pre { white-space:pre-wrap; overflow-wrap:anywhere; }
.navigation-inspector a { display:inline-block; margin:.4rem; }
.navigation-inspector { overflow-wrap:anywhere; }

/* Friendly event cards share the application palette; raw observations remain on demand. */
.history-event.navigation-event { border:1px solid #cbd8cc; border-left:3px solid var(--accent); border-radius:7px; padding:.8rem 1rem; background:var(--paper); }
.navigation-event-header { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap:.3rem 1rem; }
.navigation-event-header strong { font-size:.95rem; color:var(--accent); }
.navigation-event-state { font-size:.8rem; font-variant-numeric:tabular-nums; }
.navigation-event-explanation { margin:.45rem 0 .6rem; font-size:.9rem; overflow-wrap:anywhere; }
.navigation-event-notice { font-size:.8rem; color:var(--muted); }
.navigation-event-steps { list-style:none; margin:0; padding:0; }
.navigation-event-steps li { display:grid; grid-template-columns:1rem minmax(0,1fr) auto; gap:.25rem .5rem; align-items:baseline; padding:.3rem 0; font-size:.88rem; overflow-wrap:anywhere; }
.navigation-event-steps .navigation-step-icon { grid-row:auto; }
.navigation-event-steps .navigation-step-state { grid-column:3; padding-left:.5rem; }
.navigation-event-steps [data-status=in_progress] .navigation-step-text { font-weight:650; }
.navigation-event-details { margin-top:.7rem; border-top:1px solid var(--line); font-size:.8rem; }
.navigation-event-details > summary { padding:.5rem 0; cursor:pointer; color:var(--muted); }
.navigation-event[data-acceptance=conflict],.navigation-event[data-acceptance=rejected] { border-left-color:var(--danger); }
@media(max-width:650px) { .navigation-event-steps li { grid-template-columns:1rem minmax(0,1fr); }.navigation-event-steps .navigation-step-state { grid-column:2; padding-left:0; }.navigation-event-steps .navigation-step-icon { grid-row:1 / 3; } }
:root .callback-bubble{position:relative;margin:1.5rem auto;max-width:42rem;width:min(90%,42rem);padding:.8rem 1rem;background:var(--surface,#f6f4ed);border:1px solid #bfcfc3;border-radius:1rem;text-align:center;box-sizing:border-box}
.callback-heading{display:flex;align-items:baseline;gap:.75rem;padding-right:5rem;font-size:.8rem}
.chat-turn .callback-heading h3{margin:0;white-space:nowrap}
.callback-heading a{margin:0 auto;padding:0;font-size:inherit;white-space:nowrap}
.callback-bubble .callback-details{text-align:left;margin:0;font-size:.8rem}
.callback-details>summary{position:absolute;right:1rem;top:.8rem;cursor:pointer;white-space:nowrap}
.callback-details[open] .user-message{margin:.75rem 0 0;border-top:1px solid var(--line);padding-top:.75rem}
.callback-bubble .user-message{white-space:pre-wrap;overflow-wrap:anywhere}
.workflow-review{width:min(94vw,90rem);max-width:94vw;max-height:90vh;overflow:auto;border:1px solid #bfcfc3;border-radius:1rem;padding:1.5rem;color:inherit;background:#fffefa}
.workflow-review::backdrop{background:#172e254d}
.workflow-review>button{float:right}
.workflow-review h2{margin-top:0}
.workflow-review pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:28rem;overflow:auto;padding:1rem;background:#f4f3ed}
.workflow-review details{margin:.75rem 0}
.workflow-zoom{display:flex;flex-wrap:wrap;gap:.5rem}
.workflow-diagram{width:100%;height:60vh;min-height:18rem;border:1px solid #bfcfc3;border-radius:.4rem}
.delegation-controls{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}
.recovery-note-label{flex-basis:100%}
.recovery-note-label textarea{display:block;box-sizing:border-box;width:100%;margin-top:.4rem;padding:.65rem;border:1px solid var(--line);border-radius:.4rem;font:inherit;resize:vertical}
@media(max-width:600px){.workflow-review{padding:1rem}.callback-bubble{width:100%}.workflow-zoom button{padding:.5rem}}

/* Corvus category hues adapted to the workspace's light palette. */
[data-category="artifact"] { --activity-color: #a84a09; --activity-tint: #fff3e8; }
[data-category="tool"], [data-category="shell"] { --activity-color: #a33430; --activity-tint: #fff0ee; }
[data-category="navigation"] { --activity-color: #146785; --activity-tint: #edf8fc; }
[data-category="message"] { --activity-color: #286541; --activity-tint: #eff8f0; }
[data-category="instruction"] { --activity-color: #7d620b; --activity-tint: #fff9df; }
[data-category="lifecycle"], [data-category="unresolved"] { --activity-color: #626b65; --activity-tint: #f1f3f0; }
.activity-line button[data-category] { color: var(--activity-color); border-color: var(--activity-color); background: transparent; }
.activity-line button[data-category][aria-pressed="true"] { background: var(--activity-tint); color: var(--activity-color); box-shadow: inset 0 -2px var(--activity-color); }
.history-event[data-category] { border-left: 3px solid var(--activity-color); background: var(--activity-tint); border-radius: .3rem; padding: .65rem .8rem; }
.history-event.navigation-event { border-color: var(--activity-color); }
.file-event-files { display: grid; grid-template-columns: minmax(0, 1fr); gap: .5rem; min-width: 0; }
.file-change, .file-diff-body { min-width: 0; max-width: 100%; }
.file-change-summary { display: flex; align-items: baseline; gap: .65rem; cursor: pointer; list-style: none; }
.file-change-summary::before { content: '▸'; color: var(--activity-color); }
.file-change[open] > .file-change-summary::before { content: '▾'; }
.file-change-summary::-webkit-details-marker { display: none; }
.file-operation { color: var(--activity-color); }
.file-path { overflow-wrap: anywhere; min-width: 0; }
.file-stats { white-space: nowrap; font-size: .85em; margin-left: auto; }
.file-outcome { font-size: .85em; white-space: nowrap; }
.file-event-evidence { margin-top: .6rem; font-size: .9em; }
.file-event-evidence > summary { color: var(--muted, #626b65); cursor: pointer; }
.history-event .file-diff { max-height: min(24rem, 50vh); overflow: auto; white-space: pre; overflow-wrap: normal; tab-size: 4; padding: .6rem 0; background: #fffefa; border: 1px solid #d8dcd7; }
.diff-line { display: block; min-width: max-content; padding: 0 .6rem; line-height: 1.5; }
.diff-add { background: #e3f3e5; color: #205632; }
.diff-delete { background: #fbe5e3; color: #962e29; }
.diff-hunk { background: #edf2f6; color: #426477; }
.diff-meta { color: #426477; }
.file-diff-notice { font-size: .85em; }
@media (max-width: 600px) {
    .file-change-summary { flex-wrap: wrap; gap: .35rem; }
    .file-path { flex: 1 1 65%; }
    .file-outcome { margin-left: auto; }
}

/* Compact activity: controls and conversation typography remain at their existing sizes. */
.turn-inline-activity { --event-text: .75rem; --event-heading: .8125rem; --event-gap: .35rem; min-width:0; }
.history-event[data-category=delegation], [data-category=delegation] { --activity-color:#70408e; --activity-tint:#f6effb; }
.turn-inline-activity .history-event { font-size:var(--event-text); line-height:1.4; margin-block:.4rem; padding:.4rem .55rem; }
.turn-inline-activity .history-event :is(p,pre,summary,li,span,small,button,a) { font-size:max(var(--event-text),1em); }
.turn-inline-activity .history-event :is(p,pre) { margin-block:.3rem; }
.turn-inline-activity .navigation-event-header strong { font-size:var(--event-heading); }
.turn-inline-activity .navigation-event-steps li { padding:.18rem 0; }
.turn-inline-activity .navigation-event-details { margin-top:.4rem; }
.compact-event .command-detail>summary,.delegation-summary { display:flex; align-items:baseline; gap:.5rem; justify-content:space-between; cursor:pointer; }
.command-title { min-width:0; overflow-wrap:anywhere; }
.command-state { flex-shrink:0; font-variant-numeric:tabular-nums; }
.compact-evidence { margin-top:.3rem; }
.compact-evidence>summary,.file-event-evidence>summary { color:var(--muted); }
.command-detail-body pre { white-space:pre; overflow-wrap:normal; }
.delegation-notice { color:var(--muted); }
.delegation-child { display:inline-block; }
.activity-viewport { min-width:0; max-width:100%; max-height:min(28rem,50dvh); overflow:auto; overscroll-behavior:contain; scrollbar-gutter:stable; padding:0 .4rem; border:1px solid transparent; border-radius:4px; }
.activity-viewport[data-overflow=true] { border-color:var(--line); background:linear-gradient(var(--surface),var(--surface)); }
.activity-viewport[data-overflow=true][data-at-top=false] { box-shadow:inset 0 5px 5px -5px #344d40; }
.activity-viewport[data-overflow=true][data-at-bottom=false] { border-bottom-color:#80958a; }
[data-expanded-list=true]>.activity-viewport { max-height:none; overflow:visible; scrollbar-gutter:auto; }
.activity-scroll-controls { display:flex; gap:1rem; align-items:center; }
.activity-scroll-controls .text-button,.history-event .detail-back { padding:3px 2px; min-height:24px; font-size:12px; }
.activity-detail-viewport,.history-event .standalone-detail { min-width:0; max-width:100%; max-height:min(18rem,30dvh); overflow:auto; overscroll-behavior:contain; scrollbar-gutter:stable; border:1px solid transparent; padding:0 .25rem; }
.activity-detail-viewport[data-overflow=true] { border-color:var(--line); }
.activity-detail-viewport pre,.activity-detail-viewport .file-diff { max-height:none; overflow:visible; }
.activity-detail-viewport .file-diff { width:max-content; min-width:100%; }
.activity-detail-viewport .file-diff-body { max-width:none; }
.activity-viewport:focus-visible,.activity-detail-viewport:focus-visible,.standalone-detail:focus-visible { outline:2px solid #ba7622; outline-offset:-2px; }
.message-event-text { white-space:pre-wrap; overflow-wrap:anywhere; }
@media(max-width:600px) { .command-detail>summary,.delegation-summary { flex-wrap:wrap; } .command-state { margin-left:auto; } .turn-inline-activity { padding-left:.45rem; margin-right:0; } }

/* Host-owned controls stay outside the untrusted generated report frame. */
#report-stage iframe{display:block;width:100%;height: min(75vh,50rem);min-height:20rem;border:1px solid var(--line,#c7cec5);background:white;border-radius:.5rem}
#report-viewer{min-width:0;margin-block:1rem}#report-viewer pre{overflow-wrap:anywhere;white-space:pre-wrap;max-height:16rem;overflow:auto}.report-summary{white-space:pre-wrap;overflow-wrap:anywhere}.report-controls{display:flex;flex-wrap:wrap;gap:.75rem}
.chat-bubble .message-viewport{max-height:min(60vh,36rem);overflow-y:auto;overflow-x:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:.2rem;overflow-wrap:anywhere}.chat-bubble .message-viewport.message-expanded{max-height:none}.message-viewport:focus-visible{outline:3px solid #b57824;outline-offset:3px}.message-controls{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.4rem}.turn-progress{font-size:.85rem;color:#506459;margin-bottom:.75rem}.turn-progress p{margin:.25rem 0}.turn-progress pre{max-height:12rem;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}

.project-app-screen { width:100%; height:min(75vh,800px); min-height:320px; overflow:hidden; background:#222; border-radius:.4rem; margin:1rem 0; }
#project-app-view pre { max-height:20rem; overflow:auto; white-space:pre-wrap; overflow-wrap:anywhere; }

[data-category="mcp"] { --activity-color: #75428a; --activity-tint: #f7f0fb; }
[data-category="agent"] { --activity-color: #6b601e; --activity-tint: #faf7e8; }
.execution-detail { margin-block: .5rem; }
.execution-detail pre { white-space: pre-wrap; }

/* Chat attachments use the workspace's ordinary file links; no embedded execution. */
.chat-attachments { margin: .65rem 0; padding: .6rem; border: 1px solid var(--line, #d5d9cf); border-radius: .5rem; }
.chat-attachments > .muted { font-size: .85rem; margin-left: .65rem; }
.attachment-list, .turn-attachments { display: flex; flex-direction: column; gap: .4rem; margin-top: .5rem; }
.attachment-chip { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem .7rem; padding: .4rem .6rem; border: 1px solid var(--line, #d5d9cf); border-radius: .4rem; background: var(--paper, #fffefa); font-size: .85rem; }
.attachment-name, .attachment-chip > a { overflow-wrap: anywhere; min-width: 0; }
.attachment-name { flex: 1 1 12rem; }
.attachment-state { flex: 1 1 8rem; }
.turn-attachments pre { white-space: pre-wrap; overflow-wrap: anywhere; max-height: 12rem; overflow: auto; }
.attachment-drop-target { outline: 3px solid #286541; outline-offset: .25rem; }
.chat-attachments[hidden] { display: none; }
