:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#172033;background:#f5f7fb}*{box-sizing:border-box}body{margin:0}header{background:#172033;color:#fff}.wrap{max-width:980px;margin:auto;padding:18px}.nav{display:flex;justify-content:space-between;align-items:center}.brand,.nav a{color:#fff;text-decoration:none}.nav nav{display:flex;gap:16px}.card{background:#fff;border:1px solid #e4e8f0;border-radius:14px;padding:18px;margin:14px 0;box-shadow:0 4px 18px #0000000d}.narrow{max-width:460px;margin:60px auto}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stats .card{display:flex;flex-direction:column;text-align:center}.stats b{font-size:28px}.topic{display:flex;justify-content:space-between;align-items:center}.btn,button{background:#2457d6;color:white;border:0;border-radius:10px;padding:10px 16px;text-decoration:none;cursor:pointer}label{display:block;margin:12px 0}input[type=text],input[type=password],input:not([type]){width:100%;padding:10px}.opt{padding:10px;border-radius:8px;background:#f7f9fc}.q.ok{border-left:5px solid #27965f}.q.bad{border-left:5px solid #c94545}.muted,small{color:#667085}.flash{background:#fff5cc;padding:12px;border-radius:10px}@media(max-width:700px){.grid{grid-template-columns:1fr}.topic{align-items:flex-start;gap:10px}.nav{gap:10px;flex-direction:column}.wrap{padding:12px}}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.secondary{background:#52657f}.topic-actions{display:flex;gap:8px}.mini{padding:12px!important}.source-stats{margin-top:4px}.check{display:block;margin:8px 0}.topic-checks{columns:2;column-gap:24px}select{padding:10px;border:1px solid #ccd3df;border-radius:8px;background:#fff}@media(max-width:700px){.topic-checks{columns:1}.topic-actions{flex-wrap:wrap}}
.sim-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.preset-card{display:flex;gap:10px;align-items:flex-start;padding:14px;border:1px solid #dce3ef;border-radius:12px;background:#f8faff}.preset-card span{display:flex;flex-direction:column;gap:4px}.source-boxes{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.big-btn{margin-top:18px;font-size:1.05rem}.quiz-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.timer{position:sticky;top:10px;background:#172033;color:#fff;font-weight:800;font-size:1.4rem;padding:12px 18px;border-radius:12px;z-index:5}.breakdown{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.breakdown .mini{display:flex;flex-direction:column;gap:5px}.score-box{display:flex;justify-content:space-between;align-items:center}@media(max-width:700px){.sim-grid,.source-boxes,.breakdown{grid-template-columns:1fr}.quiz-head{align-items:flex-start}.timer{font-size:1.1rem}.score-box{display:block}}

.answer-line{display:grid;grid-template-columns:150px 32px 1fr;gap:10px;align-items:start;margin:10px 0;padding:12px 14px;border-radius:10px}
.answer-line strong{font-size:1.05rem}
.answer-label{font-weight:700}
.answer-bad{background:#fff1f1;border:1px solid #f1c2c2}
.answer-ok,.answer-correct{background:#edf9f2;border:1px solid #b9e2c9}
.answer-blank{background:#f4f6f8;border:1px solid #d8dde5}
.explanation{margin:14px 0;padding:12px 14px;background:#f7f9fc;border-radius:10px;border-left:4px solid #7b8ca8}
@media(max-width:700px){.answer-line{grid-template-columns:1fr;gap:4px}}

.failed-card .answer-correct{margin-top:12px}
.fail-count{font-weight:800;margin-bottom:8px}


/* v3.3 - corrección inmediata en modo estudio */
.live-score{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin:14px 0 8px;
  text-align:center;
}
.live-score div{display:flex;flex-direction:column;gap:2px}
.live-score b{font-size:1.45rem}
.live-score span{color:#667085}
.study-note{margin-top:8px}

.option-locked{pointer-events:none}
.answered-question .opt{cursor:default}
.picked-correct,.revealed-correct{
  background:#eaf8ef !important;
  border-color:#58ad78 !important;
}
.picked-wrong{
  background:#fff0f0 !important;
  border-color:#d9534f !important;
}
.instant-result{
  margin:12px 0;
  padding:12px 14px;
  border-radius:10px;
  line-height:1.45;
}
.instant-result-ok{
  background:#edf9f2;
  border:1px solid #b9e2c9;
}
.instant-result-bad{
  background:#fff1f1;
  border:1px solid #f1c2c2;
}
.instant-explanation{
  margin-top:9px;
  padding-top:9px;
  border-top:1px solid rgba(0,0,0,.09);
}
.instant-ok{border-left:5px solid #2f9e62}
.instant-bad{border-left:5px solid #d9534f}

@media(max-width:700px){
  .live-score{grid-template-columns:repeat(3,1fr);font-size:.92rem}
  .live-score b{font-size:1.2rem}
}

/* v3.4 - administración de usuarios */
.page-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:12px 0}
.admin-note{display:flex;justify-content:space-between;gap:16px;align-items:center}
.user-card h3{margin:0 0 8px}.user-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}
.user-badges{display:flex;gap:7px;flex-wrap:wrap}.badge{display:inline-block;padding:4px 9px;border-radius:999px;background:#eef1f6;color:#42506a;font-size:.82rem;font-weight:700}
.badge-admin{background:#e8edff;color:#2449a8}.badge-user{background:#f0f3f7;color:#455468}.badge-active{background:#e9f8ef;color:#237147}.badge-inactive{background:#fff0f0;color:#a93d3d}
.user-stats{display:grid;grid-template-columns:auto auto;gap:2px 8px;text-align:right}.user-stats b{font-size:1.2rem}.user-stats span{color:#667085}
.admin-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.admin-actions form{margin:0}.danger{background:#b83b3b}.password-box{margin-top:15px;border-top:1px solid #e7eaf0;padding-top:12px}.password-box summary{cursor:pointer;font-weight:700}.password-form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;margin-top:12px}.password-form label{margin:0}.password-form button{height:42px}.admin-note span{display:block}
@media(max-width:700px){.page-head,.user-head,.admin-note{align-items:flex-start;flex-direction:column}.password-form{grid-template-columns:1fr}.user-stats{text-align:left}.nav nav{flex-wrap:wrap;justify-content:center}}

/* v3.5 - Supuestos prácticos */
.practical-panel{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:18px 0;
}
.practical-panel h2{margin:0 0 6px}
.practical-panel p{margin:0}
.btn.practical{font-weight:800}
@media(max-width:700px){
  .practical-panel{display:block}
  .practical-panel .topic-actions{margin-top:14px}
}


/* v3.7 - Temario */
.study-header,.study-detail-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:20px;
  margin-bottom:18px;
}
.study-progress{
  min-width:150px;
  text-align:center;
  background:#fff;
  border-radius:12px;
  padding:14px;
  box-shadow:0 1px 4px rgba(0,0,0,.08);
}
.study-progress b{display:block;font-size:1.5rem}
.study-progress span{font-size:.88rem;color:#667085}
.search-card{margin-bottom:16px}
.search-card input{width:100%;margin-top:8px}
.study-topic-list{display:grid;gap:14px}
.study-topic{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
}
.study-topic-main{flex:1}
.study-topic h2{margin:3px 0 4px}
.study-topic p{margin:6px 0}
.topic-number{
  display:inline-block;
  font-size:.82rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:#475467;
}
.study-topic-actions{
  min-width:130px;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.read-badge{
  display:inline-block;
  background:#edf9f2;
  border:1px solid #b9e2c9;
  color:#207447;
  padding:7px 10px;
  border-radius:999px;
  font-size:.88rem;
  font-weight:700;
  text-align:center;
}
.lead{font-size:1.05rem;color:#475467}
.study-summary{border-left:5px solid #3448c5}
.study-section ul{margin:8px 0 0;padding-left:23px}
.study-section li{margin:9px 0;line-height:1.5}
.study-actions-card{margin-top:20px}
.source-note{margin:18px 2px 28px}
.back-link{display:inline-block;margin-bottom:14px;text-decoration:none}
@media(max-width:700px){
  .study-header,.study-detail-head,.study-topic{display:block}
  .study-progress{margin-top:12px}
  .study-topic-actions{margin-top:14px;min-width:0;flex-direction:row;flex-wrap:wrap}
}

/* v3.8 - temario ampliado */
.study-scheme-title{margin:24px 2px 12px}
.study-scheme-title h2{margin-bottom:4px}
.study-section{position:relative;padding-left:24px}
.study-section:before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:4px;
  background:#d8def8;
  border-radius:8px 0 0 8px;
}
.study-section h2{margin-top:0}
.study-section li{font-size:1rem}

/* v3.9 - apartados desplegables del temario */
.accordion-list{display:grid;gap:12px}
.study-accordion{padding:0;overflow:hidden}
.study-accordion summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:20px 22px;
  font-weight:800;
  font-size:1.08rem;
}
.study-accordion summary::-webkit-details-marker{display:none}
.study-accordion summary:after{
  content:"+";
  flex:0 0 auto;
  width:30px;height:30px;
  display:grid;place-items:center;
  border-radius:50%;
  background:#eef1ff;
  font-size:1.3rem;
}
.study-accordion[open] summary:after{content:"−"}
.study-accordion[open] summary{
  border-bottom:1px solid #e4e7ec;
}
.accordion-hint{
  margin-left:auto;
  font-size:.82rem;
  font-weight:600;
  color:#667085;
}
.accordion-body{padding:20px 24px 24px}
.expanded-summary{
  background:#f7f8ff;
  border-left:4px solid #4657d6;
  border-radius:8px;
  padding:15px 17px;
  margin-bottom:18px;
}
.expanded-summary h3{margin:0 0 7px}
.expanded-summary p{margin:0;line-height:1.6}
.accordion-body ul{margin:8px 0 0;padding-left:24px}
.accordion-body li{margin:8px 0;line-height:1.5}
@media(max-width:700px){
  .study-accordion summary{padding:17px 16px}
  .accordion-hint{display:none}
  .accordion-body{padding:16px}
}


/* v4.0 - acceso al temario original en PDF */
.pdf-actions{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:14px;
}
.original-material{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-left:5px solid #64748b;
}
.original-material h2{margin-top:0}
.original-material p{margin-bottom:0}
@media(max-width:700px){
  .original-material{display:block}
  .original-material .topic-actions{margin-top:14px}
  .pdf-actions{display:grid}
}


/* v4.1 - desarrollo desplegable de cada punto clave */
.keypoints-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:18px;
}
.keypoints-head h3{margin:0}
.keypoints-tools{display:flex;gap:8px}
.mini-link{
  background:none;
  border:0;
  padding:4px 6px;
  color:#475467;
  cursor:pointer;
  font-size:.82rem;
  text-decoration:underline;
}
.keypoints-list{
  display:grid;
  gap:9px;
  margin-top:12px;
}
.keypoint-detail{
  border:1px solid #e0e5ee;
  border-radius:10px;
  background:#fff;
  overflow:hidden;
}
.keypoint-detail summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:13px 15px;
  line-height:1.45;
}
.keypoint-detail summary::-webkit-details-marker{display:none}
.keypoint-detail summary:before{
  content:"•";
  font-size:1.4rem;
  line-height:1;
  flex:0 0 auto;
}
.keypoint-detail summary:after{
  content:"+";
  display:grid;
  place-items:center;
  min-width:25px;
  height:25px;
  border-radius:50%;
  background:#f0f3ff;
  font-weight:800;
}
.keypoint-detail[open] summary:after{content:"−"}
.keypoint-detail[open] summary{
  border-bottom:1px solid #e4e7ec;
  background:#fafbff;
}
.keypoint-hint{
  margin-left:auto;
  color:#667085;
  font-size:.8rem;
  white-space:nowrap;
}
.keypoint-body{
  padding:15px 18px 17px 42px;
  background:#fff;
}
.keypoint-body h4{margin:0 0 7px}
.keypoint-body p{
  margin:0;
  line-height:1.65;
}
.keypoint-pdf-link{
  display:inline-block;
  margin-top:11px;
  font-size:.88rem;
}
@media(max-width:700px){
  .keypoint-hint{display:none}
  .keypoints-tools{display:none}
  .keypoint-body{padding:14px 15px}
}


/* v4.2 - mapa de sedes */
.sedes-map{
  width:100%;
  height:560px;
  border-radius:14px;
  border:1px solid #d7dce5;
  overflow:hidden;
  margin:14px 0 18px;
  box-shadow:0 4px 18px rgba(15,23,42,.08);
}
.map-tools{margin-bottom:12px}
.map-filter-row{display:flex;flex-wrap:wrap;gap:8px}
.map-location-list{display:grid;gap:12px;margin-top:16px}
.map-location-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.map-location-card h3{margin:5px 0 4px}
.map-location-card p{margin:0;color:#667085}
.map-category{
  display:inline-block;
  font-size:.78rem;
  font-weight:800;
  background:#eef1ff;
  border-radius:999px;
  padding:5px 9px;
  color:#3e4dac;
}
.map-study-tip{margin-top:16px}
.map-topic-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  border-left:5px solid #10b981;
}
.map-topic-card h2{margin-top:0}
@media(max-width:700px){
  .sedes-map{height:430px}
  .map-location-card,.map-topic-card{display:block}
  .map-location-card .topic-actions,.map-topic-card .topic-actions{margin-top:12px}
  .map-filter-row .btn{font-size:.86rem;padding:8px 10px}
}

/* v4.2.1 - fallback básico para Leaflet */
.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane > svg,
.leaflet-pane > canvas,
.leaflet-zoom-box {
  position:absolute;
  left:0;
  top:0;
}
.leaflet-container{overflow:hidden;background:#ddd;outline-offset:1px}
.leaflet-tile-pane{z-index:200}
.leaflet-overlay-pane{z-index:400}
.leaflet-shadow-pane{z-index:500}
.leaflet-marker-pane{z-index:600}
.leaflet-tooltip-pane{z-index:650}
.leaflet-popup-pane{z-index:700}
.leaflet-map-pane canvas{z-index:100}
.leaflet-map-pane svg{z-index:200}
.leaflet-control{position:relative;z-index:800;pointer-events:auto}
.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}
.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}
.leaflet-control{float:left;clear:both}
.leaflet-right .leaflet-control{float:right}
.leaflet-top .leaflet-control{margin-top:10px}
.leaflet-bottom .leaflet-control{margin-bottom:10px}
.leaflet-left .leaflet-control{margin-left:10px}
.leaflet-right .leaflet-control{margin-right:10px}
.leaflet-tile{user-select:none;-webkit-user-drag:none}
.leaflet-tile-loaded{visibility:inherit}

/* v4.3 - rueda de preguntas difíciles */
.wheel-layout{
  display:grid;
  grid-template-columns:minmax(310px,460px) 1fr;
  gap:18px;
  align-items:start;
}
.wheel-card{text-align:center;position:relative;overflow:hidden}
.topic-wheel{
  width:min(360px,80vw);
  aspect-ratio:1;
  margin:20px auto;
  border-radius:50%;
  position:relative;
  border:10px solid #fff;
  box-shadow:0 8px 26px rgba(15,23,42,.18);
  transition:transform 2.2s cubic-bezier(.12,.7,.15,1);
  background:conic-gradient(
    #dbeafe 0deg 32.727deg,
    #e0e7ff 32.727deg 65.454deg,
    #ede9fe 65.454deg 98.181deg,
    #fce7f3 98.181deg 130.908deg,
    #fee2e2 130.908deg 163.635deg,
    #ffedd5 163.635deg 196.362deg,
    #fef3c7 196.362deg 229.089deg,
    #ecfccb 229.089deg 261.816deg,
    #d1fae5 261.816deg 294.543deg,
    #ccfbf1 294.543deg 327.270deg,
    #cffafe 327.270deg 360deg
  );
}
.wheel-pointer{
  width:0;height:0;
  border-left:18px solid transparent;
  border-right:18px solid transparent;
  border-top:34px solid #1d4ed8;
  position:absolute;
  top:12px;left:50%;
  transform:translateX(-50%);
  z-index:5;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.2));
}
.wheel-label{
  position:absolute;
  left:50%;top:50%;
  font-weight:900;
  font-size:1.05rem;
  transform-origin:0 0;
}
.wheel-label-1{transform:rotate(16.36deg) translate(125px) rotate(-16.36deg)}
.wheel-label-2{transform:rotate(49.09deg) translate(125px) rotate(-49.09deg)}
.wheel-label-3{transform:rotate(81.82deg) translate(125px) rotate(-81.82deg)}
.wheel-label-4{transform:rotate(114.55deg) translate(125px) rotate(-114.55deg)}
.wheel-label-5{transform:rotate(147.27deg) translate(125px) rotate(-147.27deg)}
.wheel-label-6{transform:rotate(180deg) translate(125px) rotate(-180deg)}
.wheel-label-7{transform:rotate(212.73deg) translate(125px) rotate(-212.73deg)}
.wheel-label-8{transform:rotate(245.45deg) translate(125px) rotate(-245.45deg)}
.wheel-label-9{transform:rotate(278.18deg) translate(125px) rotate(-278.18deg)}
.wheel-label-10{transform:rotate(310.91deg) translate(125px) rotate(-310.91deg)}
.wheel-label-11{transform:rotate(343.64deg) translate(125px) rotate(-343.64deg)}
.wheel-spin{font-size:1.08rem;padding:12px 24px}
.wheel-topic-text{font-weight:700;min-height:2.8em;margin-top:12px}
.wheel-question-card{min-height:420px}
.wheel-options{display:grid;gap:10px;margin:18px 0}
.wheel-option{
  width:100%;
  text-align:left;
  border:1px solid #d7dce5;
  background:#fff;
  border-radius:10px;
  padding:14px 15px;
  cursor:pointer;
  font-size:1rem;
  color:inherit;
}
.wheel-option:hover:not(:disabled){background:#f8faff;border-color:#8da2fb}
.wheel-option:disabled{cursor:default;opacity:1}
.wheel-option-correct{background:#eaf8ef!important;border-color:#49a66d!important}
.wheel-option-wrong{background:#fff0f0!important;border-color:#d9534f!important}
.wheel-score{display:flex;gap:20px;text-align:center}
.wheel-score div{min-width:72px}
.wheel-score b{display:block;font-size:1.45rem}
.wheel-score span{font-size:.85rem;color:#667085}
.wheel-info{margin-top:18px}
.challenge-panel{border-left:5px solid #7c3aed}
@media(max-width:800px){
  .wheel-layout{grid-template-columns:1fr}
  .wheel-score{margin-top:12px}
  .topic-wheel{width:min(330px,78vw)}
}

/* v4.4 - examen práctico oficial Orihuela 2024 */
.official-exam-panel{border-left:5px solid #b7791f}
.official-exam-info{border-left:5px solid #b7791f;margin-bottom:18px}
.official-q-number{
  font-size:.82rem;
  text-transform:uppercase;
  font-weight:800;
  color:#667085;
  margin-bottom:8px;
}
.official-q{margin-bottom:14px}
.official-reserve-link{margin-top:20px}
.official-result-stats .passed{border-left:5px solid #2f9e62}
.official-result-stats .failed{border-left:5px solid #d9534f}
.result-card{margin:14px 0}
.result-ok{border-left:5px solid #2f9e62}
.result-bad{border-left:5px solid #d9534f}

/* v4.5 - selector de exámenes oficiales */
.official-exams-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.official-exam-choice{position:relative}
.official-year{
  display:inline-block;
  padding:6px 10px;
  border-radius:999px;
  background:#eef1ff;
  color:#3f51b5;
  font-weight:900;
  margin-bottom:8px;
}
.exam-timer{
  text-align:center;
  min-width:120px;
}
.exam-timer small{display:block;color:#667085}
.exam-timer b{display:block;font-size:1.55rem;margin-top:4px}
@media(max-width:760px){
  .official-exams-grid{grid-template-columns:1fr}
}

/* v4.6 - tres exámenes oficiales */
.official-exams-grid-3{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.featured-official{
  border-top:4px solid #4f46e5;
}
@media(max-width:1050px){
  .official-exams-grid-3{grid-template-columns:1fr}
}


/* v4.7 - estadísticas y progresión */
.dashboard-kpis{
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-bottom:18px;
}
.chart-card{margin:18px 0}
.chart-wrap{
  position:relative;
  height:330px;
  margin-top:16px;
}
.chart-wrap-tall{height:430px}
.topic-stats-table{
  overflow-x:auto;
  margin-top:20px;
}
.topic-stats-table table{
  width:100%;
  border-collapse:collapse;
}
.topic-stats-table th,
.topic-stats-table td{
  padding:11px 10px;
  text-align:left;
  border-bottom:1px solid #e5e7eb;
}
.topic-stats-table th{
  font-size:.82rem;
  text-transform:uppercase;
  color:#667085;
}
.topic-stats-table small{color:#667085}
.small-btn{padding:6px 10px;font-size:.85rem}
.admin-stats-card{margin-top:18px}
@media(max-width:760px){
  .dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .chart-wrap{height:290px}
  .chart-wrap-tall{height:390px}
}

/* Administrativo Orihuela · interfaz independiente */
:root{--ink:#13243b;--blue:#165c97;--accent:#2a8a98}
body{background:#f4f7fa;color:var(--ink)}header{background:#112941;border-bottom:4px solid #1690a8}.brand{font-size:1.18rem;font-weight:800;white-space:nowrap}.brand span{font-weight:500;color:#bcdbe6}.nav{gap:14px}.nav nav{flex-wrap:wrap;justify-content:flex-end;gap:12px}.nav nav a{font-size:.91rem}.nav nav a:hover{text-decoration:underline}
.hero{background:linear-gradient(120deg,#133653,#185578);color:#fff;padding:35px;border-radius:18px;margin:16px 0 18px}.hero h1{font-size:clamp(1.5rem,3vw,2.2rem);max-width:700px;line-height:1.23}.hero p{line-height:1.6;max-width:810px;color:#e7f6ff}.eyebrow{font-weight:800;letter-spacing:.06em;font-size:.73rem;color:#99ecff}.btn,button{background:#155e96}.btn:hover,button:hover{filter:brightness(.95)}.ghost{background:#e9eff5;color:#143d59}.hero .ghost{background:#e3f7ff;color:#164466}.site-footer{color:#68768b;font-size:.83rem;padding-top:5px;padding-bottom:27px}.card{box-shadow:0 3px 14px #15385f0a}.card p,.study-accordion p{line-height:1.65}.study-topic h2{font-size:1.18rem}.topic h3{margin:.2rem 0}.topic{gap:16px}.topic-actions{align-items:center;flex-wrap:wrap}.card ol li,.card ul li{line-height:1.7;margin:.4rem 0}
@media(max-width:760px){.hero{padding:22px}.nav{flex-direction:column;align-items:stretch}.nav nav{justify-content:flex-start}.study-topic{flex-direction:column;align-items:stretch}}

/* Rueda de 15 temas · franjas de 24 grados y etiquetas centradas */
.topic-wheel{background:repeating-conic-gradient(#dbeafe 0deg 24deg,#e0f2fe 24deg 48deg,#d1fae5 48deg 72deg,#fff1d6 72deg 96deg,#ede9fe 96deg 120deg)}
.wheel-label-1{transform:rotate(-78.0deg) translate(125px) rotate(78.0deg)}
.wheel-label-2{transform:rotate(-54.0deg) translate(125px) rotate(54.0deg)}
.wheel-label-3{transform:rotate(-30.0deg) translate(125px) rotate(30.0deg)}
.wheel-label-4{transform:rotate(-6.0deg) translate(125px) rotate(6.0deg)}
.wheel-label-5{transform:rotate(18.0deg) translate(125px) rotate(-18.0deg)}
.wheel-label-6{transform:rotate(42.0deg) translate(125px) rotate(-42.0deg)}
.wheel-label-7{transform:rotate(66.0deg) translate(125px) rotate(-66.0deg)}
.wheel-label-8{transform:rotate(90.0deg) translate(125px) rotate(-90.0deg)}
.wheel-label-9{transform:rotate(114.0deg) translate(125px) rotate(-114.0deg)}
.wheel-label-10{transform:rotate(138.0deg) translate(125px) rotate(-138.0deg)}
.wheel-label-11{transform:rotate(162.0deg) translate(125px) rotate(-162.0deg)}
.wheel-label-12{transform:rotate(186.0deg) translate(125px) rotate(-186.0deg)}
.wheel-label-13{transform:rotate(210.0deg) translate(125px) rotate(-210.0deg)}
.wheel-label-14{transform:rotate(234.0deg) translate(125px) rotate(-234.0deg)}
.wheel-label-15{transform:rotate(258.0deg) translate(125px) rotate(-258.0deg)}

/* v2 · Lecturas, casos y accesibilidad */
.reading-content p{margin:.7em 0;overflow-wrap:anywhere;white-space:pre-wrap;} .reading-heading{margin:1.7em 0 .7em;padding-top:1rem;border-top:1px solid #d8dee7;} .study-topic[hidden]{display:none!important} .rubric-score{width:18px;height:18px;accent-color:#2960af;}
