/* W10-A1: scoped warm operation surfaces for seven legacy tools.
   Classroom-screen mode intentionally keeps its existing high-contrast palette. */

body.warm-operation-v1:not(.classroom-screen) {
  --warm-bg: #f7f1e8;
  --warm-surface: #fffdfc;
  --warm-surface-soft: #f2eadf;
  --warm-surface-muted: #e9e2d8;
  --warm-ink: #24313d;
  --warm-muted: #59635f;
  --warm-line: #ddd1c4;
  --warm-line-strong: #c8b9aa;
  --warm-sage: #44755d;
  --warm-sage-soft: #e2ede5;
  --warm-blue: #526c87;
  --warm-blue-soft: #e4ebf1;
  --warm-coral: #bf725e;
  --warm-amber: #b98546;
  --warm-shadow: 0 18px 46px rgba(60, 48, 38, .1);
  --ink: var(--warm-ink);
  --muted: var(--warm-muted);
  --line: var(--warm-line);
  --line-strong: var(--warm-line-strong);
  --panel: var(--warm-surface);
  --card: var(--warm-surface);
  --blue: var(--warm-blue);
  --blue-dark: #3f5871;
  --teal: var(--warm-sage);
  --gold: var(--warm-amber);
  --amber: var(--warm-amber);
  --green: var(--warm-sage);
  --red: var(--warm-coral);
  --tool-bg: var(--warm-bg);
  --tool-surface: var(--warm-surface);
  --tool-surface-2: var(--warm-surface-soft);
  --tool-surface-3: var(--warm-surface-muted);
  --tool-ink: var(--warm-ink);
  --tool-muted: var(--warm-muted);
  --tool-line: var(--warm-line);
  --tool-line-strong: var(--warm-line-strong);
  --tool-shadow: var(--warm-shadow);
  --tool-accent: var(--warm-sage);
  --tool-accent-2: var(--warm-blue);
  --tool-accent-ink: #fff;
  color: var(--warm-ink);
  background:
    radial-gradient(circle at 12% 0%, rgba(68, 117, 93, .055), transparent 30rem),
    radial-gradient(circle at 88% 1%, rgba(82, 108, 135, .055), transparent 28rem),
    var(--warm-bg) !important;
}

body.warm-operation-v1:not(.classroom-screen)::before {
  opacity: .14;
  background-image:
    linear-gradient(rgba(82, 108, 135, .13) 1px, transparent 1px),
    linear-gradient(90deg, rgba(82, 108, 135, .13) 1px, transparent 1px);
  background-size: 88px 88px;
  -webkit-mask-image: linear-gradient(180deg, rgba(0, 0, 0, .3), transparent 72%);
  mask-image: linear-gradient(180deg, rgba(0, 0, 0, .3), transparent 72%);
}

body.warm-operation-v1:not(.classroom-screen) :is(
  .stage,
  .control-panel,
  .info-card,
  .tool-panel,
  .performance-stage,
  .panel,
  .resource-strip,
  .resource-modal-card
) {
  color: var(--warm-ink) !important;
  border-color: var(--warm-line) !important;
  background: var(--warm-surface) !important;
  box-shadow: var(--warm-shadow) !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(.stage, .control-panel, .tool-panel, .performance-stage, .panel) {
  border-radius: 22px !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(.stage-head, .classroom-toolbar) {
  color: var(--warm-ink) !important;
  border-color: var(--warm-line) !important;
  background: var(--warm-surface-soft) !important;
  box-shadow: none !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(.stage-title, .control-panel h2, .info-card h2, .panel-head h2) {
  color: var(--warm-ink) !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(.stage-meta, .panel-head p, .lead, .hint, .question, .info-card p, .info-card li) {
  color: var(--warm-muted) !important;
}

body.warm-operation-v1:not(.classroom-screen) .status-dot:not(.off):not(.is-live) {
  background: var(--warm-sage) !important;
  box-shadow: 0 0 0 5px rgba(68, 117, 93, .1) !important;
}

body.warm-operation-circuit:not(.classroom-screen) .status-dot.off {
  background: #9a4b3d !important;
  box-shadow: 0 0 0 5px rgba(154, 75, 61, .11) !important;
}

body.warm-operation-sound:not(.classroom-screen) .status-dot.off {
  background: #71808a !important;
  box-shadow: none !important;
}

body.music-tool.warm-operation-singing-feedback:not(.classroom-screen) #micDot.is-live {
  background: #2f7d68 !important;
  box-shadow: 0 0 0 5px rgba(47, 125, 104, .13) !important;
}

body.music-tool.warm-operation-singing-feedback:not(.classroom-screen) #micDot:not(.is-live) {
  background: #71808a !important;
  box-shadow: none !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(.classroom-screen-toggle, .fullscreen-button) {
  color: var(--warm-blue) !important;
  border-color: var(--warm-line-strong) !important;
  background: var(--warm-surface) !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(.classroom-screen-toggle, .fullscreen-button):hover {
  color: var(--warm-ink) !important;
  border-color: rgba(68, 117, 93, .48) !important;
  background: var(--warm-sage-soft) !important;
}

body.warm-operation-v1:not(.classroom-screen) .classroom-screen-toggle[aria-pressed="true"] {
  color: #fff !important;
  border-color: var(--warm-sage) !important;
  background: var(--warm-sage) !important;
}

/* Shared workbench and SVG scene */
body.warm-operation-v1:not(.classroom-screen) :is(.canvas-wrap, .board) {
  background:
    radial-gradient(circle at 20% 30%, rgba(68, 117, 93, .06), transparent 22rem),
    linear-gradient(rgba(82, 108, 135, .07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(82, 108, 135, .07) 1px, transparent 1px),
    #f4efe7 !important;
  background-size: auto, 40px 40px, 40px 40px, auto !important;
}

body.warm-operation-v1:not(.classroom-screen) .canvas-wrap svg {
  border-color: var(--warm-line) !important;
  background: #fffaf3 !important;
  box-shadow: inset 0 0 0 1px rgba(82, 108, 135, .03);
}

body.warm-operation-v1:not(.classroom-screen) :is(.svg-label, .svg-small) {
  fill: var(--warm-ink) !important;
}

body.warm-operation-v1:not(.classroom-screen) .svg-small {
  fill: var(--warm-muted) !important;
}

/* Light: amber rays remain the evidence, but use ink-grade values on the light canvas. */
body.warm-operation-light:not(.classroom-screen) .ray {
  stroke: #806000 !important;
  filter: drop-shadow(0 0 5px rgba(128, 96, 0, .24)) !important;
}

body.warm-operation-light:not(.classroom-screen) .ray-soft {
  stroke: rgba(128, 96, 0, .25) !important;
}

body.warm-operation-light:not(.classroom-screen) .screen-hit {
  fill: #d5a900 !important;
  stroke: #806000 !important;
}

body.warm-operation-light:not(.classroom-screen) .blocked {
  stroke: #9a4b3d !important;
}

/* Circuit: off wiring, energized wiring and current dots stay visibly distinct. */
body.warm-operation-circuit:not(.classroom-screen) .wire {
  stroke: #526c87 !important;
  filter: none !important;
}

body.warm-operation-circuit:not(.classroom-screen) .wire.on {
  stroke: #8a6200 !important;
  filter: drop-shadow(0 0 5px rgba(138, 98, 0, .22)) !important;
}

body.warm-operation-circuit:not(.classroom-screen) .current-dot {
  fill: #8a6200 !important;
  filter: drop-shadow(0 0 4px rgba(138, 98, 0, .2)) !important;
}

/* Sound: retain violet as a semantic family with sufficient light-surface contrast. */
body.warm-operation-sound:not(.classroom-screen) :is(.wave-line, #forkGroup path, #forkGroup line) {
  stroke: #59578f !important;
  filter: drop-shadow(0 0 4px rgba(89, 87, 143, .2)) !important;
}

body.warm-operation-sound:not(.classroom-screen) .wave-soft {
  stroke: rgba(89, 87, 143, .23) !important;
}

body.warm-operation-sound:not(.classroom-screen) #stringLine {
  stroke: #526c87 !important;
}

body.warm-operation-sound:not(.classroom-screen) #observeBall {
  fill: #a87531 !important;
  filter: drop-shadow(0 0 4px rgba(168, 117, 49, .2)) !important;
}

body.warm-operation-sound:not(.classroom-screen) input[type="range"] {
  accent-color: #526c87 !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(.control, .control-group) {
  border-color: var(--warm-line) !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(.control label, .control-title, .control-label, .switch-row) {
  color: var(--warm-ink) !important;
}

body.warm-operation-v1:not(.classroom-screen) .value,
body.warm-operation-v1:not(.classroom-screen) .control-label span:last-child {
  color: var(--warm-sage) !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(
  .segmented,
  .segmented button,
  .toggle,
  .preset,
  .reset-button,
  .demo-button,
  .file-button,
  .secondary-action,
  .preset-row button,
  .field select
) {
  color: var(--warm-ink) !important;
  border-color: var(--warm-line) !important;
  background: var(--warm-surface) !important;
  box-shadow: none !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(.segmented button.active, .toggle.active, .view-tab[aria-selected="true"], .primary-action, .demo-button) {
  color: #fff !important;
  border-color: var(--warm-sage) !important;
  background: var(--warm-sage) !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(button, .file-button)[disabled] {
  color: #8a918d !important;
  border-color: #d8d0c6 !important;
  background: #eee9e2 !important;
  box-shadow: none !important;
  opacity: .72 !important;
  cursor: not-allowed;
}

body.warm-operation-v1:not(.classroom-screen) :is(.segmented button, .toggle, .preset, .reset-button, .demo-button, .file-button, .primary-action, .secondary-action):not(:disabled):hover {
  border-color: rgba(68, 117, 93, .48) !important;
}

body.warm-operation-v1:not(.classroom-screen) .result {
  color: #684d2e !important;
  border-color: rgba(185, 133, 70, .28) !important;
  background: #fff6e8 !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(.resource-strip, .resource-modal-card) {
  border-radius: 22px !important;
}

body.warm-operation-v1:not(.classroom-screen) .resource-strip {
  color: var(--warm-ink) !important;
  background: rgba(255, 253, 252, .94) !important;
  backdrop-filter: blur(14px);
}

body.warm-operation-v1:not(.classroom-screen) :is(.strip-main, .strip-button, .modal-close) {
  color: var(--warm-ink) !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(.strip-button, .modal-close) {
  border-color: var(--warm-line-strong) !important;
  background: var(--warm-surface) !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(.trial-pill, .strip-button.primary) {
  color: #fff !important;
  border-color: var(--warm-sage) !important;
  background: var(--warm-sage) !important;
}

body.warm-operation-v1:not(.classroom-screen) .resource-code {
  color: var(--warm-muted) !important;
}

body.warm-operation-v1:not(.classroom-screen) .resource-modal {
  background: rgba(36, 49, 61, .36) !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(.detail-block, .task) {
  color: var(--warm-ink) !important;
  border-color: var(--warm-line) !important;
  background: var(--warm-surface-soft) !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(.detail-block p, .detail-block li, .modal-head p) {
  color: var(--warm-muted) !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(footer, .site-footer) {
  color: var(--warm-muted) !important;
  border-color: var(--warm-line) !important;
  background: #eee7dd !important;
}

/* Clock: keep the object precise, but make it a warm physical instrument. */
body.warm-operation-v1:not(.classroom-screen) .clock-svg {
  filter: drop-shadow(0 24px 34px rgba(60, 48, 38, .16));
}

body.warm-operation-v1:not(.classroom-screen) .clock-face {
  fill: #fffaf2;
  stroke: var(--warm-blue);
}

body.warm-operation-v1:not(.classroom-screen) .clock-inner-ring {
  stroke: rgba(82, 108, 135, .17);
}

body.warm-operation-v1:not(.classroom-screen) .tick {
  stroke: rgba(82, 108, 135, .44);
}

body.warm-operation-v1:not(.classroom-screen) .tick.major {
  stroke: var(--warm-blue);
}

body.warm-operation-v1:not(.classroom-screen) .clock-number {
  fill: var(--warm-ink);
}

body.warm-operation-v1:not(.classroom-screen) .hour-hand {
  stroke: var(--warm-ink);
}

body.warm-operation-v1:not(.classroom-screen) .answer,
body.warm-operation-v1:not(.classroom-screen) .formula-panel {
  color: var(--warm-ink) !important;
  border-color: var(--warm-line) !important;
  background: var(--warm-surface) !important;
  box-shadow: 0 12px 28px rgba(60, 48, 38, .09) !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(.step-value, .formula-panel strong) {
  color: var(--warm-ink) !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(.step-button, .round-button) {
  color: #fff !important;
  background: var(--warm-sage) !important;
  box-shadow: 0 9px 20px rgba(68, 117, 93, .15) !important;
}

/* Area: retain the unit-square evidence while removing the dark board. */
body.warm-operation-v1:not(.classroom-screen) .unit-grid {
  border-color: var(--warm-sage);
  background: rgba(255, 253, 252, .78);
  box-shadow: 0 18px 38px rgba(60, 48, 38, .12);
}

body.warm-operation-v1:not(.classroom-screen) .unit-cell {
  color: var(--warm-muted);
  border-color: rgba(82, 108, 135, .18);
  background: rgba(82, 108, 135, .035);
}

body.warm-operation-v1:not(.classroom-screen) .unit-cell.is-filled {
  color: var(--warm-ink);
  background: linear-gradient(145deg, #dfeae2, #dfe7ef 68%, #eee0c7);
}

body.warm-operation-v1:not(.classroom-screen) .dimension-label {
  color: var(--warm-muted);
}

/* Music: the waveform remains semantic; its workstation is light and tangible. */
body.music-tool.warm-operation-v1:not(.classroom-screen) {
  --tool-accent: var(--warm-sage);
  --tool-accent-2: var(--warm-blue);
  --tool-accent-ink: #fff;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) :is(.tool-panel, .performance-stage) {
  color: var(--warm-ink) !important;
  background: var(--warm-surface) !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) .view-tabs {
  border-color: var(--warm-line) !important;
  background: var(--warm-surface-soft) !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) .view-tab {
  color: var(--warm-muted) !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) :is(.upload-row, .preset-row button, .field select, .file-button, .secondary-action) {
  color: var(--warm-ink) !important;
  border-color: var(--warm-line) !important;
  background: var(--warm-surface) !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) .field select,
body.music-tool.warm-operation-v1:not(.classroom-screen) audio {
  color-scheme: light;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) .empty-preview {
  color: var(--warm-muted) !important;
  border-color: var(--warm-line-strong) !important;
  background: var(--warm-surface-soft) !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) .live-controls {
  color: var(--warm-ink) !important;
  background:
    linear-gradient(rgba(82, 108, 135, .07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(82, 108, 135, .07) 1px, transparent 1px),
    #f2eee7 !important;
  background-size: 40px 40px, 40px 40px, auto !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) .wave-area {
  color: #fffdf8 !important;
  border-right: 1px solid #556b78;
  background:
    linear-gradient(rgba(255, 253, 248, .055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 253, 248, .055) 1px, transparent 1px),
    #263b48 !important;
  background-size: 40px 40px, 40px 40px, auto !important;
  box-shadow: inset 0 0 0 1px rgba(255, 253, 248, .04);
}

body.music-tool.warm-operation-v1:not(.classroom-screen) .wave-area :is(.wave-copy h2, .wave-copy p) {
  color: #fffdf8 !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) .wave-area .wave-copy span {
  color: #a6e7dd !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) .wave-area .participation {
  color: #f5f1e9 !important;
  border-color: rgba(245, 241, 233, .3) !important;
  background: rgba(20, 37, 46, .62) !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) :is(.live-controls h3, .feedback-comment) {
  color: var(--warm-ink) !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) :is(.live-controls p, .audio-control span, .feedback-label) {
  color: var(--warm-muted) !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) .participation {
  border-color: var(--warm-line) !important;
  background: rgba(255, 253, 252, .86) !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) .live-controls .secondary-action {
  color: var(--warm-ink) !important;
  border-color: var(--warm-line-strong) !important;
  background: var(--warm-surface) !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) .stage-state {
  color: var(--warm-muted) !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) .danger-action:not(:disabled) {
  color: #7d352c !important;
  border-color: #b96b5e !important;
  background: #fff3f0 !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) .danger-action:not(:disabled):hover {
  color: #6c2d26 !important;
  border-color: #9f4f43 !important;
  background: #fbe7e2 !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) :is(button, .file-button)[disabled] {
  color: #7c8580 !important;
  border-color: #d4cbc0 !important;
  background: #e9e4dd !important;
  box-shadow: none !important;
  opacity: .74 !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) label.file-button:focus-within {
  outline: 3px solid #2f6f58 !important;
  outline-offset: 3px !important;
  border-color: #2f6f58 !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) .local-only {
  color: #684d2e !important;
  background: #fff6e8 !important;
}

body.music-tool.warm-operation-v1:not(.classroom-screen) .feedback-boundary {
  color: #684d2e !important;
  border-color: rgba(185, 133, 70, .28) !important;
  background: #fff6e8 !important;
}

/* Force composition: restore the original physical bench under the shared shell. */
body.physics-tool.warm-operation-v1:not(.classroom-screen) {
  --force: #416f9c;
  --force-2: #6d7898;
  --result: #b96348;
  --zero: #697780;
}

body.physics-tool.warm-operation-v1:not(.classroom-screen) .panel {
  color: var(--warm-ink) !important;
  background: var(--warm-surface) !important;
}

body.physics-tool.warm-operation-v1:not(.classroom-screen) .demo-wrap {
  border-color: var(--warm-line-strong) !important;
  background:
    linear-gradient(rgba(82, 108, 135, .07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(82, 108, 135, .07) 1px, transparent 1px),
    #f5f0e8 !important;
  background-size: 40px 40px, 40px 40px, auto !important;
}

body.physics-tool.warm-operation-v1:not(.classroom-screen) :is(.cart, .motion-cart) {
  color: var(--warm-ink) !important;
  border-color: var(--warm-blue) !important;
  background: #e3ebef !important;
  box-shadow: 0 10px 24px rgba(60, 48, 38, .13) !important;
}

body.physics-tool.warm-operation-v1:not(.classroom-screen) :is(.arrow-label, .result-zero) {
  color: var(--warm-ink) !important;
  border-color: var(--warm-line) !important;
  background: rgba(255, 253, 252, .94) !important;
  box-shadow: 0 7px 18px rgba(60, 48, 38, .1) !important;
}

body.physics-tool.warm-operation-v1:not(.classroom-screen) :is(.control-card, .motion-stage, .chart-card) {
  color: var(--warm-ink) !important;
  border-color: var(--warm-line) !important;
  background: var(--warm-surface-soft) !important;
}

body.physics-tool.warm-operation-v1:not(.classroom-screen) :is(.control-card h2, .preset-label, .result-direction, .motion-option, .motion-readout, .chart-title) {
  color: var(--warm-ink) !important;
}

body.physics-tool.warm-operation-v1:not(.classroom-screen) :is(button, .motion-option) {
  color: var(--warm-ink) !important;
  border-color: var(--warm-line-strong) !important;
  background: var(--warm-surface) !important;
}

body.physics-tool.warm-operation-v1:not(.classroom-screen) .physics-mode-tabs {
  border-color: var(--warm-line) !important;
  background: var(--warm-surface-soft) !important;
  box-shadow: inset 0 0 0 1px rgba(82, 108, 135, .025);
}

body.physics-tool.warm-operation-v1:not(.classroom-screen) .physics-mode-tab {
  color: var(--warm-muted) !important;
  border-color: transparent !important;
  background: transparent !important;
}

body.physics-tool.warm-operation-v1:not(.classroom-screen) .physics-mode-tab[aria-selected="true"] {
  color: #fff !important;
  border-color: var(--warm-sage) !important;
  background: var(--warm-sage) !important;
  box-shadow: 0 6px 14px rgba(68, 117, 93, .16) !important;
}

body.physics-tool.warm-operation-v1:not(.classroom-screen) button.active,
body.physics-tool.warm-operation-v1:not(.classroom-screen) .motion-primary {
  color: #fff !important;
  border-color: var(--warm-sage) !important;
  background: var(--warm-sage) !important;
}

body.physics-tool.warm-operation-v1:not(.classroom-screen) :is(.conclusion, .motion-conclusion) {
  color: var(--warm-ink) !important;
  background: var(--warm-blue-soft) !important;
}

body.physics-tool.warm-operation-v1:not(.classroom-screen) .motion-track {
  border-color: var(--warm-line) !important;
  background: #f7f3ed !important;
}

/* W10-A2: four mixed-era physics tools share the warm shell without touching
   their measurement, force, pressure, direction, current, or danger colors. */
body.warm-operation-a2:not(.classroom-screen) :is(.preset-button.active, .primary-action) {
  color: #fff !important;
  border-color: var(--warm-sage) !important;
  background: var(--warm-sage) !important;
  box-shadow: 0 6px 14px rgba(68, 117, 93, .16) !important;
}

body.warm-operation-a2:not(.classroom-screen) .preset-button.active span,
body.warm-operation-a2:not(.classroom-screen) .preset-button.active::after {
  color: #fff !important;
}

body.warm-operation-a2:not(.classroom-screen) .preset-button.is-complete::after {
  width: max-content;
  padding: 2px 6px;
  border-radius: 999px;
  color: #fff !important;
  background: var(--warm-sage) !important;
}

body.physics-tool.warm-operation-v1.warm-operation-a2:not(.classroom-screen) .primary-action:disabled {
  color: #7a817d !important;
  border-color: #d5cdc3 !important;
  background: #e9e4dd !important;
  box-shadow: none !important;
  opacity: 1 !important;
  cursor: not-allowed !important;
}

body.physics-tool.warm-operation-v1.warm-operation-a2:not(.classroom-screen) .primary-action:not(:disabled):hover {
  color: #fff !important;
  border-color: #315f4a !important;
  background: #38684f !important;
  box-shadow: 0 8px 18px rgba(49, 95, 74, .2) !important;
}

body.physics-tool.warm-operation-v1.warm-operation-sliding-friction:not(.classroom-screen) .motion-track {
  border: 1px solid var(--warm-line) !important;
  background:
    linear-gradient(180deg, #fffdfc 0 67%, #c9d3ce 68% 75%, #eee8df 76%) !important;
}

body.warm-operation-a2:not(.classroom-screen) .stage-kicker {
  color: #315f4a !important;
}

body.warm-operation-v1:not(.classroom-screen) :is(a, button, input, select, label.file-button):focus-visible {
  outline: 3px solid #2f6f58 !important;
  outline-offset: 3px !important;
}

@media (max-width: 620px) {
  body.warm-operation-v1:not(.classroom-screen) :is(.stage, .control-panel, .tool-panel, .performance-stage, .panel) {
    border-radius: 18px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.warm-operation-v1:not(.classroom-screen) *,
  body.warm-operation-v1:not(.classroom-screen) *::before,
  body.warm-operation-v1:not(.classroom-screen) *::after {
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}
