.scoring-canvas { --canvas-human: #187868; --canvas-ai: #436db4; --canvas-score: #9a650e; min-width: 0; }
.scoring-canvas-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 12px 0 6px; }
.scoring-canvas-toolbar button { min-height: 36px; }
.scoring-canvas-toolbar select { width: auto; max-width: 260px; min-height: 36px; }
.scoring-canvas-percent { min-width: 48px; text-align: center; font-variant-numeric: tabular-nums; color: #526176; }
.scoring-canvas-help { margin: 4px 0 12px; color: #607088; font-size: 13px; line-height: 1.6; }
.scoring-canvas-viewport { position: relative; overflow: hidden; overflow-anchor: none; height: min(76vh, 850px); min-height: 500px; border: 1px solid #cfd9e4; border-radius: 14px; background-color: #f4f7fa; background-image: radial-gradient(#c6d0dd 1px, transparent 1px); background-size: 20px 20px; touch-action: none; cursor: grab; isolation: isolate; }
.scoring-canvas-viewport:focus-visible { outline: 3px solid #93c5fd; outline-offset: 2px; }
.scoring-canvas-viewport.is-dragging { cursor: grabbing; }
.scoring-canvas-gesture-surface { position: absolute; inset: 0; touch-action: none; }
.scoring-canvas-world { position: absolute; top: 0; left: 0; overflow-anchor: none; transform-origin: 0 0; pointer-events: none; }
.scoring-canvas-edges { position: absolute; top: 0; left: 0; overflow: visible; pointer-events: none; z-index: 0; }
.scoring-canvas-parent-edge { fill: none; stroke: #71859a; stroke-width: 1.8; }
.scoring-canvas-parent-edge.is-warning { stroke: #c34f4f; stroke-dasharray: 6 4; }
.scoring-canvas-parent-edge.is-context { stroke: #156f61; stroke-width: 3.3; }
.scoring-canvas-score-edge { fill: none; stroke: #b28539; stroke-width: 1.8; stroke-dasharray: 4 5; }
.scoring-canvas-score-edge.is-selected { stroke: #875908; stroke-width: 3; }
.scoring-canvas-edge-label { fill: #80580e; font: 12px system-ui, sans-serif; paint-order: stroke; stroke: #f4f7fa; stroke-width: 4px; stroke-linejoin: round; }
.scoring-message, .scoring-canvas-card { position: absolute; box-sizing: border-box; z-index: 1; border-radius: 12px; background: #fff; box-shadow: 0 3px 12px #243c5e0b; transition: box-shadow .12s ease, border-color .12s ease; pointer-events: auto; }
.scoring-message { border: 1px solid #adc0dd; border-top: 4px solid var(--canvas-ai); padding: 12px; cursor: auto; touch-action: none; }
.scoring-message-user { border-color: #a3cbbf; border-top-color: var(--canvas-human); background: #fbfefc; }
.scoring-message-system, .scoring-message-tool, .scoring-message-unknown { border-top-color: #8e96a2; background: #fafafa; }
.scoring-message-head { display: flex; align-items: start; justify-content: space-between; gap: 8px; margin-bottom: 6px; font-size: 14px; }
.scoring-message-identity { display: inline-flex; align-items: center; gap: 9px; min-width: 0; }
.scoring-message-identity strong { font-weight: 600; }
.scoring-message-avatar { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 30px; width: 30px; height: 30px; border-radius: 50%; background: #edf2fb; color: #5576a9; }
.scoring-message-avatar[data-icon="user"] { color: #387c6e; background: #eaf4ef; }
.scoring-message-avatar svg { width: 21px; height: 21px; }
.scoring-message-head button { flex-shrink: 0; padding: 3px 7px; min-height: 28px; font-size: 12px; }
.scoring-message-model { color: #4b6081; font-size: 12px; overflow-wrap: anywhere; margin-bottom: 8px; }
.scoring-message-reading { font-size: 14px; line-height: 1.65; overflow-wrap: anywhere; touch-action: pan-y; cursor: grab; }
.scoring-message-original { white-space: pre-wrap; }
.scoring-message .thinking-content { margin: 0; }
.scoring-message [hidden] { display: none !important; }
.scoring-message-reading p { margin: 0 0 8px; }
.scoring-message-reading details { margin-top: 8px; }
.thinking-content .thinking-reasoning { margin: 0; color: #6c7888; }
.thinking-content .thinking-reasoning + .thinking-reasoning { margin-top: 7px; }
.thinking-content .thinking-reasoning > summary { display: inline-flex; align-items: center; gap: 7px; list-style: none; cursor: pointer; font-size: 13px; font-weight: 400; line-height: 1.7; color: #6c7888; }
.thinking-content .thinking-reasoning > summary::-webkit-details-marker { display: none; }
.thinking-content .thinking-reasoning > summary::before { content: ''; width: 5px; height: 5px; border-right: 1.2px solid currentColor; border-bottom: 1.2px solid currentColor; transform: rotate(-45deg); transition: transform .12s ease; }
.thinking-content .thinking-reasoning[open] > summary::before { transform: rotate(45deg); }
.thinking-content .thinking-reasoning .thinking-reasoning-body { margin-top: 7px; padding-left: 12px; border-left: 2px solid #e2e7ed; color: #6c7888; font-size: 13px; font-weight: 300; line-height: 1.75; }
.thinking-content .thinking-reasoning + .thinking-final { margin-top: 11px; }
.thinking-content .thinking-original > summary { color: #7d899a; font-size: 12px; font-weight: 400; cursor: pointer; }
.thinking-content .thinking-original-body, .thinking-content .thinking-original-field { margin-top: 8px; font-size: 13px; }
.scoring-message > [data-scoring-action="expand-message"] { margin: 10px 0 0; font-size: 12px; }
.scoring-message-provenance { border-top: 1px solid #e6ebf2; padding-top: 8px; margin-top: 12px; color: #66768c; font-size: 12px; }
.scoring-message-provenance summary { cursor: pointer; }
.scoring-message-provenance p { overflow-wrap: anywhere; margin: 6px 0 0; }
.scoring-message-warning, .scoring-message-tail { margin: 6px 0 10px; padding: 7px 9px; border-radius: 7px; background: #fff6e6; color: #805314; font-size: 12px; line-height: 1.6; }
.scoring-message-tail { border: 1px dashed #d7b878; }
.scoring-message.is-context { border-color: #1b8c76; box-shadow: 0 0 0 3px #32a08b33; }
.scoring-message.is-branch-muted { opacity: .48; }
.scoring-message.is-branch-muted:focus-within, .scoring-message.is-branch-muted:hover { opacity: 1; }
.scoring-canvas-card { border: 1px solid #d9bb87; border-left: 4px solid #af8130; padding: 12px; cursor: auto; touch-action: pan-y; }
.scoring-canvas-card.is-selected { border-color: #9a650e; box-shadow: 0 0 0 3px #c28a2d36; }
.scoring-canvas-card.is-submitted { border-left-color: #278268; }
.scoring-canvas-card.is-dirty { border-left-color: #cc8d21; }
.scoring-canvas-card-title { width: 100%; text-align: left; background: #fff9ee; color: #7d560f; padding: 8px 10px; margin-bottom: 4px; font-weight: 650; }
.scoring-canvas-context { margin: 6px 0 12px; color: #695c42; font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
.scoring-canvas-card > .score-card, .scoring-canvas-card > .item-score-card { margin: 0; border: 0; padding: 0; box-shadow: none; background: transparent; }
.scoring-canvas-card .dimension { min-width: 0; }
.scoring-canvas-card .scale-grid, .scoring-canvas-card .scale-list { display: flex; flex-wrap: wrap; }
.scoring-canvas-card .scale-option { flex: 1 1 52px; }
.scoring-canvas-card input, .scoring-canvas-card textarea, .scoring-canvas-card select { max-width: 100%; }
.scoring-canvas-issues { margin-top: 12px; font-size: 13px; }
.scoring-canvas-issues summary { cursor: pointer; color: #66768c; }
.scoring-canvas.is-narrow .scoring-canvas-card { border-left-width: 1px; border-top: 4px solid #af8130; }
.scoring-canvas.is-narrow .scoring-canvas-viewport { touch-action: pan-y; }
.scoring-canvas.is-narrow .scoring-canvas-card { max-height: calc(70vh - 72px); overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; touch-action: pan-y; }
@media (max-width: 720px) {
  .scoring-canvas-toolbar { gap: 6px; }
  .scoring-canvas-toolbar button { padding-inline: 9px; }
  .scoring-canvas-toolbar select { max-width: 100%; }
  .scoring-canvas-viewport { min-height: 440px; height: 70vh; border-radius: 10px; }
  .scoring-canvas-help { font-size: 12px; }
}

/* The scoring workspace fills the browser; information floats over the world. */
#app.canvas-work-open { position: fixed; inset: 0; width: 100%; height: 100%; overflow: hidden; }
#app.canvas-work-open > .app-header, #app.canvas-work-open > .environment-banner { display: none; }
#app.canvas-work-open > .fullscreen-work-shell { position: fixed; inset: 0; width: 100%; height: 100%; max-width: none; padding: 0; margin: 0; overflow: hidden; background: #f4f7fa; }
.fullscreen-work-shell { -webkit-user-select: none; user-select: none; }
.fullscreen-work-shell input:not([type="radio"]):not([type="checkbox"]), .fullscreen-work-shell textarea, .fullscreen-work-shell [contenteditable="true"] { -webkit-user-select: text; user-select: text; }
.fullscreen-work-shell .work-surface, .fullscreen-work-shell .rounds-pane[data-view="message"], .fullscreen-work-shell .flow-assessments,
.fullscreen-work-shell .flow-assessment-unit, .fullscreen-work-shell .scoring-canvas { width: 100%; height: 100%; min-width: 0; margin: 0; padding: 0; }
.fullscreen-work-shell .rounds-pane[data-view="message"], .fullscreen-work-shell .flow-assessments { display: block; }
.fullscreen-work-shell [hidden] { display: none !important; }
.fullscreen-work-shell .scoring-canvas-viewport { width: 100%; height: 100%; min-height: 0; border: 0; border-radius: 0; touch-action: pan-y; }
.fullscreen-work-shell .scoring-canvas-toolbar { position: fixed; right: 18px; bottom: 18px; z-index: 90; max-width: calc(100vw - 440px); gap: 6px; margin: 0; padding: 9px; border: 1px solid #d3dfeb; border-radius: 13px; background: #fffffff2; backdrop-filter: blur(12px); box-shadow: 0 5px 24px #22344b16; }
.fullscreen-work-shell .scoring-canvas-toolbar button { min-height: 32px; padding: 6px 10px; }
.fullscreen-work-shell .scoring-canvas-help { display: none; }
.fullscreen-work-shell .scoring-canvas-issues { position: fixed; top: 12px; right: 14px; z-index: 80; max-width: 350px; max-height: 45vh; overflow: auto; padding: 9px 12px; margin: 0; border-radius: 10px; background: #ffffffed; box-shadow: 0 4px 16px #22344b12; }
.fullscreen-work-shell .scoring-message { padding: 13px 15px; border-top-width: 1px; border-radius: 15px; }
.fullscreen-work-shell .scoring-message-reading { font-size: 15px; line-height: 1.7; }
.fullscreen-work-shell .scoring-message-reading .thinking-final { font-size: 15px; font-weight: 400; line-height: 1.75; }
.fullscreen-work-shell .scoring-message-model { margin-left: 39px; margin-top: -3px; margin-bottom: 9px; font-size: 11px; color: #7b8899; }
.fullscreen-work-shell .scoring-message-head { margin-bottom: 5px; }
.fullscreen-work-shell .scoring-canvas-card { padding: 8px 14px; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; touch-action: pan-y; }
.fullscreen-work-shell .scoring-canvas-card-title { margin: 0 0 3px; padding: 4px 8px; font-size: 13px; line-height: 1.45; }
.fullscreen-work-shell .scoring-canvas-context { font-size: 11px; margin: 3px 0 4px; padding-right: 105px; }
.fullscreen-work-shell .scoring-canvas-card .item-card-header { justify-content: flex-end; min-height: 0; }
.fullscreen-work-shell .scoring-canvas-card .item-card-header > div { display: none; }
.fullscreen-work-shell .scoring-canvas-card .item-card-header > .tag { margin-top: -28px; margin-right: 4px; }
.fullscreen-work-shell .scoring-canvas-card .item-save-row { margin: 1px 0 6px; min-height: 24px; }
.fullscreen-work-shell .scoring-canvas-card .item-save-row button { padding: 2px 6px; min-height: 24px; font-size: 11px; }
.fullscreen-work-shell .item-score-card .score-field { display: grid; grid-template-columns: minmax(94px,18%) minmax(0,1fr); align-items: start; gap: 4px 12px; margin-bottom: 6px; }
.fullscreen-work-shell .item-score-card .score-question { min-width: 0; padding-top: 6px; }
.fullscreen-work-shell .item-score-card .score-control { min-width: 0; }
.fullscreen-work-shell .item-score-card .score-field > .form-message { grid-column: 2; }
.fullscreen-work-shell .item-score-card .score-title { margin-bottom: 2px; font-size: 13px; overflow-wrap: anywhere; }
.fullscreen-work-shell .item-score-card .score-description { font-size: 11px; margin: 3px 0 0; line-height: 1.55; overflow-wrap: anywhere; white-space: pre-wrap; }
.fullscreen-work-shell .scoring-canvas-card .choice-list[role="radiogroup"] { grid-template-columns: repeat(3,minmax(0,1fr)); }
.fullscreen-work-shell .scoring-canvas-card .choice-list[role="group"] { grid-template-columns: repeat(4,minmax(0,1fr)); }
.fullscreen-work-shell .scoring-canvas-card .choice { padding: 5px 8px; font-size: 12px; min-width: 0; min-height: 32px; gap: 6px; }
.fullscreen-work-shell .scoring-canvas-card .choice span { overflow-wrap: anywhere; }
.fullscreen-work-shell .item-score-card .scale-list { gap: 6px; }
.fullscreen-work-shell .item-score-card .scale-option { display: grid; grid-template-columns: auto auto; justify-content: center; align-items: center; gap: 2px 6px; padding: 4px 7px; min-width: 45px; font-size: 12px; line-height: 1.4; }
.fullscreen-work-shell .item-score-card .scale-option small { grid-column: 1 / -1; margin: 0; line-height: 1.45; overflow-wrap: anywhere; }
.fullscreen-work-shell .scoring-canvas-card .item-submit-row { margin-top: 0; padding-top: 5px; }
.fullscreen-work-shell .scoring-canvas-card .item-submit-row .primary { padding: 4px 13px; font-size: 12px; }
.fullscreen-control-panel { position: fixed; left: 16px; bottom: 16px; z-index: 100; width: 365px; max-width: calc(100vw - 32px); max-height: calc(100vh - 32px); border: 1px solid #cedbe8; border-radius: 15px; background: #fffffff3; backdrop-filter: blur(14px); box-shadow: 0 8px 32px #22344b1c; padding: 13px 15px; overflow: auto; cursor: auto; }
.fullscreen-control-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; touch-action: none; cursor: move; }
.fullscreen-control-heading > div { min-width: 0; }
.fullscreen-control-heading strong { display: block; font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fullscreen-task-caption { margin-top: 3px; font-size: 11px; color: #6b7e97; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fullscreen-control-heading button { flex-shrink: 0; padding: 5px 7px; font-size: 11px; }
.fullscreen-control-badges { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; margin-top: 9px; font-size: 11px; }
.fullscreen-save-status { font-size: 11px; color: #607b70; }
.fullscreen-save-status.has-error { color: #b25043; }
.fullscreen-control-body { display: grid; gap: 10px; margin-top: 11px; }
.fullscreen-control-panel .work-toolbar { position: static; background: transparent; padding: 0; margin: 0; border: 0; box-shadow: none; }
.fullscreen-control-panel .work-toolbar > .between > div:first-child { display: none; }
.fullscreen-control-panel .work-toolbar .row { width: 100%; justify-content: space-between; gap: 6px; }
.fullscreen-control-panel .work-toolbar .row > div:first-child { display: none; }
.fullscreen-control-panel .work-toolbar button { font-size: 11px; padding: 5px 9px; }
.fullscreen-control-panel .work-target-tabs { display: flex; padding: 0; margin: 0; gap: 6px; background: transparent; border: 0; }
.fullscreen-control-panel .work-target-tabs button { flex: 1; font-size: 11px; padding: 7px 8px; border-radius: 8px; }
.fullscreen-control-panel .work-target-tabs .tag { font-size: 10px; padding: 2px 4px; }
.fullscreen-task-information { font-size: 11px; color: #627791; }
.fullscreen-task-information > summary { cursor: pointer; }
.fullscreen-task-information .notice { font-size: 11px; padding: 9px; margin: 9px 0; }
.fullscreen-task-information .stack { gap: 6px; margin-top: 10px; }
.fullscreen-control-panel .work-completion { margin-bottom: 8px; }
.fullscreen-exit-links { display: flex; gap: 15px; font-size: 11px; }
.fullscreen-exit-links { align-items: center; }
.fullscreen-exit-links button { padding: 0; color: #4b6e98; font-size: 11px; border: 0; }
.fullscreen-workload-summary { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; margin-top: 9px; }
.fullscreen-workload-summary > div { display: flex; align-items: center; justify-content: space-between; gap: 6px; padding: 7px; border-radius: 6px; background: #f1f5f9; }
.fullscreen-workload-summary strong { font-size: 12px; color: #385d77; font-variant-numeric: tabular-nums; }
.fullscreen-control-panel.is-collapsed { width: 305px; }
.fullscreen-work-shell .rounds-pane:is([data-view="product"],[data-view="conversation"]) { height: 100%; overflow: auto; padding: 30px 40px 150px; }
.fullscreen-work-shell .rounds-pane:is([data-view="product"],[data-view="conversation"]) .assessment-unit { max-width: 1400px; width: 100%; margin: 0 auto; grid-template-columns: minmax(330px,1fr) 36px minmax(450px,620px); }
@media (max-width: 1100px) {
  .fullscreen-work-shell .scoring-canvas-toolbar { max-width: calc(100vw - 390px); }
  .fullscreen-control-panel { width: 335px; }
  .fullscreen-work-shell .scoring-canvas-card .choice-list[role="group"] { grid-template-columns: repeat(auto-fit,minmax(90px,1fr)); }
}
@media (max-width: 1000px) {
  .fullscreen-work-shell .rounds-pane:is([data-view="product"],[data-view="conversation"]) { padding-inline: 24px; }
  .fullscreen-work-shell .rounds-pane:is([data-view="product"],[data-view="conversation"]) .assessment-unit { grid-template-columns: minmax(0,1fr); gap: 16px; }
  .fullscreen-work-shell .rounds-pane:is([data-view="product"],[data-view="conversation"]) .round-connector-gutter { display: none; }
}
@media (min-width: 721px) {
  .fullscreen-work-shell .scoring-canvas-card-title { padding-right: 210px; }
  .fullscreen-work-shell .scoring-canvas-card .item-score-card[data-read-only="false"] .item-save-row { position: absolute; top: 9px; right: 18px; max-width: 45%; margin: 0; gap: 8px; }
}
@media (max-width: 720px) {
  .fullscreen-control-panel { top: 12px; bottom: auto; left: 12px; width: min(365px,calc(100vw - 24px)); max-width: calc(100vw - 24px); padding: 10px 12px; max-height: 60vh; }
  .fullscreen-control-panel.is-collapsed { width: min(365px,calc(100vw - 24px)); }
  .fullscreen-control-heading strong { font-size: 12px; }
  .fullscreen-control-badges { margin-top: 6px; }
  .fullscreen-work-shell .scoring-canvas-toolbar { left: 12px; right: 12px; bottom: 12px; max-width: none; gap: 4px; padding: 7px; }
  .fullscreen-work-shell .scoring-canvas-toolbar button { font-size: 11px; padding: 5px 7px; min-height: 30px; }
  .fullscreen-work-shell .scoring-canvas-issues { top: 105px; right: 12px; max-width: calc(100vw - 24px); }
  .fullscreen-work-shell .scoring-canvas-card { padding: 11px 13px; }
  .fullscreen-work-shell .item-score-card .score-field { display: block; }
  .fullscreen-work-shell .item-score-card .score-question { padding-top: 0; margin-bottom: 6px; }
  .fullscreen-work-shell .scoring-canvas-context { padding-right: 0; }
  .fullscreen-work-shell .scoring-canvas-card .choice { min-height: 44px; padding: 8px; }
  .fullscreen-work-shell .item-score-card .scale-option { min-height: 44px; }
  .fullscreen-work-shell .scoring-canvas-card .item-submit-row .primary { min-height: 44px; }
  .fullscreen-work-shell .scoring-canvas-card .choice-list[role="radiogroup"], .fullscreen-work-shell .scoring-canvas-card .choice-list[role="group"] { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .fullscreen-work-shell .scoring-canvas-card .item-card-header > .tag { margin-top: 0; }
  .fullscreen-work-shell .rounds-pane:is([data-view="product"],[data-view="conversation"]) { padding: 115px 15px 125px; }
  .fullscreen-work-shell .rounds-pane:is([data-view="product"],[data-view="conversation"]) .assessment-unit { grid-template-columns: 1fr; gap: 16px; }
}

.semantic-control {display:grid;gap:10px;min-width:0}
.semantic-control textarea {width:100%;resize:vertical;user-select:text;cursor:text;line-height:1.6}
.semantic-units {display:grid;gap:10px}
.semantic-unit {padding:12px;background:#fff;border:1px solid #dbe5f3;border-radius:10px;min-width:0}
.semantic-unit blockquote {margin:0 0 10px;padding-left:10px;border-left:3px solid #9cb8f4;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}
.semantic-unit select {min-width:0;flex:1}

.semantic-control .semantic-source {white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid #b9cdec;border-radius:10px;padding:14px;background:#fff;line-height:2;font-size:14px;cursor:text;user-select:none;-webkit-user-select:none;touch-action:none;min-height:76px}
.semantic-source:focus-visible {outline:2px solid #315fd2;outline-offset:2px}
.semantic-char {border-radius:2px;user-select:none;-webkit-user-drag:none}
.semantic-char.is-coded {text-decoration:underline;text-decoration-color:#77b8a4;text-underline-offset:4px;background:#eef8f2}
.semantic-char.is-selected {background:#b9d4ff;color:#143b83;text-decoration:none}
.semantic-palette {display:grid;gap:6px}
.semantic-label-group {display:flex;gap:6px;flex-wrap:wrap}
.semantic-label-button {padding:7px 9px;font-size:12px;line-height:1.5;text-align:left;border-radius:8px}
.semantic-label-button:disabled {opacity:.55}
.semantic-label-button:not(:disabled):hover {background:#e9f1ff;border-color:#7b9fe5;color:#244ea5}
.semantic-control>p {margin:0}
/* Formal and trial instances share these controls. */
.semantic-control {display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,350px);align-items:start;gap:18px}
.semantic-tools {display:grid;gap:10px;min-width:0}
.semantic-annotations {min-width:0;border-left:1px solid #d9e4f4;padding-left:16px}
.semantic-annotations>h3 {font-size:14px;margin:0 0 6px}
.semantic-counts {font-size:12px;color:#55708f;margin:0 0 12px}
.semantic-group-title {font-size:12px;margin:0 0 8px;color:#2453a0}
.semantic-unit-group {margin-bottom:14px}
.semantic-unit-group .semantic-unit {padding:8px;margin-bottom:6px}
.semantic-unit select {font-size:11px;width:0}
.semantic-excerpt {display:block;width:100%;padding:7px 8px;margin-bottom:7px;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.6;border:0;background:#eff4fb;cursor:pointer}
.scoring-message-reading>.semantic-source {border:0;padding:0;background:transparent;min-height:0;cursor:pointer;white-space:pre-wrap;overflow-wrap:anywhere;user-select:none;-webkit-user-select:none}
.scoring-message-reading>.semantic-source .semantic-char {cursor:text}
.scoring-canvas-viewport,.scoring-message-reading {cursor:default}
.fullscreen-control-heading {cursor:default}
.fullscreen-work-shell .scoring-canvas,.fullscreen-work-shell .scoring-canvas *,.fullscreen-work-shell .fullscreen-control-panel,.fullscreen-work-shell .fullscreen-control-panel * {touch-action:none}
.scoring-canvas-viewport.is-dragging,.scoring-canvas-viewport.is-dragging * {cursor:grabbing!important}
.scoring-canvas.is-narrow .semantic-control {grid-template-columns:minmax(0,1fr)}
.scoring-canvas.is-narrow .semantic-annotations {border-left:0;border-top:1px solid #d9e4f4;padding:12px 0 0}
.scoring-canvas.is-narrow .scoring-canvas-card:has(.semantic-control) {max-height:none;overflow:visible}

/* Submission feedback must not change card geometry or the reading viewport. */
.quiet-submit-feedback .item-card-header>.tag,
.quiet-submit-feedback .item-save-row>.save-indicator,
.quiet-submit-feedback .item-submit-row>.muted {display:none}
.item-submit-row button.primary[data-submit-state="submitted"] {background:#16804a;border-color:#16804a;color:#fff}
.item-submit-row button.primary[data-submit-state="submitted"]:disabled {opacity:1}
.item-submit-row button.primary[data-submit-state="empty"]:disabled {background:#e5e7eb;border-color:#d1d5db;color:#6b7280;opacity:1;cursor:not-allowed}
.item-submit-row button.primary[data-submit-state="modified"] {background:#c43232;border-color:#c43232;color:#fff}
.item-submit-row button.primary[data-submit-state="submitted"]:hover {background:#11683b;border-color:#11683b}
.item-submit-row button.primary[data-submit-state="modified"]:hover {background:#a52727;border-color:#a52727}

.markdown-body {white-space:normal;overflow-wrap:anywhere;line-height:1.75;min-width:0}
.scoring-message-reading>.semantic-source.markdown-body {white-space:normal}

/* One compact tool cluster; every rating remains on the same canvas. */
.fullscreen-control-panel,.fullscreen-control-panel.is-collapsed {left:auto;right:12px;top:12px;bottom:auto;width:330px;max-width:calc(100vw - 24px);padding:10px 12px;border-radius:12px;max-height:calc(100dvh - 24px)}
.fullscreen-control-panel.is-collapsed {width:280px}
.fullscreen-control-body {gap:7px;margin-top:8px}
.fullscreen-control-badges {margin-top:6px;gap:5px}
.fullscreen-control-panel .scoring-canvas-toolbar {position:static;inset:auto;max-width:none;gap:4px;padding:0;border:0;box-shadow:none;background:transparent;backdrop-filter:none}
.fullscreen-control-panel .scoring-canvas-toolbar button {padding:4px 7px;min-height:28px;font-size:11px}
.fullscreen-control-panel .scoring-canvas-toolbar select {width:100%;max-width:100%;min-height:28px;font-size:11px}
.fullscreen-control-panel .scoring-canvas-percent {min-width:34px;font-size:11px}
.fullscreen-control-panel .work-target-tabs button {padding:5px 4px;white-space:nowrap}
.fullscreen-control-panel .work-toolbar .actions {gap:6px}
.canvas-keyboard-hint {font-size:10px;color:#63768d;line-height:1.5;margin:0}
.fullscreen-work-shell .scoring-canvas-issues {top:auto;bottom:12px;right:12px;max-width:330px}
.fullscreen-work-shell .item-score-card .score-field {grid-template-columns:112px minmax(0,1fr);gap:4px 10px}
.semantic-control {grid-template-columns:minmax(0,1fr) minmax(265px,300px);gap:12px}
.semantic-tools {gap:6px}
.semantic-selection-status {margin:0;height:32px;overflow:auto;line-height:16px;font-size:11px;color:#62758b}
.semantic-actions {display:flex;flex-direction:column;align-items:stretch;gap:6px;margin-top:10px;max-width:105px}
.semantic-actions button {padding:5px 8px;font-size:11px;min-height:30px}
.semantic-actions button:first-child {background:#e9f1ff;border-color:#a9c4ef;color:#285ba6}
.semantic-actions button:last-child {background:#fff1e9;border-color:#edc6ad;color:#a15428}
.semantic-palette {gap:5px}
.semantic-label-group {gap:5px}
.semantic-label-button {padding:5px 7px;line-height:1.5;font-size:11px}
.semantic-annotations {padding-left:12px;display:grid;grid-template-columns:1fr auto;gap:5px;min-width:0}
.semantic-list-heading {font-size:12px;font-weight:600;line-height:20px}
.semantic-counts {margin:0;font-size:10px;line-height:20px;white-space:nowrap}
.semantic-units {grid-column:1 / -1;display:block;height:240px;min-height:240px;max-height:240px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;contain:layout;padding-right:4px}
.semantic-unit-group {margin:0 0 8px}
.semantic-group-title {font-size:11px;margin:0 0 4px}
.semantic-unit-group .semantic-unit {padding:5px;margin-bottom:4px;border-radius:7px}
.semantic-excerpt {white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:3px 5px;margin-bottom:4px;font-size:11px;line-height:1.6}
.semantic-unit .actions {gap:5px}
.semantic-unit select {padding:4px;min-height:27px;font-size:10px}
.semantic-unit .danger {padding:3px 6px;min-height:27px;font-size:10px}
.canvas-product-reading {position:absolute;box-sizing:border-box;height:auto;max-height:none;overflow:visible;padding:13px 15px;background:#fff;border-radius:15px;border:1px solid #adc0dd;box-shadow:0 3px 12px #243c5e0b;pointer-events:auto;font-size:15px;line-height:1.75;overflow-wrap:anywhere}
.canvas-product-reading>.scoring-message-head {font-weight:600;color:#436db4;margin-bottom:10px}
.canvas-product-reading.is-selected {border-color:#436db4;box-shadow:0 0 0 3px #436db426}
.scoring-canvas-product-edge {stroke-dasharray:none}
.fullscreen-work-shell .item-score-card[data-score-target="product"] .scale-list {display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:5px}
.scoring-canvas-card.is-summary {border-color:#b9cbdc}
.fullscreen-work-shell .scoring-canvas.is-narrow .item-score-card[data-score-target="product"] .scale-list {grid-template-columns:repeat(5,minmax(0,1fr))}
.scoring-canvas.is-narrow .semantic-units {height:180px;min-height:180px;max-height:180px}
.scoring-canvas.is-narrow .semantic-annotations {display:grid;padding:8px 0 0}
.scoring-canvas.is-narrow .semantic-actions {flex-direction:row;max-width:none;margin-top:6px}
.fullscreen-work-shell .semantic-units,.fullscreen-work-shell .semantic-units * {touch-action:pan-y}
@media(max-width:720px) {
  .fullscreen-control-panel,.fullscreen-control-panel.is-collapsed {width:300px;max-width:calc(100vw - 24px);right:12px;left:auto;top:12px;bottom:auto}
  .fullscreen-control-panel .scoring-canvas-toolbar button {min-height:34px}
}
.fullscreen-control-panel.is-collapsed {width:max-content;max-width:calc(100vw - 24px);padding:8px 11px;border-radius:10px;box-shadow:0 4px 16px #22344b12}
.fullscreen-control-panel.is-collapsed .fullscreen-control-heading button {font-size:12px;padding:0;min-height:20px;line-height:20px}
.fullscreen-control-panel.is-collapsed .fullscreen-save-status:not(.has-error) {display:none}
.fullscreen-control-panel .fullscreen-save-status.has-error {display:block;max-width:240px;margin-top:5px}
.fullscreen-control-heading {justify-content:flex-end}
.markdown-body>:first-child {margin-top:0}
.markdown-body>:last-child {margin-bottom:0}
.markdown-body p {margin:0 0 12px;white-space:pre-wrap}
.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6 {line-height:1.45;margin:18px 0 10px;font-weight:650}
.markdown-body h1 {font-size:1.5em}.markdown-body h2 {font-size:1.3em}.markdown-body h3 {font-size:1.15em}
.markdown-body h4,.markdown-body h5,.markdown-body h6 {font-size:1em}
.markdown-body ul,.markdown-body ol {padding-left:1.6em;margin:10px 0}
.markdown-body li {margin:4px 0}.markdown-body li>p {margin-bottom:5px}
.markdown-body blockquote {margin:12px 0;padding:5px 12px;border-left:3px solid #a8bcdd;background:#f5f8fc}
.markdown-body pre {white-space:pre-wrap;overflow-wrap:anywhere;background:#f0f4fa;border:1px solid #dce4ef;border-radius:8px;padding:12px;margin:12px 0;line-height:1.6}
.markdown-body code {font-family:Consolas,monospace;font-size:.9em;background:#eef2f8;border-radius:4px;padding:1px 4px}
.markdown-body pre code {background:none;padding:0;border-radius:0}
.markdown-table {max-width:100%;margin:12px 0}
.markdown-body table {border-collapse:collapse;width:100%;table-layout:fixed;font-size:.92em}
.markdown-body th,.markdown-body td {border:1px solid #d8e1ef;padding:7px 9px;vertical-align:top;overflow-wrap:anywhere}
.markdown-body th {background:#eef3fa;font-weight:650}
.markdown-body a {color:#2459b5;text-decoration:underline}
.markdown-body hr {border:0;border-top:1px solid #d8e1ef;margin:16px 0}
.markdown-body .task-list-item {list-style:none}.markdown-task {color:#426b9e}
.thinking-reasoning-body.markdown-body {font-size:13px;color:#6d7889}

.contribution-control {min-width:0;padding:3px 0 0}
.contribution-ticks {display:flex;justify-content:space-between;position:relative;margin:0 8px;height:25px;color:#6c7c91;font-size:11px;line-height:16px;user-select:none}
.contribution-ticks>span {position:absolute;top:0;transform:translateX(-50%);white-space:nowrap}
.contribution-ticks>span:nth-child(1) {left:0;transform:none}
.contribution-ticks>span:nth-child(2) {left:25%}
.contribution-ticks>span:nth-child(3) {left:50%}
.contribution-ticks>span:nth-child(4) {left:75%}
.contribution-ticks>span:nth-child(5) {left:100%;transform:translateX(-100%)}
.contribution-ticks>span::after {content:'';position:absolute;top:19px;left:50%;width:1px;height:6px;background:#92a4b8}
.contribution-ticks>span:first-child::after {left:0}
.contribution-ticks>span:last-child::after {left:auto;right:0}
button.contribution-slider,button.contribution-slider:hover {position:relative;display:block;width:100%;height:32px;min-height:32px;margin:0;padding:0 8px;background:transparent;border:0;border-radius:6px;box-shadow:none;cursor:ew-resize;touch-action:none}
.contribution-slider:focus-visible {outline:2px solid #658edc;outline-offset:1px}
.contribution-rail {display:block;position:relative;width:100%;height:7px;border-radius:5px;background:linear-gradient(90deg,#79bea8,#8ba7e8);pointer-events:none}
.contribution-control.is-empty .contribution-rail {background:#e2e8f0}
.contribution-thumb {position:absolute;top:50%;left:var(--ai-share);transform:translate(-50%,-50%);width:18px;height:18px;border-radius:50%;background:white;border:2px solid #476ea7;box-shadow:0 1px 5px #31517a33}
.contribution-thumb[hidden] {display:none}
.contribution-values {display:flex;align-items:center;justify-content:space-between;gap:8px;height:26px;font-size:12px;font-variant-numeric:tabular-nums}
.contribution-human {color:#267764;font-weight:600}.contribution-ai {color:#4267ac;font-weight:600}
.contribution-middle {font-size:11px;color:#8391a3;text-align:center}
.contribution-middle button {padding:2px 6px;min-height:24px;font-size:11px}
.contribution-slider:disabled {cursor:default;opacity:.75}
.scoring-canvas.is-narrow .contribution-ticks {font-size:10px}

/* Keep the reading surface quiet and move the content on one composited layer. */
.scoring-canvas-viewport {background-image:none}
.scoring-canvas-viewport:is(.is-dragging,.is-moving) .scoring-canvas-world {will-change:transform}
.fullscreen-control-panel,.fullscreen-work-shell .scoring-canvas-toolbar,.fullscreen-work-shell .scoring-canvas-issues {backdrop-filter:none;background:#fff}
.scoring-canvas-viewport.is-dragging .scoring-message,.scoring-canvas-viewport.is-dragging .scoring-canvas-card {transition:none}

/* The persistent dock stays one row; secondary details open above it. */
.fullscreen-control-panel.canvas-dock,.fullscreen-control-panel.canvas-dock.is-collapsed {left:50%;right:auto;top:auto;bottom:max(12px,env(safe-area-inset-bottom));transform:translateX(-50%);width:max-content;max-width:calc(100vw - 24px);max-height:none;padding:7px;border-radius:15px;overflow:visible;background:#fff;box-shadow:0 5px 24px #22344b18}
.canvas-dock-row {display:flex;align-items:center;gap:5px;max-width:calc(100vw - 40px);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;white-space:nowrap}
.canvas-dock-row>* {flex-shrink:0}
.dock-jump-zoom {display:flex;align-items:center;gap:5px;font-size:12px;color:#53677e;padding:0 4px;cursor:pointer}
.dock-jump-zoom input {appearance:none;width:26px;height:15px;min-width:26px;padding:0;margin:0;border:0;border-radius:10px;background:#c6ced9;cursor:pointer;position:relative;transition:background .15s}
.dock-jump-zoom input::after {content:'';position:absolute;left:2px;top:2px;width:11px;height:11px;border-radius:50%;background:#fff;transition:transform .15s}
.dock-jump-zoom input:checked {background:#355fd6}
.dock-jump-zoom input:checked::after {transform:translateX(11px)}
.dock-jump-zoom input:focus-visible {outline:2px solid #355fd6;outline-offset:2px}
.canvas-dock .work-toolbar button,.canvas-dock .scoring-canvas-toolbar button {padding:4px 6px!important;font-size:11px!important;min-height:30px!important}
.canvas-dock .work-toolbar .actions,.canvas-dock .scoring-canvas-toolbar {gap:3px!important}
.canvas-dock .scoring-canvas-toolbar {padding-left:5px!important}
.canvas-dock .dock-progress {padding:0 3px!important}
.canvas-dock .dock-speed {gap:3px;padding-left:5px;font-size:11px}
.canvas-dock .dock-speed select {width:51px;min-height:30px;padding:3px;font-size:11px}
.item-note-field {display:flex;align-items:center;gap:8px;margin-top:10px;font-size:12px;color:#66758b}
.item-note-field input {min-width:0;flex:1;padding:7px 9px;font-size:12px}
.canvas-task-note {position:absolute;box-sizing:border-box;padding:16px;background:#fff;border:1px solid #dce5ef;border-radius:12px;pointer-events:auto;z-index:1}
.canvas-dock-row .dock-note-button {background:#f0eaff;border-color:#c9b7ed;color:#653a9c;min-height:34px;padding:6px 10px;border-radius:9px}
.canvas-dock-row .dock-note-button:hover {background:#e5d9fc;border-color:#ad8edb}
.canvas-task-note h3 {font-size:14px;margin:0 0 9px}
.canvas-task-note input {width:100%;box-sizing:border-box}
.task-note-status {display:flex;align-items:center;gap:8px;margin-top:6px}
.canvas-dock .dock-progress {margin:0;padding:0 5px;gap:4px;flex-wrap:nowrap}
.canvas-dock .dock-progress .tag {font-size:11px;background:transparent;color:#53677e;padding:0}
.canvas-dock .work-toolbar .actions,.canvas-dock .scoring-canvas-toolbar {display:flex;flex-wrap:nowrap;gap:5px;align-items:center}
.canvas-dock .scoring-canvas-toolbar {border-left:1px solid #e1e7ef;padding-left:10px}
.canvas-dock .scoring-canvas-toolbar select {width:auto;max-width:145px}
.canvas-dock .work-toolbar button,.canvas-dock .scoring-canvas-toolbar button,.fullscreen-control-panel.canvas-dock .fullscreen-control-heading button {min-height:34px;padding:6px 9px;font-size:12px;line-height:20px;background:#fff;border:1px solid #dce5ef;border-radius:9px;color:#405772;white-space:nowrap}
.canvas-dock-row button:hover {background:#f1f5fb;border-color:#b7c9e0}
.canvas-dock-row button:disabled {opacity:.4}
.task-submit-button {white-space:nowrap}
.canvas-dock-row .task-submit-button {margin-left:4px;min-height:34px;padding:6px 12px;border-radius:9px}
.task-submit-button[data-submit-state="ready"],.canvas-dock-row .task-submit-button[data-submit-state="ready"] {background:#16804a;border-color:#16804a;color:#fff}
.task-submit-button[data-submit-state="ready"]:hover:not(:disabled) {background:#11683b;border-color:#11683b}
.task-submit-button:disabled,.canvas-dock-row .task-submit-button:disabled {background:#e5e7eb;border-color:#d1d5db;color:#6b7280;opacity:1;cursor:not-allowed}
.dock-speed {display:flex;align-items:center;gap:6px;margin:0;border-left:1px solid #e1e7ef;padding-left:10px;font-size:12px;color:#53677e}
.dock-speed select {width:68px;min-height:34px;padding:5px;border:1px solid #dce5ef;border-radius:9px;background:#fff;font-size:12px}
.canvas-dock .fullscreen-control-body {position:absolute;right:0;bottom:calc(100% + 9px);width:310px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 125px);overflow:auto;margin:0;padding:13px;background:#fff;border:1px solid #d3dfeb;border-radius:13px;box-shadow:0 5px 24px #22344b18;box-sizing:border-box}
.canvas-dock .fullscreen-save-status {display:none}
.canvas-dock .fullscreen-save-status.has-error {display:block;position:absolute;z-index:1;bottom:calc(100% + 9px);left:0;max-width:250px;margin:0;padding:8px 12px;border:1px solid #e8bab4;border-radius:9px;background:#fff5f3}
.canvas-dock:not(.is-collapsed) .fullscreen-save-status.has-error {bottom:100%;transform:translateY(-8px)}
.canvas-keyboard-help {position:fixed;left:12px;top:max(12px,env(safe-area-inset-top));z-index:100;max-width:calc(100vw - 24px);border:1px solid #d3dfeb;border-radius:10px;background:#fff;box-shadow:0 4px 16px #22344b12;color:#53677e;font-size:12px}
.canvas-keyboard-help>summary {cursor:pointer;padding:8px 11px;min-height:20px;line-height:20px;user-select:none}
.canvas-keyboard-help-body {padding:0 13px 9px;max-width:310px;line-height:1.7}
.canvas-keyboard-help-body p {margin:6px 0}
.fullscreen-work-shell .canvas-dock-row,.fullscreen-work-shell .canvas-dock-row * {touch-action:pan-x}
.fullscreen-work-shell .canvas-dock .fullscreen-control-body,.fullscreen-work-shell .canvas-dock .fullscreen-control-body * {touch-action:pan-y}
.fullscreen-work-shell .scoring-canvas-issues {bottom:78px}

.canvas-corner-actions {position:fixed;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:101;font-size:12px}
.canvas-corner-row {display:flex;align-items:center;gap:6px;padding:6px;border:1px solid #d3dfeb;border-radius:13px;background:#fff;box-shadow:0 4px 16px #22344b12}
.canvas-corner-row>a,.canvas-corner-row>button {display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:34px;padding:6px 9px;border:1px solid #dce5ef;border-radius:8px;color:#405772;background:#fff;font-size:12px;line-height:20px;text-decoration:none;white-space:nowrap}
.canvas-corner-row>a:hover,.canvas-corner-row>button:hover,.canvas-corner-row>button[aria-expanded="true"] {background:#f1f5fb;border-color:#b7c9e0}
.canvas-corner-actions .fullscreen-control-body {position:absolute;right:0;bottom:calc(100% + 9px);width:310px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 180px);overflow:auto;margin:0;padding:14px;box-sizing:border-box;border:1px solid #d3dfeb;border-radius:13px;background:#fff;box-shadow:0 5px 24px #22344b18;touch-action:pan-y}
.canvas-corner-actions .fullscreen-task-information {line-height:1.75}
.canvas-corner-actions .scoring-canvas-issues {position:static;inset:auto;max-width:none;padding:0;box-shadow:none;border:0;background:transparent;font-size:11px}
.canvas-keyboard-help {left:auto;right:12px;max-height:calc(100dvh - 90px);overflow:auto}
.canvas-keyboard-help-body {width:310px;max-width:calc(100vw - 52px);box-sizing:border-box;padding:4px 12px 10px}
.help-action {display:grid;grid-template-columns:112px 1fr;align-items:center;gap:8px;padding:9px 0;border-bottom:1px solid #edf1f6;font-size:12px;line-height:1.6}
.help-keyboards,.help-key-pair {display:flex;align-items:center;justify-content:center;gap:8px}
.help-key-grid {display:grid;grid-template-columns:repeat(3,16px);gap:3px}
.help-key-grid>kbd:first-child {grid-column:2}
.help-key-grid>kbd:nth-child(2) {grid-column:1;grid-row:2}
.help-key-grid>kbd:nth-child(3) {grid-column:2;grid-row:2}
.help-key-grid>kbd:nth-child(4) {grid-column:3;grid-row:2}
.canvas-keyboard-help kbd,.canvas-shortcut-visual kbd {display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:21px;border:1px solid #c8d5e5;border-bottom-width:3px;border-radius:4px;background:#f5f8fc;color:#355d8e;font:11px Consolas,monospace;box-sizing:border-box}
.help-key-pair kbd {width:26px;height:27px}
.help-mouse {position:relative;display:block;justify-self:center;width:25px;height:34px;border:1.5px solid #8095af;border-radius:12px;background:#f7f9fc}
.help-mouse::before {content:'';position:absolute;top:0;left:50%;height:14px;border-left:1px solid #8095af}
.help-mouse::after {content:'';position:absolute;top:5px;left:10px;width:4px;height:8px;border-radius:3px;background:#8095af}
.help-mouse.is-pan {background:linear-gradient(90deg,#f7f9fc 50%,#bfd7ff 50%)}
.help-mouse.is-select {background:linear-gradient(90deg,#bfd7ff 50%,#f7f9fc 50%)}
.help-mouse.is-pan::after,.help-mouse.is-wheel::after {background:#2868c6;box-shadow:0 0 0 2px #d3e3ff}
.help-touch {position:relative;display:block;justify-self:center;width:54px;text-align:center;color:#477ab5;font-size:25px;padding-top:10px;line-height:20px}
.help-touch::before,.help-touch::after {content:'';position:absolute;top:0;width:7px;height:14px;border:2px solid #6e94bd;border-radius:7px}
.help-touch::before {left:13px;transform:rotate(-18deg)}
.help-touch::after {right:13px;transform:rotate(18deg)}
.canvas-keyboard-help .help-footnote {font-size:10px;color:#7a889b;margin:8px 0 0}
@media(max-width:1240px) {.canvas-corner-actions {bottom:calc(76px + env(safe-area-inset-bottom))}}

/* Roles, active focus and submission state use separate visual signals. */
.scoring-canvas .scoring-message {--message-role:#436db4;border:1px solid #cdd6e2;border-top:3px solid var(--message-role);background:#fff}
.scoring-canvas .scoring-message-user {--message-role:#187868}
.scoring-canvas .scoring-message-system,.scoring-canvas .scoring-message-tool,.scoring-canvas .scoring-message-unknown {--message-role:#8994a4}
.scoring-canvas .scoring-message.is-context {border-color:#d1cddd;border-top-color:var(--message-role);box-shadow:0 0 0 1px #ebe8f2}
.scoring-canvas .scoring-message.is-rating-target {border-color:#8063b9;border-top-color:var(--message-role);box-shadow:0 0 0 3px #8063b92b}
.scoring-canvas .scoring-message-head {gap:6px;align-items:center}
.scoring-message-identity {flex:1;gap:7px}
.scoring-message-identity strong {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.scoring-canvas .scoring-canvas-card,.scoring-canvas.is-narrow .scoring-canvas-card {border-color:#cdd6e2;border-left-color:#cdd6e2;border-top-color:#cdd6e2}
.scoring-canvas .scoring-canvas-card.is-selected {border-color:#8063b9;box-shadow:0 0 0 3px #8063b92b}
.scoring-canvas .scoring-canvas-card-title {display:flex;align-items:center;justify-content:space-between;gap:8px;background:#f5f6fa;color:#566176;border-color:#e1e4ec}
.scoring-canvas .scoring-canvas-card.is-selected .scoring-canvas-card-title {background:#f5f1fb;color:#684a9c;border-color:#ded2f0}
.scoring-canvas .scoring-canvas-card .item-card-header>.tag {display:none}
.scoring-canvas-card>.item-score-card:focus {outline:none}
.canvas-product-reading {border-color:#cdd6e2;border-top:3px solid #b0884c}
.canvas-product-reading>.scoring-message-head {color:#8c6934}
.canvas-product-reading.is-selected {border-color:#8063b9;border-top-color:#b0884c;box-shadow:0 0 0 3px #8063b92b}
.scoring-canvas-parent-edge.is-context {stroke:#a99cbd;stroke-width:2.3}
.scoring-canvas-score-edge {stroke:#a7afbe}
.scoring-canvas-score-edge.is-selected {stroke:#8063b9}
.scoring-canvas-edge-label {fill:#758093}
.scoring-canvas-edge-label.is-selected {fill:#684a9c}
.canvas-rating-status {display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;flex:0 0 70px;width:70px;height:22px;padding:0 5px;border-radius:6px;background:#f1f3f6;color:#77808f;font-size:11px;font-weight:500;line-height:20px;white-space:nowrap;letter-spacing:0}
.canvas-rating-status[data-rating-state="submitted"] {background:#e7ebf1;color:#3d4b61}
.canvas-rating-status[data-rating-state="draft"] {background:#fff4df;color:#8b651e}
.canvas-rating-status[data-rating-state="modified"] {background:#fff0e7;color:#a15a2e}
.contribution-actions {min-height:28px;margin-top:6px}
.contribution-actions button {padding:3px 8px;min-height:26px;font-size:11px;border:1px solid #dce5ef;border-radius:7px;background:#fff;color:#61728a}

.canvas-dock-row .task-submit-button[data-submit-state="check"]:not(:disabled) {background:#fff3df;border-color:#e5b65c;color:#855209}
.canvas-dock-row .task-submit-button[data-submit-state="check"]:hover:not(:disabled) {background:#ffe6b8;border-color:#ce9229}

.canvas-dock-row .task-submit-button[data-submit-state="return"]:not(:disabled) {background:#e9f1ff;border-color:#aac3e8;color:#285a92}
.canvas-dock-row .task-submit-button[data-submit-state="return"]:hover:not(:disabled) {background:#dbe9fc}

/* Automatic activity status is an indicator, never a timing control. */
.has-activity-status .canvas-keyboard-help {right:60px}
.rating-time-control {position:fixed;right:12px;top:max(12px,env(safe-area-inset-top));z-index:101;display:flex;align-items:center;justify-content:center;width:38px;height:38px;min-width:0;box-sizing:border-box;border:1px solid #d3dfeb;border-radius:10px;background:#fff;color:#778497;box-shadow:0 4px 16px #22344b12;cursor:default;user-select:none}
.rating-time-icon {width:12px;height:14px;box-sizing:border-box;border-left:4px solid currentColor;border-right:4px solid currentColor}
.rating-time-control[data-state="active"] {color:#237f69}
.rating-time-control[data-state="active"] .rating-time-icon {width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:11px solid currentColor;border-right:0;margin-left:2px}
.canvas-keyboard-help-body {width:365px;max-width:calc(100vw - 80px)}
.help-action {grid-template-columns:158px 1fr;white-space:pre-line}
.help-key-grid {grid-template-columns:repeat(3,25px);gap:4px}
.canvas-keyboard-help kbd,.canvas-shortcut-visual kbd {min-width:25px;height:29px;font-size:13px;background:linear-gradient(#fff,#edf2f9);box-shadow:0 1px 2px #213b5a15}
.help-key-grid.is-letter kbd {height:38px;flex-direction:column;line-height:16px}
.help-key-grid kbd small {font:11px/13px sans-serif;color:#7c94b3}
.help-key-grid.is-arrow {grid-template-columns:repeat(3,19px);gap:3px}
.help-key-grid.is-arrow kbd {min-width:19px;height:25px;font-size:12px}
.help-navigation {display:grid;gap:5px;justify-content:center;white-space:nowrap;color:#55749a}
.help-navigation>span {display:flex;align-items:center;gap:5px}
.canvas-keyboard-help .help-space {height:27px;width:116px;justify-self:center;font-size:12px}
@media(max-width:430px){.help-action{grid-template-columns:1fr;gap:8px;text-align:center}.help-keyboards{justify-self:center}.help-navigation{grid-template-columns:1fr 1fr;gap:15px}}

.scoring-canvas-card-title .canvas-validation-summary {flex:1;min-width:0;height:20px;line-height:20px;overflow:auto;white-space:nowrap;text-align:center;color:#bd2929;font-size:13px;font-weight:500;scrollbar-width:none}
.scoring-canvas-card-title .canvas-validation-summary::-webkit-scrollbar {display:none}
.scoring-canvas-card-title .canvas-rating-status {flex-shrink:0}
.semantic-selection-status {font-size:14px;line-height:21px;height:32px}
.semantic-selected-count {color:#c32e36;font-size:16px;font-weight:750;font-variant-numeric:tabular-nums}
.semantic-palette {display:grid;grid-template-columns:repeat(4,max-content);align-content:start;justify-items:start;gap:6px;min-width:0;overflow-x:auto}
.semantic-label-group {display:contents}
.semantic-label-group>.semantic-label-button:first-child {grid-column:1}
.semantic-label-button {width:auto;flex:0 0 auto;white-space:nowrap;text-align:left;justify-content:flex-start;font-size:14px;line-height:1.5;padding:8px 10px;min-height:39px}
.semantic-tools {align-content:start}
.guide-navigation-keys {display:flex;justify-content:center;align-items:center;gap:18px;margin:10px 0}
.canvas-shortcut-visual .help-space {width:100px;font-size:12px}
.guide-content>.help-keyboards {padding:8px 0}
