/* CLA's colors; the scoring engine and source data are shared unchanged. */
:root {
  --ink: #0c1c47;
  --muted: #56657d;
  --border: #dce4f1;
  --bg: #f3f6fc;
  --accent: #1d3f9e;
  --mint: #a8caff;
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Meiryo", sans-serif;
}

html { scroll-behavior: smooth; }
main { max-width: 1288px; }
.brand-mark { color: #fff; background: #0c1c47; }
.badge { color: #1d3f9e; background: #eaf0ff; border-color: #cbd9fb; }
.primary { color: #fff; background: #2f5fe0; }
.workspace-tabs { background: #e5ebf7; }
.workspace-tabs button.selected,
.answer-section h3,
.common-scores .common-total { background: #0c1c47; }
.text-button { color: #1d3f9e; }
.mode-group button.selected { background: #edf3ff; }
.grading-result { border-top-color: #2f5fe0; }
button:focus-visible, a:focus-visible, summary:focus-visible,
select:focus, input:focus, textarea:focus-visible { outline-color: #2f5fe0; }
.answer-value textarea { color: var(--ink); }
.grading-result, .result-card, #method { scroll-margin-top: 100px; }
.section-heading h2, .answer-name, .grading-coverage li { overflow-wrap: anywhere; }
footer a { font-weight: 700; }

/* Set by the parent only when this document is inside /kakomon. */
html[data-embedded] .topbar,
html[data-embedded] .page-heading,
html[data-embedded] footer > a { display: none; }
html[data-embedded] main { padding-top: 28px; }
html[data-embedded] .grading-side,
html[data-embedded] .result-column,
html[data-embedded] .grade-submit { position: static; }
html[data-embedded] footer { justify-content: center; text-align: center; }

@media (max-width: 600px) {
  main { padding: 22px 16px; }
  .workspace-tabs button { min-height: 56px; font-size: .8125rem; }
  .card, .result-card, .paper-picker, .answer-card, .common-summary, .custom-key { padding: 18px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* Faculty selection stays above the full-width paper selector on every screen. */
.paper-select-wide { grid-column: 1 / -1; }
