/* CODER'S SCREEN (2026-11-05): its own file, apart from styles.css. A chat,
   like a code editor's agent panel: the person's messages as bubbles, the AI's
   words as plain text, every command a quiet row that opens to its output. */
.cd { flex: 1; min-height: 0; display: flex; flex-direction: column; background: #faf9f7; color: #0d1b2a; font: 14px/1.55 Inter, -apple-system, system-ui, sans-serif; }
.cd code, .cd pre { font-family: "Geist Mono", ui-monospace, Menlo, monospace; }

/* The bar on top: the repository, its branch, the pull request. */
.cd-head { display: flex; align-items: center; justify-content: center; gap: 10px; margin-top: 96px; padding: 10px 20px; border-bottom: 1px solid #ece8e1; flex-wrap: wrap; }
.cd-proj { display: inline-flex; align-items: center; gap: 7px; border: 1px solid #e6e2db; background: #fff; border-radius: 9px; padding: 5px 10px; }
.cd-proj select { border: 0; background: transparent; font: 600 13px Inter, system-ui, sans-serif; color: #0d1b2a; outline: none; max-width: 260px; cursor: pointer; }
.cd-branch { display: inline-flex; align-items: center; gap: 5px; color: #6b7280; font: 12px "Geist Mono", ui-monospace, Menlo, monospace; }
.cd-pr { font-size: 12.5px; font-weight: 600; color: #0f766e; text-decoration: none; border: 1px solid #b7e0d9; background: #effaf7; border-radius: 999px; padding: 4px 11px; }
.cd-pr:hover { background: #e0f5f0; }

/* The conversation. */
.cd-log { flex: 1; min-height: 0; overflow-y: auto; padding: 22px 20px 8px; }
.cd-thread { max-width: 760px; margin: 0 auto; display: flex; flex-direction: column; gap: 10px; }
.cd-user { display: flex; justify-content: flex-end; margin-top: 8px; }
.cd-bubble { background: #0d1b2a; color: #fff; border-radius: 16px 16px 4px 16px; padding: 9px 14px; max-width: 78%; white-space: pre-wrap; word-wrap: break-word; }
.cd-ai p { margin: 0 0 8px; }
.cd-ai p:last-child { margin-bottom: 0; }
.cd-ai code, .cd-done code { background: #f0ede7; border-radius: 5px; padding: 1px 5px; font-size: 12.5px; }
.cd-ai a, .cd-done a, .cd-gh a { color: #0f766e; }
.cd-pre { background: #0f1720; color: #e6edf3; border-radius: 10px; padding: 12px 14px; overflow-x: auto; font-size: 12.5px; line-height: 1.5; margin: 6px 0; }

/* A command: one row, its output under it when opened. */
.cd-step { border: 1px solid #ebe7e0; background: #fff; border-radius: 10px; overflow: hidden; }
.cd-step-row { width: 100%; display: flex; align-items: center; gap: 8px; border: 0; background: transparent; padding: 7px 11px; cursor: pointer; color: #6b7280; text-align: left; font: inherit; }
.cd-step-row:disabled { cursor: default; }
.cd-step-row:hover:not(:disabled) { background: #faf8f5; }
.cd-step-chev { width: 12px; display: inline-grid; place-items: center; transition: transform .15s; }
.cd-step.is-open .cd-step-chev { transform: rotate(90deg); }
.cd-step-cmd { flex: 1; min-width: 0; color: #0d1b2a; font-size: 12.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cd-ok { color: #11845b; font-weight: 700; font-size: 13px; }
.cd-bad { color: #b42318; background: #fdecea; border-radius: 999px; padding: 1px 8px; font-size: 11.5px; font-weight: 600; white-space: nowrap; }
.cd-out { margin: 0; border-top: 1px solid #ebe7e0; background: #0f1720; color: #d1d9e0; padding: 10px 14px; max-height: 320px; overflow: auto; font-size: 12px; line-height: 1.5; white-space: pre-wrap; word-break: break-word; }

.cd-start { border: 1px solid #d9d4cb; background: #fff; border-radius: 999px; padding: 6px 13px; font: 13px Inter, system-ui, sans-serif; color: #0d1b2a; cursor: pointer; }
.cd-start:hover { border-color: #0d1b2a; }

/* The end of a piece of work, and what went to GitHub. */
.cd-done { display: flex; gap: 10px; align-items: flex-start; border-left: 3px solid #11845b; padding: 4px 0 4px 12px; }
.cd-done p { margin: 0 0 6px; }
.cd-done-dot { display: none; }
.cd-gh { display: flex; gap: 8px; align-items: center; color: #374151; font-size: 13px; background: #f3f1ed; border-radius: 10px; padding: 8px 12px; overflow-wrap: anywhere; }
.cd-err, .cd-errbar { color: #b42318; background: #fdecea; border-radius: 10px; padding: 8px 12px; font-size: 13px; }
.cd-errbar { max-width: 760px; margin: 0 auto 6px; width: calc(100% - 40px); box-sizing: border-box; }
.cd-note { color: #9ca3af; font-size: 12.5px; text-align: center; }

/* Working. */
.cd-thinking { display: flex; gap: 4px; padding: 6px 2px; }
.cd-thinking span { width: 6px; height: 6px; border-radius: 50%; background: #b5b1aa; animation: cd-blink 1.2s infinite ease-in-out; }
.cd-thinking span:nth-child(2) { animation-delay: .15s; }
.cd-thinking span:nth-child(3) { animation-delay: .3s; }
@keyframes cd-blink { 0%, 80%, 100% { opacity: .25; transform: translateY(0); } 40% { opacity: 1; transform: translateY(-2px); } }
.cd-spin { width: 12px; height: 12px; border: 2px solid #ddd8cf; border-top-color: #0d1b2a; border-radius: 50%; animation: cd-turn .8s linear infinite; flex: none; }
.cd-spin-lg { width: 22px; height: 22px; }
@keyframes cd-turn { to { transform: rotate(360deg); } }

/* The box to write in. */
.cd-compose { display: flex; flex-direction: column; gap: 4px; max-width: 760px; width: calc(100% - 40px); margin: 6px auto 18px; box-sizing: border-box; background: #fff; border: 1px solid #e0dbd2; border-radius: 16px; padding: 10px 8px 8px 14px; box-shadow: 0 1px 2px rgba(13,27,42,.04), 0 4px 16px rgba(13,27,42,.04); }
.cd-compose:focus-within { border-color: #0d1b2a; }
.cd-compose textarea { border: 0; outline: none; resize: none; background: transparent; font: 14px/1.5 Inter, system-ui, sans-serif; color: #0d1b2a; padding: 2px 0; max-height: 200px; }
.cd-compose textarea::placeholder { color: #a8a39b; }
/* The model and its effort, under the text, like a code editor's chat box. */
.cd-bar { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.cd-picks { display: flex; gap: 4px; margin-left: -6px; min-width: 0; }
.cd-pick select { appearance: none; -webkit-appearance: none; border: 0; background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 7px center; border-radius: 8px; padding: 4px 22px 4px 8px; font: 500 12.5px Inter, system-ui, sans-serif; color: #4b5563; cursor: pointer; }
.cd-pick select:hover { background-color: #f3f1ed; color: #0d1b2a; }
.cd-send { width: 32px; height: 32px; border-radius: 10px; border: 0; background: #0d1b2a; color: #fff; display: grid; place-items: center; cursor: pointer; flex: none; }
.cd-send:disabled { opacity: .4; cursor: default; }
.cd-stop { background: #fff; color: #0d1b2a; border: 1px solid #d9d4cb; }

/* Empty chat, sign-in and picking a repository. */
.cd-empty { max-width: 560px; margin: 8vh auto 20px; text-align: center; }
.cd-empty b { font-size: 19px; }
.cd-empty p { color: #6b7280; margin: 8px 0 18px; }
.cd-starts { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.cd-center { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; padding: 24px; text-align: center; overflow-y: auto; }
.cd-mark { color: #0d1b2a; }
.cd-title { font-size: 21px; }
.cd-sub { color: #6b7280; max-width: 440px; margin: 0; }
.cd-btn { display: inline-flex; align-items: center; gap: 8px; border: 0; background: #0d1b2a; color: #fff; border-radius: 999px; padding: 10px 20px; font: 600 14px Inter, system-ui, sans-serif; cursor: pointer; margin-top: 6px; }
.cd-btn-2 { border: 1px solid #d9d4cb; background: #fff; color: #0d1b2a; border-radius: 999px; padding: 7px 16px; font: 13px Inter, system-ui, sans-serif; text-decoration: none; cursor: pointer; }
.cd-link { border: 0; background: none; color: #6b7280; text-decoration: underline; cursor: pointer; font: 13px Inter, system-ui, sans-serif; }
.cd-errline { color: #b42318; margin: 0; font-size: 13px; }
.cd-repos { display: flex; flex-direction: column; gap: 6px; width: 100%; max-width: 420px; max-height: 46vh; overflow-y: auto; margin: 6px 0; }
.cd-repo { display: flex; align-items: center; gap: 9px; border: 1px solid #e6e2db; background: #fff; border-radius: 10px; padding: 10px 12px; cursor: pointer; text-align: left; font: 14px Inter, system-ui, sans-serif; color: #0d1b2a; }
.cd-repo:hover { border-color: #0d1b2a; }
.cd-repo span { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cd-repo em { font-style: normal; font-size: 11px; color: #6b7280; border: 1px solid #e6e2db; border-radius: 999px; padding: 1px 7px; }

@media (max-width: 760px) { .cd-head { margin-top: 0; } }
@media (max-width: 640px) {
  .cd-head { padding: 8px 14px; }
  .cd-log { padding: 16px 14px 6px; }
  .cd-compose { width: calc(100% - 28px); margin-bottom: 12px; }
  .cd-bubble { max-width: 88%; }
  .cd-pr { margin-left: 0; }
}

/* THE CLAUDE-APP LOOK (owner, 2026-11-05: "look at the frontend of this"):
   light grey bubbles, commands as quiet "Ran …" lines, several in a row in one
   box, the answer as plain text, the model and effort under the box. */
.cd-bubble { background: #efece7; color: #0d1b2a; border-radius: 18px; padding: 10px 16px; }
.cd-thread { gap: 12px; }
.cd-ai { line-height: 1.6; }
.cd-cmd-row { display: flex; align-items: center; gap: 6px; width: 100%; border: 0; background: none; padding: 4px 0; font: 14px Inter, system-ui, sans-serif; color: #8a857d; cursor: pointer; text-align: left; min-width: 0; }
.cd-cmd-row:disabled { cursor: default; }
.cd-cmd-row:hover:not(:disabled) { color: #4b5563; }
.cd-cmd-verb { flex: none; }
.cd-cmd-text { font: 14px Inter, system-ui, sans-serif; color: inherit; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
.cd-caret { flex: none; font-size: 10px; }
/* The picture a Read step opened, small, under the step (the owner, 2026-11-08: "Fix those 3"; like Claude Code's). */
.cd-cmd-pics { display: flex; flex-wrap: wrap; gap: 6px; padding: 2px 0 8px 21px; }
.cd-cmd-pics img { display: block; max-width: min(260px, 100%); max-height: 180px; border: 1px solid #ebe7e0; border-radius: 8px; background: #fff; }
.cd-cmd .cd-out { margin: 4px 0 8px; border: 1px solid #ebe7e0; border-radius: 10px; background: #fff; color: #4b5563; max-height: 260px; }
.cd-group-head { display: flex; align-items: center; gap: 6px; border: 0; background: none; padding: 4px 0; font: 14px Inter, system-ui, sans-serif; color: #8a857d; cursor: pointer; }
.cd-group-head:hover { color: #4b5563; }
.cd-group-box { border: 1px solid #e6e2db; border-radius: 12px; background: #fff; margin-top: 6px; }
.cd-group-box .cd-cmd { padding: 0 16px; }
.cd-group-box .cd-cmd + .cd-cmd { border-top: 1px solid #efece7; }
.cd-group-box .cd-cmd-row { padding: 12px 0; }
.cd-bad { margin-left: 6px; color: #b42318; background: #fdecea; border-radius: 999px; padding: 1px 8px; font-size: 11.5px; font-weight: 600; flex: none; }
/* The box: rounded, the model and effort under it on the right. */
.cd-composewrap { max-width: 760px; width: calc(100% - 40px); margin: 6px auto 14px; }
.cd-compose { flex-direction: row; align-items: center; width: 100%; margin: 0; border-radius: 22px; padding: 10px 10px 10px 18px; }
.cd-compose textarea { padding: 4px 0; }
.cd-send { border-radius: 50%; }
.cd-picks { display: flex; justify-content: flex-end; gap: 2px; margin: 6px 4px 0 0; }
.cd-pick select { background-color: transparent; color: #6b7280; font-size: 12.5px; }
@media (max-width: 640px) { .cd-composewrap { width: calc(100% - 28px); margin-bottom: 10px; } }
.cd-compose textarea { flex: 1; min-width: 0; }
.cd .cd-cmd-text { font-family: Inter, -apple-system, system-ui, sans-serif; }

/* The two buttons in the top bar, and the changes panel under it. */
.cd-hbtn { border: 1px solid #e0dbd2; background: #fff; color: #0d1b2a; border-radius: 999px; padding: 4px 12px; font: 600 12.5px Inter, system-ui, sans-serif; cursor: pointer; }
.cd-hbtn:hover { border-color: #0d1b2a; }
.cd-hbtn[aria-pressed="true"] { background: #0d1b2a; color: #fff; border-color: #0d1b2a; }
.cd-changes { max-width: 760px; margin: 12px auto 0; width: calc(100% - 40px); border: 1px solid #e6e2db; border-radius: 12px; background: #fff; max-height: 42vh; overflow: auto; }
.cd-changes-sum { padding: 10px 16px; font-size: 13px; color: #4b5563; border-bottom: 1px solid #efece7; }
.cd-compare { display: flex; align-items: center; gap: 8px; padding: 10px 16px; border-bottom: 1px solid #efece7; font-size: 13px; color: #4b5563; }
.cd-compare select { font: inherit; font-size: 13px; padding: 4px 8px; border: 1px solid #ddd8d0; border-radius: 8px; background: #fff; color: #1f2937; max-width: 60%; }
.cd-compare-vs { color: #6b7280; margin-left: 6px; }
.cd-changes-none { margin: 0; padding: 14px 16px; color: #6b7280; }
.cd-add { color: #11845b; font-weight: 600; margin-left: 6px; font-size: 12.5px; }
.cd-del { color: #b42318; font-weight: 600; margin-left: 4px; font-size: 12.5px; }
.cd-file + .cd-file { border-top: 1px solid #efece7; }
.cd-file summary { display: flex; align-items: center; gap: 4px; padding: 9px 16px; cursor: pointer; list-style: none; }
.cd-file summary code { flex: 1; min-width: 0; font-size: 12.5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cd-diff { margin: 0; padding: 8px 0; background: #fbfaf8; border-top: 1px solid #efece7; font-size: 12px; line-height: 1.55; overflow-x: auto; }
.cd-diff span { display: block; padding: 0 16px; white-space: pre; }
.cd-dl-add { background: #e9f7ef; color: #0f5132; }
.cd-dl-del { background: #fdecea; color: #842029; }
.cd-dl-hunk { color: #8a857d; }

/* THE CHAT'S BAR (title, repository, branch, pull request, See changes). */
.gf-app .cd-head { justify-content: flex-start; padding: 12px 24px; }
.cd-title-bar { font-size: 14.5px; font-weight: 600; max-width: 34ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cd-repo-bar { display: inline-flex; align-items: center; gap: 5px; color: #6b7280; font-size: 13px; }
.cd-head .cd-pr { margin-left: auto; }
.cd-menu { display: none; border: 1px solid #e0dbd2; background: #fff; border-radius: 9px; width: 34px; height: 32px; font-size: 16px; cursor: pointer; color: #0d1b2a; }
.cd-head-min { display: none; border-bottom: 0; }
/* ONE LINE ON A COMPUTER (owner, 2026-11-06): a long branch or title is
   shortened with "…" (the whole name shows on hover) instead of pushing the
   buttons onto a second line. The branch gives way first, then the title; the
   repository stays whole unless the window is narrow. */
.cd-ell { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
@media (min-width: 761px) {
  .gf-app .cd-head { flex-wrap: nowrap; }
  .gf-app .cd-head > * { flex: none; }
  .gf-app .cd-head > .cd-branch { flex: 0 3 auto; min-width: 7ch; }
  .gf-app .cd-head > .cd-title-bar { flex: 0 2 auto; min-width: 8ch; }
}
@media (min-width: 761px) and (max-width: 1099px) {
  .gf-app .cd-head > .cd-repo-bar { flex: 0 1 auto; min-width: 8ch; }
}
@media (max-width: 760px) {
  .cd-menu { display: inline-block; }
  .cd-head-min { display: flex; }
  .gf-app .cd-head { padding: 10px 14px; }
  .cd-head .cd-pr { margin-left: 0; }
  .cd-title-bar { max-width: 60vw; }
}

/* A long command still running, in the background. */
.cd-bgchip { margin-left: 6px; color: #6b7280; background: #efece7; border-radius: 999px; padding: 1px 8px; font-size: 11.5px; font-weight: 600; flex: none; }
.cd-cmd.is-bg .cd-cmd-verb { color: #b07a1a; }
/* Comments on the changes: tap a line, write, it goes with the next message. */
.cd-dl { cursor: pointer; }
.cd-dl:hover { outline: 1px solid #cfc8bd; outline-offset: -1px; }
.cd-cbox { display: flex !important; gap: 6px; padding: 6px 16px 8px !important; background: #fff; white-space: normal !important; }
.cd-cbox input { flex: 1; border: 1px solid #d9d4cb; border-radius: 8px; padding: 6px 10px; font: 13px Inter, system-ui, sans-serif; outline: none; }
.cd-cbox input:focus { border-color: #0d1b2a; }
.cd-cbox button { border: 1px solid #d9d4cb; background: #fff; border-radius: 8px; padding: 4px 10px; font: 600 12.5px Inter, system-ui, sans-serif; cursor: pointer; }
.cd-cbox button:first-of-type { background: #0d1b2a; color: #fff; border-color: #0d1b2a; }
.cd-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 6px; }
.cd-chip { display: inline-flex; align-items: center; gap: 6px; background: #fff; border: 1px solid #e0dbd2; border-radius: 999px; padding: 3px 6px 3px 10px; font-size: 12.5px; color: #374151; max-width: 100%; }
.cd-chip button { border: 0; background: none; color: #8a857d; cursor: pointer; font-size: 15px; line-height: 1; }
/* Slash commands: the menu above the box. */
.cd-composewrap { position: relative; }
.cd-localnote { color: #6b7280; font-size: 13px; background: #f3f1ed; border-radius: 10px; padding: 8px 12px; white-space: pre-wrap; }

/* Coder's own "are you sure?" */
.cd-sure{position:fixed;inset:0;z-index:100;background:rgba(20,20,19,.35);display:flex;align-items:center;justify-content:center;padding:16px}
.cd-sure-box{background:#fff;border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.18);width:100%;max-width:400px;padding:20px 20px 16px}
.cd-sure-title{font-size:16px;font-weight:600;color:#1f1e1d;margin-bottom:6px;overflow-wrap:anywhere}
.cd-sure-text{font-size:14px;color:#6b6a68;line-height:1.45}
.cd-sure-row{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
.cd-sure-row button{font:inherit;font-size:14px;border-radius:10px;padding:8px 14px;cursor:pointer;border:1px solid #e5e3dd;background:#fff;color:#1f1e1d}
.cd-sure-row .cd-sure-yes{background:#b3261e;border-color:#b3261e;color:#fff}
.cd-sure-row button:hover{filter:brightness(.96)}

/* Coder's checklist (the todo tool), only the latest one is shown. */
.cd-todo{border:1px solid #e5e3dd;border-radius:12px;padding:10px 14px;margin:8px 0;background:#fff;font-size:14px}
.cd-todo b{display:block;font-size:12px;color:#6b6a68;font-weight:600;margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}
.cd-todo-i{display:flex;gap:8px;align-items:flex-start;padding:3px 0;color:#1f1e1d}
.cd-todo-box{flex:none;width:16px;height:16px;border:1.5px solid #c9c6bf;border-radius:4px;display:grid;place-items:center;font-size:11px;line-height:1;margin-top:2px}
.cd-todo-i.is-done{color:#8a8884;text-decoration:line-through}
.cd-todo-i.is-done .cd-todo-box{background:#1f6f5c;border-color:#1f6f5c;color:#fff}
.cd-todo-i.is-in_progress .cd-todo-box{border-color:#1f1e1d;font-weight:700}

/* Coder's question (ask_user): the options are buttons. */
/* CODER'S QUESTION, LIKE CLAUDE CODE'S (owner, 2026-11-06, "2"): the question on
   top, each choice with its explanation, Other with a box to type, Skip and Submit. */
.cd-ask{border:1px solid #e5e3dd;border-radius:14px;margin:8px 0;background:#fff;overflow:hidden;max-width:480px}
.cd-ask-q{font-size:14.5px;font-weight:600;color:#1f1e1d;line-height:1.45;padding:12px 16px;background:#f7f6f2;border-bottom:1px solid #ece9e2}
.cd-ask.is-many{max-width:520px}
.cd-ask-one+.cd-ask-one .cd-ask-q{border-top:1px solid #ece9e2}
.cd-ask-h{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.02em;color:#5b4a2e;background:#f1e7d3;border-radius:999px;padding:2px 9px;margin:0 8px 0 0;vertical-align:1px}
.cd-ask-multi{display:inline-block;font-size:11.5px;font-weight:500;color:#6b6a66;margin-left:8px}
.cd-ask-list{display:flex;flex-direction:column}
.cd-ask-row{display:flex;gap:12px;align-items:flex-start;padding:12px 16px;border-bottom:1px solid #f0eee8;cursor:pointer}
.cd-ask-row:last-child{border-bottom:0}
.cd-ask-row input[type="radio"],.cd-ask-row input[type="checkbox"]{margin:2px 0 0;width:17px;height:17px;flex:none;accent-color:#1f1e1d;cursor:pointer}
.cd-ask-t{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.cd-ask-t b{font-size:14.5px;font-weight:600;color:#1f1e1d}
.cd-ask-t small{font-size:13px;color:#6b6a66;line-height:1.45}
.cd-ask-in{font:inherit;font-size:14px;color:#1f1e1d;border:1px solid #d9d6cf;border-radius:8px;padding:7px 10px;margin-top:6px;width:100%;box-sizing:border-box;background:#fff}
.cd-ask-in:focus{outline:none;border-color:#1f1e1d}
.cd-ask-btns{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid #ece9e2}
.cd-ask-btns button{font:inherit;font-size:14px;font-weight:600;border-radius:999px;padding:8px 16px;cursor:pointer}
.cd-ask-skip{border:1px solid #d9d6cf;background:#fff;color:#1f1e1d}
.cd-ask-go{border:1px solid #1f1e1d;background:#1f1e1d;color:#fff}
.cd-ask-go kbd{font:inherit;font-size:11px;font-weight:500;opacity:.7;margin-left:6px}
.cd-ask:not(.is-live) .cd-ask-row{cursor:default;opacity:.6}
.cd-ask-wait{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;color:#9a5b00;background:#fdf1d8;border-radius:999px;padding:3px 10px;margin:0 0 10px}
.cd-ask-wait::before{content:"";width:8px;height:8px;border-radius:50%;background:#e8a10c}
/* THE SECRET CARD (owner, 2026-11-06): Claude Code's network-secret card, in Coder's colours. */
.cd-secret{border:1px solid #e5e3dd;border-radius:18px;padding:22px 20px 18px;margin:10px 0;background:#faf9f5;text-align:center}
.cd-secret-icon{width:52px;height:52px;margin:0 auto 12px;border-radius:12px;background:#1f1e1d;color:#fff;display:flex;align-items:center;justify-content:center}
.cd-secret-t{display:block;font-size:16px;color:#1f1e1d;margin-bottom:8px;overflow-wrap:anywhere}
.cd-secret-why{font-size:14px;color:#1f1e1d;margin:0 0 6px;line-height:1.45}
.cd-secret-how{font-size:12.5px;color:#6b6a66;margin:0 0 8px}.cd-secret-how code{background:#f0ede7;border-radius:5px;padding:1px 6px}
.cd-secret-p{font-size:13.5px;color:#6b6a66;margin:0 0 14px;line-height:1.5;text-align:left}
.cd-secret-l{display:block;text-align:left;font-size:13px;color:#6b6a66;margin:0 0 6px 4px}
.cd-secret-in{width:100%;box-sizing:border-box;font:inherit;font-size:15px;border:1px solid #d9d6cf;border-radius:999px;padding:11px 16px;background:#fff;color:#1f1e1d;outline:none}
.cd-secret-in:focus{border-color:#1f1e1d}
.cd-secret-err{color:#b3261e;font-size:13px;text-align:left;margin:8px 4px 0}
.cd-secret-btns{display:flex;gap:10px;margin-top:16px}
.cd-secret-btns button{flex:1;font:inherit;font-size:15px;font-weight:600;border-radius:999px;padding:11px 0;cursor:pointer}
.cd-secret-no,.cd-card-no{border:1px solid #d9d6cf;background:#fff;color:#1f1e1d}
.cd-secret-save,.cd-card-yes{border:1px solid #1f1e1d;background:#1f1e1d;color:#fff}
.cd-secret-save:disabled,.cd-card-yes:disabled{background:#a9a7a1;border-color:#a9a7a1;cursor:default}
.cd-card-no:disabled{opacity:.5;cursor:default}
/* GLOOPY'S BROWSER, LIVE (2026-11-09): the view under Gloopy's bar; an orange edge while you have control. */
.cd-web-btn { display: inline-flex; align-items: center; gap: 6px; }
.cd-web { max-width: 900px; margin: 12px auto 0; width: calc(100% - 40px); border: 1px solid #e6e2db; border-radius: 14px; background: #fff; overflow: hidden; }
.cd-web-bar { display: flex; align-items: center; gap: 10px; padding: 8px 10px 8px 14px; border-bottom: 1px solid #efece7; font-size: 13px; }
.cd-web-st { display: inline-flex; align-items: center; gap: 7px; font-weight: 600; color: #1f1e1d; white-space: nowrap; }
.cd-web-st i { width: 8px; height: 8px; border-radius: 50%; background: #a9a7a1; }
.cd-web-st.is-work i { background: #2f9e44; box-shadow: 0 0 0 3px rgba(47,158,68,.18); }
.cd-web-st.is-you i { background: #e8590c; box-shadow: 0 0 0 3px rgba(232,89,12,.18); }
.cd-web-addr { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #6b7280; }
.cd-web-mini { border: 1px solid #d9d6cf; background: #fff; border-radius: 999px; padding: 3px 10px; font: 600 12px Inter, system-ui, sans-serif; cursor: pointer; }
.cd-web-x { border: 0; background: none; font-size: 22px; line-height: 1; padding: 0 4px; color: #6b7280; cursor: pointer; }
.cd-web-screen { display: flex; justify-content: center; background: #f4f2ee; outline: none; }
.cd-web-screen img { display: block; max-width: 100%; max-height: 52vh; width: auto; height: auto; user-select: none; -webkit-user-select: none; }
.cd-web-screen.is-you { box-shadow: inset 0 0 0 3px #e8590c; }
.cd-web-screen.is-you img { cursor: pointer; }
.cd-web-screen.is-you:focus-visible { box-shadow: inset 0 0 0 4px #e8590c; }
.cd-web-empty { margin: 0; padding: 44px 20px; text-align: center; color: #6b7280; font-size: 14px; }
.cd-web-tools { display: flex; flex-wrap: wrap; gap: 6px; padding: 8px 12px; border-top: 1px solid #efece7; }
.cd-web-in { flex: 1 1 200px; min-width: 0; font: inherit; font-size: 14px; border: 1px solid #d9d6cf; border-radius: 999px; padding: 7px 12px; outline: none; }
.cd-web-in:focus { border-color: #1f1e1d; }
.cd-web-tools button { border: 1px solid #d9d6cf; background: #fff; color: #1f1e1d; border-radius: 999px; padding: 6px 11px; font: 600 13px Inter, system-ui, sans-serif; cursor: pointer; }
.cd-web-foot { display: flex; align-items: center; gap: 12px; padding: 10px 12px 10px 14px; border-top: 1px solid #efece7; }
.cd-web-foot p { flex: 1; margin: 0; font-size: 13px; color: #6b7280; }
.cd-web-foot .cd-web-err { color: #b42318; }
.cd-web-foot button { border-radius: 999px; padding: 9px 18px; font: 600 14px Inter, system-ui, sans-serif; cursor: pointer; white-space: nowrap; }
@media (max-width: 640px) { .cd-web { width: calc(100% - 20px); margin-top: 8px; } .cd-web-screen img { max-height: 40vh; } .cd-web-foot { flex-wrap: wrap; } }
/* While you have control (and on a phone, while the view is open), the view takes the chat's place, so no cut-off strip of
   the chat shows under it; the message box stays at the bottom. Closing the view (×) brings the chat back. */
.cd:has(.cd-web-screen.is-you) > .cd-log { display: none; }
.cd:has(.cd-web-screen.is-you) > .cd-composewrap { margin-top: auto; }
@media (max-width: 640px) { .cd:has(.cd-web) > .cd-log { display: none; } .cd:has(.cd-web) > .cd-composewrap { margin-top: auto; } .cd:has(.cd-web) .cd-web-screen img { max-height: 46vh; } }
.cd-sign-save { display: flex; align-items: flex-start; gap: 8px; text-align: left; font-size: 13px; color: #4b5563; margin: 12px 4px 0; cursor: pointer; }
/* Gloopy's card form (2026-11-09): saved cards to pick from, and the expiry next to the security code. */
.cd-pay-pick { display: flex; flex-direction: column; gap: 6px; margin: 10px 0 4px; text-align: left; }
.cd-pay-opt { display: flex; align-items: center; gap: 8px; padding: 10px 12px; border: 1px solid #e5e2dc; border-radius: 12px; background: #fff; font-size: 14px; cursor: pointer; }
.cd-pay-opt small { margin-left: auto; color: #6b7280; }
.cd-pay-two { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.cd-pay-two > div { min-width: 0; }
/* Gloopy's webhook card (2026-11-09): its address and key, to copy. */
.cd-hook-v { display: block; text-align: left; word-break: break-all; user-select: all; background: #fff; border: 1px solid #e5e2dc; border-radius: 10px; padding: 9px 12px; margin: 4px 0 6px; font-size: 12.5px; }
.cd-hook-show { display: block; width: 100%; margin: 4px 0 6px; font: inherit; font-size: 14px; font-weight: 600; border-radius: 999px; padding: 10px 0; cursor: pointer; }
.cd-hook-how { text-align: left; font-size: 12.5px; color: #6b7280; margin: 8px 4px 0; }
.cd-hook-how code { font-size: 12px; }
/* Gloopy's files (2026-11-09): chips for files attached to a message, and a card for a file Gloopy made. */
.cd-attach-list, .cd-user-files { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 8px; }
.cd-user-files { justify-content: flex-end; }
.cd-file-chip { display: inline-flex; align-items: center; gap: 6px; max-width: 280px; padding: 6px 10px; border: 1px solid #e5e2dc; border-radius: 12px; background: #fff; color: #1f1e1d; font: inherit; font-size: 13px; cursor: pointer; }
.cd-file-chip.is-up { opacity: .6; cursor: default; }
.cd-file-n { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cd-file-chip small { color: #6b7280; flex: none; }
.cd-file-chip button { border: 0; background: none; font-size: 16px; line-height: 1; padding: 0 0 0 2px; color: #6b7280; cursor: pointer; }
.cd-filecard { display: flex; align-items: center; gap: 12px; max-width: 460px; margin: 8px 0; padding: 12px 14px; border: 1px solid #e5e2dc; border-radius: 16px; background: #fff; }
.cd-filecard-icon { position: relative; flex: none; width: 40px; height: 48px; display: flex; align-items: center; justify-content: center; border-radius: 8px; background: #f3f1ec; color: #4b5563; }
.cd-filecard-icon svg { width: 22px; height: 22px; }
.cd-filecard-icon b { position: absolute; bottom: -6px; left: 50%; transform: translateX(-50%); font-size: 9px; letter-spacing: .03em; background: #1f1e1d; color: #fff; border-radius: 4px; padding: 1px 4px; }
.cd-filecard-t { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.cd-filecard-t b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; }
.cd-filecard-t small { color: #6b7280; font-size: 12.5px; }
.cd-filecard-get { flex: none; font: inherit; font-size: 14px; font-weight: 600; border-radius: 999px; padding: 8px 16px; cursor: pointer; }
.cd-sign-save input { margin-top: 2px; }
/* GLOOPY'S PAGES (2026-11-09): the card in the chat, and the page opened over the chat. */
.cd-pagecard { display: flex; align-items: center; gap: 12px; border: 1px solid #e5e3dd; border-radius: 14px; background: #fff; padding: 12px 14px; margin: 10px 0; }
.cd-pagecard-ic { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 10px; background: #f4f2ee; color: #1f1e1d; flex: none; }
.cd-pagecard-txt { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.cd-pagecard-txt b { font-size: 15px; color: #1f1e1d; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cd-pagecard-txt span { font-size: 13px; color: #6b7280; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cd-pagecard-open { border-radius: 999px; padding: 8px 18px; font: 600 14px Inter, system-ui, sans-serif; cursor: pointer; }
.cd-pageview { position: fixed; inset: 0; z-index: 60; display: flex; flex-direction: column; background: #fff; }
.cd-pageview-bar { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border-bottom: 1px solid #ece8e1; background: #faf9f7; font: 14px Inter, system-ui, sans-serif; }
.cd-pageview-ic { display: inline-flex; color: #1f1e1d; }
.cd-pageview-t { font-size: 15px; color: #1f1e1d; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cd-pageview-v { color: #6b7280; font-size: 13px; white-space: nowrap; }
.cd-pageview-x { margin-left: auto; border: 0; background: none; font-size: 26px; line-height: 1; color: #6b7280; cursor: pointer; padding: 0 4px; }
.cd-pageview-frame { flex: 1; width: 100%; border: 0; background: #fff; }
/* Three answers on a phone (Gloopy's approval card): a little more room for each word. */
@media (max-width: 640px) { .cd-approve .cd-secret-btns { gap: 8px; } .cd-approve .cd-secret-btns button { font-size: 14px; padding: 11px 4px; } }

/* Pictures in the chat box and in your messages; @ file suggestions. */
.cd-compose{position:relative}
.cd-attach{position:absolute;left:8px;bottom:8px;border:0;background:transparent;color:#6b6a68;cursor:pointer;padding:6px;border-radius:8px}
.cd-attach:hover{background:#f3f1ec;color:#1f1e1d}
.cd-compose textarea{margin-bottom:30px}
.cd-pics{display:flex;gap:8px;max-width:760px;width:calc(100% - 40px);margin:6px auto 0;flex-wrap:wrap}
.cd-pic{position:relative;width:64px;height:64px;border-radius:10px;overflow:hidden;border:1px solid #e0dbd2;background:#fff}
.cd-pic img{width:100%;height:100%;object-fit:cover}
.cd-pic button{position:absolute;top:2px;right:2px;width:20px;height:20px;border-radius:50%;border:0;background:rgba(0,0,0,.6);color:#fff;font-size:13px;line-height:20px;padding:0;cursor:pointer}
.cd-user{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.cd-thumbs{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.cd-thumbs img{max-width:180px;max-height:140px;border-radius:12px;border:1px solid #e0dbd2}
.cd-imgnote{font-size:12px;color:#8a8884}
.cd-mention{max-width:760px;width:calc(100% - 40px);margin:6px auto 0;background:#fff;border:1px solid #e0dbd2;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.08);overflow:hidden}
.cd-mention-i{display:block;width:100%;text-align:left;border:0;background:#fff;padding:8px 14px;font:13px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;color:#1f1e1d;cursor:pointer}
.cd-mention-i.on,.cd-mention-i:hover{background:#f3f1ec}

/* Review menu */
.cd-revwrap{position:relative;display:inline-block}
.cd-revmenu{position:absolute;top:calc(100% + 6px);right:0;z-index:20;background:#fff;border:1px solid #e0dbd2;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.12);padding:6px;min-width:240px;display:flex;flex-direction:column}
.cd-revmenu button{border:0;background:#fff;text-align:left;padding:8px 10px;border-radius:8px;cursor:pointer;font:inherit;display:flex;flex-direction:column;gap:2px}
.cd-revmenu button:hover{background:#f3f1ec}
.cd-revmenu b{font-size:14px;color:#1f1e1d;font-weight:600}
.cd-revmenu small{font-size:12px;color:#6b6a68}

/* The repo's environment panel */
.cd-envp{max-width:760px;width:calc(100% - 40px);margin:12px auto;background:#fff;border:1px solid #e0dbd2;border-radius:14px;padding:16px 18px;box-sizing:border-box}
.cd-envp h3{margin:0 0 10px;font-size:15px;color:#1f1e1d}
.cd-envl{display:block;font-size:13px;font-weight:600;color:#1f1e1d;margin:12px 0 6px}
.cd-envl small{display:block;font-weight:400;color:#6b6a68;margin-top:2px}
.cd-envp textarea{width:100%;box-sizing:border-box;font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;border:1px solid #e0dbd2;border-radius:10px;padding:8px 10px;resize:vertical}
.cd-envrow{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid #f0eee8;font-size:13px}
.cd-envrow code{font-weight:600}.cd-envrow span{color:#6b6a68;flex:1}
.cd-envrow button{border:0;background:transparent;color:#b3261e;font-size:16px;cursor:pointer}
.cd-envadd{display:flex;gap:8px;margin-top:8px}
.cd-envadd input{flex:1;min-width:0;border:1px solid #e0dbd2;border-radius:10px;padding:7px 10px;font:13px ui-monospace,SFMono-Regular,Menlo,monospace}
.cd-envfoot{display:flex;align-items:center;gap:12px;margin-top:14px}
.cd-muted{color:#6b6a68;font-size:13px;margin:0}

.cd-autofix.on{background:#e8f5ef;border-color:#a7d7c2;color:#145a43}

/* STEPS, option A without colours (owner, 2026-11-05): grey icon tile, dark verb, code-type target, status on the right. */
.cd-sic{flex:none;width:26px;height:26px;border-radius:8px;background:#f1efea;color:#57534e;display:grid;place-items:center;margin-right:4px}
.cd .cd-cmd-row{gap:8px;color:#1f1e1d}
.cd .cd-cmd-verb{font-weight:600;color:#1f1e1d}
.cd .cd-cmd-text{font:13px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;color:#44403c}
.cd-st{margin-left:auto;flex:none;font-size:12px;color:#8a8884;display:inline-flex;align-items:center;gap:5px;padding-left:10px}
.cd-st-ok{color:#57534e;font-size:13px}
.cd-st-bad{color:#b3261e;font-weight:600}
.cd-st-bg i{width:8px;height:8px;border-radius:50%;background:#a8a29e;display:inline-block}
.cd-group-box .cd-cmd-row{padding:9px 0}

.cd .cd-cmd.is-bg .cd-cmd-row, .cd .cd-cmd.is-bg .cd-cmd-verb { color: #1f1e1d; }

/* ENVIRONMENT CHANGE CARD and the network switch (owner, 2026-11-06). */
.cd-envchange-pre{text-align:left;background:#fff;border:1px solid #e5e3dd;border-radius:10px;padding:10px 12px;font-size:12.5px;line-height:1.5;max-height:240px;overflow:auto;white-space:pre-wrap;margin:0 0 4px}
.cd-envnet{display:flex;gap:8px;align-items:flex-start;font-size:13.5px;color:#1f1e1d;margin:2px 0 8px;line-height:1.4}
.cd-envnet input{margin-top:3px}
.cd-secret-icon svg{width:26px;height:26px}
/* ANSWERS, formatted (owner, 2026-11-06). */
.cd-ai ul, .cd-ai ol { margin: 4px 0 10px; padding-left: 22px; }
.cd-ai li { margin: 3px 0; }
.cd-ai h4 { font-size: 15px; margin: 12px 0 6px; }
.cd-ai .cd-cite { display: inline-block; font-size: 11px; line-height: 16px; min-width: 16px; padding: 0 4px; margin: 0 1px; text-align: center; border-radius: 8px; background: #f0ede7; color: #4a4945; text-decoration: none; vertical-align: 1px; }
.cd-ai .cd-cite:hover { background: #e5e1d8; }
/* THE ENVIRONMENT WINDOW (owner, 2026-11-06: like Claude Code's "Edit cloud environment"). */
.cd-em{position:fixed;inset:0;z-index:90;background:rgba(20,20,19,.35);display:flex;align-items:center;justify-content:center;padding:16px}
.cd-em-box{background:#fff;border-radius:18px;box-shadow:0 12px 40px rgba(0,0,0,.18);width:100%;max-width:640px;max-height:calc(100vh - 32px);overflow:auto;padding:20px 22px 18px;text-align:left}
.cd-em-head{display:flex;align-items:center;gap:8px;margin-bottom:16px}
.cd-em-head b{flex:1;font-size:17px;color:#1f1e1d;font-weight:600}
.cd-em-x{border:0;background:none;font-size:24px;line-height:1;color:#1f1e1d;cursor:pointer;padding:2px 6px;border-radius:8px}
.cd-em-x:hover{background:#f0eee8}
.cd-em-rows{display:flex;flex-direction:column;gap:12px}
.cd-em-row{display:flex;align-items:center;justify-content:space-between;text-align:left;font:inherit;border:1px solid #e5e3dd;border-radius:14px;background:#fff;padding:16px 18px;cursor:pointer;color:#1f1e1d}
.cd-em-row:hover{background:#faf9f5}
.cd-em-row span:first-child{display:flex;flex-direction:column;gap:3px;min-width:0}
.cd-em-row b{font-size:15px;font-weight:500}
.cd-em-row small{font-size:13.5px;color:#6b6a66;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cd-em-row span:last-child{font-size:22px;color:#6b6a66}
.cd-em-opts{display:flex;flex-direction:column;border:1px solid #e5e3dd;border-radius:14px;overflow:hidden}
.cd-em-opt{position:relative;display:flex;flex-direction:column;gap:3px;text-align:left;font:inherit;border:0;border-bottom:1px solid #f0eee8;background:#fff;padding:12px 44px 12px 16px;cursor:pointer;color:#1f1e1d}
.cd-em-opt:last-child{border-bottom:0}
.cd-em-opt.on{background:#f0eee8}
.cd-em-opt b{font-size:15px;font-weight:500}
.cd-em-opt small{font-size:13.5px;color:#6b6a66}
.cd-em-opt span{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:#2563eb;font-size:18px}
.cd-em-l{display:block;font-size:14px;font-weight:500;color:#1f1e1d;margin:16px 0 6px}
.cd-em-in{width:100%;box-sizing:border-box;font:inherit;font-size:14.5px;border:1px solid #e5e3dd;border-radius:10px;padding:10px 12px;background:#fff;color:#1f1e1d}
.cd-em-help{font-size:13px;color:#6b6a66;line-height:1.45;margin:6px 0 0}
.cd-em-list{display:flex;flex-direction:column;gap:6px;margin:4px 0 10px}
.cd-em-li{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #e5e3dd;border-radius:10px;padding:8px 12px}
.cd-em-li span{display:flex;flex-direction:column;min-width:0}
.cd-em-li small{font-size:12.5px;color:#6b6a66;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cd-em-li button{border:0;background:none;font-size:18px;color:#6b6a66;cursor:pointer}
.cd-em-addrow{display:flex;gap:8px}
.cd-em-addrow input{flex:1;font:inherit;font-size:14px;border:1px solid #e5e3dd;border-radius:10px;padding:9px 12px}
.cd-em-hdrs{display:grid;grid-template-columns:1.3fr 1fr 1.4fr 28px;gap:6px 8px;align-items:center;margin-top:8px}
.cd-em-hdrs>span{font-size:12.5px;color:#6b6a66}
.cd-em-hdrs input,.cd-em-hdrs select{min-width:0;font:inherit;font-size:14px;border:1px solid #e5e3dd;border-radius:10px;padding:8px 10px;background:#fff}
.cd-em-hdrs button{border:0;background:none;font-size:18px;color:#6b6a66;cursor:pointer}
.cd-em-hdrs button:disabled{opacity:.3}
.cd-em-plus{margin-top:10px}
.cd-em-curl{margin-top:12px;font-size:13.5px;color:#1f1e1d}
.cd-em-curl pre{background:#faf9f5;border:1px solid #e5e3dd;border-radius:10px;padding:10px;font-size:12.5px;white-space:pre-wrap;margin-top:6px}
.cd-em-code{border:1px solid #e5e3dd;border-radius:14px;overflow:hidden}
.cd-em-codebar{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid #f0eee8}
.cd-em-tag{font-size:12.5px;border:1px solid #e5e3dd;border-radius:999px;padding:2px 10px;margin-right:auto}
.cd-em-file{font-size:13.5px;cursor:pointer}
.cd-em-codebar button{border:0;background:none;cursor:pointer;font-size:15px;color:#6b6a66}
.cd-em-code textarea{display:block;width:100%;box-sizing:border-box;min-height:220px;border:0;outline:none;resize:vertical;font:13.5px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;padding:12px 14px;color:#1f1e1d}
.cd-em-codefoot{font-size:12.5px;color:#6b6a66;border-top:1px solid #f0eee8;padding:6px 12px;background:#faf9f5}
.cd-em-vars{display:block;width:100%;box-sizing:border-box;min-height:170px;font:13.5px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;border:1px solid #e5e3dd;border-radius:12px;padding:12px 14px;resize:vertical;color:#1f1e1d}
.cd-em-foot{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:20px}
.cd-em-err{margin-right:auto;font-size:13px;color:#b3261e}
.cd-em-cancel,.cd-em-yes{font:inherit;font-size:14.5px;border-radius:10px;padding:9px 16px;cursor:pointer;border:1px solid #e5e3dd;background:#f5f4f0;color:#1f1e1d}
.cd-em-yes{background:#1f1e1d;border-color:#1f1e1d;color:#fff}
.cd-em-yes:disabled{opacity:.5}
.cd-em-area{min-height:120px;font:12.5px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;resize:vertical}

/* ENVIRONMENTS LIKE CLAUDE CODE'S (owner, 2026-11-06): the picker under the box
   (before the first message), the name box, Archive, and the new-environment card. */
.cd-picks .cd-pick-env { display: inline-flex; align-items: center; gap: 3px; margin-right: auto; padding-left: 8px; color: #6b7280; }
.cd-picks .cd-pick-env svg { flex: none; }
.cd-pick-env select { max-width: 200px; text-overflow: ellipsis; }
/* The starting branch (2026-11-06, like Claude Code), before the environment. */
.cd-picks .cd-pick-branch { display: inline-flex; align-items: center; gap: 3px; padding-left: 8px; color: #6b7280; }
.cd-picks .cd-pick-branch svg { flex: none; }
.cd-pick-branch select { max-width: 160px; text-overflow: ellipsis; }
.cd-em-top { margin: -4px 0 12px; }
.cd-em-archive { display: block; margin: 14px auto 0; border: 0; background: none; color: #b3261e; font: inherit; font-size: 13.5px; cursor: pointer; padding: 6px 10px; border-radius: 8px; }
.cd-em-archive:hover { background: #fbeeed; }
.cd-sure-in { display: block; width: 100%; box-sizing: border-box; margin-top: 12px; font: inherit; font-size: 14px; border: 1px solid #d9d6cf; border-radius: 10px; padding: 9px 12px; color: #1f1e1d; }
.cd-sure-in:focus { outline: none; border-color: #1f1e1d; }
.cd-sure-box.is-text .cd-sure-row .cd-sure-yes { background: #1f1e1d; border-color: #1f1e1d; }
.cd-ne { text-align: left; border: 1px solid #e5e3dd; border-radius: 12px; background: #fff; padding: 12px 14px; margin: 10px 0 8px; }
.cd-ne-head { display: flex; justify-content: space-between; align-items: center; padding-bottom: 8px; border-bottom: 1px solid #f0eee8; }
.cd-ne-head b { font-size: 14.5px; color: #1f1e1d; }
.cd-ne-head span { font-size: 12.5px; color: #6b6a66; }
.cd-ne-sec { padding-top: 10px; }
.cd-ne-sec small { display: block; font-size: 12.5px; color: #6b6a66; margin-bottom: 4px; }
.cd-ne-sec > div { font-size: 13.5px; color: #1f1e1d; }
.cd-ne-plus { color: #1a7f37; font-weight: 700; margin-right: 8px; }
.cd-ne-n { display: inline-block; width: 1.8em; color: #a9a7a1; user-select: none; }

/* REWIND (2026-11-06, like Claude Code): a small button on your messages, and its three choices. */
.cd-user{position:relative}
.cd-rewind{display:block;margin:0 0 4px auto;font:inherit;font-size:12px;color:#6b7280;background:none;border:0;padding:2px 4px;cursor:pointer;opacity:.75}
.cd-rewind:hover,.cd-rewind:focus{opacity:1;text-decoration:underline}
.cd-pick-col{display:flex;flex-direction:column;gap:8px;margin-top:16px}
.cd-pick-col button{font:inherit;font-size:14px;border-radius:10px;padding:9px 14px;cursor:pointer;border:1px solid #e5e3dd;background:#fff;color:#1f1e1d;text-align:left}
.cd-pick-col button:hover{filter:brightness(.96)}
.cd-pick-col .cd-sure-no{text-align:center;color:#6b7280}

/* SEVERAL REPOSITORIES IN ONE CHAT (2026-11-06, like Claude Code): the menu to add one, and a tag for each. */
.cd-picks .cd-pick-repo { display: inline-flex; align-items: center; gap: 3px; padding-left: 8px; color: #6b7280; }
.cd-picks .cd-pick-repo svg { flex: none; }
.cd-pick-repo select { max-width: 150px; text-overflow: ellipsis; }
.cd-repo-chip { display: inline-flex; align-items: center; gap: 2px; margin-left: 6px; padding: 2px 4px 2px 9px; border: 1px solid #e5e3dd; border-radius: 999px; font-size: 12px; color: #4b5563; background: #fff; max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cd-repo-chip button { font: inherit; border: 0; background: none; color: #6b7280; cursor: pointer; padding: 0 4px; }
/* A READ-ONLY REPOSITORY (owner item 5): its label, the box to open any public repository, the patch download. */
.cd-ro { display: inline-flex; align-items: center; font-size: 11px; color: #92400e; background: #fef3c7; border: 1px solid #fde68a; border-radius: 999px; padding: 1px 8px; white-space: nowrap; }
.cd-open { display: flex; flex-direction: column; gap: 6px; width: 100%; max-width: 440px; margin: 4px 0 2px; text-align: left; }
.cd-open label { font-size: 13px; color: #4b5563; }
.cd-open-row { display: flex; gap: 8px; }
.cd-open-row input { flex: 1; min-width: 0; border: 1px solid #ddd8d0; border-radius: 10px; padding: 9px 12px; font: 14px Inter, system-ui, sans-serif; color: #0d1b2a; background: #fff; }
.cd-open-row input:focus { outline: none; border-color: #0d1b2a; }
.cd-open-note { margin: 0; font-size: 12px; color: #6b7280; }
.cd-patch { margin-left: 8px; }
/* CODE REVIEW, PER REPOSITORY (owner item 11): on the Repositories screen. */
.cd-repo-row { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; }
.cd-repo-row .cd-repo { flex: 1 1 260px; min-width: 0; }
.cd-review { display: flex; align-items: center; gap: 6px; font-size: 12px; color: #4b5563; }
.cd-review label { display: flex; align-items: center; gap: 6px; }
.cd-review select { font: inherit; font-size: 12px; padding: 4px 6px; border: 1px solid #ddd8d0; border-radius: 8px; background: #fff; color: #1f2937; }
.cd-review-note code { font-size: 12px; background: #f1eee9; border-radius: 4px; padding: 1px 4px; }
/* NOTIFICATIONS (owner item 8): the panel from the account menu. */
.cd-notify { max-width: 440px; }
.cd-notify-device { margin: 14px 0 6px; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 13px; color: #4b5563; }
.cd-notify-device button { font: inherit; font-size: 14px; border-radius: 10px; padding: 8px 14px; cursor: pointer; border: 1px solid #e5e3dd; background: #fff; color: #1f1e1d; }
.cd-notify-device .cd-notify-go { background: #1f1e1d; border-color: #1f1e1d; color: #fff; }
.cd-notify-on { color: #166534; font-weight: 600; }
.cd-notify-sw { display: flex; gap: 10px; align-items: flex-start; margin-top: 10px; font-size: 13px; color: #6b6a68; line-height: 1.4; cursor: pointer; }
.cd-notify-sw b { color: #1f1e1d; font-weight: 600; }
.cd-notify-sw input { margin-top: 3px; }
.cd-notify-note { margin-top: 10px; font-size: 13px; color: #1f1e1d; }
.cd-sure-row .cd-notify-done { background: #1f1e1d; border-color: #1f1e1d; color: #fff; }
.cd-notify-hint { flex-basis: 100%; font-size: 12px; color: #6b7280; }

/* GLOOPY'S CHAT (owner, 2026-11-09): its figure beside its name on top, and bigger in its welcome. */
.cd-gl-av { display: inline-flex; align-items: center; height: 26px; }
.cd-gl-fig { display: flex; justify-content: center; margin-bottom: 10px; }
.cd-gl-empty p { max-width: 460px; margin-left: auto; margin-right: auto; }
/* A browser step's sentence ("Clicked “Go”", Gloopy, 2026-11-09): plain words, not code. */
.cd-cmd-said { font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
/* Gloopy's cards from a run the owner did not start wait 30 minutes; one not answered in time says so (the audit, 2026-11-10). */
.cd-card-until{font-size:12.5px;color:#8a6a00;margin:0 0 10px;text-align:left}
.cd-card-expired{font-size:13px;color:#6b6a66;background:#f1efe9;border-radius:8px;padding:6px 10px;margin:4px 0 0;text-align:left}
/* What a request held for the owner's OK sends. */
.cd-approve-body{margin:2px 0 12px;max-height:200px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}
/* The sign-in card's other ways (the audit, 2026-11-10): the login you saved, and a warning when the page may be fake. */
.cd-sign-saved{display:block;width:100%;margin:2px 0 4px;font:inherit;font-size:15px;font-weight:600;border-radius:999px;padding:11px 12px;cursor:pointer;overflow-wrap:anywhere}
.cd-sign-saved:disabled{opacity:.6;cursor:default}
/* Three buttons on the sign-in card (Not now, Take over, Sign in) fit a phone. */
@media (max-width: 640px) { .cd-signin .cd-secret-btns { gap: 8px; } .cd-signin .cd-secret-btns button { font-size: 14px; padding: 11px 4px; } }
.cd-sign-or{font-size:12.5px;color:#8a8984;margin:6px 0 2px;text-align:center}
.cd-sign-warn{font-size:13.5px;line-height:1.45;text-align:left;border-radius:10px;padding:8px 12px;margin:0 0 10px}
.cd-sign-warn.is-danger{color:#8c1d18;background:#fdecea;border:1px solid #f5c2bd}
.cd-sign-warn.is-caution{color:#7a5a00;background:#fdf6e3;border:1px solid #f0dfaa}
.cd-sign-code{letter-spacing:.2em;font-size:18px;text-align:center}
/* Your schedules, from /schedules (the audit, 2026-11-10): each with Run now and Pause, Pause all, and the recent runs. */
.cd-sched{border:1px solid #e5e3dd;border-radius:18px;padding:16px 18px;margin:10px 0;background:#faf9f5}
.cd-sched-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.cd-sched-head b{font-size:16px;color:#1f1e1d}
.cd-sched-paused{font-size:13.5px;color:#7a5a00;background:#fdf6e3;border:1px solid #f0dfaa;border-radius:10px;padding:7px 11px;margin:0 0 8px}
.cd-sched-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid #ecebe6}
.cd-sched-row.is-paused .cd-sched-t{opacity:.6}
.cd-sched-t{display:flex;flex-direction:column;min-width:0}
.cd-sched-t b{font-size:14.5px;color:#1f1e1d;overflow-wrap:anywhere}
.cd-sched-t small{font-size:12.5px;color:#6b6a66;margin-top:2px;overflow-wrap:anywhere}
.cd-sched-btns{display:flex;gap:6px;flex-shrink:0}
.cd-sched-btn{font:inherit;font-size:13px;font-weight:600;border-radius:999px;padding:6px 12px;cursor:pointer}
.cd-sched-btn:disabled{opacity:.5;cursor:default}
.cd-sched-none{font-size:13.5px;color:#6b6a66;margin:4px 0}
.cd-sched-log{border-top:1px solid #ecebe6;margin-top:6px;padding-top:8px;font-size:12.5px;color:#6b6a66;line-height:1.6}
.cd-sched-log small{display:block;font-weight:600;color:#4b4a46;margin-bottom:2px}
@media (max-width: 640px) { .cd-sched-row { flex-direction: column; align-items: stretch; } .cd-sched-btns { justify-content: flex-start; } }
/* Tables in answers (the audit, 2026-11-10): scrolled sideways when wide. */
.cd-table{overflow-x:auto;margin:8px 0 10px;border:1px solid #e5e3dd;border-radius:10px}
.cd-table table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.45}
.cd-table th,.cd-table td{padding:7px 11px;text-align:left;vertical-align:top;border-bottom:1px solid #ecebe6}
.cd-table th{background:#f4f3ef;font-weight:600;color:#1f1e1d;white-space:nowrap}
.cd-table tr:last-child td{border-bottom:0}
/* A file's preview over the chat, and where Gloopy is signed in (the audit, 2026-11-10). */
.cd-filecard-view{margin-right:6px}
.cd-view{position:fixed;inset:0;z-index:60;background:rgba(20,20,18,.55);display:flex;align-items:center;justify-content:center;padding:16px}
.cd-view-box{background:#fff;border-radius:16px;width:min(980px,100%);height:min(88vh,1100px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.25)}
.cd-view-bar{display:flex;align-items:center;gap:10px;padding:10px 12px 10px 16px;border-bottom:1px solid #ecebe6}
.cd-view-bar b{flex:1;min-width:0;font-size:14.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cd-view-x{font:inherit;font-size:22px;line-height:1;width:34px;height:34px;border:0;border-radius:999px;background:transparent;cursor:pointer;color:#4b4a46}
.cd-view-x:hover{background:#f1efe9}
.cd-view-body{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;background:#f4f3ef}
.cd-view-body iframe{width:100%;height:100%;border:0;background:#fff}
.cd-view-body img{max-width:100%;max-height:100%;object-fit:contain}
.cd-signins-saved{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 0}
/* A card's warning, and a card one of the owner's rules asked for (the docs, 2026-11-10). */
.cd-card-warn{display:inline-block;font-size:12.5px;font-weight:600;color:#8c1d18;background:#fdecea;border-radius:999px;padding:3px 10px;margin:0 0 8px}
.cd-card-rule{font-size:12.5px;color:#6b6a66;margin:0 0 8px}
/* A schedule's task, and how each run went (the docs, 2026-11-10). */
.cd-sched-task{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12.5px;color:#6b6a66;margin-top:2px;white-space:pre-wrap}
.cd-sched-del{color:#8c1d18}
.cd-run-ok{color:#1d6b3a;font-weight:600}
.cd-run-bad{color:#8c1d18;font-weight:600}
.cd-run-wait{color:#8a5a00;font-weight:600}
.cd-sched-btns{flex-wrap:wrap;justify-content:flex-end;max-width:56%}
@media (max-width: 640px) { .cd-sched-btns { max-width: none; justify-content: flex-start; } }
.cd-note .cd-resume{font:inherit;font-size:13px;font-weight:600;border-radius:999px;padding:5px 14px;margin-left:8px;cursor:pointer;vertical-align:middle}
