.back-home{font-size:11px;color:#dfb9ff;text-decoration:none;margin-left:10px}#lab>.notice:first-of-type{margin:0 0 16px;font-size:10px}.project-bar{margin-top:16px}#sensors{grid-template-columns:repeat(7,1fr)}#simulationControls #sound{background:#efe5f8;color:#472166;font-size:11px;padding:8px 10px}#simulationControls #volume{width:90px;accent-color:#7050dc}#simulationControls #volumeText{font-size:10px}#result{font-size:12px}.telemetry>div label{font-size:9px;color:#7f6892;display:block}.sumo-settings{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.sumo-settings label{display:flex;flex-direction:column;font-size:11px;gap:5px}.sumo-settings input,.sumo-settings select{padding:9px;border:1px solid #e2d2ef;border-radius:7px;background:white}.reference-comparison{display:grid;grid-template-columns:1fr 1fr;gap:15px}.reference-comparison img{width:100%;object-fit:contain;background:#fff;border-radius:10px}.sumo-api{overflow:auto}.sumo-api code{font-size:10px}#dialogBody pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:10px;background:#f1e9f8;padding:12px;border-radius:7px}.sumo-import{width:100%;min-height:120px}.view-label{max-width:55%!important}@media(max-width:700px){.sumo-settings{grid-template-columns:1fr 1fr}.reference-comparison{grid-template-columns:1fr}.back-home{font-size:9px}#sensors{gap:4px}.sensor strong{font-size:11px}#simulationControls #volume{flex:1;min-width:40px}.view-buttons button{font-size:8px!important;padding:5px!important}.view-buttons{max-width:80%}}

.ring-picker{display:flex;align-items:center;gap:6px;font-size:11px;white-space:nowrap}.ring-picker select{font:inherit;padding:6px 8px;border:1px solid #c9c3e3;border-radius:8px;background:#fff;color:#31234e}.sim-panel>.panel-head{flex-wrap:wrap;gap:8px}#fieldLabel{font-size:10px}@media(max-width:700px){#fieldLabel{width:100%}}

.sumo-reference-thumb{width:74px;height:74px;object-fit:contain;border-radius:14px;background:white;flex:0 0 auto}.lab-title{gap:14px}.lab-title>.title-tools{margin-left:auto}@media(max-width:700px){.sumo-reference-thumb{width:54px;height:54px}}

.overlay-controls{position:absolute;bottom:12px;right:12px;z-index:4;background:#291738ed;color:#fff;padding:9px 12px;border-radius:10px;font-size:10px;max-width:65%;box-shadow:0 3px 12px #24153022}.overlay-controls>label{display:inline-flex;align-items:center;gap:5px;cursor:pointer;margin:0 10px 4px 0}.overlay-controls input{accent-color:#8a36cf}.overlay-legend{display:flex;gap:9px;flex-wrap:wrap;font-size:9px}.overlay-legend span:before{content:'';display:inline-block;width:15px;height:3px;margin-right:4px;vertical-align:middle;background:var(--line)}.legend-student{--line:#8a36cf}.legend-opponent{--line:#e25a86}.legend-sensor{--line:#ffbf36}.legend-collision{--line:#ba88ff}@media(max-width:700px){.overlay-controls{max-width:calc(100% - 24px)}.viewport-wrap .view-label{bottom:92px!important}}

.sensor-range-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 14px;background:#f0ecfa;border-bottom:1px solid #d7d0eb;color:#35264f;font-size:11px}.sensor-range-controls input{width:68px;padding:6px 8px;border:1px solid #bdb1d8;border-radius:7px;background:#fff;font:inherit}.sensor-range-controls output{padding:4px 8px;background:#fff;border-radius:6px;color:#49367a;font-weight:700}.sensor-range-controls small{font-size:9px;color:#635976}.sensor-range-controls button{font-size:10px}

/* Team identity is shared by sprites, trails, editor tabs and live telemetry. */
.legend-student{--line:#dc2687}.legend-opponent{--line:#e77920}
.team-comparison{margin-top:18px}.team-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px}
.team-card{border:1px solid #efdce6;border-top:4px solid var(--team);border-radius:13px;padding:15px;background:#fff;min-width:0;font-size:12px}
.team-card-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.team-letter{display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:10px;background:var(--team);color:white;font-size:22px}
.team-card-head strong{display:block;overflow-wrap:anywhere}.team-card small{display:block;color:#7a5267;font-size:10px;line-height:1.6}.team-card p{margin:8px 0 0;overflow-wrap:anywhere;line-height:1.6}
.team-motors,.team-edge{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}.team-motors span,.team-edge span{border-radius:8px;padding:8px;background:#faf1f6}.team-motors b{display:block;font-size:21px;color:var(--team)}.team-edge b{margin-left:5px}
.team-opponent{display:flex;gap:5px;margin:10px 0 6px}.team-opponent span{flex:1;text-align:center;border-radius:6px;padding:7px 3px;background:#f9eef4;font-size:10px}.team-card .detected{background:#fff0ce;color:#683f00;box-shadow:inset 0 0 0 1px #e8ba54}
.team-decision{border-left:3px solid var(--team);padding-left:9px;color:#62384e}
.team-editor-tabs{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:9px 12px;border-bottom:1px solid #e8ddf1;background:#fbedf4}.team-editor-tabs button{font-size:11px}.team-editor-tabs button.selected{color:white;background:#dc2687}.team-editor-tabs #showB.selected{background:#c75d0c}.team-editor-tabs label{font-size:10px;display:flex;align-items:center;gap:4px}
#opponentBlockly{height:520px;width:100%}#blockly[hidden],#opponentBlockly[hidden],#opponentEditorNote[hidden]{display:none!important}#opponentEditorNote{min-height:180px;padding:24px;background:#fff8ed;line-height:1.8}
.execution-banner{padding:11px 14px;background:#f5eefa;border-top:1px solid #e5d9ef;font-size:11px}.execution-banner strong{color:#632446}.execution-banner p{margin:5px 0;line-height:1.6;overflow-wrap:anywhere}
@media(max-width:700px){.team-cards{grid-template-columns:1fr;padding:10px}.team-comparison>.panel-head{flex-wrap:wrap;gap:6px}.team-card{font-size:11px}#opponentBlockly{height:440px}}
.practice-tools,.replay-panel,.batch-panel{margin:16px 0}.practice-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;font-size:11px}.practice-row label{display:flex;align-items:center;gap:6px}.practice-row select,.practice-row input{padding:7px;border:1px solid #dbcde6;border-radius:7px;background:#fff;font:inherit;max-width:230px}.practice-row input{width:85px}#batchSeed{width:110px}.debug-step{padding:12px 14px;background:#fff5df;border-top:1px solid #edd6a7;font-size:11px}.debug-step p{line-height:1.7;margin:8px 0}.debug-step button{font-size:11px}.debug-step small{display:block;line-height:1.6;margin-top:8px}.debug-step pre{white-space:pre-wrap;font-size:10px;line-height:1.6;margin-bottom:0}#scenarioNote{color:#6f5782}.timeline-label{display:flex;justify-content:space-between;margin:0 16px;font-size:12px}#replaySeek{display:block;width:calc(100% - 32px);margin:12px 16px;accent-color:#dc2687}.replay-events{max-height:200px;overflow:auto;padding:0 14px 14px;display:flex;flex-wrap:wrap;gap:6px}.replay-events small{width:100%;color:#78628a}.replay-events button{font-size:10px;text-align:left}.replay-events time{font-weight:bold;color:#dc2687}.batch-panel>p,.batch-panel>#batchResults{padding:0 14px}#batchResults{overflow:auto;font-size:11px}#batchResults table{min-width:620px}#batchResults p{line-height:1.7}#batchProgress{color:#86325f;font-weight:700}
@media(max-width:700px){.practice-row{align-items:stretch}.practice-row label{flex:1 1 45%;flex-direction:column;align-items:stretch}.practice-row input{width:100%!important}.debug-step button{margin-bottom:6px}}
.match-panel{margin:16px 0;border:1px solid #c08ee9;background:linear-gradient(120deg,#ffedf7,#fff4e7)}.match-panel .panel-head{flex-wrap:wrap;gap:8px}.match-panel #matchStatus{overflow-x:auto;font-size:14px;line-height:1.7}.match-panel #matchStatus>b{font-size:22px;color:#522577}.match-panel .practice-row{padding:12px;align-items:center}.match-panel .practice-row label{flex:1;min-width:230px}.match-panel table{min-width:420px;width:100%;background:#ffffffab}
.strategy-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px}.strategy-cards article{background:#f7eeff;border:1px solid #decbee;border-radius:14px;padding:14px}.strategy-cards article h3{font-size:15px;margin:0 0 8px}.strategy-cards article p{font-size:13px;line-height:1.65;margin:0}.sumo-analysis{padding:14px}.sumo-analysis .analysis-evidence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:480px;overflow:auto}.analysis-evidence article{border:1px solid #e9d6e0;border-left:4px solid #d58a37;border-radius:12px;padding:12px;background:#fffaf2}.sumo-analysis p{font-size:13px;line-height:1.6}.analysis-evidence small{font-size:11px;color:#755365}.robust-results{overflow:auto;padding:12px}.robust-results th,.robust-results td{font-size:12px;white-space:normal;min-width:60px}.robust-results button{font-size:12px}.robustness-panel>a{display:block;margin:12px}.strategy-panel .practice-row,.robustness-panel .practice-row{padding:12px}#robustStatus{font-size:12px}@media(max-width:850px){.strategy-cards{grid-template-columns:1fr}.sumo-analysis .analysis-evidence{grid-template-columns:1fr}}
