/* Presentación común de los diez casos. No modifica escenarios ni evaluación. */
:root{
  --bg:#eef3f6;--surface:#fff;--surface-soft:#f5f8fa;
  --black:#19323f;--muted:#536c79;--line:#d8e3e9;
  --technical:#087c91;--technical-light:#e3f4f6;--green:#11785e;
  --shadow:0 6px 24px rgba(18,51,66,.05);--radius:16px;
  --lab-ink:#102b3a;--lab-panel:#173847;--lab-border:#416674;
}
html{background:var(--bg);scroll-padding-top:155px}
body{background:var(--bg);font-size:14px;line-height:1.55}
.header{box-shadow:0 2px 12px #102b3a14;background:#102b3a}
.brandMark{border-radius:14px;background:#1a4354;border-color:#477887;color:#a6ede4}
.header h1{font-size:19px;letter-spacing:-.02em}.headerBrand p{color:#bbced7}
.headerChip{background:#1a4354;border-color:#426777}.headerChip.muted{color:#d4e2e8}
.wrap{max-width:1840px;grid-template-columns:218px minmax(0,1fr);gap:22px;padding:18px 24px 40px}
.card{box-shadow:var(--shadow);border-color:var(--line);background:#fff;padding:18px}
.card h2{font-size:18px;letter-spacing:-.025em}.card h3{font-size:15px}
.sectionHeading{gap:5px;margin-bottom:14px}.sectionEyebrow{font-size:10px;letter-spacing:.12em;color:#087789}
.learningBar{max-width:1792px;margin:18px 24px 0;display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;align-items:center;padding:12px 18px;border-left:3px solid #178c91}
.learningChoice label{margin:0 0 4px;font-size:11px}.learningChoice select{padding:8px 10px;font-size:13px;font-weight:650}
.learningMessages p{margin:0;font-size:12px;color:var(--muted)}#storageNotice:empty{display:none}#storageNotice:not(:empty){margin-top:6px;color:#875514}
.sidebar{top:100px;max-height:calc(100vh - 120px)}.caseSelectorCard{padding:14px}
.caseSelectorCard h2{font-size:16px}.caseNavigator{gap:5px}.caseNavItem{padding:8px;border-color:transparent;background:#f4f7f9;border-radius:9px}
.caseNavItem:hover{transform:none;background:#eaf3f6}.caseNavItem.active{background:#e6f4f5;border-color:#86bdc3;box-shadow:inset 3px 0 #087c91}
.caseNavNumber{background:#e3ebef;color:#365b6d;font-variant-numeric:tabular-nums}.caseNavText{font-size:12px}
.caseActions{flex-direction:column}.caseActions button{min-width:0}.sidebarLegend{gap:10px 12px;line-height:1.6;color:#536c79;font-size:11px}
/* Respondido y aprobado deben poder distinguirse también sin comparar dos verdes. */
.caseNavStatus.answered,.statusDot.answered{background:#ba801b;box-shadow:0 0 0 3px #ba801b1a}
.caseNavStatus.approved,.statusDot.approved{background:#11785e;box-shadow:0 0 0 3px #11785e1a}
.tabs{top:96px;padding:5px;gap:4px;background:#fff;border-color:var(--line);backdrop-filter:none;box-shadow:0 4px 14px #102b3a08;counter-reset:workspace-tab}
.tabBtn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 8px;font-size:12px;font-weight:650;min-height:42px;white-space:nowrap}
.tabBtn::before{counter-increment:workspace-tab;content:counter(workspace-tab,decimal-leading-zero);font-size:10px;opacity:.7;font-variant-numeric:tabular-nums}
.tabBtn.active{background:#143e4d;box-shadow:none}.tabBtn:hover:not(.active){background:#edf5f7}
.caseWorkspace{grid-template-columns:minmax(0,1fr) 300px;gap:18px}.caseDescription{font-size:13px;line-height:1.65}
.caseOverviewCard{border-top:3px solid #198a95}.caseOverviewCard .alert{margin-bottom:0}
.inspectionCard{padding:12px}.inspectionPhotoPanel{padding:12px;background:#f5f8fa;border-color:#e0e8ed}
.refImageWrap{box-shadow:none;padding:7px;border-color:#37596b}.photoHeader{gap:12px}
.photoHeader>.small{font-size:11px;max-width:320px!important}.refCaption{font-size:12px;line-height:1.65}
.refThumbs{gap:8px}.refThumb{border-radius:10px;border-width:1px}.refThumb.active{border-color:#087c91;box-shadow:0 0 0 2px #087c9120}
.methodCard{border-top:3px solid #188c91}.radioRow label{font-size:12px;padding:10px;min-height:40px;background:#f7fafb}
.radioRow label:has(input:checked){border-color:#087c91;background:#e8f5f6;box-shadow:inset 0 0 0 1px #087c91}
label{font-size:12px;color:#395361}select,input[type=number],input[type=password],textarea{border-color:#bccfd9;border-radius:8px;font-family:inherit;font-size:13px;min-height:40px}
input[type=range],input[type=checkbox],input[type=radio]{accent-color:#087c91}
textarea{line-height:1.65}#learningNotes{min-height:110px}#reportText{min-height:400px;font:12px/1.75 "Cascadia Code",Consolas,monospace;background:#f6f9fb}
button{font-size:12px;font-weight:650;min-height:36px;transition:background .15s,border-color .15s,box-shadow .15s}
button:hover:not(:disabled),button:active:not(:disabled){transform:none}.primaryAction,.validateAction{min-height:44px}
.btnGreen{background:#11785e}.btnGreen:hover{background:#0d624d}.btn2{background:#486575}.btn{background:#087c91}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #d29936;outline-offset:3px}
.checklistCard{max-width:100%;border-top:3px solid #178c91}.checkitem{padding:14px;margin:8px 0;background:#f8fafb;border-radius:10px}.checkitem label{font-size:13px;font-weight:500;line-height:1.6}.checkitem:has(input:checked){background:#eaf5f3;border-color:#7eb5a8}
.checkitem input{width:17px;height:17px;flex-shrink:0}.small{line-height:1.65}
.metric{padding:12px;background:#f4f8fa;border-color:#e1e9ee}.metric b{color:#59717f}.metric span{font-size:13px}
.alert{font-size:13px;line-height:1.7;font-weight:500;padding:14px 16px}.alert b{font-weight:750}.alert ul{padding-left:20px}.alert li+li{margin-top:7px}
.warn{background:#fff8e9;border-color:#e7cf99;color:#795115}.ok{background:#eaf6f0;border-color:#abd0bf;color:#145d48}
.info{background:#edf7fa;border-color:#c4dfe8;color:#285f71}.bad{background:#fdf0ef;color:#963a34;border-color:#ecc8c4}
.acceptanceDisclaimer,.componentNeutralNote{font-size:11px;line-height:1.6}
#historyBox>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;line-height:1.7;padding:14px;background:#f7fafb;font-size:12px}
#historyBox button{margin:0;border:1px solid #b9d0d9;color:#205368;background:#e9f3f7}.historyCard{max-height:540px}.historyCard h2{margin-bottom:14px}#archivedReport{overflow-wrap:anywhere;font-size:12px;line-height:1.7}
/* Las estaciones interactivas necesitan el ancho completo de la mesa de trabajo. */
.caseWorkspace:has(#methodStation:not([hidden])),.caseWorkspace:has(#vtWorkbench:not([hidden])){grid-template-columns:minmax(0,1fr)}
.caseWorkspace:has(#methodStation:not([hidden]))>.caseWorkspaceSide,.caseWorkspace:has(#vtWorkbench:not([hidden]))>.caseWorkspaceSide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}
.caseWorkspace:has(#methodStation:not([hidden])) .interpretationCard,.caseWorkspace:has(#vtWorkbench:not([hidden])) .interpretationCard{grid-column:1/-1}
#lpLab,#methodStation,#case7Inspector.show{background:var(--lab-ink);border-color:#345968;border-radius:14px;padding:20px;box-shadow:none}
#lpLab h3,#methodStation h3{font-size:20px;letter-spacing:-.025em;margin:0 0 10px}#lpLab h4,#methodStation h4{font-size:14px;margin:14px 0 10px}
.lpTitle,.processTitle,.utHeading{padding-bottom:10px;border-bottom:1px solid #365464;margin-bottom:14px}
.lpTitle small,.processTitle span,.utEyebrow{color:#9bdfd5;font-size:10px;letter-spacing:.08em}
.lpClock,.utConfig{background:#1a3c4b;border:1px solid #3b6070;border-radius:10px}
.lpLayout{grid-template-columns:minmax(0,1.9fr) minmax(240px,1fr);gap:20px}.processLayout{grid-template-columns:minmax(0,1.7fr) minmax(250px,1fr);gap:20px}
#lpSurface,#processPhoto,.utPhotoSurface{border-color:#5b7885;box-shadow:0 5px 16px #00000020}
#lpLab button,#methodStation button,#case7Inspector button{background:#214a5e;border-color:#547989;border-radius:8px;min-height:38px;font-size:12px;font-weight:600}
#lpLab button:hover:not(:disabled),#methodStation button:hover:not(:disabled),#case7Inspector button:hover:not(:disabled){background:#2a5c70;box-shadow:none}
#lpTools{gap:8px}#lpTools button{min-height:52px;padding:9px;font-size:12px}#lpTools button span{font-size:22px;flex-shrink:0}
#lpTools button[aria-pressed=true]{background:#176355;border-color:#83e3c9}.lpTray,.processControls{padding:0 0 0 16px;border-left:1px solid #365464}
#lpLab label,#methodStation label,#case7Inspector label{color:#c3d9e4;font-size:12px}#lpLab input:not([type=checkbox]):not([type=range]),#lpLab select,#methodStation input[type=number],#methodStation select{background:#0c2635;border:1px solid #5b7e8e;color:#f1f7fa;min-height:40px}
.lpViewer{gap:8px;padding:6px 0}.lpMetrics{gap:6px;margin:10px 0}.lpMetrics span{border:1px solid #385f70;background:#193d4c;font-size:11px;padding:5px 8px}
.lpSmall,#methodStation .processSmall,.utSmall{color:#b8cdd7;font-size:11px;line-height:1.7}
.utSurfacePane,.utInstrumentPane{background:#132f40;border-color:#3e6072;padding:14px}.utPaneTitle h3{font-size:15px}.utReadout{font-size:12px;line-height:1.65}
#vtWorkbench{padding:20px;background:#eef6f7;border-color:#bbd1d8;border-radius:14px}#vtWorkbench h3{font-size:20px;letter-spacing:-.025em;color:#163b4c}
#vtWorkbench .vtLayout{grid-template-columns:minmax(0,1.7fr) minmax(250px,1fr)}#vtWorkbench output{padding:10px;background:#e1eff2;border-radius:8px}
.case1UtPanel,.case8MeasurementPanel,.case9MeasurementPanel,.case10MeasurementPanel{border-radius:10px}
@media(min-width:1840px){.learningBar{margin-left:auto;margin-right:auto}}
@media(max-width:1200px){
  .wrap{grid-template-columns:1fr;padding:16px}.sidebar{position:static;max-height:none}.caseSelectorCard{display:grid;grid-template-columns:200px minmax(0,1fr) auto;gap:8px 16px;align-items:center}
  .caseSelectorCard .sectionHeading{margin:0;grid-row:1/3}.caseSelectorCard>label{margin:0}.caseSelectorCard>select{grid-column:2;grid-row:2}.caseNavigator{display:none}
  .caseActions{grid-column:3;grid-row:1/3;margin:0;flex-direction:row}.caseActions button{white-space:nowrap}.sidebarLegend{margin-top:9px;justify-content:flex-start}
  .learningBar{margin:16px 16px 0}.caseWorkspace{grid-template-columns:minmax(0,1fr) 290px}
}
@media(max-width:900px){
  html{scroll-padding-top:16px}.header{position:static;gap:12px;padding:14px 16px}.headerBrand{min-width:0;width:auto}.headerMode{width:auto;margin-left:auto}.headerContext{display:none}.headerBrand p{max-width:310px}
  .tabs{position:static;overflow-x:auto}.tabBtn{min-width:145px}.learningBar{grid-template-columns:220px minmax(0,1fr);gap:16px}
  .caseWorkspace{grid-template-columns:minmax(0,1fr)}.caseWorkspaceSide,.utActive .caseWorkspaceSide,.lpActive .caseWorkspaceSide,
  .caseWorkspace:has(#methodStation:not([hidden]))>.caseWorkspaceSide,.caseWorkspace:has(#vtWorkbench:not([hidden]))>.caseWorkspaceSide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .caseWorkspaceSide .interpretationCard{grid-column:1/-1}.lpLayout,.processLayout,#vtWorkbench .vtLayout{grid-template-columns:minmax(0,1fr)}
  .lpMain,.lpClock,.processView{position:static}.lpTray,.processControls{border-left:0;border-top:1px solid #365464;padding:12px 0 0}
  #lpTools{grid-template-columns:repeat(4,minmax(0,1fr))}#lpSurface{scroll-margin-top:16px}
}
@media(max-width:600px){
  body{font-size:13px}.headerBrand{min-width:100%}.header h1{font-size:17px}.headerBrand p{font-size:11px;max-width:none}.headerMode{width:100%;margin:0}.headerMode .badge{display:inline-block;font-size:10px}.modeSwitch{flex:0 0 auto}
  .wrap{padding:10px;gap:14px}.card{padding:14px;border-radius:12px}.learningBar{margin:10px 10px 0;grid-template-columns:1fr;gap:8px;padding:12px 14px}.learningMessages p{font-size:11px}
  .caseSelectorCard{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px}.caseSelectorCard .sectionHeading{grid-row:auto;grid-column:1/-1}.caseSelectorCard>label{grid-column:1;grid-row:auto}.caseSelectorCard>select{grid-column:1;grid-row:3}.caseActions{grid-column:2;grid-row:2/4;flex-direction:column;gap:5px}.caseActions button{min-height:36px;padding:7px;font-size:11px}.sidebarLegend{font-size:10px;gap:9px}
  .tabs{margin-bottom:12px}.tabBtn{min-width:135px;font-size:11px;gap:5px}.caseOverviewCard h2{font-size:18px}.caseDescription{font-size:12px}
  .caseWorkspaceSide,.utActive .caseWorkspaceSide,.lpActive .caseWorkspaceSide,
  .caseWorkspace:has(#methodStation:not([hidden]))>.caseWorkspaceSide,.caseWorkspace:has(#vtWorkbench:not([hidden]))>.caseWorkspaceSide{grid-template-columns:minmax(0,1fr)}
  .caseWorkspaceSide .card,.caseWorkspaceSide .interpretationCard{grid-column:auto}.componentMetrics{grid-template-columns:1fr 1fr}.radioRow{grid-template-columns:1fr 1fr}.row>*{min-width:0}
  #lpLab,#methodStation,#case7Inspector.show,#vtWorkbench{padding:12px;border-radius:11px}.inspectionCard{padding:7px}.inspectionPhotoPanel{padding:7px}.photoHeader>.small{max-width:none!important;text-align:left!important}
  #lpTools{grid-template-columns:1fr 1fr}#lpTools button{min-height:48px}.lpClock{grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding:10px}#lpClockValue{grid-column:1/-1}.lpClock input{max-width:100%}
  .lpTitle>span,.processTitle span{font-size:11px}.utConfig{grid-template-columns:repeat(2,minmax(0,1fr))}.utPosition{grid-template-columns:minmax(0,1fr) 58px 100px}
  .checkitem{padding:12px}.alert{padding:12px;font-size:12px}#historyBox>div{padding:12px}.refImageWrap{padding:5px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
