/*
 * Coding Ireland proprietary interactive activity
 * Copyright (c) 2017-2026 Coding Ireland. All rights reserved.
 *
 * Part of the Coding Ireland online learning platform. Licensed for use only
 * as delivered on the platform. Copying, redistributing, or adapting this
 * file, in whole or in part, for use in any other product or service is not
 * permitted. Ref: CI-maths-ramp-and-roll
 */

.rr-stage { display: flex; gap: 18px; align-items: stretch; flex-wrap: wrap; }
.rr-scene { flex: 1 1 400px; min-width: 320px; height: auto; }
.rr-side { flex: 0 1 236px; display: flex; flex-direction: column; gap: 10px; }

.rr-ramp { fill: #c4a484; stroke: #8a6a4a; stroke-width: 2; }
.rr-floor { stroke: #94a3b8; stroke-width: 1.5; }
.rr-tile { stroke: #94a3b8; stroke-width: 1; }
.rr-body { fill: #d64545; stroke: #8f1d1d; stroke-width: 2; }
.rr-wheel { fill: #1e293b; }

/* Two flags, one change: the current run solid, the previous run a pale ghost.
   That side-by-side comparison is the whole reason this exists — a real ramp
   cannot hold the last result while you change one thing. */
.rr-pole { stroke: #334155; stroke-width: 3; }
.rr-cloth { fill: #1565c0; }
.rr-flag-txt { font-family: 'Nunito', sans-serif; font-size: 12px; font-weight: 700; fill: #1565c0; }
.rr-flag--ghost .rr-pole { stroke: #94a3b8; stroke-dasharray: 4 4; }
.rr-flag--ghost .rr-cloth { fill: #cbd5e1; }
.rr-flag--ghost .rr-flag-txt { fill: #94a3b8; font-weight: 600; }

.rr-tag { font-family: 'Nunito', sans-serif; font-size: 14px; font-weight: 700; fill: #334155; }
.rr-tag--dim { fill: #64748b; font-weight: 600; }

.rr-readouts { display: flex; gap: 8px; }
.rr-read { flex: 1; background: #fff; border: 2px solid #d9e6f2; border-radius: 10px; padding: 6px 8px; text-align: center; }
.rr-read-label { font-size: 11px; font-weight: 700; color: #64748b; line-height: 1.2; }
/* Words first: infants are not reading centimetres off a screen. */
.rr-read-val { font-family: 'Nunito', sans-serif; font-weight: 800; font-size: 17px; color: #163a5f; }
.rr-verdict { margin: 0; font-size: 13.5px; line-height: 1.45; color: #334155; }

.rr-ctl-label { display: block; font-weight: 700; font-size: 13.5px; color: #163a5f; margin-bottom: 4px; }
.rr-control input[type="range"] { width: 100%; }
.rr-go { width: 100%; }

.rr-chips { display: flex; gap: 6px; }
.rr-chip {
    flex: 1; border: 2px solid #cbd5e1; background: #fff; border-radius: 999px;
    padding: 6px 4px; font-family: 'Nunito', sans-serif; font-weight: 700; font-size: 13px;
    color: #334155; cursor: pointer;
}
.rr-chip.is-on { background: #1565c0; border-color: #1565c0; color: #fff; }

.rr-guided { background: #f8fafc; border-left: 4px solid #1565c0; border-radius: 8px; padding: 10px 12px; }
.rr-guided-text { margin: 0 0 8px; font-size: 14px; line-height: 1.45; color: #1e293b; }
.rr-guided-nav { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.rr-guided-count { font-size: 12px; color: #64748b; white-space: nowrap; }

.rr-your-turn {
    margin-top: 16px; background: #fffaf0; border-left: 4px solid #dd6b20;
    border-radius: 8px; padding: 10px 14px;
}
.rr-your-turn-label { font-weight: 800; color: #9a3412; font-size: 13px; margin-bottom: 4px; }
#yourTurnList { margin: 0; padding-left: 18px; font-size: 14px; color: #334155; }

body.display-mode .activity-header,
.activity-container.display-mode .activity-header { display: none; }
body.display-mode .rr-scene { flex-basis: 480px; }
body.display-mode .rr-read-val { font-size: 21px; }
body.display-mode .rr-verdict { font-size: 15px; }

@media (max-width: 560px) {
    .rr-side { flex-basis: 100%; }
}
