/* ==========================================================================
   OPOS Infermeria — capa de disseny v2 de l'APP (index.html)
   Es carrega DESPRÉS de styles.css. No toca cap lògica: només tokens, tipografia,
   barra lateral, targetes del temari, examen i barra inferior. Mode fosc inclòs.
   ========================================================================== */
:root{
  --bg:#f4f7f6;--surface:#ffffff;--surface-alt:#eef2f1;--border:#dfe7e5;
  --text:#0b1a2a;--text-muted:#4f6270;--text-faint:#8393a5;
  --brand:#0d9488;--brand-dark:#0f766e;--brand-light:#ccfbf1;--brand-tint:#e6f7f4;
  --sidebar-bg:#0b1c26;--sidebar-bg-alt:#10293a;--sidebar-text:#c4d2d9;--sidebar-text-dim:#7f93a1;
  --c-gold:#b45309;--c-gold-bg:#fff8ee;--c-gold-border:#f5d9b0;
  --shadow:0 1px 2px rgba(11,26,42,.04),0 8px 24px rgba(11,26,42,.05);
  --radius-lg:16px;--radius-md:14px;--radius-sm:10px;
  --font-display:'Poppins',system-ui,sans-serif;--font-body:'Source Sans 3',system-ui,-apple-system,'Segoe UI',sans-serif;
}
[data-theme="dark"]{
  --bg:#0b141c;--surface:#14222c;--surface-alt:#0f1b24;--border:#233541;
  --text:#e8eef2;--text-muted:#9fb1bd;--text-faint:#6f8290;
  --brand:#2dd4bf;--brand-dark:#5eead4;--brand-light:#0f3d38;--brand-tint:#0f2f2b;
  --sidebar-bg:#0a161e;--sidebar-bg-alt:#0f1b24;
  --c-gold:#f0b35b;--c-gold-bg:#2a2010;--c-gold-border:#5a4520;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 12px 28px rgba(0,0,0,.35);
}
body{font-family:var(--font-body);font-size:16px;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,.welcomeTitle,.printCoverTitle{font-family:var(--font-display);letter-spacing:-.02em}
h1{font-weight:700}h2,h3,h4{font-weight:600}

/* Icones SVG en línia (substitueixen els emojis) */
.ic{display:inline-block;vertical-align:-.15em;flex:none}
.icDot{display:inline-block;width:.7em;height:.7em;border-radius:999px;vertical-align:-.02em;margin-right:.1em}
h1 .ic,h2 .ic{width:.9em;height:.9em;color:var(--brand-dark)}

/* Barra lateral: fons pla, jerarquia clara */
#sidebar{background:var(--sidebar-bg);color:var(--sidebar-text)}
#sidebar .brand{font-family:var(--font-display);font-weight:600;font-size:15px;padding:18px 16px;border-bottom:1px solid rgba(255,255,255,.08)}
#sidebar .brand .logo{width:38px;height:38px;border-radius:11px;background:#0d9488;color:#fff;box-shadow:0 0 0 4px rgba(45,212,191,.16),0 8px 20px rgba(13,148,136,.45)}
#sidebar .brand small{color:var(--sidebar-text-dim);font-weight:500;letter-spacing:.02em}
#modeSwitch{gap:6px}
#modeSwitch button{font-family:var(--font-display);font-weight:600;border-radius:10px}
#modeSwitch button.active{background:#0d9488;color:#fff;box-shadow:none}
#sidebar .sideThemeRow button,#sidebar .sideLangRow button{border-radius:10px;font-family:var(--font-body);font-weight:600}
#sidebar .sideLangRow button.active{background:#0d9488;color:#fff;box-shadow:none}
#sidebar .sideProgress{color:var(--sidebar-text-dim)}
.sideToolBtn{border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:var(--sidebar-text);font-family:var(--font-body)}
.sideToolBtn:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16)}
.sideToolIcon{color:#2dd4bf}
.sideToolLabel{font-weight:600}
.sideToolCount{color:var(--sidebar-text-dim)}
#topicList button{border-radius:10px;font-family:var(--font-body)}
#topicList .active{background:rgba(255,255,255,.08)}

/* Capçalera de contingut */
.top{background:var(--surface);border-bottom:1px solid var(--border);box-shadow:none;font-family:var(--font-body)}
.top input{border-radius:10px;background:var(--surface-alt);border:1px solid var(--border);font-family:var(--font-body)}

/* Inici: hero pla i targetes de tema */
.welcomeHero{background:var(--surface);border:1px solid var(--border);box-shadow:none;border-radius:20px}
.welcomeEyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brand-dark)}
.welcomeTitle{font-size:clamp(24px,2.6vw,32px);font-weight:700}
.welcomeName{color:var(--brand-dark)}
.welcomeStats > *{background:var(--surface-alt);border:1px solid var(--border);border-radius:14px;font-family:var(--font-body)}
.welcomeStats b{font-family:var(--font-display);font-weight:700}
.welcomeGridLabel{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}
.topicPickerCard{box-shadow:none;border-radius:16px;padding:18px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.topicPickerCard:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--brand)}
.topicPickerIcon{border-radius:12px;background:var(--brand-tint);color:var(--brand-dark)}
.topicPickerTitle{font-family:var(--font-display);font-weight:600;font-size:15px;line-height:1.3}
.topicPickerCount{color:var(--text-muted)}

/* Temari: seccions i blocs sense vora esquerra, etiqueta amb punt de color */
.tsection > h2{font-size:22px;font-weight:600;border-bottom:1px solid var(--border);padding-bottom:12px;gap:12px}
.tsection > h2 .secnum{width:30px;height:30px;background:var(--sidebar-bg);color:#fff;font-family:var(--font-display);font-size:13px;font-weight:600}
[data-theme="dark"] .tsection > h2 .secnum{background:#0d9488}
.blk{border:1px solid var(--border);border-left:1px solid var(--border);background:var(--surface);box-shadow:none;border-radius:16px;padding:18px 20px}
.blk .blk-label,.blk-estrella .blk-label,.blk-proceso .blk-label{font-size:11px;font-weight:700;letter-spacing:.1em;gap:8px}
.blk .blk-label::before,.blk-estrella .blk-label::before{content:"";width:8px;height:8px;border-radius:999px;background:currentColor;flex:none}
.blk h4,.blk-estrella h4,.blk-proceso h4{font-size:17px;font-weight:600;line-height:1.3;color:var(--text)}
.blk p,.blk ul,.blk-estrella p,.blk-estrella ul{font-size:15.5px;line-height:1.55;color:var(--text)}
.blk-estrella{background:var(--c-gold-bg);border:1px solid var(--c-gold-border);box-shadow:none;border-radius:16px;padding:18px 20px}
.blk-proceso{box-shadow:none;border-radius:16px;padding:18px 20px}
.blk-proceso h4,.procstep .pbody h5{color:var(--text)}
.procstep .pbody h5{font-size:15px;font-weight:600}
.procstep .pbody p{font-size:14.5px;color:var(--text-muted)}
.procstep .num{font-family:var(--font-display);font-weight:600}
.summarybox,.side-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:none}
.side-card h3{font-family:var(--font-display);font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.asideFcCard{background:var(--sidebar-bg);color:#fff;border-color:transparent}
.asideFcCard h3{color:#7fe3d3}
.aside-fc-hint{color:var(--sidebar-text-dim)}

/* Botons */
.btnv2{font-family:var(--font-display);font-weight:600;font-size:15px;border-radius:12px;padding:12px 20px;display:inline-flex;align-items:center;gap:8px;box-shadow:0 8px 20px rgba(13,148,136,.25)}
.btnv2.secondary{box-shadow:none;background:var(--surface);border:1px solid var(--border);color:var(--text)}
.btnv2.secondary:hover{background:var(--brand-tint);border-color:var(--brand)}
[data-theme="dark"] .btnv2{background:#0d9488;color:#fff}
.linkbtn{font-weight:700;color:var(--brand-dark)}

/* Examen: opcions amb lletra, navegació neta */
.quizLayout{counter-reset:opt}
.optionBtnV2{counter-increment:opt;display:flex;align-items:center;gap:14px;text-align:left;font-family:var(--font-body);font-size:16.5px;padding:12px 16px;min-height:58px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text);box-shadow:none;transition:border-color .12s ease,background .12s ease}
.optionBtnV2::before{content:counter(opt,upper-alpha);width:32px;height:32px;border-radius:9px;background:var(--surface-alt);border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:14px;font-weight:600;flex:none}
.optionBtnV2:not(:disabled):hover{border-color:var(--brand);background:var(--brand-tint)}
.optionBtnV2.correct,.optionBtnV2.right,.optionBtnV2.ok,.optionBtnV2.reveal{background:#eefbf3;border:1.5px solid #15803d;color:#14532d;font-weight:600}
.optionBtnV2.correct::before,.optionBtnV2.right::before,.optionBtnV2.ok::before,.optionBtnV2.reveal::before{background:#15803d;border-color:#15803d;color:#fff}
.optionBtnV2.wrong,.optionBtnV2.incorrect,.optionBtnV2.bad{background:#fef2f2;border:1.5px solid #b91c1c;color:#7f1d1d;font-weight:600}
.optionBtnV2.wrong::before,.optionBtnV2.incorrect::before,.optionBtnV2.bad::before{background:#b91c1c;border-color:#b91c1c;color:#fff}
[data-theme="dark"] .optionBtnV2.correct,[data-theme="dark"] .optionBtnV2.right,[data-theme="dark"] .optionBtnV2.ok,[data-theme="dark"] .optionBtnV2.reveal{background:#0f2f1f;border-color:#22c55e;color:#bbf7d0}
[data-theme="dark"] .optionBtnV2.wrong,[data-theme="dark"] .optionBtnV2.incorrect,[data-theme="dark"] .optionBtnV2.bad{background:#3b1212;border-color:#ef4444;color:#fecaca}
.qText{font-family:var(--font-display);font-size:21px;font-weight:600;line-height:1.35}
.qTopicTag{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:999px;background:var(--brand-tint);color:var(--brand-dark);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.quizTimer{font-family:var(--font-display);font-weight:600}
.quizNavCol{border-radius:16px}
.qNavDot{border-radius:10px;font-family:var(--font-display);font-weight:600}
.quizNavStat b{font-family:var(--font-display);font-weight:700}

/* Barra inferior (mòbil) */
.bottomNav{background:var(--surface);border-top:1px solid var(--border);box-shadow:0 -10px 30px rgba(11,26,42,.06)}
.bnavBtn{font-family:var(--font-body);font-weight:600;color:var(--text-muted)}
.bnavBtn.active{color:var(--brand-dark)}
.bnavBadge{background:var(--brand);color:#fff;font-weight:700}

/* Portes d'accés i login */
.profileGate{background:var(--sidebar-bg)}
.profileGateBox{border-radius:22px;box-shadow:0 30px 80px rgba(0,0,0,.45)}
.profileGateBox h1{font-family:var(--font-display);font-weight:700}
.profileGateLogo{background:#0d9488;box-shadow:0 0 0 4px rgba(45,212,191,.18),0 10px 26px rgba(13,148,136,.5)}
.authForm input{border-radius:12px;font-family:var(--font-body);font-size:16px}

@media (prefers-reduced-motion:reduce){.topicPickerCard{transition:none}}
.logoPulse{stroke-dasharray:40;stroke-dashoffset:40;animation:logoDraw 4s ease-out infinite}
@keyframes logoDraw{0%{stroke-dashoffset:40;opacity:.4}20%{stroke-dashoffset:0;opacity:1}80%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:-40;opacity:.4}}
@media (prefers-reduced-motion:reduce){.logoPulse{animation:none;stroke-dashoffset:0}}
/* Contingut premium: etiquetes amb punt de color, icones de secció amagades, marcador d'alt rendiment */
.blk-proceso .blk-label::before{content:"";width:8px;height:8px;border-radius:999px;background:currentColor;flex:none}
.tsection > h2 .secicon{display:none}
.blk p > .ic:first-child,.blk li > .ic:first-child{color:var(--brand-dark);margin-right:2px}
.blk-alerta p > .ic:first-child{color:var(--c-red)}

/* ==========================================================================
   APP v3 — fidel a l'artboard: barra lateral amb jerarquia (navegació → temari →
   ajustos a baix), fons #070d12, eines com a llista, targetes i examen polits.
   Només CSS: no toca cap id ni cap funció de l'app.
   ========================================================================== */
:root{--sidebar-bg:#070d12;--sidebar-bg-alt:#0f1b24;--sidebar-text:#c4d2d9;--sidebar-text-dim:#7f93a1;--ease:cubic-bezier(.2,.8,.2,1)}
[data-theme="dark"]{--sidebar-bg:#070d12}
#sidebar{background:var(--sidebar-bg);gap:0;padding:0}
#sidebar::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:40px 40px;-webkit-mask:radial-gradient(ellipse at 30% 0%,#000 10%,transparent 60%);mask:radial-gradient(ellipse at 30% 0%,#000 10%,transparent 60%);pointer-events:none}
#sidebar > *{position:relative}
/* Ordre: marca, mode, eines (navegació), progrés, temari, i a baix perfil + idioma + tema */
#sidebar .brand{order:0;padding:18px 16px 14px}
#modeSwitch{order:1;padding:12px 14px 6px}
.sideToolsGrid{order:2;display:flex;flex-direction:column;gap:2px;padding:6px 10px 10px}
.sideProgress{order:3;padding:8px 16px 6px;border-top:1px solid rgba(255,255,255,.07);margin-top:4px}
.sideExamMeta{order:4;padding:0 16px 10px}
#topicList{order:5;flex:1 1 auto;min-height:120px;padding:4px 10px 16px}
.sideProfileRow{order:6;border-top:1px solid rgba(255,255,255,.08);padding:10px 14px 4px;margin-top:auto}
.sideLangRow{order:7;padding:4px 14px 4px}
.sideThemeRow{order:8;padding:4px 14px 14px}
/* Marca */
#sidebar .brand .logo{width:38px;height:38px;border-radius:11px;background:rgba(45,212,191,.12);border:1px solid rgba(45,212,191,.4);color:#2dd4bf;box-shadow:0 0 26px rgba(45,212,191,.22)}
#sidebar .brand{font-family:var(--font-display);font-weight:700;font-size:16px;letter-spacing:-.01em}
#sidebar .brand small{color:#7fe3d3;font-family:var(--font-display);font-weight:500;font-size:10px;letter-spacing:.16em;text-transform:uppercase;opacity:1}
/* Mode */
#modeSwitch button{height:42px;border-radius:11px;font-size:14px}
#modeSwitch button.active{background:#2dd4bf;color:#052e2b}
/* Eines com a navegació vertical */
.sideToolsGrid .sideToolBtn{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;height:42px;padding:0 12px;border:none;background:transparent;border-radius:10px;text-align:left;color:var(--sidebar-text);transition:background .15s,transform .2s var(--ease)}
.sideToolsGrid .sideToolBtn:hover{background:rgba(255,255,255,.07);border-color:transparent;transform:translateX(2px)}
.sideToolsGrid .sideToolBtn .sideToolIcon{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;color:#2dd4bf;opacity:1;flex:none}
.sideToolsGrid .sideToolIcon svg{width:18px;height:18px}
.sideToolsGrid .sideToolLabel{flex-grow:1;font-size:14.5px;line-height:1.3;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sideToolsGrid .sideToolCount{font-size:12px;opacity:1;color:var(--sidebar-text-dim);min-width:22px;text-align:right}
#srsDueCount:not(:empty){color:#fff;background:#0d9488;border-radius:999px;padding:1px 7px;min-width:22px;text-align:center;font-weight:700}
/* Progrés i data */
.sideProgress{font-size:12px;color:var(--sidebar-text-dim);letter-spacing:.02em}
.sideProgress b{color:#7fe3d3}
.sideExamMeta{font-size:13px;color:var(--sidebar-text)}
/* Temari */
#topicList li button.topicBtn,#topicList button{border-radius:10px;padding:8px 10px;font-size:14px;transition:background .15s,transform .2s var(--ease)}
#topicList button:hover{background:rgba(255,255,255,.06);transform:translateX(2px)}
#topicList button.active{background:rgba(255,255,255,.09);color:#fff;font-weight:700}
#topicList .count{color:var(--sidebar-text-dim);font-size:12px}
/* Ajustos a baix: fila compacta */
.sideProfileRow{font-size:13px}
.sideLangRow button,.sideThemeRow button{height:36px;border-radius:9px;font-size:12.5px}
#sidebar .sideLangRow button.active{background:rgba(45,212,191,.16);border-color:rgba(45,212,191,.35);color:#7fe3d3;box-shadow:none}
/* Capçalera de contingut */
.top{height:64px;border-bottom:1px solid var(--border)}
.top input{height:40px;border-radius:12px}
/* Inici: targetes de tema com a l'artboard */
.topicPickerCard{border-radius:18px;padding:20px;gap:12px}
.topicPickerIcon{width:44px;height:44px;border-radius:12px;background:#0d9488;color:#fff}
.topicPickerCard.done .topicPickerIcon{background:#0d9488}
.topicPickerCard:hover{border-color:#0d9488;transform:translateY(-4px);box-shadow:0 18px 40px rgba(11,26,42,.10)}
.welcomeHero{padding:28px 32px;background:var(--surface);border:1px solid var(--border)}
[data-theme="dark"] .welcomeHero{background:#0f1b24;border-color:#1f2e39}
.welcomeStats > *{border-radius:14px;padding:14px 16px}
/* Tema: capçalera, seccions i blocs */
.tsection > h2{font-size:22px;margin-bottom:16px}
.blk,.blk-estrella,.blk-proceso{border-radius:16px;padding:20px 22px}
.blk h4{font-size:17px}
.side-card{border-radius:16px}
.asideFcCard{background:#0b1c26;border-color:#0b1c26;box-shadow:0 16px 40px rgba(11,26,42,.25)}
[data-theme="dark"] .asideFcCard{background:#0f1b24;border-color:#233541}
/* Examen: com a l'artboard */
.quizLayout{gap:24px}
.qText{font-size:22px}
.optionBtnV2{border-radius:12px;min-height:58px;font-size:17px;transition:border-color .15s,background .15s,transform .2s var(--ease)}
.optionBtnV2:not(:disabled):hover{transform:translateX(3px)}
.quizNavCol{border:1px solid var(--border);background:var(--surface);padding:18px}
.qNavDot{height:40px;border-radius:10px}
.quizNavStat{border-radius:14px}
/* Botons amb elevació i brillantor */
.btnv2{position:relative;overflow:hidden;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .2s}
.btnv2:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(13,148,136,.35)}
.btnv2::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.25) 50%,transparent 70%);transform:translateX(-120%);transition:transform .8s var(--ease)}
.btnv2:hover::after{transform:translateX(120%)}
.btnv2.secondary:hover{box-shadow:var(--shadow)}
/* Barra inferior mòbil */
.bottomNav{padding-top:6px}
.bnavBtn.active .bnavIcon{color:#0d9488}
/* Porta d'accés */
.profileGate{background:#070d12}
.profileGateLogo{background:rgba(45,212,191,.12);border:1px solid rgba(45,212,191,.4);color:#2dd4bf;box-shadow:0 0 30px rgba(45,212,191,.25)}
@media (prefers-reduced-motion:reduce){.sideToolBtn,#topicList button,.optionBtnV2,.btnv2{transition:none}.btnv2::after{display:none}}
/* ===== Mètode d'estudi: pla d'avui, domini per tema, cicle d'estudi ===== */
.mEyebrow{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brand-dark)}
.mToday{margin:0 0 26px;padding:24px 26px;border-radius:20px;background:var(--surface);border:1px solid var(--border);display:flex;flex-direction:column;gap:18px}
[data-theme="dark"] .mToday{background:#0f1b24;border-color:#1f2e39}
.mTodayHead{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;flex-wrap:wrap}
.mTodayHead h2{font-size:24px;margin:6px 0 4px}.mTodayHead p{margin:0;font-size:15px;color:var(--text-muted);max-width:560px;line-height:1.5}
.mScores{display:flex;gap:18px;flex:none}
.mScore{display:flex;align-items:center;gap:12px}.mScore b{font-family:var(--font-display);font-size:28px;font-weight:700;line-height:1;display:block}.mScore b small{font-size:14px;color:var(--text-muted);font-weight:600}.mScore span{font-size:12px;color:var(--text-muted)}
.mRing{flex:none}
.mTasks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.mTask{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;background:var(--bg);border:1px solid var(--border);transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.mTask:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.mTask.done{opacity:.75}.mTask.done .mTaskIc{background:#15803d;color:#fff}
.mTaskIc{width:38px;height:38px;border-radius:11px;background:var(--brand-tint);color:var(--brand-dark);display:inline-flex;align-items:center;justify-content:center;flex:none}
.mTaskTxt{flex-grow:1;min-width:0;display:flex;flex-direction:column;gap:2px}.mTaskTxt b{font-size:14.5px;line-height:1.3}.mTaskTxt small{font-size:12.5px;color:var(--text-muted)}
.mTask .btnv2{padding:9px 14px;font-size:13px;flex:none;white-space:nowrap}
.mHint{font-size:12.5px;color:var(--text-faint);line-height:1.45}
.mMastery{display:block;width:100%;margin-top:10px}
.mMastery i{display:block;height:5px;border-radius:999px;background:var(--brand);transition:width .8s var(--ease)}
.mMastery{position:relative;padding-top:6px;background:linear-gradient(var(--border),var(--border)) 0 6px/100% 5px no-repeat}
.mMastery em{display:block;font-style:normal;font-size:11.5px;font-weight:700;color:var(--text-muted);margin-top:6px}
.mCycle{margin:0 0 22px;padding:18px 20px;border-radius:16px;background:var(--surface);border:1px solid var(--border);display:flex;flex-direction:column;gap:14px}
[data-theme="dark"] .mCycle{background:#0f1b24;border-color:#1f2e39}
.mCycleHead{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.mCycleHead > div{flex-grow:1;display:flex;flex-direction:column;gap:2px}
.mCycleHead b{font-family:var(--font-display);font-size:18px}.mCycleHead small{font-size:13px;color:var(--text-muted)}
.mSteps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.mSteps li{display:flex;align-items:flex-start;gap:10px;padding:12px;border-radius:12px;background:var(--bg);border:1px solid var(--border)}
.mSteps li.done{background:#eefbf3;border-color:#bbf7d0}[data-theme="dark"] .mSteps li.done{background:#0f2f1f;border-color:#14532d}
.mStepN{width:26px;height:26px;border-radius:999px;background:var(--surface-alt);color:var(--text);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:12px;font-weight:600;flex:none}
.mSteps li.done .mStepN{background:#15803d;color:#fff}
.mSteps li b{display:block;font-size:13.5px;line-height:1.3}.mSteps li small{font-size:12px;color:var(--text-muted)}
@media (max-width:860px){.mTasks,.mSteps{grid-template-columns:minmax(0,1fr)}.mScores{width:100%;justify-content:space-between}}

/* ===== Tauler d'inici (artboard App · Inici) ===== */
.dash{display:flex;flex-direction:column;gap:18px;margin-bottom:26px}
.dashHead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap}
.dashHead h1{font-size:clamp(26px,3vw,34px);margin:6px 0 4px;letter-spacing:-.02em}
.dashHead p{margin:0;font-size:15.5px;color:var(--text-muted);max-width:640px;line-height:1.5}
.dashCta{background:#0b1c26;color:#fff;box-shadow:0 10px 26px rgba(11,26,42,.25)}[data-theme="dark"] .dashCta{background:#0d9488}
.dashRow3{display:grid;grid-template-columns:300px minmax(0,1fr) 300px;gap:14px;align-items:stretch}
.dashRow3.b{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 300px;align-items:start}
.dCard{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:18px 20px;display:flex;flex-direction:column;gap:12px;min-width:0}
[data-theme="dark"] .dCard{background:#0f1b24;border-color:#1f2e39}
.dCardTop{display:flex;align-items:center;justify-content:space-between;gap:10px}.dCardTop b{font-family:var(--font-display);font-size:16px;font-weight:600}.dCardTop span{font-size:13px;color:var(--text-muted)}.dCardTop a{font-size:13px;font-weight:700;color:var(--brand-dark);text-decoration:none}
.dCol{display:flex;flex-direction:column;gap:14px}
.dCount{flex-direction:row;align-items:center;gap:16px;position:relative}
.dCount .mRing{flex:none}
.dCountNum{position:absolute;left:20px;top:50%;width:96px;transform:translateY(-50%);text-align:center;pointer-events:none}
.dCountNum b{display:block;font-family:var(--font-display);font-size:26px;font-weight:700;line-height:1}.dCountNum small{font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--text-muted)}
.dCount > div:last-child{display:flex;flex-direction:column;gap:4px;min-width:0}.dCount > div:last-child b{font-family:var(--font-display);font-size:16px;font-weight:600}.dCount > div:last-child span{font-size:13px;line-height:1.4;color:var(--text-muted)}.dCount a{font-size:13px;font-weight:700;color:var(--brand-dark);text-decoration:none}
.dBars{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;align-items:end;height:92px}
.dBar{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;height:100%}
.dBar i{display:block;width:100%;border-radius:6px;background:#b7e4dc;transition:height .8s var(--ease)}[data-theme="dark"] .dBar i{background:#1f4f49}
.dBar.today i{background:#0d9488}.dBar span{font-size:12px;font-weight:700;color:var(--text-muted)}.dBar.today span{color:var(--text)}
.dCont{background:#0d9488;border-color:#0d9488;color:#fff;text-decoration:none;justify-content:space-between;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.dCont:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(13,148,136,.35)}
.dContLbl{font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.85}
.dCont b{font-family:var(--font-display);font-size:19px;font-weight:600;line-height:1.2;color:#fff}.dCont > span:not(.dContLbl):not(.dContBar){font-size:13.5px;opacity:.92}
.dContBar{display:block;height:6px;border-radius:999px;background:rgba(255,255,255,.25);overflow:hidden}.dContBar i{display:block;height:100%;background:#fff}
.dWeak{display:flex;flex-direction:column;gap:5px}.dWeak > div{display:flex;justify-content:space-between;gap:10px;font-size:14px}.dWeak > div span{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dWeak > div b{font-weight:700}
.dWeak i{display:block;height:6px;border-radius:999px;background:var(--surface-alt);overflow:hidden}.dWeak em{display:block;height:100%}
.dExam{display:flex;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--border)}.dExam:last-of-type{border-bottom:none}
.dExam b{width:52px;height:32px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:13px;flex:none}
.dExam div{display:flex;flex-direction:column;min-width:0}.dExam span{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dExam small{font-size:12px;color:var(--text-muted)}
.dTask{display:flex;align-items:center;gap:12px;width:100%;padding:11px 12px;border-radius:12px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px;font-weight:600;text-align:left;cursor:pointer;transition:transform .2s var(--ease),border-color .2s}
.dTask:hover{transform:translateX(3px);border-color:var(--brand)}
.dTask > span{width:22px;height:22px;border-radius:999px;border:1.5px solid var(--border-strong,#c9d5d2);display:inline-flex;align-items:center;justify-content:center;flex:none}
.dTask.done{opacity:.7}.dTask.done > span{background:#15803d;border-color:#15803d;color:#fff}
.dMini{align-self:flex-start;padding:9px 14px;font-size:13px}
.dEmpty{margin:0;font-size:14px;color:var(--text-muted)}
@media (max-width:1100px){.dashRow3,.dashRow3.b{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media (max-width:760px){.dashRow3,.dashRow3.b{grid-template-columns:minmax(0,1fr)}.dashHead{align-items:flex-start}.dashCta{width:100%;justify-content:center}}
/* ===== Barra inferior mòbil: píndola flotant moderna ===== */
@media (max-width:860px){
  .bottomNav{left:12px;right:12px;bottom:10px;border-radius:22px;border:1px solid var(--border);box-shadow:0 14px 40px rgba(11,26,42,.18);padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.92);backdrop-filter:blur(14px)}
  [data-theme="dark"] .bottomNav{background:rgba(15,27,36,.92);border-color:#1f2e39}
  .bnavBtn{border-radius:14px;padding:7px 4px;transition:background .2s,transform .2s var(--ease)}
  .bnavBtn.active{background:var(--brand-tint)}[data-theme="dark"] .bnavBtn.active{background:#0f2f2b}
  .bnavBtn:active{transform:scale(.95)}
  .bnavIcon{transition:transform .25s var(--ease)}.bnavBtn.active .bnavIcon{transform:translateY(-2px)}
  .bnavLabel{font-size:10.5px}
  .bnavBadge{box-shadow:0 0 0 2px var(--surface)}
}
.dashRow3,.dashRow3.b{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}

.dCard{min-width:0}.dCardTop b{white-space:normal}
/* Marca de la barra lateral: com a la landing */
#sidebar .brand{gap:12px}
#sidebar .brand .brandText{display:flex;flex-direction:column;line-height:1}
#sidebar .brand .brandText b{font-family:var(--font-display);font-weight:700;font-size:19px;letter-spacing:-.02em;color:#fff}
#sidebar .brand .brandText small{display:block;font-family:var(--font-display);font-weight:500;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#7fe3d3;margin-top:4px;opacity:1}

/* Subtemes dins del cicle d'estudi */
.mSecProg{position:relative;height:8px;border-radius:999px;background:var(--surface-alt);margin-top:4px}
.mSecProg > span{position:absolute;left:0;top:-22px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.mSecProg em{font-style:normal;color:var(--brand-dark)}
.mSecProg i{display:block;height:100%;border-radius:999px;background:var(--brand);transition:width .6s var(--ease)}
.mSecList{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px}
.mSecList a{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:9px;color:var(--text-muted);text-decoration:none;font-size:13px;line-height:1.3;transition:background .15s,color .15s}
.mSecList a:hover{background:var(--surface-alt);color:var(--text)}
.mSecList span{width:22px;height:22px;border-radius:999px;border:1.5px solid var(--border-strong,#c9d5d2);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:11px;font-weight:600;flex:none;color:var(--text-muted)}
.mSecList li.read a{color:var(--text)}.mSecList li.read span{background:#0d9488;border-color:#0d9488;color:#fff}
.mCycle{margin-top:4px;padding-top:20px}
.mSecProg{margin-top:34px}
.mCycle .mSteps{margin-top:18px}

/* Cicle: passos clicables, subtema actiu, minitoc antic amagat (la llista de subtemes el substitueix) */
#content .minitoc{display:none}
.mSteps li{cursor:pointer;position:relative;transition:transform .15s var(--ease),background .15s}
.mSteps li:hover{transform:translateX(3px);background:var(--surface-alt)}
.mSteps li > svg{width:16px;height:16px;margin-left:auto;flex:none;opacity:.45;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:opacity .15s,transform .15s}
.mSteps li:hover > svg{opacity:1;transform:translateX(2px)}
.mSecList li.current a{background:rgba(13,148,136,.12);color:var(--text)}
.mSecList li.current span{border-color:#0d9488;color:#0d9488;box-shadow:0 0 0 3px rgba(13,148,136,.18)}
.mSecList li.current.read span{color:#fff}
#content .hero .btnv2.secondary{background:transparent;border:1px solid var(--border);color:var(--text-muted);font-size:13px;font-weight:600;padding:8px 12px;box-shadow:none}
#content .hero .btnv2.secondary:hover{color:var(--text);border-color:var(--border-strong,#94a3b8)}
.mSteps li{padding-right:30px}
.mSteps li > svg{position:absolute;right:10px;top:12px;margin:0;width:14px;height:14px}
/* ===== Examen v3: capçalera, barra, temporitzador, explicació, peu ===== */
.examWrap .quizTopRow{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.examWrap #quizProgress{font-family:var(--font-display);font-weight:600;font-size:14px;color:var(--text-muted);letter-spacing:.01em}
.examWrap .quizTimer{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:13px;font-weight:600;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:5px 12px;display:inline-flex;align-items:center;gap:6px}
.examWrap #quizBarOuter{height:6px;border-radius:999px;background:var(--surface-alt);overflow:hidden;margin-bottom:18px}
.examWrap #quizBarInner{height:100%;border-radius:999px;background:linear-gradient(90deg,#0d9488,#2dd4bf);transition:width .45s var(--ease)}
.examWrap .explainBox{margin-top:14px;padding:16px 18px;border-radius:14px;background:var(--surface-alt);border:1px solid var(--border);font-size:15px;line-height:1.6;animation:mFade .35s var(--ease) both}
.examWrap .explainBox p{margin:0 0 8px}.examWrap .explainBox p:last-child{margin:0;padding-top:8px;border-top:1px dashed var(--border)}
.examWrap #quizFooterNav{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:14px}
.examWrap #quizFooterNav .btnv2.secondary{background:transparent;border:1px solid var(--border);color:var(--text-muted);box-shadow:none}
.examWrap #quizFooterNav .btnv2.secondary:hover{color:var(--text);border-color:var(--text-faint)}
.examWrap #quizFooterNav #nextBtn{padding:12px 22px;font-size:15px;animation:mFade .3s var(--ease) both}
.examWrap .qTopicTag{font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brand)}
.examWrap .examCard{animation:mFade .35s var(--ease) both}
@keyframes mFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.examWrap .examCard,.examWrap .explainBox,.examWrap #quizFooterNav #nextBtn{animation:none}}

/* Resultats d'examen */
.rCard{padding-top:28px}
.rStats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-width:560px;margin:18px auto 0}
.rStat{background:var(--surface-alt);border:1px solid var(--border);border-radius:14px;padding:12px 8px;display:flex;flex-direction:column;align-items:center;gap:2px}
.rStat b{font-family:var(--font-display);font-size:24px;font-weight:700;letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums}
.rStat span{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}
.rStat.ok b{color:#16a34a}.rStat.ko b{color:#dc2626}
html[data-theme="dark"] .rStat.ok b{color:#4ade80}html[data-theme="dark"] .rStat.ko b{color:#f87171}
.rMsg{max-width:520px;margin:16px auto 0;font-size:15px;color:var(--text-muted);line-height:1.55}
.rBtns{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:18px}
.rBtns .btnv2.secondary{background:transparent;border:1px solid var(--border);color:var(--text-muted);box-shadow:none}
@media (max-width:640px){.rStats{grid-template-columns:repeat(2,1fr)}}

/* Dashboard: columna ampla i graella segons l'amplada real del contenidor */
.dash{container-type:inline-size}
@container (min-width:880px){.dashRow3{grid-template-columns:300px minmax(0,1fr) 300px}.dashRow3.b{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 300px}}
@container (min-width:1120px){.dashRow3{grid-template-columns:320px minmax(0,1fr) 320px}.dashRow3.b{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 340px}}
/* Sense barra lateral dreta (aside buit) la columna central ocupa tot l'ample: inici, examen, escales, etc. */
#contentLayout:has(> #sideAside:empty){grid-template-columns:minmax(0,1fr)}
#contentLayout:has(> #sideAside:empty) #mainCol{width:100%;max-width:1280px;margin:0 auto}
.dWeak > div b{white-space:nowrap;flex:none}
@media (max-width:760px){.top{height:auto;min-height:64px;padding-bottom:10px}.top input{height:42px}}

/* =====================================================================
   TEORIA v3 — format "acadèmia premium" per al contingut dels temes.
   Sense emojis: cada tipus de bloc porta una icona SVG (mask) i un accent.
   Paleta reduïda: teal (concepte / tractament / procés), or (molt preguntat,
   mnemotècnia), vermell (alerta / trampa), gris-blau neutre (dades, escales).
   ===================================================================== */
:root{--t3-teal:#0d9488;--t3-teal-bg:#f0fdfa;--t3-gold:#b45309;--t3-gold-bg:#fffbeb;--t3-red:#dc2626;--t3-red-bg:#fef2f2;--t3-slate:#475569;--t3-slate-bg:#f8fafc;--t3-ink:#0b1c26}
html[data-theme="dark"]{--t3-teal:#2dd4bf;--t3-teal-bg:rgba(45,212,191,.07);--t3-gold:#fbbf24;--t3-gold-bg:rgba(251,191,36,.07);--t3-red:#f87171;--t3-red-bg:rgba(248,113,113,.08);--t3-slate:#9db0c4;--t3-slate-bg:rgba(148,163,184,.07);--t3-ink:#e6edf5}

/* --- capçalera de secció --- */
:is(#content,.lsMain) .tsection{margin-bottom:56px;scroll-margin-top:84px}
:is(#content,.lsMain) .tsection > h2{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;font-family:var(--font-display);font-size:24px;font-weight:600;letter-spacing:-.015em;line-height:1.2;margin:0 0 20px;padding:0 0 16px;border-bottom:1px solid var(--border);position:relative}
:is(#content,.lsMain) .tsection > h2::after{content:"";position:absolute;left:0;bottom:-1px;width:72px;height:2px;background:var(--t3-teal);border-radius:2px}
:is(#content,.lsMain) .tsection > h2 .secnum{width:38px;height:38px;border-radius:12px;background:var(--t3-ink);color:#fff;font-family:var(--font-display);font-size:15px;font-weight:600;display:flex;align-items:center;justify-content:center;flex:none}
html[data-theme="dark"] :is(#content,.lsMain) .tsection > h2 .secnum{background:var(--t3-teal);color:#052e2b}
:is(#content,.lsMain) .tsection > h2 .secicon{display:none}

/* --- graella --- */
:is(#content,.lsMain) .bento{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:14px}
:is(#content,.lsMain) .bento .span2,:is(#content,.lsMain) .bento .blk-estrella,:is(#content,.lsMain) .bento .blk-tabla,:is(#content,.lsMain) .bento .blk-tabla-html,:is(#content,.lsMain) .bento .blk-proceso,:is(#content,.lsMain) .bento .blk-diagrama,:is(#content,.lsMain) .bento .blk-quickcheck{grid-column:1 / -1}
@media (max-width:700px){:is(#content,.lsMain) .bento{grid-template-columns:minmax(0,1fr)}}

/* --- bloc base --- */
:is(#content,.lsMain) .blk,:is(#content,.lsMain) .blk-estrella,:is(#content,.lsMain) .blk-proceso,:is(#content,.lsMain) .blk-diagrama,:is(#content,.lsMain) .blk-tabla,:is(#content,.lsMain) .blk-tabla-html{position:relative;border:1px solid var(--border);border-left:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 1px 2px rgba(11,28,38,.04);padding:20px 22px 20px 24px;min-width:0;overflow:hidden;--blk-c:var(--t3-slate);--blk-bg:var(--t3-slate-bg);transition:box-shadow .2s var(--ease),transform .2s var(--ease)}
:is(#content,.lsMain) .blk::before,:is(#content,.lsMain) .blk-estrella::before,:is(#content,.lsMain) .blk-proceso::before,:is(#content,.lsMain) .blk-diagrama::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--blk-c);border-radius:0}
:is(#content,.lsMain) .blk:hover,:is(#content,.lsMain) .blk-estrella:hover{box-shadow:0 8px 24px rgba(11,28,38,.08);transform:translateY(-1px)}
html[data-theme="dark"] :is(#content,.lsMain) .blk:hover,html[data-theme="dark"] :is(#content,.lsMain) .blk-estrella:hover{box-shadow:0 10px 28px rgba(0,0,0,.35)}

/* etiqueta amb icona SVG (mask) — sense emojis */
:is(#content,.lsMain) .blk .blk-label,:is(#content,.lsMain) .blk-estrella .blk-label,:is(#content,.lsMain) .blk-proceso .blk-label,:is(#content,.lsMain) .blk-tabla .blk-label,:is(#content,.lsMain) .blk-diagrama .blk-label{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--blk-c);margin:0 0 10px;padding:0}
:is(#content,.lsMain) .blk .blk-label::before,:is(#content,.lsMain) .blk-estrella .blk-label::before,:is(#content,.lsMain) .blk-proceso .blk-label::before,:is(#content,.lsMain) .blk-tabla .blk-label::before,:is(#content,.lsMain) .blk-diagrama .blk-label::before{content:"";width:16px;height:16px;border-radius:0;background:currentColor;flex:none;-webkit-mask:var(--blk-ic) center/contain no-repeat;mask:var(--blk-ic) center/contain no-repeat}
:is(#content,.lsMain) .blk-tabla .blk-label{padding:18px 22px 0}

/* títol i text */
:is(#content,.lsMain) .blk h4,:is(#content,.lsMain) .blk-estrella h4,:is(#content,.lsMain) .blk-proceso h4,:is(#content,.lsMain) .blk-diagrama h4{font-family:var(--font-display);font-size:17px;font-weight:600;line-height:1.3;letter-spacing:-.01em;color:var(--text);margin:0 0 8px}
:is(#content,.lsMain) .blk-tabla h4{font-family:var(--font-display);font-size:17px;font-weight:600;margin:6px 22px 14px;color:var(--text)}
:is(#content,.lsMain) .blk p,:is(#content,.lsMain) .blk ul,:is(#content,.lsMain) .blk ol,:is(#content,.lsMain) .blk-estrella p,:is(#content,.lsMain) .blk-estrella ul,:is(#content,.lsMain) .blk-proceso p,:is(#content,.lsMain) .blk-diagrama p{font-size:15.5px;line-height:1.6;color:var(--text)}
:is(#content,.lsMain) .blk p,:is(#content,.lsMain) .blk-estrella p{margin:0 0 9px}
:is(#content,.lsMain) .blk li,:is(#content,.lsMain) .blk-estrella li{margin:4px 0}
:is(#content,.lsMain) .blk b,:is(#content,.lsMain) .blk-estrella b,:is(#content,.lsMain) .blk strong{color:var(--text);font-weight:700}

/* tipus de bloc → accent + icona */
:is(#content,.lsMain) .blk-concepto{--blk-c:var(--t3-teal);--blk-ic:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 19.5A2.5 2.5 0 0 1 6.5 17H20'/><path d='M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z'/></svg>")}
:is(#content,.lsMain) .blk-tractament{--blk-c:var(--t3-teal);--blk-ic:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 5v14M5 12h14'/></svg>")}
:is(#content,.lsMain) .blk-dato{--blk-c:var(--t3-slate);--blk-ic:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 9h16M4 15h16M10 3 8 21M16 3l-2 18'/></svg>")}
:is(#content,.lsMain) .blk-escala{--blk-c:var(--t3-slate);--blk-ic:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 12h4l3-8 4 16 3-8h4'/></svg>")}
:is(#content,.lsMain) .blk-alerta{--blk-c:var(--t3-red);background:var(--t3-red-bg);--blk-ic:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M10.3 3.9 1.8 18a2 2 0 0 0 1.7 3h17a2 2 0 0 0 1.7-3L13.7 3.9a2 2 0 0 0-3.4 0z'/><path d='M12 9v4M12 17h.01'/></svg>")}
:is(#content,.lsMain) .blk-optrap{--blk-c:var(--t3-red);--blk-ic:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='M9 9l6 6M15 9l-6 6'/></svg>")}
:is(#content,.lsMain) .blk-mnemo{--blk-c:var(--t3-gold);background:var(--t3-gold-bg);--blk-ic:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 18h6M10 22h4M12 2a7 7 0 0 0-4 12.7c.6.5 1 1.3 1 2.3h6c0-1 .4-1.8 1-2.3A7 7 0 0 0 12 2z'/></svg>")}
:is(#content,.lsMain) .blk-quickcheck{--blk-c:var(--t3-teal);--blk-ic:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 11l3 3L22 4'/><path d='M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11'/></svg>")}
:is(#content,.lsMain) .blk-estrella{--blk-c:var(--t3-gold);background:var(--t3-gold-bg);border-color:var(--border);--blk-ic:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 2.5l2.9 6 6.6.9-4.8 4.6 1.2 6.5L12 17.4 6.1 20.5l1.2-6.5L2.5 9.4l6.6-.9z'/></svg>")}
:is(#content,.lsMain) .blk-proceso,:is(#content,.lsMain) .blk-diagrama{--blk-c:var(--t3-teal);--blk-ic:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='4' width='6' height='6' rx='1.5'/><rect x='15' y='14' width='6' height='6' rx='1.5'/><path d='M9 7h4a2 2 0 0 1 2 2v5'/></svg>")}
:is(#content,.lsMain) .blk-tabla,:is(#content,.lsMain) .blk-tabla-html{--blk-c:var(--t3-teal);--blk-ic:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='4' width='18' height='16' rx='2'/><path d='M3 10h18M3 15h18M10 4v16'/></svg>")}

/* la "molt preguntat" i les alertes destaquen més: fons tenyit i vora esquerra més gruixuda */
:is(#content,.lsMain) .blk-estrella::before,:is(#content,.lsMain) .blk-alerta::before{width:5px}

/* --- taules: data-grid --- */
:is(#content,.lsMain) .blk-tabla,:is(#content,.lsMain) .blk-tabla-html{padding:0}
:is(#content,.lsMain) .blk-tabla-html{padding:18px 22px}
:is(#content,.lsMain) .blk-tabla .tablewrap{overflow-x:auto;padding:0 14px 14px}
:is(#content,.lsMain) .blk table,:is(#content,.lsMain) .blk-tabla table,:is(#content,.lsMain) .blk-tabla-html table,:is(#content,.lsMain) .detailInner table{border-collapse:separate;border-spacing:0;width:100%;font-size:14px;table-layout:auto;border:1px solid var(--border);border-radius:12px;overflow:hidden;margin:6px 0 0}
:is(#content,.lsMain) .blk-tabla table:has(tr:first-child th:first-child:nth-last-child(2)){border-spacing:0}
:is(#content,.lsMain) .blk-tabla table:has(tr:first-child th:first-child:nth-last-child(2)) td:first-child:nth-last-child(2)::after{display:none}
:is(#content,.lsMain) .blk th,:is(#content,.lsMain) .blk-tabla th,:is(#content,.lsMain) .blk-tabla-html th,:is(#content,.lsMain) .detailInner th{background:var(--surface-alt);color:var(--text-muted);font-family:var(--font-display);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-align:left;padding:11px 14px;border:none;border-bottom:1px solid var(--border);white-space:nowrap}
:is(#content,.lsMain) .blk td,:is(#content,.lsMain) .blk-tabla td,:is(#content,.lsMain) .blk-tabla-html td,:is(#content,.lsMain) .detailInner td{background:transparent;border:none;border-bottom:1px solid var(--border);padding:11px 14px;vertical-align:top;line-height:1.5;color:var(--text);border-radius:0 !important;transition:background .15s}
:is(#content,.lsMain) .blk-tabla td:first-child,:is(#content,.lsMain) .blk-tabla-html td:first-child,:is(#content,.lsMain) .blk td:first-child{font-weight:600;color:var(--text)}
:is(#content,.lsMain) .blk-tabla tr:last-child td,:is(#content,.lsMain) .blk-tabla-html tr:last-child td,:is(#content,.lsMain) .blk tr:last-child td,:is(#content,.lsMain) .detailInner tr:last-child td{border-bottom:none}
:is(#content,.lsMain) .blk-tabla tbody tr:nth-child(even) td,:is(#content,.lsMain) .blk-tabla-html tbody tr:nth-child(even) td{background:color-mix(in srgb,var(--surface-alt) 55%,transparent)}
:is(#content,.lsMain) .blk-tabla tr:hover td,:is(#content,.lsMain) .blk-tabla-html tr:hover td{background:var(--t3-teal-bg)}

/* --- fluxos: passos --- */
:is(#content,.lsMain) .flow{display:flex;flex-wrap:wrap;align-items:stretch;gap:10px;margin:10px 0 4px}
:is(#content,.lsMain) .flow-step{flex:1 1 160px;background:var(--surface-alt);border:1px solid var(--border);border-top:3px solid var(--t3-teal);border-radius:12px;padding:12px 14px;font-size:14px;font-weight:600;line-height:1.35;color:var(--text);text-align:left;position:relative}
:is(#content,.lsMain) .flow-step small{display:block;font-weight:400;font-size:12.5px;color:var(--text-muted);margin-top:5px;line-height:1.4}
:is(#content,.lsMain) .flow-step.ok{border-top-color:var(--t3-teal)}:is(#content,.lsMain) .flow-step.warn{border-top-color:var(--t3-gold)}:is(#content,.lsMain) .flow-step.danger{border-top-color:var(--t3-red)}
:is(#content,.lsMain) .flow-arrow{align-self:center;color:var(--text-faint);font-size:0;width:18px;height:18px;flex:none;background:currentColor;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12h14M13 6l6 6-6 6'/></svg>") center/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12h14M13 6l6 6-6 6'/></svg>") center/contain no-repeat}
@media (max-width:700px){:is(#content,.lsMain) .flow{flex-direction:column}:is(#content,.lsMain) .flow-arrow{transform:rotate(90deg);margin:0 auto}}

/* --- comparatives --- */
:is(#content,.lsMain) .compare-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:10px 0 4px}
:is(#content,.lsMain) .compare-card{border:1px solid var(--border);border-left:1px solid var(--border);border-top:3px solid var(--t3-teal);border-radius:12px;padding:14px 16px;background:var(--surface-alt)}
:is(#content,.lsMain) .compare-card h4{font-family:var(--font-display);font-size:14.5px;font-weight:600;color:var(--text);margin:0 0 8px}
:is(#content,.lsMain) .compare-card.c-orange{border-top-color:var(--t3-gold)}:is(#content,.lsMain) .compare-card.c-red{border-top-color:var(--t3-red)}:is(#content,.lsMain) .compare-card.c-green{border-top-color:var(--t3-teal)}
:is(#content,.lsMain) .compare-card ul{margin:0;padding-left:16px;font-size:14px;line-height:1.5}:is(#content,.lsMain) .compare-card li{margin:3px 0}

/* --- autoavaluació ràpida: com l'examen --- */
:is(#content,.lsMain) .qcOptions{display:flex;flex-direction:column;gap:8px;counter-reset:qc}
:is(#content,.lsMain) .qcOptBtn{position:relative;text-align:left;padding:11px 14px 11px 46px;border-radius:12px;border:1px solid var(--border);background:var(--surface-alt);color:var(--text);font-size:14.5px;font-weight:500;line-height:1.4;cursor:pointer;transition:border-color .15s,background .15s,transform .15s var(--ease);font-family:var(--font-body)}
:is(#content,.lsMain) .qcOptBtn::before{counter-increment:qc;content:counter(qc,upper-alpha);position:absolute;left:12px;top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:8px;background:var(--surface);border:1px solid var(--border);font-family:var(--font-display);font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}
:is(#content,.lsMain) .qcOptBtn:hover:not(:disabled){border-color:var(--t3-teal);background:var(--t3-teal-bg);transform:translateX(2px)}
:is(#content,.lsMain) .qcOptBtn.qcCorrect{border-color:#16a34a;background:rgba(22,163,74,.1);color:var(--text);font-weight:600}:is(#content,.lsMain) .qcOptBtn.qcCorrect::before{background:#16a34a;border-color:#16a34a;color:#fff}
:is(#content,.lsMain) .qcOptBtn.qcIncorrect{border-color:#dc2626;background:rgba(220,38,38,.08)}:is(#content,.lsMain) .qcOptBtn.qcIncorrect::before{background:#dc2626;border-color:#dc2626;color:#fff}
:is(#content,.lsMain) .qcOptBtn.qcReveal{border-color:#16a34a;box-shadow:inset 0 0 0 1px #16a34a}
:is(#content,.lsMain) .qcExplain{margin-top:12px;padding:12px 14px;border-radius:12px;background:var(--surface-alt);border:1px solid var(--border);border-left:3px solid var(--t3-teal);font-size:14px;line-height:1.55;color:var(--text-muted);animation:mFade .3s var(--ease) both}
:is(#content,.lsMain) .qcExplain b{color:var(--text)}

/* --- acordió "font original" --- */
:is(#content,.lsMain) details.detailAcc{margin-top:10px;border-top:1px dashed var(--border);padding-top:6px}
:is(#content,.lsMain) details.detailAcc summary{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:13px;font-weight:600;color:var(--brand-dark);padding:6px 0;cursor:pointer;list-style:none;letter-spacing:.01em}
:is(#content,.lsMain) details.detailAcc summary::before{content:'Veure tot el detall (font original)';order:2}
html[data-applang="es"] :is(#content,.lsMain) details.detailAcc summary::before{content:'Ver todo el detalle (fuente original)'}
:is(#content,.lsMain) details.detailAcc[open] summary::before{content:'Amagar el detall'}
html[data-applang="es"] :is(#content,.lsMain) details.detailAcc[open] summary::before{content:'Ocultar el detalle'}
:is(#content,.lsMain) details.detailAcc summary::after{content:"";order:1;width:18px;height:18px;border-radius:6px;background:var(--brand-dark);-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><path d='M6 9l6 6 6-6'/></svg>") center/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><path d='M6 9l6 6 6-6'/></svg>") center/contain no-repeat;transition:transform .2s var(--ease)}
:is(#content,.lsMain) details.detailAcc[open] summary::after{transform:rotate(180deg)}
:is(#content,.lsMain) details.detailAcc .detailInner{margin-top:8px;padding:16px 18px;border:1px solid var(--border);border-radius:14px;background:var(--surface-alt);font-size:15px;line-height:1.65;color:var(--text)}
:is(#content,.lsMain) details.detailAcc .detailInner p{margin:0 0 10px}

/* --- text solt dins seccions --- */
:is(#content,.lsMain) .tsection > p{font-size:16px;line-height:1.65;color:var(--text);max-width:72ch}
:is(#content,.lsMain) .tsection > ul,:is(#content,.lsMain) .tsection > ol{font-size:15.5px;line-height:1.6}
/* procés per passos (timeline) */
:is(#content,.lsMain) .procstep{display:flex;gap:14px;position:relative;padding-bottom:18px}
:is(#content,.lsMain) .procstep .num{width:30px;height:30px;border-radius:10px;background:var(--t3-teal);color:#fff;font-family:var(--font-display);font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;flex:none;z-index:1}
html[data-theme="dark"] :is(#content,.lsMain) .procstep .num{color:#052e2b}
:is(#content,.lsMain) .procstep.warn .num{background:var(--t3-gold);color:#fff}:is(#content,.lsMain) .procstep.danger .num{background:var(--t3-red);color:#fff}:is(#content,.lsMain) .procstep.ok .num{background:var(--t3-teal)}
:is(#content,.lsMain) .procstep::before{left:14px;top:30px;width:2px;background:var(--border)}
:is(#content,.lsMain) .procstep .pbody h5{font-family:var(--font-display);font-size:15px;font-weight:600;margin:4px 0 4px;color:var(--text)}
:is(#content,.lsMain) .procstep .pbody p{font-size:14.5px;color:var(--text-muted);margin:0 0 4px;line-height:1.5}
/* botó "tornar a provar" de l'autoavaluació */
:is(#content,.lsMain) .linkbtn,:is(#content,.lsMain) .qcResetBtn{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--text-muted);font-family:var(--font-display);font-size:12.5px;font-weight:600;cursor:pointer;text-decoration:none;transition:color .15s,border-color .15s}
:is(#content,.lsMain) .linkbtn:hover,:is(#content,.lsMain) .qcResetBtn:hover{color:var(--text);border-color:var(--text-faint)}
/* --- flashcards: escenari premium --- */
:is(#content,.lsMain) .flashwrap{border-radius:20px;padding:24px 26px 26px;background:var(--surface);border:1px solid var(--border);box-shadow:none}
:is(#content,.lsMain) .flashwrap .fw-head .blk-label{font-family:var(--font-display);font-size:11px;font-weight:600;letter-spacing:.14em;color:var(--t3-teal)}
:is(#content,.lsMain) .flashwrap .fw-head h3{font-family:var(--font-display);font-size:19px;font-weight:600;letter-spacing:-.01em;margin-top:4px}
:is(#content,.lsMain) .fw-progress{font-family:var(--font-display);font-size:13px;font-weight:600;color:var(--text-muted)}
:is(#content,.lsMain) .fw-dueBadge{background:rgba(13,148,136,.12);color:var(--brand-dark);border:1px solid rgba(13,148,136,.25);padding:4px 10px;font-size:11.5px}
:is(#content,.lsMain) .flashcard-stage{height:250px;margin-bottom:18px}
:is(#content,.lsMain) .fc-face{border-radius:18px;border:1px solid var(--border);background:var(--surface-alt);font-family:var(--font-display);font-size:19px;font-weight:600;line-height:1.35;letter-spacing:-.01em;padding:34px 30px 26px;box-shadow:0 12px 30px rgba(11,28,38,.08)}
:is(#content,.lsMain) .fc-face.front{background:linear-gradient(180deg,var(--surface-alt),var(--surface))}
:is(#content,.lsMain) .fc-face.back{background:var(--t3-ink);color:#fff;border-color:var(--t3-ink);font-family:var(--font-body);font-size:16px;font-weight:500;line-height:1.55}
html[data-theme="dark"] :is(#content,.lsMain) .fc-face.back{background:#0d9488;color:#052e2b;border-color:#0d9488}
:is(#content,.lsMain) .fc-face .tag{font-family:var(--font-display);font-size:10.5px;font-weight:600;letter-spacing:.16em;color:var(--text-faint);top:14px;left:18px}
:is(#content,.lsMain) .fc-face.back .tag{color:rgba(255,255,255,.6)}html[data-theme="dark"] :is(#content,.lsMain) .fc-face.back .tag{color:rgba(5,46,43,.6)}
:is(#content,.lsMain) .fw-btn{border-radius:12px;padding:10px 16px;font-family:var(--font-display);font-size:13.5px;font-weight:600;background:var(--surface);border:1px solid var(--border);transition:transform .15s var(--ease),border-color .15s,background .15s}
:is(#content,.lsMain) .fw-btn:hover{transform:translateY(-1px);border-color:var(--text-faint)}
:is(#content,.lsMain) .fw-btn.primary{background:var(--brand);border-color:var(--brand);color:#fff;padding:10px 22px}
:is(#content,.lsMain) .fw-rateLabel{font-family:var(--font-display);font-size:12.5px}
:is(#content,.lsMain) .fw-rate{background:var(--surface)}
/* --- repàs essencial --- */
:is(#content,.lsMain) .summarybox{border-radius:20px;padding:24px 26px;border:1px solid var(--border);background:var(--surface)}
:is(#content,.lsMain) .summarybox h3{font-family:var(--font-display);font-size:19px;font-weight:600;letter-spacing:-.01em;color:var(--text);margin-bottom:16px}
:is(#content,.lsMain) .summarybox ul{gap:10px 20px}
:is(#content,.lsMain) .summarybox li{font-size:15px;line-height:1.5;padding-left:28px;color:var(--text)}
:is(#content,.lsMain) .summarybox li::before{content:"";width:18px;height:18px;border-radius:6px;background:var(--t3-teal);top:2px;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12l5 5L20 7'/></svg>") center/70% no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12l5 5L20 7'/></svg>") center/70% no-repeat}
/* --- infografies --- */
:is(#content,.lsMain) .infocard{border-radius:20px;box-shadow:none;border:1px solid var(--border)}
:is(#content,.lsMain) .infocard .infohead .blk-label{font-family:var(--font-display);font-size:11px;font-weight:600;letter-spacing:.14em;color:var(--t3-teal)}
:is(#content,.lsMain) .infocard .infohead h3{font-family:var(--font-display);font-size:18px;font-weight:600;letter-spacing:-.01em}
:is(#content,.lsMain) .infocard .infoExpandBtn{font-family:var(--font-display);font-weight:600;box-shadow:none;border-radius:12px}
:is(#content,.lsMain) .infocard .infoimgwrap .zoomhint{font-family:var(--font-display);font-weight:600;border-radius:10px}
:is(#content,.lsMain) .fw-progress{display:inline-flex;align-items:center;gap:8px}

/* ===== Fase 2 · UI ===== */
/* simulacre */
.optionBtnV2.chosen{border-color:var(--brand);background:rgba(13,148,136,.1);font-weight:600}
.simHint{margin:14px 0 0;padding:12px 14px;border-radius:12px;background:var(--surface-alt);border:1px dashed var(--border);color:var(--text-muted);font-size:14px}
.qNavDot.answered{background:var(--brand);border-color:var(--brand);color:#fff}
.qnLegendDot.answered{background:var(--brand)}
.simBadge{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brand-dark);margin-bottom:10px}
.examFeedbackChoice{margin-bottom:16px}
/* mode focus */
html.focusMode #sidebar,html.focusMode #sideAside,html.focusMode #bottomNav,html.focusMode #tocFab,html.focusMode .mCycle,html.focusMode :is(#content,.lsMain) .hero .btnv2,html.focusMode :is(#content,.lsMain) .reliaBadge{display:none !important}
html.focusMode #contentLayout{grid-template-columns:minmax(0,1fr)}
html.focusMode #mainCol{max-width:860px;margin:0 auto;width:100%;padding-top:40px}
html.focusMode #mainWrap{margin-left:0 !important}
html.focusMode .top{position:sticky;top:0}
html.focusMode :is(#content,.lsMain) .blk p,html.focusMode :is(#content,.lsMain) .blk-estrella p,html.focusMode :is(#content,.lsMain) .tsection > p{font-size:17px;line-height:1.7}
#focusExit{position:fixed;right:18px;top:14px;z-index:90;display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-family:var(--font-display);font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 8px 24px rgba(11,28,38,.12)}
#focusExit kbd{font-family:var(--font-display);font-size:11px;padding:2px 6px;border-radius:6px;background:var(--surface-alt);border:1px solid var(--border);color:var(--text-muted)}
#focusExit svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
/* barra de lectura */
#readBar{position:fixed;left:0;top:0;height:3px;width:0;background:linear-gradient(90deg,#0d9488,#2dd4bf);z-index:120;transition:width .15s linear;pointer-events:none}
/* índex del tema (aside) */
.asideToc h3{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-display);font-size:13px;font-weight:600;letter-spacing:.02em;margin:0 0 8px}
.asideToc h3 em{font-style:normal;font-size:12px;color:var(--brand-dark);background:rgba(13,148,136,.12);padding:2px 8px;border-radius:999px}
.tocList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:min(60vh,520px);overflow:auto}
.tocList a{display:flex;align-items:flex-start;gap:8px;padding:6px 8px;border-radius:8px;font-size:13px;line-height:1.3;color:var(--text-muted);text-decoration:none}
.tocList a:hover{background:var(--surface-alt);color:var(--text)}
.tocList span{width:20px;height:20px;border-radius:999px;border:1.5px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:10.5px;font-weight:600;flex:none;margin-top:-1px}
.tocList li.read span{background:#0d9488;border-color:#0d9488;color:#fff}
.tocList li.current a{background:rgba(13,148,136,.12);color:var(--text)}
.tocList li.current span{border-color:#0d9488;color:#0d9488;box-shadow:0 0 0 3px rgba(13,148,136,.18)}.tocList li.current.read span{color:#fff}
#tocFab{display:none;position:fixed;right:16px;bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:80;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-family:var(--font-display);font-size:13px;font-weight:600;box-shadow:0 10px 30px rgba(11,28,38,.18);cursor:pointer}
#tocFab b{color:var(--brand-dark)}#tocFab svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:1180px){#tocFab{display:inline-flex}}
#tocSheet{position:fixed;inset:0;z-index:130;display:none}#tocSheet.open{display:block}
.tocSheetBg{position:absolute;inset:0;background:rgba(7,13,18,.55);backdrop-filter:blur(3px)}
.tocSheetBody{position:absolute;left:0;right:0;bottom:0;max-height:78vh;background:var(--surface);border-radius:22px 22px 0 0;padding:14px 16px calc(16px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;animation:sheetUp .28s var(--ease) both}
@keyframes sheetUp{from{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}
.tocSheetHead{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.tocSheetHead b{font-family:var(--font-display);font-size:16px}
.tocSheetHead button{width:36px;height:36px;border-radius:999px;border:1px solid var(--border);background:var(--surface-alt);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text)}
.tocSheetHead button svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round}
.tocSheetList{overflow:auto}.tocSheetList .tocList{max-height:none}.tocSheetList .tocList a{font-size:15px;padding:9px 8px}
/* Resum en 60 segons */
html.r60Open{overflow:hidden}
#r60{position:fixed;inset:0;z-index:140}
.r60Bg{position:absolute;inset:0;background:rgba(7,13,18,.6);backdrop-filter:blur(4px)}
.r60Body{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(820px,calc(100% - 24px));max-height:calc(100vh - 32px);background:var(--surface);border-radius:24px;box-shadow:0 30px 80px rgba(0,0,0,.35);display:flex;flex-direction:column;overflow:hidden;animation:mFade .3s var(--ease) both}
.r60Head{display:flex;align-items:center;gap:16px;padding:22px 26px 16px;border-bottom:1px solid var(--border)}
.r60Head > div:first-child{flex:1;min-width:0}.r60Head b{display:block;font-family:var(--font-display);font-size:20px;font-weight:600;letter-spacing:-.01em;line-height:1.2}.r60Head small{display:block;color:var(--text-muted);font-size:13px;margin-top:4px}
.r60Ring{position:relative;width:56px;height:56px;flex:none}.r60Ring svg{position:absolute;inset:0}.r60Ring circle:nth-child(2){transition:stroke-dashoffset .25s linear}
.r60Ring span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:16px;font-weight:700;font-variant-numeric:tabular-nums}
.r60Close{width:40px;height:40px;border-radius:999px;border:1px solid var(--border);background:var(--surface-alt);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text);flex:none}
.r60Close svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round}
.r60List{list-style:none;margin:0;padding:18px 26px;overflow:auto;display:flex;flex-direction:column;gap:10px;counter-reset:none}
.r60List li{display:flex;gap:14px;align-items:flex-start;padding:12px 14px;border-radius:14px;background:var(--surface-alt);border:1px solid var(--border)}
.r60List li span{width:28px;height:28px;border-radius:9px;background:#0d9488;color:#fff;font-family:var(--font-display);font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;flex:none}
.r60List li p{margin:2px 0 0;font-size:16px;line-height:1.5;color:var(--text)}
.r60Foot{padding:14px 26px 20px;border-top:1px solid var(--border);display:flex;justify-content:flex-end}
@media (max-width:640px){.r60Body{width:100%;max-height:100vh;border-radius:0;left:0;top:0;transform:none;height:100vh}.r60List li p{font-size:15px}}
.mCycleBtns{display:flex;gap:8px;flex-wrap:wrap}
.mCycleBtns .btnv2.secondary{background:transparent;border:1px solid var(--border);color:var(--text-muted);box-shadow:none}
.mCycleBtns .btnv2.secondary:hover{color:var(--text);border-color:var(--text-faint)}
.r60Body{animation:r60In .3s var(--ease) both}
@keyframes r60In{from{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}
@media (max-width:640px){.r60Body{animation:mFade .3s var(--ease) both}}

/* ===== Estudi guiat (app-estudi.js) ===== */
/* enriquiment de preguntes */
.qEnrich{margin-top:12px;padding-top:12px;border-top:1px dashed var(--border);display:flex;flex-direction:column;gap:10px}
.qEnrichBlock{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px 14px}
.qEnrichBlock.key{border-left:3px solid var(--t3-gold);background:var(--t3-gold-bg)}
.qEnrichLbl{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-display);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}
.qEnrichLbl svg{width:14px;height:14px}.qEnrichBlock.key .qEnrichLbl{color:var(--t3-gold)}
.qEnrich ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:5px}
.qEnrich li{font-size:14px;line-height:1.5;color:var(--text);display:flex;gap:8px}
.qEnrich li b{flex:none;width:22px;height:22px;border-radius:7px;background:var(--surface-alt);border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:11px;color:var(--text-muted)}
.qEnrichBlock.key p{margin:0;font-size:14.5px;line-height:1.5;color:var(--text);font-weight:500}
.qEnrichRef{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--text-muted)}.qEnrichRef svg{width:14px;height:14px;flex:none}
/* filtre de taules */
.tblFilter{display:flex;align-items:center;gap:8px;margin:0 22px 10px;padding:6px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-alt)}
.tblFilter svg{width:16px;height:16px;color:var(--text-muted);flex:none}
.tblFilter input{flex:1;min-width:0;border:0;background:transparent;color:var(--text);font-family:var(--font-body);font-size:14px;outline:none}
.tblFilter .tblCount{font-family:var(--font-display);font-size:12px;color:var(--text-muted)}
.blk-tabla-html .tblFilter{margin:0 0 10px}
mark.tblHit{background:rgba(13,148,136,.25);color:inherit;border-radius:3px;padding:0 1px}
/* botons per entrar a la llico */
.mSecList li{position:relative}.mSecList .lsGo{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--brand-dark);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .15s,transform .15s}
.mSecList .lsGo svg{width:13px;height:13px;fill:currentColor;stroke:none}.mSecList li:hover .lsGo,.mSecList li.current .lsGo{opacity:1}.mSecList .lsGo:hover{transform:translateY(-50%) scale(1.08)}
@media (hover:none){.mSecList .lsGo{opacity:1}}
.mSecList a{padding-right:38px}
:is(#content,.lsMain) .tsection > h2 .lsGoH2{margin-left:auto;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--brand-dark);font-family:var(--font-display);font-size:12px;font-weight:600;cursor:pointer;flex:none;transition:background .15s,border-color .15s}
:is(#content,.lsMain) .tsection > h2 .lsGoH2 svg{width:12px;height:12px;fill:currentColor;stroke:none}:is(#content,.lsMain) .tsection > h2 .lsGoH2:hover{border-color:var(--brand);background:var(--t3-teal-bg)}
:is(#content,.lsMain) .tsection > h2{grid-template-columns:auto minmax(0,1fr) auto}
.lsStart{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:7px 12px;border-radius:999px;border:0;background:var(--brand);color:#fff;font-family:var(--font-display);font-size:12.5px;font-weight:600;cursor:pointer}
.lsStart svg{width:12px;height:12px;fill:currentColor;stroke:none}
/* llico guiada */
html.lessonOpen{overflow:hidden}
#lesson{position:fixed;inset:0;z-index:150;background:rgba(7,13,18,.62);backdrop-filter:blur(4px)}
.lsBody{position:absolute;inset:16px;max-width:1100px;margin:0 auto;background:var(--bg);border-radius:24px;box-shadow:0 30px 80px rgba(0,0,0,.4);display:grid;grid-template-columns:230px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;animation:mFade .3s var(--ease) both}
.lsHead{grid-column:1/-1;display:flex;align-items:center;gap:14px;padding:18px 22px;border-bottom:1px solid var(--border);background:var(--surface)}
.lsHeadTxt{flex:1;min-width:0}.lsHead b{display:block;font-family:var(--font-display);font-size:19px;font-weight:600;letter-spacing:-.01em;line-height:1.25}
.lsClose{width:40px;height:40px;border-radius:999px;border:1px solid var(--border);background:var(--surface-alt);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text);flex:none}.lsClose svg{width:18px;height:18px}
.lsSteps{display:flex;flex-direction:column;gap:6px;padding:16px 14px;border-right:1px solid var(--border);background:var(--surface);overflow:auto}
.lsStep{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid transparent;background:transparent;text-align:left;cursor:pointer;color:var(--text-muted);font-family:var(--font-body)}
.lsStep span{width:30px;height:30px;border-radius:9px;border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;flex:none;background:var(--surface)}
.lsStep span svg{width:15px;height:15px}.lsStep b{display:block;font-family:var(--font-display);font-size:13.5px;font-weight:600;color:var(--text)}.lsStep small{font-size:11.5px}
.lsStep.on{background:var(--t3-teal-bg);border-color:rgba(13,148,136,.3)}.lsStep.on span{background:var(--brand);border-color:var(--brand);color:#fff}
.lsStep.done span{background:#0d9488;border-color:#0d9488;color:#fff}
.lsMain{overflow:auto;padding:24px 28px;background:var(--bg)}
.lsFoot{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 22px;border-top:1px solid var(--border);background:var(--surface)}
.lsFoot .btnv2.secondary{background:transparent;border:1px solid var(--border);color:var(--text-muted);box-shadow:none}
.lsFoot .btnv2 svg{width:16px;height:16px;vertical-align:-3px}
.lsReadInner{max-width:820px;margin:0 auto}.lsReadInner .bento{grid-template-columns:minmax(0,1fr)}
.lsQc{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:16px}
.lsEmpty{max-width:560px;margin:60px auto;text-align:center;color:var(--text-muted);font-size:15px}
.lsDone{text-align:center;padding:40px 0 10px}.lsDone svg{width:44px;height:44px;color:#0d9488;stroke-width:2.4}.lsDone b{display:block;font-family:var(--font-display);font-size:34px;font-weight:700;letter-spacing:-.02em;margin-top:8px}.lsDone p{margin:4px 0 0;color:var(--text-muted)}
.lsFcWrap{max-width:640px;margin:0 auto;padding-top:10px}
.lsFcCount{font-family:var(--font-display);font-size:13px;font-weight:600;color:var(--text-muted);text-align:center;margin-bottom:12px}
.lsFc{position:relative;height:280px;perspective:1400px;cursor:pointer}
.lsFcFace{position:absolute;inset:0;backface-visibility:hidden;border-radius:20px;border:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:34px 30px;transition:transform .5s cubic-bezier(.4,.2,.2,1);box-shadow:0 12px 30px rgba(11,28,38,.08)}
.lsFcFace .tag{position:absolute;top:14px;left:18px;font-family:var(--font-display);font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint)}
.lsFcFace p{margin:0;font-family:var(--font-display);font-size:20px;font-weight:600;line-height:1.35;letter-spacing:-.01em}
.lsFcFace small{position:absolute;bottom:14px;color:var(--text-faint);font-size:12px}
.lsFcFace.back{transform:rotateY(180deg);background:var(--t3-ink);color:#fff;border-color:var(--t3-ink)}.lsFcFace.back p{font-family:var(--font-body);font-size:17px;font-weight:500;line-height:1.55}.lsFcFace.back .tag{color:rgba(255,255,255,.6)}
html[data-theme="dark"] .lsFcFace.back{background:#0d9488;color:#052e2b;border-color:#0d9488}html[data-theme="dark"] .lsFcFace.back .tag{color:rgba(5,46,43,.6)}
.lsFc.flipped .front{transform:rotateY(180deg)}.lsFc.flipped .back{transform:rotateY(0)}
.lsFcBtns{display:flex;justify-content:center;gap:10px;margin-top:18px}.lsFcBtns .btnv2.secondary{background:transparent;border:1px solid var(--border);color:var(--text-muted);box-shadow:none}
.lsQ{max-width:760px;margin:0 auto}.lsQTop{margin-bottom:8px}.lsQ .qText{font-family:var(--font-display);font-size:19px;font-weight:600;line-height:1.35;letter-spacing:-.01em;margin:0 0 16px}
.lsOpts{display:flex;flex-direction:column;gap:8px;counter-reset:opt}
.lsExplain{margin-top:14px}.lsOk{color:#16a34a;font-weight:600;margin:0 0 6px}.lsKo{color:#dc2626;font-weight:600;margin:0 0 6px}.lsOk svg,.lsKo svg{width:16px;height:16px;vertical-align:-3px}
.lsSummary{max-width:620px;margin:0 auto}.lsStats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.lsStats div{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:12px;text-align:center}.lsStats b{display:block;font-family:var(--font-display);font-size:22px;font-weight:700}.lsStats span{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-weight:600}
.lsNextHint{text-align:center;color:var(--text-muted)}
@media (max-width:820px){.lsBody{inset:0;border-radius:0;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr) auto}.lsSteps{flex-direction:row;border-right:0;border-bottom:1px solid var(--border);padding:10px 12px;overflow-x:auto}.lsStep{padding:8px 10px;flex:none}.lsStep small{display:none}.lsMain{padding:16px}.lsFoot{flex-wrap:wrap}}
/* cor interactiu */
.heartLab{margin-top:16px}
.heartWrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:18px;align-items:start}
.heartStage{background:var(--surface-alt);border:1px solid var(--border);border-radius:16px;padding:12px}
.heartSvg{width:100%;height:auto;display:block}
.heartSvg .hp{fill:var(--surface);stroke:var(--text-faint);stroke-width:1.6;cursor:pointer;transition:fill .15s,stroke .15s}
.heartSvg .hp[data-id="ad"],.heartSvg .hp[data-id="vd"],.heartSvg .hp[data-id="pulm"],.heartSvg .hp[data-id="caves"],.heartSvg .hp[data-id="tric"]{fill:rgba(96,165,250,.18)}
.heartSvg .hp[data-id="ai"],.heartSvg .hp[data-id="ve"],.heartSvg .hp[data-id="aorta"],.heartSvg .hp[data-id="vpulm"],.heartSvg .hp[data-id="mitral"]{fill:rgba(248,113,113,.18)}
.heartSvg .hp:hover{stroke:var(--brand);stroke-width:2.2}.heartSvg .hp.sel{fill:rgba(13,148,136,.45);stroke:#0d9488;stroke-width:2.4}
.heartLab.quizMode .heartSvg .hp:hover{stroke:var(--text)}
.heartTabs{display:flex;gap:6px;margin-bottom:10px}.heartTabs button{flex:1;padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-family:var(--font-display);font-size:12.5px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.heartTabs button svg{width:14px;height:14px}.heartTabs button.on{background:var(--brand);border-color:var(--brand);color:#fff}
.heartInfo{background:var(--surface-alt);border:1px solid var(--border);border-radius:12px;padding:12px 14px;min-height:96px;margin-bottom:10px}
.heartInfo b{display:block;font-family:var(--font-display);font-size:16px;font-weight:600;margin-bottom:4px}.heartInfo p{margin:0;font-size:14px;line-height:1.5;color:var(--text-muted)}
.heartInfo .heartAsk{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);font-weight:600}
.heartList{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:4px}
.heartList li{padding:6px 10px;border-radius:8px;font-size:13px;cursor:pointer;color:var(--text-muted);border:1px solid transparent}.heartList li:hover{background:var(--surface-alt);color:var(--text)}.heartList li.sel{background:rgba(13,148,136,.12);color:var(--text);border-color:rgba(13,148,136,.3)}
.heartLab.quizMode .heartList{display:none}
@media (max-width:700px){.heartWrap{grid-template-columns:minmax(0,1fr)}}

.heartSvg .hv{fill:var(--text-faint);opacity:.7;pointer-events:none}.heartSvg .hl{font-family:var(--font-display);font-size:13px;font-weight:600;fill:var(--text-muted);text-anchor:middle;pointer-events:none}

/* ===== Text complet visible (antic acordio) i eines interactives ===== */
:is(#content,.lsMain) .fullText{margin:22px 0 6px;padding:22px 26px;border:1px solid var(--border);border-radius:18px;background:var(--surface);position:relative}
:is(#content,.lsMain) .fullText::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--t3-slate);opacity:.6}
:is(#content,.lsMain) .fullText > .blk-label{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px}
:is(#content,.lsMain) .fullText > .blk-label::before{content:"";width:16px;height:16px;background:currentColor;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 6h16M4 12h16M4 18h10'/></svg>") center/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 6h16M4 12h16M4 18h10'/></svg>") center/contain no-repeat}
:is(#content,.lsMain) .fullText .detailInner{font-size:16.5px;line-height:1.7;color:var(--text);max-width:78ch}
:is(#content,.lsMain) .fullText .detailInner p{margin:0 0 14px}:is(#content,.lsMain) .fullText .detailInner p:last-child{margin-bottom:0}
:is(#content,.lsMain) .fullText .detailInner b{color:var(--text);font-weight:700}
:is(#content,.lsMain) .fullText .detailInner ul,:is(#content,.lsMain) .fullText .detailInner ol{margin:0 0 14px 22px;line-height:1.65}
:is(#content,.lsMain) .fullText .detailInner table{margin:12px 0}
:is(#content,.lsMain) .bento.edAdd{margin-top:14px}
/* eines */
.edTool .edToolSlot{margin-top:12px}
.tlGrid{display:flex;flex-direction:column;gap:12px}
.tlGrid label{display:grid;grid-template-columns:minmax(0,1fr) 110px 48px;gap:12px;align-items:center;font-size:14px;color:var(--text)}
.tlGrid label span{line-height:1.3}.tlGrid label b{font-family:var(--font-display);font-size:16px;text-align:right}
.tlGrid input[type=range]{accent-color:#0d9488;width:100%}
.tlOut{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.tlOut > div{background:var(--surface-alt);border:1px solid var(--border);border-radius:12px;padding:10px 12px;text-align:center}
.tlOut small{display:block;font-family:var(--font-display);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}
.tlOut b{display:block;font-family:var(--font-display);font-size:24px;font-weight:700;color:var(--brand-dark);margin:2px 0}
.tlOut span{font-size:12px;color:var(--text-muted)}
.tlHint{margin:12px 0 0;font-size:13.5px;color:var(--text-muted)}
.tlRow{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end}
.tlSeg{display:flex;flex-direction:column;gap:6px}.tlSeg > span{font-family:var(--font-display);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.tlSeg div{display:inline-flex;border:1px solid var(--border);border-radius:10px;overflow:hidden}
.tlSeg button{padding:8px 14px;border:0;background:var(--surface);color:var(--text-muted);font-family:var(--font-display);font-size:13px;font-weight:600;cursor:pointer}
.tlSeg button.on{background:var(--brand);color:#fff}
.tlNum{display:flex;flex-direction:column;gap:6px;font-family:var(--font-display);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.tlNum input{width:130px;padding:9px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-family:var(--font-display);font-size:18px;font-weight:600}
.tlResult{margin-top:12px;padding:12px 16px;border-radius:12px;background:var(--t3-teal-bg);border:1px solid rgba(13,148,136,.25)}
.tlResult b{display:block;font-family:var(--font-display);font-size:17px;font-weight:600;color:var(--text)}
.tlResult p{margin:4px 0 0;font-size:14.5px;line-height:1.5;color:var(--text)}.tlResult small{display:block;margin-top:6px;font-size:13px;color:var(--text-muted);line-height:1.45}
.tlSub{font-family:var(--font-display);font-size:13px;font-weight:600;margin:4px 0 8px;color:var(--text)}
.tlChecks{display:flex;flex-direction:column;gap:4px}
.tlChecks label{display:grid;grid-template-columns:20px minmax(0,1fr) 34px;gap:10px;align-items:center;padding:7px 10px;border-radius:9px;font-size:14px;color:var(--text);cursor:pointer}
.tlChecks label:hover{background:var(--surface-alt)}.tlChecks input{accent-color:#0d9488;width:16px;height:16px}
.tlChecks b{font-family:var(--font-display);font-size:12px;color:var(--text-muted);text-align:right}
.tlTwo{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}
.mkSvg{width:100%;height:auto;display:block;background:var(--surface-alt);border:1px solid var(--border);border-radius:14px;padding:6px}
.mkAxis{stroke:var(--text-faint);stroke-width:1}.mkTick{stroke:var(--text-faint)}.mkLbl{font-family:var(--font-display);font-size:11px;fill:var(--text-muted);text-anchor:middle}
.mkCurve{fill:none;stroke-width:2;opacity:.35;cursor:pointer;transition:opacity .15s,stroke-width .15s}.mkCurve.on{opacity:1;stroke-width:3.5}
.mkCurve.c0{stroke:#64748b}.mkCurve.c1{stroke:#0d9488}.mkCurve.c2{stroke:#dc2626}.mkCurve.c3{stroke:#b45309}.mkCurve.c4{stroke:#7c3aed}
.mkLegend{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.mkLegend button{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-family:var(--font-display);font-size:12px;font-weight:600;cursor:pointer}
.mkLegend button i{width:10px;height:10px;border-radius:999px;display:inline-block}
.mkLegend .c0 i{background:#64748b}.mkLegend .c1 i{background:#0d9488}.mkLegend .c2 i{background:#dc2626}.mkLegend .c3 i{background:#b45309}.mkLegend .c4 i{background:#7c3aed}
.mkLegend button.on{border-color:var(--brand);color:var(--text);background:var(--t3-teal-bg)}
@media (max-width:640px){.tlOut{grid-template-columns:1fr}.tlGrid label{grid-template-columns:minmax(0,1fr) 40px}.tlGrid input[type=range]{grid-column:1/-1}}
.tlSel{display:flex;flex-direction:column;gap:6px;font-family:var(--font-display);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);min-width:0}
.tlSel select{padding:9px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-family:var(--font-body);font-size:14px;text-transform:none;letter-spacing:0;font-weight:500;max-width:100%}
.tlGrid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}

/* ===== Lectura ordenada (app-lectura.js) ===== */
:is(#content,.lsMain) .lecNav{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 22px}
:is(#content,.lsMain) .lecChip{display:inline-flex;align-items:center;gap:7px;padding:6px 12px 6px 6px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-family:var(--font-display);font-size:12.5px;font-weight:600;cursor:pointer;transition:border-color .15s,color .15s,background .15s}
:is(#content,.lsMain) .lecChip b{width:20px;height:20px;border-radius:999px;background:var(--surface-alt);color:var(--text);font-size:11px;display:inline-flex;align-items:center;justify-content:center}
:is(#content,.lsMain) .lecChip em{font-style:normal;font-weight:500;opacity:.7}
:is(#content,.lsMain) .lecChip:hover{border-color:var(--t3-teal);color:var(--text);background:var(--t3-teal-bg)}
:is(#content,.lsMain) .lecChip.k-exam:hover{border-color:var(--t3-red);background:var(--t3-red-bg)}
:is(#content,.lsMain) .lecChip.k-mnemo:hover{border-color:var(--t3-gold);background:var(--t3-gold-bg)}

:is(#content,.lsMain) .lecGroup{margin:0 0 30px}
:is(#content,.lsMain) .lecH3{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:0 0 10px;border-bottom:1px solid var(--border);font-family:var(--font-display);font-size:14px;font-weight:600;letter-spacing:.02em;color:var(--text)}
:is(#content,.lsMain) .lecH3 svg{width:18px;height:18px;color:var(--t3-teal);flex:none}
:is(#content,.lsMain) .lecExam .lecH3 svg{color:var(--t3-red)}:is(#content,.lsMain) .lecMnemo .lecH3 svg{color:var(--t3-gold)}
:is(#content,.lsMain) .lecStep{width:24px;height:24px;border-radius:8px;background:var(--t3-ink);color:#fff;font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;flex:none}
html[data-theme="dark"] :is(#content,.lsMain) .lecStep{background:var(--t3-teal);color:#052e2b}

/* 1 · idees clau: llista numerada, sense caixes */
:is(#content,.lsMain) .lecList{list-style:none;margin:0;padding:0}
:is(#content,.lsMain) .lecItem{display:grid;grid-template-columns:36px minmax(0,1fr);gap:14px;padding:16px 0;border-bottom:1px solid var(--border)}
:is(#content,.lsMain) .lecItem:last-child{border-bottom:none}
:is(#content,.lsMain) .lecN{width:32px;height:32px;border-radius:999px;border:1.5px solid var(--border);background:var(--surface);color:var(--text-muted);font-family:var(--font-display);font-size:13.5px;font-weight:600;display:flex;align-items:center;justify-content:center;margin-top:2px}
:is(#content,.lsMain) .lecItem.star .lecN{border-color:var(--t3-gold);background:var(--t3-gold-bg);color:var(--t3-gold)}
:is(#content,.lsMain) .lecN svg{width:16px;height:16px}
:is(#content,.lsMain) .lecBody > .blk,:is(#content,.lsMain) .lecBody > .blk-estrella{border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0;padding:0!important;transform:none!important}
:is(#content,.lsMain) .lecBody > .blk::before,:is(#content,.lsMain) .lecBody > .blk-estrella::before{display:none}
:is(#content,.lsMain) .lecBody > .blk:hover,:is(#content,.lsMain) .lecBody > .blk-estrella:hover{box-shadow:none;transform:none}
:is(#content,.lsMain) .lecBody .blk-label{margin:0 0 4px;font-size:10.5px;letter-spacing:.12em}
:is(#content,.lsMain) .lecBody h4{font-size:18px;margin:0 0 6px}
:is(#content,.lsMain) .lecBody p,:is(#content,.lsMain) .lecBody ul,:is(#content,.lsMain) .lecBody ol{font-size:16px;line-height:1.62}
:is(#content,.lsMain) .lecBody p:last-child{margin-bottom:0}

/* 2-4 · piles a una columna */
:is(#content,.lsMain) .lecStack{display:flex;flex-direction:column;gap:16px}
:is(#content,.lsMain) .lecStack > *{margin:0}
:is(#content,.lsMain) .lecStack > .blk:hover,:is(#content,.lsMain) .lecStack > .blk-estrella:hover{transform:none}
:is(#content,.lsMain) .lecExam .blk h4{font-size:17px}
:is(#content,.lsMain) .lecExam .blk p{font-size:15.5px}

/* explicació completa: plegada, discreta */
:is(#content,.lsMain) details.lecFull{margin:0 0 30px;border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:0}
:is(#content,.lsMain) details.lecFull > summary{list-style:none;display:flex;align-items:center;gap:10px;padding:12px 16px;cursor:pointer;font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--text);border-radius:14px}
:is(#content,.lsMain) details.lecFull > summary::-webkit-details-marker{display:none}
:is(#content,.lsMain) details.lecFull > summary svg{width:18px;height:18px;color:var(--t3-teal);flex:none}
:is(#content,.lsMain) details.lecFull > summary small{font-family:var(--font-body);font-weight:500;color:var(--text-muted);font-size:13px}
:is(#content,.lsMain) details.lecFull > summary .lecChev{margin-left:auto;display:inline-flex;transition:transform .2s}
:is(#content,.lsMain) details.lecFull[open] > summary .lecChev{transform:rotate(90deg)}
:is(#content,.lsMain) details.lecFull > summary:hover{background:var(--surface-alt)}
:is(#content,.lsMain) details.lecFull[open] > summary{border-bottom:1px solid var(--border);border-radius:14px 14px 0 0}
:is(#content,.lsMain) details.lecFull > .detailInner{padding:14px 20px 18px;font-size:15px;line-height:1.65;color:var(--text)}
:is(#content,.lsMain) details.lecFull > .detailInner p{margin:0 0 12px}
:is(#content,.lsMain) .fullText.lecFull > .blk-label{display:none}

@media (max-width:640px){
  :is(#content,.lsMain) .lecItem{grid-template-columns:28px minmax(0,1fr);gap:10px}
  :is(#content,.lsMain) .lecN{width:26px;height:26px;font-size:12px}
  :is(#content,.lsMain) .lecBody h4{font-size:17px}
  :is(#content,.lsMain) .lecBody p{font-size:15.5px}
}
html.focusMode :is(#content,.lsMain) .lecBody p{font-size:17px;line-height:1.72}
:is(#content,.lsMain) details.lecFull::before{display:none}
:is(#content,.lsMain) details.lecFull{overflow:hidden}

/* ===== Lectura v2: color per tipus, llegenda, pràctica, repàs final ===== */
:root{--k-estrella:#b45309;--k-estrella-bg:#fffbeb;--k-concepto:#0d9488;--k-concepto-bg:#f0fdfa;--k-dato:#4f46e5;--k-dato-bg:#eef2ff;--k-tractament:#15803d;--k-tractament-bg:#f0fdf4;--k-escala:#7c3aed;--k-escala-bg:#f5f3ff;--k-alerta:#dc2626;--k-alerta-bg:#fef2f2;--k-mnemo:#b45309;--k-mnemo-bg:#fffbeb;--k-other:#475569;--k-other-bg:#f8fafc}
html[data-theme="dark"]{--k-estrella:#fbbf24;--k-estrella-bg:rgba(251,191,36,.08);--k-concepto:#2dd4bf;--k-concepto-bg:rgba(45,212,191,.08);--k-dato:#a5b4fc;--k-dato-bg:rgba(129,140,248,.10);--k-tractament:#4ade80;--k-tractament-bg:rgba(74,222,128,.08);--k-escala:#c4b5fd;--k-escala-bg:rgba(167,139,250,.10);--k-alerta:#f87171;--k-alerta-bg:rgba(248,113,113,.09);--k-mnemo:#fbbf24;--k-mnemo-bg:rgba(251,191,36,.08);--k-other:#9db0c4;--k-other-bg:rgba(148,163,184,.08)}
:is(#content,.lsMain) .lecItem{--k:var(--k-other);--kbg:var(--k-other-bg)}
:is(#content,.lsMain) .lecItem.k-estrella{--k:var(--k-estrella);--kbg:var(--k-estrella-bg)}
:is(#content,.lsMain) .lecItem.k-concepto{--k:var(--k-concepto);--kbg:var(--k-concepto-bg)}
:is(#content,.lsMain) .lecItem.k-dato{--k:var(--k-dato);--kbg:var(--k-dato-bg)}
:is(#content,.lsMain) .lecItem.k-tractament{--k:var(--k-tractament);--kbg:var(--k-tractament-bg)}
:is(#content,.lsMain) .lecItem.k-escala{--k:var(--k-escala);--kbg:var(--k-escala-bg)}
:is(#content,.lsMain) .lecItem{border-bottom:none;padding:6px 0}
:is(#content,.lsMain) .lecItem .lecBody{background:var(--kbg);border-left:3px solid var(--k);border-radius:0 14px 14px 0;padding:14px 18px 14px 16px}
:is(#content,.lsMain) .lecItem .lecN{border-color:var(--k);color:var(--k);background:var(--surface);margin-top:12px}
:is(#content,.lsMain) .lecItem.star .lecN{background:var(--k-estrella);color:#fff;border-color:var(--k-estrella)}
:is(#content,.lsMain) .lecBody .blk-label{color:var(--k)!important}
:is(#content,.lsMain) .lecBody .blk-label::before{background:var(--k)!important}
:is(#content,.lsMain) .lecItem.k-estrella .lecBody{background:var(--k-estrella-bg);border-left-width:4px}

/* llegenda */
#content .lecLegend{margin:0 0 26px;padding:16px 20px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}
#content .lecLegTitle{font-family:var(--font-display);font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--text);margin-bottom:10px}
#content .lecLegPath{display:flex;flex-wrap:wrap;gap:6px 14px;margin-bottom:12px;font-size:13.5px;color:var(--text-muted)}
#content .lecLegPath span{display:inline-flex;align-items:center;gap:6px}
#content .lecLegPath b{width:20px;height:20px;border-radius:7px;background:var(--t3-ink);color:#fff;font-family:var(--font-display);font-size:11px;display:inline-flex;align-items:center;justify-content:center}
html[data-theme="dark"] #content .lecLegPath b{background:var(--t3-teal);color:#052e2b}
#content .lecLegDots{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px;color:var(--text-muted)}
#content .lecLegDots span{display:inline-flex;align-items:center;gap:6px}
#content .lecLegDots i{width:10px;height:10px;border-radius:999px;background:var(--k-other)}
#content .lecLegDots .k-estrella i{background:var(--k-estrella)}#content .lecLegDots .k-concepto i{background:var(--k-concepto)}#content .lecLegDots .k-dato i{background:var(--k-dato)}#content .lecLegDots .k-tractament i{background:var(--k-tractament)}#content .lecLegDots .k-escala i{background:var(--k-escala)}#content .lecLegDots .k-alerta i{background:var(--k-alerta)}#content .lecLegDots .k-mnemo i{background:var(--k-mnemo)}

/* pràctica: flashcards + relaciona */
:is(#content,.lsMain) .lecPractice{border:1px solid var(--border);border-radius:16px;background:var(--surface);padding:14px 18px 18px}
:is(#content,.lsMain) .lecPTabs{display:flex;gap:6px;margin-bottom:14px}
:is(#content,.lsMain) .lecPTabs button{padding:7px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-family:var(--font-display);font-size:13px;font-weight:600;cursor:pointer}
:is(#content,.lsMain) .lecPTabs button em{font-style:normal;opacity:.7;margin-left:4px}
:is(#content,.lsMain) .lecPTabs button.on{background:var(--t3-ink);color:#fff;border-color:var(--t3-ink)}
html[data-theme="dark"] :is(#content,.lsMain) .lecPTabs button.on{background:var(--t3-teal);color:#052e2b;border-color:var(--t3-teal)}
:is(#content,.lsMain) .lecFcCount{font-family:var(--font-display);font-size:12px;color:var(--text-muted);margin-bottom:10px}
:is(#content,.lsMain) .lecFc{perspective:1200px;cursor:pointer;min-height:150px}
:is(#content,.lsMain) .lecFcIn{position:relative;transition:transform .45s;transform-style:preserve-3d;min-height:150px}
:is(#content,.lsMain) .lecFc.flipped .lecFcIn{transform:rotateY(180deg)}
:is(#content,.lsMain) .lecFcFace{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:14px;padding:18px 20px;display:flex;flex-direction:column;justify-content:center;gap:6px;font-size:16px;line-height:1.5;border:1px solid var(--border);background:var(--surface-alt);color:var(--text)}
:is(#content,.lsMain) .lecFcFace span{font-family:var(--font-display);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted)}
:is(#content,.lsMain) .lecFcFace.b{transform:rotateY(180deg);background:var(--t3-ink);color:#fff;border-color:var(--t3-ink)}
:is(#content,.lsMain) .lecFcFace.b span{color:rgba(255,255,255,.6)}
:is(#content,.lsMain) .lecFcNav{display:flex;gap:8px;margin-top:12px;justify-content:center}
:is(#content,.lsMain) .lecFcNav button{padding:8px 14px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-family:var(--font-display);font-size:13px;font-weight:600;cursor:pointer}
:is(#content,.lsMain) .lecFcNav button.pri{background:var(--t3-teal);border-color:var(--t3-teal);color:#fff}
:is(#content,.lsMain) .lecPHint{margin:0 0 12px;font-size:14px;color:var(--text-muted)}
:is(#content,.lsMain) .lecMatch{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:10px}
:is(#content,.lsMain) .lecMCol{display:flex;flex-direction:column;gap:8px}
:is(#content,.lsMain) .lecMCol button{text-align:left;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--surface-alt);color:var(--text);font-family:var(--font-display);font-size:14px;font-weight:600;cursor:pointer;line-height:1.35;transition:border-color .15s,background .15s}
:is(#content,.lsMain) .lecMCol.defs button{font-family:var(--font-body);font-weight:500;font-size:14px}
:is(#content,.lsMain) .lecMCol button.sel{border-color:var(--t3-teal);background:var(--t3-teal-bg);box-shadow:0 0 0 2px rgba(13,148,136,.25)}
:is(#content,.lsMain) .lecMCol button.ok{border-color:var(--k-tractament);background:var(--k-tractament-bg);opacity:.75}
:is(#content,.lsMain) .lecMCol button.ko{border-color:var(--k-alerta);background:var(--k-alerta-bg);animation:lecShake .4s}
@keyframes lecShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
:is(#content,.lsMain) .lecMScore{margin-top:12px;font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--text)}
:is(#content,.lsMain) .lecMAgain{margin-left:8px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-family:var(--font-display);font-size:12.5px;font-weight:600;cursor:pointer}
@media (max-width:640px){:is(#content,.lsMain) .lecMatch{grid-template-columns:1fr}}

/* repàs final */
#content .lecFinal{margin-top:18px}
#content .lecFinalBtns{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
#content .lecFinalGrp{margin-bottom:22px}
#content .lecFinalGrp .lecH3 em{font-style:normal;font-weight:500;color:var(--text-muted);margin-left:4px}
#content .lecFinalList{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}
#content .lecFinalList button{width:100%;text-align:left;padding:10px 12px 10px 14px;border-radius:12px;border:1px solid var(--border);border-left:4px solid var(--k-alerta);background:var(--surface);color:var(--text);cursor:pointer;display:flex;flex-direction:column;gap:2px;font-family:var(--font-body)}
#content .lecFinalList li.orange button{border-left-color:#ea580c}
#content .lecFinalList.gold button{border-left-color:var(--k-mnemo);background:var(--k-mnemo-bg)}
#content .lecFinalList b{font-family:var(--font-display);font-size:14px;font-weight:600;line-height:1.3}
#content .lecFinalList small{font-size:12px;color:var(--text-muted)}
#content .lecFinalList button:hover{border-color:var(--t3-teal)}
:is(#content,.lsMain) .lecExam .blk-optrap{--blk-c:#ea580c;background:#fff7ed}
html[data-theme="dark"] :is(#content,.lsMain) .lecExam .blk-optrap{background:rgba(251,146,60,.08);--blk-c:#fb923c}

/* ===== eines v2: pupil·les, parells cranials ===== */
.pupilStage{display:flex;gap:14px;justify-content:center;margin-bottom:12px;background:var(--surface-alt);border:1px solid var(--border);border-radius:14px;padding:12px}
.pupilEye{width:150px;height:auto}.pupilEye .pupil{transition:r .35s ease}
.crTabs{display:flex;gap:6px;margin-bottom:12px}
.crTabs button{padding:7px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-family:var(--font-display);font-size:13px;font-weight:600;cursor:pointer}
.crTabs button.on{background:var(--t3-ink);color:#fff;border-color:var(--t3-ink)}
html[data-theme="dark"] .crTabs button.on{background:var(--t3-teal);color:#052e2b;border-color:var(--t3-teal)}
.crGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-bottom:12px}
.crBtn{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:12px;border:1px solid var(--border);border-left:4px solid var(--t3-slate);background:var(--surface);color:var(--text);cursor:pointer;text-align:left;font-family:var(--font-body);font-size:13.5px;transition:border-color .15s,background .15s}
.crBtn b{font-family:var(--font-display);font-size:13px;min-width:28px;color:var(--text-muted)}
.crBtn.tS{border-left-color:#4f46e5}.crBtn.tM{border-left-color:#15803d}.crBtn.tX{border-left-color:#b45309}
.crBtn.on{background:var(--t3-teal-bg);border-color:var(--t3-teal)}
.crBtn.ok{background:#f0fdf4;border-color:#15803d}.crBtn.ko{background:#fef2f2;border-color:#dc2626}
html[data-theme="dark"] .crBtn.ok{background:rgba(74,222,128,.12)}html[data-theme="dark"] .crBtn.ko{background:rgba(248,113,113,.12)}

/* Wallace */
.wallSvg{width:100%;max-width:230px;height:auto;display:block;margin:0 auto}
.wallSvg [data-z]{fill:var(--surface-alt);stroke:var(--text-faint);stroke-width:1.5;cursor:pointer;transition:fill .15s}
.wallSvg [data-z]:hover{fill:var(--t3-teal-bg)}.wallSvg [data-z].on{fill:#f87171;stroke:#dc2626}
.wallSvg text{font-family:var(--font-display);font-size:12px;font-weight:600;fill:var(--text-muted);text-anchor:middle;pointer-events:none}.wallSvg text.sm{font-size:9px}
.tlChip{padding:7px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-family:var(--font-display);font-size:12.5px;font-weight:600;cursor:pointer}
.tlChip.on{background:#fef2f2;border-color:#dc2626;color:#dc2626}

/* fitxa de repàs */
#content .lecFitxa .lecH3{flex-wrap:wrap}
#content .lecPrint{margin-left:auto;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-family:var(--font-display);font-size:12.5px;font-weight:600;cursor:pointer}
#content .lecPrint:hover{border-color:var(--t3-teal);background:var(--t3-teal-bg)}
#content .lecFitxaBody{border:1px solid var(--border);border-radius:16px;background:var(--surface);padding:6px 20px 14px;column-width:340px;column-gap:28px}
#content .lecFitxaSec{break-inside:avoid;margin:14px 0 8px}
#content .lecFitxaSec h4{display:flex;align-items:center;gap:8px;margin:0 0 6px;font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--text);border-bottom:1px solid var(--border);padding-bottom:5px}
#content .lecFitxaSec h4 span{width:22px;height:22px;border-radius:7px;background:var(--t3-ink);color:#fff;font-size:11px;display:inline-flex;align-items:center;justify-content:center;flex:none}
html[data-theme="dark"] #content .lecFitxaSec h4 span{background:var(--t3-teal);color:#052e2b}
#content .lecFitxaSec ul{list-style:none;margin:0;padding:0}
#content .lecFitxaSec li{position:relative;padding:3px 0 3px 14px;font-size:13.5px;line-height:1.45;color:var(--text)}
#content .lecFitxaSec li::before{content:"";position:absolute;left:0;top:10px;width:7px;height:7px;border-radius:999px;background:var(--k-other)}
#content .lecFitxaSec li.k-estrella::before{background:var(--k-estrella)}#content .lecFitxaSec li.k-concepto::before{background:var(--k-concepto)}#content .lecFitxaSec li.k-dato::before{background:var(--k-dato)}#content .lecFitxaSec li.k-tractament::before{background:var(--k-tractament)}#content .lecFitxaSec li.k-escala::before{background:var(--k-escala)}
#content .lecFitxaSec li b{font-weight:700}
#content .lecFitxaSec li.star b{color:var(--k-estrella)}

/* orina */
.uColors{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.uColors button{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 10px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-family:var(--font-display);font-size:12px;font-weight:600;cursor:pointer;min-width:84px}
.uColors button i{width:34px;height:44px;border-radius:6px 6px 10px 10px;background:linear-gradient(180deg,rgba(255,255,255,.35),transparent 40%),var(--c);border:1px solid rgba(0,0,0,.12)}
.uColors button.on{border-color:var(--t3-teal);color:var(--text);background:var(--t3-teal-bg)}
.tlTag{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:999px;font-family:var(--font-display);font-size:11px;font-weight:600;background:var(--surface-alt);color:var(--text-muted);border:1px solid var(--border)}.tlTag.ok{background:#f0fdf4;color:#15803d;border-color:#86efac}.tlTag.mid{background:#fffbeb;color:#b45309;border-color:#fcd34d}
.tlNum input[type=date]{width:180px;font-size:15px}

/* Traumatologia · passos animats */
.tlSteps{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0}
.tlSteps .lecArrow{color:var(--text-muted);font-style:normal}
.tlSteps .tlChip{cursor:default;transition:background .25s,color .25s,border-color .25s}
.tlSteps .tlChip.on{background:var(--brand);border-color:var(--brand);color:#fff}
.tlSeg > div{flex-wrap:wrap}

.mkLegend .c5 i{background:#ca8a04}
.mkLegend .c6 i{background:#0284c7}

/* Calendari vacunal · targetes */
.vacGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin:12px 0}
.vacCard{position:relative;display:flex;flex-direction:column;gap:2px;padding:12px 12px 12px 14px;border:1px solid var(--border);border-left:4px solid var(--vc);border-radius:12px;background:var(--surface)}
.vacCard .vacIc{position:absolute;top:10px;right:10px;width:22px;height:22px;color:var(--vc)}
.vacCard .vacIc svg{width:22px;height:22px}
.vacCard b{font-family:var(--font-display);font-size:14px;color:var(--vc);padding-right:28px}
.vacCard em{font-style:normal;font-size:13px;font-weight:600;color:var(--text)}
.vacCard small{font-size:12px;color:var(--text-muted)}
.vacKey{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px;color:var(--text-muted)}
.vacKey span{display:inline-flex;align-items:center;gap:5px}
.vacKey svg{width:16px;height:16px}


/* ===== Lectura v3 · tipografia compacta, flux connectat, mòbil ===== */
:root{--rd-fs:15px;--rd-lh:1.58;--rd-h4:15.5px;--rd-label:10.5px;--rd-h2:22px;--rd-gut:32px}
@media (max-width:640px){:root{--rd-fs:14.5px;--rd-lh:1.55;--rd-h4:15px;--rd-h2:19px;--rd-gut:26px}}
@media (min-width:1100px){:root{--rd-fs:15.5px}}

/* Text de lectura: una sola mida a tot arreu */
:is(#content,.lsMain) .lecBody p,:is(#content,.lsMain) .lecBody ul,:is(#content,.lsMain) .lecBody ol,
:is(#content,.lsMain) .blk p,:is(#content,.lsMain) .blk-estrella p,:is(#content,.lsMain) .blk li,:is(#content,.lsMain) .blk-estrella li,
:is(#content,.lsMain) .blk-proceso p,:is(#content,.lsMain) .blk-diagrama p,:is(#content,.lsMain) .tsection > p,
:is(#content,.lsMain) .fullText p,:is(#content,.lsMain) .detailInner p,:is(#content,.lsMain) .lecFull p{font-size:var(--rd-fs);line-height:var(--rd-lh)}
html.focusMode :is(#content,.lsMain) .lecBody p,html.focusMode :is(#content,.lsMain) .blk p{font-size:calc(var(--rd-fs) + 1px);line-height:1.68}
:is(#content,.lsMain) .lecBody h4,:is(#content,.lsMain) .blk h4,:is(#content,.lsMain) .blk-estrella h4,:is(#content,.lsMain) .blk-proceso h4,
:is(#content,.lsMain) .blk-diagrama h4,:is(#content,.lsMain) .blk-tabla h4,:is(#content,.lsMain) .lecExam .blk h4{font-size:var(--rd-h4);line-height:1.3;margin:0 0 4px}
:is(#content,.lsMain) .blk-tabla h4{margin:4px 18px 10px}
:is(#content,.lsMain) .blk .blk-label,:is(#content,.lsMain) .blk-estrella .blk-label,:is(#content,.lsMain) .blk-proceso .blk-label,
:is(#content,.lsMain) .blk-tabla .blk-label,:is(#content,.lsMain) .blk-diagrama .blk-label{font-size:var(--rd-label);letter-spacing:.09em;gap:6px;margin-bottom:4px}
:is(#content,.lsMain) .blk-tabla .blk-label{padding:14px 18px 0}
:is(#content,.lsMain) .blk td,:is(#content,.lsMain) .blk-tabla td,:is(#content,.lsMain) .blk-tabla-html td,:is(#content,.lsMain) .detailInner td{font-size:13.5px;padding:9px 12px;line-height:1.45}
:is(#content,.lsMain) .blk th,:is(#content,.lsMain) .blk-tabla th,:is(#content,.lsMain) .blk-tabla-html th{font-size:11px;padding:8px 12px}
:is(#content,.lsMain) .blk{padding:14px 16px;border-radius:14px}
:is(#content,.lsMain) .blk-tabla{border-radius:14px}

/* Títol del subtema: proporcionat */
:is(#content,.lsMain) .tsection > h2{font-size:var(--rd-h2);gap:12px;margin:0 0 12px;padding:0 0 12px;line-height:1.22}
:is(#content,.lsMain) .tsection > h2 .secnum{width:32px;height:32px;border-radius:10px;font-size:13px}
@media (max-width:640px){:is(#content,.lsMain) .tsection > h2 .secnum{width:28px;height:28px;font-size:12px;border-radius:8px}}

/* Navegació del subtema: una sola fila, desplaçable */
:is(#content,.lsMain) .lecNav{flex-wrap:nowrap;overflow-x:auto;gap:6px;margin:8px 0 18px;padding:2px 0 6px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
:is(#content,.lsMain) .lecNav::-webkit-scrollbar{display:none}
:is(#content,.lsMain) .lecChip{white-space:nowrap;flex:none;font-size:12px;padding:5px 10px 5px 5px;gap:6px}
:is(#content,.lsMain) .lecChip .lecStep{width:20px;height:20px;font-size:11px;border-radius:6px}

/* Capçaleres de grup: petites, guien sense pesar */
:is(#content,.lsMain) .lecH3{font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin:0 0 10px;padding:0 0 8px;gap:8px}
:is(#content,.lsMain) .lecH3 .lecStep{width:20px;height:20px;font-size:11px;border-radius:6px}
:is(#content,.lsMain) .lecH3 svg{width:15px;height:15px}
:is(#content,.lsMain) .lecGroup{margin:0 0 22px}

/* Idees clau: llista connectada, sense caixes de color (només l'estrella i les alertes en porten) */
:is(#content,.lsMain) .lecList{position:relative}
:is(#content,.lsMain) .lecList::before{content:"";position:absolute;left:calc(var(--rd-gut) / 2 - .5px);top:18px;bottom:18px;width:1px;background:var(--border)}
:is(#content,.lsMain) .lecItem{grid-template-columns:var(--rd-gut) minmax(0,1fr);gap:10px;padding:3px 0}
:is(#content,.lsMain) .lecItem .lecN{width:26px;height:26px;font-size:11.5px;margin:7px auto 0;position:relative;z-index:1;border-width:1.5px}
:is(#content,.lsMain) .lecItem.star .lecN{width:28px;height:28px}
:is(#content,.lsMain) .lecItem .lecBody{background:transparent;border-left:3px solid var(--k);border-radius:0 10px 10px 0;padding:6px 12px 8px 14px}
:is(#content,.lsMain) .lecItem .lecBody .blk-label{color:var(--k)}
:is(#content,.lsMain) .lecItem.k-estrella .lecBody{background:var(--k-estrella-bg);border-left-width:3px;padding:10px 14px 12px}
:is(#content,.lsMain) .lecItem.k-alerta .lecBody{background:var(--k-alerta-bg)}
:is(#content,.lsMain) .lecItem .lecBody p{margin:0}
:is(#content,.lsMain) .lecItem .lecBody p + p{margin-top:6px}

/* Compte a l'examen i mnemotècnies: compactes */
:is(#content,.lsMain) .lecExam .blk,:is(#content,.lsMain) .lecMnemo .blk{padding:12px 14px 12px 16px;margin:0 0 10px}
:is(#content,.lsMain) .lecStack{gap:12px}

/* Explicació completa: discreta */
:is(#content,.lsMain) details.lecFull{margin:0 0 22px}
:is(#content,.lsMain) details.lecFull > summary{padding:10px 14px;font-size:13px}

/* Llegenda: petita i, al mòbil, en una fila desplaçable */
#content .lecLegend{padding:12px 16px;margin:0 0 20px;border-radius:14px;font-size:12.5px}
#content .lecLegend b,#content .lecLegend strong{font-size:12.5px}
@media (max-width:640px){
  #content .lecLegend{padding:10px 12px;font-size:11.5px}
  #content .lecLegend .lecLegPath,#content .lecLegend .lecLegDots{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;scrollbar-width:none;padding-bottom:2px}
  #content .lecLegend .lecLegPath::-webkit-scrollbar,#content .lecLegend .lecLegDots::-webkit-scrollbar{display:none}
  #content .lecLegend .lecLegPath > *,#content .lecLegend .lecLegDots > *{flex:none;white-space:nowrap}
}

/* Eines: text de resultat proporcionat */
:is(#content,.lsMain) .tlResult b{font-size:15px}
:is(#content,.lsMain) .tlResult p,:is(#content,.lsMain) .tlHint,:is(#content,.lsMain) .tlResult small{font-size:13px;line-height:1.5}
:is(#content,.lsMain) .tlChecks label span{font-size:13.5px}
:is(#content,.lsMain) .tlSel select,:is(#content,.lsMain) .tlNum input{font-size:14px}
:is(#content,.lsMain) .edTool > p{font-size:13.5px;color:var(--text-muted);margin:0 0 10px}

/* Mòbil: gutter i respiracions */
@media (max-width:640px){
  #mainCol{padding-left:14px;padding-right:14px}
  :is(#content,.lsMain) .lecItem{gap:8px}
  :is(#content,.lsMain) .lecItem .lecBody{padding:5px 10px 7px 12px;border-radius:0 8px 8px 0}
  :is(#content,.lsMain) .blk,:is(#content,.lsMain) .lecExam .blk,:is(#content,.lsMain) .lecMnemo .blk{padding:11px 12px;border-radius:12px}
  :is(#content,.lsMain) .blk-tabla .blk-label{padding:12px 12px 0}
  :is(#content,.lsMain) .blk-tabla h4{margin:4px 12px 8px}
  :is(#content,.lsMain) .blk td,:is(#content,.lsMain) .blk-tabla td{font-size:13px;padding:8px 10px}
  :is(#content,.lsMain) .tlRow{grid-template-columns:1fr}
  :is(#content,.lsMain) .mkLegend button{font-size:12px;padding:6px 10px}
  :is(#content,.lsMain) .vacGrid{grid-template-columns:1fr 1fr;gap:8px}
}

:is(#content,.lsMain) .lecDup{display:none}
@media (max-width:700px){:is(#content,.lsMain) .flow-step{flex:0 0 auto}}

/* Mnemotècnies llargues: pes de lectura, no de títol */
:is(#content,.lsMain) .lecMnemo .blk h4,:is(#content,.lsMain) .blk-mnemo h4{font-size:14.5px;font-weight:600;line-height:1.5;letter-spacing:0}
@media (max-width:640px){:is(#content,.lsMain) .lecMnemo .blk h4,:is(#content,.lsMain) .blk-mnemo h4{font-size:14px}:is(#content,.lsMain) .tlRow{grid-template-columns:1fr 1fr;gap:8px}:is(#content,.lsMain) .tlRow .tlSel{grid-column:1 / -1}}

/* Radar d'examen: bloc únic a l'inici del tema */
:is(#content,.lsMain) .edRadar{grid-template-columns:minmax(0,1fr);margin:0 0 26px}
:is(#content,.lsMain) .edRadar .blk-estrella{border-left:4px solid #ca8a04}
:is(#content,.lsMain) .edRadar .blk-estrella > p{font-size:13px;color:var(--text-muted);margin:0 0 8px}
:is(#content,.lsMain) .edRadar ul{margin:0;padding-left:18px;display:grid;gap:7px}
:is(#content,.lsMain) .edRadar li{font-size:var(--rd-fs);line-height:var(--rd-lh)}
:is(#content,.lsMain) .edRadar li b{color:#92400e}
:root:not([data-theme="light"]) :is(#content,.lsMain) .edRadar li b,[data-theme="dark"] :is(#content,.lsMain) .edRadar li b{color:#fbbf24}
/* ===== Lectura v4 · preguntes del banc per apartat i per tema + visual d'anatomia a dalt ===== */
.lecQCard{display:grid;gap:10px}
.lecQHead{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 14px}
.lecQHead b{font-family:var(--font-display);font-size:16px;color:var(--text)}
.lecQHead span{font-size:13px;color:var(--text-muted)}
.lecQHead span i{font-style:normal;color:#92400e;font-weight:600}
:root:not([data-theme="light"]) .lecQHead span i,[data-theme="dark"] .lecQHead span i{color:#fbbf24}
.lecQBar{height:6px;border-radius:999px;background:var(--border);overflow:hidden}
.lecQBar span{display:block;height:100%;background:var(--brand);border-radius:999px;transition:width .4s var(--ease)}
.lecQMeta{font-size:12.5px;color:var(--text-muted)}
.lecQMeta b{color:#b91c1c}
.lecQBtns{display:flex;flex-wrap:wrap;gap:8px}
.lecQBtns .btnv2{padding:9px 14px;font-size:13.5px;box-shadow:none}
.lecQBtns .btnv2.sec{background:var(--surface);border:1px solid var(--border);color:var(--text)}
.lecQBtns .btnv2.sec:hover{background:var(--brand-tint);border-color:var(--brand);box-shadow:none}
#content .lecTopicQ .lecQCard{border:1px solid var(--border);border-radius:16px;background:var(--surface);padding:16px 18px 18px}
#content .lecTopicQ > h2{margin-top:8px}
/* el visual d'anatomia (cor) va just sota la barra de xips de l'apartat */
:is(#content,.lsMain) .lecTopVisual{margin:0 0 22px}
@media (max-width:640px){.lecQBtns .btnv2{flex:1 1 calc(50% - 8px);justify-content:center}}
/* «Marcar com estudiat» al final de cada subapartat */
#content .lecDone{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:22px 0 8px;padding-top:14px;border-top:1px dashed var(--border)}
#content .lecDone small{color:var(--muted);font-size:.86rem}
.lecDoneBtn{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;border:1.5px solid var(--border);background:var(--surface);color:var(--text);font:inherit;font-weight:600;font-size:.92rem;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.lecDoneBtn svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.lecDoneBtn:hover{border-color:#0d9488;color:#0d9488}
.lecDoneBtn.on{background:#0d9488;border-color:#0d9488;color:#fff}
.lecDoneBtn.on:hover{background:#0f766e;color:#fff}
[data-theme="dark"] .lecDoneBtn.on{background:#2dd4bf;border-color:#2dd4bf;color:#062b28}[data-theme="dark"] .lecDoneBtn.on:hover{background:#5eead4;color:#062b28}

/* ===== Figures inline (mini-esquemes SVG dins d'un bloc) ===== */
:is(#content,.lsMain) .blk .blkFig{float:right;width:min(260px,46%);margin:2px 0 10px 16px;padding:8px;border:1px solid var(--border);border-radius:12px;background:var(--surface,#fff)}
:is(#content,.lsMain) .blk .blkFig svg{display:block;width:100%;height:auto}
:is(#content,.lsMain) .blk .blkFig figcaption{margin:6px 0 0;font-size:.78rem;line-height:1.3;color:var(--text-muted);text-align:center}
:is(#content,.lsMain) .blk::after{content:"";display:block;clear:both}
.blkFig .ft{font-family:'Source Sans 3',system-ui,sans-serif;font-size:10.5px;font-weight:600;fill:#0f172a;text-anchor:middle}
.blkFig .ft.fs{font-size:9px;font-weight:500;fill:#475569}
.blkFig .ft.fb{font-size:12px;font-weight:700;fill:#7f1d1d}
.blkFig .ft.fm{fill:#64748b}
.blkFig .fA{fill:#e2e8f0}.blkFig .fB{fill:#ccfbf1}.blkFig .fGap{fill:none;stroke:#0d9488;stroke-width:1;stroke-dasharray:3 3}
.blkFig .fC{fill:#fecaca}.blkFig .fStr{stroke:#f87171;stroke-width:1;opacity:.7}.blkFig .fD{fill:#fde68a}
[data-theme="dark"] .blkFig .ft{fill:#e2e8f0}[data-theme="dark"] .blkFig .ft.fs,[data-theme="dark"] .blkFig .ft.fm{fill:#94a3b8}[data-theme="dark"] .blkFig .ft.fb{fill:#fecaca}
[data-theme="dark"] .blkFig .fA{fill:#334155}[data-theme="dark"] .blkFig .fB{fill:#134e4a}[data-theme="dark"] .blkFig .fC{fill:#7f1d1d}[data-theme="dark"] .blkFig .fStr{stroke:#fca5a5}[data-theme="dark"] .blkFig .fD{fill:#78350f}
@media (max-width:640px){:is(#content,.lsMain) .blk .blkFig{float:none;width:100%;max-width:300px;margin:0 auto 12px}}
@media print{.blkFig{break-inside:avoid}}
.blkFig .fEcg{fill:none;stroke:#0d9488;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}
.blkFig .fInt{fill:none;stroke:#94a3b8;stroke-width:1.2;stroke-dasharray:2 2}
[data-theme="dark"] .blkFig .fEcg{stroke:#2dd4bf}
:is(#content,.lsMain) .blk ul.tight{margin:4px 0 0;padding-left:20px}
:is(#content,.lsMain) .blk ul.tight li{margin:4px 0;padding-left:2px}
:is(#content,.lsMain) .blk ul.tight li::marker{color:var(--brand)}
.blkFig .fTub{fill:none;stroke:#0d9488;stroke-width:14;stroke-linecap:round;opacity:.55}.blkFig .fTub.fR{opacity:.9}
.blkFig .fArc{fill:none;stroke:#7f1d1d;stroke-width:1.4}
[data-theme="dark"] .blkFig .fTub{stroke:#2dd4bf}[data-theme="dark"] .blkFig .fArc{stroke:#fecaca}
.blkFig .ft.fl{text-anchor:start}.blkFig .ft.fr{text-anchor:end}
/* esquemes anatòmics: colors genèrics per part i línies auxiliars */
.heartSvg .hp.c-t{fill:rgba(13,148,136,.3)}.heartSvg .hp.c-b{fill:rgba(96,165,250,.32)}.heartSvg .hp.c-r{fill:rgba(248,113,113,.34)}.heartSvg .hp.c-g{fill:rgba(245,158,11,.34)}.heartSvg .hp.c-p{fill:rgba(167,139,250,.34)}.heartSvg .hp.c-n{fill:var(--surface-alt)}
.heartSvg .hv2{fill:none;stroke:var(--text-faint);stroke-width:1.2;stroke-dasharray:3 3;pointer-events:none}
.blkFig .fBr{fill:none;stroke:#0d9488;stroke-width:1.6;stroke-linecap:round}[data-theme="dark"] .blkFig .fBr{stroke:#2dd4bf}
.heartSvg .hbody{fill:var(--surface);stroke:var(--text-faint);stroke-width:1.2;opacity:.9;pointer-events:none}

/* ==========================================================================
   UI v1 (23/09/2026) — guió de l'Adrià: barra lateral més alta, rodetes de progrés,
   tauler d'inici nou (ratxa + compte enrere a dalt, continuar amb detall, pla
   personalitzable, mètode explicat), dues barres per tema, columna dreta útil
   a l'escriptori i tipografia de mòbil proporcionada.
   ========================================================================== */
/* ---- Barra lateral: eines en graella compacta, ajustos en una fila, més espai per al temari ---- */
.sideExamMeta{display:none!important}
.sideToolsGrid{display:grid!important;grid-template-columns:1fr 1fr;gap:4px!important;padding:8px 10px 8px!important}
.sideToolsGrid .sideToolBtn{height:36px!important;padding:0 8px!important;gap:8px!important;border-radius:9px!important}
.sideToolsGrid .sideToolLabel{font-size:12.5px!important;font-weight:600}
.sideToolsGrid .sideToolCount{font-size:11px!important;min-width:0!important}
.sideToolsGrid .sideToolBtn:hover{transform:none!important}
#topicList{min-height:260px!important}
.sideFoot{order:6;margin-top:auto;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px;align-items:center;padding:10px 12px 12px;border-top:1px solid rgba(255,255,255,.08)}
.sideFoot > div{padding:0!important;margin:0!important;border:none!important;order:0!important}
.sideFoot .sideProfileRow{grid-column:1;grid-row:1}
.sideFoot .sideLangRow{grid-column:2;grid-row:1;display:flex;gap:4px}
.sideFoot .sideThemeRow{grid-column:3;grid-row:1}
.sideFoot button{height:34px!important;font-size:12px!important;padding:0 10px!important}
.sideFoot .sideLangRow button{width:40px}
.sideFoot .sideProfileRow button{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sideFoot .sideThemeRow button{width:38px;font-size:0!important;justify-content:center;padding:0!important}
.sideFoot .sideThemeRow button .emIco{font-size:14px}
/* Rodeta de progrés de cada tema (clic = completat) */
.studiedToggle.ringToggle{width:26px!important;height:26px!important;border:none!important;background:transparent!important;box-shadow:none!important;border-radius:50%;padding:0;margin-left:2px}
.ringToggle svg{display:block}
.ringToggle .rtBg{fill:none;stroke:rgba(255,255,255,.14);stroke-width:2.6}
.ringToggle .rtFg{fill:none;stroke:#2dd4bf;stroke-width:2.6;stroke-linecap:round;transition:stroke-dashoffset .5s var(--ease,ease)}
.ringToggle.done .rtBg{fill:rgba(45,212,191,.18)}
.ringToggle .rtChk{fill:none;stroke:#7fe3d3;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ringToggle:hover .rtBg{stroke:rgba(45,212,191,.45)}

/* ---- Tauler d'inici ---- */
.dashHero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:18px;align-items:stretch;padding:26px 28px;border-radius:22px;background:radial-gradient(120% 140% at 0% 0%,rgba(45,212,191,.16),transparent 55%),linear-gradient(135deg,#0b1c26,#070d12);color:#e6f4f1;position:relative;overflow:hidden}
.dashHero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:32px 32px;pointer-events:none;-webkit-mask:linear-gradient(90deg,#000,transparent 80%)}
.dashHero > *{position:relative;z-index:1}
.dashHero .mEyebrow{color:#7fe3d3}
.dashHero h1{font-size:clamp(28px,3.2vw,40px);margin:8px 0 6px;letter-spacing:-.02em;color:#fff}
.dashHero h1 span{background:linear-gradient(90deg,#2dd4bf,#7fe3d3);-webkit-background-clip:text;background-clip:text;color:transparent}
.dashHero p{margin:0;font-size:15.5px;line-height:1.55;color:#b9ccd3;max-width:560px}
.dashHero p b{color:#fff}
.dashHeroBtns{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:18px}
.dashHeroBtns .btnv2.secondary{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.16)}
.dHowLink{background:none;border:none;color:#7fe3d3;font-weight:600;font-size:14px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:6px}
.dashStats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dStat{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:2px;min-width:0}
.dStat.ready{grid-column:1 / -1}
.dReadyBar{display:block;height:7px;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden;margin:6px 0 4px}
.dReadyBar em{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#0d9488,#2dd4bf)}
.dStatIc{color:#2dd4bf;display:inline-flex}
.dStat b{font-family:var(--font-display);font-size:30px;line-height:1.05;color:#fff}
.dStat b small{font-size:15px;color:#b9ccd3}
.dStat > small{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#7fe3d3;font-weight:700}
.dStat em{font-style:normal;font-size:12.5px;color:#9fb4bd;line-height:1.4}
.dStat em a{color:#7fe3d3}
.dStat em input{background:#0b1c26;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:4px 6px;font:inherit}
.dStat.streak b{color:#fbbf24}
.dashRow2{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:14px;align-items:stretch}
.dCont2{display:grid;grid-template-columns:minmax(0,1fr) 128px;gap:18px;align-items:center}
.dContLbl{font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--brand)}
.dContT{display:block;font-family:var(--font-display);font-size:20px;line-height:1.25;margin:4px 0 2px}
.dContSec{display:block;font-size:13.5px;color:var(--text-muted);margin-bottom:6px}
.dBars2{display:flex;flex-direction:column;gap:8px;margin:10px 0 14px}
.dBars2 > div{display:grid;grid-template-columns:78px minmax(0,1fr) auto;gap:10px;align-items:center;font-size:13px}
.dBars2 span{color:var(--text-muted);font-weight:600}
.dBars2 i{display:block;height:8px;border-radius:99px;background:var(--surface-alt);overflow:hidden}
.dBars2 i em{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#0d9488,#2dd4bf)}
.dBars2 i.q em{background:linear-gradient(90deg,#6366f1,#818cf8)}
.dBars2 b{font-size:12.5px;white-space:nowrap}
.dContBtns{display:flex;flex-wrap:wrap;gap:8px}
.dContR{position:relative;display:flex;align-items:center;justify-content:center}
.dContPct{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.dContPct b{font-family:var(--font-display);font-size:26px;line-height:1}.dContPct b small{font-size:13px}
.dContPct span{font-size:11px;color:var(--text-muted);margin-top:3px}
.dWeekFoot{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;margin-top:12px;font-size:13px;color:var(--text-muted)}
.dWeekFoot i{display:block;height:6px;border-radius:99px;background:var(--surface-alt);overflow:hidden}
.dWeekFoot i em{display:block;height:100%;background:#0d9488;border-radius:99px}
/* Pla personalitzable */
.dCardTop .dEditBtn{margin-left:auto;display:inline-flex;align-items:center;gap:5px;background:none;border:1px solid var(--border);border-radius:99px;padding:3px 10px;font-size:12px;font-weight:600;color:var(--text-muted);cursor:pointer}
.dCardTop .dEditBtn svg{width:13px;height:13px}
.dEditBtn .on{display:none}.dPlan.editing .dEditBtn .on{display:inline}.dPlan.editing .dEditBtn .off{display:none}
.dPlan.editing .dEditBtn{background:var(--brand);color:#fff;border-color:var(--brand)}
.dCardTop > span + .dEditBtn{margin-left:10px}
.dPlanEdit{display:none;flex-direction:column;gap:6px;margin-top:10px;padding-top:12px;border-top:1px dashed var(--border)}
.dPlan.editing .dPlanEdit{display:flex}
.dPlanLbl{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--text-muted);margin-top:4px}
.dGoalRow{display:flex;gap:6px;flex-wrap:wrap}
.dGoalRow button{border:1px solid var(--border);background:var(--surface);border-radius:99px;padding:5px 12px;font-weight:600;cursor:pointer;color:var(--text)}
.dGoalRow button.on{background:var(--brand);border-color:var(--brand);color:#fff}
.dPlanOpt{display:flex;align-items:center;gap:8px;font-size:13.5px;cursor:pointer}
.dPlanAdd{display:flex;gap:6px}
.dPlanAdd input{flex:1;min-width:0;border:1px solid var(--border);border-radius:10px;padding:8px 10px;font:inherit;background:var(--surface);color:var(--text)}
.dTask.own{display:flex;align-items:center;gap:8px;cursor:default}
.dTask.own em{font-style:normal;flex:1}
.dTaskChk{background:none;border:none;padding:0;cursor:pointer;display:inline-flex}
.dTask.own .dTaskChk span{margin:0}
.dTaskDel{background:none;border:none;color:var(--text-faint);cursor:pointer;padding:2px;display:inline-flex}
.dTaskDel svg{width:14px;height:14px}
.dPlanHint{display:block;margin-top:8px;font-size:12px;color:var(--text-faint)}
/* Com funciona el mètode */
.dHow{padding:0!important}
.dHow summary{list-style:none;display:flex;align-items:center;gap:10px;padding:16px 20px;cursor:pointer}
.dHow summary::-webkit-details-marker{display:none}
.dHow summary svg{color:var(--brand)}
.dHow summary span{margin-left:auto;font-size:12.5px;color:var(--text-muted)}
.dHowSteps{margin:0;padding:0 20px 18px 20px;list-style:none;counter-reset:hw;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.dHowSteps li{counter-increment:hw;background:var(--surface-alt);border-radius:14px;padding:14px 14px 14px 46px;position:relative;display:flex;flex-direction:column;gap:4px}
.dHowSteps li::before{content:counter(hw);position:absolute;left:14px;top:14px;width:22px;height:22px;border-radius:50%;background:var(--brand);color:#fff;font-weight:700;font-size:12px;display:flex;align-items:center;justify-content:center}
.dHowSteps b{font-size:14px}.dHowSteps span{font-size:13px;line-height:1.5;color:var(--text-muted)}
.dAchLine{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;border:1px dashed var(--border);border-radius:14px;font-size:13.5px;color:var(--text-muted)}
.dAchLine span{display:inline-flex;align-items:center;gap:6px}.dAchLine svg{width:16px;height:16px;color:var(--brand)}
.dAchLine a{color:var(--brand);font-weight:600}
@media (max-width:1100px){.dashHero{grid-template-columns:1fr}.dashRow2{grid-template-columns:1fr}}
@media (max-width:640px){
  .dashHero{padding:20px 18px;border-radius:18px}
  .dashStats{grid-template-columns:1fr 1fr}
  .dStat b{font-size:24px}
  .dCont2{grid-template-columns:1fr}.dContR{display:none}
  .dashHeroBtns .btnv2{flex:1 1 auto;justify-content:center}
}
[data-theme="dark"] .dashHero{background:radial-gradient(120% 140% at 0% 0%,rgba(45,212,191,.14),transparent 55%),linear-gradient(135deg,#0f1b24,#070d12);border:1px solid #1f2e39}

/* ---- Tema: segona barra (preguntes) al cicle d'estudi ---- */
.mSecProg.q{position:relative}
.mSecProg.q i{background:linear-gradient(90deg,#6366f1,#818cf8)!important;opacity:.45}
.mSecProg.q b.acc{position:absolute;left:0;bottom:0;height:6px;border-radius:99px;background:#6366f1;pointer-events:none}

/* ---- Escriptori ample: el contingut s'eixampla i la columna dreta fa de mapa del tema ---- */
@media (min-width:1280px){
  #contentLayout:has(> #sideAside:empty) #mainCol{max-width:1180px}
}

/* ---- Mòbil: tipografia proporcionada ---- */
@media (max-width:640px){
  .tsection > h2{font-size:19px!important;line-height:1.3}
  #content h1{font-size:26px!important;line-height:1.2}
  :is(#content,.lsMain) .blk h4,:is(#content,.lsMain) .blk-tabla h4,:is(#content,.lsMain) .blk-diagrama h4{font-size:15.5px!important}
  :is(#content,.lsMain) .blk p,:is(#content,.lsMain) .blk ul,:is(#content,.lsMain) .blk ol,:is(#content,.lsMain) .blk li{font-size:15px!important;line-height:1.55!important}
  :is(#content,.lsMain) .blk-tabla td,:is(#content,.lsMain) .blk-tabla th{font-size:13px!important}
  .blk-label{font-size:10.5px!important}
  .dashHero h1{font-size:26px}
}
.sideToolsGrid .sideToolCount:not(#srsDueCount){display:none}
.sideToolsGrid .sideToolLabel{white-space:normal!important;line-height:1.15!important;font-size:12px!important}
.sideToolsGrid .sideToolBtn .sideToolIcon{width:16px!important}
/* Columna dreta: si està amagada, no reserva espai; si hi és, fa de suport visual de l'apartat */
#contentLayout:has(> #sideAside[style*="none"]){grid-template-columns:minmax(0,1fr)}
#contentLayout:has(> #sideAside[style*="none"]) #mainCol{max-width:1180px;margin:0 auto;width:100%}
aside.sidenote .asideVis .blkFig{float:none!important;width:100%!important;margin:0 0 10px!important;background:var(--surface)}
aside.sidenote .asideMap ol{list-style:none;margin:0;padding:0;counter-reset:am}
aside.sidenote .asideMap li{counter-increment:am}
aside.sidenote .asideMap a{display:block;padding:7px 8px 7px 30px;border-radius:9px;position:relative;font-size:13px;line-height:1.35;color:var(--text);text-decoration:none}
aside.sidenote .asideMap a::before{content:counter(am);position:absolute;left:6px;top:8px;width:18px;height:18px;border-radius:50%;background:var(--surface-alt);color:var(--text-muted);font-size:10.5px;font-weight:700;display:flex;align-items:center;justify-content:center}
aside.sidenote .asideMap a:hover{background:var(--surface-alt)}
aside.sidenote .asideMap small{display:block;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--brand);font-weight:700}
@media (min-width:1500px){#contentLayout{grid-template-columns:minmax(0,1fr) 340px}}
aside.sidenote .asideToc .tocList{max-height:38vh;overflow-y:auto;padding-right:4px}
/* Radar d'examen: targetes numerades */
:is(#content,.lsMain) .rdRadar .rdIntro{font-size:14px!important;color:var(--text-muted)!important;margin:2px 0 12px}
:is(#content,.lsMain) .rdRadar ol.rdList{list-style:none;margin:0;padding:0;counter-reset:rd;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}
:is(#content,.lsMain) .rdRadar ol.rdList > li{counter-increment:rd;background:var(--surface);border:1px solid rgba(180,83,9,.22);border-radius:14px;padding:12px 14px 12px 44px;position:relative;margin:0}
:is(#content,.lsMain) .rdRadar ol.rdList > li::before{content:counter(rd);position:absolute;left:12px;top:12px;width:22px;height:22px;border-radius:50%;background:#b45309;color:#fff;font-weight:700;font-size:12px;display:flex;align-items:center;justify-content:center}
:is(#content,.lsMain) .rdRadar .rdHead{font-family:var(--font-display);font-weight:600;font-size:15px;margin-bottom:4px}
:is(#content,.lsMain) .rdRadar ol.rdList ul{margin:0;padding-left:16px}
:is(#content,.lsMain) .rdRadar ol.rdList ul li,:is(#content,.lsMain) .rdRadar ol.rdList p{font-size:13.5px!important;line-height:1.45!important;margin:2px 0}
[data-theme="dark"] :is(#content,.lsMain) .rdRadar ol.rdList > li{background:rgba(255,255,255,.03)}
/* ---- Casos clínics ---- */
.csEntry{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:14px;align-items:center;margin:0 0 18px;padding:16px 18px;border-radius:18px;background:linear-gradient(135deg,rgba(13,148,136,.10),rgba(99,102,241,.08));border:1px solid rgba(13,148,136,.25)}
.csEntryIc{width:46px;height:46px;border-radius:14px;background:#0d9488;color:#fff;display:flex;align-items:center;justify-content:center}
.csEntry b{display:block;font-family:var(--font-display);font-size:17px}.csEntry span{font-size:13.5px;color:var(--text-muted)}
@media (max-width:700px){.csEntry{grid-template-columns:auto minmax(0,1fr)}.csEntry .btnv2{grid-column:1 / -1;justify-content:center}}
.csPage .hero h1{display:flex;align-items:center;gap:10px}
.csHeroCard{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:18px 20px;border-radius:18px;background:#0b1c26;color:#e6f4f1;margin:4px 0 18px}
.csHeroCard b{display:block;font-family:var(--font-display);font-size:17px;color:#fff}.csHeroCard span{font-size:13.5px;color:#9fb4bd}
.csFilter{display:flex;gap:6px;overflow-x:auto;padding-bottom:6px;margin-bottom:10px;scrollbar-width:thin}
.csFilter button{flex:none;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);border-radius:99px;padding:6px 12px;font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap}
.csFilter button.on{background:var(--brand);border-color:var(--brand);color:#fff}
.csH2{font-family:var(--font-display);font-size:19px;margin:22px 0 2px;display:flex;align-items:center;gap:8px}
.csH2 em{font-style:normal;font-size:12px;background:var(--surface-alt);border-radius:99px;padding:2px 9px;color:var(--text-muted)}
.csSub{margin:0 0 12px;font-size:13.5px;color:var(--text-muted)}
.csGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-bottom:12px}
.csCard{display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:16px;background:var(--surface);border:1px solid var(--border);transition:border-color .15s,transform .15s}
.csCard:hover{border-color:var(--brand);transform:translateY(-2px)}
.csTop{display:flex;justify-content:space-between;gap:8px;align-items:center}
.csKind{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
.csCard.k-oficial .csKind{color:#b45309}.csCard.k-oficial{border-color:rgba(180,83,9,.28)}
.csCard.k-simulacre .csKind{color:#4f46e5}
.csCard.k-practica .csKind{color:var(--brand)}
.csN{font-size:12px;color:var(--text-faint)}
.csTitle{font-family:var(--font-display);font-size:15.5px;line-height:1.3}
.csTopics{display:flex;flex-wrap:wrap;gap:4px}.csTopics span{font-size:11px;background:var(--surface-alt);border-radius:99px;padding:2px 8px;color:var(--text-muted)}
.csFoot{margin-top:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;align-items:center}
.csFoot i{grid-column:1 / -1;display:block;height:5px;border-radius:99px;background:var(--surface-alt);overflow:hidden}.csFoot i em{display:block;height:100%;background:#0d9488}
.csFoot small{font-size:12px;color:var(--text-muted)}
.csFoot .btnv2{padding:7px 12px;font-size:13px}
.csVignette{background:var(--surface);border:1px solid rgba(13,148,136,.3);border-left:4px solid #0d9488;border-radius:16px;padding:0;margin-bottom:12px}
.csVignette summary{list-style:none;display:flex;align-items:center;gap:8px;padding:12px 16px;cursor:pointer;color:var(--brand)}
.csVignette summary::-webkit-details-marker{display:none}
.csVignette summary b{color:var(--text)}.csVignette summary span{margin-left:auto;font-size:12px;color:var(--text-muted)}
.csVignette p{margin:0;padding:0 16px 14px;font-size:15px;line-height:1.6;color:var(--text)}
.csTopic .csGrid{margin-top:6px}
.csN{white-space:nowrap}
.csKind{min-width:0}
/* ---- Sons d'auscultació ---- */
.sndGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
.sndItem{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:start;padding:12px;border-radius:14px;border:1px solid var(--border);background:var(--surface);transition:border-color .2s,box-shadow .2s}
.sndItem.playing{border-color:#0d9488;box-shadow:0 0 0 3px rgba(13,148,136,.15)}
.sndBtn{width:44px;height:44px;border-radius:50%;border:none;background:#0d9488;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}
.sndBtn .s{display:none}.sndBtn.on .s{display:flex}.sndBtn.on .p{display:none}
.sndItem.synth .sndBtn{background:#6366f1}
.sndTxt b{display:block;font-size:14.5px;margin-bottom:2px}
.sndTxt span{display:block;font-size:13px;line-height:1.45;color:var(--text-muted)}
.sndTxt small{display:block;margin-top:5px;font-size:11px;color:var(--text-faint)}
.sndItem.synth .sndTxt small{color:#6366f1}
.sndIc{color:var(--text-faint)}
.sndItem.playing .sndIc{color:#e11d48;animation:sndBeat .83s ease-in-out infinite}
@keyframes sndBeat{0%,100%{transform:scale(1)}15%{transform:scale(1.25)}30%{transform:scale(1)}45%{transform:scale(1.15)}}
@media (prefers-reduced-motion:reduce){.sndItem.playing .sndIc{animation:none}}
.sndHint{margin:8px 0 0;font-size:12.5px;color:var(--text-muted)}
/* ---- Figures de cardiologia ---- */
.blk-diagrama > .blkFig{display:block;max-width:560px;margin:8px auto 0;padding:8px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.blk-diagrama > .blkFig svg{display:block;width:100%;height:auto}
.blk-diagrama > .blkFig figcaption{margin:6px 0 0;font-size:.78rem;color:var(--text-muted);text-align:center}
.blkFig .fHeart{fill:#fee2e2;stroke:#f87171;stroke-width:1.5}
.blkFig .fSept{stroke:#fca5a5;stroke-width:1.2;stroke-dasharray:3 3;fill:none}
.blkFig .fCond{fill:none;stroke:#fbbf24;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;opacity:.55}
.blkFig .fPulse{fill:none;stroke:#b45309;stroke-width:3.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:18 400;animation:fPulse 1.6s linear infinite}
@keyframes fPulse{from{stroke-dashoffset:18}to{stroke-dashoffset:-400}}
.blkFig .fNode{fill:#f59e0b;stroke:#fff;stroke-width:1.5;animation:fNode 1.6s ease-out infinite}
.blkFig .fNode2{animation-delay:.35s}
@keyframes fNode{0%{r:6}10%{r:9}30%{r:6}}
@media (prefers-reduced-motion:reduce){.blkFig .fPulse,.blkFig .fNode{animation:none}}
.blkFig .gPaper{fill:#fff5f4}.blkFig .gSm{stroke:#f3c9c6;stroke-width:.5}.blkFig .gBig{stroke:#e8a5a0;stroke-width:1.1}
.blkFig .gHiS{fill:rgba(13,148,136,.55)}.blkFig .gHiB{fill:none;stroke:#0d9488;stroke-width:2}
.blkFig .hbody2{fill:var(--surface-alt);stroke:var(--text-faint);stroke-width:1}
.blkFig .fAD{fill:rgba(96,165,250,.35);stroke:#60a5fa;stroke-width:1.2}
.blkFig .fPA{fill:none;stroke:#60a5fa;stroke-width:6;stroke-linecap:round;opacity:.55}
.blkFig .fCat,.blkFig .fCat2{fill:none;stroke:#0d9488;stroke-width:2;stroke-linecap:round}
.blkFig .fCat2{stroke:#6366f1}.blkFig .fCatTip{fill:#0d9488}.blkFig .fBal{fill:#a5b4fc;stroke:#6366f1;stroke-width:1.2}
.blkFig .fZero{stroke:#dc2626;stroke-width:1.2;stroke-dasharray:4 3}
.blkFig .fArrow{fill:none;stroke:var(--text-faint);stroke-width:1.4;stroke-linecap:round}
[data-theme="dark"] .blkFig .fHeart{fill:rgba(248,113,113,.18)}
[data-theme="dark"] .blkFig .gPaper{fill:#241012}[data-theme="dark"] .blkFig .gSm{stroke:#3a1a1c}[data-theme="dark"] .blkFig .gBig{stroke:#5a2a2e}
:is(#content,.lsMain) .blk .blkFig.wide{float:none;width:100%;max-width:560px;margin:12px auto 4px}
.anatLab .heartSvg .hp.c-r{fill:#f87171;stroke:#fff;stroke-width:1.6}
.anatLab .heartSvg .hp.c-r:not(.sel){animation:pulsDot 1.4s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
@keyframes pulsDot{0%,100%{transform:scale(1)}50%{transform:scale(1.25)}}
@media (prefers-reduced-motion:reduce){.anatLab .heartSvg .hp.c-r{animation:none}}
.anatLab .heartSvg .hp.c-r.sel{fill:#0d9488}
/* ---- Vacunes: relaciona ---- */
.vrHead{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;font-size:14px}.vrHead em{font-style:normal;font-weight:700;color:var(--brand)}
.vrCols{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:10px}
.vrCol{display:flex;flex-direction:column;gap:6px}
.vrA,.vrB{text-align:left;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:12px;padding:10px 12px;font:inherit;font-size:13.5px;cursor:pointer;transition:border-color .15s,background .15s}
.vrA{font-weight:700}.vrA.on{border-color:var(--brand);background:rgba(13,148,136,.1)}
.vrA.ok,.vrB.ok{border-color:#16a34a;background:rgba(22,163,74,.1);color:var(--text-muted);cursor:default}
.vrB.ko{border-color:#dc2626;background:rgba(220,38,38,.1);animation:vrShake .3s}
@keyframes vrShake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.vrMsg{margin:10px 0 0;font-size:13px;color:var(--text-muted)}
@media (max-width:560px){.vrCols{grid-template-columns:1fr}}
/* ---- Tauler: roda de dies, sessió de 10 min, exàmens per període ---- */
.dStat.count{flex-direction:row;align-items:center;gap:12px;flex-wrap:wrap}
.dDaysRing{position:relative;width:86px;height:86px;flex:none}
.dDaysRing .mRing circle:first-child{stroke:rgba(255,255,255,.14)}
.dDaysRing > div{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.dDaysRing b{font-size:26px!important}.dDaysRing small{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#7fe3d3;font-weight:700}
.dStat.count > em{flex:1;min-width:120px}
.dS10{margin:12px 0 0;font-size:13px;line-height:1.5;color:#9fb4bd;max-width:560px}.dS10 b{color:#fff}
.dPer{display:flex;gap:4px;background:var(--surface-alt);border-radius:99px;padding:3px;margin:2px 0 12px}
.dPer button{flex:1;border:none;background:none;border-radius:99px;padding:5px 6px;font-size:12px;font-weight:600;color:var(--text-muted);cursor:pointer}
.dPer button.on{background:var(--surface);color:var(--text);box-shadow:0 1px 4px rgba(0,0,0,.08)}
.dExGlob{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.dExBig{font-family:var(--font-display);font-size:34px;font-weight:700;line-height:1}.dExBig small{font-size:16px}
.dExGlob b{display:block;font-size:14px}.dExGlob span{font-size:12.5px;color:var(--text-muted)}
.dExBars{display:flex;align-items:flex-end;gap:4px;height:46px;margin-bottom:10px;padding-bottom:2px;border-bottom:1px solid var(--border)}
.dExBars i{flex:1;max-width:22px;border-radius:4px 4px 0 0;opacity:.85}
.blkFig .fNodeT{fill:#0d9488;stroke:#fff;stroke-width:1.5}
.blkFig .fTraq{fill:#e0f2fe;stroke:#7dd3fc;stroke-width:1}.blkFig .fRing{stroke:#7dd3fc;stroke-width:1}.blkFig .fTir{fill:rgba(244,114,182,.35);stroke:#db2777;stroke-width:1.2}.blkFig .fPara{fill:#f59e0b;stroke:#fff;stroke-width:1.2}.blkFig .fNerv{fill:none;stroke:#7c3aed;stroke-width:1.6;stroke-dasharray:4 2}
[data-theme="dark"] .blkFig .fTraq{fill:rgba(125,211,252,.12)}
/* ---- Targetes d'icones (hàbits i xifres) ---- */
.icoGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin-top:6px}
.icoCard{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;border-radius:14px;border:1px solid var(--border);background:var(--surface)}
.icoI{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:2px}
.icoCard b{font-family:var(--font-display);font-size:17px;line-height:1.15}
.icoCard small{font-size:12.5px;line-height:1.35;color:var(--text-muted)}
.icoCard.t-ok .icoI{background:rgba(13,148,136,.12);color:#0d9488}
.icoCard.t-lim .icoI{background:rgba(245,158,11,.14);color:#b45309}
.icoCard.t-no .icoI{background:rgba(220,38,38,.12);color:#dc2626}
.icoCard.t-info .icoI{background:rgba(99,102,241,.12);color:#4f46e5}
.icoCard.t-no b{color:#dc2626}
.icoPeu{margin:10px 0 0;font-size:12.5px;color:var(--text-muted)}
[data-theme="dark"] .icoCard.t-ok .icoI{color:#2dd4bf}[data-theme="dark"] .icoCard.t-lim .icoI{color:#fbbf24}[data-theme="dark"] .icoCard.t-no .icoI,[data-theme="dark"] .icoCard.t-no b{color:#f87171}
@media (max-width:480px){.icoGrid{grid-template-columns:1fr 1fr}}

/* ---- «D'un cop d'ull»: esquema d'entrada de cada subapartat (app-lectura, grup lead) ---- */
:is(#content,.lsMain) .lecLead{margin:4px 0 18px;padding:14px 14px 6px;border-radius:18px;background:linear-gradient(180deg,rgba(13,148,136,.07),rgba(13,148,136,.02));border:1px solid rgba(13,148,136,.22)}
:is(#content,.lsMain) .lecLead .lecH3 svg{color:#0d9488}
:is(#content,.lsMain) .lecLead .lecStack > *{margin-bottom:10px}
:is(#content,.lsMain) .lecLead .blk,:is(#content,.lsMain) .lecLead .blk-diagrama,:is(#content,.lsMain) .lecLead .blk-tabla{background:var(--surface);border-radius:14px}
:is(#content,.lsMain) .lecLead .blkFig{max-width:760px;margin-left:auto;margin-right:auto}
html[data-theme="dark"] :is(#content,.lsMain) .lecLead{background:linear-gradient(180deg,rgba(45,212,191,.08),rgba(45,212,191,.02));border-color:rgba(45,212,191,.25)}
html[data-theme="dark"] :is(#content,.lsMain) .lecLead .lecH3 svg{color:#2dd4bf}
:is(#content,.lsMain) .lecChip.k-lead b{background:#0d9488;color:#fff}
@media (max-width:600px){:is(#content,.lsMain) .lecLead{padding:10px 8px 2px;border-radius:14px}}

/* ---- ECG · ritmes (tires dibuixades) ---- */
.ecgTabs{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:var(--surface-alt);margin-bottom:10px}
.ecgTabs button{border:0;background:transparent;padding:7px 14px;border-radius:999px;font:600 13px var(--font-display);color:var(--text-muted);cursor:pointer}
.ecgTabs button.on{background:var(--surface);color:var(--text);box-shadow:0 1px 3px rgba(15,23,42,.12)}
.ecgBox{border-radius:14px;overflow:hidden;border:1px solid #f5c2c7;background:#fff7f8}
.ecgPaper{overflow-x:auto}
.ecgStrip{display:block;width:100%;min-width:520px;height:auto}
.ecgStrip .eg1{stroke:#fbd5da;stroke-width:.5}
.ecgStrip .eg5{stroke:#f4a3ad;stroke-width:1}
.ecgStrip .egLine{fill:none;stroke:#0f172a;stroke-width:1.9;stroke-linejoin:round;stroke-linecap:round}
.ecgNote{margin:0;padding:6px 10px;font-size:11.5px;color:#9f1239;background:#ffe4e6}
.ecgInfo{margin:12px 0 4px}
.ecgInfo h5{margin:0 0 8px;font:700 17px var(--font-display);color:var(--text)}
.ecgInfo h5 em{font-style:normal;font-size:12px;color:var(--text-muted);margin-left:6px}
.ecgCols{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ecgCols > div{padding:10px 12px;border-radius:12px;background:var(--surface-alt)}
.ecgCols small{display:block;font:700 11px var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:#0d9488;margin-bottom:3px}
.ecgCols p{margin:0;font-size:14.5px;line-height:1.45}
.ecgChips{display:grid;gap:8px;margin-top:10px}
.ecgGrp small{display:block;font:600 11.5px var(--font-display);color:var(--text-muted);margin-bottom:4px}
.ecgGrp > div{display:flex;flex-wrap:wrap;gap:6px}
.ecgChips button,.ecgOpts button,.ecgNext{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:6px 12px;font:600 12.5px var(--font-display);cursor:pointer}
.ecgChips button.on{background:#0d9488;border-color:#0d9488;color:#fff}
.ecgOpts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ecgOpts button{border-radius:12px;padding:10px 12px;text-align:left}
.ecgOpts button.ok{background:rgba(13,148,136,.12);border-color:#0d9488}
.ecgOpts button.ko{background:rgba(220,38,38,.1);border-color:#dc2626}
.ecgFb{margin:10px 0 8px;font-size:14px}
.ecgNext{background:#0d9488;border-color:#0d9488;color:#fff}
html[data-theme="dark"] .ecgBox{border-color:#7f1d1d}
html[data-theme="dark"] .ecgCols small{color:#2dd4bf}
html[data-theme="dark"] .ecgChips button.on,html[data-theme="dark"] .ecgNext{background:#0f766e;border-color:#0f766e}
@media (max-width:600px){.ecgCols,.ecgOpts{grid-template-columns:1fr}}

:is(#content,.lsMain) .leadNote{margin:12px 0 2px;font-size:var(--rd-fs,15.5px);line-height:1.6;color:var(--text)}


/* ===== Harmonia tipogràfica v1 (23/09/2026): una sola escala de lletra a tot el temari ===== */
.icoGrid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.icoCard > b{font-size:15px;line-height:1.25}
.icoCard small{font-size:13.5px;line-height:1.45}
.icoCard small b,.icoCard small strong{font:inherit;font-weight:700;color:var(--text)}
.icoPeu{font-size:14px;line-height:1.5}
.icoGrid.icoWide{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.icoWide .icoCard{display:grid;grid-template-columns:42px 1fr;column-gap:12px;row-gap:2px;align-items:start}
.icoWide .icoI{grid-row:span 2;margin:0}
:is(#content,.lsMain) .blk td,:is(#content,.lsMain) .blk-tabla td,:is(#content,.lsMain) .blk-tabla-html td,:is(#content,.lsMain) .detailInner td{font-size:14.5px;line-height:1.5}
:is(#content,.lsMain) .blk td b,:is(#content,.lsMain) .blk-tabla td b{font-size:inherit}
@media (max-width:640px){
  :is(#content,.lsMain) .blk td,:is(#content,.lsMain) .blk-tabla td{font-size:13.5px!important}
  :is(#content,.lsMain) .blk-tabla th{font-size:10.5px!important}
  .icoGrid{grid-template-columns:1fr 1fr}
  .icoGrid.icoWide{grid-template-columns:1fr}
  .icoCard > b{font-size:14.5px}
  .icoCard small{font-size:13px}
}
/* Figures al mòbil: mai lletra de menys d'~11 px. Si el dibuix és ample, es desplaça de costat (el peu queda fix) */
@media (max-width:600px){
  :is(#content,.lsMain) .blkFig{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
  :is(#content,.lsMain) .blkFig svg{min-width:calc(var(--vw,0) * 1.2px)}
  :is(#content,.lsMain) .blkFig figcaption{position:sticky;left:0}
  :is(#content,.lsMain) .lecLead .blk,:is(#content,.lsMain) .lecLead .blk-diagrama,:is(#content,.lsMain) .lecLead .blk-tabla{padding-left:10px;padding-right:10px}
  :is(#content,.lsMain) .blk .blkFig{padding:6px}
}
:is(#content,.lsMain) .blkFig.figScroll figcaption::before{content:"↔ ";color:#0d9488;font-weight:700}

/* ===== Simulador de Korotkoff (23/09/2026) ===== */
.korBox{padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
.korTop{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.korBtn{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;border:1px solid #0d9488;background:#0d9488;color:#fff;font:600 14px var(--font-display);cursor:pointer}
.korBtn.on{background:#fff;color:#0d9488}
[data-theme="dark"] .korBtn.on{background:transparent;color:#2dd4bf;border-color:#2dd4bf}
.korRead{display:flex;align-items:baseline;gap:6px}.korVal{font:700 34px/1 var(--font-display);font-variant-numeric:tabular-nums}.korRead small{color:var(--text-muted)}
.korBar{position:relative;height:12px;border-radius:999px;background:var(--surface-alt,#f1f5f9);margin:14px 0 4px;overflow:visible}
.korFill{height:100%;width:0;border-radius:999px;background:rgba(13,148,136,.35);transition:width .6s linear}
.korMk{position:absolute;top:-5px;width:2px;height:22px;background:#0f766e}.korMk.korPad{background:#4f46e5}
.korScale{display:flex;justify-content:space-between;font-size:12px;color:var(--text-muted)}
.korMsg{margin:10px 0 6px;font-size:14px}.korLog{margin:0 0 6px;padding-left:20px;font-size:14px;line-height:1.6}
.korNote{color:var(--text-muted);font-size:12px}
.korScale{position:relative}.korLbl{position:absolute;transform:translateX(-50%);font-weight:700;color:#0f766e}.korLbl.korLblD{color:#4f46e5}[data-theme="dark"] .korLbl{color:#2dd4bf}[data-theme="dark"] .korLbl.korLblD{color:#a5b4fc}

/* ===== Flashcards llegibles en clar i fosc, i alçada segons el text (23/09/2026) ===== */
:is(#content,.lsMain) .lecFcIn{display:grid}
:is(#content,.lsMain) .lecFcFace{position:relative;inset:auto;grid-area:1/1;min-height:150px;background:var(--surface-alt,#f1f5f9);color:var(--text);border-color:var(--border)}
:is(#content,.lsMain) .lecFcFace.b{background:#0f766e;color:#fff;border-color:#0f766e}
:is(#content,.lsMain) .lecFcFace.b span{color:rgba(255,255,255,.75)}
html[data-theme="dark"] :is(#content,.lsMain) .lecFcFace{background:#1e293b;color:#e2e8f0;border-color:#334155}
html[data-theme="dark"] :is(#content,.lsMain) .lecFcFace span{color:#94a3b8}
html[data-theme="dark"] :is(#content,.lsMain) .lecFcFace.b{background:#134e4a;color:#f0fdfa;border-color:#2dd4bf}
html[data-theme="dark"] :is(#content,.lsMain) .lecFcFace.b span{color:#5eead4}
@media (max-width:600px){:is(#content,.lsMain) .lecFcFace{font-size:15px;padding:16px}}
/* resta de targetes girables (lliçó guiada, repàs) i elements amb fons --t3-ink: llegibles en fosc */
:is(#content,.lsMain) .fc-face.back,.lsFcFace.back{background:#0f766e;color:#fff;border-color:#0f766e}
html[data-theme="dark"] :is(#content,.lsMain) .fc-face.back,html[data-theme="dark"] .lsFcFace.back{background:#134e4a;color:#f0fdfa;border-color:#2dd4bf}
html[data-theme="dark"] :is(#content,.lsMain) .fc-face,html[data-theme="dark"] .lsFcFace{color:#e2e8f0}
html[data-theme="dark"] :is(#content,.lsMain) .lecStep,html[data-theme="dark"] #content .lecLegPath b,html[data-theme="dark"] :is(#content,.lsMain) .lecPTabs button.on,html[data-theme="dark"] .crTabs button.on,html[data-theme="dark"] #content .lecFitxaSec h4 span{color:#0b1c26}

/* ===== Mòbil: iOS no pot inflar la lletra pel seu compte + una sola mida de lectura (23/09/2026) ===== */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media (max-width:600px){
  :root{--rd-fs:14.5px}
  :is(#content,.lsMain) .bento :is(p,li),:is(#content,.lsMain) .lecBody :is(p,li){font-size:var(--rd-fs);line-height:1.55}
  :is(#content,.lsMain) .blk h4,:is(#content,.lsMain) .blk-tabla h4,:is(#content,.lsMain) .blk-diagrama h4{font-size:15px;line-height:1.35}
  :is(#content,.lsMain) .tsection > h2{font-size:19px;line-height:1.25}
}

/* ===== Tauler al mòbil menys atapeït (petició de l'Adrià, 23/09/2026) ===== */
@media (max-width:600px){
  .dashHero h1{font-size:26px;line-height:1.15}
  .dashHero .dashHeroTxt > p{font-size:14px;line-height:1.5}
  .dashHeroBtns{gap:8px}
  .dashHeroBtns .btnv2{flex:1 1 calc(50% - 4px);min-width:0;font-size:14px;padding:11px 10px}
  .dashHeroBtns .btnv2:first-child{flex-basis:100%}
  .dHowLink{flex-basis:100%;text-align:center;font-size:13px;padding:2px}
  .dS10{display:none}
  .dashStats{grid-template-columns:1fr 1fr;gap:10px}
  .dStat{padding:12px 14px}
  .dStat.count{grid-column:1 / -1;order:-1;flex-wrap:nowrap}
  .dStat.count em{flex:1;min-width:0;font-size:13px;word-break:normal;overflow-wrap:normal;hyphens:none}
  .dStat.ready{grid-column:auto}
  .dStat em{font-size:12.5px}
}

/* ===== Repàs final unificat: «Els imprescindibles» en targetes numerades (23/09/2026) ===== */
#content .lecImpList{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;counter-reset:imp}
#content .lecImpList li{counter-increment:imp;position:relative;padding:12px 14px 12px 48px;border:1px solid var(--border);border-radius:14px;background:var(--surface);font-size:var(--rd-fs,15px);line-height:1.5}
#content .lecImpList li::before{content:counter(imp);position:absolute;left:12px;top:12px;width:26px;height:26px;border-radius:8px;background:rgba(13,148,136,.12);color:#0f766e;font:700 13px/26px var(--font-display);text-align:center}
html[data-theme="dark"] #content .lecImpList li::before{background:rgba(45,212,191,.16);color:#5eead4}
@media (max-width:600px){#content .lecImpList{grid-template-columns:1fr}#content .lecImpList li{padding:11px 12px 11px 44px}}
#content .lecImpList:not(.all) li.more{display:none}
#content .lecImpMore{margin:10px 0 0;padding:9px 16px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:600 14px var(--font-display);cursor:pointer}

/* Traçats d'arítmies llegibles en fosc (23/09/2026) */
html[data-theme="dark"] .arTrace{stroke:#5eead4}
html[data-theme="dark"] .arTraceChaos{stroke:#f87171}
.arTrace{stroke-width:2.2}

/* ===== Visualitzador d'ECG v2 (23/09/2026) ===== */
.ecgSvg2 .ecgBand{opacity:0;transition:opacity .2s;pointer-events:none}
.ecgSvg2 .ecgBand.active{opacity:.14}
.ecgSvg2 .ecgWaveLbl{font:700 15px var(--font-display);text-anchor:middle;pointer-events:none}
.ecgSvg2 .ecgIntervalLabel{font-size:13px;font-weight:800}
.ecgSvg2 .ecgIntervalBrace{stroke-width:2}
.ecgSvg2 .ecgSeg{stroke-width:3.2}
.ecgSvg2 .ecgSeg.active{stroke-width:5}
.ecgSvg2 .ecgSegNeutral{stroke:#334155}
html[data-theme="dark"] .ecgSvg2 .ecgSegNeutral{stroke:#cbd5e1}
.ecgSvg2 .ecgPulse{fill:#fff;stroke:#0d9488;stroke-width:2.5;filter:drop-shadow(0 0 4px rgba(45,212,191,.9))}
.ecgSvg2 .ecgTraceGhost{opacity:.4}
@media (prefers-reduced-motion:reduce){.ecgSvg2 .ecgPulse{display:none}}
.ecgModule .ecgTraceWrap{flex:2 1 420px}
@media (max-width:640px){
  .ecgModule .ecgTraceWrap{flex:none;width:100%;padding:6px}
  .ecgModule .ecgLegend{flex:none;width:100%;flex-direction:row;flex-wrap:wrap;min-width:0}
  .ecgModule .ecgLegendBtn{flex:1 1 calc(33% - 6px);justify-content:center;padding:8px 6px;font-size:13px}
}
@media (max-width:640px){.ecgSvg2 .ecgWaveLbl{font-size:21px}.ecgSvg2 .ecgIntervalLabel{font-size:17px}.ecgSvg2 .ecgSeg{stroke-width:3.8}}

/* ===== Taules de 3+ columnes → targetes al mòbil (23/09/2026) ===== */
@media (max-width:600px){
  :is(#content,.lsMain,#lesson) table.tblCards,:is(#content,.lsMain,#lesson) table.tblCards tbody{display:block;width:100%;border:0;background:none}
  :is(#content,.lsMain,#lesson) table.tblCards thead{display:none}
  :is(#content,.lsMain,#lesson) table.tblCards tr{display:block;margin:0 0 10px;border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden}
  :is(#content,.lsMain,#lesson) table.tblCards td{display:grid;grid-template-columns:minmax(84px,34%) 1fr;gap:10px;padding:8px 12px!important;border:0;border-top:1px solid var(--border);font-size:14px!important;line-height:1.45;white-space:normal}
  :is(#content,.lsMain,#lesson) table.tblCards td::before{content:attr(data-label);font:700 11px/1.35 var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);padding-top:2px}
  :is(#content,.lsMain,#lesson) table.tblCards td:first-child{display:block;border-top:0;background:rgba(13,148,136,.08);font-weight:700;font-size:14.5px!important}
  :is(#content,.lsMain,#lesson) table.tblCards td:first-child::before{content:none}
  html[data-theme="dark"] :is(#content,.lsMain,#lesson) table.tblCards td:first-child{background:rgba(45,212,191,.1)}
  :is(#content,.lsMain,#lesson) .tablewrap:has(> table.tblCards){overflow:visible;border:0;background:none;padding:0}
  :is(#content,.lsMain,#lesson) table.tblCards td:empty{display:none}
}
@media (max-width:600px){
  :is(#content,.lsMain,#lesson) table.tblCards td{display:block}
  :is(#content,.lsMain,#lesson) table.tblCards td::before{display:block;margin-bottom:3px}
}

/* ===== Fitxes de fàrmacs (DRUGS, consolida/_drugs.js) ===== */
.drgGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:12px;margin-top:8px}
.drgCard{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:16px;background:var(--surface);overflow:hidden}
.drgHead{display:flex;align-items:center;gap:12px;padding:12px 14px;background:rgba(13,148,136,.07);border-bottom:1px solid var(--border)}
.drgI{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:rgba(13,148,136,.14);color:#0d9488}
.drgName{display:flex;flex-direction:column;gap:2px;min-width:0}
.drgName > b{font-family:var(--font-display);font-size:15.5px;line-height:1.25;color:var(--text)}
.drgName > b b{font:inherit}
.drgName small{font-size:13px;line-height:1.35;color:var(--text-muted)}
.drgRows{margin:0;padding:6px 14px 10px}
.drgRow{padding:8px 0;border-bottom:1px dashed var(--border)}
.drgRow:last-child{border-bottom:0}
.drgRow dt{display:flex;align-items:center;gap:6px;margin:0 0 2px;font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}
.drgRi{display:inline-grid;color:#0d9488}
.drgRow dd{margin:0;font-size:14px;line-height:1.5;color:var(--text)}
.drgRow.r-ci .drgRi,.drgRow.r-ae .drgRi{color:#b45309}
.drgAlert{display:flex;gap:8px;align-items:flex-start;margin:auto 0 0;padding:10px 14px;font-size:13.5px;line-height:1.45;background:rgba(220,38,38,.06);border-top:1px solid rgba(220,38,38,.18);color:var(--text)}
.drgAlert svg{flex:none;margin-top:2px;color:#dc2626}
[data-theme="dark"] .drgHead{background:rgba(45,212,191,.07)}
[data-theme="dark"] .drgI{background:rgba(45,212,191,.14);color:#2dd4bf}
[data-theme="dark"] .drgRi{color:#2dd4bf}
[data-theme="dark"] .drgRow.r-ci .drgRi,[data-theme="dark"] .drgRow.r-ae .drgRi{color:#fbbf24}
[data-theme="dark"] .drgAlert{background:rgba(248,113,113,.08);border-top-color:rgba(248,113,113,.25)}
[data-theme="dark"] .drgAlert svg{color:#f87171}
@media (max-width:600px){.drgGrid{grid-template-columns:1fr}.drgRow dd{font-size:13.5px}.drgName > b{font-size:15px}}
:is(#content,.lsMain) .drgBlk p.drgAlert{font-size:13.5px;line-height:1.45;margin:auto 0 0}
@media print{.drgCard{break-inside:avoid}}

/* ===== Repàs cardiologia ===== */
/* Eina «conduccio-ecg»: cor esquemàtic + tira d'ECG sincronitzada */
.cdBox{display:flex;flex-direction:column;gap:12px}
.cdStage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:12px;align-items:center}
.cdHeart,.cdEcg{width:100%;height:auto;display:block}
.cdEcg{border-radius:10px;border:1px solid var(--border)}
.cdCh{fill:var(--surface);stroke:var(--border);stroke-width:1.6;transition:fill .35s}
.cdCh.on{fill:rgba(13,148,136,.22);stroke:#0d9488}
.cdCh.rep{fill:rgba(99,102,241,.16);stroke:#6366f1}
.cdLb{font:600 11px var(--font-display);fill:var(--text-muted);text-anchor:middle}
.cdPath{fill:none;stroke:#94a3b8;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;transition:stroke .3s}
.cdPath.done{stroke:#5eead4}
.cdPath.on{stroke:#0d9488;stroke-width:3.4}
.cdNode{fill:#94a3b8;stroke:var(--surface);stroke-width:2;transition:fill .3s}
.cdNode.on{fill:#0d9488;animation:cdPulse 1s ease-in-out infinite}
.cdDot{fill:#f59e0b;stroke:#fff;stroke-width:1.5}
@keyframes cdPulse{50%{r:10}}
.cdPaper{fill:var(--surface)}
.cdGrid{stroke:rgba(13,148,136,.13);stroke-width:1}
.cdTrace{fill:none;stroke:var(--border);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.cdTrace.drawn{stroke:var(--text)}
.cdTrace.now{stroke:#0d9488;stroke-width:3.2}
.cdEl{font:700 11px var(--font-display);fill:#0d9488;text-anchor:middle;opacity:0;transition:opacity .3s}
.cdEl.on{opacity:1}
.cdSteps{display:flex;flex-wrap:wrap;gap:6px}
.cdSteps button{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:500 13px var(--font-body);cursor:pointer}
.cdSteps button i{font-style:normal;display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--border);font:700 11px var(--font-display)}
.cdSteps button.on{border-color:#0d9488;background:rgba(13,148,136,.1);color:#0f766e}
.cdSteps button.on i{background:#0d9488;color:#fff}
.cdInfo{padding:12px 14px;border-radius:12px;background:rgba(13,148,136,.07);border:1px solid rgba(13,148,136,.25)}
.cdHead{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 10px}
.cdHead b{font:600 15px var(--font-display);color:var(--text)}
.cdF{font:600 13px var(--font-display);color:#0f766e}
:is(#content,.lsMain) .cdInfo p{margin:6px 0 0;font-size:14.5px;line-height:1.5;color:var(--text)}
.cdCtl{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px}
.cdCtl .cdPlay{justify-self:center;white-space:nowrap}
.cdPrev,.cdNext{padding:9px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:600 14px var(--font-display);cursor:pointer}
[data-theme="dark"] .cdCh.on{fill:rgba(45,212,191,.2);stroke:#2dd4bf}
[data-theme="dark"] .cdCh.rep{fill:rgba(129,140,248,.18);stroke:#818cf8}
[data-theme="dark"] .cdPath{stroke:#64748b}
[data-theme="dark"] .cdPath.done{stroke:#0f766e}
[data-theme="dark"] .cdPath.on{stroke:#2dd4bf}
[data-theme="dark"] .cdNode{fill:#64748b}
[data-theme="dark"] .cdNode.on{fill:#2dd4bf}
[data-theme="dark"] .cdDot{stroke:#0f172a}
[data-theme="dark"] .cdGrid{stroke:rgba(45,212,191,.12)}
[data-theme="dark"] .cdTrace.now{stroke:#2dd4bf}
[data-theme="dark"] .cdEl{fill:#2dd4bf}
[data-theme="dark"] .cdSteps button.on{border-color:#2dd4bf;background:rgba(45,212,191,.12);color:#5eead4}
[data-theme="dark"] .cdSteps button.on i{background:#2dd4bf;color:#0f172a}
[data-theme="dark"] .cdInfo{background:rgba(45,212,191,.07);border-color:rgba(45,212,191,.22)}
[data-theme="dark"] .cdF{color:#5eead4}
@media (max-width:600px){.cdStage{grid-template-columns:1fr}.cdHeart{max-width:300px;margin:0 auto}.cdSteps button{font-size:12.5px;padding:5px 9px}.cdCtl{gap:6px}.cdCtl .cdPlay,.cdPrev,.cdNext{font-size:13px;padding:8px 11px}}
@media (prefers-reduced-motion:reduce){.cdNode.on{animation:none}}
/* Eina «pols-tipus»: ona de pols en moviment */
.plBox{display:flex;flex-direction:column;gap:10px}
.plBtns{display:flex;flex-wrap:wrap;gap:6px}
.plBtns button{padding:6px 11px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:500 13px var(--font-body);cursor:pointer}
.plBtns button.on{border-color:#0d9488;background:#0d9488;color:#fff}
.plStrip{border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden;height:120px}
.plSvg{width:100%;height:100%;display:block}
.plWave{fill:none;stroke:#0d9488;stroke-width:2.4;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
.plMove.run{animation:plScroll 4.5s linear infinite}
@keyframes plScroll{to{transform:translateX(calc(-1 * var(--plW)))}}
.plInsp{fill:rgba(99,102,241,.12)}
.plTag{font:600 8px var(--font-display);fill:#6366f1;text-anchor:middle}
.plTick{stroke:var(--text-muted);stroke-width:2;vector-effect:non-scaling-stroke}
.plInfo b{font:600 15px var(--font-display);color:var(--text)}
:is(#content,.lsMain) .plInfo p{margin:4px 0 0;font-size:14.5px;line-height:1.5}
.plCnt{display:block;margin-top:4px;font-size:13px;color:var(--text-muted)}
[data-theme="dark"] .plBtns button.on{border-color:#2dd4bf;background:#2dd4bf;color:#0f172a}
[data-theme="dark"] .plWave{stroke:#2dd4bf}
[data-theme="dark"] .plInsp{fill:rgba(129,140,248,.16)}
[data-theme="dark"] .plTag{fill:#a5b4fc}
@media (max-width:600px){.plStrip{height:104px}.plBtns button{font-size:12.5px;padding:5px 9px}}
@media (prefers-reduced-motion:reduce){.plMove.run{animation:none}}

/* ===== Taules de 2 columnes al mòbil: amplades fixes i tall de paraules llargues ===== */
@media (max-width:600px){
  :is(#content,.lsMain,#lesson) table.tbl2{table-layout:fixed;width:100%;min-width:0}
  :is(#content,.lsMain,#lesson) table.tbl2 th,:is(#content,.lsMain,#lesson) table.tbl2 td{overflow-wrap:anywhere;hyphens:auto;white-space:normal}
  :is(#content,.lsMain,#lesson) table.tbl2 th:first-child,:is(#content,.lsMain,#lesson) table.tbl2 td:first-child{width:38%}
  :is(#content,.lsMain,#lesson) .tablewrap:has(> table.tbl2){overflow-x:visible}
}

/* ===== Repàs respiratori ===== */
/* Figures estretes (viewBox ≤ 270): no es desplacen de costat al mòbil */
.blkFig.narrow{float:none;width:100%}
@media (max-width:600px){.blkFig.narrow svg{min-width:0!important}}
/* Eina «patrons-resp» (reutilitza .pl* de «pols-tipus») */
.rsStrip{position:relative;height:128px}
.rsAp{fill:rgba(100,116,139,.12)}
.rsAx{position:absolute;left:8px;top:6px;font:600 11px var(--font-display);color:var(--text-muted);letter-spacing:.02em}
.rsAx::before{content:"";display:inline-block;width:0;height:0;margin-right:4px;border:4px solid transparent;border-bottom:6px solid currentColor;vertical-align:1px}
.rsScale{position:absolute;right:8px;bottom:5px;display:flex;align-items:center;gap:5px;width:40%;justify-content:flex-end;font:600 11px var(--font-display);color:var(--text-muted)}
.rsScale i{display:block;height:2px;background:currentColor;border-radius:2px;min-width:12px}
.rsInfo dl{margin:6px 0 0;display:grid;grid-template-columns:auto 1fr;gap:4px 10px}
.rsInfo dt{font:600 12px var(--font-display);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;padding-top:2px}
.rsInfo dd{margin:0;font-size:14.5px;line-height:1.45;color:var(--text)}
[data-theme="dark"] .rsAp{fill:rgba(148,163,184,.12)}
/* Eina «inhaladors»: pas a pas per dispositiu */
.ihBox{display:flex;flex-direction:column;gap:12px}
.ihStage{display:grid;grid-template-columns:120px minmax(0,1fr);gap:14px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
.ihImg{color:var(--text-muted)}
.ihImg svg{width:100%;height:auto;display:block}
.ihImg .ihAcc{stroke:#0d9488}
.ihNum{font:600 12px var(--font-display);color:#0f766e;text-transform:uppercase;letter-spacing:.05em}
:is(#content,.lsMain) p.ihTxt,.ihTxt{margin:4px 0 8px;font-size:15px;line-height:1.45;color:var(--text);min-height:3em}
.ihFlow{display:none;align-items:center;gap:8px}
.ihFlow[class*="f-"]{display:flex}
.ihFlowL{font:600 12px var(--font-display);color:var(--text-muted);white-space:nowrap}
.ihBar{flex:1;height:8px;border-radius:99px;background:rgba(13,148,136,.12);overflow:hidden}
.ihBar i{display:block;height:100%;width:0;background:#0d9488;border-radius:99px}
.f-l .ihBar i{animation:ihFill 4s cubic-bezier(.3,.1,.4,1) forwards}
.f-e .ihBar i{animation:ihFill .9s ease-out forwards}
.f-v .ihBar i{animation:ihTidal 2.4s ease-in-out infinite}
.f-h .ihBar i{width:100%;opacity:.45}
@keyframes ihFill{from{width:0}to{width:100%}}
@keyframes ihTidal{0%,100%{width:10%}50%{width:55%}}
.ihDots{display:flex;gap:6px;justify-content:center;flex-wrap:wrap}
.ihDots button{width:26px;height:8px;border-radius:99px;border:0;background:var(--border);cursor:pointer;padding:0}
.ihDots button.done{background:rgba(13,148,136,.45)}
.ihDots button.on{background:#0d9488}
:is(#content,.lsMain) p.ihKey,.ihKey{margin:0;padding:10px 12px;border-radius:12px;background:rgba(13,148,136,.07);border:1px solid rgba(13,148,136,.22);font-size:14px;line-height:1.5;color:var(--text)}
[data-theme="dark"] .ihImg .ihAcc{stroke:#2dd4bf}
[data-theme="dark"] .ihNum{color:#5eead4}
[data-theme="dark"] .ihBar{background:rgba(45,212,191,.14)}
[data-theme="dark"] .ihBar i,[data-theme="dark"] .ihDots button.on{background:#2dd4bf}
[data-theme="dark"] .ihDots button.done{background:rgba(45,212,191,.4)}
[data-theme="dark"] .ihKey{background:rgba(45,212,191,.07);border-color:rgba(45,212,191,.22)}
@media (max-width:600px){.ihStage{grid-template-columns:84px minmax(0,1fr);gap:10px;padding:10px}.ihTxt{font-size:14.5px}}
@media (prefers-reduced-motion:reduce){.ihBar i{animation:none!important;width:100%}}
/* Eina «drenatge-sim»: sistema de 3 cambres en directe */
.drBox0{display:flex;flex-direction:column;gap:10px}
.drTog{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13.5px;color:var(--text)}
.drTog label{display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.drTog input{accent-color:#0d9488;width:16px;height:16px}
.drStage{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:6px}
.drSvg{display:block;width:100%;max-width:460px;height:auto;margin:0 auto}
.drBox{fill:rgba(148,163,184,.08);stroke:#64748b;stroke-width:1.6}
.drWall{stroke:#64748b;stroke-width:1.6}
.drBlood{fill:#fca5a5;opacity:.8}
.drWater{fill:#bae6fd;opacity:.85}
.drGlass{stroke:#0369a1;stroke-width:1.4;fill:none}
.drCol{fill:#38bdf8}
.drMark{stroke:#94a3b8;stroke-width:1;fill:none}
.drTubeP{fill:none;stroke:#dc2626;stroke-width:4;stroke-linecap:round}
.drTubeA{fill:none;stroke:#475569;stroke-width:4;stroke-linecap:round}
.drBub{fill:none;stroke:#0369a1;stroke-width:1.2}
.drLb{font:600 10px var(--font-body,system-ui);fill:var(--text-muted)}
.drL{text-anchor:start}.drR{text-anchor:end}
.drN{text-anchor:middle;font-size:12px;font-weight:700;fill:#0f766e}
.drPh{text-anchor:middle;font-size:10px;fill:#0369a1}
:is(#content,.lsMain) p.drMsg,.drMsg{margin:0;padding:10px 12px;border-radius:12px;background:rgba(13,148,136,.07);border:1px solid rgba(13,148,136,.22);font-size:14.5px;line-height:1.5;color:var(--text);min-height:3.2em}
[data-theme="dark"] .drBox{fill:rgba(148,163,184,.06);stroke:#94a3b8}
[data-theme="dark"] .drWall{stroke:#94a3b8}
[data-theme="dark"] .drBlood{fill:#b91c1c;opacity:.7}
[data-theme="dark"] .drWater{fill:#0c4a6e;opacity:.9}
[data-theme="dark"] .drGlass{stroke:#7dd3fc}
[data-theme="dark"] .drCol{fill:#0ea5e9}
[data-theme="dark"] .drBub{stroke:#e0f2fe}
[data-theme="dark"] .drTubeA{stroke:#94a3b8}
[data-theme="dark"] .drN{fill:#5eead4}
[data-theme="dark"] .drPh{fill:#7dd3fc}
[data-theme="dark"] .drMsg{background:rgba(45,212,191,.07);border-color:rgba(45,212,191,.22)}
[data-theme="dark"] .drTog input{accent-color:#2dd4bf}
@media (max-width:600px){.drTog{font-size:13px}}

/* ===== Contingut plegat dins una eina (MORE): «Veure-ho tot en taula» ===== */
.edMore{margin-top:10px;border-top:1px dashed var(--border);padding-top:8px}
.edMore > summary{display:inline-flex;align-items:center;gap:6px;cursor:pointer;list-style:none;font:600 13.5px/1.3 var(--font-display);color:#0d9488;padding:6px 10px;border-radius:10px}
.edMore > summary::-webkit-details-marker{display:none}
.edMore > summary::before{content:"";width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .2s}
.edMore[open] > summary::before{transform:rotate(45deg)}
.edMore > summary:hover{background:rgba(13,148,136,.08)}
.edMoreIn{margin-top:8px}
[data-theme="dark"] .edMore > summary{color:#2dd4bf}
@media print{.edMore{display:block}.edMore > .edMoreIn{display:block}}
/* ===== Repàs endocrino-dm ===== */
/* Figures d'endocrí (consolida/_figs-endo.js): farciments, traços i textos amb mode fosc */
.blkFig .eFS{fill:#f1f5f9}.blkFig .eFT{fill:#ccfbf1}.blkFig .eFI{fill:#e0e7ff}.blkFig .eFI2{fill:#eef2ff}.blkFig .eFSk{fill:#fde7d9}
.blkFig .eLS{stroke:#64748b;stroke-width:1.4}.blkFig .eLT{stroke:#0d9488}.blkFig .eLI{stroke:#6366f1}.blkFig .eLX{stroke:#94a3b8}
.blkFig .eMk{fill:#0d9488}
.blkFig .ft.eXT{fill:#0f766e}.blkFig .ft.eXI{fill:#4338ca}.blkFig .ft.eXI2{fill:#6366f1}.blkFig .ft.eOnDark{fill:#fff}
.blkFig .eGlu{fill:#f59e0b;stroke:#fff;stroke-width:1}.blkFig .eIns{fill:#0d9488;stroke:#fff;stroke-width:1.2}
.blkFig .eUriD{fill:#fef9c3}.blkFig .eUriC{fill:#f59e0b}
.blkFig .eSeg0{fill:#e2e8f0}.blkFig .eSeg1{fill:#c7d2fe}.blkFig .eSeg2{fill:#4f46e5}
.blkFig .eDot{fill:#f59e0b;stroke:#fff;stroke-width:1.5}
[data-theme="dark"] .blkFig .eFS{fill:#1e293b}[data-theme="dark"] .blkFig .eFT{fill:#134e4a}[data-theme="dark"] .blkFig .eFI{fill:#312e81}[data-theme="dark"] .blkFig .eFI2{fill:#1e1b4b}[data-theme="dark"] .blkFig .eFSk{fill:#431407}
[data-theme="dark"] .blkFig .eLS{stroke:#94a3b8}[data-theme="dark"] .blkFig .eLT{stroke:#2dd4bf}[data-theme="dark"] .blkFig .eLI{stroke:#a5b4fc}[data-theme="dark"] .blkFig .eLX{stroke:#64748b}
[data-theme="dark"] .blkFig .eMk{fill:#2dd4bf}
[data-theme="dark"] .blkFig .ft.eXT{fill:#5eead4}[data-theme="dark"] .blkFig .ft.eXI{fill:#c7d2fe}[data-theme="dark"] .blkFig .ft.eXI2{fill:#a5b4fc}
[data-theme="dark"] .blkFig .eGlu,[data-theme="dark"] .blkFig .eIns,[data-theme="dark"] .blkFig .eDot{stroke:#0f172a}
[data-theme="dark"] .blkFig .eUriD{fill:#713f12;opacity:.55}[data-theme="dark"] .blkFig .eUriC{fill:#d97706}
[data-theme="dark"] .blkFig .eSeg0{fill:#334155}[data-theme="dark"] .blkFig .eSeg1{fill:#3730a3}[data-theme="dark"] .blkFig .eSeg2{fill:#6366f1}
@media (prefers-reduced-motion:reduce){.blkFig .eDot{display:none}}
svg.tick{vertical-align:-3px;color:#0d9488}[data-theme="dark"] svg.tick{color:#2dd4bf}
/* Eina «eix-hormonal»: eix hipotàlem-hipòfisi-glàndula en directe */
.ehBox,.ijBox{display:flex;flex-direction:column;gap:12px}
.ehAx{display:inline-flex;align-self:flex-start;padding:3px;border-radius:999px;border:1px solid var(--border);background:var(--surface)}
.ehAx button{padding:6px 14px;border:0;border-radius:999px;background:transparent;color:var(--text-muted);font:600 13.5px var(--font-display);cursor:pointer}
.ehAx button.on{background:#0d9488;color:#fff}
.ehStage{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:6px}
.ehSvg{display:block;width:100%;max-width:360px;height:auto;margin:0 auto}
.ehOrg{fill:var(--surface);stroke:#94a3b8;stroke-width:1.6;transition:fill .3s,stroke .3s}
.ehOrg.o0{fill:rgba(14,165,233,.1);stroke:#0284c7}.ehOrg.o1{fill:rgba(99,102,241,.1);stroke:#6366f1}.ehOrg.o2{fill:rgba(13,148,136,.12);stroke:#0d9488}
.ehOrg.bad{stroke:#d97706;stroke-width:2.6;stroke-dasharray:6 3}
.ehBad{fill:#d97706}.ehBadT{font:700 9.5px var(--font-body);fill:#fff;text-anchor:middle}
.ehOn{font:600 12.5px var(--font-display);fill:var(--text);text-anchor:middle}
.ehOn2{font:600 11px var(--font-display);fill:var(--text-muted);text-anchor:middle}
.ehAr{stroke:#0d9488;fill:none;stroke-linecap:round;transition:stroke-width .3s}.ehMk{fill:#0d9488}
.ehHt{font:600 11px var(--font-body);fill:var(--text)}
.ehLv{font-weight:700}.ehLv.la{fill:#0d9488}.ehLv.lb{fill:#6366f1}.ehLv.ln{fill:var(--text-muted);font-weight:500}
.ehDot{fill:#f59e0b;stroke:#fff;stroke-width:1}
.ehFb{fill:none;stroke:#6366f1;stroke-dasharray:5 3;transition:stroke-width .3s,opacity .3s}.ehFb.weak{opacity:.35}.ehFk{fill:#6366f1}
.ehFt{font:600 10px var(--font-body);fill:#6366f1;text-anchor:middle}
.ehSc{display:flex;flex-wrap:wrap;gap:6px}
.ehSc button,.ijZBtns button,.ijReset{padding:7px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:500 13.5px var(--font-body);cursor:pointer}
.ehSc button.on,.ijZBtns button.on{border-color:#0d9488;background:rgba(13,148,136,.1);color:#0f766e;font-weight:600}
.ehInfo,.ijZInfo,.ijStepTxt{padding:12px 14px;border-radius:12px;background:rgba(13,148,136,.07);border:1px solid rgba(13,148,136,.25)}
.ehHead{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 10px}
.ehHead b{font:700 15px var(--font-display);color:var(--text)}
.ehLab{font:700 13.5px var(--font-display);color:#0f766e;padding:2px 10px;border-radius:999px;background:rgba(13,148,136,.12)}
:is(#content,.lsMain) .ehInfo p,.ehInfo p{margin:6px 0 0;font-size:14.5px;line-height:1.5;color:var(--text)}
[data-theme="dark"] .ehAx button.on{background:#14b8a6;color:#04201d}
[data-theme="dark"] .ehOrg.o0{fill:rgba(56,189,248,.12);stroke:#38bdf8}[data-theme="dark"] .ehOrg.o1{fill:rgba(165,180,252,.12);stroke:#a5b4fc}[data-theme="dark"] .ehOrg.o2{fill:rgba(45,212,191,.12);stroke:#2dd4bf}
[data-theme="dark"] .ehOrg.bad{stroke:#fbbf24}[data-theme="dark"] .ehBad{fill:#b45309}
[data-theme="dark"] .ehAr{stroke:#2dd4bf}[data-theme="dark"] .ehMk{fill:#2dd4bf}
[data-theme="dark"] .ehLv.la{fill:#5eead4}[data-theme="dark"] .ehLv.lb{fill:#a5b4fc}
[data-theme="dark"] .ehFb{stroke:#a5b4fc}[data-theme="dark"] .ehFk,[data-theme="dark"] .ehFt{fill:#a5b4fc}
[data-theme="dark"] .ehDot{stroke:#0f172a}
[data-theme="dark"] .ehSc button.on,[data-theme="dark"] .ijZBtns button.on{border-color:#2dd4bf;background:rgba(45,212,191,.12);color:#5eead4}
[data-theme="dark"] .ehInfo,[data-theme="dark"] .ijZInfo,[data-theme="dark"] .ijStepTxt{background:rgba(45,212,191,.07);border-color:rgba(45,212,191,.22)}
[data-theme="dark"] .ehLab{color:#5eead4;background:rgba(45,212,191,.12)}
/* Eina «insulina-injeccio»: zones, rotació i tècnica */
.ijZoneWrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:center}
.ijSvg,.ijRot,.ijTec{display:block;width:100%;height:auto}
.ijSvg{max-width:300px;margin:0 auto}
.ijRot,.ijTec{max-width:420px;margin:0 auto;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
.ijBody{fill:rgba(148,163,184,.14);stroke:#94a3b8;stroke-width:1.4;stroke-linejoin:round}
.ijLine{stroke:#94a3b8;stroke-width:1.2}.ijNav{fill:#94a3b8}
.ijZone{cursor:pointer}.ijZone > *{fill:rgba(13,148,136,.22);stroke:#0d9488;stroke-width:1.4;transition:fill .25s}
.ijZone:hover > *{fill:rgba(13,148,136,.38)}.ijZone.on > *{fill:#0d9488}
.ijCap{font:600 10.5px var(--font-body);fill:var(--text-muted);text-anchor:middle}.ijCap.ijL{text-anchor:start}.ijCap.ijR{text-anchor:end}
.ijZName{display:block;font:700 15px var(--font-display);color:var(--text)}
.ijGauge{margin:8px 0 4px}.ijGauge > span{font:600 11.5px var(--font-display);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}
.ijTrack{position:relative;height:8px;margin:6px 6px 2px;border-radius:99px;background:linear-gradient(90deg,#0d9488,rgba(13,148,136,.15))}
.ijMark{position:absolute;top:50%;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:var(--surface);border:3px solid #0f766e;transition:left .35s}
.ijEnds{display:flex;justify-content:space-between;font-size:12px;color:var(--text-muted)}
:is(#content,.lsMain) p.ijZTxt,.ijZTxt,:is(#content,.lsMain) .ijStepTxt p,.ijStepTxt p{margin:6px 0 0;font-size:14.5px;line-height:1.5;color:var(--text)}
.ijZBtns{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.ijMode{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px;color:var(--text)}
.ijMode label{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.ijMode input{accent-color:#0d9488;width:16px;height:16px}
.ijSkin{fill:rgba(251,207,165,.28);stroke:#d6a57c;stroke-width:1.2}
.ijQuad{stroke:#d6a57c;stroke-width:1;stroke-dasharray:3 4}
.ijPt{fill:#0f766e;stroke:#fff;stroke-width:1}.ijPt.last{fill:#f59e0b}
.ijRing{fill:none;stroke:#0d9488;stroke-width:1.2;stroke-dasharray:3 3}
.ijBump{fill:rgba(234,179,8,.35);stroke:#ca8a04;stroke-width:1.2}
.ijScale{stroke:var(--text-muted);stroke-width:2;stroke-linecap:round}
.ijRow{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}
.ijCount{font:600 13px var(--font-display);color:var(--text-muted)}
:is(#content,.lsMain) p.ijMsg,.ijMsg{margin:0;padding:10px 12px;border-radius:12px;background:rgba(13,148,136,.07);border:1px solid rgba(13,148,136,.22);min-height:3.2em;font-size:14.5px;line-height:1.5;color:var(--text)}
.ijDerm{fill:#f5c9a8}.ijSub{fill:#fdecc8}.ijMus{fill:#f3b4b4}
.ijNd{stroke:#475569;stroke-width:2;stroke-linecap:round}.ijPen{stroke:#0d9488;stroke-width:9;stroke-linecap:round}
.ijAng{font:700 14px var(--font-display);fill:#0f766e;text-anchor:end}
.ijSteps{display:flex;flex-wrap:wrap;gap:6px}
.ijSteps button{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:500 13.5px var(--font-body);cursor:pointer}
.ijSteps button i{font-style:normal;display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--border);font:700 11px var(--font-display)}
.ijSteps button.on{border-color:#0d9488;background:rgba(13,148,136,.1);color:#0f766e}.ijSteps button.on i{background:#0d9488;color:#fff}
.ijWait{margin-top:8px}.ijWaitBar{height:8px;border-radius:99px;background:rgba(13,148,136,.14);overflow:hidden}.ijWaitBar i{display:block;height:100%;width:0;background:#0d9488;border-radius:99px}
[data-theme="dark"] .ijBody{fill:rgba(148,163,184,.1);stroke:#64748b}
[data-theme="dark"] .ijZone > *{fill:rgba(45,212,191,.2);stroke:#2dd4bf}[data-theme="dark"] .ijZone.on > *{fill:#14b8a6}
[data-theme="dark"] .ijMark{border-color:#5eead4}
[data-theme="dark"] .ijSkin{fill:rgba(251,207,165,.1);stroke:#a16207}[data-theme="dark"] .ijQuad{stroke:#a16207}
[data-theme="dark"] .ijPt{fill:#5eead4;stroke:#0f172a}[data-theme="dark"] .ijPt.last{fill:#fbbf24}
[data-theme="dark"] .ijRing{stroke:#2dd4bf}[data-theme="dark"] .ijBump{fill:rgba(234,179,8,.25);stroke:#facc15}
[data-theme="dark"] .ijMsg{background:rgba(45,212,191,.07);border-color:rgba(45,212,191,.22)}
[data-theme="dark"] .ijDerm{fill:#7c4a2d}[data-theme="dark"] .ijSub{fill:#5c4a1e}[data-theme="dark"] .ijMus{fill:#6b2c2c}
[data-theme="dark"] .ijNd{stroke:#cbd5e1}[data-theme="dark"] .ijPen{stroke:#2dd4bf}[data-theme="dark"] .ijAng{fill:#5eead4}
[data-theme="dark"] .ijSteps button.on{border-color:#2dd4bf;background:rgba(45,212,191,.12);color:#5eead4}[data-theme="dark"] .ijSteps button.on i{background:#2dd4bf;color:#04201d}
[data-theme="dark"] .ijWaitBar i{background:#2dd4bf}[data-theme="dark"] .ijMode input{accent-color:#2dd4bf}
@media (max-width:600px){.ijZoneWrap{grid-template-columns:1fr}.ehSc button{font-size:13px;padding:6px 10px}}
@media (prefers-reduced-motion:reduce){.ehOrg,.ehAr,.ijMark{transition:none}}
/* Text de temari sota un esquema-eina («D'un cop d'ull»): mateixa lletra que la resta de notes, no la del peu de l'eina */
:is(#content,.lsMain) .edTool > p.leadNote{margin:12px 0 2px;font-size:var(--rd-fs,15.5px);line-height:1.6;color:var(--text)}
/* ===== Repàs digestiu ===== */
/* Figures de digestiu (consolida/_figs-dig.js): traços, farciments i textos amb mode fosc */
.blkFig .dgOrg{fill:#ccfbf1;stroke:#0d9488;stroke-width:1.6}
.blkFig .dgEso{fill:none;stroke:#94a3b8;stroke-width:11;stroke-linecap:round;opacity:.7}
.blkFig .dgDuo{fill:none;stroke:#f59e0b;stroke-width:11;stroke-linecap:round;opacity:.6}
.blkFig .dgPil{stroke:#b45309;stroke-width:3}
.blkFig .dgRug{fill:none;stroke:#5eead4;stroke-width:1.2;stroke-dasharray:4 3}
.blkFig .dgDuct{fill:none;stroke:#16a34a;stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round;opacity:.85}
.blkFig .dgWir{fill:none;stroke:#b45309;stroke-width:2.2;stroke-linecap:round}
.blkFig .dgHart{fill:none;stroke:#0f766e;stroke-width:1.6}
.blkFig .dgPap{fill:#dc2626}
.blkFig .dgSpl{fill:#e9d5ff;stroke:#a78bfa;stroke-width:1.2}
.blkFig .dgBand{fill:#f1f5f9;stroke:#cbd5e1}
.blkFig .dgCol{fill:none;stroke-width:14;stroke-linecap:round;stroke-linejoin:round}
.blkFig .dgC0{stroke:#ccfbf1}.blkFig .dgC1{stroke:#99f6e4}.blkFig .dgC2{stroke:#5eead4}.blkFig .dgC3{stroke:#14b8a6}.blkFig .dgC4{stroke:#0f766e}
.blkFig .dgGut{fill:none;stroke:#cbd5e1;stroke-width:12;stroke-linecap:round;stroke-linejoin:round}
.blkFig .dgGut.dgThin{stroke-width:7}
.blkFig .dgInf{fill:none;stroke:#ef4444;stroke-width:6;stroke-linecap:round;stroke-linejoin:round;opacity:.85}
.blkFig .dgL1{fill:#fecaca}.blkFig .dgL2{fill:#fde68a}.blkFig .dgL3{fill:#e2e8f0}.blkFig .dgL4{fill:#f1f5f9}
.blkFig .dgUlc{fill:none;stroke:#b91c1c;stroke-width:2.2;stroke-linejoin:round}
.blkFig .dgDia{fill:none;stroke:#b45309;stroke-width:5;stroke-linecap:round;opacity:.75}
.blkFig .dgTreitz{fill:none;stroke:#6366f1;stroke-width:1.6;stroke-dasharray:6 4}
.blkFig .ft.dgTz{fill:#4f46e5;font-weight:700}
.blkFig .dgBrA,.blkFig .dgBrB{fill:none;stroke-width:1.8;stroke-linecap:round}
.blkFig .dgBrA{stroke:#0d9488}.blkFig .dgBrB{stroke:#6366f1}
.blkFig .ft.dgTa{fill:#0f766e;font-weight:700;font-size:10px}.blkFig .ft.dgTb{fill:#4338ca;font-weight:700;font-size:10px}
.blkFig .ft.dgTt{font-size:10.5px;font-weight:700;fill:#0f172a}
.blkFig .dgWall{fill:none;stroke:#fda4af;stroke-width:4;stroke-linecap:round}
.blkFig .dgSphI{fill:none;stroke:#0d9488;stroke-width:5;stroke-linecap:round;opacity:.55}
.blkFig .dgSphE{fill:none;stroke:#6366f1;stroke-width:7;stroke-linecap:round;opacity:.35}
.blkFig .dgPect{fill:none;stroke:#475569;stroke-width:1.2;stroke-dasharray:5 3}
.blkFig .dgHem{fill:#c4b5fd;stroke:#7c3aed;stroke-width:1.2}
.blkFig .dgFis{fill:none;stroke:#b91c1c;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.blkFig .dgAbs{fill:#fde68a;stroke:#d97706;stroke-width:1.4}
.blkFig .dgFist{fill:none;stroke:#d97706;stroke-width:2;stroke-dasharray:4 3}
.blkFig .dgSkin{fill:#fde7d9}.blkFig .dgFat{fill:#fef3c7}.blkFig .dgStW{fill:#ccfbf1;stroke:#0d9488;stroke-width:1}
.blkFig .dgTube{fill:#e2e8f0;stroke:#64748b;stroke-width:1.2}
.blkFig .dgDisc,.blkFig .dgBump{fill:#99f6e4;stroke:#0f766e;stroke-width:1.4}
.blkFig .dgGapL{stroke:#dc2626;stroke-width:2}
.blkFig .dgRot{fill:none;stroke:#0d9488;stroke-width:1.6}.blkFig .dgRotK{fill:#0d9488}
.blkFig .dgSph{fill:#6366f1;opacity:.75}
[data-theme="dark"] .blkFig .dgOrg{fill:#134e4a;stroke:#2dd4bf}
[data-theme="dark"] .blkFig .dgEso{stroke:#64748b}
[data-theme="dark"] .blkFig .dgDuo{stroke:#d97706;opacity:.7}
[data-theme="dark"] .blkFig .dgPil{stroke:#fbbf24}
[data-theme="dark"] .blkFig .dgRug{stroke:#2dd4bf;opacity:.6}
[data-theme="dark"] .blkFig .dgDuct{stroke:#4ade80}
[data-theme="dark"] .blkFig .dgWir{stroke:#fbbf24}
[data-theme="dark"] .blkFig .dgHart{stroke:#5eead4}
[data-theme="dark"] .blkFig .dgPap{fill:#f87171}
[data-theme="dark"] .blkFig .dgSpl{fill:#4c1d95;stroke:#a78bfa}
[data-theme="dark"] .blkFig .dgBand{fill:#1e293b;stroke:#334155}
[data-theme="dark"] .blkFig .dgC0{stroke:#115e59}[data-theme="dark"] .blkFig .dgC1{stroke:#0f766e}[data-theme="dark"] .blkFig .dgC2{stroke:#0d9488}[data-theme="dark"] .blkFig .dgC3{stroke:#14b8a6}[data-theme="dark"] .blkFig .dgC4{stroke:#5eead4}
[data-theme="dark"] .blkFig .dgGut{stroke:#475569}
[data-theme="dark"] .blkFig .dgInf{stroke:#f87171}
[data-theme="dark"] .blkFig .dgL1{fill:#7f1d1d}[data-theme="dark"] .blkFig .dgL2{fill:#78350f}[data-theme="dark"] .blkFig .dgL3{fill:#334155}[data-theme="dark"] .blkFig .dgL4{fill:#1e293b}
[data-theme="dark"] .blkFig .dgUlc{stroke:#fca5a5}
[data-theme="dark"] .blkFig .dgDia{stroke:#f59e0b}
[data-theme="dark"] .blkFig .dgTreitz{stroke:#a5b4fc}
[data-theme="dark"] .blkFig .ft.dgTz,[data-theme="dark"] .blkFig .ft.dgTb{fill:#a5b4fc}
[data-theme="dark"] .blkFig .dgBrA{stroke:#2dd4bf}[data-theme="dark"] .blkFig .dgBrB{stroke:#a5b4fc}
[data-theme="dark"] .blkFig .ft.dgTa{fill:#5eead4}
[data-theme="dark"] .blkFig .ft.dgTt{fill:#e2e8f0}
[data-theme="dark"] .blkFig .dgWall{stroke:#9f1239}
[data-theme="dark"] .blkFig .dgSphI{stroke:#2dd4bf}[data-theme="dark"] .blkFig .dgSphE{stroke:#a5b4fc}
[data-theme="dark"] .blkFig .dgPect{stroke:#94a3b8}
[data-theme="dark"] .blkFig .dgHem{fill:#4c1d95;stroke:#c4b5fd}
[data-theme="dark"] .blkFig .dgFis{stroke:#fca5a5}
[data-theme="dark"] .blkFig .dgAbs{fill:#78350f;stroke:#fbbf24}[data-theme="dark"] .blkFig .dgFist{stroke:#fbbf24}
[data-theme="dark"] .blkFig .dgSkin{fill:#431407}[data-theme="dark"] .blkFig .dgFat{fill:#422006}[data-theme="dark"] .blkFig .dgStW{fill:#134e4a;stroke:#2dd4bf}
[data-theme="dark"] .blkFig .dgTube{fill:#334155;stroke:#94a3b8}
[data-theme="dark"] .blkFig .dgDisc,[data-theme="dark"] .blkFig .dgBump{fill:#115e59;stroke:#5eead4}
[data-theme="dark"] .blkFig .dgGapL{stroke:#f87171}
[data-theme="dark"] .blkFig .dgRot{stroke:#2dd4bf}[data-theme="dark"] .blkFig .dgRotK{fill:#2dd4bf}
[data-theme="dark"] .blkFig .dgSph{fill:#a5b4fc}
.blkFig .dgBarA{fill:#ccfbf1;stroke:#0d9488}.blkFig .dgBarB{fill:#e0e7ff;stroke:#6366f1}
.blkFig .ft.dgOnA{fill:#0f766e;font-weight:700}.blkFig .ft.dgOnB{fill:#4338ca;font-weight:700}
.blkFig .dgScl{stroke:#cbd5e1;stroke-width:3}
.blkFig .dgLvl{fill:#fff;stroke:#94a3b8;stroke-width:1.4}.blkFig .dgLvl.both{stroke:#0d9488;stroke-width:2.2}
.blkFig .ft.dgLvlT{font-size:11px;font-weight:700;fill:#0f172a}
[data-theme="dark"] .blkFig .dgBarA{fill:#134e4a;stroke:#2dd4bf}[data-theme="dark"] .blkFig .dgBarB{fill:#312e81;stroke:#a5b4fc}
[data-theme="dark"] .blkFig .ft.dgOnA{fill:#5eead4}[data-theme="dark"] .blkFig .ft.dgOnB{fill:#c7d2fe}
[data-theme="dark"] .blkFig .dgScl{stroke:#475569}
[data-theme="dark"] .blkFig .dgLvl{fill:#0f172a;stroke:#64748b}[data-theme="dark"] .blkFig .dgLvl.both{stroke:#2dd4bf}
[data-theme="dark"] .blkFig .ft.dgLvlT{fill:#e2e8f0}
/* Eina «abdomen-signes»: mapa de l'abdomen amb els signes i on fa mal */
.abBox{display:flex;flex-direction:column;gap:12px}
.abTabs{display:inline-flex;align-self:flex-start;padding:3px;border-radius:999px;border:1px solid var(--border);background:var(--surface)}
.abTabs button{padding:6px 14px;border:0;border-radius:999px;background:transparent;color:var(--text-muted);font:600 13.5px var(--font-display);cursor:pointer}
.abTabs button.on{background:#0d9488;color:#fff}
.abWrap{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:14px;align-items:start}
.abSvg{display:block;width:100%;height:auto;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
.abBody{fill:rgba(148,163,184,.14);stroke:#94a3b8;stroke-width:1.4}
.abGrid{fill:none;stroke:#94a3b8;stroke-width:1;stroke-dasharray:3 3}
.abZ{fill:transparent;cursor:pointer;transition:fill .25s}
.abZ:hover{fill:rgba(13,148,136,.08)}.abZ.on{fill:rgba(13,148,136,.2)}
.abRn{font:600 8.6px var(--font-body);fill:var(--text-muted);text-anchor:middle;pointer-events:none}
.abSide{font:600 8.5px var(--font-body);fill:#0f766e;text-anchor:start}.abSide.abR{text-anchor:end;fill:var(--text-muted)}
.abUmb{fill:#94a3b8}
.abPt{fill:#0f766e;stroke:#fff;stroke-width:1.5}
.abPulse{fill:none;stroke:#0d9488;stroke-width:2;transform-box:fill-box;transform-origin:center;animation:abPulse 1.6s ease-out infinite}
.abPulse.rb{animation:abRebound 1.8s ease-in-out infinite}
@keyframes abPulse{0%{transform:scale(1);opacity:.9}100%{transform:scale(3);opacity:0}}
@keyframes abRebound{0%,40%{transform:scale(2.4);opacity:.2}55%{transform:scale(.8);opacity:1}100%{transform:scale(2.8);opacity:0}}
.abBlue{fill:rgba(99,102,241,.35);stroke:#6366f1;stroke-width:1}
.abBlueR{fill:rgba(99,102,241,.22);stroke:#6366f1;stroke-width:1.6;stroke-dasharray:3 2}
.abArrow{fill:none;stroke:#0d9488;stroke-width:2.2;stroke-linecap:round;stroke-dasharray:6 4}
.abArrow.mv{animation:abDash 1s linear infinite}
@keyframes abDash{to{stroke-dashoffset:-20}}
.abArK{fill:#0d9488}
.abInfo{padding:12px 14px;border-radius:12px;background:rgba(13,148,136,.07);border:1px solid rgba(13,148,136,.25)}
.abName{display:block;font:700 16px var(--font-display);color:var(--text);margin-bottom:6px}
.abDl{margin:0;display:flex;flex-direction:column;gap:8px}
.abDl dt{font:700 11.5px var(--font-display);text-transform:uppercase;letter-spacing:.04em;color:#0f766e}
.abDl dd{margin:2px 0 0;font-size:14.5px;line-height:1.5;color:var(--text)}
.abChips{display:flex;flex-wrap:wrap;gap:6px}
.abChips button{padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:500 13.5px var(--font-body);cursor:pointer}
.abChips button.on{border-color:#0d9488;background:rgba(13,148,136,.1);color:#0f766e;font-weight:600}
[data-theme="dark"] .abTabs button.on{background:#14b8a6;color:#04201d}
[data-theme="dark"] .abZ.on{fill:rgba(45,212,191,.2)}
[data-theme="dark"] .abSide{fill:#5eead4}
[data-theme="dark"] .abPt{fill:#5eead4;stroke:#0f172a}[data-theme="dark"] .abPulse,[data-theme="dark"] .abArrow{stroke:#2dd4bf}[data-theme="dark"] .abArK{fill:#2dd4bf}
[data-theme="dark"] .abBlue,[data-theme="dark"] .abBlueR{fill:rgba(165,180,252,.25);stroke:#a5b4fc}
[data-theme="dark"] .abInfo{background:rgba(45,212,191,.07);border-color:rgba(45,212,191,.22)}
[data-theme="dark"] .abDl dt{color:#5eead4}
[data-theme="dark"] .abChips button.on{border-color:#2dd4bf;background:rgba(45,212,191,.12);color:#5eead4}
/* Eina «bristol-visual»: els 7 tipus dibuixats (gris = restrenyiment · teal = normal · indi = diarrea; no és un semàfor) */
.brGrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.brItem{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px 6px;border-radius:12px;border:1px solid var(--border);border-top-width:4px;background:var(--surface);color:var(--text);font:600 12px var(--font-display);cursor:pointer}
.brItem svg{width:100%;max-width:64px;height:auto}
.brItem.g1{border-top-color:#94a3b8}.brItem.g2{border-top-color:#0d9488}.brItem.g3{border-top-color:#6366f1}
.brItem.on{background:rgba(13,148,136,.1);border-color:#0d9488}
.brS{fill:#a16207;stroke:#78350f;stroke-width:.8}
.brS .brCr{fill:none;stroke:#fde68a;stroke-width:1.3;stroke-linecap:round}
.brS .brSn{fill:none;stroke:#a16207;stroke-width:10;stroke-linecap:round}
.brS .brLq{fill:#ca8a04;opacity:.6;stroke:none}
.brOut{margin-top:12px;padding:12px 14px;border-radius:12px;border:1px solid var(--border);border-left:4px solid #0d9488;background:var(--surface)}
.brOut.g1{border-left-color:#94a3b8}.brOut.g3{border-left-color:#6366f1}
.brOut small{display:block;font:700 11.5px var(--font-display);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}
.brOut b{display:block;margin-top:2px;font:700 16px var(--font-display);color:var(--text)}
:is(#content,.lsMain) .brOut p,.brOut p{margin:4px 0 0;font-size:14.5px;line-height:1.5;color:var(--text)}
[data-theme="dark"] .brItem.on{background:rgba(45,212,191,.12);border-color:#2dd4bf}
[data-theme="dark"] .brItem.g2{border-top-color:#2dd4bf}[data-theme="dark"] .brItem.g3,[data-theme="dark"] .brOut.g3{border-top-color:#a5b4fc}
[data-theme="dark"] .brOut.g3{border-left-color:#a5b4fc}[data-theme="dark"] .brOut.g2{border-left-color:#2dd4bf}
[data-theme="dark"] .brS{fill:#b45309;stroke:#fbbf24}[data-theme="dark"] .brS .brSn{stroke:#b45309}
@media (max-width:600px){.brGrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* Eina «sng-colocacio»: sonda nasogàstrica pas a pas */
.sgBox{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:14px;align-items:start}
.sgSvg{display:block;width:100%;height:auto;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
.sgHead{fill:rgba(148,163,184,.14);stroke:#94a3b8;stroke-width:1.3;stroke-linejoin:round}
.sgEar{fill:rgba(148,163,184,.2);stroke:#94a3b8;stroke-width:1.2}
.sgEso{fill:none;stroke:#cbd5e1;stroke-width:9;stroke-linecap:round}
.sgAir{fill:none;stroke:#bae6fd;stroke-width:7;stroke-linecap:round}.sgAir.sgThin{stroke-width:4}
.sgSto{fill:#ccfbf1;stroke:#0d9488;stroke-width:1.4}
.sgTube{fill:none;stroke:#0f766e;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;display:none}
.sgMeas{fill:none;stroke:#6366f1;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;display:none}
.sgPt{fill:#6366f1;stroke:#fff;stroke-width:1.2}
.sgT{font:600 9.5px var(--font-body);fill:var(--text-muted)}.sgT.sgR{text-anchor:end}
.sgAng{font:700 12px var(--font-display);fill:#0f766e;display:none}
.sgM,.sgAirT{display:none}
.sgSvg[data-v="meas"] .sgMeas,.sgSvg[data-v="meas"] .sgM{display:inline}
.sgSvg[data-v="ins"] .sgTube,.sgSvg[data-v="chk"] .sgTube,.sgSvg[data-v="care"] .sgTube,.sgSvg[data-v="out"] .sgTube{display:inline}
.sgSvg[data-v="care"] .sgAng{display:inline}
.sgSvg[data-v="out"] .sgTube{stroke-dasharray:4 4;opacity:.7}
.sgSvg.bad .sgTube{stroke:#dc2626}.sgSvg.bad .sgAirT{display:inline}.sgSvg.bad .sgAir{stroke:#fecaca}
.sgTube.draw,.sgMeas.draw{stroke-dasharray:100;stroke-dashoffset:100;animation:sgDraw 1.4s ease-out forwards}
.sgSvg[data-v="out"] .sgTube.draw{animation:none;stroke-dashoffset:0;stroke-dasharray:4 4}
.sgSvg.rm .draw{animation:none;stroke-dashoffset:0}
@keyframes sgDraw{to{stroke-dashoffset:0}}
.sgPanel{display:flex;flex-direction:column;gap:10px}
.sgSteps{display:flex;flex-wrap:wrap;gap:6px}
.sgSteps button{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:500 13.5px var(--font-body);cursor:pointer}
.sgSteps button i{font-style:normal;display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--border);font:700 11px var(--font-display)}
.sgSteps button.on{border-color:#0d9488;background:rgba(13,148,136,.1);color:#0f766e}.sgSteps button.on i{background:#0d9488;color:#fff}
.sgTxt{padding:12px 14px;border-radius:12px;background:rgba(13,148,136,.07);border:1px solid rgba(13,148,136,.25)}
:is(#content,.lsMain) .sgTxt p,.sgTxt p{margin:0;font-size:14.5px;line-height:1.55;color:var(--text)}
.sgTog{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.sgTog button{padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:500 13px var(--font-body);cursor:pointer}
.sgTog button.on{border-color:#0d9488;background:#0d9488;color:#fff}
.sgChk{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.sgChk li{display:flex;gap:10px;align-items:flex-start}
.sgIc{flex:none;display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%}
.sgChk li.ok .sgIc{background:rgba(13,148,136,.14);color:#0f766e}.sgChk li.no .sgIc{background:rgba(100,116,139,.16);color:#475569}
.sgChk b{font:600 14px var(--font-body);color:var(--text)}
:is(#content,.lsMain) .sgChk p,.sgChk p{margin:2px 0 0;font-size:13.5px;line-height:1.45;color:var(--text-muted)}
[data-theme="dark"] .sgEso{stroke:#475569}[data-theme="dark"] .sgAir{stroke:#0c4a6e}[data-theme="dark"] .sgSto{fill:#134e4a;stroke:#2dd4bf}
[data-theme="dark"] .sgTube{stroke:#5eead4}[data-theme="dark"] .sgMeas,[data-theme="dark"] .sgPt{stroke:#a5b4fc}[data-theme="dark"] .sgPt{fill:#a5b4fc;stroke:#0f172a}
[data-theme="dark"] .sgAng{fill:#5eead4}
[data-theme="dark"] .sgSvg.bad .sgTube{stroke:#f87171}[data-theme="dark"] .sgSvg.bad .sgAir{stroke:#7f1d1d}
[data-theme="dark"] .sgSteps button.on{border-color:#2dd4bf;background:rgba(45,212,191,.12);color:#5eead4}[data-theme="dark"] .sgSteps button.on i{background:#2dd4bf;color:#04201d}
[data-theme="dark"] .sgTxt{background:rgba(45,212,191,.07);border-color:rgba(45,212,191,.22)}
[data-theme="dark"] .sgTog button.on{border-color:#14b8a6;background:#14b8a6;color:#04201d}
[data-theme="dark"] .sgChk li.ok .sgIc{background:rgba(45,212,191,.14);color:#5eead4}[data-theme="dark"] .sgChk li.no .sgIc{color:#cbd5e1}
@media (max-width:640px){.abWrap,.sgBox{grid-template-columns:1fr}.abSvg{max-width:340px;margin:0 auto}.sgSvg{max-width:300px;margin:0 auto}}
@media (prefers-reduced-motion:reduce){.abPulse,.abArrow.mv,.sgTube.draw,.sgMeas.draw{animation:none;stroke-dashoffset:0}}
/* Subtítols dins d'un «Veure-ho tot en taula» amb més d'una taula */
:is(#content,.lsMain) .edMoreIn .edMoreH,.edMoreIn .edMoreH{margin:12px 0 6px;font:700 13.5px var(--font-display);color:var(--text)}
:is(#content,.lsMain) .edMoreIn .edMoreH:first-child,.edMoreIn .edMoreH:first-child{margin-top:4px}
/* ===== Repàs nutricio ===== */
.blkFig .nuN{fill:#99f6e4;stroke:#0d9488;stroke-width:1.2}
.blkFig .nuC1{fill:#f1f5f9;stroke:#cbd5e1;stroke-width:1}
.blkFig .nuC2{fill:#e2e8f0;stroke:#94a3b8;stroke-width:1}
.blkFig .nuC3{fill:#cbd5e1;stroke:#64748b;stroke-width:1}
.blkFig .nuTk{fill:var(--surface,#fff);stroke:#94a3b8;stroke-width:1}
.blkFig .nuBody{fill:#e2e8f0;stroke:#94a3b8;stroke-width:1.2}
.blkFig .nuFat{fill:rgba(245,158,11,.28);stroke:#d97706;stroke-width:1.2}
.blkFig .nuNose{fill:none;stroke:#94a3b8;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.blkFig .nuTA{fill:none;stroke:#0d9488;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.blkFig .nuTB{fill:none;stroke:#6366f1;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:4 3}
.blkFig .nuTB.nuSolid{stroke-dasharray:none;stroke-width:2.6}
.blkFig .nuDisc{fill:#0d9488}.blkFig .nuDisc.nuDiscB{fill:#6366f1}
.blkFig .nuWall{fill:none;stroke:#fdba74;stroke-width:3;stroke-dasharray:2 3;opacity:.8}
[data-theme="dark"] .blkFig .nuN{fill:#115e59;stroke:#2dd4bf}
[data-theme="dark"] .blkFig .nuC1{fill:#1e293b;stroke:#475569}
[data-theme="dark"] .blkFig .nuC2{fill:#263548;stroke:#64748b}
[data-theme="dark"] .blkFig .nuC3{fill:#334155;stroke:#94a3b8}
[data-theme="dark"] .blkFig .nuTk{stroke:#64748b}
[data-theme="dark"] .blkFig .nuBody{fill:#334155;stroke:#64748b}
[data-theme="dark"] .blkFig .nuFat{fill:rgba(251,191,36,.22);stroke:#fbbf24}
[data-theme="dark"] .blkFig .nuTA{stroke:#2dd4bf}
[data-theme="dark"] .blkFig .nuTB{stroke:#a5b4fc}
[data-theme="dark"] .blkFig .nuDisc{fill:#2dd4bf}[data-theme="dark"] .blkFig .nuDisc.nuDiscB{fill:#a5b4fc}
[data-theme="dark"] .blkFig .nuWall{stroke:#c2410c}
.blkFig .ft.nuBold{font-weight:700;fill:#0f766e}
[data-theme="dark"] .blkFig .ft.nuBold{fill:#5eead4}
/* eines: enteral-admin · racions-hc · menu-setmanal */
.nuEn{display:flex;flex-direction:column;gap:12px}
.nuEnTop{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:12px;align-items:start}
.nuEq{display:block;width:100%;height:auto;border-radius:12px;background:var(--surface);border:1px solid var(--border)}
.nuEq .nuEqBody{fill:#f1f5f9;stroke:#94a3b8;stroke-width:1.4}
.nuEq .nuEqLiq{fill:#fde68a;stroke:#d97706;stroke-width:1}
.nuEq .nuEqPart{fill:#e2e8f0;stroke:#64748b;stroke-width:1.4}
.nuEq .nuEqScr{fill:#0f172a}
.nuEq .nuEqTxt{font:700 12px var(--font-display);fill:#5eead4;text-anchor:middle}
.nuEq .nuEqTube{fill:none;stroke:#cbd5e1;stroke-width:5;stroke-linecap:round}
.nuEq .nuEqFlow{fill:none;stroke:#d97706;stroke-width:2.2;stroke-linecap:round;stroke-dasharray:3 9;animation:nuFlow 1.1s linear infinite}
.nuEq .nuEqFlow.nuSlow{animation-duration:2.4s}
.nuEq .nuEqDrop{fill:#d97706;animation:nuDrop 1.4s ease-in infinite}
.nuEq .nuPush{transform-box:fill-box;transform-origin:right center;animation:nuPush 4s ease-in-out infinite}
.nuEq .nuPlg{animation:nuPlg 4s ease-in-out infinite}
.nuEq .nuRot{stroke-dasharray:6 4;transform-box:fill-box;transform-origin:center;animation:nuRot 2s linear infinite}
.nuEq.rm *{animation:none!important}
@keyframes nuFlow{to{stroke-dashoffset:-24}}
@keyframes nuDrop{0%{transform:translateY(0);opacity:1}80%{transform:translateY(10px);opacity:1}100%{transform:translateY(12px);opacity:0}}
@keyframes nuPush{0%{transform:scaleX(1)}85%{transform:scaleX(.2)}100%{transform:scaleX(1)}}
@keyframes nuPlg{0%{transform:translateX(0)}85%{transform:translateX(83px)}100%{transform:translateX(0)}}
@keyframes nuRot{to{transform:rotate(360deg)}}
.nuEnT{display:block;margin-bottom:6px;font:700 15px var(--font-display);color:var(--text)}
.nuEnStart{padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface)}
.nuEnStart>b{display:block;margin-bottom:8px;font:700 12px var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}
.nuSteps{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.nuStep{display:flex;flex-direction:column;align-items:center;min-width:58px;padding:6px 8px;border-radius:10px;border:1px solid var(--border);background:var(--bg,transparent)}
.nuStep small{font-size:11.5px;color:var(--text-muted)}.nuStep b{font:700 16px var(--font-display);color:var(--text)}.nuStep i{font-style:normal;font-size:11px;color:var(--text-muted)}
.nuStep.on{border-color:#0d9488;background:rgba(13,148,136,.1)}.nuStep.on b{color:#0f766e}
.nuEnNote{margin:8px 0 0;font-size:14px;line-height:1.5;color:var(--text-muted)}
.nuBtn{padding:9px 14px;border-radius:10px;border:1px solid #0d9488;background:#0d9488;color:#fff;font:600 14px var(--font-display);cursor:pointer}
.nuRc{display:flex;flex-direction:column;gap:12px}
.nuRcGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}
.nuRcGrid button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);text-align:left;cursor:pointer}
.nuRcGrid button b{font:600 13.5px var(--font-body)}.nuRcGrid button small{font-size:12px;color:var(--text-muted)}
.nuRcGrid button.on{border-color:#0d9488;background:rgba(13,148,136,.1)}.nuRcGrid button.on b{color:#0f766e}
.nuRcIn{align-items:flex-end}
.nuPlat ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.nuPlat li{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:10px;border:1px solid var(--border);background:var(--surface);font-size:14px}
.nuPlat li span{flex:1;color:var(--text)}.nuPlat li b{font:700 14px var(--font-display);color:#0f766e}
.nuPlat li button{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer}
.nuTot{margin:8px 0 0;font-size:14.5px;color:var(--text)}.nuTot b{color:#0f766e}
.nuMs{display:flex;flex-direction:column;gap:6px}
.nuMsRow{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"t c" "t s";gap:4px 12px;align-items:center;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--surface)}
.nuMsRow.ok{border-color:rgba(13,148,136,.45)}
.nuMsTxt{grid-area:t}.nuMsTxt b{font:700 14.5px var(--font-display);color:var(--text)}.nuMsTxt small{display:block;font-size:12.5px;font-weight:600;color:#0f766e}
.nuMsTxt p{margin:3px 0 0;font-size:13.5px;line-height:1.45;color:var(--text-muted)}
.nuMsCtl{grid-area:c;display:flex;align-items:center;gap:6px}
.nuMsCtl button{width:32px;height:32px;border-radius:50%;border:1px solid var(--border);background:var(--bg,transparent);color:var(--text);font:700 17px var(--font-display);cursor:pointer}
.nuMsCtl output{min-width:22px;text-align:center;font:700 17px var(--font-display);color:var(--text)}
.nuMsSt{grid-area:s;justify-self:center;font-style:normal;font:600 12px var(--font-display);padding:2px 8px;border-radius:999px;background:var(--border);color:var(--text-muted)}
.nuMsSt.ok{background:rgba(13,148,136,.14);color:#0f766e}
.nuMsSt.lo,.nuMsSt.hi{background:rgba(99,102,241,.12);color:#4338ca}
[data-theme="dark"] .nuEq .nuEqBody{fill:#1e293b;stroke:#64748b}
[data-theme="dark"] .nuEq .nuEqLiq{fill:rgba(251,191,36,.3);stroke:#fbbf24}
[data-theme="dark"] .nuEq .nuEqPart{fill:#334155;stroke:#94a3b8}
[data-theme="dark"] .nuEq .nuEqScr{fill:#020617}
[data-theme="dark"] .nuEq .nuEqTube{stroke:#475569}
[data-theme="dark"] .nuEq .nuEqFlow{stroke:#fbbf24}[data-theme="dark"] .nuEq .nuEqDrop{fill:#fbbf24}
[data-theme="dark"] .nuStep.on{border-color:#2dd4bf;background:rgba(45,212,191,.12)}[data-theme="dark"] .nuStep.on b{color:#5eead4}
[data-theme="dark"] .nuBtn{background:#14b8a6;border-color:#14b8a6;color:#04201d}
[data-theme="dark"] .nuRcGrid button.on{border-color:#2dd4bf;background:rgba(45,212,191,.12)}[data-theme="dark"] .nuRcGrid button.on b{color:#5eead4}
[data-theme="dark"] .nuPlat li b,[data-theme="dark"] .nuTot b,[data-theme="dark"] .nuMsTxt small{color:#5eead4}
[data-theme="dark"] .nuMsRow.ok{border-color:rgba(45,212,191,.4)}
[data-theme="dark"] .nuMsSt.ok{background:rgba(45,212,191,.14);color:#5eead4}
[data-theme="dark"] .nuMsSt.lo,[data-theme="dark"] .nuMsSt.hi{background:rgba(165,180,252,.14);color:#c7d2fe}
@media (max-width:600px){.nuEnTop{grid-template-columns:1fr}.nuRcGrid{grid-template-columns:1fr 1fr}.nuMsTxt p{font-size:13px}}

/* ===== Repàs neurologia ===== */
/* Eina «codi-ictus-temps»: rellotges del codi ictus en directe */
.ciRange{display:flex;flex-direction:column;gap:6px;font-family:var(--font-display);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
.ciRange input{width:100%;accent-color:#0d9488}
.ciRange b{font-size:20px;letter-spacing:0;text-transform:none;color:var(--text)}
.ciLine{display:block;width:100%;max-width:440px;height:auto;margin:10px 0 4px}
.ciLine .ciB0{fill:#e2e8f0}.ciLine .ciB1{fill:#e0e7ff}.ciLine .ciB2{fill:#ccfbf1}
.ciLine .ciBandTx{font:600 9.5px var(--font-body);fill:#0f172a}
.ciLine .ciAx{stroke:#94a3b8;stroke-width:1.2;fill:none}.ciLine .ciDash{stroke:#0d9488;stroke-width:1.2;stroke-dasharray:2 2}
.ciLine .ciTick{font:600 10px var(--font-body);fill:var(--text-muted);text-anchor:middle}
.ciLine .ciNow path{stroke:#0f766e;stroke-width:2}.ciLine .ciNow circle{fill:#0d9488;stroke:var(--surface,#fff);stroke-width:2}
.ciLine .ciNowTx{font:700 10.5px var(--font-display);fill:#0f766e}
.ciSel{margin:6px 0 4px}
.ciSel .tlNum input{width:100%}
.ciList{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.ciList li{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--surface)}
.ciList li > div > b{display:block;font:600 14.5px/1.35 var(--font-display);color:var(--text)}
.ciList li p{margin:3px 0 0;font-size:14px;line-height:1.45;color:var(--text-muted)}
.ciIco{flex:none;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%}
.ci-ok{border-color:rgba(13,148,136,.35)!important;background:rgba(13,148,136,.06)!important}.ci-ok .ciIco{background:#0d9488;color:#fff}
.ci-no .ciIco{background:var(--border);color:var(--text-muted)}
.ci-wa{border-color:rgba(180,83,9,.35)!important}.ci-wa .ciIco{background:rgba(180,83,9,.12);color:#b45309}
.ci-go{border-color:rgba(99,102,241,.3)!important}.ci-go .ciIco{background:rgba(99,102,241,.12);color:#4338ca}
/* Eina «medulla-nivell»: columna tocable */
.mdWrap{display:grid;grid-template-columns:132px minmax(0,1fr);grid-template-areas:"svg top" "svg res";gap:10px 16px;align-items:start}
.mdSvg{grid-area:svg;width:100%;height:auto}
.mdTop{grid-area:top;display:flex;flex-direction:column;gap:8px}.mdRes{grid-area:res}
.mdTop small{font-size:13px;line-height:1.45;color:var(--text-muted)}
.mdRes .ciList{margin-top:0}
.mdSvg .mdSeg{stroke:#94a3b8;stroke-width:.7;cursor:pointer;transition:fill .15s}
.mdSvg .md-c{fill:#e0e7ff}.mdSvg .md-t{fill:#e2e8f0}.mdSvg .md-l{fill:#ccfbf1}.mdSvg .md-s{fill:#fde68a}
.mdSvg .mdSeg.below{fill:#cbd5e1;opacity:.55}
.mdSvg .mdSeg.on{fill:#0d9488;stroke:#0f766e;stroke-width:1.2}
.mdSvg .mdSeg:hover{stroke:#0d9488;stroke-width:1.4}
.mdSvg .mdCord{stroke:#b45309;stroke-width:3;stroke-linecap:round;fill:none;pointer-events:none}
.mdSvg .mdCauda{stroke:#b45309;stroke-width:1;stroke-dasharray:2 2;fill:none;pointer-events:none}
.mdSvg .mdTick{stroke:#b45309;stroke-width:1.2}
.mdSvg .mdNote{font:700 9px var(--font-body);fill:#b45309}
.mdSvg .mdReg{font:700 10px var(--font-display);fill:var(--text-muted);text-anchor:end}
.mdSvg .mdMark{stroke:#0f766e;stroke-width:2;pointer-events:none}
.mdTop .tlSel select{max-width:160px}
.mdLvl{display:block;font:600 18px var(--font-display);color:var(--text)}
[data-theme="dark"] .ciLine .ciB0{fill:#334155}[data-theme="dark"] .ciLine .ciB1{fill:rgba(129,140,248,.35)}[data-theme="dark"] .ciLine .ciB2{fill:rgba(45,212,191,.35)}
[data-theme="dark"] .ciLine .ciBandTx{fill:#e2e8f0}
[data-theme="dark"] .ciLine .ciNow path{stroke:#2dd4bf}[data-theme="dark"] .ciLine .ciNow circle{fill:#2dd4bf}[data-theme="dark"] .ciLine .ciNowTx{fill:#5eead4}
[data-theme="dark"] .ci-ok{border-color:rgba(45,212,191,.4)!important;background:rgba(45,212,191,.08)!important}[data-theme="dark"] .ci-ok .ciIco{background:#14b8a6;color:#04201d}
[data-theme="dark"] .ci-wa .ciIco{background:rgba(251,191,36,.14);color:#fbbf24}[data-theme="dark"] .ci-wa{border-color:rgba(251,191,36,.35)!important}
[data-theme="dark"] .ci-go .ciIco{background:rgba(165,180,252,.14);color:#c7d2fe}[data-theme="dark"] .ci-go{border-color:rgba(165,180,252,.3)!important}
[data-theme="dark"] .mdSvg .md-c{fill:#3730a3}[data-theme="dark"] .mdSvg .md-t{fill:#334155}[data-theme="dark"] .mdSvg .md-l{fill:#134e4a}[data-theme="dark"] .mdSvg .md-s{fill:#78350f}
[data-theme="dark"] .mdSvg .mdSeg.below{fill:#1e293b;opacity:.7}[data-theme="dark"] .mdSvg .mdSeg.on{fill:#2dd4bf;stroke:#5eead4}
[data-theme="dark"] .mdSvg .mdCord,[data-theme="dark"] .mdSvg .mdCauda,[data-theme="dark"] .mdSvg .mdTick{stroke:#fbbf24}[data-theme="dark"] .mdSvg .mdNote{fill:#fbbf24}[data-theme="dark"] .mdSvg .mdMark{stroke:#5eead4}
@media (max-width:600px){.mdWrap{grid-template-columns:104px minmax(0,1fr);grid-template-areas:"svg top" "res res";gap:10px 12px}.ciList li p{font-size:13.5px}}
/* Rètols de les figures de neurologia sobre el fons (clar/fosc) */
.blkFig .ft.nrAmb{fill:#b45309}.blkFig .ft.nrRed{fill:#dc2626}
[data-theme="dark"] .blkFig .ft.nrAmb{fill:#fbbf24}[data-theme="dark"] .blkFig .ft.nrRed{fill:#f87171}

/* ===== Repàs nefrourologia ===== */
/* Figures (_figs-nef.js): traços i farcits amb variant fosca; fluxos animats de la diàlisi */
.blkFig .nfCortex{fill:rgba(13,148,136,.07)}.blkFig .nfMedul{fill:rgba(99,102,241,.08)}
.blkFig .nfArt{stroke:#dc2626}.blkFig .nfArtD{stroke:#7f1d1d}.blkFig .nfVen,.blkFig .nfBluS{stroke:#2563eb}.blkFig .nfTealS{stroke:#0d9488}
.blkFig .nfIndS{stroke:#6366f1}.blkFig .nfAmbS{stroke:#b45309}.blkFig .nfGreyS{stroke:#64748b}
.blkFig .nfMrR{fill:#dc2626}.blkFig .nfMrB{fill:#2563eb}.blkFig .nfMrT{fill:#0d9488}.blkFig .nfMrA{fill:#b45309}.blkFig .nfMrG{fill:#64748b}
.blkFig .nfTub{fill:none;stroke:#0d9488;stroke-width:7;stroke-linecap:round;stroke-linejoin:round;opacity:.5}.blkFig .nfTubD{stroke:#6366f1}
.blkFig .nfCol{fill:none;stroke:#64748b;stroke-width:9;stroke-linecap:round;opacity:.45}
.blkFig .nfMac{fill:#f59e0b;stroke:#fff;stroke-width:1.2}
.blkFig .nfMk{fill:#fff;stroke:#0d9488;stroke-width:1.4}
.blkFig .ft.nfMkT{font-size:8px;font-weight:700;fill:#0f766e}
.blkFig .ft.nfPr{font-size:10.5px;font-weight:800}
.blkFig .ft.nfTxB{fill:#1d4ed8}.blkFig .ft.nfTxA{fill:#92400e}.blkFig .ft.nfTxT{fill:#0f766e}.blkFig .ft.nfTxR{fill:#b91c1c}.blkFig .ft.nfTxI{fill:#4338ca}
.blkFig .nfRowB{fill:rgba(37,99,235,.07);stroke:#2563eb;stroke-width:1.1}.blkFig .nfRowR{fill:rgba(220,38,38,.06);stroke:#dc2626;stroke-width:1.1}
.blkFig .nfRowI{fill:rgba(99,102,241,.08);stroke:#6366f1;stroke-width:1.1}.blkFig .nfRowA{fill:rgba(180,83,9,.07);stroke:#b45309;stroke-width:1.1}
.blkFig .nfKid{stroke:#dc2626;stroke-width:1.4;vector-effect:non-scaling-stroke}
.blkFig .nfStone{fill:#78716c;stroke:#fff;stroke-width:1}
.blkFig .nfFav{fill:none;stroke:#b45309;stroke-width:2}
.blkFig .nfFlow{stroke-dasharray:6 5;animation:nfFlow 1.3s linear infinite}
@keyframes nfFlow{to{stroke-dashoffset:-22}}
@media (prefers-reduced-motion:reduce){.blkFig .nfFlow{animation:none;stroke-dasharray:none}}
.blkFig .nfPerit{fill:rgba(13,148,136,.12);stroke:#0d9488;stroke-width:1.3;stroke-dasharray:4 3}
.blkFig .nfCath{stroke:#475569;stroke-width:3;stroke-linecap:round}
.blkFig .nfBagB{fill:#e0f2fe;stroke:#0284c7}.blkFig .nfBagA{fill:#fef3c7;stroke:#b45309}
.blkFig .nfUre{fill:none;stroke:#b45309;stroke-width:4;stroke-linecap:round;opacity:.7}
.blkFig .nfProst{fill:#e9d5ff;stroke:#7c3aed;stroke-width:1.4}.blkFig .nfNod{fill:#7c3aed;opacity:.75}
.blkFig .nfHidro{fill:#bfdbfe;stroke:#2563eb;stroke-width:1.3}
.blkFig .nfBal{fill:#a5b4fc;stroke:#6366f1;stroke-width:1.2}
.blkFig .nfCath2{stroke:#0d9488;stroke-width:3;stroke-linecap:round}
.blkFig .nfLumU{fill:#fde68a;stroke:#b45309}.blkFig .nfLumB{fill:#a5b4fc;stroke:#6366f1}.blkFig .nfLumR{fill:#bae6fd;stroke:#0284c7}
.blkFig .nfRect{fill:none;stroke:#94a3b8;stroke-width:12;stroke-linecap:round;opacity:.35}
.blkFig .nfFing{stroke:#475569;stroke-width:5;stroke-linecap:round;opacity:.6}
.blkFig .nfCord{fill:none;stroke:#0d9488;stroke-width:9;stroke-linecap:round;opacity:.45}
.blkFig .nfCordS{fill:none;stroke:#0d9488;stroke-width:6;stroke-linecap:round;opacity:.55}
.blkFig .nfEpi{stroke:#6366f1;stroke-width:5;stroke-linecap:round;opacity:.6}
.blkFig .nfPanel{fill:none;stroke:var(--border,#e2e8f0);stroke-width:1}
.blkFig .nfDrop{fill:#fbbf24;stroke:#b45309;stroke-width:.8}
.blkFig .nfR0{fill:rgba(13,148,136,.12)}.blkFig .nfR1{fill:rgba(13,148,136,.32)}.blkFig .nfR2{fill:rgba(13,148,136,.62)}.blkFig .nfR3{fill:#0f766e}
.blkFig .ft.nfRiskT{font-size:9px;font-weight:700}.blkFig .ft.nfRT0,.blkFig .ft.nfRT1{fill:#134e4a}.blkFig .ft.nfRT2,.blkFig .ft.nfRT3{fill:#fff}
[data-theme="dark"] .blkFig .nfArt{stroke:#f87171}[data-theme="dark"] .blkFig .nfArtD{stroke:#fecaca}[data-theme="dark"] .blkFig .nfVen,[data-theme="dark"] .blkFig .nfBluS{stroke:#60a5fa}
[data-theme="dark"] .blkFig .nfTealS{stroke:#2dd4bf}[data-theme="dark"] .blkFig .nfIndS{stroke:#a5b4fc}[data-theme="dark"] .blkFig .nfAmbS{stroke:#fbbf24}[data-theme="dark"] .blkFig .nfGreyS{stroke:#94a3b8}
[data-theme="dark"] .blkFig .nfMrR{fill:#f87171}[data-theme="dark"] .blkFig .nfMrB{fill:#60a5fa}[data-theme="dark"] .blkFig .nfMrT{fill:#2dd4bf}[data-theme="dark"] .blkFig .nfMrA{fill:#fbbf24}[data-theme="dark"] .blkFig .nfMrG{fill:#94a3b8}
[data-theme="dark"] .blkFig .nfTub{stroke:#2dd4bf;opacity:.6}[data-theme="dark"] .blkFig .nfTubD{stroke:#a5b4fc}[data-theme="dark"] .blkFig .nfCol{stroke:#94a3b8}
[data-theme="dark"] .blkFig .nfMac,[data-theme="dark"] .blkFig .nfStone{stroke:#0f172a}
[data-theme="dark"] .blkFig .nfMk{fill:#0f172a;stroke:#2dd4bf}[data-theme="dark"] .blkFig .ft.nfMkT{fill:#5eead4}
[data-theme="dark"] .blkFig .ft.nfTxB{fill:#93c5fd}[data-theme="dark"] .blkFig .ft.nfTxA{fill:#fbbf24}[data-theme="dark"] .blkFig .ft.nfTxT{fill:#5eead4}[data-theme="dark"] .blkFig .ft.nfTxR{fill:#fca5a5}[data-theme="dark"] .blkFig .ft.nfTxI{fill:#c7d2fe}
[data-theme="dark"] .blkFig .nfRowB{fill:rgba(96,165,250,.12);stroke:#60a5fa}[data-theme="dark"] .blkFig .nfRowR{fill:rgba(248,113,113,.1);stroke:#f87171}
[data-theme="dark"] .blkFig .nfRowI{fill:rgba(165,180,252,.12);stroke:#a5b4fc}[data-theme="dark"] .blkFig .nfRowA{fill:rgba(251,191,36,.1);stroke:#fbbf24}
[data-theme="dark"] .blkFig .nfKid{stroke:#f87171}[data-theme="dark"] .blkFig .nfFav{stroke:#fbbf24}
[data-theme="dark"] .blkFig .nfPerit{fill:rgba(45,212,191,.14);stroke:#2dd4bf}[data-theme="dark"] .blkFig .nfCath,[data-theme="dark"] .blkFig .nfFing{stroke:#cbd5e1}
[data-theme="dark"] .blkFig .nfBagB{fill:rgba(56,189,248,.18);stroke:#38bdf8}[data-theme="dark"] .blkFig .nfBagA{fill:rgba(251,191,36,.16);stroke:#fbbf24}
[data-theme="dark"] .blkFig .nfUre{stroke:#fbbf24}[data-theme="dark"] .blkFig .nfProst{fill:rgba(167,139,250,.3);stroke:#c4b5fd}[data-theme="dark"] .blkFig .nfNod{fill:#c4b5fd}
[data-theme="dark"] .blkFig .nfHidro{fill:rgba(96,165,250,.35);stroke:#60a5fa}[data-theme="dark"] .blkFig .nfBal{fill:rgba(165,180,252,.5);stroke:#a5b4fc}[data-theme="dark"] .blkFig .nfCath2{stroke:#2dd4bf}
[data-theme="dark"] .blkFig .nfLumU{fill:rgba(251,191,36,.35);stroke:#fbbf24}[data-theme="dark"] .blkFig .nfLumB{fill:rgba(165,180,252,.45);stroke:#a5b4fc}[data-theme="dark"] .blkFig .nfLumR{fill:rgba(56,189,248,.35);stroke:#38bdf8}
[data-theme="dark"] .blkFig .nfCord,[data-theme="dark"] .blkFig .nfCordS{stroke:#2dd4bf}[data-theme="dark"] .blkFig .nfEpi{stroke:#a5b4fc}[data-theme="dark"] .blkFig .nfPanel{stroke:#334155}
[data-theme="dark"] .blkFig .nfR0{fill:rgba(45,212,191,.12)}[data-theme="dark"] .blkFig .nfR1{fill:rgba(45,212,191,.3)}[data-theme="dark"] .blkFig .nfR2{fill:rgba(45,212,191,.58)}[data-theme="dark"] .blkFig .nfR3{fill:#2dd4bf}
[data-theme="dark"] .blkFig .ft.nfRT0,[data-theme="dark"] .blkFig .ft.nfRT1{fill:#ccfbf1}[data-theme="dark"] .blkFig .ft.nfRT2{fill:#fff}[data-theme="dark"] .blkFig .ft.nfRT3{fill:#04201d}
/* figures estretes del tema: amplada completa al mòbil (lletra ≥11 px), màx. 400 px a l'escriptori */
:is(#content,.lsMain) .blk .blkFig.nfFig,:is(#content,.lsMain) .blk-diagrama > .blkFig.nfFig{max-width:400px}
/* Eina «balanc-hidric»: entrades i sortides en barres apilades */
.nfBal .tlNum.nfIn{flex-direction:row;align-items:center;justify-content:space-between;gap:10px;margin:0 0 8px;letter-spacing:.02em;text-transform:none;font-size:13px}
.nfBal .tlNum.nfIn input{width:108px;font-size:15px;padding:7px 10px}
.nfBars{display:flex;flex-direction:column;gap:8px;margin:12px 0 4px}
.nfBarRow{display:grid;grid-template-columns:72px minmax(0,1fr) 72px;align-items:center;gap:8px;font:600 12.5px var(--font-display);color:var(--text-muted)}
.nfBarRow b{font:700 13px var(--font-display);color:var(--text);text-align:right}
.nfBar{display:flex;height:18px;border-radius:9px;background:var(--surface-alt,#f1f5f9);overflow:hidden;border:1px solid var(--border)}
.nfBar i{display:block;height:100%;transition:width .25s}
.nfE0{background:#0d9488}.nfE1{background:#2dd4bf}.nfE2{background:#99f6e4}
.nfS0{background:#4f46e5}.nfS1{background:#818cf8}.nfS2{background:#a5b4fc}.nfS3{background:#c7d2fe}
[data-theme="dark"] .nfE0{background:#2dd4bf}[data-theme="dark"] .nfE1{background:#14b8a6}[data-theme="dark"] .nfE2{background:#0f766e}
[data-theme="dark"] .nfS0{background:#a5b4fc}[data-theme="dark"] .nfS1{background:#818cf8}[data-theme="dark"] .nfS2{background:#6366f1}[data-theme="dark"] .nfS3{background:#4338ca}
/* Eina «favi-explora»: avantbraç amb FAVI, thrill animat i buf sintetitzat */
.nfArmBox{margin:10px 0 8px;padding:8px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
.nfArm{display:block;width:100%;max-width:440px;height:auto;margin:0 auto}
.nfArm .nfArmSkin{fill:#fde7d6;stroke:#d6a98a;stroke-width:1.2}
.nfArm .nfArmA{fill:none;stroke:#dc2626;stroke-width:5;stroke-linecap:round;opacity:.8}
.nfArm .nfArmV{fill:none;stroke:#2563eb;stroke-width:8;stroke-linecap:round;opacity:.7}
.nfArm .nfArmAn{fill:none;stroke:#b45309;stroke-width:2.4}
.nfArm .nfArmT{font:600 10px var(--font-body);fill:#475569;text-anchor:middle}
.nfArm .nfArmTA{fill:#b91c1c}.nfArm .nfArmTV{fill:#1d4ed8}
.nfArm .nfThrill path{fill:none;stroke:#0d9488;stroke-width:2;stroke-linecap:round;opacity:0}
.nfArmBox.palp .nfThrill path{animation:nfThr 1s ease-out infinite}
.nfArmBox.palp .nfThrill path:nth-child(2){animation-delay:.18s}.nfArmBox.palp .nfThrill path:nth-child(3){animation-delay:.36s}
@keyframes nfThr{0%{opacity:0}30%{opacity:.95}100%{opacity:0}}
.nfArmBox[data-live="0"] .nfArmV{stroke:#94a3b8;opacity:.55}
.nfArmBox[data-live="0"] .nfArmAn{stroke:#64748b;stroke-dasharray:3 3}
.nfActs{display:flex;flex-wrap:wrap;gap:8px}
.nfAct{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;border:1px solid #0d9488;background:var(--surface);color:#0f766e;font:600 14px var(--font-display);cursor:pointer}
.nfAct.on{background:#0d9488;color:#fff}
.nfSynth{display:block;margin-top:6px;color:var(--text-muted)}
.nfQt{margin-top:16px}
.nfQ{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.nfQ li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;align-items:center;padding:8px 10px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.nfQ li > span{font-size:14px;line-height:1.4;color:var(--text)}
.nfQ li > div{display:inline-flex;gap:6px}
.nfQ button{min-width:44px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:600 13px var(--font-display);cursor:pointer}
.nfQ li.ans button{cursor:default;opacity:.6}.nfQ li.ans button.pick{opacity:1}
.nfQ li.ok{border-color:rgba(13,148,136,.45);background:rgba(13,148,136,.06)}.nfQ li.ok button.pick{background:#0d9488;border-color:#0d9488;color:#fff}
.nfQ li.ko{border-color:rgba(180,83,9,.45)}.nfQ li.ko button.pick{background:rgba(180,83,9,.12);border-color:#b45309;color:#92400e}
.nfQ li p{grid-column:1/-1;margin:2px 0 0;font-size:13.5px;line-height:1.45;color:var(--text-muted)}
[data-theme="dark"] .nfArm .nfArmSkin{fill:#3b2f2a;stroke:#7c5c4a}[data-theme="dark"] .nfArm .nfArmA{stroke:#f87171}[data-theme="dark"] .nfArm .nfArmV{stroke:#60a5fa}
[data-theme="dark"] .nfArm .nfArmAn{stroke:#fbbf24}[data-theme="dark"] .nfArm .nfArmT{fill:#cbd5e1}[data-theme="dark"] .nfArm .nfArmTA{fill:#fca5a5}[data-theme="dark"] .nfArm .nfArmTV{fill:#93c5fd}
[data-theme="dark"] .nfArm .nfThrill path{stroke:#2dd4bf}[data-theme="dark"] .nfAct{border-color:#2dd4bf;color:#5eead4}[data-theme="dark"] .nfAct.on{background:#2dd4bf;color:#04201d}
[data-theme="dark"] .nfQ li.ok{border-color:rgba(45,212,191,.45);background:rgba(45,212,191,.08)}[data-theme="dark"] .nfQ li.ok button.pick{background:#2dd4bf;border-color:#2dd4bf;color:#04201d}
[data-theme="dark"] .nfQ li.ko{border-color:rgba(251,191,36,.45)}[data-theme="dark"] .nfQ li.ko button.pick{background:rgba(251,191,36,.14);border-color:#fbbf24;color:#fbbf24}
@media (prefers-reduced-motion:reduce){.nfArmBox.palp .nfThrill path{animation:none;opacity:.8}}
/* Eina «sondatge-pas»: la sonda avança per la uretra (dona/home), calibre i rentat continu */
.nfSvWrap{display:grid;grid-template-columns:220px minmax(0,1fr);gap:14px;align-items:start;margin:10px 0}
.nfSvWrap > div{display:flex;flex-direction:column;gap:10px}
.nfSv{display:block;width:100%;height:auto;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
.nfSv .nfSvBl{fill:#fde68a;stroke:#b45309;stroke-width:1.4}
.nfSv .nfSvPr{fill:#e9d5ff;stroke:#7c3aed;stroke-width:1.2}
.nfSv .nfSvU{fill:none;stroke:#e7b98f;stroke-width:9;stroke-linecap:round}
.nfSv .nfSvC{fill:none;stroke:#0d9488;stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset .9s ease}
.nfSv .nfSvBal{fill:#a5b4fc;stroke:#6366f1;stroke-width:1.2;transition:opacity .4s}
.nfSv .nfSvBag{transition:opacity .4s}.nfSv .nfSvBag rect{fill:#fef3c7;stroke:#b45309;stroke-width:1.2}
.nfSv .nfSvTube{fill:none;stroke:#0d9488;stroke-width:2.4;stroke-linecap:round}
.nfSv .nfSvT{font:600 10px var(--font-body);fill:#475569;text-anchor:middle}.nfSv .nfSvLen{text-anchor:start;font-weight:700;fill:#0f766e}
.nfSvCalc{margin-top:6px}
.nfChRow{display:flex;align-items:center;gap:12px;margin-top:8px}
.nfChRow p{margin:0;font-size:13.5px;line-height:1.45;color:var(--text-muted)}
.nfChDot{flex:none;display:block;border-radius:50%;background:#0d9488;box-shadow:0 0 0 3px rgba(13,148,136,.18)}
[data-theme="dark"] .nfSv .nfSvBl{fill:#78350f;stroke:#fbbf24}[data-theme="dark"] .nfSv .nfSvPr{fill:rgba(167,139,250,.3);stroke:#c4b5fd}[data-theme="dark"] .nfSv .nfSvU{stroke:#7c5c4a}
[data-theme="dark"] .nfSv .nfSvC,[data-theme="dark"] .nfSv .nfSvTube{stroke:#2dd4bf}[data-theme="dark"] .nfSv .nfSvBal{fill:rgba(165,180,252,.55);stroke:#a5b4fc}
[data-theme="dark"] .nfSv .nfSvBag rect{fill:rgba(251,191,36,.16);stroke:#fbbf24}[data-theme="dark"] .nfSv .nfSvT{fill:#cbd5e1}[data-theme="dark"] .nfSv .nfSvLen{fill:#5eead4}
[data-theme="dark"] .nfChDot{background:#2dd4bf}
@media (max-width:600px){.nfSvWrap{grid-template-columns:1fr}.nfSv{max-width:260px;margin:0 auto}.nfBarRow{grid-template-columns:64px minmax(0,1fr) 64px}.nfBal .tlNum.nfIn input{width:96px}}
@media (prefers-reduced-motion:reduce){.nfSv .nfSvC{transition:none}}

/* calc-kdigo: risc en barra d'un sol color (sense semàfor) */
.kdBar{display:inline-flex;gap:3px;margin-left:8px;vertical-align:middle}
.kdBar i{width:14px;height:6px;border-radius:3px;background:var(--border)}
.kdBar i.on{background:#0d9488}
[data-theme="dark"] .kdBar i.on{background:#2dd4bf}

/* ===== Repàs hemato-onco ===== */
/* Figures (_figs-hemato.js): 260 d'ample, colors per classe amb variant fosca; categories, mai semàfor de magnitud */
:is(#content,.lsMain) .blk .blkFig.hmFig,:is(#content,.lsMain) .blk-diagrama > .blkFig.hmFig{max-width:400px}
@media (max-width:600px){:is(#content,.lsMain) .blkFig.hmFig svg{min-width:0!important}}
.blkFig .ft.hmB{font-weight:700}.blkFig .ft.fs.hmB{font-weight:700}
.blkFig .ft.hmBig{font-size:12.5px;font-weight:800}
.blkFig .ft.hmNum{font-size:10px;font-weight:700}
.blkFig .ft.hmMkT{font-size:8.5px;font-weight:800;fill:#fff}
.blkFig .hmT{fill:#f0fdfa;stroke:#0d9488}.blkFig .hmT2{fill:#ccfbf1;stroke:#0d9488}
.blkFig .hmI{fill:#eef2ff;stroke:#6366f1}.blkFig .hmI2{fill:#c7d2fe;stroke:#6366f1}
.blkFig .hmA{fill:#fffbeb;stroke:#d97706}.blkFig .hmV{fill:#f5f3ff;stroke:#7c3aed}
.blkFig .hmP{fill:#fce7f3;stroke:#db2777}.blkFig .hmG{fill:#f8fafc;stroke:#94a3b8}
.blkFig .hmR{fill:#fef2f2;stroke:#dc2626}.blkFig .hmTag{fill:#eef2ff;stroke:#818cf8}
.blkFig .ft.hmTt{fill:#0f766e}.blkFig .ft.hmTi{fill:#4338ca}.blkFig .ft.hmTa{fill:#92400e}.blkFig .ft.hmTv{fill:#6d28d9}.blkFig .ft.hmTp{fill:#be185d}.blkFig .ft.hmTr{fill:#b91c1c}
.blkFig .hmLt{stroke:#0d9488}.blkFig .hmLi{stroke:#6366f1}.blkFig .hmLa{stroke:#d97706}.blkFig .hmLg{stroke:#94a3b8}.blkFig .hmLv{stroke:#7c3aed}
.blkFig .hmMt{fill:#0d9488}.blkFig .hmMi{fill:#6366f1}.blkFig .hmMa{fill:#d97706}.blkFig .hmMg{fill:#94a3b8}.blkFig .hmMv{fill:#7c3aed}
.blkFig .hmMk{fill:#0d9488;stroke:#fff;stroke-width:1.2}
.blkFig .hmGuide{fill:none;stroke:#cbd5e1;stroke-width:1;stroke-dasharray:2 3}
.blkFig .hmBody{fill:#f8fafc;stroke:#94a3b8}
.blkFig .hmOrgA{fill:#fed7aa;stroke:#c2410c}.blkFig .hmOrgA2{fill:#fef3c7;stroke:#d97706}.blkFig .hmOrgV{fill:#ede9fe;stroke:#7c3aed}.blkFig .hmOrgI{fill:#e0e7ff;stroke:#6366f1}
.blkFig .hmColon{stroke:#0d9488;opacity:.45}
.blkFig .hmVes{stroke:#bfdbfe}.blkFig .hmVesR{fill:none;stroke:#fecaca}.blkFig .hmHeart{fill:#fee2e2;stroke:#f87171}.blkFig .hmTip{fill:#fff;stroke:#0d9488;stroke-width:2}
.blkFig .hmCellX{fill:#fdf2f8;stroke:#db2777}.blkFig .hmNuc{fill:#fce7f3;stroke:#be185d}
.blkFig .hmGlow{fill:#fde68a;opacity:.6}
.blkFig .hmArcG{stroke:#e2e8f0}.blkFig .hmArcT{stroke:#99f6e4}.blkFig .hmArcI{stroke:#c7d2fe}
.blkFig .hmQ0{fill:#eef2ff;stroke:#6366f1}.blkFig .hmQ1{fill:#e0e7ff;stroke:#6366f1}.blkFig .hmQ2{fill:#c7d2fe;stroke:#6366f1}.blkFig .hmQ3{fill:#a5b4fc;stroke:#6366f1}.blkFig .hmQ4{fill:#818cf8;stroke:#4f46e5}
.blkFig .ft.hmQt0,.blkFig .ft.hmQt1,.blkFig .ft.hmQt2,.blkFig .ft.hmQt3,.blkFig .ft.hmQt4{fill:#1e1b4b}
.blkFig .hmGlass{stroke:#7dd3fc;opacity:.9}
.blkFig .hmBin{fill:#eff6ff;stroke:#2563eb}.blkFig .hmBinL{fill:#2563eb}.blkFig .hmBinF{fill:#bfdbfe;opacity:.8}
.blkFig .hmFlow{animation:hmFlow 1.2s linear infinite}
@keyframes hmFlow{to{stroke-dashoffset:-16}}
@media (prefers-reduced-motion:reduce){.blkFig .hmDot{display:none}.blkFig .hmFlow{animation:none}}
[data-theme="dark"] .blkFig .hmT{fill:rgba(45,212,191,.08);stroke:#2dd4bf}[data-theme="dark"] .blkFig .hmT2{fill:rgba(45,212,191,.18);stroke:#2dd4bf}
[data-theme="dark"] .blkFig .hmI{fill:rgba(165,180,252,.1);stroke:#a5b4fc}[data-theme="dark"] .blkFig .hmI2{fill:rgba(165,180,252,.28);stroke:#a5b4fc}
[data-theme="dark"] .blkFig .hmA{fill:rgba(251,191,36,.1);stroke:#fbbf24}[data-theme="dark"] .blkFig .hmV{fill:rgba(196,181,253,.1);stroke:#c4b5fd}
[data-theme="dark"] .blkFig .hmP{fill:rgba(244,114,182,.14);stroke:#f472b6}[data-theme="dark"] .blkFig .hmG{fill:rgba(148,163,184,.08);stroke:#64748b}
[data-theme="dark"] .blkFig .hmR{fill:rgba(248,113,113,.1);stroke:#f87171}[data-theme="dark"] .blkFig .hmTag{fill:rgba(165,180,252,.12);stroke:#818cf8}
[data-theme="dark"] .blkFig .ft.hmTt{fill:#5eead4}[data-theme="dark"] .blkFig .ft.hmTi{fill:#c7d2fe}[data-theme="dark"] .blkFig .ft.hmTa{fill:#fbbf24}[data-theme="dark"] .blkFig .ft.hmTv{fill:#c4b5fd}[data-theme="dark"] .blkFig .ft.hmTp{fill:#f9a8d4}[data-theme="dark"] .blkFig .ft.hmTr{fill:#fca5a5}
[data-theme="dark"] .blkFig .hmLt{stroke:#2dd4bf}[data-theme="dark"] .blkFig .hmLi{stroke:#a5b4fc}[data-theme="dark"] .blkFig .hmLa{stroke:#fbbf24}[data-theme="dark"] .blkFig .hmLg{stroke:#64748b}[data-theme="dark"] .blkFig .hmLv{stroke:#c4b5fd}
[data-theme="dark"] .blkFig .hmMt{fill:#2dd4bf}[data-theme="dark"] .blkFig .hmMi{fill:#a5b4fc}[data-theme="dark"] .blkFig .hmMa{fill:#fbbf24}[data-theme="dark"] .blkFig .hmMg{fill:#64748b}[data-theme="dark"] .blkFig .hmMv{fill:#c4b5fd}
[data-theme="dark"] .blkFig .hmMk{fill:#0d9488;stroke:#0f172a}
[data-theme="dark"] .blkFig .hmGuide{stroke:#334155}
[data-theme="dark"] .blkFig .hmBody{fill:#1e293b;stroke:#64748b}
[data-theme="dark"] .blkFig .hmOrgA{fill:rgba(251,146,60,.3);stroke:#fb923c}[data-theme="dark"] .blkFig .hmOrgA2{fill:rgba(251,191,36,.22);stroke:#fbbf24}[data-theme="dark"] .blkFig .hmOrgV{fill:rgba(196,181,253,.3);stroke:#c4b5fd}[data-theme="dark"] .blkFig .hmOrgI{fill:rgba(165,180,252,.3);stroke:#a5b4fc}
[data-theme="dark"] .blkFig .hmColon{stroke:#2dd4bf;opacity:.5}
[data-theme="dark"] .blkFig .hmVes{stroke:rgba(96,165,250,.45)}[data-theme="dark"] .blkFig .hmVesR{stroke:rgba(248,113,113,.4)}[data-theme="dark"] .blkFig .hmHeart{fill:rgba(248,113,113,.18);stroke:#f87171}[data-theme="dark"] .blkFig .hmTip{fill:#0f172a;stroke:#2dd4bf}
[data-theme="dark"] .blkFig .hmCellX{fill:rgba(244,114,182,.1);stroke:#f472b6}[data-theme="dark"] .blkFig .hmNuc{fill:rgba(244,114,182,.2);stroke:#f9a8d4}
[data-theme="dark"] .blkFig .hmGlow{fill:rgba(251,191,36,.35)}
[data-theme="dark"] .blkFig .hmArcG{stroke:#334155}[data-theme="dark"] .blkFig .hmArcT{stroke:rgba(45,212,191,.45)}[data-theme="dark"] .blkFig .hmArcI{stroke:rgba(165,180,252,.45)}
[data-theme="dark"] .blkFig .hmQ0{fill:rgba(129,140,248,.1);stroke:#818cf8}[data-theme="dark"] .blkFig .hmQ1{fill:rgba(129,140,248,.22);stroke:#818cf8}[data-theme="dark"] .blkFig .hmQ2{fill:rgba(129,140,248,.36);stroke:#818cf8}[data-theme="dark"] .blkFig .hmQ3{fill:rgba(129,140,248,.52);stroke:#a5b4fc}[data-theme="dark"] .blkFig .hmQ4{fill:rgba(129,140,248,.7);stroke:#c7d2fe}
[data-theme="dark"] .blkFig .ft.hmQt0,[data-theme="dark"] .blkFig .ft.hmQt1,[data-theme="dark"] .blkFig .ft.hmQt2,[data-theme="dark"] .blkFig .ft.hmQt3,[data-theme="dark"] .blkFig .ft.hmQt4{fill:#eef2ff}
[data-theme="dark"] .blkFig .hmBin{fill:rgba(96,165,250,.1);stroke:#60a5fa}[data-theme="dark"] .blkFig .hmBinL{fill:#60a5fa}[data-theme="dark"] .blkFig .hmBinF{fill:rgba(96,165,250,.3)}
/* Eina «transfusio-cicle»: passos del cicle amb comprovacions marcables */
.hmTrSteps button.hmOk{border-color:#0d9488}
.hmTrSteps button.hmOk i{background:#0d9488;color:#fff}
.hmTrCnt{font:600 12px var(--font-display);color:var(--text-muted)}
.hmChk{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}
.hmChk button{display:flex;align-items:flex-start;gap:9px;width:100%;text-align:left;padding:9px 11px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:400 14.5px/1.45 var(--font-body);cursor:pointer}
.hmChk button svg{flex:none;margin-top:2px;color:var(--text-muted)}
.hmChk button.on{border-color:rgba(13,148,136,.45);background:rgba(13,148,136,.08)}
.hmChk button.on svg{color:#0d9488}
.hmTrProg{justify-self:center;text-align:center;font:600 12.5px var(--font-display);color:var(--text-muted)}
[data-theme="dark"] .hmTrSteps button.hmOk{border-color:#2dd4bf}
[data-theme="dark"] .hmTrSteps button.hmOk i{background:#2dd4bf;color:#04201d}
[data-theme="dark"] .hmChk button.on{border-color:rgba(45,212,191,.5);background:rgba(45,212,191,.1)}
[data-theme="dark"] .hmChk button.on svg{color:#2dd4bf}
/* Eina «extravasacio-pas»: etiquetes del fàrmac (sense colors de gravetat) */
.hmExBadges{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.hmBadge{display:inline-block;padding:3px 10px;border-radius:999px;border:1px solid rgba(13,148,136,.35);background:rgba(13,148,136,.07);color:#0f766e;font:600 12.5px var(--font-display)}
[data-theme="dark"] .hmBadge{border-color:rgba(45,212,191,.4);background:rgba(45,212,191,.1);color:#5eead4}
.edTool[data-tool="extravasacio-pas"] .tlSel select{max-width:100%}
@media (max-width:600px){.hmChk button{font-size:14px;padding:8px 10px}}

/* ===== Repàs infeccioses ===== */
/* Eina «cadena-epi»: la cadena epidemiològica en 6 baules, amb un punt que la recorre i la baula tallada */
.ceBox{display:grid;gap:10px}
.ceRing{display:block;width:100%;max-width:340px;margin:0 auto;height:auto}
.ceArc{fill:none;stroke:#0d9488;stroke-width:3;stroke-linecap:round;opacity:.55}
.ceArc.dead{stroke:#94a3b8;stroke-dasharray:3 5;opacity:.6}
.ceDot{fill:#d97706;stroke:#fff;stroke-width:1.5}
.ceDot.stop{fill:#94a3b8}
.ceNode{cursor:pointer}
.ceNode circle{fill:var(--surface,#fff);stroke:#0d9488;stroke-width:1.8}
.ceNode .ceNi{color:#0f766e}
.ceNode.on circle{fill:#0d9488}
.ceNode.on .ceNi{color:#fff}
.ceCut{fill:none;stroke:#b91c1c;stroke-width:2.6;stroke-linecap:round;display:none}
.ceNode.cut .ceCut{display:inline}
.ceNode.cut circle{stroke:#b91c1c;stroke-dasharray:3 3}
.ceMid{font:700 12.5px var(--font-display,system-ui);fill:var(--text,#0f172a);text-anchor:middle}
.ceMid2{font:500 10.5px var(--font-body,system-ui);fill:var(--text-muted,#64748b);text-anchor:middle}
.ceBox.isCut .ceMid{fill:#b91c1c}
.ceBtns{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.ceBtns button{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:500 13px var(--font-body);cursor:pointer}
.ceBtns button i{font-style:normal;display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--border);font:700 11px var(--font-display)}
.ceBtns button.on{border-color:#0d9488;background:rgba(13,148,136,.1);color:#0f766e;font-weight:600}
.ceBtns button.on i{background:#0d9488;color:#fff}
.ceCard{border:1px solid var(--border);border-radius:12px;padding:12px 14px;background:var(--surface)}
.ceHd{display:flex;align-items:center;gap:8px;color:#0f766e;font:700 15px var(--font-display);margin-bottom:6px}
.ceRow{margin-top:6px}
.ceRow small{display:block;font:700 11px var(--font-display);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}
.ceRow p{margin:2px 0 0;font-size:14.5px;line-height:1.5;color:var(--text)}
.ceCutRow{border-left:3px solid #0d9488;padding-left:10px}
.ceTall{margin-top:10px;padding:7px 12px;border-radius:10px;border:1px solid #b91c1c;background:transparent;color:#b91c1c;font:600 13px var(--font-body);cursor:pointer}
[data-theme="dark"] .ceArc{stroke:#2dd4bf}
[data-theme="dark"] .ceArc.dead{stroke:#64748b}
[data-theme="dark"] .ceDot{stroke:#0f172a;fill:#fbbf24}
[data-theme="dark"] .ceNode circle{fill:#0f172a;stroke:#2dd4bf}
[data-theme="dark"] .ceNode .ceNi{color:#5eead4}
[data-theme="dark"] .ceNode.on circle{fill:#0d9488}
[data-theme="dark"] .ceNode.on .ceNi{color:#fff}
[data-theme="dark"] .ceCut{stroke:#f87171}
[data-theme="dark"] .ceNode.cut circle{stroke:#f87171}
[data-theme="dark"] .ceBox.isCut .ceMid{fill:#fca5a5}
[data-theme="dark"] .ceBtns button.on{background:rgba(45,212,191,.12);color:#5eead4;border-color:#2dd4bf}
[data-theme="dark"] .ceHd{color:#5eead4}
[data-theme="dark"] .ceCutRow{border-left-color:#2dd4bf}
[data-theme="dark"] .ceTall{border-color:#f87171;color:#fca5a5}

/* Eina «aillament-tipus»: habitació vista des de dalt, amb partícules i flux d'aire en directe */
.aiBox{display:grid;gap:10px}
.aiTabs{display:flex;flex-wrap:wrap;gap:6px}
.aiTabs button{flex:1 1 auto;padding:7px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:500 13.5px var(--font-body);cursor:pointer}
.aiTabs button.on{border-color:#0d9488;background:#0d9488;color:#fff;font-weight:600}
.aiSvg{display:block;width:100%;max-width:420px;margin:0 auto;height:auto;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.aiRoom{fill:rgba(148,163,184,.08);stroke:#64748b;stroke-width:2}
.aiDoor{stroke:var(--surface,#fff);stroke-width:5}
.aiBed{fill:#e2e8f0;stroke:#94a3b8}
.aiHead{fill:#fde68a;stroke:#d97706}
.aiSheet{fill:#ccfbf1;stroke:#5eead4}
.aiLb{font:600 9.5px var(--font-body,system-ui);fill:var(--text-muted,#64748b);text-anchor:middle}
.aiRule{stroke:#64748b;stroke-width:1.2;stroke-dasharray:3 3}
.aiFloor{stroke:#cbd5e1;stroke-width:1}
.aiC circle{fill:#0d9488;animation:aiPulse 1.6s ease-in-out infinite}
.aiC circle:nth-child(2n){animation-delay:.5s}
.aiHand path{fill:none;stroke:#0f766e;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.aiDrop{fill:#0d9488;animation:aiFall 2.2s ease-in infinite}
.aiNuc{fill:#0d9488;animation:aiDrift 4s ease-in-out infinite}
.aiHepa{fill:#e0f2fe;stroke:#0284c7}
.aiHepaT{font:700 8px var(--font-display,system-ui);fill:#0369a1;text-anchor:middle}
.aiFlow{fill:none;stroke:#0284c7;stroke-width:2;stroke-dasharray:5 4;marker-end:url(#aiArr);animation:aiFlowA 1s linear infinite}
.aiArrH{fill:#0284c7}
.aiPart{text-align:center;font:600 13.5px var(--font-display);color:#0f766e}
.aiGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}
.aiGrid > div{border:1px solid var(--border);border-radius:10px;padding:8px 10px;background:var(--surface)}
.aiGrid dt{font:700 11px var(--font-display);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}
.aiGrid dd{margin:3px 0 0;font-size:14px;line-height:1.45;color:var(--text)}
@media (max-width:600px){.aiGrid{grid-template-columns:1fr}}
@keyframes aiPulse{0%,100%{opacity:.35}50%{opacity:1}}
@keyframes aiFall{0%{transform:translate(0,0);opacity:0}10%{opacity:1}55%{transform:translate(60px,8px)}100%{transform:translate(92px,64px);opacity:.15}}
@keyframes aiDrift{0%,100%{transform:translate(0,0)}33%{transform:translate(12px,-8px)}66%{transform:translate(-8px,10px)}}
@keyframes aiFlowA{to{stroke-dashoffset:-18}}
@media (prefers-reduced-motion:reduce){.aiDrop,.aiNuc,.aiC circle,.aiFlow{animation:none}.aiDrop{transform:translate(60px,8px)}}
[data-theme="dark"] .aiRoom{fill:rgba(148,163,184,.06);stroke:#94a3b8}
[data-theme="dark"] .aiDoor{stroke:#0f172a}
[data-theme="dark"] .aiBed{fill:#334155;stroke:#64748b}
[data-theme="dark"] .aiHead{fill:#78350f;stroke:#fbbf24}
[data-theme="dark"] .aiSheet{fill:#134e4a;stroke:#2dd4bf}
[data-theme="dark"] .aiC circle,[data-theme="dark"] .aiDrop,[data-theme="dark"] .aiNuc{fill:#2dd4bf}
[data-theme="dark"] .aiHand path{stroke:#5eead4}
[data-theme="dark"] .aiHepa{fill:#0c4a6e;stroke:#38bdf8}
[data-theme="dark"] .aiHepaT{fill:#bae6fd}
[data-theme="dark"] .aiFlow{stroke:#38bdf8}
[data-theme="dark"] .aiArrH{fill:#38bdf8}
[data-theme="dark"] .aiTabs button.on{background:#0d9488;border-color:#2dd4bf}
[data-theme="dark"] .aiPart{color:#5eead4}
.ceNode circle.ceNum,.ceNode.on circle.ceNum{fill:#0f766e;stroke:#fff;stroke-width:1.2;stroke-dasharray:none}
.ceNode.cut circle.ceNum{fill:#b91c1c;stroke-dasharray:none}
.ceNumT{font:700 8.5px var(--font-display,system-ui);fill:#fff;text-anchor:middle;pointer-events:none}
[data-theme="dark"] .ceNode circle.ceNum{fill:#0d9488;stroke:#0f172a}
[data-theme="dark"] .ceNode.cut circle.ceNum{fill:#dc2626}
/* Figures estretes d'infeccioses (_figs-inf.js, 260 d'ample): una mica més grans quan floten al costat del text a l'ordinador */
:is(#content,.lsMain) .blk .blkFig.infN{width:min(330px,48%)}
@media (max-width:640px){:is(#content,.lsMain) .blk .blkFig.infN{width:100%;max-width:360px}}
.blkFig .ft.infK{fill:#0f766e;font-weight:700}
[data-theme="dark"] .blkFig .ft.infK{fill:#5eead4}

/* ===== Figures flotants: més grans a l'escriptori (les figures estretes del repàs, viewBox ~240-260, feien lletra de ~9 px) ===== */
@media (min-width:641px){:is(#content,.lsMain) .blk .blkFig{width:min(340px,48%)}}
@media (max-width:640px){:is(#content,.lsMain) .blk .blkFig{max-width:360px}}

/* ===== Repàs dermato-upp ===== */
/* Eines «upp-cos» (prominències per posició + rellotge de canvis), «aposit-llit» (apòsit segons el llit) i «cremada-cos» (regla dels 9 + Parkland) */
.duBox{display:grid;gap:10px}
.duTabs{display:flex;flex-wrap:wrap;gap:6px}
.duTabs button{flex:1 1 auto;padding:7px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:500 13.5px var(--font-body);cursor:pointer}
.duTabs button.on{border-color:#0d9488;background:#0d9488;color:#fff;font-weight:600}
.duSvg{display:block;width:100%;max-width:440px;margin:0 auto;height:auto;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.duBody{fill:#fde7d9;stroke:#d69e80;stroke-width:1.2}
.duLimb{fill:#f8d3bd;stroke:#d69e80;stroke-width:1}
.duBed{fill:#e2e8f0;stroke:#94a3b8;stroke-width:1}
.duChair{fill:#cbd5e1;stroke:#94a3b8;stroke-width:1}
.duChairL{stroke:#94a3b8;stroke-width:3;stroke-linecap:round}
.duFloor{stroke:#cbd5e1;stroke-width:1.2}
.duPt{cursor:pointer;outline:none}
.duPt .duDot{fill:#0d9488;stroke:#fff;stroke-width:1.6}
.duPt .duRing{fill:none;stroke:#0d9488;stroke-width:1.6;transform-box:fill-box;transform-origin:center;animation:duPulse 1.8s ease-out infinite}
.duPt text{font:700 8.5px var(--font-display,system-ui);fill:#fff;text-anchor:middle;pointer-events:none}
.duPt.on .duDot,.duPt:focus-visible .duDot{fill:#b45309}
.duPt.on .duRing{stroke:#b45309}
@keyframes duPulse{0%{transform:scale(1);opacity:.8}100%{transform:scale(2.1);opacity:0}}
@media (prefers-reduced-motion:reduce){.duPt .duRing{animation:none;opacity:0}}
.duList{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.duList button{display:inline-flex;align-items:center;gap:6px;padding:5px 10px 5px 5px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:500 13.5px var(--font-body);cursor:pointer;text-align:left}
.duList button i{font-style:normal;display:inline-grid;place-items:center;flex:0 0 20px;width:20px;height:20px;border-radius:50%;background:#0d9488;color:#fff;font:700 11px var(--font-display)}
.duList button.on{border-color:#b45309;color:#92400e;font-weight:600}
.duList button.on i{background:#b45309}
.duClockRow{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.duPlay{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;border:1px solid #0d9488;background:transparent;color:#0f766e;font:600 13.5px var(--font-body);cursor:pointer}
.duPlay.on{background:#0d9488;color:#fff}
.duPlay.on svg{animation:duSpin 2.2s linear infinite}
@keyframes duSpin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.duPlay.on svg{animation:none}}
.duHour{font:700 14px var(--font-display);color:var(--text)}
.duNote{margin:0;padding:9px 12px;border-left:3px solid #0d9488;background:rgba(13,148,136,.06);border-radius:0 10px 10px 0;font-size:14.5px;line-height:1.5;color:var(--text)}
.duSub{font:700 12px var(--font-display);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}
.duChips{display:flex;flex-wrap:wrap;gap:6px}
.duChips button{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:500 13.5px var(--font-body);cursor:pointer;text-align:left}
.duChips button i{flex:0 0 14px;width:14px;height:14px;border-radius:50%;background:var(--c);border:1px solid rgba(15,23,42,.25)}
.duChips button.on{border-color:#0d9488;background:rgba(13,148,136,.1);color:#0f766e;font-weight:600}
.duChips button:disabled{opacity:.45;cursor:default}
.duOut{border:1px solid var(--border);border-radius:12px;padding:12px 14px;background:var(--surface)}
.duOut ul{margin:10px 0 6px;padding-left:18px}
.duOut li{margin:0 0 6px;font-size:14.5px;line-height:1.5;color:var(--text)}
.duTime{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.duTime span{display:flex;flex-direction:column;align-items:center;padding:6px 4px;border-radius:10px;border:1px solid var(--border);font:500 11.5px var(--font-body);color:var(--text-muted)}
.duTime span b{font:800 17px var(--font-display);color:var(--text-muted)}
.duTime span.on{border-color:#0d9488;background:#0d9488;color:#fff}
.duTime span.on b{color:#fff}
.duBurn .duZ{cursor:pointer;outline:none}
.duBurn .duZ ellipse,.duBurn .duZ rect{fill:#fde7d9;stroke:#d69e80;stroke-width:1.2;transition:fill .15s}
.duBurn .duZ text{font:700 10px var(--font-display,system-ui);fill:#7c2d12;text-anchor:middle;pointer-events:none}
.duBurn .duZ:hover ellipse,.duBurn .duZ:hover rect{fill:#fed7aa}
.duBurn .duZ.on ellipse,.duBurn .duZ.on rect{fill:#ea580c;stroke:#9a3412}
.duBurn .duZ.on text{fill:#fff}
.duBurn .duZ:focus-visible ellipse,.duBurn .duZ:focus-visible rect{stroke:#0d9488;stroke-width:2.4}
.duCap{font:600 11px var(--font-body,system-ui);fill:var(--text-muted,#64748b);text-anchor:middle}
.duClear{justify-self:start;padding:6px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:500 13px var(--font-body);cursor:pointer}
[data-theme="dark"] .duTabs button.on{background:#0d9488;border-color:#2dd4bf}
[data-theme="dark"] .duBody{fill:#4a3328;stroke:#c9937a}
[data-theme="dark"] .duLimb{fill:#5c3f31;stroke:#c9937a}
[data-theme="dark"] .duBed{fill:#1e293b;stroke:#475569}
[data-theme="dark"] .duChair{fill:#334155;stroke:#475569}
[data-theme="dark"] .duChairL{stroke:#475569}
[data-theme="dark"] .duFloor{stroke:#334155}
[data-theme="dark"] .duPt .duDot{fill:#14b8a6;stroke:#0f172a}
[data-theme="dark"] .duPt .duRing{stroke:#2dd4bf}
[data-theme="dark"] .duPt text{fill:#0f172a}
[data-theme="dark"] .duPt.on .duDot{fill:#f59e0b}
[data-theme="dark"] .duPt.on .duRing{stroke:#f59e0b}
[data-theme="dark"] .duList button i{background:#14b8a6;color:#0f172a}
[data-theme="dark"] .duList button.on{border-color:#f59e0b;color:#fcd34d}
[data-theme="dark"] .duList button.on i{background:#f59e0b}
[data-theme="dark"] .duPlay{border-color:#2dd4bf;color:#5eead4}
[data-theme="dark"] .duPlay.on{background:#0d9488;color:#fff}
[data-theme="dark"] .duNote{border-left-color:#2dd4bf;background:rgba(45,212,191,.08)}
[data-theme="dark"] .duChips button i{border-color:rgba(255,255,255,.3)}
[data-theme="dark"] .duChips button.on{border-color:#2dd4bf;background:rgba(45,212,191,.12);color:#5eead4}
[data-theme="dark"] .duTime span.on{background:#0d9488;border-color:#2dd4bf}
[data-theme="dark"] .duBurn .duZ ellipse,[data-theme="dark"] .duBurn .duZ rect{fill:#4a3328;stroke:#c9937a}
[data-theme="dark"] .duBurn .duZ text{fill:#fed7aa}
[data-theme="dark"] .duBurn .duZ:hover ellipse,[data-theme="dark"] .duBurn .duZ:hover rect{fill:#7c3a1d}
[data-theme="dark"] .duBurn .duZ.on ellipse,[data-theme="dark"] .duBurn .duZ.on rect{fill:#ea580c;stroke:#fdba74}
[data-theme="dark"] .duBurn .duZ.on text{fill:#fff}
@media (max-width:600px){.duTabs button{font-size:13px;padding:6px 10px}.duTime span{font-size:10.5px}}
.duTabs button small{font-weight:500;opacity:.75;font-size:11.5px}
.duDir{margin:0;font:600 13.5px var(--font-body);color:var(--text-muted)}
.duDir strong{color:var(--text)}
@media (max-width:640px){.tlOut.duOut3{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.tlOut.duOut3>div{padding:8px 4px}.tlOut.duOut3 b{font-size:18px}.tlOut.duOut3 small{font-size:9.5px;letter-spacing:.03em}.tlOut.duOut3 span{font-size:11px}}
@media (max-width:600px){:is(#content,.lsMain) .blkFig.duFit svg{min-width:0!important}}

/* ===== Repàs traumatologia ===== */
/* Eines «fractura-tipus» (l'os es trenca en directe), «ptm-luxacio» (moviments que luxen la pròtesi de maluc) i «guix-alarma» (signes sota el guix) */
.trBox{display:grid;gap:10px}
.trGroup{display:grid;gap:5px}
.trSub{font:700 11.5px var(--font-display);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}
.trTabs,.trChips{display:flex;flex-wrap:wrap;gap:6px}
.trTabs button,.trChips button,.trSwitch button{padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:500 13.5px var(--font-body);cursor:pointer;text-align:left;line-height:1.3}
.trTabs button.on,.trSwitch button.on{border-color:#0d9488;background:#0d9488;color:#fff;font-weight:600}
.trChips button.on{border-color:#0d9488;background:rgba(13,148,136,.12);color:#0f766e;font-weight:600}
.trSwitch{display:inline-flex;flex-wrap:wrap;gap:6px}
.trSwitch button:disabled{opacity:.4;cursor:default}
.trSvg{display:block;width:100%;max-width:460px;height:auto;margin:0 auto;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.trSkin{fill:rgba(251,213,190,.45);stroke:#e7b99c;stroke-width:1}
.trWound{fill:none;stroke:#9f1239;stroke-width:3;stroke-linecap:round}
.trBone{fill:#f6f1e7;stroke:#94a3b8;stroke-width:1.3;stroke-linejoin:round}
.trFrag{transform-box:view-box;transform-origin:130px 62px;transition:transform .7s cubic-bezier(.3,1.4,.5,1)}
.trSpiral{fill:none;stroke:#64748b;stroke-width:1.2;stroke-dasharray:3 3}
.trBuckle path{fill:#f6f1e7;stroke:#0d9488;stroke-width:1.6}
.trBuckle{transform-box:view-box;transform-origin:57px 62px;transform:scaleY(.2);opacity:0;transition:transform .6s ease,opacity .6s ease}
.trBuckle.on{transform:none;opacity:1}
.trArrow{stroke:#0d9488;stroke-width:2.4}
.trArHead{fill:#0d9488}
.trPhysis{stroke:#0d9488;stroke-width:1.6;stroke-dasharray:3 2}
.trFadeOut{transition:opacity .7s ease}.trFadeOut.off{opacity:0}
.trFadeIn{opacity:0;transition:opacity .7s ease}.trFadeIn.on{opacity:1}
.trOut{border:1px solid var(--border);border-left:4px solid #64748b;border-radius:10px;padding:10px 12px;background:var(--surface)}
.trOut>b{display:flex;align-items:center;gap:7px;font:700 14.5px var(--font-display);color:var(--text)}
.trOut>b svg{flex:0 0 auto}
.trOut p{margin:5px 0 0;font-size:14px;line-height:1.5;color:var(--text)}
.trOut.ok{border-left-color:#0d9488}.trOut.ok>b{color:#0f766e}
.trOut.bad{border-left-color:#c2410c;background:rgba(194,65,12,.05)}.trOut.bad>b{color:#c2410c}
.trOut.warn{border-left-color:#b45309}.trOut.warn>b{color:#92400e}
.trOpenTxt{color:var(--text-muted)!important}
.trRes{display:grid;gap:8px}
/* pròtesi de maluc */
.trPtm{display:grid;grid-template-columns:minmax(0,200px) 1fr;gap:12px;align-items:start}
.trFig{max-width:220px}
.trActs{list-style:none;margin:0;padding:0;display:grid;gap:5px}
.trActs button{width:100%;display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:500 13.5px var(--font-body);cursor:pointer;text-align:left;line-height:1.3}
.trDot{flex:0 0 10px;width:10px;height:10px;border-radius:50%;background:#cbd5e1}
.trActs button.risk .trDot{background:#c2410c}
.trActs button.safe .trDot{background:#0d9488}
.trLegend{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}.trLegend .trDot{display:inline-block}.trLegend .trDot.r{background:#c2410c}.trLegend .trDot.s{background:#0d9488}
[data-theme="dark"] .trLegend .trDot.r{background:#fb923c}
.trActs button.on{border-color:#0d9488;box-shadow:0 0 0 2px rgba(13,148,136,.25);font-weight:600}
.trLimb{fill:#fde7d9;stroke:#d69e80;stroke-width:1.1}
.trPelvis{fill:#f6f1e7;stroke:#94a3b8;stroke-width:1.2}
.trHipPro{fill:none;stroke:#0d9488;stroke-width:2.4}
.trPatella{fill:#e8b89a}
.trLeg{transform-box:view-box;transform-origin:0 0;transition:transform .7s ease}
.trFoot{transform-box:view-box;transform-origin:0 126px;transition:transform .7s ease}
.trPatella{transition:transform .7s ease}
.trPillow{fill:#99f6e4;stroke:#0d9488;stroke-width:1.2;opacity:0;transition:opacity .5s ease}.trPillow.on{opacity:1}
.trLbl{font:600 11px var(--font-body);fill:var(--text-muted);text-anchor:middle}
.trFloor{stroke:#cbd5e1;stroke-width:1.4}
.trSeat{fill:#cbd5e1;stroke:#94a3b8}
.trTrunk,.trThigh{transform-box:view-box;transform-origin:84px 112px;transition:transform .7s ease}
.trShin{transform-box:view-box;transform-origin:139px 112px;transition:transform .7s ease}
.trArc{fill:none;stroke:#0d9488;stroke-width:2.2}
.trArc.bad{stroke:#c2410c}
.trAng{font:700 12px var(--font-display);fill:#0f766e}
.trAng.bad{fill:#c2410c}
/* guix */
.trGuix{display:grid;grid-template-columns:minmax(0,260px) 1fr;gap:12px;align-items:start}
.trCast{fill:#f1f5f9;stroke:#94a3b8;stroke-width:1.2}
.trCastL{stroke:#cbd5e1;stroke-width:1}
.trSkinH{fill:#fde7d9;stroke:#d69e80;stroke-width:1;transition:fill .5s ease}
.trFingers{transform-box:view-box;transform-origin:172px 87px;transition:transform .5s ease}
.trTaca ellipse{fill:#a16207;opacity:.35}
.trOlor path,.trHeat path{fill:none;stroke:#94a3b8;stroke-width:1.6;stroke-linecap:round}
.trZig path{fill:none;stroke:#7c3aed;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
.trPain circle{fill:none;stroke:#c2410c;stroke-width:1.8}
.trTaca,.trOlor,.trHeat,.trZig,.trPain{opacity:0;transition:opacity .4s ease}
.trGuix svg.s-taca .trTaca,.trGuix svg.s-olor .trOlor,.trGuix svg.s-calor .trHeat,.trGuix svg.s-form .trZig,.trGuix svg.s-sens .trZig,.trGuix svg.s-dprom .trPain,.trGuix svg.s-dnoced .trPain{opacity:1}
.trGuix svg.s-pal .trSkinH,.trGuix svg.s-fred .trSkinH{fill:#eef2f4}
.trGuix svg.s-cian .trSkinH{fill:#b8c4e6}
.trGuix svg.s-tum .trFingers{transform:scale(1.06,1.22)}
.trGuix svg.s-dnoced .trPain circle{stroke-width:2.6}
.trGuix svg.s-dprom .trPain circle,.trGuix svg.s-dnoced .trPain circle{animation:trPulse 1.4s ease-in-out infinite}
@keyframes trPulse{50%{opacity:.35}}
@media (prefers-reduced-motion:reduce){.trFrag,.trLeg,.trFoot,.trTrunk,.trThigh,.trShin,.trBuckle,.trFingers{transition:none}.trGuix svg .trPain circle{animation:none}}
.trSigns{display:grid;gap:8px}
[data-theme="dark"] .trSkin{fill:rgba(251,213,190,.16);stroke:#9a6b53}
[data-theme="dark"] .trOut.ok>b{color:#2dd4bf}
[data-theme="dark"] .trOut.bad{background:rgba(251,146,60,.08)}[data-theme="dark"] .trOut.bad>b,[data-theme="dark"] .trArc.bad+.trAng,[data-theme="dark"] .trAng.bad{color:#fb923c;fill:#fb923c}
[data-theme="dark"] .trArc.bad{stroke:#fb923c}
[data-theme="dark"] .trOut.warn>b{color:#fbbf24}
[data-theme="dark"] .trChips button.on{color:#5eead4;background:rgba(45,212,191,.12);border-color:#2dd4bf}
[data-theme="dark"] .trAng{fill:#5eead4}
[data-theme="dark"] .trArc{stroke:#2dd4bf}
[data-theme="dark"] .trCast{fill:#334155;stroke:#64748b}
[data-theme="dark"] .trCastL{stroke:#475569}
[data-theme="dark"] .trSeat{fill:#475569;stroke:#64748b}
[data-theme="dark"] .trFloor{stroke:#475569}
[data-theme="dark"] .trActs button.risk .trDot{background:#fb923c}
@media (max-width:600px){.trPtm,.trGuix{grid-template-columns:1fr}.trFig{max-width:240px}.trGuix .trFig{max-width:340px}}

/* ===== Repàs urgencies-rcp ===== */
/* Eines «rcp-metronom» (metrònom de compressions 110/min amb comptador 30:2 · 15:2 · 3:1) i «ovace-edat» (OVACE segons l'edat) */
.urMet,.urOv{display:grid;gap:10px}
.urMetStage{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
.urMetBeat{width:112px;height:112px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(13,148,136,.08);border:3px solid #0d9488;color:#0f766e;transition:transform .09s ease-out,background .09s}
.urMetBeat b{font:800 38px/1 var(--font-display,system-ui)}
.urMetBeat small{font:600 12px var(--font-body,system-ui);color:var(--text-muted)}
.urMetBeat.hit{animation:urHit .28s ease-out}
.urMetBeat.vent{border-color:#6366f1;color:#4338ca;background:rgba(99,102,241,.08)}
@keyframes urHit{0%{transform:scale(.9);background:rgba(13,148,136,.28)}100%{transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.urMetBeat.hit{animation:none}}
.urMetInfo{display:grid;gap:8px;min-width:0}
.urMetPhase{font:700 15.5px/1.35 var(--font-display,system-ui);color:var(--text)}
.urMetStats{display:flex;flex-wrap:wrap;gap:6px 14px;font:500 13px var(--font-body,system-ui);color:var(--text-muted)}
.urMetStats b{color:var(--text);font-weight:700}
.urMetBar{height:6px;border-radius:999px;background:var(--border);overflow:hidden}
.urMetBar i{display:block;height:100%;width:0;background:#0d9488;transition:width .12s linear}
.urMetCtl{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.urMetSnd{display:inline-flex;align-items:center;gap:6px;font:500 13.5px var(--font-body,system-ui);color:var(--text)}
.urMetSnd input{accent-color:#0d9488;width:16px;height:16px}
.urMetNote{margin:0;font-size:14px;line-height:1.5;color:var(--text-muted)}
.urMetMsg{margin:0;padding:9px 12px;border-left:3px solid #0d9488;background:rgba(13,148,136,.07);border-radius:0 10px 10px 0;font:600 14px/1.45 var(--font-body,system-ui);color:var(--text)}
.urOvOut{border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden}
.urOvHead{padding:10px 14px;font:700 15px/1.3 var(--font-display,system-ui);color:#fff;background:#0d9488}
.urOvHead.ok{background:#14b8a6;color:#042f2e}
.urOvHead.warn{background:#0f766e}
.urOvHead.bad{background:#134e4a}
.urOvSteps{list-style:none;margin:0;padding:10px 14px 12px;display:grid;gap:8px;counter-reset:urov}
.urOvSteps li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;align-items:start;font-size:14.5px;line-height:1.5;color:var(--text)}
.urOvI{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:rgba(13,148,136,.1);color:#0f766e}
[data-theme="dark"] .urMetBeat{background:rgba(45,212,191,.08);border-color:#2dd4bf;color:#5eead4}
[data-theme="dark"] .urMetBeat.vent{border-color:#a5b4fc;color:#c7d2fe;background:rgba(165,180,252,.1)}
[data-theme="dark"] .urMetBar i{background:#2dd4bf}
[data-theme="dark"] .urMetMsg{border-left-color:#2dd4bf;background:rgba(45,212,191,.08)}
[data-theme="dark"] .urOvHead.ok{background:#2dd4bf;color:#042f2e}
[data-theme="dark"] .urOvHead.warn{background:#0d9488}
[data-theme="dark"] .urOvHead.bad{background:#115e59}
[data-theme="dark"] .urOvI{background:rgba(45,212,191,.12);color:#5eead4}
@media (max-width:600px){.urMetStage{grid-template-columns:1fr;justify-items:center;text-align:center}.urMetStats{justify-content:center}.urMetBeat{width:100px;height:100px}.urMetBeat b{font-size:34px}}

/* ===== Repàs procediments-asepsia ===== */
/* Figures estretes del tema (_figs-proc.js, 260 d'ample): una mica més grans quan floten al costat del text a l'ordinador */
:is(#content,.lsMain) .blk .blkFig.prN{width:min(330px,48%)}
@media (max-width:640px){:is(#content,.lsMain) .blk .blkFig.prN{width:100%;max-width:360px}}
@media (max-width:600px){:is(#content,.lsMain) .blkFig.prN svg{min-width:0!important}}
/* Eina «injeccio-capes»: l'agulla entra amb l'angle de cada via i s'atura a la capa que toca */
.paInj,.paEpi{display:grid;gap:10px}
.paSkin{display:block;width:100%;max-width:460px;height:auto;margin:0 auto;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.paL0{fill:#fed7aa}.paL1{fill:#fecaca}.paL2{fill:#fef9c3}.paL3{fill:#fca5a5}
.paFib{stroke:#f87171;stroke-width:1;opacity:.55}
.paVein{fill:#93c5fd;stroke:#2563eb;stroke-width:1.4}
.paLb{font:600 10px var(--font-body,system-ui);fill:#7c2d12;text-anchor:end}
.paShaft{stroke:#475569;stroke-width:2.2;stroke-linecap:round}
.paTip{fill:none;stroke:#475569;stroke-width:1.4}
.paBarrel{fill:rgba(13,148,136,.16);stroke:#0d9488;stroke-width:1.5}
.paPlunger{fill:none;stroke:#0d9488;stroke-width:2;stroke-linecap:round}
.paNdl{transition:transform .9s cubic-bezier(.3,.7,.3,1)}
.paArc{fill:none;stroke:#0f766e;stroke-width:1.5;stroke-dasharray:3 2}
.paAng{font:700 12px var(--font-display,system-ui);fill:#0f766e;paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round}
.paBleb{fill:#fde68a;stroke:#b45309;stroke-width:1.2;opacity:0;transform-box:fill-box;transform-origin:center;transform:scale(.3);transition:opacity .4s ease,transform .4s ease}
.paBleb.on{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.paNdl,.paBleb{transition:none}}
.paRow{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.paAgain{display:inline-flex;align-items:center;gap:7px;padding:6px 13px;border-radius:999px;border:1px solid #0d9488;background:transparent;color:#0f766e;font:600 13.5px var(--font-body);cursor:pointer}
.paGrid dd{font-size:14.5px}
@media (max-width:600px){.aiGrid.paGrid{grid-template-columns:1fr 1fr}}
[data-theme="dark"] .paL0{fill:#7c4a2a}[data-theme="dark"] .paL1{fill:#6b2f35}[data-theme="dark"] .paL2{fill:#5c5325}[data-theme="dark"] .paL3{fill:#7f2d2d}
[data-theme="dark"] .paFib{stroke:#fca5a5}
[data-theme="dark"] .paLb{fill:#fde7d9}
[data-theme="dark"] .paVein{fill:#1e3a8a;stroke:#93c5fd}
[data-theme="dark"] .paShaft,[data-theme="dark"] .paTip{stroke:#e2e8f0}
[data-theme="dark"] .paBarrel{fill:rgba(45,212,191,.15);stroke:#2dd4bf}
[data-theme="dark"] .paPlunger,[data-theme="dark"] .paArc{stroke:#2dd4bf}
[data-theme="dark"] .paAng{fill:#5eead4;stroke:#0f172a}
[data-theme="dark"] .paAgain{border-color:#2dd4bf;color:#5eead4}
/* Eina «epi-ordre»: toca les peces de l'EPI en l'ordre correcte */
.paSeq{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}
.paSeq li{display:flex;align-items:center;gap:8px;min-height:44px;padding:6px 10px;border:1px dashed var(--border);border-radius:10px;background:var(--surface);font:500 14px var(--font-body);color:var(--text)}
.paSeq li i{font-style:normal;flex:0 0 22px;display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--border);color:var(--text-muted);font:700 12px var(--font-display)}
.paSeq li.ok{border-style:solid;border-color:#0d9488;background:rgba(13,148,136,.07)}
.paSeq li.ok i{background:#0d9488;color:#fff}
.paGap{flex:1;height:10px;border-radius:6px;background:rgba(148,163,184,.18)}
.paI{display:inline-grid;place-items:center;color:#0f766e}
.paPool{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;min-height:8px}
.paPool button{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:500 14px var(--font-body);cursor:pointer}
.paPool button:hover{border-color:#0d9488}
.paPool button.bad{border-color:#b91c1c;color:#b91c1c;animation:paShake .35s ease}
@keyframes paShake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
@media (prefers-reduced-motion:reduce){.paPool button.bad{animation:none}}
[data-theme="dark"] .paSeq li.ok{border-color:#2dd4bf;background:rgba(45,212,191,.08)}
[data-theme="dark"] .paI{color:#5eead4}
[data-theme="dark"] .paPool button.bad{border-color:#f87171;color:#fca5a5}
@media (max-width:600px){.paSeq{grid-template-columns:repeat(2,minmax(0,1fr))}.paSeq li{min-height:40px;padding:5px 8px;font-size:13.5px}.paPool button{font-size:13.5px}}

/* ===== Repàs pediatria ===== */
/* Figures estretes (viewBox ≤ 260): colors per classe amb variant fosca */
:is(#content,.lsMain) .blk .blkFig.pdN{width:min(330px,48%)}
@media (max-width:640px){:is(#content,.lsMain) .blk .blkFig.pdN{width:100%;max-width:360px}}
.blkFig .ft.pdT{fill:#0f766e;font-weight:700}.blkFig .ft.pdIT{fill:#4338ca;font-weight:700}
.blkFig .ft.pdRedT{fill:#b91c1c;font-weight:700}.blkFig .ft.pdAmbT{fill:#b45309;font-weight:700}.blkFig .ft.pdRose{fill:#9f1239}
.blkFig .ft.pdOn{fill:#fff}.blkFig .ft.pdNumT{fill:#fff;font-size:9px;font-weight:800}
.blkFig .pdNum{fill:#0d9488}.blkFig .pdDot{fill:#0f766e;stroke:#fff}.blkFig .pdChk{fill:#0d9488}
.blkFig .pdGrid{fill:none;stroke:#e2e8f0;stroke-width:1}.blkFig .pdRail{stroke:#99f6e4}
.blkFig .pdSkin{fill:#fef3c7;stroke:#d97706}.blkFig .pdInk{stroke:#78350f}.blkFig .pdFoldGap{stroke:#fef3c7}
.blkFig .pdBreast{fill:#fff1f2;stroke:#e11d48}.blkFig .pdThermo{fill:#fff;stroke:#6366f1}
.blkFig .pdTeal{fill:#ccfbf1;stroke:#0d9488}.blkFig .pdBlue{fill:#e0e7ff;stroke:#6366f1}.blkFig .pdRed{fill:#fee2e2;stroke:#dc2626}
.blkFig .pdAmb{fill:#fef3c7;stroke:#d97706}.blkFig .pdPlac{fill:#fce7f3;stroke:#db2777}.blkFig .pdGum{stroke:#fecdd3}
.blkFig .pdPanel{fill:#f8fafc;stroke:#e2e8f0;stroke-width:1}
[data-theme="dark"] .blkFig .ft.pdT{fill:#5eead4}[data-theme="dark"] .blkFig .ft.pdIT{fill:#c7d2fe}
[data-theme="dark"] .blkFig .ft.pdRedT{fill:#fca5a5}[data-theme="dark"] .blkFig .ft.pdAmbT{fill:#fbbf24}[data-theme="dark"] .blkFig .ft.pdRose{fill:#fda4af}
[data-theme="dark"] .blkFig .pdDot{stroke:#0f172a;fill:#2dd4bf}[data-theme="dark"] .blkFig .pdGrid{stroke:#334155}[data-theme="dark"] .blkFig .pdRail{stroke:#134e4a}
[data-theme="dark"] .blkFig .pdSkin{fill:rgba(251,191,36,.16);stroke:#fbbf24}[data-theme="dark"] .blkFig .pdInk{stroke:#fde68a}[data-theme="dark"] .blkFig .pdFoldGap{stroke:#3a3320}
[data-theme="dark"] .blkFig .pdBreast{fill:rgba(244,63,94,.14);stroke:#fb7185}[data-theme="dark"] .blkFig .pdThermo{fill:#1e293b;stroke:#a5b4fc}
[data-theme="dark"] .blkFig .pdTeal{fill:rgba(45,212,191,.16);stroke:#2dd4bf}[data-theme="dark"] .blkFig .pdBlue{fill:rgba(129,140,248,.2);stroke:#a5b4fc}
[data-theme="dark"] .blkFig .pdRed{fill:rgba(248,113,113,.2);stroke:#f87171}[data-theme="dark"] .blkFig .pdAmb{fill:rgba(251,191,36,.16);stroke:#fbbf24}
[data-theme="dark"] .blkFig .pdPlac{fill:rgba(236,72,153,.16);stroke:#f472b6}[data-theme="dark"] .blkFig .pdGum{stroke:rgba(251,113,133,.3)}
[data-theme="dark"] .blkFig .pdPanel{fill:rgba(148,163,184,.06);stroke:#334155}
/* Eines: pèrdua de pes del nounat (indicador d'un sol color), llistes de resultats */
.pdGaugeWrap{max-width:420px;margin:6px auto 2px}
.pdGauge{display:block;width:100%;height:auto}
.pdGauge .pdgZ1{fill:#ccfbf1}.pdGauge .pdgZ2{fill:#5eead4}.pdGauge .pdgZ3{fill:#0f766e}
.pdGauge .pdgT{font:600 10px var(--font-body,system-ui);fill:var(--text-muted);text-anchor:middle}
.pdGauge .pdgM{fill:var(--text)}.pdGauge .pdgL{stroke:var(--text);stroke-width:2}
.pdList{margin:6px 0 0;padding-left:18px}.pdList li{margin:3px 0;font-size:14px;line-height:1.45;color:var(--text)}
[data-theme="dark"] .pdGauge .pdgZ1{fill:#134e4a}[data-theme="dark"] .pdGauge .pdgZ2{fill:#0f766e}[data-theme="dark"] .pdGauge .pdgZ3{fill:#5eead4}

/* ===== Repàs embaras-ginecologia ===== */
/* Figures estretes (viewBox 260): colors per classe amb variant fosca */
:is(#content,.lsMain) .blk .blkFig.egN{width:min(330px,48%)}
@media (max-width:640px){:is(#content,.lsMain) .blk .blkFig.egN{width:100%;max-width:360px}}
.blkFig .ft.egTt{fill:#0f766e;font-weight:700}.blkFig .ft.egTi{fill:#4338ca;font-weight:700}.blkFig .ft.egTa{fill:#b45309;font-weight:700}
.blkFig .ft.egTp{fill:#be185d;font-weight:700}.blkFig .ft.egTr{fill:#b91c1c;font-weight:700}.blkFig .ft.egOn{fill:#fff}
.blkFig .ft.egNumT{fill:#fff;font-size:9px;font-weight:800}.blkFig .egNum{fill:#0d9488}
.blkFig .egBandT{fill:#ccfbf1}.blkFig .egBandI{fill:#e0e7ff}.blkFig .egBandA{fill:#fef3c7}.blkFig .egBandR{fill:#fee2e2}.blkFig .egBandG{fill:#e2e8f0}
.blkFig .egOvu{stroke:#d97706;stroke-width:1.3;stroke-dasharray:4 3;fill:none}
.blkFig .egLnT,.blkFig .egLnA,.blkFig .egLnP,.blkFig .egLnI{fill:none;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}
.blkFig .egLnT{stroke:#0d9488}.blkFig .egLnA{stroke:#d97706}.blkFig .egLnP{stroke:#db2777}.blkFig .egLnI{stroke:#4f46e5}
.blkFig .egEndo{fill:#fecdd3;stroke:#e11d48;stroke-width:1.2}.blkFig .egEndoC{fill:#fde68a;stroke:#d97706;stroke-width:1}
.blkFig .egUter,.blkFig .egUterW{fill:#fff1f2;stroke:#e11d48;stroke-width:1.6}.blkFig .egUterH{stroke-width:3.4}
.blkFig .egTube{fill:none;stroke:#0d9488;stroke-width:7;stroke-linecap:round;opacity:.7}.blkFig .egFimb{stroke:#0d9488;stroke-width:2;stroke-linecap:round}
.blkFig .egOvary{fill:#ede9fe;stroke:#7c3aed;stroke-width:1.2}.blkFig .egPath{fill:none;stroke:#94a3b8;stroke-width:1.2;stroke-dasharray:3 3}
.blkFig .egFetus{fill:#fde68a;stroke:#d97706;stroke-width:1}
.blkFig .egPlacS{fill:none;stroke:#7c3aed;stroke-width:11;stroke-linecap:round;opacity:.85}.blkFig .egHemaS{fill:none;stroke:#7f1d1d;stroke-width:6;stroke-linecap:round}
.blkFig .egPlac{fill:#7c3aed}.blkFig .egHema{fill:#7f1d1d}.blkFig .egBlood{fill:#dc2626}.blkFig .egBloodD{fill:#7f1d1d}
.blkFig .egDot{fill:#0f766e;stroke:#fff;stroke-width:1}.blkFig .egLead{fill:none;stroke:#94a3b8;stroke-width:1;stroke-dasharray:2 2}.blkFig .egLeadS{fill:none;stroke:#94a3b8;stroke-width:1.2}
.blkFig .egTerme{fill:#0d9488}.blkFig .egGrid{fill:none;stroke:#e2e8f0;stroke-width:1}
.blkFig .egBarT{fill:#0d9488}.blkFig .egBarT2{fill:#0f766e}.blkFig .egBarI{fill:#6366f1}.blkFig .egBarA{fill:#b45309}.blkFig .egBarP{fill:#be185d}.blkFig .egBarP2{fill:#db2777}
.blkFig .egOpen{opacity:.6}.blkFig .egChev{fill:none;stroke:#fff;stroke-width:2}
.blkFig .egPanel{fill:#f8fafc;stroke:#e2e8f0;stroke-width:1}.blkFig .egCtr{fill:rgba(219,39,119,.12);stroke:#db2777;stroke-width:1.8}
.blkFig .egBreast{fill:#fff1f2;stroke:#e11d48;stroke-width:1.6}.blkFig .egAlv{fill:#fbcfe8;stroke:#db2777;stroke-width:1}.blkFig .egDuct{fill:none;stroke:#0d9488;stroke-width:1.6}.blkFig .egNip{fill:#fda4af;stroke:#e11d48}
.blkFig .egArrG{fill:none;stroke:#64748b;stroke-width:1.8;stroke-dasharray:4 3}.blkFig .egArrP{fill:none;stroke:#db2777;stroke-width:2.2}.blkFig .egArrT{fill:none;stroke:#0d9488;stroke-width:2.2}
.blkFig .egMkG{fill:#64748b}.blkFig .egMkP{fill:#db2777}.blkFig .egMkT{fill:#0d9488}
.blkFig .egRect{fill:none;stroke:#d6b38a;stroke-width:18;stroke-linecap:round;opacity:.8}.blkFig .egBlad{fill:#dbeafe;stroke:#3b82f6;stroke-width:1.2}
.blkFig .egVag{fill:none;stroke:#e11d48;stroke-width:1.6}.blkFig .egPerit{fill:none;stroke:#0d9488;stroke-width:1.2;stroke-dasharray:4 3}.blkFig .egLig{fill:none;stroke:#7c3aed;stroke-width:1.6}
.blkFig .egImp{fill:#7f1d1d;stroke:#fff;stroke-width:1}
[data-theme="dark"] .blkFig .ft.egTt{fill:#5eead4}[data-theme="dark"] .blkFig .ft.egTi{fill:#c7d2fe}[data-theme="dark"] .blkFig .ft.egTa{fill:#fbbf24}
[data-theme="dark"] .blkFig .ft.egTp{fill:#f9a8d4}[data-theme="dark"] .blkFig .ft.egTr{fill:#fca5a5}[data-theme="dark"] .blkFig .ft.egOn{fill:#0f172a}
[data-theme="dark"] .blkFig .egNum{fill:#14b8a6}[data-theme="dark"] .blkFig .ft.egNumT{fill:#0f172a}
[data-theme="dark"] .blkFig .egBandT{fill:rgba(45,212,191,.18)}[data-theme="dark"] .blkFig .egBandI{fill:rgba(129,140,248,.22)}[data-theme="dark"] .blkFig .egBandA{fill:rgba(251,191,36,.16)}
[data-theme="dark"] .blkFig .egBandR{fill:rgba(248,113,113,.18)}[data-theme="dark"] .blkFig .egBandG{fill:rgba(148,163,184,.16)}
[data-theme="dark"] .blkFig .egOvu{stroke:#fbbf24}
[data-theme="dark"] .blkFig .egLnT{stroke:#2dd4bf}[data-theme="dark"] .blkFig .egLnA{stroke:#fbbf24}[data-theme="dark"] .blkFig .egLnP{stroke:#f472b6}[data-theme="dark"] .blkFig .egLnI{stroke:#a5b4fc}
[data-theme="dark"] .blkFig .egEndo{fill:rgba(244,63,94,.22);stroke:#fb7185}[data-theme="dark"] .blkFig .egEndoC{fill:rgba(251,191,36,.2);stroke:#fbbf24}
[data-theme="dark"] .blkFig .egUter,[data-theme="dark"] .blkFig .egUterW{fill:rgba(244,63,94,.1);stroke:#fb7185}
[data-theme="dark"] .blkFig .egTube{stroke:#2dd4bf}[data-theme="dark"] .blkFig .egFimb{stroke:#2dd4bf}[data-theme="dark"] .blkFig .egOvary{fill:rgba(167,139,250,.2);stroke:#c4b5fd}
[data-theme="dark"] .blkFig .egPath{stroke:#64748b}[data-theme="dark"] .blkFig .egFetus{fill:rgba(251,191,36,.25);stroke:#fbbf24}
[data-theme="dark"] .blkFig .egPlacS{stroke:#a78bfa}[data-theme="dark"] .blkFig .egHemaS{stroke:#f87171}[data-theme="dark"] .blkFig .egPlac{fill:#a78bfa}[data-theme="dark"] .blkFig .egHema{fill:#f87171}
[data-theme="dark"] .blkFig .egBlood{fill:#f87171}[data-theme="dark"] .blkFig .egBloodD{fill:#b91c1c}
[data-theme="dark"] .blkFig .egDot{fill:#2dd4bf;stroke:#0f172a}[data-theme="dark"] .blkFig .egLead,[data-theme="dark"] .blkFig .egLeadS{stroke:#64748b}
[data-theme="dark"] .blkFig .egTerme{fill:#2dd4bf}[data-theme="dark"] .blkFig .egGrid{stroke:#334155}
[data-theme="dark"] .blkFig .egBarT{fill:#14b8a6}[data-theme="dark"] .blkFig .egBarT2{fill:#2dd4bf}[data-theme="dark"] .blkFig .egBarI{fill:#818cf8}[data-theme="dark"] .blkFig .egBarA{fill:#f59e0b}
[data-theme="dark"] .blkFig .egBarP{fill:#ec4899}[data-theme="dark"] .blkFig .egBarP2{fill:#f472b6}[data-theme="dark"] .blkFig .egChev{stroke:#0f172a}
[data-theme="dark"] .blkFig .egPanel{fill:rgba(148,163,184,.06);stroke:#334155}[data-theme="dark"] .blkFig .egCtr{fill:rgba(244,114,182,.14);stroke:#f472b6}
[data-theme="dark"] .blkFig .egBreast{fill:rgba(244,63,94,.12);stroke:#fb7185}[data-theme="dark"] .blkFig .egAlv{fill:rgba(244,114,182,.25);stroke:#f472b6}[data-theme="dark"] .blkFig .egDuct{stroke:#2dd4bf}[data-theme="dark"] .blkFig .egNip{fill:rgba(251,113,133,.5);stroke:#fb7185}
[data-theme="dark"] .blkFig .egArrG{stroke:#94a3b8}[data-theme="dark"] .blkFig .egArrP{stroke:#f472b6}[data-theme="dark"] .blkFig .egArrT{stroke:#2dd4bf}
[data-theme="dark"] .blkFig .egMkG{fill:#94a3b8}[data-theme="dark"] .blkFig .egMkP{fill:#f472b6}[data-theme="dark"] .blkFig .egMkT{fill:#2dd4bf}
[data-theme="dark"] .blkFig .egRect{stroke:#8a6d4b}[data-theme="dark"] .blkFig .egBlad{fill:rgba(96,165,250,.18);stroke:#60a5fa}
[data-theme="dark"] .blkFig .egVag{stroke:#fb7185}[data-theme="dark"] .blkFig .egPerit{stroke:#2dd4bf}[data-theme="dark"] .blkFig .egLig{stroke:#c4b5fd}[data-theme="dark"] .blkFig .egImp{fill:#f87171;stroke:#0f172a}
/* Eines: cicle hormonal, índex de Pearl, RCTG en directe, contracepció d'urgència */
.egtSvg{display:block;width:100%;max-width:440px;height:auto;margin:10px auto 4px}
.egtSvg .egtL{font:600 10px var(--font-body,system-ui);fill:var(--text-muted)}
.egtSvg .egtRow{font-weight:700;fill:var(--text-muted)}
.egtSvg .egtTick{font:600 9px var(--font-body,system-ui);fill:var(--text-muted)}
.egtSvg .egtCt{fill:#0f766e;font-weight:700}.egtSvg .egtCi{fill:#4338ca;font-weight:700}.egtSvg .egtCa{fill:#b45309;font-weight:700}.egtSvg .egtCp{fill:#be185d;font-weight:700}
.egtSvg .egtBandT{fill:#ccfbf1}.egtSvg .egtBandI{fill:#e0e7ff}.egtSvg .egtFert{fill:#fef3c7;opacity:.7}
.egtSvg .egtLn{fill:none;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}
.egtSvg .egtT{stroke:#0d9488}.egtSvg .egtA{stroke:#d97706}.egtSvg .egtP{stroke:#db2777}.egtSvg .egtI{stroke:#4f46e5}
.egtSvg .egtEndo{fill:#fecdd3;stroke:#e11d48;stroke-width:1.2}
.egtSvg .egtMk{stroke:var(--text);stroke-width:1.4;stroke-dasharray:3 3}
.egtSvg .egtDot{stroke:var(--surface,#fff);stroke-width:1.5}.egtSvg .egtD-fsh{fill:#0d9488}.egtSvg .egtD-lh,.egtSvg .egtD-tb{fill:#d97706}.egtSvg .egtD-e2{fill:#db2777}.egtSvg .egtD-pg{fill:#4f46e5}
.egtTop{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}
.egtDay{display:flex;align-items:center;gap:10px;flex:1 1 220px;font-size:14px;color:var(--text)}
.egtDay span{white-space:nowrap}.egtDay input{flex:1;accent-color:#0d9488}.egtDay b{font-family:var(--font-display);font-size:15px;min-width:54px;text-align:right}
.korBtn.egtPlay.on{background:var(--surface);color:#0d9488}
.egtList{list-style:none;margin:6px 0 0;padding:0}.egtList li{display:grid;grid-template-columns:86px 1fr;gap:8px;padding:5px 0;border-top:1px solid var(--border);font-size:14px;line-height:1.45;color:var(--text)}
.egtList li:first-child{border-top:0}.egtList li span{font-family:var(--font-display);font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);padding-top:2px}
.egtFertTxt{margin:6px 0 0;font-size:13.5px;color:#92400e}.egtFertTxt:empty{display:none}
.egtSvg .egtGrid{stroke:var(--border);stroke-width:1}.egtSvg .egtGridV{stroke-dasharray:2 3}
.egtSvg .egtRowT{font:600 10.5px var(--font-body,system-ui);fill:var(--text)}.egtSvg .egtRowV{font:700 10px var(--font-body,system-ui);fill:var(--text-muted)}
.egtSvg .egtRowBg{fill:transparent}.egtSvg .egtRowG{cursor:pointer}.egtSvg .egtRowG.on .egtRowBg{fill:rgba(13,148,136,.1)}
.egtSvg .egtBarI{fill:#0d9488}.egtSvg .egtBarH{fill:#818cf8}.egtSvg .egtBarOff{fill:var(--border)}
.egtSvg .egtNow{stroke:#db2777;stroke-width:2}
.egtLeg{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;margin-top:10px;font-size:13px;color:var(--text-muted)}
.egtLeg span{display:inline-block;width:18px;height:7px;border-radius:4px}.egtLeg .egtSwI{background:#0d9488}.egtLeg .egtSwH{background:#818cf8;margin-left:8px}.egtLeg em{margin-left:auto;font-style:normal;font-size:12px}
.egtChips{display:flex;flex-wrap:wrap;gap:6px}.egtChips .tlChip.sel{background:#0d9488;border-color:#0d9488;color:#fff}
.egtSvg .egtNorm{fill:rgba(13,148,136,.08)}
.egtSvg .egtTrace{fill:none;stroke-linejoin:round;stroke-linecap:round}.egtSvg .egtTraceF{stroke:#0d9488;stroke-width:1.6}.egtSvg .egtTraceC{stroke:#db2777;stroke-width:1.8}
.egtSvg .egtPeak{stroke:#94a3b8;stroke-width:1;stroke-dasharray:2 3}
[data-theme="dark"] .egtSvg .egtCt{fill:#5eead4}[data-theme="dark"] .egtSvg .egtCi{fill:#c7d2fe}[data-theme="dark"] .egtSvg .egtCa{fill:#fbbf24}[data-theme="dark"] .egtSvg .egtCp{fill:#f9a8d4}
[data-theme="dark"] .egtSvg .egtBandT{fill:rgba(45,212,191,.18)}[data-theme="dark"] .egtSvg .egtBandI{fill:rgba(129,140,248,.22)}[data-theme="dark"] .egtSvg .egtFert{fill:rgba(251,191,36,.12);opacity:1}
[data-theme="dark"] .egtSvg .egtT{stroke:#2dd4bf}[data-theme="dark"] .egtSvg .egtA{stroke:#fbbf24}[data-theme="dark"] .egtSvg .egtP{stroke:#f472b6}[data-theme="dark"] .egtSvg .egtI{stroke:#a5b4fc}
[data-theme="dark"] .egtSvg .egtEndo{fill:rgba(244,63,94,.22);stroke:#fb7185}
[data-theme="dark"] .egtSvg .egtD-fsh{fill:#2dd4bf}[data-theme="dark"] .egtSvg .egtD-lh,[data-theme="dark"] .egtSvg .egtD-tb{fill:#fbbf24}[data-theme="dark"] .egtSvg .egtD-e2{fill:#f472b6}[data-theme="dark"] .egtSvg .egtD-pg{fill:#a5b4fc}
[data-theme="dark"] .egtFertTxt{color:#fbbf24}
[data-theme="dark"] .egtSvg .egtRowG.on .egtRowBg{fill:rgba(45,212,191,.12)}[data-theme="dark"] .egtSvg .egtBarI{fill:#2dd4bf}[data-theme="dark"] .egtSvg .egtBarH{fill:#a5b4fc}
[data-theme="dark"] .egtLeg .egtSwI{background:#2dd4bf}[data-theme="dark"] .egtLeg .egtSwH{background:#a5b4fc}
[data-theme="dark"] .egtSvg .egtNow{stroke:#f472b6}[data-theme="dark"] .egtSvg .egtNorm{fill:rgba(45,212,191,.08)}
[data-theme="dark"] .egtSvg .egtTraceF{stroke:#2dd4bf}[data-theme="dark"] .egtSvg .egtTraceC{stroke:#f472b6}[data-theme="dark"] .egtSvg .egtPeak{stroke:#64748b}
[data-theme="dark"] .korBtn.egtPlay.on{color:#2dd4bf;border-color:#2dd4bf}
@media (max-width:640px){.egtList li{grid-template-columns:1fr;gap:2px}}
.egtList strong,.egtFertTxt strong,.tlResult p strong{font-weight:700;color:inherit}
.egtNow2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.egtNow2 > div{padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.egtNowL{display:block;font-family:var(--font-display);font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#0f766e}
[data-theme="dark"] .egtNowL{color:#5eead4}
@media (max-width:640px){.egtNow2{grid-template-columns:1fr}}
.egtList strong,.egtFertTxt strong{display:inline;font:inherit;font-weight:700}

/* ===== Repàs salut-mental ===== */
/* Figures estretes (viewBox 260): colors per classe amb variant fosca */
:is(#content,.lsMain) .blk .blkFig.smN{width:min(360px,50%)}
.blk-diagrama > .blkFig.smN,:is(#content,.lsMain) .lecLead .blkFig.smN{max-width:380px}
@media (max-width:640px){:is(#content,.lsMain) .blk .blkFig.smN{width:100%;max-width:380px}}
.blkFig .smB0{fill:#ccfbf1;stroke:#0d9488;stroke-width:1.2}.blkFig .smB1{fill:#e0e7ff;stroke:#6366f1;stroke-width:1.2}.blkFig .smB2{fill:#fef3c7;stroke:#d97706;stroke-width:1.2}
.blkFig .smB3{fill:#fce7f3;stroke:#db2777;stroke-width:1.2}.blkFig .smB4{fill:#f1f5f9;stroke:#64748b;stroke-width:1.2}.blkFig .smB5{fill:#ede9fe;stroke:#7c3aed;stroke-width:1.2}.blkFig .smB6{fill:#ffe4e6;stroke:#e11d48;stroke-width:1.2}
.blkFig .smS0{fill:#0d9488}.blkFig .smS1{fill:#6366f1}.blkFig .smS2{fill:#d97706}.blkFig .smS3{fill:#db2777}.blkFig .smS4{fill:#64748b}.blkFig .smS5{fill:#7c3aed}.blkFig .smS6{fill:#e11d48}
.blkFig .smL0{stroke:#0d9488}.blkFig .smL1{stroke:#6366f1}.blkFig .smL2{stroke:#d97706}.blkFig .smL3{stroke:#db2777}.blkFig .smL4{stroke:#64748b}.blkFig .smL5{stroke:#7c3aed}.blkFig .smL6{stroke:#e11d48}
.blkFig .ft.smT0{fill:#0f766e;font-weight:700}.blkFig .ft.smT1{fill:#4338ca;font-weight:700}.blkFig .ft.smT2{fill:#b45309;font-weight:700}.blkFig .ft.smT3{fill:#be185d;font-weight:700}
.blkFig .ft.smT5{fill:#6d28d9;font-weight:700}.blkFig .ft.smT6{fill:#be123c;font-weight:700}.blkFig .ft.smOn{fill:#fff;font-weight:700}
.blkFig .smR1{fill:#eef2ff;stroke:#6366f1;stroke-width:.8}.blkFig .smR2{fill:#e0e7ff;stroke:#6366f1;stroke-width:.8}.blkFig .smR3{fill:#c7d2fe;stroke:#6366f1;stroke-width:.8}.blkFig .smR4{fill:#a5b4fc;stroke:#6366f1;stroke-width:.8}
.blkFig .smEmpty{fill:none;stroke:#cbd5e1;stroke-width:1;stroke-dasharray:2 2}
.blkFig .smG1{fill:#f1f5f9;stroke:#94a3b8}.blkFig .smG2{fill:#e2e8f0;stroke:#64748b}.blkFig .smG3{fill:#cbd5e1;stroke:#475569}
.blkFig .smPanel{fill:#f8fafc;stroke:#e2e8f0;stroke-width:1}.blkFig .smCard{fill:#fff;fill-opacity:.8;stroke:#cbd5e1;stroke-width:.8}
.blkFig .smGr{fill:none;stroke:#e2e8f0;stroke-width:1}.blkFig .smAx{fill:none;stroke:#94a3b8;stroke-width:1.2}
.blkFig .smAr{fill:none;stroke:#64748b;stroke-width:1.6}.blkFig .smMk{fill:#64748b}.blkFig .smDash{stroke:#6366f1;stroke-width:1.4;stroke-dasharray:4 3}
.blkFig .smBeam{stroke:#475569;stroke-width:3;stroke-linecap:round}.blkFig .smRail{stroke:#99f6e4;stroke-width:5;stroke-linecap:round}
.blkFig .smRing{fill:none;stroke:#99f6e4;stroke-width:9;opacity:.7}.blkFig .smNight{fill:#e0e7ff;opacity:.85}
[data-theme="dark"] .blkFig .smB0{fill:rgba(45,212,191,.14);stroke:#2dd4bf}[data-theme="dark"] .blkFig .smB1{fill:rgba(129,140,248,.18);stroke:#a5b4fc}[data-theme="dark"] .blkFig .smB2{fill:rgba(251,191,36,.14);stroke:#fbbf24}
[data-theme="dark"] .blkFig .smB3{fill:rgba(244,114,182,.14);stroke:#f472b6}[data-theme="dark"] .blkFig .smB4{fill:rgba(148,163,184,.12);stroke:#94a3b8}[data-theme="dark"] .blkFig .smB5{fill:rgba(167,139,250,.16);stroke:#c4b5fd}[data-theme="dark"] .blkFig .smB6{fill:rgba(251,113,133,.14);stroke:#fb7185}
[data-theme="dark"] .blkFig .smL0{stroke:#2dd4bf}[data-theme="dark"] .blkFig .smL1{stroke:#a5b4fc}[data-theme="dark"] .blkFig .smL2{stroke:#fbbf24}[data-theme="dark"] .blkFig .smL3{stroke:#f472b6}[data-theme="dark"] .blkFig .smL4{stroke:#94a3b8}[data-theme="dark"] .blkFig .smL5{stroke:#c4b5fd}[data-theme="dark"] .blkFig .smL6{stroke:#fb7185}
[data-theme="dark"] .blkFig .ft.smT0{fill:#5eead4}[data-theme="dark"] .blkFig .ft.smT1{fill:#c7d2fe}[data-theme="dark"] .blkFig .ft.smT2{fill:#fbbf24}[data-theme="dark"] .blkFig .ft.smT3{fill:#f9a8d4}[data-theme="dark"] .blkFig .ft.smT5{fill:#c4b5fd}[data-theme="dark"] .blkFig .ft.smT6{fill:#fda4af}
[data-theme="dark"] .blkFig .smR1{fill:rgba(129,140,248,.10);stroke:#818cf8}[data-theme="dark"] .blkFig .smR2{fill:rgba(129,140,248,.22);stroke:#818cf8}[data-theme="dark"] .blkFig .smR3{fill:rgba(129,140,248,.36);stroke:#a5b4fc}[data-theme="dark"] .blkFig .smR4{fill:rgba(129,140,248,.55);stroke:#c7d2fe}
[data-theme="dark"] .blkFig .smEmpty{stroke:#475569}
[data-theme="dark"] .blkFig .smG1{fill:rgba(148,163,184,.10);stroke:#64748b}[data-theme="dark"] .blkFig .smG2{fill:rgba(148,163,184,.2);stroke:#94a3b8}[data-theme="dark"] .blkFig .smG3{fill:rgba(148,163,184,.32);stroke:#cbd5e1}
[data-theme="dark"] .blkFig .smPanel{fill:rgba(148,163,184,.06);stroke:#334155}[data-theme="dark"] .blkFig .smCard{fill:#0f172a;fill-opacity:.55;stroke:#475569}
[data-theme="dark"] .blkFig .smGr{stroke:#334155}[data-theme="dark"] .blkFig .smAx{stroke:#64748b}
[data-theme="dark"] .blkFig .smAr{stroke:#94a3b8}[data-theme="dark"] .blkFig .smMk{fill:#94a3b8}[data-theme="dark"] .blkFig .smDash{stroke:#a5b4fc}
[data-theme="dark"] .blkFig .smBeam{stroke:#94a3b8}[data-theme="dark"] .blkFig .smRail{stroke:#134e4a}[data-theme="dark"] .blkFig .smRing{stroke:#134e4a;opacity:1}[data-theme="dark"] .blkFig .smNight{fill:rgba(129,140,248,.16)}
/* Eines: de la beguda a les UBE, semiologia per àrees, agitació pas a pas */
.smUbList{display:flex;flex-direction:column;gap:8px;margin:6px 0 8px}
.smUbRow{display:grid;grid-template-columns:minmax(0,1.7fr) repeat(3,minmax(0,1fr)) auto 32px;gap:8px;align-items:end;padding:8px 10px;border:1px solid var(--border);border-radius:12px;background:var(--surface-alt)}
.smUbRow select,.smUbRow input{width:100%;min-width:0;box-sizing:border-box;padding:7px 8px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:500 14px var(--font-body)}
.smUbRow label{display:flex;flex-direction:column;gap:2px;min-width:0}
.smUbRow label span{font:600 11px var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
.smUbG{font:700 14px var(--font-display);color:#0f766e;white-space:nowrap;padding-bottom:8px;text-align:right}
.smUbDel{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);border-radius:8px;width:32px;height:32px;display:grid;place-items:center;cursor:pointer;padding:0}
.smUbAdd{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;border:1px dashed #0d9488;background:transparent;color:#0f766e;font:600 13px var(--font-display);cursor:pointer;margin:0 0 6px}
.smUbRes{margin:6px 0 0;padding-left:18px}.smUbRes li{margin:4px 0;font-size:14px;line-height:1.45;color:var(--text)}.smUbRes li b{display:inline;font-size:inherit}
@media (max-width:640px){.smUbRow{grid-template-columns:repeat(3,minmax(0,1fr)) 32px}.smUbRow select{grid-column:1/-2}.smUbRow .smUbG{grid-column:1/-1;grid-row:3;text-align:left;padding:0}.smUbRow .smUbDel{grid-column:4;grid-row:1}}
.smStepBar{display:flex;gap:4px;margin:0 0 10px}.smStepBar i{flex:1;height:5px;border-radius:3px;background:var(--border)}.smStepBar i.done{background:#0d9488}.smStepBar i.now{background:#5eead4}
[data-tool="agitacio-pas"] .tlResult .korBtn,[data-tool="agitacio-pas"] > .edToolSlot > .korBtn{margin-top:10px}
[data-theme="dark"] .smUbG,[data-theme="dark"] .smUbAdd{color:#5eead4}[data-theme="dark"] .smUbAdd{border-color:#2dd4bf}
[data-theme="dark"] .smStepBar i.done{background:#2dd4bf}[data-theme="dark"] .smStepBar i.now{background:#0f766e}

/* ===== Repàs terminal-dol ===== */
/* Figures estretes (viewBox 260): reutilitzen .blkFig.narrow.smN i les classes .sm* del bloc de salut mental */
/* Eina «sc-infusor»: infusor elastomèric + palometa subcutània en directe */
.tdScChips{margin:0 0 10px}
.tdScVis{max-width:420px;margin:4px auto 0;padding:6px 8px;border:1px solid var(--border);border-radius:12px;background:var(--surface-alt)}
.tdScVis svg{display:block;width:100%;height:auto}
.tdScShell{fill:var(--surface);stroke:#94a3b8;stroke-width:1.5}
.tdScLine{fill:none;stroke:#0d9488;stroke-width:2.4;stroke-linecap:round}
.tdScDrop{fill:#0d9488}
.tdScWing{fill:#99f6e4;stroke:#0d9488;stroke-width:1.2;stroke-linejoin:round}
.tdScNeedle{stroke:#64748b;stroke-width:2;stroke-linecap:round}
.tdScSkin{stroke:#e2b9a8;stroke-width:3;stroke-linecap:round}
.tdScLbl{font:600 9.5px var(--font-body,'Source Sans 3',sans-serif);fill:var(--text-muted);text-anchor:middle}
.tdScVis.bad .tdScLine{stroke:#d97706;stroke-dasharray:5 4}.tdScVis.bad .tdScDrop{fill:#d97706}
.tdScVis.empty .tdScDrop{display:none}
.tdScRes{margin:6px 0 0;padding-left:18px}.tdScRes li{margin:4px 0;font-size:14px;line-height:1.45;color:var(--text)}.tdScRes li b{display:inline;font-size:inherit;font-weight:700}
[data-theme="dark"] .tdScLine{stroke:#2dd4bf}[data-theme="dark"] .tdScDrop{fill:#2dd4bf}[data-theme="dark"] .tdScWing{fill:#134e4a;stroke:#2dd4bf}
[data-theme="dark"] .tdScSkin{stroke:#7c5b4f}[data-theme="dark"] .tdScShell{stroke:#64748b}
[data-theme="dark"] .tdScVis.bad .tdScLine{stroke:#fbbf24}[data-theme="dark"] .tdScVis.bad .tdScDrop{fill:#fbbf24}
@media (prefers-reduced-motion:reduce){.tdScDrop{display:none}}
/* Eina «agonia-confort»: llista de capçalera amb barra de progrés */
.tdAgList{display:flex;flex-direction:column;gap:6px}
.tdAgItem{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;align-items:start;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);cursor:pointer}
.tdAgItem input{accent-color:#0d9488;width:16px;height:16px;margin-top:2px}
.tdAgItem b{display:block;font:600 14px var(--font-display);color:var(--text)}
.tdAgItem small{display:block;margin-top:2px;font-size:13px;line-height:1.45;color:var(--text-muted)}
.tdAgItem.on{border-color:#0d9488;background:rgba(13,148,136,.07)}
[data-theme="dark"] .tdAgItem.on{border-color:#2dd4bf;background:rgba(45,212,191,.08)}

/* ===== Repàs oftalmo-orl-maxilofacial ===== */
/* Figures estretes (viewBox 260): .blkFig.narrow.smN + classes .sm*; línies guia i fissura amb variant fosca */
.blkFig .oftLd{fill:none;stroke:#94a3b8;stroke-width:.8}
.blkFig .oftCleft{stroke:#0f172a;opacity:.75}
[data-theme="dark"] .blkFig .oftLd{stroke:#64748b}[data-theme="dark"] .blkFig .oftCleft{stroke:#e2e8f0}
/* Eina «humor-aquos»: segment anterior amb l'humor aquós en moviment */
.haVis,.pvVis,.cpVis{max-width:420px;margin:10px auto 8px;padding:6px 8px;border:1px solid var(--border);border-radius:12px;background:var(--surface-alt)}
.haVis svg,.pvVis svg,.cpVis svg{display:block;width:100%;height:auto}
.haSc{fill:none;stroke:#94a3b8;stroke-width:5}.haCo{fill:none;stroke:#0d9488;stroke-width:3}
.haCil{fill:#fde68a;stroke:#d97706}.haLens{fill:#ccfbf1;stroke:#0d9488;stroke-width:1.2}
.haIris{fill:none;stroke:#7c3aed;stroke-width:5;stroke-linecap:round;transition:d .4s}
.haSch{fill:#0d9488}.haSch.bad{fill:#dc2626}
.haDrop{fill:#0d9488;opacity:.85}.haUvP{fill:none;stroke:#6366f1;stroke-width:1.2;stroke-dasharray:3 3}
 .haVis [data-r="uv"] .haDrop{fill:#6366f1}
.haX{fill:none;stroke:#dc2626;stroke-width:2.4;stroke-linecap:round}
.haTx{font:600 10px 'Source Sans 3',system-ui,sans-serif;fill:#0f172a;text-anchor:middle}.haTx.haTxS{font-size:9.5px;font-weight:500;fill:#475569}
.haLd{fill:none;stroke:#94a3b8;stroke-width:.8}
.haPio{font:700 13px var(--font-display);fill:#0f766e}.haPio.bad{fill:#dc2626}
.haChips{margin:4px 0 2px}
.haRes{margin:6px 0 0;padding-left:18px}.haRes li{margin:4px 0;font-size:14px;line-height:1.45;color:var(--text)}.haRes li b{display:inline;font-size:inherit;font-weight:700}
[data-theme="dark"] .haCil{fill:#78350f;stroke:#fbbf24}[data-theme="dark"] .haLens{fill:#134e4a;stroke:#2dd4bf}[data-theme="dark"] .haCo{stroke:#2dd4bf}
[data-theme="dark"] .haIris{stroke:#a78bfa}[data-theme="dark"] .haSch,[data-theme="dark"] .haDrop{fill:#2dd4bf}[data-theme="dark"] .haSch.bad{fill:#f87171}
[data-theme="dark"] .haVis [data-r="uv"] .haDrop{fill:#a5b4fc}[data-theme="dark"] .haUvP{stroke:#a5b4fc}[data-theme="dark"] .haX{stroke:#f87171}
[data-theme="dark"] .haTx{fill:#e2e8f0}[data-theme="dark"] .haTx.haTxS{fill:#94a3b8}[data-theme="dark"] .haLd{stroke:#64748b}
[data-theme="dark"] .haPio{fill:#5eead4}[data-theme="dark"] .haPio.bad{fill:#f87171}
@media (prefers-reduced-motion:reduce){.haDrop{display:none}}
/* Eina «proves-visio»: dibuix de cada prova */
.pvTabs{margin:0 0 4px}
.pvCard{fill:#fff;stroke:#cbd5e1}.pvE{font:700 20px 'Source Sans 3',system-ui,sans-serif;fill:#0f172a;text-anchor:middle}
.pvLine{fill:#94a3b8}.pvHead{fill:#e2e8f0;stroke:#64748b}.pvBody{fill:none;stroke:#64748b;stroke-width:2;stroke-linecap:round}
.pvDist{fill:none;stroke:#0d9488;stroke-width:1.4;stroke-dasharray:4 3}.pvTx{font:700 11px var(--font-display);fill:#0f766e;text-anchor:middle}
.pvEyeW{fill:#fff;stroke:#64748b}.pvIris{fill:#0d9488}
.pvIshBg{fill:#f8fafc;stroke:#e2e8f0}.pvIshA1{fill:#0d9488}.pvIshA2{fill:#14b8a6}.pvIshB1{fill:#d97706}.pvIshB2{fill:#f59e0b}
.pvGrid{fill:none;stroke:#334155;stroke-width:.8}.pvFix{fill:#0f172a}.pvScot{fill:#1f2937;opacity:.75}
.pvRing{fill:none;stroke:#94a3b8;stroke-width:1}.pvLoss{fill:#64748b;opacity:.35}
.pvGlobe{fill:none;stroke:#94a3b8;stroke-width:4}.pvCorn{fill:none;stroke:#0d9488;stroke-width:3}.pvLensS{fill:#ccfbf1;stroke:#0d9488}
.pvProbe{fill:#e2e8f0;stroke:#64748b}.pvProbeT{stroke:#0d9488;stroke-width:3;stroke-linecap:round}
.pvDm{display:flex;align-items:center;gap:8px;margin:0 0 4px;font-size:14px;color:var(--text);cursor:pointer}.pvDm input{accent-color:#0d9488;width:16px;height:16px}
.pvK{display:inline!important;font:700 11px var(--font-display)!important;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)!important;margin-right:4px}
[data-theme="dark"] .pvCard{fill:#f8fafc;stroke:#475569}[data-theme="dark"] .pvHead{fill:#334155;stroke:#94a3b8}[data-theme="dark"] .pvBody{stroke:#94a3b8}
[data-theme="dark"] .pvDist{stroke:#2dd4bf}[data-theme="dark"] .pvTx{fill:#5eead4}[data-theme="dark"] .pvIshBg{fill:#1e293b;stroke:#334155}
[data-theme="dark"] .pvRing{stroke:#64748b}[data-theme="dark"] .pvLoss{fill:#94a3b8;opacity:.3}[data-theme="dark"] .pvGlobe{stroke:#64748b}[data-theme="dark"] .pvCorn{stroke:#2dd4bf}
[data-theme="dark"] .pvLensS{fill:#134e4a;stroke:#2dd4bf}[data-theme="dark"] .pvProbe{fill:#334155;stroke:#94a3b8}[data-theme="dark"] .pvProbeT{stroke:#2dd4bf}[data-theme="dark"] .pvIris{fill:#2dd4bf}
/* Eina «colliri-pas»: instil·lació pas a pas */
.cpBar{margin:10px 0 0}
.cpBrow{fill:none;stroke:#94a3b8;stroke-width:5;stroke-linecap:round;opacity:.6}
.cpWhite{fill:#fff}.cpSkin{fill:#f1d7c8}.cpLid{fill:none;stroke:#b08b78;stroke-width:3;stroke-linecap:round}.cpLidC{fill:none;stroke:#b08b78;stroke-width:3.5;stroke-linecap:round}
.cpSac{fill:#fca5a5;opacity:.85}.cpIris{fill:#0d9488;opacity:.9}.cpPup{fill:#0f172a}.cpPunct{fill:#b91c1c}
.cpFinger{fill:#f5d0b5;stroke:#b08b78;stroke-width:1.2}.cpPulse{fill:none;stroke:#0d9488;stroke-width:2;animation:cpPulse 1.4s ease-out infinite;transform-origin:64px 76px}
@keyframes cpPulse{0%{opacity:1;transform:scale(.6)}100%{opacity:0;transform:scale(1.6)}}
.cpBottle{fill:#e0f2fe;stroke:#0284c7;stroke-width:1.2}.cpDrop{fill:#0284c7}
.cpClock{fill:var(--surface);stroke:#0d9488;stroke-width:2}.cpHand{fill:none;stroke:#0d9488;stroke-width:2.2;stroke-linecap:round}
.cpTx{font:700 12px var(--font-display);fill:#0f766e}
.cpArrow{fill:none;stroke:#64748b;stroke-width:2.2}.cpMkP{fill:#64748b}
.cpTube{fill:#e2e8f0;stroke:#64748b}.cpOint{fill:none;stroke:#d97706;stroke-width:4;stroke-linecap:round}.cpOint2{fill:#fde68a;stroke:#d97706}
.cpBadge{fill:#ccfbf1;stroke:#0d9488}.cpCheck{fill:none;stroke:#0d9488;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.cpNav{display:flex;gap:8px;justify-content:space-between;margin-top:10px}.cpNav .korBtn:disabled{opacity:.4;cursor:default}
[data-theme="dark"] .cpWhite{fill:#e2e8f0}[data-theme="dark"] .cpTx{fill:#5eead4}[data-theme="dark"] .cpClock{stroke:#2dd4bf}[data-theme="dark"] .cpHand{stroke:#2dd4bf}
[data-theme="dark"] .cpArrow{stroke:#94a3b8}[data-theme="dark"] .cpMkP{fill:#94a3b8}[data-theme="dark"] .cpBadge{fill:#134e4a;stroke:#2dd4bf}[data-theme="dark"] .cpCheck{stroke:#5eead4}
[data-theme="dark"] .cpTube{fill:#334155;stroke:#94a3b8}[data-theme="dark"] .cpPulse{stroke:#2dd4bf}
@media (prefers-reduced-motion:reduce){.cpPulse{animation:none}}
/* Negretes dins del text de resultat de les eines noves: en línia, no com a títol */
:is(#content,.lsMain,body) .edTool:is([data-tool="proves-visio"],[data-tool="colliri-pas"],[data-tool="humor-aquos"]) .tlResult :is(p,li) b{display:inline;font-size:inherit;font-weight:700;font-family:inherit}

/* ===== Repàs vacunacions ===== */
/* Figures estretes del tema (viewBox 260) i rètols clau */
.blkFig .ft.vacK{fill:#0f766e;font-weight:700}
[data-theme="dark"] .blkFig .ft.vacK{fill:#5eead4}
/* Pestanyes de les eines noves (vac-calendari, vac-llocs, vac-adrenalina) */
.vxTabs{display:flex;flex-wrap:wrap;gap:4px;padding:4px;border-radius:14px;background:var(--surface-alt,#f1f5f9);margin:2px 0 12px}
.vxTabs button{flex:1 1 auto;border:0;background:transparent;padding:8px 12px;border-radius:10px;font:600 13px var(--font-display);color:var(--text-muted);cursor:pointer}
.vxTabs button.on{background:var(--surface);color:var(--text);box-shadow:0 1px 3px rgba(15,23,42,.12)}
[data-theme="dark"] .vxTabs{background:rgba(148,163,184,.12)}
[data-theme="dark"] .vxTabs button.on{background:#134e4a;color:#f0fdfa}
.vxAges{margin-top:0}
.vxAges button{padding:6px 11px}
/* Termòmetre de màxima i mínima «en directe» */
.vxThermo{max-width:300px;margin:0 auto 6px}
.vxThermo svg,.vxBodyWrap svg{display:block;width:100%;height:auto}
.vxTube{fill:#e2e8f0;stroke:#94a3b8;stroke-width:1}
.vxBand{fill:#99f6e4}
.vxLim{stroke:#64748b;stroke-width:1.2;stroke-dasharray:4 3}
.vxTick{stroke:#64748b;stroke-width:1.2}
.vxMerc{fill:#0d9488;transition:none}
.vxBulb{fill:#0d9488}
.vxMax{stroke:#b45309;stroke-width:3;stroke-linecap:round}.vxMin{stroke:#4f46e5;stroke-width:3;stroke-linecap:round}
.vxTx{font:600 10px 'Source Sans 3',system-ui,sans-serif;fill:#0f172a}
.vxTxR{text-anchor:end}.vxTxS{font-size:9px;font-weight:500;fill:#64748b}
.vxMaxT{fill:#b45309}.vxMinT{fill:#4f46e5}.vxOk{fill:#0f766e;font-weight:700}
[data-theme="dark"] .vxTube{fill:#1e293b;stroke:#475569}[data-theme="dark"] .vxBand{fill:#134e4a}
[data-theme="dark"] .vxLim,[data-theme="dark"] .vxTick{stroke:#94a3b8}
[data-theme="dark"] .vxMerc,[data-theme="dark"] .vxBulb{fill:#2dd4bf}
[data-theme="dark"] .vxTx{fill:#e2e8f0}[data-theme="dark"] .vxTxS{fill:#94a3b8}
[data-theme="dark"] .vxMax{stroke:#fbbf24}[data-theme="dark"] .vxMaxT{fill:#fbbf24}
[data-theme="dark"] .vxMin{stroke:#a5b4fc}[data-theme="dark"] .vxMinT{fill:#a5b4fc}[data-theme="dark"] .vxOk{fill:#5eead4}
/* On punxar segons l'edat */
.vxBodyWrap{max-width:320px;margin:0 auto 4px}
.vxBody{fill:#e2e8f0;stroke:#94a3b8;stroke-width:1}
.vxSite{fill:#0d9488}
.vxAlt{fill:none;stroke:#0d9488;stroke-width:1.6;stroke-dasharray:3 2}
.vxPulse{fill:none;stroke:#0d9488;stroke-width:2;transform-box:fill-box;transform-origin:center;animation:vxPulse 1.6s ease-out infinite}
@keyframes vxPulse{0%{opacity:.9;transform:scale(1)}100%{opacity:0;transform:scale(2.2)}}
.vxLead{stroke:#64748b;stroke-width:1;fill:none}
.vxK{fill:#0f766e;font-weight:700}
.vxNo{stroke:#64748b;stroke-width:2.2;stroke-linecap:round}.vxNoT{fill:#64748b;text-decoration:line-through}
[data-theme="dark"] .vxBody{fill:#334155;stroke:#64748b}
[data-theme="dark"] .vxSite{fill:#2dd4bf}[data-theme="dark"] .vxAlt,[data-theme="dark"] .vxPulse{stroke:#2dd4bf}
[data-theme="dark"] .vxK{fill:#5eead4}[data-theme="dark"] .vxLead{stroke:#94a3b8}
[data-theme="dark"] .vxNo{stroke:#94a3b8}[data-theme="dark"] .vxNoT{fill:#94a3b8}
/* Rellotge de 5 minuts de l'adrenalina */
.vxClock{display:flex;align-items:center;gap:14px;margin-top:12px}
.vxClock svg{width:64px;height:64px;flex:0 0 64px}
.vxClkBg{fill:none;stroke:var(--border);stroke-width:5}
.vxClkArc{fill:none;stroke:#0d9488;stroke-width:5;stroke-linecap:round;transition:stroke-dashoffset .9s linear}
.vxClkTx{font:700 13px var(--font-display);fill:var(--text);text-anchor:middle}
.vxClkMsg{margin:6px 0 0;font-size:13px;line-height:1.45;color:var(--text-muted)}
[data-theme="dark"] .vxClkArc{stroke:#2dd4bf}
:is(#content,.lsMain,body) .edTool:is([data-tool="vac-termometre"],[data-tool="vac-llocs"],[data-tool="vac-adrenalina"]) .tlResult :is(p,li) b{display:inline;font-size:inherit;font-weight:700;font-family:inherit}
@media (prefers-reduced-motion:reduce){.vxPulse{animation:none;opacity:0}.vxClkArc{transition:none}}
/* ===== Repàs educacio-entrevista ===== */
/* Figures estretes (_figs-edu.js): gamma teal d'un sol to (euG1-5) i símbols de genograma, amb variant fosca */
.blkFig .euG1{fill:#f0fdfa;stroke:#99f6e4;stroke-width:1}.blkFig .euG2{fill:#ccfbf1;stroke:#5eead4;stroke-width:1}.blkFig .euG3{fill:#99f6e4;stroke:#2dd4bf;stroke-width:1}
.blkFig .euG4{fill:#5eead4;stroke:#14b8a6;stroke-width:1}.blkFig .euG5{fill:#2dd4bf;stroke:#0d9488;stroke-width:1}
.blkFig .euRing{stroke:#fff;stroke-width:2}.blkFig .euCore{fill:#0f766e}.blkFig .euNum{fill:#0f766e}
.blkFig .euRail{stroke:#99f6e4;stroke-width:4;stroke-linecap:round;fill:none}.blkFig .euDot{fill:#0d9488;stroke:#fff;stroke-width:1.5}
.blkFig .euSym{fill:#f0fdfa;stroke:#0f766e;stroke-width:1.6}.blkFig .euSymL{stroke:#0f766e;stroke-width:1.6;fill:none;stroke-linecap:round}
[data-theme="dark"] .blkFig .euG1{fill:rgba(45,212,191,.08);stroke:#134e4a}[data-theme="dark"] .blkFig .euG2{fill:rgba(45,212,191,.16);stroke:#115e59}
[data-theme="dark"] .blkFig .euG3{fill:rgba(45,212,191,.26);stroke:#0f766e}[data-theme="dark"] .blkFig .euG4{fill:rgba(45,212,191,.38);stroke:#14b8a6}[data-theme="dark"] .blkFig .euG5{fill:rgba(45,212,191,.52);stroke:#2dd4bf}
[data-theme="dark"] .blkFig .euRing{stroke:#0f172a}[data-theme="dark"] .blkFig .euCore,[data-theme="dark"] .blkFig .euNum{fill:#0d9488}
[data-theme="dark"] .blkFig .euRail{stroke:#134e4a}[data-theme="dark"] .blkFig .euDot{fill:#2dd4bf;stroke:#0f172a}
[data-theme="dark"] .blkFig .euSym{fill:rgba(45,212,191,.12);stroke:#5eead4}[data-theme="dark"] .blkFig .euSymL{stroke:#5eead4}
/* Eines: entrevista de Borrell (diàleg), escolta activa, consell breu 5 A / 5 R */
.euPhase{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 10px}
.euPhase span{flex:1 1 auto;padding:4px 8px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font:600 11.5px var(--font-display);color:var(--text-muted);text-align:center;white-space:nowrap}
.euPhase span.done{border-color:#99f6e4;color:#0f766e}.euPhase span.now{border-color:#0d9488;background:#0d9488;color:#fff}
.euBubble{position:relative;margin:0 0 10px;padding:10px 12px;border-radius:14px 14px 14px 4px;background:var(--surface-alt);border:1px solid var(--border);max-width:92%}
.euBubble small{display:block;font:700 11px var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:2px}
.euBubble p{margin:0;font-size:14.5px;line-height:1.45;color:var(--text)}
.euWhy{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:6px}
.euWhy li{padding:8px 10px;border-radius:10px;border-left:3px solid var(--border);background:var(--surface);font-size:13.5px;line-height:1.45;color:var(--text)}
.euWhy li.ok{border-left-color:#0d9488}.euWhy li.ko{border-left-color:#94a3b8}
:is(#content,.lsMain,body) .tlResult .euWhy li > b{display:inline;font-size:inherit;font-family:var(--font-display);font-weight:700;color:#0f766e}:is(#content,.lsMain,body) .tlResult .euWhy li.ko > b{color:var(--text-muted)}
.euWhy li span{display:block;margin-top:3px;color:var(--text-muted)}:is(#content,.lsMain,body) .tlResult .euWhy li span b{display:inline;font-size:inherit;font-family:inherit;font-weight:700;color:var(--text)}
.euSeg{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 10px}
.euSeg button{flex:1 1 180px;padding:8px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:600 13.5px var(--font-display);cursor:pointer}
.euSeg button.on{border-color:#0d9488;background:#0d9488;color:#fff}
.eu5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:0 0 10px}
.eu5 button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border-radius:12px;border:1px solid var(--border);background:var(--surface-alt);color:var(--text);cursor:pointer;min-width:0}
.eu5 button b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#ccfbf1;color:#0f766e;font:700 14px var(--font-display)}
.eu5 button span{font:600 11.5px var(--font-display);line-height:1.2;text-align:center;overflow-wrap:anywhere}
.eu5 button.on{border-color:#0d9488;box-shadow:0 0 0 2px rgba(13,148,136,.25)}.eu5 button.on b{background:#0d9488;color:#fff}
.euSay{margin:6px 0 0;font-style:italic;color:var(--text-muted)}
[data-theme="dark"] .euPhase span.done{border-color:#115e59;color:#5eead4}[data-theme="dark"] .euPhase span.now{background:#0f766e;border-color:#2dd4bf}
[data-theme="dark"] .euWhy li.ok{border-left-color:#2dd4bf}[data-theme="dark"] :is(#content,.lsMain,body) .tlResult .euWhy li.ok > b{color:#5eead4}
[data-theme="dark"] .euSeg button.on{background:#0f766e;border-color:#2dd4bf}
[data-theme="dark"] .eu5 button b{background:rgba(45,212,191,.16);color:#5eead4}[data-theme="dark"] .eu5 button.on{border-color:#2dd4bf}[data-theme="dark"] .eu5 button.on b{background:#0f766e;color:#fff}
@media (max-width:480px){.eu5{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.eu5 button{padding:6px 2px}.eu5 button span{font-size:10.5px}.euPhase span{font-size:10.5px;padding:3px 6px}}

/* ===== Repàs etica-deontologia ===== */
/* ci-decisio: tres files de resultat (cal? · forma · qui) */
.etOut{display:grid;gap:6px;margin-top:10px}
.etRow{display:grid;grid-template-columns:minmax(96px,30%) 1fr;gap:10px;align-items:start;padding:9px 12px;border:1px solid var(--border);border-left:4px solid #0d9488;border-radius:10px;background:var(--surface);font-size:14px;line-height:1.45}
.etRow b{font:600 13px var(--font-display);color:#0f766e}
.etRow span{color:var(--text)}
.etRow.no{border-left-color:#94a3b8}
.etRow.no b{color:var(--text-muted)}
/* dva-valida: llista de comprovacions */
.etChecks{list-style:none;margin:8px 0 6px;padding:0;display:grid;gap:4px}
.etChecks li{position:relative;padding:4px 0 4px 26px;font-size:14px;line-height:1.4;color:var(--text)}
.etChecks li::before{content:"";position:absolute;left:0;top:5px;width:18px;height:18px;border-radius:50%;background:#0d9488 no-repeat center/12px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E")}
.etChecks li.ko::before{background-color:#e11d48;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E")}
.etChecks li.ko{color:#be123c}
:is(#content,.lsMain,body) .tlResult b.etOk{color:#0f766e}
:is(#content,.lsMain,body) .tlResult b.etKo{color:#be123c}
.etWit[hidden]{display:none!important}
/* eutanasia-passos: passos verticals amb termini */
.etSteps{list-style:none;margin:4px 0 0;padding:0;position:relative}
.etSteps::before{content:"";position:absolute;left:15px;top:14px;bottom:14px;width:2px;background:var(--border)}
.etSteps li{position:relative;margin:0 0 6px}
.etSteps button{display:flex;align-items:center;gap:10px;width:100%;padding:6px 8px 6px 0;border:0;background:none;color:var(--text);text-align:left;cursor:pointer;font:600 14px var(--font-display)}
.etSteps button em{flex:0 0 32px;height:32px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:13px;background:var(--surface);border:2px solid var(--border);color:var(--text-muted);position:relative;z-index:1}
.etSteps button span{flex:1;min-width:0}
.etSteps button small{flex:0 0 auto;padding:2px 8px;border-radius:999px;background:#ccfbf1;color:#0f766e;font:600 11.5px var(--font-display);white-space:nowrap}
.etSteps li.done button em{background:#ccfbf1;border-color:#0d9488;color:#0f766e}
.etSteps li.now button em{background:#0d9488;border-color:#0d9488;color:#fff}
.etSteps li.now > button span{color:#0f766e}
.etStepIn{margin:2px 0 8px 42px;padding:10px 12px;border:1px solid #99f6e4;border-radius:12px;background:var(--surface);font-size:14px;line-height:1.5}
.etStepIn b{display:block;font:600 12.5px var(--font-display);color:#0f766e;margin-bottom:3px}
.etStepIn p{margin:0;color:var(--text)}
.etNav{display:flex;gap:8px;flex-wrap:wrap}
.etNav .korBtn[disabled]{opacity:.45;cursor:default}
.korBtn.etGhost{background:transparent;color:#0f766e}
[data-theme="dark"] .etRow{border-left-color:#2dd4bf}
[data-theme="dark"] .etRow b{color:#5eead4}
[data-theme="dark"] .etRow.no{border-left-color:#64748b}
[data-theme="dark"] .etRow.no b{color:var(--text-muted)}
[data-theme="dark"] .etChecks li.ko{color:#fda4af}
[data-theme="dark"] :is(#content,.lsMain,body) .tlResult b.etOk{color:#5eead4}
[data-theme="dark"] :is(#content,.lsMain,body) .tlResult b.etKo{color:#fda4af}
[data-theme="dark"] .etSteps button small{background:rgba(45,212,191,.16);color:#5eead4}
[data-theme="dark"] .etSteps li.done button em{background:rgba(45,212,191,.16);border-color:#2dd4bf;color:#5eead4}
[data-theme="dark"] .etSteps li.now button em{background:#0f766e;border-color:#2dd4bf}
[data-theme="dark"] .etSteps li.now > button span{color:#5eead4}
[data-theme="dark"] .etStepIn{border-color:#115e59}
[data-theme="dark"] .etStepIn b{color:#5eead4}
[data-theme="dark"] .korBtn.etGhost{color:#5eead4;border-color:#2dd4bf}
@media (max-width:480px){.etRow{grid-template-columns:1fr;gap:2px}.etStepIn{margin-left:0}.etSteps button small{font-size:10.5px;padding:2px 6px}}
/* ===== Repàs models-pai ===== */
/* Cicle del PAI (pae-cicle) i anells de Neuman (neuman-lab): SVG tocables */
.mpCy,.mpNeu{display:block;width:100%;max-width:380px;height:auto;margin:6px auto 0}
.mpCy .mpRing{fill:none;stroke:#99f6e4;stroke-width:9;opacity:.7}
.mpCy .mpArw{fill:#0d9488}
.mpCy .mpNode{cursor:pointer;outline:none}
.mpCy .mpNode rect{fill:#f0fdfa;stroke:#0d9488;stroke-width:1.2;transition:fill .2s}
.mpCy .mpNode.on rect,.mpCy .mpNode:focus-visible rect{fill:#0d9488}
.mpCy text{font-family:'Source Sans 3',system-ui,sans-serif;text-anchor:middle;fill:#0f172a}
.mpCy .mpT{font-size:10.5px;font-weight:700}.mpCy .mpS,.mpNeu .mpS{font-size:9px;font-weight:500;fill:#475569;text-anchor:middle;font-family:'Source Sans 3',system-ui,sans-serif}
.mpCy .mpC{font-size:14px;font-weight:700;fill:#0f766e}
.mpCy .mpNode.on text{fill:#fff}
.mpOut .korBtn{margin-top:10px}
[data-theme="dark"] .mpCy .mpRing{stroke:#134e4a;opacity:1}
[data-theme="dark"] .mpCy .mpArw{fill:#2dd4bf}
[data-theme="dark"] .mpCy .mpNode rect{fill:#12302e;stroke:#2dd4bf}
[data-theme="dark"] .mpCy .mpNode.on rect{fill:#0d9488}
[data-theme="dark"] .mpCy text{fill:#e2e8f0}[data-theme="dark"] .mpCy .mpS,[data-theme="dark"] .mpNeu .mpS{fill:#94a3b8}[data-theme="dark"] .mpCy .mpC{fill:#5eead4}
.mpNeuW{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:10px;align-items:center}
.mpNeu .mpRg{cursor:pointer;outline:none}
.mpNeu .mpR1{fill:#eef2ff;stroke:#6366f1;stroke-width:1.4;stroke-dasharray:6 4}
.mpNeu .mpR2{fill:#e0e7ff;stroke:#6366f1;stroke-width:1.6}
.mpNeu .mpR3{fill:#c7d2fe;stroke:#6366f1;stroke-width:1}.mpNeu .mpR3b{fill:none;stroke:#6366f1;stroke-width:1;stroke-dasharray:3 3}
.mpNeu .mpR4{fill:#0d9488}.mpNeu .mpOnD{fill:#fff;font-weight:700;font-size:9.5px;text-anchor:middle;font-family:'Source Sans 3',system-ui,sans-serif}
.mpNeu .mpStr{stroke:#d97706;stroke-width:2.2;fill:none}.mpNeu .mpStrH{fill:#d97706}.mpNeu .mpStrB{fill:#fef3c7;stroke:#d97706}
.mpNeu .mpRg.on circle:first-child,.mpNeu .mpRg:focus-visible circle:first-child{stroke:#0d9488;stroke-width:3.2;stroke-dasharray:none}
.mpNeu .mpRg.on .mpStrB{stroke-width:2.4}
.mpLeg{display:flex;flex-direction:column;gap:6px}
.mpLeg .tlChip{text-align:left}
.mpLeg .tlChip.on,.mpTabs .tlChip.on{background:#0d9488;border-color:#0d9488;color:#fff}
.mpPrev{margin-top:6px;font-weight:600;color:#0f766e}
[data-theme="dark"] .mpNeu .mpR1{fill:rgba(129,140,248,.08);stroke:#818cf8}
[data-theme="dark"] .mpNeu .mpR2{fill:rgba(129,140,248,.18);stroke:#818cf8}
[data-theme="dark"] .mpNeu .mpR3{fill:rgba(129,140,248,.32);stroke:#a5b4fc}[data-theme="dark"] .mpNeu .mpR3b{stroke:#a5b4fc}
[data-theme="dark"] .mpNeu .mpStrB{fill:rgba(251,191,36,.16);stroke:#fbbf24}[data-theme="dark"] .mpNeu .mpStr{stroke:#fbbf24}[data-theme="dark"] .mpNeu .mpStrH{fill:#fbbf24}
[data-theme="dark"] .mpNeu .mpRg.on circle:first-child{stroke:#2dd4bf}
[data-theme="dark"] .mpPrev{color:#5eead4}
@media (max-width:560px){.mpNeuW{grid-template-columns:1fr}.mpLeg{flex-direction:row;flex-wrap:wrap}}
/* Constructor PES */
.mpTabs{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 8px}
.mpTabs.mpSub .tlChip{font-size:12px;padding:5px 10px}
.mpParts{margin:6px 0}
.mpPes{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0 0;padding:12px;border:1px dashed var(--border);border-radius:12px;background:var(--surface);font-size:15px;line-height:1.35}
.mpPes i{font-style:normal;font-weight:700;color:#0f766e}
.mpPart{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 4px;border-radius:999px;border:1px solid}
.mpPart em{font-style:normal;font-weight:700;font-size:12px;width:20px;height:20px;border-radius:50%;display:inline-grid;place-items:center;color:#fff}
.mpP{border-color:#0d9488;background:#f0fdfa}.mpP em{background:#0d9488}
.mpE{border-color:#6366f1;background:#eef2ff}.mpE em{background:#6366f1}
.mpS{border-color:#d97706;background:#fffbeb}.mpS em{background:#d97706}
.mpOk{color:#0f766e}.mpKo{color:#b45309}
[data-theme="dark"] .mpPes i{color:#5eead4}
[data-theme="dark"] .mpP{background:rgba(45,212,191,.12);border-color:#2dd4bf}
[data-theme="dark"] .mpE{background:rgba(129,140,248,.14);border-color:#a5b4fc}
[data-theme="dark"] .mpS{background:rgba(251,191,36,.12);border-color:#fbbf24}
[data-theme="dark"] .mpOk{color:#5eead4}[data-theme="dark"] .mpKo{color:#fbbf24}
/* Gordon ↔ Henderson */
.mpGH{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mpGH small{display:block;margin:0 0 6px;font-weight:700;color:var(--text-muted);font-size:12px;text-transform:uppercase;letter-spacing:.03em}
.mpGH ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;counter-reset:mp}
.mpGH li{counter-increment:mp}
.mpGH button{width:100%;display:flex;gap:6px;align-items:baseline;text-align:left;padding:6px 8px;border-radius:9px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:600 13px/1.25 var(--font-body);cursor:pointer}
.mpGH button::before{content:counter(mp);min-width:16px;color:var(--text-muted);font-weight:700;font-size:11.5px}
.mpGH button.on{background:#0d9488;border-color:#0d9488;color:#fff}.mpGH button.on::before{color:#ccfbf1}
[data-theme="dark"] .mpGH button.on{background:#0f766e;border-color:#2dd4bf}
@media (max-width:420px){.mpGH button{font-size:12px;padding:5px 6px}}
/* Cronologia de les teòriques */
.mpYears{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:6px}
.mpYears button{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:6px 8px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;text-align:left;font-family:var(--font-body)}
.mpYears button b{font-size:13px;color:var(--text-muted)}.mpYears button span{font-size:12.5px;font-weight:600;line-height:1.2}
.mpYears button.hot{border-left:4px solid #0d9488}
.mpYears button.on{background:#0d9488;border-color:#0d9488;color:#fff}.mpYears button.on b{color:#ccfbf1}
[data-theme="dark"] .mpYears button.hot{border-left-color:#2dd4bf}
[data-theme="dark"] .mpYears button.on{background:#0f766e}

/* ===== Repàs metodologia-estadistica ===== */
/* Figures estretes del tema (viewBox 260, classe meN): al mòbil ocupen l'amplada sense desplaçament lateral */
:is(#content,.lsMain) .blk .blkFig.meN{width:min(300px,46%)}
.blk-diagrama > .blkFig.meN{max-width:380px}
@media (max-width:640px){:is(#content,.lsMain) .blk .blkFig.meN{width:100%;max-width:400px}}
@media (max-width:600px){:is(#content,.lsMain) .blkFig.meN{overflow:visible}:is(#content,.lsMain) .blkFig.meN svg{min-width:0!important}}
/* Eines «vpp-prevalenca», «normal-viva», «ic-mostra» i «evidencia-piramide» */
.meBox{display:grid;gap:10px}
.meBox > svg{display:block;width:100%;max-width:440px;height:auto;margin:0 auto}
.me2x2{overflow-x:auto}
.me2x2 table,:is(#content,.lsMain) .me2x2 table{display:table;width:100%;max-width:440px;margin:0 auto;border-collapse:separate;border-spacing:5px;font-size:13.5px}
.me2x2 th{font-weight:600;color:var(--text-muted);text-align:center;padding:2px 4px}
.me2x2 td{border-radius:10px;padding:7px 6px;text-align:center;border:1.5px solid var(--border);background:var(--surface);color:var(--text)}
.me2x2 td small{display:block;color:var(--text-muted);font-size:12px}
.me2x2 td b{display:block;font:700 19px/1.2 var(--font-display)}
.me2x2 td.vp{border-color:#0d9488;background:rgba(13,148,136,.12)}
.me2x2 td.fn{border-color:#0d9488;border-style:dashed}
.me2x2 td.fp{border-color:#6366f1;background:rgba(99,102,241,.12)}
.meDots{border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:6px}
.meDotVP{fill:#0d9488}.meDotFN{fill:none;stroke:#0d9488;stroke-width:1.4}.meDotFP{fill:#6366f1}.meDotVN{fill:#cbd5e1}
.meKey{display:flex;flex-wrap:wrap;gap:4px 14px;justify-content:center;font-size:12.5px;color:var(--text-muted)}
.meKey i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px;vertical-align:-1px;box-sizing:border-box}
.meKey .k1{background:#0d9488}.meKey .k2{border:1.5px solid #0d9488}.meKey .k3{background:#6366f1}.meKey .k4{background:#cbd5e1}
.meVals{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.meVal{min-width:120px;padding:8px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface);text-align:center}
.meVal span{display:block;font-size:12.5px;color:var(--text-muted)}
.meVal b{font:700 21px/1.2 var(--font-display);color:var(--text)}
.meCurve{fill:none;stroke:#64748b;stroke-width:2}
.meBand{fill:#0d9488;cursor:pointer}.meBand.b1{fill-opacity:.42}.meBand.b2{fill-opacity:.24}.meBand.b3{fill-opacity:.12}
.meBand.on{stroke:#0f766e;stroke-width:1.6}
.meAxis{stroke:#94a3b8;stroke-width:1;fill:none}
.meTick{font:500 10px 'Source Sans 3',system-ui,sans-serif;fill:#64748b;text-anchor:middle}
.meZ{stroke:#6366f1;stroke-width:2}.meZdot{fill:#6366f1}
.meBtns{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.meBtns button{padding:7px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:500 13.5px var(--font-body);cursor:pointer}
.meBtns button.on{border-color:#0d9488;background:#0d9488;color:#fff;font-weight:600}
.meOne{stroke:#6366f1;stroke-width:1.5;stroke-dasharray:4 3}
.meIcLine{fill:none;stroke-width:3;stroke-linecap:round}
.meIc.sig .meIcLine{stroke:#0d9488}.meIc.sig .meIcDot{fill:#0d9488}
.meIc.ns .meIcLine{stroke:#94a3b8}.meIc.ns .meIcDot{fill:#64748b}
.mePy g{cursor:pointer;outline:none}
.mePy rect{fill:#0d9488;stroke:var(--surface,#fff);stroke-width:2}
.mePy .l0 rect{fill-opacity:.95}.mePy .l1 rect{fill-opacity:.78}.mePy .l2 rect{fill-opacity:.6}.mePy .l3 rect{fill-opacity:.4}.mePy .l4 rect{fill-opacity:.24}
.mePy text{font:600 11px 'Source Sans 3',system-ui,sans-serif;text-anchor:middle;fill:#fff;pointer-events:none}
.mePy .l2 text,.mePy .l3 text,.mePy .l4 text{fill:#0f172a}
.mePy g.on rect{stroke:#6366f1;stroke-width:2.5}
.mePy g:focus-visible rect{stroke:#6366f1;stroke-width:2.5}
[data-theme="dark"] .meDotVP{fill:#2dd4bf}[data-theme="dark"] .meDotFN{stroke:#2dd4bf}[data-theme="dark"] .meDotFP{fill:#a5b4fc}[data-theme="dark"] .meDotVN{fill:#475569}
[data-theme="dark"] .meKey .k1{background:#2dd4bf}[data-theme="dark"] .meKey .k2{border-color:#2dd4bf}[data-theme="dark"] .meKey .k3{background:#a5b4fc}[data-theme="dark"] .meKey .k4{background:#475569}
[data-theme="dark"] .me2x2 td.vp{border-color:#2dd4bf;background:rgba(45,212,191,.14)}[data-theme="dark"] .me2x2 td.fn{border-color:#2dd4bf}[data-theme="dark"] .me2x2 td.fp{border-color:#a5b4fc;background:rgba(165,180,252,.14)}
[data-theme="dark"] .meCurve{stroke:#cbd5e1}[data-theme="dark"] .meBand{fill:#2dd4bf}[data-theme="dark"] .meBand.on{stroke:#99f6e4}
[data-theme="dark"] .meTick{fill:#94a3b8}[data-theme="dark"] .meAxis{stroke:#64748b}
[data-theme="dark"] .meZ,[data-theme="dark"] .meOne{stroke:#a5b4fc}[data-theme="dark"] .meZdot{fill:#a5b4fc}
[data-theme="dark"] .meIc.sig .meIcLine{stroke:#2dd4bf}[data-theme="dark"] .meIc.sig .meIcDot{fill:#2dd4bf}
[data-theme="dark"] .meIc.ns .meIcLine{stroke:#64748b}[data-theme="dark"] .meIc.ns .meIcDot{fill:#94a3b8}
[data-theme="dark"] .mePy rect{fill:#2dd4bf}[data-theme="dark"] .mePy text{fill:#042f2e}[data-theme="dark"] .mePy .l2 text,[data-theme="dark"] .mePy .l3 text,[data-theme="dark"] .mePy .l4 text{fill:#e2e8f0}
[data-theme="dark"] .mePy g.on rect{stroke:#a5b4fc}
[data-theme="dark"] .mePy .l2 rect{fill-opacity:.42}[data-theme="dark"] .mePy .l3 rect{fill-opacity:.28}[data-theme="dark"] .mePy .l4 rect{fill-opacity:.16}

/* ===== Repàs qualitat-transversal ===== */
/* Figures estretes del tema (viewBox 260, classe qlN): al mòbil ocupen l'amplada sense desplaçament lateral */
:is(#content,.lsMain) .blk .blkFig.qlN{width:min(340px,46%)}
.blk-diagrama > .blkFig.qlN{max-width:380px}
@media (max-width:640px){:is(#content,.lsMain) .blk .blkFig.qlN{width:100%;max-width:400px}}
@media (max-width:600px){:is(#content,.lsMain) .blkFig.qlN{overflow:visible}:is(#content,.lsMain) .blkFig.qlN svg{min-width:0!important}}
.blkFig .ft.qlTe{fill:#0f766e}.blkFig .ft.qlIn{fill:#4f46e5}
[data-theme="dark"] .blkFig .ft.qlTe{fill:#5eead4}[data-theme="dark"] .blkFig .ft.qlIn{fill:#a5b4fc}
/* Eines «pdca-cicle», «reason-formatge» i «foc-triangle» */
.qlBox{display:grid;gap:10px}
.qlBox svg{display:block;width:100%;max-width:400px;height:auto;margin:0 auto}
.qlBtns{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.qlBtns .tlChip{cursor:pointer}
.qlBtns .tlChip.on{background:#0d9488;border-color:#0d9488;color:#fff}
.qlBox svg text{font-family:'Source Sans 3',system-ui,sans-serif;text-anchor:middle;fill:var(--text)}
.qlSec{cursor:pointer;outline:none}
.qlSec path{fill:#ccfbf1;stroke:var(--surface,#fff);stroke-width:3;transition:fill .3s}
.qlSec .qlBig{font-size:22px;font-weight:800;fill:#0f766e;pointer-events:none}
.qlSec .qlSm{font-size:10px;font-weight:600;fill:#0f766e;pointer-events:none}
.qlSec.on path,.qlSec:focus-visible path{fill:#0d9488}
.qlSec.on text{fill:#fff}
.qlCt{font-size:11.5px;font-weight:700;fill:var(--text-muted)!important}
.qlArw{fill:#0d9488;stroke:var(--surface,#fff);stroke-width:1}
[data-theme="dark"] .qlArw{fill:#2dd4bf}
.qlDot{fill:#6366f1;stroke:var(--surface,#fff);stroke-width:2;transition:cx .6s ease,cy .6s ease}
.qlEx{display:grid;gap:2px;margin:8px 0 0;padding:8px 10px;border-radius:10px;border:1px dashed var(--border);font-size:13.5px}
.qlEx span:first-child{font:700 11.5px var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:#0f766e}
.qlSlice{cursor:pointer;outline:none}
.qlSlice polygon{fill:#fde68a;stroke:#d97706;stroke-width:1.3;transition:fill .25s}
.qlSlice:focus-visible polygon{stroke-width:2.6}
.qlSlice.open polygon{fill:#fef3c7}
.qlHole{fill:var(--surface,#fff);stroke:#d97706;stroke-width:1}
.qlLbl{font-size:11px;font-weight:700}
.qlHarm{fill:#b91c1c!important}
.qlSm2{font-size:8.2px;font-weight:600;fill:var(--text-muted)!important}
.qlRay{fill:none;stroke:#64748b;stroke-width:2.4;stroke-dasharray:6 4;animation:qlRay 1s linear infinite}
.qlRay.hit{stroke:#b91c1c}
.qlRayHead{fill:#b91c1c}
.qlStop{stroke:#0d9488;stroke-width:3;stroke-linecap:round}
@keyframes qlRay{to{stroke-dashoffset:-20}}
.qlSide{stroke:#d97706;stroke-width:3;stroke-linecap:round;fill:none;transition:opacity .3s}
.qlSide.off{stroke:#94a3b8;stroke-dasharray:5 5;opacity:.7}
.qlFlame path{fill:#f59e0b;opacity:0;transform-origin:130px 146px;transform:scale(.3);transition:opacity .35s,transform .35s}
.qlFlame .qlFlameIn{fill:#fde68a}
.qlFlame.lit path{opacity:.95;transform:scale(1);animation:qlFlick 1.4s ease-in-out infinite alternate}
@keyframes qlFlick{from{transform:scale(1)}to{transform:scale(1.06,.95)}}
.qlVx{cursor:pointer;outline:none}
.qlVx circle{fill:var(--surface,#fff);stroke:#94a3b8;stroke-width:2;stroke-dasharray:3 3}
.qlVx.on circle{fill:#0d9488;stroke:#0d9488;stroke-dasharray:none}
.qlVx.sel circle{stroke-width:3.4}
.qlVx:focus-visible circle{stroke:#6366f1;stroke-width:3.4}
.qlVxN{font-size:12px;font-weight:800;pointer-events:none;fill:var(--text-muted)!important}
.qlVx.on .qlVxN{fill:#fff!important}
.qlOff{fill:var(--text-muted)!important;text-decoration:line-through}
.qlKls .tlChip{min-width:44px;font-size:14px}
@media (prefers-reduced-motion:reduce){.qlRay,.qlFlame.lit path{animation:none}.qlDot{transition:none}}
[data-theme="dark"] .qlSec path{fill:#134e4a}
[data-theme="dark"] .qlSec .qlBig,[data-theme="dark"] .qlSec .qlSm{fill:#5eead4}
[data-theme="dark"] .qlSec.on path{fill:#0d9488}
[data-theme="dark"] .qlSec.on text{fill:#fff}
[data-theme="dark"] .qlDot{fill:#a5b4fc}
[data-theme="dark"] .qlEx span:first-child{color:#5eead4}
[data-theme="dark"] .qlSlice polygon{fill:#b45309;stroke:#fbbf24}
[data-theme="dark"] .qlSlice.open polygon{fill:#78350f}
[data-theme="dark"] .qlHole{stroke:#fbbf24}
[data-theme="dark"] .qlHarm{fill:#fca5a5!important}
[data-theme="dark"] .qlRay{stroke:#94a3b8}[data-theme="dark"] .qlRay.hit{stroke:#f87171}[data-theme="dark"] .qlRayHead{fill:#f87171}
[data-theme="dark"] .qlStop{stroke:#2dd4bf}
[data-theme="dark"] .qlSide{stroke:#fbbf24}
[data-theme="dark"] .qlVx.on circle{fill:#0d9488;stroke:#2dd4bf}
/* Piràmide de Kaiser (kaiser-lab): el nivell triat en teal, no en vermell */
[data-tool="kaiser-lab"] .tlChip{cursor:pointer}[data-tool="kaiser-lab"] .tlChip.on{background:#0d9488;border-color:#0d9488;color:#fff}

/* ===== Figures a l'escriptori: mida continguda (les figures estretes del repàs s'estiraven fins a omplir la pantalla) ===== */
@media (min-width:641px){
  :is(#content,.lsMain) .blkFig svg{max-width:min(100%, calc(var(--vw,300) * 1.55px));max-height:min(520px,62vh);margin-left:auto;margin-right:auto}
  :is(#content,.lsMain) .lecLead .blkFig,:is(#content,.lsMain) .blk-diagrama > .blkFig{max-width:520px}
}

/* ===== Xips seleccionats: teal per defecte (abans vermell a totes les eines); vermell només on marcar = signe d'alarma ===== */
.tlChip.on{background:rgba(13,148,136,.12);border-color:#0d9488;color:#0f766e}
[data-theme="dark"] .tlChip.on{background:rgba(45,212,191,.14);border-color:#2dd4bf;color:#5eead4}
:is([data-tool="red-flags-lumbar"],[data-tool="compartimental-5p"],[data-tool="guix-alarma"]) .tlChip.on{background:#fef2f2;border-color:#dc2626;color:#dc2626}
[data-theme="dark"] :is([data-tool="red-flags-lumbar"],[data-tool="compartimental-5p"],[data-tool="guix-alarma"]) .tlChip.on{background:rgba(248,113,113,.14);border-color:#f87171;color:#fca5a5}

/* ===== Índex d'escales: ordre alfabètic / per tema ===== */
.scalesSortTabs{display:flex;gap:8px;margin:10px 0 14px;flex-wrap:wrap}
.scalesSortTabs .tlChip{cursor:pointer}
.scalesLetter{font-family:var(--font-display);font-size:18px;color:#0d9488;border-bottom:1px solid var(--border);padding-bottom:4px}
[data-theme="dark"] .scalesLetter{color:#2dd4bf}
.scalesIndexWhere{margin:8px 0 0;font-size:12.5px;color:var(--text-muted)}

/* ===== Sense caràcters-icona ===== */
:is(#content,.lsMain) .scalesIndexCard details.scalesIndexDetail summary::before{content:'Veure explicació del temari'}
:is(#content,.lsMain) .scalesIndexCard details.scalesIndexDetail[open] summary::before{content:'Amagar explicació del temari'}
html[data-applang="es"] :is(#content,.lsMain) .scalesIndexCard details.scalesIndexDetail summary::before{content:'Ver explicación del temario'}
html[data-applang="es"] :is(#content,.lsMain) .scalesIndexCard details.scalesIndexDetail[open] summary::before{content:'Ocultar explicación del temario'}
:is(#content,.lsMain) .scalesIndexCard details.scoreTableAcc summary::before{content:'Veure taula de puntuació i classificació'}
:is(#content,.lsMain) .scalesIndexCard details.scoreTableAcc[open] summary::before{content:'Amagar taula de puntuació'}
html[data-applang="es"] :is(#content,.lsMain) .scalesIndexCard details.scoreTableAcc summary::before{content:'Ver tabla de puntuación y clasificación'}
html[data-applang="es"] :is(#content,.lsMain) .scalesIndexCard details.scoreTableAcc[open] summary::before{content:'Ocultar tabla de puntuación'}
:is(#content,.lsMain) .scalesIndexCard details.scalesIndexDetail summary::after,:is(#content,.lsMain) .scalesIndexCard details.scalesIndexDetail[open] summary::after{background:currentColor;border-radius:0;transform:none;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z'/><path d='M14 3v5h5'/><path d='M9 13h6M9 17h4'/></svg>") center/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z'/><path d='M14 3v5h5'/><path d='M9 13h6M9 17h4'/></svg>") center/contain no-repeat}
:is(#content,.lsMain) .scalesIndexCard details.scoreTableAcc summary::after,:is(#content,.lsMain) .scalesIndexCard details.scoreTableAcc[open] summary::after{background:currentColor;border-radius:0;transform:none;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M4 20V4'/><path d='M4 20h16'/><path d='M8.5 20v-7'/><path d='M13 20V9'/><path d='M17.5 20v-4.5'/></svg>") center/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M4 20V4'/><path d='M4 20h16'/><path d='M8.5 20v-7'/><path d='M13 20V9'/><path d='M17.5 20v-4.5'/></svg>") center/contain no-repeat}
.tsection > h2 .secnum svg{width:16px;height:16px;flex:none}
.flagBtn{display:inline-flex;align-items:center;gap:5px}
.flagBtn svg{width:14px;height:14px;flex:none}
.genogramChip svg.ic,.lecArrow svg.ic,.achUnlockedTag svg.ic,.topicPickerCount svg.ic{vertical-align:-2px}

/* ===== Repàs del tema unificat ===== */
.hero .rpJump{display:inline-flex;align-items:center;gap:6px;margin:10px 0 0 8px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--text-muted);font:600 12.5px/1.2 var(--font-display);cursor:pointer}
.hero .rpJump svg{width:14px;height:14px;flex:none}
.hero .rpJump:hover{color:var(--t3-teal);border-color:var(--t3-teal)}
#content .lecRepas{margin-top:14px}
#content .rpTop{display:flex;flex-direction:column;gap:12px;margin-bottom:18px}
#content .rpStats{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13.5px;color:var(--text-muted)}
#content .rpStats b{font-family:var(--font-display);font-weight:700;color:var(--text)}
#content .rpBtns{display:flex;flex-wrap:wrap;gap:8px}
#content .rpBtn{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:600 13.5px/1.2 var(--font-display);cursor:pointer}
#content .rpBtn svg{width:16px;height:16px;flex:none;color:var(--t3-teal)}
#content .rpBtn:hover{border-color:var(--t3-teal)}
#content .rpBtn.pri{background:#0d9488;border-color:#0d9488;color:#fff}
#content .rpBtn.pri svg{color:#fff}
html[data-theme="dark"] #content .rpBtn.pri{background:#2dd4bf;border-color:#2dd4bf;color:#062a27}
html[data-theme="dark"] #content .rpBtn.pri svg{color:#062a27}
#content .rpBody{display:flex;flex-direction:column;gap:12px}
:is(#content,.rpPrint) .rpSec{border:1px solid var(--border);border-radius:16px;background:var(--surface);padding:14px 18px 16px}
:is(#content,.rpPrint) .rpHead{display:flex;align-items:center;gap:10px;margin-bottom:8px}
:is(#content,.rpPrint) .rpHead h3{flex:1;min-width:0;margin:0;font:600 16px/1.3 var(--font-display);color:var(--text)}
:is(#content,.rpPrint) .rpNum{width:26px;height:26px;border-radius:8px;flex:none;display:inline-flex;align-items:center;justify-content:center;background:var(--t3-ink);color:#fff;font:700 12.5px var(--font-display)}
:is(#content,.rpPrint) .rpNum svg{width:15px;height:15px}
html[data-theme="dark"] #content .rpNum{background:var(--t3-teal);color:#0b1c26}
#content .rpGo{flex:none;width:32px;height:32px;border-radius:10px;border:1px solid var(--border);background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
#content .rpGo svg{width:15px;height:15px}
#content .rpGo:hover{color:var(--t3-teal);border-color:var(--t3-teal)}
:is(#content,.rpPrint) .rpSub{margin-top:10px}
:is(#content,.rpPrint) .rpSubH{display:flex;align-items:center;gap:6px;margin:0 0 5px;font:700 11.5px/1.2 var(--font-display);letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}
:is(#content,.rpPrint) .rpSubH svg{width:14px;height:14px;flex:none}
:is(#content,.rpPrint) .rpSubH em{font-style:normal;font-weight:600;opacity:.75}
:is(#content,.rpPrint) .rpIdeas .rpSubH svg{color:var(--t3-teal)}
:is(#content,.rpPrint) .rpImp .rpSubH svg{color:var(--k-estrella)}
:is(#content,.rpPrint) .rpTrap .rpSubH svg{color:var(--k-alerta)}
:is(#content,.rpPrint) .rpMnemo .rpSubH svg{color:var(--k-mnemo)}
:is(#content,.rpPrint) .rpIdeaList,:is(#content,.rpPrint) .rpImpList,:is(#content,.rpPrint) .rpTagList{list-style:none;margin:0;padding:0}
:is(#content,.rpPrint) .rpIdeaList li,:is(#content,.rpPrint) .rpImpList li{position:relative;padding:3px 0 3px 16px;font-size:14.5px;line-height:1.5;color:var(--text)}
:is(#content,.rpPrint) .rpIdeaList li::before{content:"";position:absolute;left:1px;top:11px;width:7px;height:7px;border-radius:999px;background:var(--k-other)}
:is(#content,.rpPrint) .rpIdeaList li.k-estrella::before{background:var(--k-estrella)}
:is(#content,.rpPrint) .rpIdeaList li.k-concepto::before{background:var(--k-concepto)}
:is(#content,.rpPrint) .rpIdeaList li.k-dato::before{background:var(--k-dato)}
:is(#content,.rpPrint) .rpIdeaList li.k-tractament::before{background:var(--k-tractament)}
:is(#content,.rpPrint) .rpIdeaList li.k-escala::before{background:var(--k-escala)}
:is(#content,.rpPrint) .rpIdeaList li b{font-weight:700}
:is(#content,.rpPrint) .rpIdeaList li.star b{color:var(--k-estrella)}
:is(#content,.rpPrint) .rpImpList li::before{content:"";position:absolute;left:0;top:7px;width:10px;height:10px;background:var(--k-estrella);-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><path d='M12 3.5l2.6 5.4 5.9.8-4.3 4.1 1 5.9L12 16.9l-5.2 2.8 1-5.9-4.3-4.1 5.9-.8z'/></svg>") center/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><path d='M12 3.5l2.6 5.4 5.9.8-4.3 4.1 1 5.9L12 16.9l-5.2 2.8 1-5.9-4.3-4.1 5.9-.8z'/></svg>") center/contain no-repeat}
:is(#content,.rpPrint) .rpTagList{display:flex;flex-wrap:wrap;gap:6px}
:is(#content,.rpPrint) .rpTagList li > *{display:inline-block;text-align:left;padding:6px 11px;border-radius:10px;border:1px solid var(--border);border-left:3px solid var(--k-alerta);background:var(--surface);color:var(--text);font:600 13.5px/1.35 var(--font-display);cursor:pointer}
:is(#content,.rpPrint) .rpTagList li.orange > *{border-left-color:#ea580c}
:is(#content,.rpPrint) .rpTagList.gold li > *{border-left-color:var(--k-mnemo);background:var(--k-mnemo-bg)}
#content .rpTagList button:hover{border-color:var(--t3-teal)}
#content .rpOther{border-style:dashed}
@media (max-width:600px){
  .hero .rpJump{margin:10px 0 0}
  #content .rpSec{padding:12px 13px 14px;border-radius:14px}
  #content .rpHead h3{font-size:15px}
  #content .rpIdeaList li,#content .rpImpList li{font-size:14px}
  #content .rpBtn{padding:8px 12px;font-size:13px}
  #content .rpTagList li > *{font-size:13px}
}
@media print{
  #printOverlay .rpPrint{font-family:Georgia,'Source Sans 3',serif;--surface:#fff;--border:#bbb;--text:#111;--text-muted:#444;--t3-ink:#0b1c26;--k-other:#475569;--k-estrella:#8a5a00;--k-concepto:#0d9488;--k-dato:#4f46e5;--k-tractament:#15803d;--k-escala:#7c3aed;--k-alerta:#b91c1c;--k-mnemo:#8a5a00;--k-mnemo-bg:#fff}
  #printOverlay .rpPrint h1{font-size:19px;margin:0 0 2px}
  #printOverlay .rpPrint .rpBody{display:block}
  #printOverlay .rpPrint .rpSec{border:0;border-top:1.5px solid #999;border-radius:0;padding:8px 0 6px;margin:0;break-inside:auto}
  #printOverlay .rpPrint .rpHead{margin-bottom:2px;break-after:avoid}
  #printOverlay .rpPrint .rpHead h3{font-size:14px}
  #printOverlay .rpPrint .rpNum{width:20px;height:20px;border-radius:5px;font-size:10.5px;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  #printOverlay .rpPrint .rpSub{margin-top:5px;break-inside:avoid}
  #printOverlay .rpPrint .rpSubH{font-size:9.5px;margin-bottom:2px}
  #printOverlay .rpPrint .rpIdeaList li,#printOverlay .rpPrint .rpImpList li{font-size:11.5px;line-height:1.4;padding:1px 0 1px 13px;break-inside:avoid}
  #printOverlay .rpPrint .rpIdeaList li::before{top:7px;width:5px;height:5px;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  #printOverlay .rpPrint .rpImpList li::before{top:4px;width:9px;height:9px;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  #printOverlay .rpPrint .rpTagList{gap:3px 5px}
  #printOverlay .rpPrint .rpTagList li > *{padding:2px 7px;font-size:11px;border-radius:5px;border-left-width:2.5px}
}

/* ===== QA: mides de lletra ===== */
/* Auditoria 24/09 (font-audit-all.js + font-hist.js): el cos de lectura és 15 px al mòbil i 15,5 px a l'escriptori;
   aquests elements en sortien massa grans (enunciat d'examen 22 px, opcions 17, flashcards 19, resultats d'eina 24…). */
#content .qText{font-size:19px;line-height:1.42}
#content .optionBtnV2{font-size:16px}
#content .lsQ .qText,body .lsQ .qText{font-size:17.5px}
body .lsQ .optionBtnV2{font-size:15.5px}
.quizNavStat b{font-size:16px}
.rStat b{font-size:20px}
:is(#content,.lsMain) .fc-face{font-size:17px}
:is(#content,.lsMain) .fc-face.back{font-size:15.5px}
.mCycleHead b{font-size:16.5px}
.tlOut b{font-size:20px}
.meVal b{font-size:18px}
.ciRange b{font-size:17px}
.mdLvl{font-size:16px}
.dContT{font-size:18px}
:is(#content,.lsMain) .edMoreIn :is(li,p){font-size:var(--rd-fs,15px)}
@media (max-width:600px){
  #content .qText{font-size:17px;line-height:1.4}
  #content .lsQ .qText,body .lsQ .qText{font-size:16.5px}
  #content .optionBtnV2,body .lsQ .optionBtnV2{font-size:15px;min-height:50px}
  :is(#content,.lsMain) .fc-face{font-size:16px}
  :is(#content,.lsMain) .fc-face.back{font-size:15px}
  .mCycleHead b{font-size:15.5px}
  .tlOut b{font-size:18px}
  .korVal{font-size:28px}
  .dContT{font-size:16.5px}
  .rStat b{font-size:18px}
  .quizNavStat b{font-size:15px}
}

/* ===== QA: contrast en fosc ===== */
/* En fosc --brand/--t3-teal/--blk-c passen a tons clars (#2dd4bf…) i el text blanc quedava a 1,9:1. Text fosc, com .lecPTabs/.crTabs. */
html[data-theme="dark"] :is(#content,.lsMain) :is(.lecFcNav button.pri,.fw-btn.primary),
html[data-theme="dark"] :is(.lsStart,.heartTabs button.on,.tlSeg button.on,.rcpAlgoTab.active,.arCatTab.active,.ecgCaseTab.active){color:#052e2b}
/* Tira d'ECG: el paper continua clar en fosc, la nota ha de mantenir el text fosc */
html[data-theme="dark"] #content .ecgBox .ecgNote,html[data-theme="dark"] .ecgBox .ecgNote{color:#9f1239}
html[data-theme="dark"] .csCard.k-oficial .csKind{color:#fbbf24}
html[data-theme="dark"] .csCard.k-simulacre .csKind{color:#a5b4fc}
html[data-theme="dark"] .vacCard b{color:color-mix(in srgb,var(--vc) 55%,#fff)}
/* Figura flotant massa petita a l'escriptori (app-lectura.js · markScrollFigs → .figFull) */
@media (min-width:641px){:is(#content,.lsMain) .blk .blkFig.figFull{float:none;width:100%;max-width:520px;margin:4px auto 12px}}
html[data-theme="dark"] :is(#content,.lsMain) .fc-face.back .tag{color:rgba(240,253,250,.7)}
/* Jocs ràpids (QUIZ4) sense pista: la caixa de resultat buida semblava un error abans de respondre */
.edToolSlot .tlResult:has(> b:empty):has(> p:empty){display:none}

/* ===== P2 eines ===== */
/* Regleta d'ECG (ecg-regleta): paper mil·limetrat + compàs arrossegable */
.rgBox{display:flex;flex-direction:column;gap:10px}
.rgBox .ecgTabs{margin-bottom:0;align-self:flex-start}
.rgWrap{border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:6px;overflow:hidden}
.rgSvg{display:block;width:100%;max-width:760px;height:auto;margin:0 auto;touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:ew-resize}
.rgSvg.rgDrag{cursor:grabbing}
.rgPaper{fill:#fffafa}
.rgMin{stroke:#fbd5da;stroke-width:.5px;vector-effect:non-scaling-stroke}
.rgMaj{stroke:#f4a3ad;stroke-width:1px;vector-effect:non-scaling-stroke}
.rgTr,.rgCal{fill:none;stroke:#0f172a;stroke-width:1.8px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
.rgCal{stroke:#64748b}
.rgBand{fill:rgba(13,148,136,.18)}
.rgSpan{fill:rgba(13,148,136,.06)}
.rgArm{stroke:#0d9488;stroke-width:1.6px;vector-effect:non-scaling-stroke}
.rgBar{stroke:#0d9488;stroke-width:2px;vector-effect:non-scaling-stroke}
.rgKnob{fill:#0d9488;stroke:#fff;stroke-width:1.5px;vector-effect:non-scaling-stroke;cursor:grab}
.rgKnob:focus{outline:none}.rgKnob:focus-visible{stroke:#0f172a;stroke-width:3px}
.rgOut.rgOk{border-color:#0d9488;box-shadow:inset 3px 0 0 #0d9488}
.rgAct{display:flex;justify-content:flex-end}
.rgShow{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:7px 14px;font:600 12.5px var(--font-display);cursor:pointer}
.rgShow:hover{border-color:#0d9488;color:#0d9488}
[data-theme="dark"] .rgPaper{fill:#11161d}
[data-theme="dark"] .rgMin{stroke:rgba(248,113,113,.16)}
[data-theme="dark"] .rgMaj{stroke:rgba(248,113,113,.38)}
[data-theme="dark"] .rgTr{stroke:#e2e8f0}
[data-theme="dark"] .rgCal{stroke:#94a3b8}
[data-theme="dark"] .rgArm,[data-theme="dark"] .rgBar{stroke:#2dd4bf}
[data-theme="dark"] .rgKnob{fill:#2dd4bf;stroke:#0f172a}
[data-theme="dark"] .rgKnob:focus-visible{stroke:#fff}
[data-theme="dark"] .rgBand{fill:rgba(45,212,191,.22)}
[data-theme="dark"] .rgSpan{fill:rgba(45,212,191,.07)}
[data-theme="dark"] .rgOut.rgOk{border-color:#2dd4bf;box-shadow:inset 3px 0 0 #2dd4bf}
[data-theme="dark"] .rgShow:hover{border-color:#2dd4bf;color:#2dd4bf}
@media (max-width:600px){.rgWrap{padding:3px;border-radius:10px}.rgBox .ecgTabs button{padding:6px 11px}}
/* Polsos arterials sobre la silueta (polsos-cos) */
.pcBox{display:grid;grid-template-columns:minmax(180px,250px) minmax(0,1fr);gap:16px;align-items:start}
.pcFig{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:8px 4px}
.pcSvg{display:block;width:100%;height:auto;max-height:520px}
.pcSil{fill:none;stroke:var(--text-muted);stroke-width:1.6px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:.85}
.pcSoft{opacity:.3}
.pcPt{cursor:pointer;outline:none}
.pcHit{fill:transparent}
.pcDot{fill:#0d9488;stroke:var(--surface);stroke-width:1.5px;vector-effect:non-scaling-stroke}
.pcRing{fill:none;stroke:#0d9488;stroke-width:1.3px;vector-effect:non-scaling-stroke;opacity:.35;transform-box:fill-box;transform-origin:center}
.pcPost .pcRing{stroke-dasharray:3 2;opacity:.75}
.pcPost .pcDot{fill:var(--surface);stroke:#0d9488;stroke-width:1.8px}
.pcPt:hover .pcRing,.pcPt:focus-visible .pcRing{opacity:.9}
.pcPt:focus-visible .pcDot{stroke:var(--text);stroke-width:2px}
.pcPt.on .pcRing{opacity:1;animation:pcPing 1.1s ease-out infinite}
@keyframes pcPing{0%{transform:scale(.6);opacity:.9}100%{transform:scale(1.9);opacity:0}}
@media (prefers-reduced-motion:reduce){.pcPt.on .pcRing{animation:none;opacity:1}}
.pcNote{font:500 9px var(--font-body);fill:var(--text-muted);text-anchor:end}
.pcSide2{display:flex;flex-direction:column;gap:10px;min-width:0}
:is(#content,.lsMain) .pcInfo{margin-top:0}
:is(#content,.lsMain) .pcInfo .pcOn{margin:4px 0 0}
.pcOn span{font-weight:600;color:var(--text-muted)}
:is(#content,.lsMain) .pcUse{margin:6px 0 0;padding-left:18px}
:is(#content,.lsMain) .pcUse li{font-size:14px;line-height:1.5;margin:3px 0;color:var(--text)}
:is(#content,.lsMain,body) .pcInfo :is(.pcUse,.pcOn) b{display:inline;font-family:inherit;font-size:inherit;line-height:inherit;font-weight:600;color:inherit}
.pcUse:empty,.pcPas:empty{display:none}
[data-theme="dark"] .pcDot{fill:#2dd4bf;stroke:#0f172a}
[data-theme="dark"] .pcRing{stroke:#2dd4bf}
[data-theme="dark"] .pcPost .pcDot{fill:#0f172a;stroke:#2dd4bf}
@media (max-width:600px){.pcBox{grid-template-columns:1fr}.pcFig{max-width:250px;margin:0 auto;width:100%}.pcSvg{max-height:430px}}

/* ===== P1 plataforma ===== */
/* (24/09/2026) línia de preparació global · cercador v2 · repàs espaiat v2 · pseudònims del rànquing ·
   subtemes plegats al cicle · examen des d'un tema · botó «Índex» que s'aparta · «Lliçó guiada» sota el títol al mòbil */

/* --- Línia de preparació global (vora inferior de la capçalera) --- */
#globalProg{position:absolute;left:0;right:0;bottom:-1px;height:3px;background:color-mix(in srgb,var(--brand) 14%,transparent);pointer-events:auto;cursor:help;z-index:2}
#globalProg i{display:block;height:100%;width:0;background:linear-gradient(90deg,#0d9488,#2dd4bf);border-radius:0 3px 3px 0;transition:width .8s cubic-bezier(.2,.8,.2,1)}
html[data-theme="dark"] #globalProg{background:rgba(45,212,191,.14)}
html.focusMode #globalProg{display:none}

/* --- Cercador v2 --- */
.searchResults{max-height:min(72vh,560px);padding:10px;gap:8px}
.searchResults .searchEmpty{padding:10px 12px;font-size:13.5px;line-height:1.45;color:var(--text-muted);display:flex;align-items:center;gap:8px}
.srSpin{width:14px;height:14px;border-radius:50%;border:2px solid color-mix(in srgb,var(--brand) 25%,transparent);border-top-color:var(--brand);animation:srSpin .8s linear infinite;flex:none}
@keyframes srSpin{to{transform:rotate(360deg)}}
.srSug{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:2px 2px 8px;border-bottom:1px solid var(--border)}
.srLbl,.srGroupHead{display:flex;align-items:center;gap:6px;font-family:var(--font-display);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
.srLbl{width:100%;margin-bottom:2px}
.srLbl .ic,.srGroupHead .ic{width:13px;height:13px}
.srChip{display:inline-block;vertical-align:middle;max-width:100%;padding:5px 11px;border-radius:999px;border:1px solid var(--border);background:var(--surface-alt);color:var(--text);font-size:13px;line-height:1.3;cursor:pointer;text-align:left;font-family:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.srChip:hover,.srChip.kbd{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 10%,var(--surface))}
.srGroup{display:flex;flex-direction:column;gap:2px}
.srGroupHead{padding:6px 4px 4px}
.srGroupHead em{font-style:normal;margin-left:auto;font-size:11px;letter-spacing:0;color:var(--brand-dark);background:color-mix(in srgb,var(--brand) 12%,transparent);padding:1px 7px;border-radius:999px}
.srTopicIc{display:inline-flex;color:var(--brand)}
.srItem{display:flex;align-items:flex-start;gap:10px;width:100%;padding:8px 10px;border-radius:10px;border:1px solid transparent;background:none;color:var(--text);text-align:left;cursor:pointer;font-family:inherit}
.srItem:hover,.srItem.kbd{background:var(--surface-alt);border-color:var(--border)}
.srItemIc{flex:none;width:28px;height:28px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--brand) 12%,transparent);color:var(--brand-dark)}
.srItemIc .ic{width:16px;height:16px}
.srItemBody{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.srItemBody b{font-family:var(--font-display);font-size:13.5px;font-weight:600;line-height:1.3}
.srItemBody > span,.srItemBody small{font-size:12.5px;line-height:1.45;color:var(--text-muted)}
.srGo{flex:none;align-self:center;color:var(--text-faint);display:inline-flex}
.srGo .ic{width:15px;height:15px}
.srItem:hover .srGo,.srItem.kbd .srGo{color:var(--brand)}
.searchResults mark{background:color-mix(in srgb,#2dd4bf 32%,transparent);color:inherit;border-radius:3px;padding:0 1px}
.srMore{align-self:flex-start;margin:0 0 2px 10px;padding:3px 0;border:0;background:none;color:var(--brand-dark);font-size:12.5px;font-weight:600;cursor:pointer;font-family:inherit}
.srMore:hover,.srMore.kbd{text-decoration:underline}
.srFoot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 4px 0;border-top:1px solid var(--border);font-size:12px;color:var(--text-muted)}
.srKeys{font-size:11px;color:var(--text-faint);letter-spacing:.04em}
@media (hover:none){.srKeys{display:none}}
.srFlash{animation:srFlash 2.4s ease-out}
@keyframes srFlash{0%,35%{box-shadow:0 0 0 3px color-mix(in srgb,#2dd4bf 70%,transparent);background-color:color-mix(in srgb,#2dd4bf 16%,transparent)}100%{box-shadow:0 0 0 3px transparent;background-color:transparent}}
html[data-theme="dark"] .srGroupHead em,html[data-theme="dark"] .srMore{color:#5eead4}
html[data-theme="dark"] .srItemIc{color:#5eead4}
@media (max-width:640px){
  .searchResults{max-height:calc(100vh - 240px);max-height:calc(100dvh - 240px)}
  .srChip{font-size:12.5px}
}

/* --- Repàs espaiat v2 --- */
.srsView{max-width:980px}
.srsToday{margin:6px 0 18px;padding:22px;border-radius:20px;border:1px solid var(--border);background:var(--surface);box-shadow:0 1px 2px rgba(15,23,42,.04)}
.srsTodayTop{display:grid;grid-template-columns:auto minmax(0,1fr);gap:22px;align-items:center}
.srsBig{display:flex;flex-direction:column;align-items:center;justify-content:center;width:132px;height:132px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#2dd4bf,#0d9488 70%);color:#fff;text-align:center;box-shadow:0 10px 30px -12px rgba(13,148,136,.7)}
.srsBig b{font-family:var(--font-display);font-size:42px;line-height:1;font-weight:700}
.srsBig span{font-size:12.5px;line-height:1.25;max-width:96px;margin-top:4px;opacity:.95}
.srsWhy{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.srsWhy li{display:grid;grid-template-columns:34px 34px minmax(0,1fr);align-items:center;gap:10px}
.srsWhy li.zero{opacity:.55}
.srsWhyIc{width:34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--k) 12%,transparent);color:var(--k)}
.srsWhyIc .ic{width:18px;height:18px}
.srsWhy li > b{font-family:var(--font-display);font-size:22px;font-weight:700;color:var(--k);text-align:center}
.srsWhy strong{display:block;font-family:var(--font-display);font-size:14.5px;font-weight:600;color:var(--text)}
.srsWhy small{display:block;font-size:13px;line-height:1.4;color:var(--text-muted)}
.srsWhy .k-fail,.srsWhyTag.k-fail,.srsWhyTag.k-again{--k:#be123c}
.srsWhy .k-due,.srsWhyTag.k-due{--k:#0f766e}
.srsWhy .k-new,.srsWhyTag.k-new{--k:#4f46e5}
html[data-theme="dark"] .srsWhy .k-fail,html[data-theme="dark"] .srsWhyTag.k-fail,html[data-theme="dark"] .srsWhyTag.k-again{--k:#fb7185}
html[data-theme="dark"] .srsWhy .k-due,html[data-theme="dark"] .srsWhyTag.k-due{--k:#2dd4bf}
html[data-theme="dark"] .srsWhy .k-new,html[data-theme="dark"] .srsWhyTag.k-new{--k:#a5b4fc}
.btnv2.srsStart{margin-top:18px;width:100%;justify-content:center;display:inline-flex;align-items:center;gap:8px;padding:14px 18px;font-size:15.5px}
.btnv2.srsStart .ic{width:16px;height:16px;fill:currentColor;stroke:none}
.srsDone{margin:16px 0 0;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;background:color-mix(in srgb,var(--brand) 10%,transparent);color:var(--text);font-size:14px;line-height:1.45}
.srsDone .ic{flex:none;width:20px;height:20px;color:var(--brand)}
.srsGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-bottom:16px}
.srsCard{padding:16px 18px;border-radius:16px;border:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;gap:10px}
.srsCard p{margin:0;font-size:13.5px;line-height:1.5;color:var(--text-muted)}
.srsCard .btnv2{align-self:flex-start}
.srsCardHead{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:14.5px}
.srsCardHead .ic{width:17px;height:17px;color:var(--brand)}
.srsCardHead b{font-weight:600}
.srsCardHead em{margin-left:auto;font-style:normal;font-weight:700;font-size:13px;color:var(--brand-dark);background:color-mix(in srgb,var(--brand) 12%,transparent);padding:2px 9px;border-radius:999px}
.srsBars{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;height:112px;align-items:end}
.srsBar{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:4px}
.srsBar em{font-style:normal;font-size:11.5px;font-weight:600;color:var(--text-muted);min-height:14px}
.srsBar i{display:block;width:100%;max-width:30px;border-radius:6px 6px 3px 3px;background:linear-gradient(180deg,#2dd4bf,#0d9488);min-height:3px}
.srsBar span{font-size:11.5px;color:var(--text-faint);text-transform:uppercase;letter-spacing:.04em}
.srsNote{font-size:12.5px;line-height:1.45;color:var(--text-muted)}
.srsTopicRow{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:none;color:var(--text);cursor:pointer;text-align:left;font-family:inherit;font-size:13.5px}
.srsTopicRow:hover{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 6%,transparent)}
.srsTopicRow span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.srsTopicRow b{font-family:var(--font-display);color:var(--brand-dark)}
.srsTopicIc{display:inline-flex;color:var(--brand)}
.srsHow{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:0 16px}
.srsHow summary{display:flex;align-items:center;gap:8px;padding:13px 0;cursor:pointer;font-family:var(--font-display);font-size:14px;list-style:none}
.srsHow summary::-webkit-details-marker{display:none}
.srsHow summary .ic{width:17px;height:17px;color:var(--brand)}
.srsHow summary b{font-weight:600}
.srsHow ol{margin:0 0 14px;padding-left:22px;display:flex;flex-direction:column;gap:7px;font-size:13.5px;line-height:1.5;color:var(--text-muted)}
.srsHow ol b{color:var(--text)}
.srsSessTop{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:4px 0 8px}
.srsSessTop .linkbtn{display:inline-flex;align-items:center;gap:6px}
.srsSessTop .ic{width:15px;height:15px}
.srsSessCount{font-family:var(--font-display);font-size:13.5px;font-weight:600;color:var(--text-muted)}
.srsProg{height:6px;border-radius:999px;background:var(--surface-alt);overflow:hidden;margin-bottom:14px}
.srsProg i{display:block;height:100%;background:linear-gradient(90deg,#0d9488,#2dd4bf);border-radius:999px;transition:width .35s ease}
.srsWhyTag{color:var(--k) !important;display:inline-flex;align-items:center;gap:6px}
.srsWhyTag .ic{width:14px;height:14px}
.fw-rate .fw-rateWhen{display:block;font-size:11px;font-weight:500;opacity:.75;margin-top:2px;letter-spacing:0}
.fw-rateRow .fw-rate{flex-direction:column;line-height:1.2}
.srsEnd{text-align:center;max-width:560px;margin:24px auto}
.srsEndIc{width:58px;height:58px;margin:0 auto 10px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand)}
.srsEndIc .ic{width:28px;height:28px}
.srsEnd h2{margin:0 0 6px;font-family:var(--font-display)}
.srsEndBtns{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:14px}
.srsEndBtns .ic{width:15px;height:15px}
html[data-theme="dark"] .srsCardHead em,html[data-theme="dark"] .srsTopicRow b{color:#5eead4}
@media (max-width:640px){
  .srsToday{padding:16px;border-radius:16px}
  .srsTodayTop{grid-template-columns:1fr;gap:16px;justify-items:center}
  .srsBig{width:112px;height:112px}
  .srsBig b{font-size:36px}
  .srsWhy{width:100%}
  .srsWhy li{grid-template-columns:32px 30px minmax(0,1fr);gap:8px}
  .srsWhy li > b{font-size:19px}
  .srsWhy strong{font-size:14px}
  .srsWhy small{font-size:12.5px}
  .srsGrid{grid-template-columns:1fr}
  .srsSession .fw-rateRow{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .srsSession .fw-rateRow .fw-rateLabel{grid-column:1/-1;text-align:center}
  .srsSession .fw-rateRow .fw-rate{width:100%;margin:0;padding-left:8px;padding-right:8px}
}

/* --- Rànquing amb pseudònims --- */
.pseudoMe{display:flex;align-items:center;gap:10px;padding:10px 12px;margin:2px 0 10px;border-radius:12px;background:color-mix(in srgb,var(--brand) 8%,transparent);border:1px solid color-mix(in srgb,var(--brand) 22%,transparent)}
.pseudoMe > div{display:flex;flex-direction:column;min-width:0;flex:1}
.pseudoMe small{font-size:11.5px;color:var(--text-muted)}
.pseudoMe b{font-family:var(--font-display);font-size:15px;font-weight:600;color:var(--text)}
.podiumAvatar.sm{width:32px;height:32px;min-width:32px;font-size:12px;margin:0;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,#2dd4bf,#0d9488);color:#fff;font-weight:700;font-family:var(--font-display)}
.pseudoPicker{margin:0 0 12px;padding:12px;border-radius:12px;border:1px dashed var(--border);background:var(--surface)}
.pseudoPicker[hidden]{display:none}
.pseudoHint{margin:0 0 10px;font-size:12.5px;line-height:1.45;color:var(--text-muted)}
.pseudoOpts{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px}
.pseudoOpt{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:var(--surface-alt);color:var(--text);cursor:pointer;font-family:var(--font-display);font-size:13.5px;font-weight:600;text-align:left}
.pseudoOpt:hover{border-color:var(--brand)}
.pseudoOpt:disabled{opacity:.6;cursor:wait}
.pseudoBtns{display:flex;gap:14px;margin-top:10px}

/* --- Cicle del tema: subtemes plegats (l'índex ja és a la columna dreta / botó «Índex») --- */
.mSecWrap{margin:10px 0 4px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.mSecWrap > summary{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;list-style:none;font-family:var(--font-display);font-size:13px;font-weight:600;color:var(--text)}
.mSecWrap > summary::-webkit-details-marker{display:none}
.mSecWrap > summary svg{width:16px;height:16px;color:var(--brand)}
.mSecWrap > summary .mSecCount{margin-left:auto;font-style:normal;font-size:12px;color:var(--brand-dark);background:color-mix(in srgb,var(--brand) 12%,transparent);padding:2px 8px;border-radius:999px}
.mSecWrap > summary::after{content:"";width:8px;height:8px;border-right:1.8px solid var(--text-muted);border-bottom:1.8px solid var(--text-muted);transform:rotate(45deg);margin:-3px 4px 0 6px;transition:transform .2s}
.mSecWrap[open] > summary::after{transform:rotate(-135deg);margin-top:3px}
.mSecWrap > .mSecList{margin:0;padding:4px 10px 10px}
html[data-theme="dark"] .mSecWrap > summary .mSecCount{color:#5eead4}
@media (min-width:1181px){#contentLayout:not(:has(> #sideAside[style*="none"])) .mSecWrap{display:none}}

/* --- Configurar examen des d'un tema --- */
.examPreNote{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:4px 0 10px;padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--brand) 9%,transparent);border:1px solid color-mix(in srgb,var(--brand) 22%,transparent);font-size:13.5px;line-height:1.4}
.examPreNote svg{width:17px;height:17px;color:var(--brand);flex:none}
.examPreNote span{flex:1;min-width:180px}
.examPreNote .linkbtn{font-weight:600}

/* --- Botó flotant «Índex»: s'aparta en baixar (app-metode.js) --- */
#tocFab{transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .2s}
#tocFab.fabAway{transform:translateY(calc(100% + 120px));opacity:0;pointer-events:none}

/* --- Mòbil: «Lliçó guiada» sota el títol del subtema, no al costat --- */
@media (max-width:640px){
  :is(#content,.lsMain) .tsection > h2{grid-template-columns:auto minmax(0,1fr)}
  :is(#content,.lsMain) .tsection > h2 .lsGoH2{grid-column:2;grid-row:2;justify-self:start;margin:2px 0 0}
}

/* --- Compte personal: marca d'aigua discreta amb el correu (index.html acctApplyWatermark) --- */
html.acctWm #content{position:relative}
html.acctWm #content::after{content:"";position:absolute;inset:0;z-index:4;pointer-events:none;background-image:var(--acct-wm-light);background-repeat:repeat}
html.acctWm[data-theme="dark"] #content::after{background-image:var(--acct-wm-dark)}
html.acctWm .lsMain{background-image:var(--acct-wm-light);background-repeat:repeat;background-attachment:local}
html.acctWm[data-theme="dark"] .lsMain{background-image:var(--acct-wm-dark)}
@media print{
  html.acctWm #content::after{display:none}
  body[data-wm]::after{content:attr(data-wm);position:fixed;left:0;right:0;bottom:3mm;text-align:center;font:600 8.5px/1.2 Arial,Helvetica,sans-serif;color:rgba(15,23,42,.5);letter-spacing:.02em;z-index:9999;pointer-events:none}
  body[data-wm]:not(.printing)::before{content:attr(data-wm);position:fixed;top:46%;left:0;width:100%;text-align:center;transform:rotate(-28deg);font:700 12.5px/1 Arial,Helvetica,sans-serif;color:rgba(15,23,42,.14);letter-spacing:.03em;white-space:nowrap;z-index:9999;pointer-events:none}
}
/* llegenda al mòbil: la fila llisca de costat; l esvaïment a la dreta indica que continua */
@media (max-width:760px){#content .lecLegend .lecLegPath,#content .lecLegend .lecLegDots{-webkit-mask-image:linear-gradient(90deg,#000 82%,transparent);mask-image:linear-gradient(90deg,#000 82%,transparent);padding-right:24px}}
/* Autoavaluació: «Una altra pregunta» del banc de l'apartat */
.qcMore{margin-top:4px}
.qcMore .qcStart{display:inline-flex;align-items:center;gap:6px;font-weight:600}
.qcMore .qcStart em{font-style:normal;font-weight:500;color:var(--text-muted);font-size:.9em}
.qcMore .qcBank .blk-label{color:var(--brand-dark,#0f766e)}
.qcMore .qcNextBtn:not(.qcStart){margin-top:8px;font-weight:600}
/* Tauler: compte enrere en 3 línies clares (etiqueta · data · canviar) en lloc d'un paràgraf estret */
.dStat.count > em.dCountTxt{display:flex;flex-direction:column;gap:3px;font-style:normal;line-height:1.25}
.dCountTxt span{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7fe3d3}
.dCountTxt b{font-family:var(--font-display,Poppins,sans-serif);font-size:18px;color:#fff}
.dCountTxt a{font-size:13px}
.dCountTxt b{white-space:nowrap;font-size:17px}
.dStat.count{flex-wrap:nowrap}
.dStat.count > em.dCountTxt{min-width:0}

/* ===== «Per recordar-ho» v2 (MN de consolida/_h.js): regla destacada + claus en files (substitueix els reguitzells « · ») ===== */
:is(#content,.lsMain) .mn2 .mnRule{margin:4px 0 12px;padding:10px 13px;border-radius:10px;background:color-mix(in srgb,var(--t3-gold) 11%,transparent);color:var(--t3-ink);font-family:var(--display,'Poppins',sans-serif);font-size:15px;font-weight:500;line-height:1.5}
:is(#content,.lsMain) .mn2 .mnRule b{color:var(--t3-gold);font-weight:700}
:is(#content,.lsMain) .mn2 .mnKeys{list-style:none;margin:0;padding:0}
:is(#content,.lsMain) .mn2 .mnKeys li{display:grid;grid-template-columns:minmax(118px,30%) 1fr;gap:4px 14px;margin:0;padding:9px 0;border-top:1px solid color-mix(in srgb,var(--t3-gold) 22%,transparent);line-height:1.5}
:is(#content,.lsMain) .mn2 .mnKeys li:first-child{border-top:0;padding-top:2px}
:is(#content,.lsMain) .mn2 .mnKeys li::before{content:none}
:is(#content,.lsMain) .mn2 .mnK{font-weight:700;color:var(--t3-ink)}
:is(#content,.lsMain) .mn2 .mnKeys span b{font-weight:700}
:is(#content,.lsMain) .mn2 .mnTip{margin:10px 0 0;padding-top:9px;border-top:1px dashed color-mix(in srgb,var(--t3-gold) 35%,transparent);font-weight:600}
@media (max-width:640px){
  :is(#content,.lsMain) .mn2 .mnRule{font-size:14.5px;padding:9px 11px}
  :is(#content,.lsMain) .mn2 .mnKeys li{grid-template-columns:1fr;gap:1px;padding:8px 0}
  :is(#content,.lsMain) .mn2 .mnK{font-size:13.5px;color:var(--t3-gold)}
}

/* ===== «Per recordar-ho» (RULES) i «Compte a l'examen» (EXAM) de consolida/_h.js — mateix estil de blocs, només ordre intern ===== */
:is(#content,.lsMain) .mnRules .mnRl,:is(#content,.lsMain) .exTraps .exL{list-style:none;margin:2px 0 0;padding:0}
:is(#content,.lsMain) .mnRules .mnRl li,:is(#content,.lsMain) .exTraps .exL li{margin:0;padding:9px 0;border-top:1px solid color-mix(in srgb,var(--blk-c,var(--t3-gold)) 22%,transparent)}
:is(#content,.lsMain) .mnRules .mnRl li:first-child,:is(#content,.lsMain) .exTraps .exL li:first-child{border-top:0;padding-top:2px}
:is(#content,.lsMain) .mnRules .mnRl li::before,:is(#content,.lsMain) .exTraps .exL li::before{content:none}
:is(#content,.lsMain) .mnRules .mnRule{margin:0 0 3px;font-family:var(--display,'Poppins',sans-serif);font-size:15px;font-weight:500;line-height:1.45;color:var(--t3-ink)}
:is(#content,.lsMain) .mnRules .mnRule b{color:var(--t3-gold);font-weight:700}
:is(#content,.lsMain) .mnRules .mnMean{margin:0;line-height:1.5}
:is(#content,.lsMain) .exTraps .exQ{display:block;font-weight:600;line-height:1.45}
:is(#content,.lsMain) .exTraps .exA{display:block;margin-top:2px;line-height:1.5}
:is(#content,.lsMain) .exTraps .exA::before{content:"→ ";color:var(--t3-red);font-weight:700}
@media (max-width:640px){:is(#content,.lsMain) .mnRules .mnRule{font-size:14.5px}}

/* ===== Lectura v5: XIFRES (targetes de dades) i GRUPS (llistes llargues agrupades en etiquetes) — consolida/_h.js ===== */
:is(#content,.lsMain) .xfBlk .xfGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-top:6px}
:is(#content,.lsMain) .xfBlk .xf{display:flex;flex-direction:column;gap:3px;padding:12px 13px;border-radius:12px;background:color-mix(in srgb,var(--blk-c,var(--t3-slate)) 8%,transparent);border:1px solid color-mix(in srgb,var(--blk-c,var(--t3-slate)) 22%,transparent)}
:is(#content,.lsMain) .xfBlk .xfN{font-family:var(--display,'Poppins',sans-serif);font-size:24px;font-weight:600;line-height:1.1;color:var(--blk-c,var(--t3-ink));letter-spacing:-.01em}
:is(#content,.lsMain) .xfBlk .xfT{font-weight:600;line-height:1.35;color:var(--t3-ink)}
:is(#content,.lsMain) .xfBlk .xfC{font-size:.88em;line-height:1.4;opacity:.8}
:is(#content,.lsMain) .xfBlk .xfNote,:is(#content,.lsMain) .grpBlk .grpNote{margin:10px 0 0;line-height:1.5}
:is(#content,.lsMain) .grpBlk .grpGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;margin-top:6px}
:is(#content,.lsMain) .grpBlk .grpCard{padding:12px 13px;border-radius:12px;border:1px solid color-mix(in srgb,var(--t3-slate) 25%,transparent);background:color-mix(in srgb,var(--t3-slate) 5%,transparent)}
:is(#content,.lsMain) .grpBlk .grpCard.risc{border-color:color-mix(in srgb,var(--t3-red) 35%,transparent);background:var(--t3-red-bg)}
:is(#content,.lsMain) .grpBlk .grpCard.ok{border-color:color-mix(in srgb,var(--t3-teal) 35%,transparent);background:var(--t3-teal-bg)}
:is(#content,.lsMain) .grpBlk .grpCard.info{border-color:color-mix(in srgb,var(--t3-gold) 35%,transparent);background:var(--t3-gold-bg)}
:is(#content,.lsMain) .grpBlk .grpT{margin:0 0 6px;font-family:var(--display,'Poppins',sans-serif);font-weight:600;font-size:15px;color:var(--t3-ink)}
:is(#content,.lsMain) .grpBlk .risc .grpT{color:var(--t3-red)}
:is(#content,.lsMain) .grpBlk .ok .grpT{color:var(--t3-teal)}
:is(#content,.lsMain) .grpBlk .grpS{margin:8px 0 4px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.75}
:is(#content,.lsMain) .grpBlk .chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
:is(#content,.lsMain) .grpBlk .chips li{margin:0;padding:5px 10px;border-radius:999px;background:color-mix(in srgb,var(--t3-ink) 6%,transparent);font-size:.93em;line-height:1.35}
:is(#content,.lsMain) .grpBlk .chips li::before{content:none}
@media (max-width:640px){
  :is(#content,.lsMain) .xfBlk .xfGrid{grid-template-columns:1fr 1fr;gap:8px}
  :is(#content,.lsMain) .xfBlk .xf{padding:10px 11px}
  :is(#content,.lsMain) .xfBlk .xfN{font-size:21px}
  :is(#content,.lsMain) .grpBlk .grpGrid{grid-template-columns:1fr}
}

/* ===== Passada visual v1: imatges (PIC), fitxes amb imatge i color (FITXES), accents per categoria, Vista essencial ===== */
:is(#content,.lsMain){--acc-teal:#0d9488;--acc-indigo:#4f46e5;--acc-amber:#b45309;--acc-rose:#be185d;--acc-sky:#0369a1;--acc-slate:#475569}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) :is(#content,.lsMain){--acc-teal:#2dd4bf;--acc-indigo:#a5b4fc;--acc-amber:#fbbf24;--acc-rose:#f9a8d4;--acc-sky:#7dd3fc;--acc-slate:#cbd5e1}}
:root[data-theme="dark"] :is(#content,.lsMain){--acc-teal:#2dd4bf;--acc-indigo:#a5b4fc;--acc-amber:#fbbf24;--acc-rose:#f9a8d4;--acc-sky:#7dd3fc;--acc-slate:#cbd5e1}
:is(#content,.lsMain) .blkPic{margin:10px 0;border-radius:12px;overflow:hidden;background:#fff;border:1px solid color-mix(in srgb,var(--t3-slate) 22%,transparent);max-width:420px}
:is(#content,.lsMain) .blkPic img{display:block;width:100%;height:auto;max-height:340px;object-fit:contain;background:#fff}
:is(#content,.lsMain) .blkPic figcaption{padding:8px 11px;font-size:13px;line-height:1.4;background:var(--t3-slate-bg);color:var(--t3-ink)}
:is(#content,.lsMain) .picCredit{display:block;margin-top:3px;font-size:10.5px;opacity:.65;line-height:1.3}
:is(#content,.lsMain) .fxBlk .fxGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin-top:6px}
:is(#content,.lsMain) .fxBlk .fx{--c:var(--acc-teal);display:flex;flex-direction:column;border-radius:14px;overflow:hidden;border:1px solid color-mix(in srgb,var(--c) 35%,transparent);background:color-mix(in srgb,var(--c) 6%,transparent)}
:is(#content,.lsMain) .fx.acc-indigo{--c:var(--acc-indigo)}:is(#content,.lsMain) .fx.acc-amber{--c:var(--acc-amber)}:is(#content,.lsMain) .fx.acc-rose{--c:var(--acc-rose)}:is(#content,.lsMain) .fx.acc-sky{--c:var(--acc-sky)}:is(#content,.lsMain) .fx.acc-slate{--c:var(--acc-slate)}
:is(#content,.lsMain) .fxBlk .fxImg{background:#fff;border-bottom:3px solid var(--c);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center}
:is(#content,.lsMain) .fxBlk .fxImg img{width:100%;height:100%;object-fit:contain}
:is(#content,.lsMain) .fxBlk .fx:not(:has(.fxImg)){border-top:4px solid var(--c)}
:is(#content,.lsMain) .fxBlk .fxBody{padding:10px 12px 12px;display:flex;flex-direction:column;gap:6px;flex:1}
:is(#content,.lsMain) .fxBlk .fxNom{margin:0;font-family:var(--display,'Poppins',sans-serif);font-weight:600;font-size:15px;line-height:1.3;color:var(--t3-ink)}
:is(#content,.lsMain) .fxBlk .fxTag{display:inline-block;margin-left:4px;padding:1px 8px;border-radius:999px;font:600 11px/1.6 var(--body,inherit);background:color-mix(in srgb,var(--c) 16%,transparent);color:var(--c);vertical-align:2px}
:is(#content,.lsMain) .fxBlk .fxDades{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:6px}
:is(#content,.lsMain) .fxBlk .fxDades div{padding:6px 8px;border-radius:9px;background:color-mix(in srgb,var(--c) 9%,transparent)}
:is(#content,.lsMain) .fxBlk .fxDades dt{font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;opacity:.7}
:is(#content,.lsMain) .fxBlk .fxDades dd{margin:1px 0 0;font-weight:600;line-height:1.3;color:var(--c)}
:is(#content,.lsMain) .fxBlk .fxClau{margin:0;font-size:.93em;line-height:1.45}
:is(#content,.lsMain) .fxBlk .fxNote{margin:10px 0 0;line-height:1.5}
@media (max-width:640px){:is(#content,.lsMain) .fxBlk .fxGrid{grid-template-columns:1fr 1fr;gap:8px}:is(#content,.lsMain) .fxBlk .fxDades{grid-template-columns:1fr}:is(#content,.lsMain) .fxBlk .fxNom{font-size:14px}:is(#content,.lsMain) .fxBlk .fxBody{padding:8px 9px 10px}}
@media (max-width:380px){:is(#content,.lsMain) .fxBlk .fxGrid{grid-template-columns:1fr}}
/* Vista essencial: a cada element de llista llarg només es veu la primera frase; la resta, amb un toc */
.lecEssBtn{display:inline-flex;align-items:center;gap:6px;margin:6px 0 0;padding:5px 11px;border-radius:999px;border:1px solid color-mix(in srgb,var(--t3-teal) 40%,transparent);background:transparent;color:var(--t3-teal);font:600 12.5px/1.2 var(--body,inherit);cursor:pointer}
.lecEssBtn[aria-pressed="true"]{background:var(--t3-teal);color:#fff}
.lecEss .essMore{display:none}
.lecEss .essDots{display:inline;cursor:pointer;color:var(--t3-teal);font-weight:700;margin-left:4px}
.essDots{display:none}
.lecEss .essOpen .essMore{display:inline}.lecEss .essOpen .essDots{display:none}
/* visual v1 · ajustos: alçada fixa de la imatge, sense estirar targetes; al mòbil fitxa horitzontal (imatge a l'esquerra) */
:is(#content,.lsMain) .fxBlk .fxGrid{align-items:start}
:is(#content,.lsMain) .fxBlk .fxImg{aspect-ratio:auto;height:170px;padding:6px}
:is(#content,.lsMain) .fxBlk .fxImg img{max-height:100%;width:auto;max-width:100%}
@media (max-width:640px){
  :is(#content,.lsMain) .fxBlk .fxGrid{grid-template-columns:1fr;gap:10px}
  :is(#content,.lsMain) .fxBlk .fx{flex-direction:row}
  :is(#content,.lsMain) .fxBlk .fxImg{flex:0 0 108px;height:auto;min-height:120px;border-bottom:0;border-right:3px solid var(--c)}
  :is(#content,.lsMain) .fxBlk .fxDades{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){:is(#content,.lsMain) .fxBlk .fxImg{flex:0 0 118px;padding:0;align-self:stretch}:is(#content,.lsMain) .fxBlk .fxImg img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:center 30%}}
.lecEss .essOpen > .essList{display:block}
/* crèdits de les imatges: gairebé invisibles (petició de l Adrià) */
:is(#content,.lsMain) .picCredit{font-size:8.5px;opacity:.38;margin-top:2px;line-height:1.2;letter-spacing:0}
:is(#content,.lsMain) .fxBlk .fxBody .picCredit{margin-top:auto;padding-top:2px}
/* peu de les imatges llegible en fosc: la figura no porta fons blanc (només la imatge) */
:is(#content,.lsMain) .blkPic{background:transparent}
:is(#content,.lsMain) .blkPic figcaption{background:var(--t3-slate-bg);color:var(--t3-ink)}
/* Temari integrat: taules, figures i eines dins la mateixa seqüència que les idees (sense número, amb icona discreta) */
:is(#content,.lsMain) .lecList .lecItem.k-visual .lecN.lecNv{background:transparent;border:1px dashed color-mix(in srgb,var(--t3-slate) 40%,transparent);color:var(--t3-slate)}
:is(#content,.lsMain) .lecList .lecItem.k-visual .lecN.lecNv svg{width:14px;height:14px}
:is(#content,.lsMain) .lecList .lecItem.k-visual .lecBody > *{margin-top:2px}
/* GRUPS v2 (Adrià 26/09: les «píndoles» es veien estranyes): llista neta amb punt de color, sense fons de píndola */
:is(#content,.lsMain) .grpBlk .chips{display:block;margin:0 0 4px}
:is(#content,.lsMain) .grpBlk .chips li{display:block;position:relative;margin:0;padding:4px 0 4px 16px;border-radius:0;background:none;font-size:inherit;line-height:1.5}
:is(#content,.lsMain) .grpBlk .chips li::before{content:"";position:absolute;left:2px;top:.8em;width:6px;height:6px;border-radius:50%;background:var(--t3-slate)}
:is(#content,.lsMain) .grpBlk .risc .chips li::before{background:var(--t3-red)}
:is(#content,.lsMain) .grpBlk .ok .chips li::before{background:var(--t3-teal)}
:is(#content,.lsMain) .grpBlk .info .chips li::before{background:var(--t3-gold)}
:is(#content,.lsMain) .grpBlk .chips li + li{border-top:1px solid color-mix(in srgb,var(--t3-slate) 14%,transparent)}
:is(#content,.lsMain) .grpBlk .grpS{margin:10px 0 2px}
/* taula compacta al mòbil: lletra una mica més petita, sense desbordar */
@media (max-width:640px){:is(#content,.lsMain) table.tblCompact{font-size:13px;width:100%;table-layout:auto}:is(#content,.lsMain) table.tblCompact th,:is(#content,.lsMain) table.tblCompact td{padding:7px 8px;vertical-align:top}}

/* ===== Components visuals v2: TIPUS, ORGANS, ESCALA, MIRALL (consolida/_h.js) ===== */
:is(#content,.lsMain) :is(.tp,.or){--c:var(--acc-teal)}
:is(#content,.lsMain) :is(.tp,.or).acc-indigo{--c:var(--acc-indigo)}:is(#content,.lsMain) :is(.tp,.or).acc-amber{--c:var(--acc-amber)}:is(#content,.lsMain) :is(.tp,.or).acc-rose{--c:var(--acc-rose)}:is(#content,.lsMain) :is(.tp,.or).acc-sky{--c:var(--acc-sky)}:is(#content,.lsMain) :is(.tp,.or).acc-slate{--c:var(--acc-slate)}
:is(#content,.lsMain) .tpGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin-top:6px}
:is(#content,.lsMain) .tp{border-radius:14px;border:1px solid color-mix(in srgb,var(--c) 32%,transparent);background:color-mix(in srgb,var(--c) 5%,transparent);overflow:hidden}
:is(#content,.lsMain) .tpHead{display:flex;align-items:center;gap:10px;padding:11px 12px;background:color-mix(in srgb,var(--c) 12%,transparent);border-bottom:1px solid color-mix(in srgb,var(--c) 22%,transparent)}
:is(#content,.lsMain) .tpIco{flex:none;width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--c);color:#fff}
:is(#content,.lsMain) .tpIco svg{width:20px;height:20px}
:is(#content,.lsMain) .tpNom{margin:0;font-family:var(--display,'Poppins',sans-serif);font-weight:600;font-size:15.5px;line-height:1.25;color:var(--t3-ink)}
:is(#content,.lsMain) .tpSub{margin:2px 0 0;font-size:12.5px;font-weight:600;color:var(--c)}
:is(#content,.lsMain) .tpRows{margin:0;padding:4px 12px 10px}
:is(#content,.lsMain) .tpRows div{padding:7px 0;border-top:1px solid color-mix(in srgb,var(--t3-slate) 14%,transparent)}
:is(#content,.lsMain) .tpRows div:first-child{border-top:0}
:is(#content,.lsMain) .tpRows dt{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--c);margin-bottom:1px}
:is(#content,.lsMain) .tpRows dd{margin:0;line-height:1.5}
:is(#content,.lsMain) :is(.tpNote,.orNote,.esNote,.miNote){margin:10px 0 0;line-height:1.5}
:is(#content,.lsMain) .orGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin-top:6px}
:is(#content,.lsMain) .or{border-radius:14px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--c) 28%,transparent);background:color-mix(in srgb,var(--c) 5%,transparent)}
:is(#content,.lsMain) .orHead{display:flex;align-items:center;gap:9px;margin-bottom:4px}
:is(#content,.lsMain) .orHead p{margin:0;font-family:var(--display,'Poppins',sans-serif);font-weight:600;font-size:15px;color:var(--t3-ink)}
:is(#content,.lsMain) .orIco{flex:none;width:34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--c) 16%,transparent);color:var(--c)}
:is(#content,.lsMain) .orIco svg{width:20px;height:20px}
:is(#content,.lsMain) .or ul{margin:0;padding:0;list-style:none}
:is(#content,.lsMain) .or li{position:relative;padding:3px 0 3px 14px;line-height:1.45}
:is(#content,.lsMain) .or li::before{content:"";position:absolute;left:1px;top:.75em;width:6px;height:6px;border-radius:50%;background:var(--c)}
:is(#content,.lsMain) .esList{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
:is(#content,.lsMain) .es{--c:var(--acc-teal);display:flex;align-items:stretch;gap:12px;border-radius:12px;background:color-mix(in srgb,var(--c) 7%,transparent);border-left:6px solid var(--c);padding:9px 12px}
:is(#content,.lsMain) .es::before{content:none}
:is(#content,.lsMain) .es.lv2{--c:var(--acc-amber)}:is(#content,.lsMain) .es.lv3{--c:#ea580c}:is(#content,.lsMain) .es.lv4{--c:var(--acc-rose)}
:is(#content,.lsMain) .esVal{flex:0 0 78px;display:flex;align-items:center;font-family:var(--display,'Poppins',sans-serif);font-weight:600;font-size:17px;color:var(--c);line-height:1.15}
:is(#content,.lsMain) .esNom{margin:0;font-weight:700;color:var(--t3-ink)}
:is(#content,.lsMain) .esTxt{margin:1px 0 0;line-height:1.45}
:is(#content,.lsMain) .mi{margin-top:10px;border-radius:14px;border:1px solid color-mix(in srgb,var(--t3-slate) 22%,transparent);overflow:hidden}
:is(#content,.lsMain) .miNom{margin:0;padding:8px 12px;font-family:var(--display,'Poppins',sans-serif);font-weight:600;font-size:15px;background:var(--t3-slate-bg);color:var(--t3-ink)}
:is(#content,.lsMain) .miCols{display:grid;grid-template-columns:1fr 1fr}
:is(#content,.lsMain) .miCols > div{padding:8px 12px 10px}
:is(#content,.lsMain) .miLo{--c:var(--acc-sky);border-right:1px solid color-mix(in srgb,var(--t3-slate) 18%,transparent)}
:is(#content,.lsMain) .miHi{--c:var(--acc-amber)}
:is(#content,.lsMain) .miT{display:flex;align-items:center;gap:5px;margin:0 0 4px;font-size:12.5px;font-weight:700;color:var(--c);line-height:1.3}
:is(#content,.lsMain) .miT svg{flex:none;width:15px;height:15px}
:is(#content,.lsMain) .mi ul{margin:0;padding:0;list-style:none}
:is(#content,.lsMain) .mi li{position:relative;padding:2px 0 2px 12px;line-height:1.45;font-size:.95em}
:is(#content,.lsMain) .mi li::before{content:"";position:absolute;left:0;top:.72em;width:5px;height:5px;border-radius:50%;background:var(--c)}
@media (max-width:640px){
  :is(#content,.lsMain) .tpGrid,:is(#content,.lsMain) .orGrid{grid-template-columns:1fr}
  :is(#content,.lsMain) .esVal{flex-basis:64px;font-size:15.5px}
  :is(#content,.lsMain) .miCols > div{padding:7px 9px 9px}
  :is(#content,.lsMain) .mi li{font-size:.9em}
}
@media (max-width:640px){:is(#content,.lsMain) .miCols{grid-template-columns:1fr}:is(#content,.lsMain) .miLo{border-right:0;border-bottom:1px solid color-mix(in srgb,var(--t3-slate) 18%,transparent)}:is(#content,.lsMain) .mi li{font-size:.95em}}
/* mòbil: lletra continguda als components (Adrià: «que no sigui molt gran la lletra») */
@media (max-width:640px){:is(#content,.lsMain) :is(.tpRows dd,.or li,.esTxt,.mi li,.grpBlk .chips li,.fxClau,.xfC){font-size:13.5px;line-height:1.45}:is(#content,.lsMain) :is(.tpNom,.orHead p,.miNom){font-size:14.5px}:is(#content,.lsMain) .tpRows dt{font-size:10.5px}:is(#content,.lsMain) .esNom{font-size:14px}}
/* fitxes al mòbil: imatge a dalt (sencera, sense retallar) i dades a sota — la versió en fila esprimia massa el text */
@media (max-width:640px){:is(#content,.lsMain) .fxBlk .fx{flex-direction:column}:is(#content,.lsMain) .fxBlk .fxImg{flex:none;width:100%;height:150px;min-height:0;padding:6px;border-right:0;border-bottom:3px solid var(--c);align-self:auto}:is(#content,.lsMain) .fxBlk .fxImg img{width:auto;height:100%;max-width:100%;object-fit:contain;object-position:center}}
:is(#content,.lsMain) .fxBlk .fxDades{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}

/* ===== MINI (figureta al costat del text) i RANG (valor dins l'interval normal) — consolida/_h.js ===== */
:is(#content,.lsMain) .miniRow{display:grid;grid-template-columns:96px 1fr;gap:12px;align-items:start;margin:8px 0}
:is(#content,.lsMain) .miniVis{width:96px;border-radius:12px;overflow:hidden;background:#fff;border:1px solid color-mix(in srgb,var(--t3-slate) 22%,transparent);display:flex;align-items:center;justify-content:center;aspect-ratio:1}
:is(#content,.lsMain) .miniVis img,:is(#content,.lsMain) .miniVis svg{width:100%;height:100%;object-fit:contain;display:block}
:is(#content,.lsMain) .miniTxt > :first-child{margin-top:0}
:is(#content,.lsMain) .rgRow{margin:10px 0}
:is(#content,.lsMain) .rgLab{margin:0 0 4px;font-weight:600;font-size:14px}
:is(#content,.lsMain) .rgBar{position:relative;height:12px;border-radius:999px;background:color-mix(in srgb,var(--t3-slate) 18%,transparent)}
:is(#content,.lsMain) .rgNorm{position:absolute;top:0;bottom:0;border-radius:999px;background:var(--t3-teal)}
:is(#content,.lsMain) .rgMark{position:absolute;top:-4px;transform:translateX(-50%)}
:is(#content,.lsMain) .rgMark i{display:block;width:3px;height:20px;border-radius:2px;background:var(--t3-ink);margin:0 auto}
:is(#content,.lsMain) .rgMark em{display:block;font-style:normal;font-size:11px;white-space:nowrap;margin-top:2px;transform:translateX(-30%)}
:is(#content,.lsMain) .rgScale{display:flex;justify-content:space-between;font-size:11.5px;opacity:.75;margin-top:18px}
:is(#content,.lsMain) .rgScale .rgN{color:var(--t3-teal);font-weight:700;opacity:1}
@media (max-width:640px){:is(#content,.lsMain) .miniRow{grid-template-columns:72px 1fr;gap:10px}:is(#content,.lsMain) .miniVis{width:72px}}

/* ===== Repàs del tema plegable (26/09) ===== */
#content .lecRepas:not(.open) .rpBody{display:none}
#content .rpToggle{width:100%;display:flex;align-items:center;gap:10px;padding:14px 18px;margin:0 0 14px;border-radius:14px;border:1px dashed color-mix(in srgb,var(--t3-teal) 55%,var(--border));background:color-mix(in srgb,var(--t3-teal) 6%,var(--surface));color:var(--text);font:600 14.5px/1.25 var(--font-display);cursor:pointer;text-align:left;transition:background .15s,border-color .15s}
#content .rpToggle:hover{border-style:solid;background:color-mix(in srgb,var(--t3-teal) 11%,var(--surface))}
#content .rpToggle .rpTgTxt{flex:1;min-width:0}
#content .rpToggle em{font-style:normal;font-weight:600;font-size:12.5px;color:var(--text-muted);padding:3px 9px;border-radius:999px;background:var(--surface);border:1px solid var(--border)}
#content .rpToggle svg{width:18px;height:18px;flex:none;color:var(--t3-teal);transition:transform .2s}
#content .lecRepas.open .rpToggle{border-style:solid}
#content .lecRepas.open .rpToggle svg{transform:rotate(180deg)}
#content .lecRepas.open .rpToggle em{display:none}
@media (max-width:600px){#content .rpToggle{padding:12px 14px;font-size:14px}}

/* ===== Entrada i compte v2 (26/09): mateix llenguatge que el hero de la landing (fons #070d12, retícula i brillantor teal,
   targeta de vidre fosc). S'aplica a #profileGate (login/registre/recuperació) i #accessGate (estats d'accés). ===== */
:is(#profileGate,#accessGate){
  --gk-bg:#070d12;--gk-card:rgba(13,22,31,.78);--gk-line:rgba(148,163,184,.16);--gk-line2:rgba(148,163,184,.26);
  --gk-text:#e8f1f4;--gk-muted:#93a4b3;--gk-teal:#2dd4bf;--gk-teal2:#0d9488;--gk-field:#0a131b;
  background:
    radial-gradient(900px 520px at 78% -8%,rgba(45,212,191,.17),transparent 62%),
    radial-gradient(700px 520px at -6% 108%,rgba(13,148,136,.16),transparent 60%),
    linear-gradient(rgba(148,163,184,.055) 1px,transparent 1px) 0 0/44px 44px,
    linear-gradient(90deg,rgba(148,163,184,.055) 1px,transparent 1px) 0 0/44px 44px,
    #070d12 !important;
  color:var(--gk-text);
}
:is(#profileGate,#accessGate) .profileGateBox{
  background:var(--gk-card) !important;border:1px solid var(--gk-line);border-radius:24px;
  box-shadow:0 40px 90px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.05) !important;
  -webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);
  color:var(--gk-text);overflow:hidden;
}
:is(#profileGate,#accessGate) .profileGateBox::before{content:"";position:absolute;inset:0 0 auto 0;height:1px;background:linear-gradient(90deg,transparent,rgba(45,212,191,.7),transparent);opacity:.9;border:0;border-radius:0}
:is(#profileGate,#accessGate) .profileGateBox h1{color:#fff;letter-spacing:-.01em}
:is(#profileGate,#accessGate) .profileGateSub{color:var(--gk-muted)}
:is(#profileGate,#accessGate) .profileGateLogo{background:radial-gradient(circle at 50% 35%,rgba(45,212,191,.28),rgba(13,148,136,.12)) !important;border:1px solid rgba(45,212,191,.45) !important;color:var(--gk-teal) !important;box-shadow:0 0 0 6px rgba(45,212,191,.07),0 12px 34px rgba(45,212,191,.22) !important}
:is(#profileGate,#accessGate) .profileGateLogo svg{stroke:var(--gk-teal)}
:is(#profileGate,#accessGate) .gateLangBtn{background:transparent;border:1px solid var(--gk-line2);color:var(--gk-muted)}
:is(#profileGate,#accessGate) .gateLangBtn.active{background:rgba(45,212,191,.14);border-color:rgba(45,212,191,.55);color:var(--gk-teal)}
#profileGate .authTabs{background:rgba(255,255,255,.04);border:1px solid var(--gk-line);border-radius:14px;padding:4px}
#profileGate .authTab{color:var(--gk-muted);background:transparent;border-radius:10px}
#profileGate .authTab.active{background:rgba(45,212,191,.14);color:#fff;box-shadow:inset 0 0 0 1px rgba(45,212,191,.45)}
#profileGate .authFieldRow label{color:#c7d4dd;font-weight:600;letter-spacing:.01em}
#profileGate :is(.authFieldRow input[type=text],.authFieldRow input[type=email],.authFieldRow input[type=password]){
  background:var(--gk-field) !important;border:1px solid var(--gk-line2) !important;color:#fff !important;border-radius:12px;
  transition:border-color .15s,box-shadow .15s}
#profileGate .authFieldRow input::placeholder{color:#5f7282}
#profileGate .authFieldRow input:focus{outline:none;border-color:var(--gk-teal) !important;box-shadow:0 0 0 4px rgba(45,212,191,.16)}
#profileGate .authFieldRow input:-webkit-autofill{-webkit-text-fill-color:#fff;-webkit-box-shadow:0 0 0 40px var(--gk-field) inset;caret-color:#fff}
#profileGate .pinToggleBtn{color:var(--gk-muted)}
#profileGate .pinToggleBtn:hover{color:var(--gk-teal)}
:is(#profileGate,#accessGate) .authSubmitBtn,#accessGate .accessGateActions .btnv2:not(.secondary){
  background:linear-gradient(180deg,#2dd4bf,#14b8a6) !important;color:#042a26 !important;border:0 !important;font-weight:700;
  box-shadow:0 10px 28px rgba(45,212,191,.28),inset 0 1px 0 rgba(255,255,255,.35) !important;justify-content:center}
:is(#profileGate,#accessGate) .authSubmitBtn:hover{filter:brightness(1.06)}
:is(#profileGate,#accessGate) .authSubmitBtn:disabled{opacity:.55;filter:none}
#accessGate .accessGateActions .btnv2.secondary{background:transparent !important;border:1px solid var(--gk-line2) !important;color:var(--gk-text) !important}
:is(#profileGate,#accessGate) :is(.authForgotLink,.linkbtn){color:var(--gk-teal)}
#profileGate .authConsentLabel{color:#c7d4dd}
#profileGate .authConsentLabel a{color:var(--gk-teal)}
#profileGate .authConsentLabel input{accent-color:#2dd4bf}
#profileGate .profileGateNote{color:#6f8292}
#profileGate .profileGateError{color:#fca5a5}
#profileGate .authStatus.error{color:#fca5a5}
#profileGate .authStatus.success{color:#5eead4}

/* Mesurador de contrasenya */
.pwMeter{margin-top:8px}
.pwMeter[hidden]{display:none}
.pwBars{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}
.pwBars i{height:5px;border-radius:99px;background:rgba(148,163,184,.22);transition:background .25s,box-shadow .25s}
.pwMeter[data-s="1"] .pwBars i:nth-child(-n+1){background:#f87171}
.pwMeter[data-s="2"] .pwBars i:nth-child(-n+2){background:#fbbf24}
.pwMeter[data-s="3"] .pwBars i:nth-child(-n+3){background:#2dd4bf}
.pwMeter[data-s="4"] .pwBars i{background:#2dd4bf;box-shadow:0 0 12px rgba(45,212,191,.55)}
.pwHead{display:flex;justify-content:space-between;align-items:baseline;margin-top:7px;font-size:12.5px;color:#93a4b3}
.pwHead b{font-weight:700;color:#e8f1f4}
.pwMeter[data-s="1"] .pwHead b{color:#fca5a5}.pwMeter[data-s="2"] .pwHead b{color:#fcd34d}.pwMeter:is([data-s="3"],[data-s="4"]) .pwHead b{color:#5eead4}
.pwChecks{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0;padding:0;list-style:none}
.pwChecks li{display:inline-flex;align-items:center;gap:5px;font-size:12px;line-height:1;padding:5px 9px;border-radius:99px;border:1px solid rgba(148,163,184,.22);color:#93a4b3;transition:all .2s}
.pwChecks li svg{width:12px;height:12px;flex:none;opacity:.45}
.pwChecks li.ok{border-color:rgba(45,212,191,.5);color:#5eead4;background:rgba(45,212,191,.08)}
.pwChecks li.ok svg{opacity:1}
.pwWarn{margin:7px 0 0;font-size:12.5px;color:#fcd34d}
.pwWarn:empty{display:none}

/* Panell lateral de marca (només escriptori) */
#profileGate .gateSide{display:none}
@media (min-width:980px){
  #profileGate{gap:72px}
  #profileGate:not(:has(#recoveryPanel:not([hidden]))) .gateSide{display:flex;flex-direction:column;gap:22px;max-width:430px;color:var(--gk-text)}
  #profileGate .gateKicker{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;padding:6px 12px;border-radius:99px;border:1px solid rgba(45,212,191,.35);background:rgba(45,212,191,.08);color:#5eead4;font:600 12.5px/1 var(--font-display);letter-spacing:.02em}
  #profileGate .gateKicker i{width:7px;height:7px;border-radius:50%;background:#2dd4bf;box-shadow:0 0 10px #2dd4bf;animation:gkPulse 1.8s ease-in-out infinite}
  #profileGate .gateSide h2{margin:0;font:700 38px/1.12 var(--font-display);letter-spacing:-.02em;color:#fff}
  #profileGate .gateSide h2 em{font-style:normal;background:linear-gradient(90deg,#2dd4bf,#5eead4);-webkit-background-clip:text;background-clip:text;color:transparent}
  #profileGate .gateSide p{margin:0;color:var(--gk-muted);font-size:16px;line-height:1.55}
  #profileGate .gateEcg{width:100%;height:56px;display:block}
  #profileGate .gateEcg path{fill:none;stroke:#2dd4bf;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:420;stroke-dashoffset:420;animation:gkEcg 3.2s linear infinite;filter:drop-shadow(0 0 6px rgba(45,212,191,.6))}
  #profileGate .gateFacts{display:grid;gap:10px;margin:0;padding:0;list-style:none}
  #profileGate .gateFacts li{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;border:1px solid var(--gk-line);background:rgba(255,255,255,.025);font-size:15px;color:#d5e1e8}
  #profileGate .gateFacts li b{font-family:var(--font-display);color:#fff}
  #profileGate .gateFacts svg{width:20px;height:20px;flex:none;color:#2dd4bf}
}
@keyframes gkEcg{0%{stroke-dashoffset:420}70%{stroke-dashoffset:0}100%{stroke-dashoffset:-420}}
@keyframes gkPulse{50%{opacity:.35}}
@media (prefers-reduced-motion:reduce){#profileGate .gateEcg path{animation:none;stroke-dashoffset:0}#profileGate .gateKicker i{animation:none}}

/* Panell «El meu compte» */
.acModal{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(3,8,12,.62);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:acIn .18s ease-out}
.acModal[hidden]{display:none}
.acCard{position:relative;width:min(460px,100%);max-height:calc(100dvh - 32px);overflow:auto;border-radius:22px;border:1px solid rgba(148,163,184,.18);
  background:radial-gradient(500px 220px at 85% -10%,rgba(45,212,191,.16),transparent 60%),#0c151d;color:#e8f1f4;box-shadow:0 40px 90px rgba(0,0,0,.55);padding:22px}
.acClose{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:10px;border:1px solid rgba(148,163,184,.2);background:transparent;color:#93a4b3;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.acClose:hover{color:#fff;border-color:rgba(148,163,184,.4)}
.acHead{display:flex;align-items:center;gap:14px;margin:2px 40px 18px 0}
.acAvatar{width:52px;height:52px;border-radius:16px;flex:none;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#2dd4bf,#0d9488);color:#042a26;font:700 20px var(--font-display);box-shadow:0 10px 26px rgba(45,212,191,.28)}
.acHead h2{margin:0;font:700 19px/1.2 var(--font-display);color:#fff;overflow-wrap:anywhere}
.acHead p{margin:3px 0 0;font-size:13.5px;color:#93a4b3;overflow-wrap:anywhere}
.acGrid{display:grid;gap:10px}
.acRow{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;border:1px solid rgba(148,163,184,.14);background:rgba(255,255,255,.025)}
.acRow>svg{width:20px;height:20px;flex:none;color:#2dd4bf}
.acRow .acTxt{flex:1;min-width:0}
.acRow .acTxt b{display:block;font:600 14px/1.25 var(--font-display);color:#fff}
.acRow .acTxt span{display:block;margin-top:2px;font-size:12.5px;line-height:1.4;color:#93a4b3}
.acPill{flex:none;font:700 11.5px/1 var(--font-display);padding:6px 10px;border-radius:99px;background:rgba(45,212,191,.14);color:#5eead4;border:1px solid rgba(45,212,191,.4)}
.acPill.off{background:rgba(248,113,113,.1);color:#fca5a5;border-color:rgba(248,113,113,.35)}
.acSeg{display:inline-flex;flex:none;padding:3px;border-radius:10px;border:1px solid rgba(148,163,184,.2)}
.acSeg button{border:0;background:transparent;color:#93a4b3;font:600 12.5px/1 var(--font-display);padding:7px 10px;border-radius:8px;cursor:pointer}
.acSeg button.on{background:rgba(45,212,191,.16);color:#fff}
.acBtn{flex:none;border:1px solid rgba(148,163,184,.26);background:transparent;color:#e8f1f4;font:600 12.5px/1 var(--font-display);padding:9px 12px;border-radius:10px;cursor:pointer}
.acBtn:hover{border-color:#2dd4bf;color:#5eead4}
.acPw{padding:14px;border-radius:14px;border:1px solid rgba(45,212,191,.3);background:rgba(45,212,191,.04)}
.acPw[hidden]{display:none}
.acPw label{display:block;margin:0 0 6px;font:600 12.5px var(--font-display);color:#c7d4dd}
.acPw input{width:100%;box-sizing:border-box;padding:11px 12px;border-radius:12px;border:1px solid rgba(148,163,184,.26);background:#0a131b;color:#fff;font-size:15px}
.acPw input:focus{outline:none;border-color:#2dd4bf;box-shadow:0 0 0 4px rgba(45,212,191,.16)}
.acPw .acPwGo{margin-top:12px;width:100%;border:0;border-radius:12px;padding:12px;background:linear-gradient(180deg,#2dd4bf,#14b8a6);color:#042a26;font:700 14px var(--font-display);cursor:pointer}
.acPw .acPwGo:disabled{opacity:.5;cursor:default}
.acMsg{margin:8px 0 0;font-size:13px}
.acMsg.err{color:#fca5a5}.acMsg.ok{color:#5eead4}
.acOut{margin-top:16px;width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border-radius:12px;border:1px solid rgba(248,113,113,.35);background:rgba(248,113,113,.06);color:#fca5a5;font:600 14px var(--font-display);cursor:pointer}
.acOut:hover{background:rgba(248,113,113,.12)}
.acOut svg{width:18px;height:18px}
.acFoot{margin:14px 0 0;font-size:12px;line-height:1.5;color:#6f8292;text-align:center}
.acFoot a{color:#5eead4}
@keyframes acIn{from{opacity:0}to{opacity:1}}
@media (max-width:520px){.acModal{align-items:flex-end;padding:0}.acCard{width:100%;border-radius:22px 22px 0 0;max-height:92dvh;padding:20px 16px calc(20px + env(safe-area-inset-bottom))}}

/* ===== MINI v2 (26/09, Adrià: la figureta al costat del text «queda rara» al mòbil) =====
   Figura i text en una sola targeta: franja clara amb la il·lustració (a dalt al mòbil, a l'esquerra a l'escriptori)
   i el text a sota/al costat, sense el quadrat blanc solt sobre el fons fosc. */
:is(#content,.lsMain) .miniRow{display:grid;grid-template-columns:150px 1fr;gap:0;align-items:stretch;margin:12px 0;border:1px solid var(--border);border-radius:16px;overflow:hidden;background:var(--surface)}
:is(#content,.lsMain) .miniVis{width:auto;aspect-ratio:auto;min-height:118px;border:0;border-radius:0;padding:12px;background:linear-gradient(180deg,#f7fafb,#eef3f6);border-right:1px solid var(--border)}
:is(#content,.lsMain) .miniVis img,:is(#content,.lsMain) .miniVis svg{width:100%;height:100%;max-height:150px;object-fit:contain}
:is(#content,.lsMain) .miniTxt{padding:14px 18px;align-self:center}
:is(#content,.lsMain) .miniTxt > :last-child{margin-bottom:0}
html[data-theme="dark"] :is(#content,.lsMain) .miniRow{background:rgba(255,255,255,.025)}
html[data-theme="dark"] :is(#content,.lsMain) .miniVis{background:linear-gradient(180deg,#eef3f6,#dfe7ec);border-right-color:transparent}
@media (max-width:640px){
  :is(#content,.lsMain) .miniRow{grid-template-columns:1fr}
  :is(#content,.lsMain) .miniVis{width:auto;height:132px;min-height:0;padding:10px 16px;border-right:0;border-bottom:1px solid var(--border)}
  html[data-theme="dark"] :is(#content,.lsMain) .miniVis{border-bottom-color:transparent}
  :is(#content,.lsMain) .miniVis img,:is(#content,.lsMain) .miniVis svg{max-height:112px}
  :is(#content,.lsMain) .miniTxt{padding:12px 14px 14px}
}
/* ===== Exercicis d'etiquetar v2 (esquemes redibuixats, 26/09/2026) =====
   Els dibuixos porten una làmina clara pròpia (també en mode fosc), així que els números
   fan servir sempre la paleta clara: abans, en fosc, el número (#111) quedava sobre un fons
   fosc en marcar-lo (var(--brand-light) / --good-bg / --bad-bg) i no es llegia. */
.diagramSvgWrap{max-width:380px}
.diagramSvgWrap .diagramMarker{fill:#fff;stroke:#334155}
.diagramSvgWrap .diagramMarker:hover{stroke:#0d9488}
.diagramSvgWrap .diagramMarker.filled{fill:#ccfbf1;stroke:#0d9488}
.diagramSvgWrap .diagramMarker.correctMarker{fill:#dcfce7;stroke:#16a34a}
.diagramSvgWrap .diagramMarker.incorrectMarker{fill:#fee2e2;stroke:#dc2626}
.diagramSvgWrap .diagramMarkerNum{fill:#0f172a;font-size:14px}
@media (max-width:640px){.diagramSvgWrap{max-width:100%;width:100%;flex-basis:auto}}

/* ===== Arranjaments (26/09): les graelles de 2 columnes de les eines no poden desbordar al mòbil ===== */
.tlTwo{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))}
.tlTwo > *{min-width:0}
.tlTwo input[type=range]{width:100%;max-width:100%;box-sizing:border-box}

/* ===== Targeta de valoració de la plataforma (app-valoracio.js, 26/09) — mateix llenguatge que l'entrada v2 ===== */
.vlCard{position:fixed;right:22px;bottom:22px;z-index:8500;width:min(380px,calc(100vw - 32px));border-radius:20px;border:1px solid rgba(148,163,184,.2);
  background:radial-gradient(420px 200px at 90% -20%,rgba(45,212,191,.18),transparent 60%),#0c151d;color:#e8f1f4;box-shadow:0 30px 70px rgba(0,0,0,.5);
  transform:translateY(24px);opacity:0;transition:transform .25s ease,opacity .25s ease}
.vlCard.on{transform:none;opacity:1}
.vlX{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:10px;border:0;background:transparent;color:#93a4b3;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.vlX:hover{color:#fff;background:rgba(255,255,255,.06)}
.vlBody{padding:20px 20px 18px}
.vlKick{margin:0;font:600 11.5px/1 var(--font-display,Poppins,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#5eead4}
.vlCard h3{margin:8px 36px 6px 0;font:700 18px/1.25 var(--font-display,Poppins,sans-serif);color:#fff}
.vlSub{margin:0;font-size:13.5px;line-height:1.45;color:#93a4b3}
.vlStars{display:flex;gap:6px;margin:14px 0 2px}
.vlStar{width:44px;height:44px;border-radius:12px;border:1px solid rgba(148,163,184,.2);background:rgba(255,255,255,.03);color:#5f7282;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .12s,color .12s,background .12s,border-color .12s}
.vlStar:hover{transform:translateY(-2px);color:#99f6e4}
.vlStar.on{color:#2dd4bf;border-color:rgba(45,212,191,.5);background:rgba(45,212,191,.12)}
.vlStar.on svg path{fill:rgba(45,212,191,.35)}
.vlLab{margin:6px 0 0;min-height:18px;font:600 13px/1.3 var(--font-display,Poppins,sans-serif);color:#5eead4}
.vlMore{margin-top:10px}
.vlMore[hidden]{display:none}
.vlMore label{display:block;margin-bottom:6px;font-size:12.5px;color:#c7d4dd}
.vlMore textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:70px;padding:10px 12px;border-radius:12px;border:1px solid rgba(148,163,184,.26);background:#0a131b;color:#fff;font-family:inherit;font-size:14px;line-height:1.4}
.vlMore textarea:focus{outline:none;border-color:#2dd4bf;box-shadow:0 0 0 4px rgba(45,212,191,.16)}
.vlPub{display:flex!important;align-items:flex-start;gap:9px;margin:10px 0 0!important;font-size:12.5px;line-height:1.4;color:#c7d4dd;cursor:pointer}
.vlPub input{flex:0 0 auto;width:17px;height:17px;margin:1px 0 0;accent-color:#2dd4bf;cursor:pointer}
.vlBtns{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}
.vlLater{border:0;background:transparent;color:#93a4b3;font:600 13.5px var(--font-display,Poppins,sans-serif);padding:10px 12px;border-radius:10px;cursor:pointer}
.vlLater:hover{color:#fff}
.vlGo{border:0;border-radius:12px;padding:10px 20px;background:linear-gradient(180deg,#2dd4bf,#14b8a6);color:#042a26;font:700 14px var(--font-display,Poppins,sans-serif);cursor:pointer;box-shadow:0 8px 22px rgba(45,212,191,.25)}
.vlGo:disabled{opacity:.45;cursor:default;box-shadow:none}
.vlThanks{padding:30px 22px 26px;text-align:center;color:#5eead4}
.vlThanks h3{margin:10px 0 4px;color:#fff}
.vlThanks p{margin:0;font-size:13.5px;color:#93a4b3}
@media (max-width:640px){
  .vlCard{left:12px;right:12px;width:auto;bottom:calc(84px + env(safe-area-inset-bottom))}
  .vlStars{justify-content:space-between}
  .vlStar{width:auto;flex:1;height:48px}
}
@media (prefers-reduced-motion:reduce){.vlCard{transition:none}.vlStar{transition:none}}

/* ===== Barres v2 (26/09, Adrià: «més modernes») — barra superior (cercador) i barra inferior del mòbil ===== */
header.top{min-height:64px;padding:10px 24px;background:color-mix(in srgb,var(--surface) 80%,transparent);-webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%);
  border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent);box-shadow:0 1px 0 rgba(255,255,255,.03),0 10px 30px -18px rgba(11,26,42,.35)}
html[data-theme="dark"] header.top{background:rgba(9,17,24,.76);border-bottom-color:rgba(148,163,184,.12)}
header.top .crumbs{font-size:13px}
.searchWrap{flex:0 1 480px}
.searchWrap .searchIcon{left:15px}
#searchInput,.top #searchInput{height:44px;border-radius:14px;padding:0 48px 0 42px;font-size:14px;background:color-mix(in srgb,var(--surface-alt) 85%,transparent);border:1px solid var(--border);
  transition:border-color .15s,box-shadow .15s,background .15s}
#searchInput:hover{border-color:color-mix(in srgb,var(--brand) 40%,var(--border))}
#searchInput:focus{background:var(--surface);border-color:var(--brand);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 18%,transparent)}
html[data-theme="dark"] #searchInput{background:rgba(255,255,255,.04);border-color:rgba(148,163,184,.18)}
html[data-theme="dark"] #searchInput:focus{background:rgba(255,255,255,.06);border-color:#2dd4bf;box-shadow:0 0 0 4px rgba(45,212,191,.16)}
.searchKbd{position:absolute;right:12px;top:50%;transform:translateY(-50%);font:600 11.5px/1 var(--font-display,Poppins,sans-serif);min-width:22px;text-align:center;padding:5px 7px;border-radius:7px;
  border:1px solid var(--border);border-bottom-width:2px;color:var(--text-faint);background:var(--surface);pointer-events:none;transition:opacity .15s}
.searchWrap:focus-within .searchKbd{opacity:0}
html[data-theme="dark"] .searchKbd{background:rgba(255,255,255,.04);border-color:rgba(148,163,184,.22);color:#8fa2b1}
#themeToggle{height:42px;border-radius:13px;padding:0 14px;background:transparent;border:1px solid var(--border);transition:border-color .15s,background .15s}
#themeToggle:hover{background:color-mix(in srgb,var(--brand) 8%,transparent)}
#hamburger{width:42px;height:42px;border-radius:13px;margin-right:0;background:transparent}
html[data-theme="dark"] :is(#themeToggle,#hamburger){border-color:rgba(148,163,184,.2)}

@media (max-width:900px){
  /* una sola fila: menú · cercador · tema */
  header.top{flex-wrap:nowrap;gap:8px;padding:8px 12px;min-height:60px}
  .searchWrap{order:0;flex:1 1 auto;margin:0;max-width:none}
  #searchInput,.top #searchInput{height:42px;padding:0 14px 0 38px;font-size:15px;border-radius:13px}
  .searchWrap .searchIcon{left:13px}
  .searchKbd{display:none}
  #themeToggle{width:42px;padding:0;justify-content:center;flex:none}
  #hamburger{flex:none}
  .searchResults{position:fixed;left:10px;right:10px;top:64px;width:auto;max-height:calc(100dvh - 170px)}
  /* barra inferior: flotant, de vidre, pastilla activa darrere la icona */
  .bottomNav{left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom,0px));border-radius:26px;padding:6px 6px;
    background:color-mix(in srgb,var(--surface) 78%,transparent);-webkit-backdrop-filter:blur(18px) saturate(170%);backdrop-filter:blur(18px) saturate(170%);
    border:1px solid color-mix(in srgb,var(--border) 80%,transparent);box-shadow:0 18px 44px rgba(11,26,42,.2),0 1px 0 rgba(255,255,255,.4) inset}
  html[data-theme="dark"] .bottomNav{background:rgba(12,21,29,.8);border-color:rgba(148,163,184,.16);box-shadow:0 18px 44px rgba(0,0,0,.5),0 1px 0 rgba(255,255,255,.05) inset}
  .bnavBtn,.bnavBtn.active{background:transparent !important;border-radius:18px;padding:5px 2px 4px;gap:3px;box-shadow:none}
  .bnavIcon{position:relative;width:52px;height:30px;border-radius:99px;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .12s}
  .bnavIcon svg{width:21px;height:21px}
  .bnavBtn.active .bnavIcon{background:color-mix(in srgb,var(--brand) 16%,transparent);color:var(--brand)}
  html[data-theme="dark"] .bnavBtn.active .bnavIcon{background:rgba(45,212,191,.16);color:#2dd4bf}
  .bnavBtn:active .bnavIcon{transform:scale(.92)}
  .bnavLabel{font-size:11px;font-weight:600;letter-spacing:.01em;color:var(--text-muted)}
  .bnavBtn.active .bnavLabel{color:var(--brand);font-weight:700}
  html[data-theme="dark"] .bnavBtn.active .bnavLabel{color:#2dd4bf}
  .bnavBadge{top:-4px;right:2px}
}
@media (prefers-reduced-motion:reduce){.bnavIcon,#searchInput{transition:none}}
/* ===== Escolta l'apartat (app-escolta.js, 04/10/2026) ===== */
.esBar{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;margin:6px 0 0 6px;vertical-align:middle}
.lecNav + .esBar{margin-left:0}
.esBar button{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;border:1px solid color-mix(in srgb,var(--t3-teal) 40%,transparent);background:transparent;color:var(--t3-teal);font:600 12.5px/1.2 var(--body,inherit);cursor:pointer;min-height:30px}
.esBar button svg{flex:none;width:15px;height:15px}
.esBar button:hover{background:var(--t3-teal-bg)}
.esBar.on .esMain{background:var(--t3-teal);border-color:var(--t3-teal);color:#fff}
html[data-theme="dark"] .esBar.on .esMain{color:#04201d}
.esBar .esRate{min-width:52px;justify-content:center;font-variant-numeric:tabular-nums}
.esBar .esStop{padding:5px 8px}
.esBar .esPos{font:600 12px/1 var(--body,inherit);color:var(--t3-slate);font-variant-numeric:tabular-nums;padding:0 2px}
.esBar [hidden]{display:none!important}
.esNow{background:color-mix(in srgb,var(--t3-teal) 13%,transparent);border-radius:6px;box-shadow:0 0 0 4px color-mix(in srgb,var(--t3-teal) 13%,transparent);transition:background .2s,box-shadow .2s}
@media (max-width:600px){.esBar{margin-left:0;display:flex}.esBar button{font-size:13px}}
@media print{.esBar{display:none!important}}

/* ===== Exàmens oficials complets (app-oficials.js, 04/10/2026) ===== */
.ofEntry{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;margin:0 0 14px;padding:16px 18px;border-radius:18px;background:linear-gradient(135deg,rgba(180,83,9,.09),rgba(13,148,136,.08));border:1px solid rgba(180,83,9,.26)}
.ofEntryIc{width:46px;height:46px;border-radius:14px;background:#b45309;color:#fff;display:flex;align-items:center;justify-content:center}
.ofEntry b{display:block;font-family:var(--font-display);font-size:17px}.ofEntry span{font-size:13.5px;color:var(--text-muted)}
@media (max-width:700px){.ofEntry{grid-template-columns:auto minmax(0,1fr)}.ofEntry .btnv2{grid-column:1 / -1;justify-content:center}}
.ofPage .hero h1{display:flex;align-items:center;gap:10px}
.ofInfo{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;margin:2px 0 16px;border-radius:14px;background:var(--brand-tint);color:var(--text);font-size:13.5px;line-height:1.5}
.ofInfo svg{flex:none;color:var(--brand);margin-top:1px}
.ofGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(290px,100%),1fr));gap:12px;margin-bottom:16px}
.ofCard{display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:16px;background:var(--surface);border:1px solid rgba(180,83,9,.28);transition:border-color .15s,transform .15s}
.ofCard:hover{border-color:#b45309;transform:translateY(-2px)}
.ofCardTop{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px}
.ofKind{display:inline-flex;align-items:center;gap:5px;font-weight:600;color:#b45309;text-transform:uppercase;letter-spacing:.04em;font-size:11.5px}
.ofDate{color:var(--text-muted)}
.ofTitle{font-family:var(--font-display);font-size:18px;line-height:1.25}
.ofMeta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13.5px;color:var(--text-muted)}
.ofMeta span{display:inline-flex;align-items:center;gap:5px}
.ofParts,.ofNote{margin:0;font-size:12.5px;color:var(--text-muted);line-height:1.45}
.ofFoot{padding-top:6px;border-top:1px solid var(--border)}
.ofLast{font-size:13px;color:var(--text-muted)}.ofLast b{color:var(--text);font-size:15px;margin-right:2px}
.ofLast.none{font-style:italic}
.ofPen{display:flex;gap:9px;align-items:flex-start;padding:9px 10px;border-radius:12px;border:1px solid var(--border);cursor:pointer;font-size:13px}
.ofPen input{margin-top:3px;accent-color:#0d9488}
.ofPen b{display:block;font-weight:600}.ofPen small{display:block;color:var(--text-muted);font-size:12px;line-height:1.4;margin-top:2px}
.ofStart{justify-content:center;margin-top:auto}
.quizTimer.ofTimer{display:inline-flex;align-items:center;gap:5px;font-variant-numeric:tabular-nums}
.quizTimer.ofTimer b{font-weight:700}.quizTimer.ofTimer small{font-size:11.5px;color:var(--text-muted)}
.quizTimer.ofTimer.low{color:#b91c1c}.quizTimer.ofTimer.low small{color:inherit}
.ofResNote{margin:0 0 14px;padding:14px 16px;border-radius:16px;background:var(--surface);border:1px solid rgba(180,83,9,.28)}
.ofResNote b{display:flex;align-items:center;gap:7px;font-family:var(--font-display);font-size:16px;color:#b45309}
.ofResNote p{margin:8px 0 10px;font-size:13.5px;line-height:1.55;color:var(--text-muted)}
.ofResNote .ofTimeUp{display:flex;gap:6px;align-items:flex-start;color:#b91c1c}
.ofDash .dCardTop b{display:inline-flex;align-items:center;gap:6px}
.ofDashSub{margin:2px 0 8px;font-size:13px;color:var(--text-muted)}
.ofDashList{display:grid;gap:8px}
.ofDashRow{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:9px 10px;border-radius:12px;background:var(--surface-alt)}
.ofDashRow b{display:block;font-size:14px}.ofDashRow small{font-size:12px;color:var(--text-muted)}
@media (max-width:600px){.ofDashRow{grid-template-columns:minmax(0,1fr) auto}.ofDashRow .ofLast{grid-column:1 / -1;grid-row:2}}
html[data-theme="dark"] .ofKind,html[data-theme="dark"] .ofResNote b{color:#fbbf24}
html[data-theme="dark"] .ofEntryIc{background:#92400e}
html[data-theme="dark"] .quizTimer.ofTimer.low{color:#f87171}
html[data-theme="dark"] .ofResNote .ofTimeUp{color:#f87171}

/* ===== Repte setmanal (app-repte.js, 04/10/2026) ===== */
.wcEntry{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;margin:0 0 14px;padding:16px 18px;border-radius:18px;background:linear-gradient(135deg,rgba(13,148,136,.12),rgba(79,70,229,.07));border:1px solid rgba(13,148,136,.32)}
.wcEntryIc,.wcDashIc{width:46px;height:46px;border-radius:14px;background:#0d9488;color:#fff;display:flex;align-items:center;justify-content:center;flex:none}
.wcEntry b{display:block;font-family:var(--font-display);font-size:17px}.wcEntry span{font-size:13.5px;color:var(--text-muted)}
@media (max-width:700px){.wcEntry{grid-template-columns:auto minmax(0,1fr)}.wcEntry .btnv2{grid-column:1 / -1;justify-content:center}}
.wcDash{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid rgba(13,148,136,.32);background:linear-gradient(135deg,rgba(13,148,136,.09),transparent 70%)}
.wcDashTxt{display:flex;flex-direction:column;gap:2px;min-width:0}
.wcDashTxt>b{font-family:var(--font-display);font-size:16px}
.wcDashTxt>span{font-size:13.5px;color:var(--text-muted)}.wcDashTxt>span b{color:var(--text)}
.wcDashTxt small{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--text-muted)}
@media (max-width:600px){.wcDash{grid-template-columns:auto minmax(0,1fr)}.wcDash .btnv2{grid-column:1 / -1;justify-content:center}}
.wcPage .hero h1{display:flex;align-items:center;gap:10px}
.wcGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(330px,100%),1fr));gap:14px;align-items:start;margin-bottom:16px}
.wcCard{padding:16px 18px;border-radius:18px;background:var(--surface);border:1px solid var(--border);min-width:0}
.wcMain{border-color:rgba(13,148,136,.35)}
.wcCardTop{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 10px;align-items:center;font-size:12.5px}
.wcKind{display:inline-flex;align-items:center;gap:5px;font-weight:600;color:#0f766e;text-transform:uppercase;letter-spacing:.04em;font-size:11.5px}
.wcNext{color:var(--text-muted)}
.wcRules{list-style:none;margin:12px 0;padding:0;display:grid;gap:8px}
.wcRules li{display:flex;gap:9px;align-items:flex-start;font-size:14px;line-height:1.45}
.wcRules svg{flex:none;color:#0d9488;margin-top:2px}
.wcStatus{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 12px;padding:10px 12px;border-radius:12px;background:var(--surface-alt);font-size:13.5px}
.wcStatus svg{color:#0d9488}.wcStatus.todo svg{color:var(--text-muted)}
.wcGo{width:100%;justify-content:center}
.wcH3{display:flex;align-items:center;gap:7px;margin:0 0 10px;font-family:var(--font-display);font-size:16px}
.wcRankMsg{display:flex;gap:7px;align-items:flex-start;margin:0;font-size:13.5px;line-height:1.5;color:var(--text-muted)}
.wcRankMsg svg{flex:none;margin-top:2px}
.wcRankMe{margin:0 0 8px;font-size:13.5px;color:var(--text-muted)}.wcRankMe b{color:var(--text)}
.wcRank{display:grid;gap:3px;font-size:13.5px}
.wcRow{display:grid;grid-template-columns:34px minmax(0,1fr) 58px 54px;gap:8px;align-items:center;padding:7px 9px;border-radius:10px;font-variant-numeric:tabular-nums}
.wcRow>span:nth-child(3),.wcRow>span:nth-child(4){text-align:right}
.wcHead{font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding-top:0;padding-bottom:2px}
.wcRow:not(.wcHead):not(.wcGap){background:var(--surface-alt)}
.wcRow.me{background:var(--brand-tint);outline:1.5px solid rgba(13,148,136,.45)}
.wcRow.top1>span:first-child,.wcRow.top2>span:first-child,.wcRow.top3>span:first-child{font-weight:700;color:#0f766e}
.wcGap{color:var(--text-muted);padding:0 9px}
.wcWho{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wcWho em{font-style:normal;font-size:12px;color:#0f766e}
.wcAv{flex:none;width:24px;height:24px;border-radius:50%;background:rgba(13,148,136,.16);color:#0f766e;font-style:normal;font-size:10.5px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}
.wcRankFoot{margin:10px 0 0;font-size:12px;color:var(--text-muted);line-height:1.45}
.wcPrev{margin-top:14px;border-top:1px solid var(--border);padding-top:10px}
.wcPrev summary{cursor:pointer;font-size:13.5px;font-weight:600}
.wcPrev .wcRankSlot{margin-top:10px}
.wcRes{margin:0 0 14px;padding:16px 18px;border-radius:18px;background:var(--surface);border:1px solid rgba(13,148,136,.35)}
.wcResTop{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px}
.wcResTop>b{display:flex;align-items:center;gap:7px;font-family:var(--font-display);font-size:16px;color:#0f766e}
.wcBadge{font-size:12px;font-weight:600;padding:3px 9px;border-radius:999px}
.wcBadge.on{background:rgba(13,148,136,.14);color:#0f766e}.wcBadge.prac{background:var(--surface-alt);color:var(--text-muted)}
.wcResStats{display:flex;gap:12px;margin:12px 0 4px}
.wcResStats>div{flex:1;display:flex;flex-direction:column;align-items:center;padding:10px;border-radius:14px;background:var(--surface-alt)}
.wcResStats b{font-family:var(--font-display);font-size:24px;font-variant-numeric:tabular-nums}.wcResStats b small{font-size:14px;color:var(--text-muted)}
.wcResStats span{font-size:12px;color:var(--text-muted)}
.wcNote{display:flex;gap:6px;align-items:flex-start;margin:8px 0 12px;font-size:13.5px;line-height:1.5;color:var(--text-muted)}
.wcNote.warn{color:#b91c1c}.wcNote svg{flex:none;margin-top:2px}
.wcBtns{margin-top:12px}
.quizTimer.wcTimer.low{color:#b91c1c}
@media (max-width:420px){.wcRow{grid-template-columns:26px minmax(0,1fr) 46px 46px;gap:6px;padding:7px 7px;font-size:13px}}
html[data-theme="dark"] .wcKind,html[data-theme="dark"] .wcResTop>b,html[data-theme="dark"] .wcWho em,html[data-theme="dark"] .wcBadge.on,html[data-theme="dark"] .wcRow.top1>span:first-child,html[data-theme="dark"] .wcRow.top2>span:first-child,html[data-theme="dark"] .wcRow.top3>span:first-child{color:#2dd4bf}
html[data-theme="dark"] .wcAv{background:rgba(45,212,191,.16);color:#2dd4bf}
html[data-theme="dark"] .wcEntryIc,html[data-theme="dark"] .wcDashIc{background:#0f766e}
html[data-theme="dark"] .wcNote.warn,html[data-theme="dark"] .quizTimer.wcTimer.low{color:#f87171}


/* ===== Repte setmanal v2: gamificació (app-repte.js?v=2, 04/10/2026) ===== */
.wcRow{grid-template-columns:44px minmax(0,1fr) 58px 54px}
.wcMedal{display:inline-flex;align-items:center;gap:2px;font-weight:700;font-variant-numeric:tabular-nums}
.wcMedal b{font-size:12px}
.wcMedal.m1{color:#b7860b}.wcMedal.m2{color:#64748b}.wcMedal.m3{color:#a8551f}
.wcRow.top1{background:linear-gradient(90deg,rgba(212,160,23,.14),var(--surface-alt) 60%)}
.wcRow.top2{background:linear-gradient(90deg,rgba(148,163,184,.18),var(--surface-alt) 60%)}
.wcRow.top3{background:linear-gradient(90deg,rgba(194,112,61,.14),var(--surface-alt) 60%)}
.wcRow.me{position:relative;background:var(--brand-tint);outline:1.5px solid rgba(13,148,136,.55);box-shadow:0 6px 18px rgba(13,148,136,.14)}
.wcRow.me::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:3px;background:#0d9488}
.wcRow.me .wcWho{font-weight:600}
.wcMe{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 12px}
.wcMeStat{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 11px;border-radius:14px;background:var(--surface-alt);min-width:0}
.wcMeStat b{font-family:var(--font-display);font-size:19px;line-height:1.15;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.wcMeStat small{font-size:11.5px;color:var(--text-muted);line-height:1.3}
.wcMeIc{display:inline-flex;color:#0d9488;margin-bottom:2px}.wcMeIc.fl{color:#d97706}
.wcBar{display:block;width:100%;height:5px;border-radius:99px;background:rgba(13,148,136,.14);overflow:hidden;margin:5px 0 2px}
.wcBar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0d9488,#2dd4bf)}
.wcNextLvl{font-size:11px!important}
.wcBest{margin:-4px 0 12px;font-size:12.5px;color:var(--text-muted)}
@media (max-width:420px){.wcMe{gap:6px}.wcMeStat{padding:9px 8px}.wcMeStat b{font-size:16.5px}}
.wcChips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.wcChip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;background:var(--surface-alt);border:1px solid var(--border);font-size:12px;color:var(--text-muted)}
.wcChip b{color:var(--text);font-weight:600}.wcChip svg{color:#0d9488}
.wcChip.lvl{background:rgba(212,160,23,.12);border-color:rgba(212,160,23,.35);color:#7c5a06}.wcChip.lvl svg{color:#b7860b}
.wcGain{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 14px}
.wcWinner{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:10px 12px;border-radius:14px;background:linear-gradient(110deg,rgba(212,160,23,.13),transparent 75%);border:1px solid rgba(212,160,23,.32)}
.wcWinner>div{display:flex;flex-direction:column;min-width:0}
.wcWinner small{font-size:11.5px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}
.wcWinner b{font-family:var(--font-display);font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wcWinner b em{font-style:normal;font-size:12px;color:#0f766e}
.wcWinner span:not(.wcMedal){font-size:12.5px;color:var(--text-muted);font-variant-numeric:tabular-nums}
.wcPrize{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;margin:0 0 14px;padding:16px 18px;border-radius:18px;color:#e6fffb;background:radial-gradient(120% 140% at 0% 0%,rgba(45,212,191,.28),transparent 55%),radial-gradient(90% 120% at 100% 100%,rgba(212,160,23,.18),transparent 60%),#070d12;border:1px solid rgba(45,212,191,.35);box-shadow:0 14px 34px rgba(7,13,18,.22)}
.wcPrizeIc{width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:rgba(45,212,191,.16);color:#5eead4;border:1px solid rgba(45,212,191,.35)}
.wcPrizeTxt{display:flex;flex-direction:column;gap:4px;min-width:0}
.wcPrizeTxt>b{font-family:var(--font-display);font-size:17px;color:#fff}
.wcPrizeTxt>span{font-size:13.5px;line-height:1.5;color:#b8d6d2}
.wcPrizeCode{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px}
.wcPrizeCode code{font-family:var(--font-display);font-size:16px;font-weight:700;letter-spacing:.08em;padding:7px 12px;border-radius:10px;background:rgba(255,255,255,.06);border:1px dashed rgba(94,234,212,.6);color:#fff;user-select:all}
.wcPrizeCode .btnv2{min-height:38px}
.wcPrizeCode .btnv2.secondary{background:transparent;color:#e6fffb;border-color:rgba(255,255,255,.28)}
.wcPrize.compact{padding:14px 16px}.wcPrize.compact .wcPrizeTxt>span{font-size:13px}
@media (max-width:520px){.wcPrize{grid-template-columns:1fr}.wcPrizeCode code{flex-basis:100%;text-align:center}.wcPrizeCode .btnv2{flex:1;justify-content:center}}
/* celebració en acabar el primer intent */
.wcRes{position:relative;overflow:hidden}
.wcRes.celebrate .wcResTop>b svg{animation:wcBadgePop .7s cubic-bezier(.2,.9,.3,1.4) both}
.wcBurst{position:absolute;left:50%;top:44px;width:0;height:0;pointer-events:none;z-index:2}
.wcBurst i{position:absolute;left:-3px;top:-3px;width:6px;height:11px;border-radius:2px;background:var(--c);opacity:0;animation:wcPop 1.25s cubic-bezier(.15,.75,.3,1) var(--t) forwards}
@keyframes wcPop{0%{opacity:1;transform:rotate(var(--a)) translateY(0) scale(.5)}70%{opacity:1}100%{opacity:0;transform:rotate(var(--a)) translateY(calc(var(--d) * -1)) rotate(140deg) scale(1)}}
@keyframes wcBadgePop{0%{transform:scale(.4)}60%{transform:scale(1.25)}100%{transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.wcBurst{display:none}.wcRes.celebrate .wcResTop>b svg{animation:none}}
html[data-theme="dark"] .wcMedal.m1{color:#fbbf24}html[data-theme="dark"] .wcMedal.m2{color:#cbd5e1}html[data-theme="dark"] .wcMedal.m3{color:#e3a57a}
html[data-theme="dark"] .wcRow.me{background:rgba(45,212,191,.1);outline-color:rgba(45,212,191,.5)}
html[data-theme="dark"] .wcRow.me::before{background:#2dd4bf}
html[data-theme="dark"] .wcMeIc,html[data-theme="dark"] .wcChip svg{color:#2dd4bf}html[data-theme="dark"] .wcMeIc.fl{color:#fbbf24}
html[data-theme="dark"] .wcChip.lvl{color:#fde68a}html[data-theme="dark"] .wcChip.lvl svg{color:#fbbf24}
html[data-theme="dark"] .wcWinner b em{color:#2dd4bf}
@media (max-width:420px){.wcRow{grid-template-columns:38px minmax(0,1fr) 46px 46px}}

/* ===== Black Friday dins l'app (app-bf.js, 04/10/2026): franja discreta al tauler ===== */
.bfApp{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 14px;padding:10px 14px;border-radius:14px;background:radial-gradient(120% 200% at 0% 0%,rgba(225,29,72,.3),transparent 55%),#0b0609;border:1px solid rgba(251,113,133,.35);color:#fecdd3;font-size:13.5px;line-height:1.45}
.bfAppTag{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;background:#e11d48;color:#fff;font-family:var(--font-display);font-weight:700;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.bfAppMsg{flex:1;min-width:200px}.bfAppMsg b{color:#fff}.bfAppMsg small{color:#fda4af;font-size:12.5px;white-space:nowrap}
.bfAppMsg code{font-family:var(--font-display);font-weight:700;letter-spacing:.06em;color:#fff;background:rgba(255,255,255,.08);padding:1px 6px;border-radius:6px}
.bfAppBtn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;font:600 13px/1 var(--font-display);cursor:pointer}
.bfAppBtn:hover{background:rgba(255,255,255,.08)}
/* Premi del repte · Porta un amic (04/10/2026) */
.wcPrizeTxt>.wcPrizeRef{display:flex;gap:8px;align-items:flex-start;margin-top:6px;padding:9px 11px;border-radius:12px;background:rgba(45,212,191,.08);border:1px solid rgba(45,212,191,.22);color:#d6ece9}
.wcPrizeRef>svg{flex:none;margin-top:3px;color:#2dd4bf}
.wcPrizeRef b{color:#fff;word-break:break-all}
.wcPrize.compact .wcPrizeRef{font-size:12.5px}
/* etiqueta del tema de la pregunta: amb noms llargs (mòbil) ocupa dues línies sense sortir del fons (04/10/2026) */
.qTopicTag{height:auto;min-height:26px;padding:4px 10px;line-height:1.35;border-radius:12px}
/* rànquing: el pseudònim es retalla amb … i «(tu)» sempre es veu (04/10/2026) */
.wcWho .wcNm{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wcWho em{flex:none;padding:1px 7px;border-radius:999px;background:rgba(13,148,136,.12);font-weight:600}
html[data-theme="dark"] .wcWho em{background:rgba(45,212,191,.14)}
/* ===== Regals de la temporada (app-regals.js, 04/10/2026): recompenses de l'Advent, nom daurat, pla de rescat ===== */
.rgRewards{margin-top:16px;padding-top:14px;border-top:1px dashed rgba(201,138,28,.35)}
.rgRewards .tsKick{margin:0 0 10px}
.rgRow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.rgItem{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;row-gap:2px;align-items:center;text-align:left;padding:12px 14px;border-radius:14px;border:1px solid rgba(201,138,28,.35);background:rgba(233,176,74,.08);color:inherit;font:inherit;cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease}
.rgItem:hover{transform:translateY(-1px);border-color:rgba(201,138,28,.7)}
.rgItem:disabled{opacity:.7;cursor:progress}
.rgItem .rgIc{grid-row:1 / 3;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#fde68a,#e9b04a);color:#5a3404}
.rgItem b{font-size:14.5px;line-height:1.25}
.rgItem small{font-size:12.5px;line-height:1.3;opacity:.75}
.rgItem.on{border-color:#c98a1c;background:rgba(233,176,74,.2)}
.rgItem.on .rgIc{background:linear-gradient(135deg,#e9c46a,#a16207);color:#fff}
@media (max-width:640px){.rgRow{grid-template-columns:1fr}}
html[data-theme="dark"] .rgItem{background:rgba(233,176,74,.07);border-color:rgba(233,176,74,.28)}
html[data-theme="dark"] .rgItem.on{background:rgba(233,176,74,.16);border-color:#e8b04a}
/* nom daurat (corona dels Reis) */
.rgGold{background:linear-gradient(90deg,#a16207,#d4a017 45%,#b8860b);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;font-weight:700}
html[data-theme="dark"] .rgGold{background-image:linear-gradient(90deg,#f6d99a,#e8b04a 50%,#fde68a)}
.rgCrown{display:inline-flex;vertical-align:-2px;margin-right:4px;color:#c99a2e;-webkit-text-fill-color:initial}
.rgCrown svg{stroke:#c99a2e}
html[data-theme="dark"] .rgCrown svg{stroke:#e8b04a}
/* pla de rescat (carbó de sucre) */
.rgCard{display:flex;flex-direction:column;gap:12px}
.rgCardTxt{display:flex;flex-direction:column;gap:4px}
.rgCardTxt .tsKick{margin:0;display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--brand)}
.rgCardTxt b{font-size:16px;line-height:1.3}
.rgCardTxt span{font-size:13.5px;opacity:.8}
.rgDots{display:flex;gap:8px;flex-wrap:wrap}
.rgDots i{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1.5px solid color-mix(in srgb,var(--brand) 35%,transparent);font-style:normal;font-size:12.5px;font-weight:600;opacity:.75}
.rgDots i.on{background:var(--brand);border-color:var(--brand);color:#fff;opacity:1}
.rgDots i.now{opacity:1;box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent)}
.rgCard .tsCardGo{display:flex;gap:8px;flex-wrap:wrap}

/* ===== Enunciats llargs: el cas en una targeta de lectura i la pregunta destacada a sota (qStemHtml, 04/10/2026) ===== */
.qCase{margin:4px 0 16px;padding:16px 18px 14px;border-radius:14px;background:var(--surface-alt);border:1px solid var(--border);border-left:3px solid var(--brand)}
.qCase p{margin:0;font-family:var(--font-body);font-size:16px;font-weight:400;line-height:1.62;color:inherit;letter-spacing:0}
.qCaseKick{margin:0 0 8px;font:700 12px/1.2 var(--font-display);letter-spacing:.09em;text-transform:uppercase;color:var(--brand)}
#content .qCase + .qText,.lsQ .qCase + .qText{font-size:19px;line-height:1.4}
#content .qText.qLong,.lsQ .qText.qLong{font-family:var(--font-body);font-size:17px;font-weight:500;line-height:1.6}
@media (max-width:600px){.qCase{padding:13px 14px 12px}.qCase p{font-size:15px;line-height:1.58}#content .qCase + .qText,.lsQ .qCase + .qText{font-size:17px}#content .qText.qLong,.lsQ .qText.qLong{font-size:15.5px}}
.qCase p + p{margin-top:10px}

/* ===== Repte de la setmana v3: arena, premi, podi, com es guanya (app-repte.js?v=5, 04/10/2026; font _tools/repte-v3.css) ===== */
/* ===== Repte setmanal v3: pantalla «arena» (app-repte.js, 04/10/2026) =====
   Arena fosca amb compte enrere en directe, premi visible, «Com es guanya», podi, stats de joc (ratxa, nivell amb camí d'XP,
   millor posició) i setmana passada amb «Repassa les teves fallades». Animacions suaus; amb prefers-reduced-motion, cap. */
.wcPage{container:wcpage/inline-size;--wc-gold:#a16207;--wc-gold-bg:rgba(212,160,23,.12);--wc-gold-bd:rgba(212,160,23,.38)}
html[data-theme="dark"] .wcPage{--wc-gold:#fbbf24;--wc-gold-bg:rgba(251,191,36,.1);--wc-gold-bd:rgba(251,191,36,.3)}

/* --- arena --- */
.wcArena{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:22px;align-items:center;margin:0 0 16px;padding:26px 28px;border-radius:22px;color:#e6f4f1;background:radial-gradient(120% 140% at 0% 0%,rgba(45,212,191,.18),transparent 55%),radial-gradient(70% 110% at 100% 100%,rgba(212,160,23,.13),transparent 60%),linear-gradient(135deg,#0b1c26,#070d12);border:1px solid #1f2e39;box-shadow:0 18px 40px rgba(7,13,18,.16)}
.wcArena::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:32px 32px;pointer-events:none;-webkit-mask:linear-gradient(90deg,#000,transparent 85%);mask:linear-gradient(90deg,#000,transparent 85%)}
.wcArena>*{position:relative;z-index:1;min-width:0}
.wcArena .hero{margin:0}
.wcArena .eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 10px;color:#7fe3d3;font-variant-numeric:tabular-nums}
.wcDot{width:8px;height:8px;border-radius:50%;background:#2dd4bf;box-shadow:0 0 0 0 rgba(45,212,191,.55);animation:wcPulse 2.2s ease-out infinite}
@keyframes wcPulse{0%{box-shadow:0 0 0 0 rgba(45,212,191,.55)}70%,100%{box-shadow:0 0 0 9px rgba(45,212,191,0)}}
.wcPage .wcArena h1{color:#fff;font-size:clamp(26px,3vw,36px);line-height:1.12;letter-spacing:-.02em;margin:0 0 10px}
.wcArena h1 svg{flex:none;color:#2dd4bf}
.wcArena .hero p{margin:0;max-width:520px;font-size:15px;line-height:1.55;color:#b9ccd3}
.wcFacts{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.wcFacts span{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);font-size:13px;font-weight:600;color:#dff5f1}
.wcFacts svg{color:#5eead4}
.wcArenaSide{display:flex;flex-direction:column;gap:12px;padding:18px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1)}
.wcClock>small{display:block;margin-bottom:8px;font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#9fb8c0}
.wcTiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.wcTile{display:flex;flex-direction:column;align-items:center;padding:11px 4px 9px;border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.12)}
.wcTile b{display:block;font-family:var(--font-display);font-size:30px;font-weight:700;line-height:1;color:#fff;font-variant-numeric:tabular-nums}
.wcTile:last-child b{color:#5eead4}
.wcTile i{margin-top:6px;font-style:normal;font-size:11.5px;color:#9fb8c0}
.wcTile b.tick{animation:wcTick .45s ease-out}
@keyframes wcTick{0%{opacity:.3;transform:translateY(-5px)}100%{opacity:1;transform:none}}
.wcPlayers{display:flex;align-items:center;gap:8px;margin:0;font-size:14px;color:#cfe3e0}
.wcPlayers b{font-family:var(--font-display);font-size:17px;color:#fff}
.wcPlayers svg{flex:none;color:#5eead4}
.wcArena .wcStatus{margin:0;background:rgba(255,255,255,.06);color:#dff5f1}
.wcArena .wcStatus b{color:#fff}.wcArena .wcStatus svg{color:#5eead4}.wcArena .wcStatus.todo svg{color:#9fb8c0}
.wcArena .wcGo{min-height:50px;font-size:16px}
.wcRevSlot:empty{display:none}

/* --- repassa les fallades --- */
.wcRev{display:flex;align-items:center;gap:12px;width:100%;padding:11px 13px;border-radius:14px;border:1px solid rgba(13,148,136,.32);background:var(--brand-tint);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.wcRev:hover{transform:translateY(-1px);border-color:var(--brand);box-shadow:0 8px 20px rgba(13,148,136,.14)}
.wcRev:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.wcRevIc{flex:none;width:36px;height:36px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:rgba(13,148,136,.14);color:var(--brand-dark)}
.wcRevTxt{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}
.wcRevTxt b{font-family:var(--font-display);font-size:14.5px;line-height:1.3}
.wcRevTxt small{font-size:12.5px;line-height:1.35;color:var(--text-muted)}
.wcRev>svg:last-child{flex:none;color:var(--brand)}
.wcRev.dark{background:rgba(45,212,191,.08);border-color:rgba(45,212,191,.3);color:#e6f4f1}
.wcRev.dark .wcRevTxt small{color:#9fb8c0}.wcRev.dark .wcRevIc{background:rgba(45,212,191,.16);color:#5eead4}.wcRev.dark>svg:last-child{color:#5eead4}
.wcRevOk{display:flex;align-items:center;gap:7px;margin:0;font-size:13.5px;color:var(--text-muted)}
.wcRevOk svg{flex:none;color:var(--brand)}
.wcRevOk.dark{color:#cfe3e0}.wcRevOk.dark svg{color:#5eead4}
.wcBtns{display:flex;flex-wrap:wrap;gap:8px}

/* --- premi i com es guanya --- */
.wcDuo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin:0 0 14px}
.wcDuo>.wcCard{padding:18px 20px}
.wcPrizeInfo{position:relative;overflow:hidden;border-color:var(--wc-gold-bd);background:radial-gradient(120% 110% at 100% 0%,var(--wc-gold-bg),transparent 62%),var(--surface)}
.wcPiHead{display:flex;align-items:center;gap:13px;margin:0 0 12px}
.wcPiIc{flex:none;width:54px;height:54px;border-radius:17px;display:flex;align-items:center;justify-content:center;color:var(--wc-gold);background:var(--wc-gold-bg);border:1px solid var(--wc-gold-bd);animation:wcGift 4s ease-in-out infinite}
@keyframes wcGift{0%,84%,100%{transform:none}88%{transform:rotate(-9deg) scale(1.04)}92%{transform:rotate(7deg) scale(1.04)}96%{transform:rotate(-3deg)}}
.wcPiHead small{display:block;font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--wc-gold)}
.wcPiHead b{display:block;font-family:var(--font-display);font-size:19px;line-height:1.25}
.wcPrizeInfo>p{margin:0 0 10px;font-size:14px;line-height:1.55;color:var(--text-muted)}
.wcPrizeInfo>p b{color:var(--text)}
.wcPrizeInfo>p.wcPiPlus{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:12px;background:var(--surface-alt);font-size:13.5px}
.wcPiEur{flex:none;padding:2px 9px;border-radius:999px;font-family:var(--font-display);font-size:13.5px;font-weight:700;color:var(--brand-dark);background:var(--brand-tint);border:1px solid rgba(13,148,136,.3);white-space:nowrap}
.wcPiFoot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-top:4px;font-size:12.5px;color:var(--text-muted)}
.wcPiFoot>span{display:inline-flex;align-items:center;gap:6px}
.wcPiFoot a{display:inline-flex;align-items:center;gap:5px;font-weight:700;color:var(--brand-dark);text-decoration:none}
.wcPiFoot a:hover{text-decoration:underline}
.wcSteps{list-style:none;margin:4px 0 12px;padding:0;display:grid;gap:2px}
.wcSteps li{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;padding:7px 0}
.wcSteps li:not(:last-child)::after{content:"";position:absolute;left:21px;top:51px;height:12px;width:2px;border-radius:2px;background:rgba(13,148,136,.3)}
.wcStepN{position:relative;width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--brand-tint);color:var(--brand-dark);border:1px solid rgba(13,148,136,.28)}
.wcStepN i{position:absolute;top:-6px;right:-6px;width:19px;height:19px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--brand);color:#fff;font:700 11px/1 var(--font-display);font-style:normal}
.wcSteps li>div>b{display:block;font-family:var(--font-display);font-size:15px;line-height:1.3}
.wcSteps li>div>span{font-size:13.5px;line-height:1.45;color:var(--text-muted)}
.wcHowFoot{display:flex;gap:8px;align-items:flex-start;margin:0;padding:10px 12px;border-radius:12px;background:var(--surface-alt);font-size:13px;line-height:1.5;color:var(--text-muted)}
.wcHowFoot svg{flex:none;margin-top:2px;color:var(--brand)}

/* --- rànquing, stats i setmana passada --- */
.wcGrid3{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:14px;align-items:start;margin-bottom:16px}
.wcSide{display:grid;gap:14px;min-width:0}
.wcGrid3 .wcCard{padding:18px 20px}
.wcRankHead{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0 0 12px}
.wcRankHead .wcH3{margin:0}
.wcWk{flex:none;padding:3px 9px;border-radius:999px;background:var(--surface-alt);border:1px solid var(--border);font-size:11.5px;font-weight:700;letter-spacing:.03em;color:var(--text-muted);font-variant-numeric:tabular-nums}
.wcRankCard .wcRankMsg{margin-bottom:12px}
.wcPodium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:end;margin:4px 0 14px}
.wcPod{display:flex;flex-direction:column;align-items:center;min-width:0}
.wcPodWho{display:flex;flex-direction:column;align-items:center;gap:3px;max-width:100%;min-width:0;padding:0 2px 9px;text-align:center}
.wcPodAv{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font:700 14px/1 var(--font-display);font-style:normal;color:var(--text);background:var(--surface-alt);border:2px solid #94a3b8}
.wcPod.p1 .wcPodAv{width:54px;height:54px;font-size:16px;border-color:#d4a017;background:var(--wc-gold-bg);color:var(--wc-gold)}
.wcPod.p3 .wcPodAv{border-color:#c2703d}
.wcPod.me .wcPodAv{box-shadow:0 0 0 3px var(--surface),0 0 0 5px var(--brand)}
.wcPodNm{max-width:100%;font-size:13px;font-weight:600;line-height:1.25;overflow-wrap:anywhere}
.wcPodWho em{font-style:normal;font-size:11.5px;font-weight:700;color:var(--brand-dark);padding:1px 7px;border-radius:999px;background:var(--brand-tint)}
.wcPodSc{font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.wcPodSc b{font-size:13.5px;color:var(--text)}
.wcCrown{display:inline-flex;margin-bottom:-2px;color:#d4a017;animation:wcFloat 3s ease-in-out infinite}
@keyframes wcFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
.wcPodCol{width:100%;display:flex;justify-content:center;align-items:flex-start;padding-top:10px;border-radius:12px 12px 4px 4px;transform-origin:50% 100%;animation:wcRise .7s cubic-bezier(.2,.8,.2,1) both}
.wcPod.p1 .wcPodCol{height:86px;background:linear-gradient(180deg,rgba(212,160,23,.3),rgba(212,160,23,.06));border:1px solid rgba(212,160,23,.42);animation-delay:.18s}
.wcPod.p2 .wcPodCol{height:64px;background:linear-gradient(180deg,rgba(148,163,184,.32),rgba(148,163,184,.07));border:1px solid rgba(148,163,184,.42)}
.wcPod.p3 .wcPodCol{height:48px;background:linear-gradient(180deg,rgba(194,112,61,.28),rgba(194,112,61,.06));border:1px solid rgba(194,112,61,.4);animation-delay:.32s}
@keyframes wcRise{from{opacity:0;transform:scaleY(.12)}to{opacity:1;transform:none}}
.wcPod.empty .wcPodAv{border-style:dashed;background:transparent;color:var(--text-faint)}
.wcPod.empty .wcPodNm{font-weight:500;color:var(--text-faint)}
.wcPod.empty .wcPodCol{opacity:.4}
.wcMe{display:block;margin:0}
.wcMeStats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 10px}
.wcMeStats .wcMeStat{padding:12px 11px;border:1px solid var(--border)}
.wcMeStats .wcMeStat b{font-size:24px;line-height:1.1}
.wcMeStats .wcMeIc{width:32px;height:32px;margin-bottom:6px;border-radius:10px;align-items:center;justify-content:center;background:rgba(13,148,136,.12)}
.wcMeStats .wcMeStat.fl .wcMeIc{color:#d97706;background:rgba(217,119,6,.12)}
.wcMeStat.fl.on .wcMeIc svg{transform-origin:50% 90%;animation:wcFlicker 1.9s ease-in-out infinite}
@keyframes wcFlicker{0%,100%{transform:none}30%{transform:scale(1.08,.94) rotate(-3deg)}60%{transform:scale(.95,1.06) rotate(2deg)}}
.wcMeStats .wcMeStat.pos .wcMeIc{color:var(--wc-gold);background:var(--wc-gold-bg)}
.wcMeSub{font-style:normal;font-size:11px;line-height:1.3;color:var(--text-faint)}
.wcLevel{padding:12px 14px 10px;border-radius:14px;background:var(--surface-alt);border:1px solid var(--border)}
.wcLevelTop{display:flex;align-items:center;gap:10px}
.wcLevelIc{flex:none;width:36px;height:36px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:rgba(13,148,136,.12);color:var(--brand)}
.wcLevelName{display:flex;flex-direction:column;min-width:0;flex:1}
.wcLevelName small{font-size:11.5px;color:var(--text-muted)}
.wcLevelName b{font-family:var(--font-display);font-size:17px;line-height:1.25}
.wcXp{flex:none;padding:3px 9px;border-radius:999px;background:var(--brand-tint);font-size:12px;font-weight:700;color:var(--brand-dark);white-space:nowrap;font-variant-numeric:tabular-nums}
.wcTrack{position:relative;height:54px;margin:14px 10px 2px}
.wcTrackBar{position:absolute;left:0;right:0;top:7px;height:6px;border-radius:99px;background:rgba(13,148,136,.16);overflow:hidden}
.wcTrackBar i{display:block;width:var(--w);height:100%;border-radius:inherit;background:linear-gradient(90deg,#0d9488,#2dd4bf);animation:wcFill 1.1s cubic-bezier(.2,.8,.2,1) .2s both}
@keyframes wcFill{from{width:0}}
.wcNode{position:absolute;top:0;left:var(--x);transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:6px}
.wcNode i{width:20px;height:20px;border-radius:50%;background:var(--surface);border:2px solid var(--border)}
.wcNode.on i{background:var(--brand);border-color:var(--brand)}
.wcNode.cur i{box-shadow:0 0 0 4px rgba(13,148,136,.22)}
.wcNode small{font-size:11px;font-weight:600;line-height:1.2;text-align:center;white-space:nowrap;color:var(--text-muted)}
.wcNode small em{display:block;font-style:normal;font-weight:500;color:var(--text-faint);font-variant-numeric:tabular-nums}
.wcNode.on small{color:var(--text)}
.wcTrack .wcNode:nth-child(2){transform:translateX(-10px);align-items:flex-start}.wcTrack .wcNode:nth-child(2) small{text-align:left}
.wcTrack .wcNode:last-child{transform:translateX(calc(-100% + 10px));align-items:flex-end}.wcTrack .wcNode:last-child small{text-align:right}
.wcLevel .wcNextLvl{display:block;margin-top:4px;font-size:12px!important;color:var(--text-muted)}
.wcPrevCard .wcWinner{margin-bottom:10px}
.wcWinner span.wcWinCrown{flex:none;margin-left:auto;color:var(--wc-gold)}
.wcPrevRes{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 10px;font-size:13.5px;font-variant-numeric:tabular-nums}
.wcPrevRes svg{flex:none;color:var(--brand)}
.wcPrevRes.none{color:var(--text-muted)}.wcPrevRes.none svg{color:var(--text-muted)}
.wcPrevCard .wcPrev{margin-top:12px}
.wcPrevMine:empty{display:none}

/* --- amplades (container queries: la columna de contingut, no la finestra) --- */
@container wcpage (max-width:860px){.wcGrid3{grid-template-columns:1fr}}
@container wcpage (max-width:760px){.wcArena{grid-template-columns:1fr;gap:18px}.wcDuo{grid-template-columns:1fr}}
@container wcpage (max-width:520px){
  .wcArena{padding:20px 16px;border-radius:18px}
  .wcArenaSide{padding:14px}
  .wcTile b{font-size:25px}
  .wcDuo>.wcCard,.wcGrid3 .wcCard{padding:16px}
  .wcMeStats{gap:6px}.wcMeStats .wcMeStat{padding:10px 9px}.wcMeStats .wcMeStat b{font-size:20px}
  .wcPodAv{width:40px;height:40px;font-size:13px}.wcPod.p1 .wcPodAv{width:48px;height:48px;font-size:15px}
  .wcPodNm{font-size:12.5px}
}

/* --- tema fosc --- */
html[data-theme="dark"] .wcStepN i{color:#062b27}
html[data-theme="dark"] .wcRevIc,html[data-theme="dark"] .wcMeStats .wcMeIc,html[data-theme="dark"] .wcLevelIc{background:rgba(45,212,191,.12);color:#2dd4bf}
html[data-theme="dark"] .wcMeStats .wcMeStat.fl .wcMeIc{color:#fbbf24;background:rgba(251,191,36,.1)}
html[data-theme="dark"] .wcMeStats .wcMeStat.pos .wcMeIc{color:var(--wc-gold);background:var(--wc-gold-bg)}
html[data-theme="dark"] .wcTrackBar{background:rgba(45,212,191,.14)}
html[data-theme="dark"] .wcNode.cur i{box-shadow:0 0 0 4px rgba(45,212,191,.2)}
html[data-theme="dark"] .wcPiEur{border-color:rgba(45,212,191,.3)}
html[data-theme="dark"] .wcStepN{border-color:rgba(45,212,191,.25)}
html[data-theme="dark"] .wcSteps li:not(:last-child)::after{background:rgba(45,212,191,.28)}
html[data-theme="dark"] .wcArena{box-shadow:none}

/* --- moviment reduït --- */
@media (prefers-reduced-motion:reduce){
  .wcDot,.wcTile b.tick,.wcPiIc,.wcCrown,.wcPodCol,.wcMeStat.fl.on .wcMeIc svg,.wcTrackBar i{animation:none!important}
  .wcRev{transition:none}.wcRev:hover{transform:none}
}
/* la targeta del premi omple l'alçada de la fila: el peu (bases) va a baix */
.wcPrizeInfo{display:flex;flex-direction:column}
.wcPrizeInfo .wcPiFoot{margin-top:auto;padding-top:4px}
/* passos de «Com es guanya»: icona a dalt i línia d'unió fins al pas següent */
.wcSteps li{align-items:start}
.wcSteps li>div{padding-top:2px}
.wcSteps li>div>span{display:block}
.wcSteps li:not(:last-child)::after{top:55px;bottom:-5px;height:auto}
/* posició d'aquesta setmana dins l'estat de l'arena: píndola */
.wcArena .wcPos:not(:empty){display:inline-flex;padding:2px 9px;border-radius:999px;background:rgba(45,212,191,.14);color:#5eead4;font-size:12.5px;font-weight:700;font-variant-numeric:tabular-nums}
.wcPrevRes.none{flex-wrap:nowrap;align-items:flex-start}.wcPrevRes.none svg{margin-top:2px}
/* ===== Dispositius de l'alumne (app-dispositius.js · 05/10/2026): pantalla de bloqueig i «El meu compte» (tots dos foscos) ===== */
.dvBox{margin:14px 0 4px;text-align:left;border:1px solid rgba(148,163,184,.22);border-radius:14px;padding:12px 12px 10px;background:rgba(255,255,255,.03)}
.acGrid .dvBox{grid-column:1/-1;margin:0}
.dvHead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.dvHead b{font:600 13.5px/1.3 var(--font-display);color:#e8f1f4}
.dvCount{flex:none;white-space:nowrap;font:600 12px/1 var(--font-display);color:#5eead4;border:1px solid rgba(45,212,191,.4);border-radius:999px;padding:4px 9px}
.dvList{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.dvItem{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;background:rgba(255,255,255,.04)}
.dvItem.cur{background:rgba(45,212,191,.08);box-shadow:inset 0 0 0 1px rgba(45,212,191,.3)}
.dvIco{flex:none;width:34px;height:34px;border-radius:9px;display:grid;place-items:center;color:#5eead4;background:rgba(45,212,191,.1)}
.dvTxt{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.dvTxt b{font:600 13.5px/1.3 var(--font-display);color:#e8f1f4}
.dvTxt span{font-size:12.5px;line-height:1.35;color:#9fb3bd}
.dvTag{flex:none;font:600 11.5px/1 var(--font-display);color:#5eead4}
.dvRm{flex:none;border:1px solid rgba(148,163,184,.3);background:transparent;color:#e8f1f4;font:600 12.5px/1 var(--font-display);padding:8px 11px;border-radius:9px;cursor:pointer}
.dvRm:hover{border-color:rgba(45,212,191,.6)}
.dvRm.confirm{background:#0d9488;border-color:#0d9488;color:#fff}
.dvRm:disabled{opacity:.5;cursor:default}
.dvRule{margin:9px 2px 0;font-size:12.5px;line-height:1.45;color:#9fb3bd}
.dvMsg{margin:6px 2px 0;font-size:12.5px;line-height:1.45;color:#5eead4;min-height:0}
.dvMsg:empty{display:none}
@media (max-width:420px){.dvItem{flex-wrap:wrap}.dvRm,.dvTag{margin-left:44px}}

/* >>> ux:lletra-v1.css — Mida de la lletra A− / A+ (app-lletra.js) (font _tools/lletra-v1.css) */
/* Control A− 100 % A+ (mateix llenguatge que «Vista essencial» i «Escolta l'apartat") */
.fsCtl{display:inline-flex;align-items:center;gap:2px;margin:6px 0 0 6px;padding:2px;border-radius:999px;border:1px solid color-mix(in srgb,var(--t3-teal,#0d9488) 40%,transparent);vertical-align:middle;font-family:var(--font-body)}
.fsCtl button{display:inline-flex;align-items:center;justify-content:center;gap:1px;min-width:34px;height:28px;padding:0 8px;border:0;border-radius:999px;background:transparent;color:var(--t3-teal,#0d9488);cursor:pointer;font:700 13px/1 var(--font-display)}
.fsCtl button:hover:not(:disabled){background:var(--t3-teal-bg,#f0fdfa)}
.fsCtl button:focus-visible{outline:2px solid var(--brand);outline-offset:1px}
.fsCtl button:disabled{opacity:.35;cursor:default}
.fsCtl .fsA.sm{font-size:11.5px}.fsCtl .fsA.lg{font-size:15.5px}
.fsCtl .fsSign{font-size:12px;font-weight:600;margin-left:1px}
.fsCtl .fsVal{min-width:44px;text-align:center;font:600 12px/1 var(--font-body);color:var(--t3-slate,#475569);font-variant-numeric:tabular-nums}
.lecNav + .fsCtl{margin-left:0}
.quizTopRow .fsCtl.fsQuiz{margin:0 8px 0 auto}
.lsQTop{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.lsQTop .fsCtl{margin:0}
/* dins «El meu compte» (sempre fosc) */
.acRow .fsCtl{margin:0;flex:none;border-color:rgba(148,163,184,.26)}
.acRow .fsCtl button{color:#e8f1f4}
.acRow .fsCtl button:hover:not(:disabled){background:rgba(45,212,191,.14)}
.acRow .fsCtl .fsVal{color:#9fb3bd}
@media (max-width:600px){
  .fsCtl.fsSec{margin-left:6px}
  .quizTopRow .fsCtl.fsQuiz .fsVal{display:none}
  .quizTopRow .fsCtl.fsQuiz button{min-width:32px;padding:0 6px}
}
@media print{.fsCtl{display:none!important}}

/* Escalat: només els blocs de lectura (text, taules, targetes i eines creixen junts; l'amplada s'adapta sola) */
html[data-fs] #content .tsection > :not(h2):not(.lecNav):not(.lecEssBtn):not(.esBar):not(.fsCtl),
html[data-fs] #content > .edRadar,
html[data-fs] #lesson .lsReadInner > :not(.lecNav):not(.lecEssBtn):not(.esBar):not(.fsCtl),
html[data-fs] #lesson .lsQc,
html[data-fs] #lesson .lsQ > :not(.lsQTop),
html[data-fs] #content .examMain .examCard > :not(:first-child),
html[data-fs] #content .examWrap .reviewAcc{zoom:var(--uxk,1)}
@media print{html[data-fs] *{zoom:1!important}}
/* <<< ux:lletra-v1.css */

/* >>> ux:guia-v1.css — Guia d'inici (app-guia.js) (font _tools/guia-v1.css) */
/* Guia d'inici: capa fosca, focus sobre l'element real i targeta (mateix llenguatge fosc que l'entrada i «El meu compte») */
.gdRoot{position:fixed;inset:0;z-index:9400}
.gdShade{position:absolute;inset:0;background:transparent}
.gdRoot.noHole .gdShade{background:rgba(3,8,12,.66)}
.gdHole{position:fixed;border-radius:14px;box-shadow:0 0 0 2px #2dd4bf,0 0 0 6px rgba(45,212,191,.22),0 0 0 200vmax rgba(3,8,12,.66);pointer-events:none;transition:left .28s cubic-bezier(.2,.8,.2,1),top .28s cubic-bezier(.2,.8,.2,1),width .28s cubic-bezier(.2,.8,.2,1),height .28s cubic-bezier(.2,.8,.2,1)}
.gdRoot.noHole .gdHole{display:none}
.gdCard{position:fixed;left:16px;top:16px;width:min(380px,calc(100vw - 32px));padding:18px 18px 16px;border-radius:20px;border:1px solid rgba(148,163,184,.18);background:linear-gradient(180deg,#0f1b24,#0a141b);color:#e8f1f4;box-shadow:0 24px 60px rgba(0,0,0,.45);font-family:var(--font-body);outline:none;transition:left .28s cubic-bezier(.2,.8,.2,1),top .28s cubic-bezier(.2,.8,.2,1);animation:gdIn .22s ease-out}
@keyframes gdIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.gdHead{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.gdIc{width:34px;height:34px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;background:rgba(45,212,191,.14);color:#5eead4;flex:none}
.gdKick{font:700 11.5px/1.2 var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:#7dd3c8}
.gdCard h2{margin:0 0 6px;font:600 19px/1.25 var(--font-display);letter-spacing:-.01em;color:#fff}
.gdCard p{margin:0;font-size:15px;line-height:1.55;color:#c4d2d9}
.gdCard p b{color:#e8f1f4;font-weight:600}
.gdFoot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;flex-wrap:wrap}
.gdDots{display:flex;gap:6px}
.gdDots i{width:7px;height:7px;border-radius:999px;background:rgba(148,163,184,.35);transition:width .2s,background .2s}
.gdDots i.done{background:rgba(45,212,191,.55)}
.gdDots i.on{width:20px;background:#2dd4bf}
.gdBtns{display:flex;gap:8px;margin-left:auto;align-items:center}
.gdBtns button{border:1px solid rgba(148,163,184,.26);background:transparent;color:#e8f1f4;font:600 13.5px/1 var(--font-display);padding:10px 14px;border-radius:11px;cursor:pointer;min-height:40px}
.gdBtns button:hover{border-color:rgba(45,212,191,.55)}
.gdBtns button:focus-visible{outline:2px solid #2dd4bf;outline-offset:2px}
.gdBtns .gdSkip{border-color:transparent;color:#9fb3bd;padding-left:6px;padding-right:6px}
.gdBtns .gdNext{background:#0d9488;border-color:#0d9488;color:#fff}
.gdBtns .gdNext:hover{background:#0f766e}
.gdBtns [hidden]{display:none}
html.gdOpen #tocFab{visibility:hidden}
@media (max-width:420px){.gdCard{padding:16px 15px 14px}.gdCard h2{font-size:18px}.gdCard p{font-size:14.5px}.gdBtns button{padding:10px 12px}}
@media (prefers-reduced-motion:reduce){.gdHole,.gdCard{transition:none;animation:none}}
@media print{.gdRoot{display:none!important}}
/* <<< ux:guia-v1.css */

/* >>> ux:fallades-v1.css — On falles més (app-fallades.js) (font _tools/fallades-v1.css) */
/* «On falles més» (app-fallades.js): targeta del tauler, pantalla completa i bloc als resultats */
.fxDash .dCardTop b,.fxRes .dCardTop b{display:inline-flex;align-items:center;gap:8px}
.fxDash .dCardTop b svg,.fxRes .dCardTop b svg{color:var(--brand)}
.fxRes .dCardTop{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.fxRes .dCardTop b{font-family:var(--font-display);font-size:16px;font-weight:600}
.fxRes .dCardTop a{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:700;color:var(--brand-dark);text-decoration:none}
.fxSub{margin:-4px 0 0;font-size:13.5px;line-height:1.45;color:var(--text-muted)}
.fxList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;counter-reset:fx}
.fxRow{counter-increment:fx;display:grid;grid-template-columns:28px minmax(0,1fr) auto;grid-template-areas:"n t c" "n b b";gap:6px 12px;align-items:center;padding:12px 14px;border-radius:14px;border:1px solid var(--border);background:var(--bg)}
.fxRow::before{content:counter(fx);grid-area:n;align-self:start;width:28px;height:28px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--brand-tint);color:var(--brand-dark);font:600 13px/1 var(--font-display)}
.fxTxt{grid-area:t;min-width:0;display:flex;flex-direction:column;gap:2px}
.fxTxt small{font-size:12px;font-weight:600;color:var(--text-muted);letter-spacing:.01em}
.fxTxt b{font-size:14.5px;line-height:1.35;font-weight:600;color:var(--text)}
.fxN{grid-area:c;align-self:start;white-space:nowrap;font-size:12.5px;color:var(--text-muted);padding:4px 9px;border-radius:999px;background:var(--surface-alt)}
.fxN b{font-family:var(--font-display);font-size:14px;color:var(--text)}
.fxBtns{grid-area:b;display:flex;gap:8px;flex-wrap:wrap}
.fxBtns .btnv2{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;font-size:13px;min-height:36px}
.fxEmpty{margin:0;font-size:14px;line-height:1.5;color:var(--text-muted)}
.fxWait{opacity:.8}
.fxNote{margin:10px 0 0;font-size:13px;color:var(--text-muted)}
.fxAll{align-self:flex-start;display:inline-flex;align-items:center;gap:6px}
.fxFull{margin-bottom:24px}
.fxRes{display:flex;flex-direction:column;gap:12px;text-align:left}
.fxHero h1 svg{color:var(--brand-dark);vertical-align:-.15em}
[data-theme="dark"] .fxRow{background:var(--surface-alt)}
[data-theme="dark"] .fxN{background:var(--bg)}
@media (max-width:600px){
  .fxRow{grid-template-columns:26px minmax(0,1fr);grid-template-areas:"n t" "n c" "n b";padding:12px}
  .fxN{justify-self:start}
  .fxBtns .btnv2{flex:1 1 140px;justify-content:center;padding:8px 10px}
}
@media print{.fxDash,.fxRes{display:none!important}}
/* <<< ux:fallades-v1.css */

/* >>> ux:pla-v1.css — Pla fins a l'examen (app-pla.js) (font _tools/pla-v1.css) */
/* Pla fins a l'examen (app-pla.js): targeta del tauler i pantalla completa */
.plDash .dCardTop b{display:inline-flex;align-items:center;gap:8px}
.plDash .dCardTop b svg{color:var(--brand)}
.plWeekHead{display:flex;align-items:baseline;gap:8px 10px;flex-wrap:wrap}
.plWeekHead b{font-family:var(--font-display);font-size:15px;font-weight:600}
.plWeekHead span{font-size:13px;color:var(--text-muted)}
.plWeekHead em{font-style:normal;font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--brand-dark);background:var(--brand-tint);padding:3px 8px;border-radius:999px}
.plWeekHead em.r{color:var(--c-gold);background:var(--c-gold-bg)}
.plSum{margin:0;font-size:14px;line-height:1.5;color:var(--text)}
.plAdj{display:flex;gap:8px;align-items:flex-start;margin:0;padding:10px 12px;border-radius:12px;background:var(--brand-tint);color:var(--text);font-size:13.5px;line-height:1.5}
.plAdj svg{flex:none;margin-top:2px;color:var(--brand-dark)}
.plTopics{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;align-items:stretch}
.plTopic{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--bg);color:var(--text);text-align:left;cursor:pointer;font:inherit;min-width:0;transition:border-color .2s,transform .2s}
.plTopic:hover{border-color:var(--brand);transform:translateY(-1px)}
.plTopic:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.plTt{font-size:14px;font-weight:600;line-height:1.3}
.plBar{display:block;width:100%;height:5px;border-radius:999px;background:var(--border);overflow:hidden}
.plBar i{display:block;height:100%;border-radius:999px;background:var(--brand)}
.plTopic small{font-size:12px;color:var(--text-muted)}
.plMore{align-self:center;justify-self:start;font:600 13px/1 var(--font-display);color:var(--text-muted);padding:8px 10px}
.plTasks{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.plTasks button{display:inline-flex;align-items:center;gap:8px;padding:8px 12px 8px 8px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:600 13px/1.2 var(--font-body);cursor:pointer;text-align:left}
.plTasks button:hover{border-color:var(--brand)}
.plTk{width:24px;height:24px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--brand-tint);color:var(--brand-dark);flex:none}
.plTasks li.done .plTk{background:var(--brand);color:#fff}
[data-theme="dark"] .plTasks li.done .plTk{color:#04201d}
.plDate{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0;font-size:12.5px;color:var(--text-muted)}
.plDate b{color:var(--text)}
.plEmpty{margin:0;font-size:14px;line-height:1.5;color:var(--text-muted)}
.plHero h1 svg{color:var(--brand-dark);vertical-align:-.15em}
.plDateRow{display:flex;align-items:center;justify-content:space-between;gap:10px 16px;flex-wrap:wrap;margin-top:12px;font-size:13.5px;color:var(--text-muted)}
.plDateRow > span{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}
.plDateRow b{color:var(--text)}
.plDateEdit{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.plDateEdit > span{font-size:13px;font-weight:600}
.plDateEdit input{font:inherit;font-size:14px;padding:7px 9px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text)}
.plDateEdit .btnv2{padding:8px 12px;font-size:13px}
.plStats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 14px}
.plStats > div{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}
.plStats b{font-family:var(--font-display);font-size:22px;font-weight:700;line-height:1.1}
.plStats span{font-size:12.5px;color:var(--text-muted)}
.plWeeks{list-style:none;margin:14px 0 26px;padding:0 0 0 18px;display:flex;flex-direction:column;gap:12px;position:relative}
.plWeeks::before{content:"";position:absolute;left:5px;top:8px;bottom:8px;width:2px;border-radius:2px;background:var(--border)}
.plWeek{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}
.plWeek::before{content:"";position:absolute;left:-18px;top:18px;width:10px;height:10px;border-radius:999px;background:var(--surface);border:2px solid var(--border)}
.plWeek.cur{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-tint)}
.plWeek.cur::before{background:var(--brand);border-color:var(--brand)}
.plWeek.rev::before{border-color:var(--c-gold)}
@media (max-width:760px){.plStats{grid-template-columns:repeat(2,minmax(0,1fr))}.plTopics{grid-template-columns:minmax(0,1fr)}}
@media (max-width:420px){.plTasks button{font-size:12.5px}.plDateEdit{width:100%}.plDateEdit input{flex:1 1 140px;min-width:0}}
@media print{.plDash{display:none!important}}
/* <<< ux:pla-v1.css */

/* >>> ux:notes-v1.css — Notes i subratllat (app-notes.js) (font _tools/notes-v1.css) */
/* Notes i subratllat (app-notes.js) */
mark.ntMark{background:rgba(250,204,21,.38);color:inherit;border-radius:3px;padding:0 1px;box-decoration-break:clone;-webkit-box-decoration-break:clone;cursor:pointer;transition:background .2s}
mark.ntMark.hasNote{background:rgba(45,212,191,.28);border-bottom:2px solid rgba(13,148,136,.75)}
mark.ntMark:hover{background:rgba(250,204,21,.55)}
mark.ntMark.hasNote:hover{background:rgba(45,212,191,.42)}
mark.ntMark.ntFlash{animation:ntFlash 1.5s ease-out}
@keyframes ntFlash{0%,40%{box-shadow:0 0 0 4px rgba(13,148,136,.45)}100%{box-shadow:0 0 0 0 rgba(13,148,136,0)}}
[data-theme="dark"] mark.ntMark{background:rgba(250,204,21,.24)}
[data-theme="dark"] mark.ntMark.hasNote{background:rgba(45,212,191,.22);border-bottom-color:#2dd4bf}
.ntBar{position:fixed;z-index:9200;display:flex;gap:4px;padding:4px;border-radius:14px;background:#0f1b24;border:1px solid rgba(148,163,184,.22);box-shadow:0 12px 30px rgba(0,0,0,.28);animation:ntIn .14s ease-out}
.ntBar[hidden]{display:none}
.ntBar button{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:#e8f1f4;font:600 13.5px/1 var(--font-display);padding:10px 12px;border-radius:10px;cursor:pointer;min-height:40px;white-space:nowrap}
.ntBar button:hover,.ntBar button:focus-visible{background:rgba(45,212,191,.16);outline:none}
.ntBar button svg{color:#5eead4}
@keyframes ntIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.ntPop{position:fixed;inset:0;z-index:9300}
.ntPopBg{position:absolute;inset:0;background:rgba(3,8,12,.55)}
.ntPopBg.clear{background:transparent}
.ntEditor .ntPopCard{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(460px,calc(100vw - 32px))}
.ntPopCard{position:absolute;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:18px;box-shadow:0 24px 60px rgba(0,0,0,.3);padding:16px;display:flex;flex-direction:column;gap:10px;animation:ntIn .16s ease-out}
.ntPopHead{display:flex;align-items:center;justify-content:space-between;gap:10px}
.ntPopHead b{display:inline-flex;align-items:center;gap:8px;font:600 16px/1.2 var(--font-display)}
.ntPopHead b svg{color:var(--brand)}
.ntX{border:0;background:transparent;color:var(--text-muted);width:34px;height:34px;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.ntX:hover{background:var(--surface-alt)}
.ntQuote{margin:0;padding:8px 12px;border-left:3px solid #facc15;background:rgba(250,204,21,.12);border-radius:0 10px 10px 0;font-size:14px;line-height:1.5;color:var(--text)}
.ntLbl{font-size:12.5px;font-weight:700;color:var(--text-muted)}
.ntPopCard textarea,.ntEdit textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:84px;font:15px/1.5 var(--font-body);padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--bg);color:var(--text)}
.ntPopCard textarea:focus,.ntEdit textarea:focus{outline:2px solid var(--brand);outline-offset:0;border-color:transparent}
.ntPopBtns{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.ntPopBtns .btnv2{padding:9px 14px;font-size:13.5px}
.ntCount{margin-right:auto;font-size:12px;color:var(--text-faint);font-variant-numeric:tabular-nums}
.ntMenu .ntPopCard{padding:8px;gap:6px}
.ntMenuNote{margin:4px 6px 2px;font-size:14px;line-height:1.5;white-space:pre-wrap}
.ntMenuBtns{display:flex;flex-direction:column}
.ntMenuBtns button{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--text);font:600 14px/1.2 var(--font-body);padding:10px;border-radius:10px;cursor:pointer;text-align:left}
.ntMenuBtns button:hover,.ntMenuBtns button:focus-visible{background:var(--surface-alt);outline:none}
.ntMenuBtns button svg{color:var(--brand-dark)}
/* pantalla «Les meves notes» */
.ntHero h1 svg{color:var(--brand-dark);vertical-align:-.15em}
.ntHead small{font-size:14px;color:var(--text-muted)}
.ntSearch{display:flex;align-items:center;gap:8px;margin-top:12px;max-width:420px;padding:0 12px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text-muted)}
.ntSearch input{flex:1;min-width:0;border:0;background:transparent;font:15px/1 var(--font-body);color:var(--text);padding:11px 0;outline:none}
.ntList{display:flex;flex-direction:column;gap:18px;margin-bottom:28px}
.ntTopic{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:16px 18px;display:flex;flex-direction:column;gap:10px}
.ntTopic h2{margin:0;font-size:17px;display:flex;align-items:center;gap:8px}
.ntTopic h2 small{font:600 12px/1 var(--font-body);color:var(--text-muted);background:var(--surface-alt);padding:4px 8px;border-radius:999px}
.ntSec{margin:6px 0 0;font:600 13px/1.35 var(--font-body);color:var(--brand-dark);letter-spacing:.01em}
.ntItem{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:14px;border:1px solid var(--border);background:var(--bg)}
.ntText{margin:0;font-size:14.5px;line-height:1.5;white-space:pre-wrap}
.ntActs{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.ntActs[hidden],.ntEdit[hidden]{display:none}
.ntActs button{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:600 12.5px/1 var(--font-body);padding:8px 10px;border-radius:10px;cursor:pointer;min-height:34px}
.ntActs button:hover{border-color:var(--brand)}
.ntActs button svg{color:var(--brand-dark)}
.ntActs .ntDel.confirm{background:#b91c1c;border-color:#b91c1c;color:#fff}
.ntActs .ntDel.confirm svg{color:#fff}
.ntActs small{margin-left:auto;font-size:12px;color:var(--text-faint)}
.ntEdit{display:flex;flex-direction:column;gap:8px}
.ntEmpty p{margin:0;font-size:15px;line-height:1.6;color:var(--text-muted)}
.ntEmpty b{color:var(--text)}
.ntNone{margin:0;color:var(--text-muted)}
.ntDash span{display:inline-flex;align-items:center;gap:6px}
@media (max-width:600px){.ntTopic{padding:14px}.ntActs small{width:100%;margin-left:0}.ntEditor .ntPopCard{top:auto;bottom:12px;transform:translateX(-50%)}}
@media print{.ntBar,.ntPop{display:none!important}mark.ntMark{background:none;border-bottom:1px solid #999}}
/* <<< ux:notes-v1.css */

/* >>> ux:dia-v1.css — El teu dia (app-dia.js) (font _tools/dia-v1.css) */
/* «El teu dia» (app-dia.js): panell centrat a l'ordinador, full inferior al mòbil; mateix llenguatge fosc que l'entrada i «El meu compte» */
.dyRoot{position:fixed;inset:0;z-index:9350;display:flex;align-items:center;justify-content:center;padding:16px}
.dyBg{position:absolute;inset:0;background:rgba(3,8,12,.62);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:dyFade .2s ease-out}
.dyCard{position:relative;width:min(520px,100%);max-height:calc(100dvh - 32px);overflow:auto;border-radius:24px;border:1px solid rgba(148,163,184,.18);background:radial-gradient(120% 70% at 100% 0%,rgba(45,212,191,.12),transparent 60%),linear-gradient(180deg,#0f1b24,#0a141b);color:#e8f1f4;box-shadow:0 30px 80px rgba(0,0,0,.5);padding:22px 22px 18px;display:flex;flex-direction:column;gap:12px;font-family:var(--font-body);animation:dyUp .26s cubic-bezier(.2,.8,.2,1)}
@keyframes dyFade{from{opacity:0}to{opacity:1}}
@keyframes dyUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.dyX{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:11px;border:0;background:transparent;color:#9fb3bd;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.dyX:hover{background:rgba(255,255,255,.06);color:#fff}
.dyHead{padding-right:36px}
.dyKick{display:inline-flex;align-items:center;gap:6px;font:700 11.5px/1.2 var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:#7dd3c8}
.dyHead h2{margin:8px 0 4px;font:700 24px/1.2 var(--font-display);letter-spacing:-.02em;color:#fff}
.dyHead p{margin:0;font-size:15px;line-height:1.5;color:#b4c4cd}
.dyBlk{padding:13px 14px;border-radius:16px;border:1px solid rgba(148,163,184,.14);background:rgba(255,255,255,.03);display:flex;flex-direction:column;gap:6px}
.dyBlk h3{margin:0;display:flex;align-items:center;gap:7px;font:600 12px/1.2 var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:#9fb3bd}
.dyBlk h3 svg{color:#5eead4}
.dyBlk p{margin:0;font-size:15px;line-height:1.5;color:#dbe6eb}
.dyBlk b{color:#fff;font-weight:600}
.dyBlk ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:5px}
.dyBlk li{position:relative;padding-left:16px;font-size:14.5px;line-height:1.45;color:#dbe6eb}
.dyBlk li::before{content:"";position:absolute;left:2px;top:.62em;width:6px;height:6px;border-radius:999px;background:#2dd4bf}
.dyBlk li[hidden]{display:none}
.dyLink{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:#5eead4;font:600 14px/1.2 var(--font-display);padding:4px 0;cursor:pointer}
.dyLink:hover{text-decoration:underline}
.dyBar{height:8px;border-radius:999px;background:rgba(148,163,184,.18);overflow:hidden;margin-top:2px}
.dyBar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#0d9488,#2dd4bf)}
.dyPath{font-size:14px!important}
.dyMeta{font-size:13.5px!important;color:#9fb3bd!important}
.dyMeta:empty{display:none}
.dyBtns{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}
.dyBtns .btnv2{min-height:46px;padding:12px 20px;font-size:15px;display:inline-flex;align-items:center;justify-content:center;text-align:center}
.dyBtns .dyNo{background:transparent;border:1px solid rgba(148,163,184,.3);color:#e8f1f4;box-shadow:none}
.dyBtns .dyGo{flex:0 1 auto;background:#0d9488;border-color:#0d9488;color:#fff}
.dyBtns button:focus-visible,.dyLink:focus-visible,.dyX:focus-visible{outline:2px solid #2dd4bf;outline-offset:2px}
.dyNext{margin:-2px 0 0;text-align:right;font-size:12.5px;color:#9fb3bd}
html.dyOpen #tocFab{visibility:hidden}
@media (max-width:700px){
  .dyRoot{align-items:flex-end;padding:0}
  .dyCard{width:100%;max-height:calc(100dvh - 40px);border-radius:24px 24px 0 0;padding:20px 16px calc(16px + env(safe-area-inset-bottom));animation:dySheet .3s cubic-bezier(.2,.8,.2,1)}
  .dyCard::before{content:"";position:absolute;top:8px;left:50%;width:40px;height:4px;margin-left:-20px;border-radius:999px;background:rgba(148,163,184,.35)}
  .dyHead h2{font-size:21px}
  .dyBtns .btnv2{flex:1 1 0}
  .dyNext{text-align:center}
}
@keyframes dySheet{from{transform:translateY(100%)}to{transform:none}}
@media (prefers-reduced-motion:reduce){.dyCard,.dyBg{animation:none}}
@media print{.dyRoot{display:none!important}}
/* <<< ux:dia-v1.css */
/* 05/10: el botó «Personalitza» i el comptador del pla d'avui no es parteixen en dues línies */
.dCardTop .dEditBtn,.dCardTop>span{white-space:nowrap;flex:none}
/* ===== Escolta v2 (07/10/2026): reproductor flotant ===== */
.esDock{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom));transform:translate(-50%,160%);z-index:950;width:min(560px,calc(100vw - 24px));padding:12px 14px 10px;border-radius:20px;background:#0b1c26;color:#e6f3f1;box-shadow:0 18px 44px rgba(0,0,0,.35),0 0 0 1px rgba(45,212,191,.25);transition:transform .28s ease;font-family:var(--body,inherit)}
.esDock.on{transform:translate(-50%,0)}
@media (max-width:900px){.esDock{bottom:calc(84px + env(safe-area-inset-bottom))}}
.esDInfo{display:flex;flex-direction:column;gap:2px;min-width:0;padding:0 4px}
.esDTitle{font:700 13.5px/1.25 var(--display,Poppins),sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.esDHint{font-size:12px;color:#8fb3ae;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.esDCtl{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:8px}
.esDCtl button{display:inline-grid;place-items:center;min-width:44px;height:44px;padding:0 10px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#e6f3f1;font:700 14px/1 var(--body,inherit);cursor:pointer;font-variant-numeric:tabular-nums}
.esDCtl button svg{width:20px;height:20px}
.esDCtl .esDMain{min-width:56px;height:52px;background:#2dd4bf;border-color:#2dd4bf;color:#042a26}
.esDCtl .esDMain svg{width:24px;height:24px}
.esDCtl button:hover{filter:brightness(1.15)}
.esDCtl .esDRate{min-width:64px}
.esDProg{margin-top:9px;height:3px;border-radius:3px;background:rgba(255,255,255,.12);overflow:hidden}.esDProg i{display:block;height:100%;background:#2dd4bf;transition:width .3s}
html.esDockOn .esNow{cursor:pointer}
html.esDockOn body{padding-bottom:110px}
@media print{.esDock{display:none!important}}

/* ===== Repte v4 (07/10/2026): rivalitat ===== */
.wcRiv{display:flex;align-items:flex-start;gap:10px;margin-top:10px;padding:11px 13px;border-radius:14px;background:rgba(45,212,191,.1);border:1px solid rgba(45,212,191,.35);font-size:14px;line-height:1.4;color:inherit}
.wcRiv svg{flex:none;margin-top:1px;color:#2dd4bf}.wcRiv b{font-weight:800}
.wcRiv.goal{background:rgba(251,191,36,.1);border-color:rgba(251,191,36,.45)}.wcRiv.goal svg{color:#f59e0b}
.wcRiv.lead{background:rgba(251,191,36,.14);border-color:rgba(251,191,36,.55)}.wcRiv.lead svg{color:#f59e0b}
.wcRiv.alarm{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.45)}.wcRiv.alarm svg{color:#ef4444}
.wcDash .wcRivSlot{display:block}.wcDash .wcRiv{font-size:13px;padding:8px 11px;margin-top:8px}
.wcLeadTag{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:999px;background:#f59e0b;color:#1a1200;font:800 11px/1.3 var(--display,Poppins),sans-serif;text-transform:uppercase;letter-spacing:.06em;vertical-align:middle}

/* ===== Repte setmanal v4: REGAL SORPRESA, vitrina i trofeus (app-repte.js v7, 07/10/2026) =====
   Caixa tancada que tremola (premi d'aquesta setmana), caixa que s'obre en entrar (regal de la setmana passada), vitrina amb corones,
   plates i bronzes, i insígnies al costat dels pseudònims. Amb prefers-reduced-motion, sense animacions. */
.wcGift{position:relative;flex:none;width:96px;height:96px;display:grid;place-items:end center}
.wcGiftSvg{width:96px;height:88px;overflow:visible}
.wcGiftSvg rect{fill:#14b8a6}
.wcGiftLid rect:first-child{fill:#2dd4bf}
.wcGiftSvg .rb{fill:#e9c46a}
.wcGiftSvg .bow{fill:none;stroke:#e9c46a;stroke-width:4.5;stroke-linejoin:round}
.wcGiftSvg .q{fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round}
.wcGiftGlow{position:absolute;inset:-14px;border-radius:50%;background:radial-gradient(circle,rgba(45,212,191,.35),transparent 65%);animation:wcGlow 2.4s ease-in-out infinite}
.wcGift.closed .wcGiftSvg{transform-origin:50% 100%;animation:wcWig 2.4s ease-in-out infinite}
@keyframes wcWig{0%,40%,100%{transform:rotate(0)}48%{transform:rotate(-6deg)}56%{transform:rotate(6deg)}64%{transform:rotate(-4deg)}72%{transform:rotate(3deg)}80%{transform:rotate(0)}}
@keyframes wcGlow{0%,100%{opacity:.45}50%{opacity:1}}
/* oberta: la tapa salta i el regal surt de la caixa (una vegada, en aparèixer) */
.wcGift.open .wcGiftGlow{background:radial-gradient(circle,rgba(233,196,106,.5),transparent 65%)}
.wcGift.open .wcGiftLid{transform-box:fill-box;transform-origin:0 100%;animation:wcLid .9s cubic-bezier(.2,.9,.3,1.2) .25s both}
@keyframes wcLid{from{transform:none}to{transform:translate(-34px,18px) rotate(-38deg)}}
.wcGiftPrize{position:absolute;left:50%;top:6px;z-index:1;display:grid;place-items:center;width:52px;height:52px;margin-left:-26px;border-radius:50%;background:#0b1c26;color:#f4d58d;box-shadow:0 0 0 2px rgba(233,196,106,.55),0 8px 22px rgba(233,196,106,.35);animation:wcRise .9s cubic-bezier(.2,.9,.3,1.3) .6s both}
.wcGiftPrize svg{width:28px;height:28px}
@keyframes wcRise{from{opacity:0;transform:translateY(34px) scale(.4)}to{opacity:1;transform:translateY(-10px) scale(1)}}

/* targeta del premi d'aquesta setmana: caixa sorpresa */
.wcMystery .wcMysTop{display:flex;align-items:center;gap:16px;margin:0 0 12px}
.wcMystery .wcMysTop small{display:block;font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--wc-gold)}
.wcMystery .wcMysTop b{display:block;font-family:var(--font-display);font-size:22px;line-height:1.2}
.wcMysWhen{display:inline-flex;align-items:center;gap:6px;margin-top:6px;padding:4px 10px;border-radius:999px;background:var(--wc-gold-bg);border:1px solid var(--wc-gold-bd);font-size:12.5px;font-weight:700;color:var(--wc-gold);font-variant-numeric:tabular-nums}
.wcMysList{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:8px}
.wcMysList li{display:flex;gap:9px;align-items:flex-start;font-size:13.5px;line-height:1.45;color:var(--text-muted)}
.wcMysList li svg{flex:none;margin-top:2px;color:var(--wc-gold)}
.wcMysList b{color:var(--text)}

/* revelació de la setmana passada */
.wcReveal{display:flex;gap:14px;align-items:center;margin:0 0 12px;padding:14px;border-radius:16px;background:radial-gradient(120% 120% at 0% 0%,rgba(233,196,106,.16),transparent 60%),var(--surface-alt);border:1px solid var(--wc-gold-bd)}
.wcReveal.mine{box-shadow:0 0 0 2px rgba(233,196,106,.45)}
.wcRevTxt{min-width:0;display:flex;flex-direction:column;gap:3px}
.wcRevTxt small{font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--wc-gold)}
.wcRevTxt>b{font-family:var(--font-display);font-size:17px;line-height:1.25}
.wcRevTxt>span{font-size:13px;line-height:1.45;color:var(--text-muted)}
.wcRevTxt em{font-style:normal;font-size:13.5px}
.wcRevTxt>b,.wcRevTxt small{animation:wcFadeUp .5s ease 1.1s both}
@keyframes wcFadeUp{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.wcGiftAct{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.wcGiftAct .btnv2{min-height:38px;font-size:13.5px}

/* targeta del guanyador: el regal desbloquejat */
.wcPrizeGift{display:flex;gap:12px;align-items:center;margin:0 0 10px;padding:10px 12px;border-radius:14px;background:var(--surface-alt);border:1px solid var(--wc-gold-bd)}
.wcPrizeGift .wcGift{width:76px;height:76px}.wcPrizeGift .wcGiftSvg{width:76px;height:70px}
.wcPrizeGift small{display:block;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--wc-gold)}
.wcPrizeGift b{display:block;font-size:15.5px}

/* vitrina */
.wcVitrina{margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}
.wcVitrina h4{display:flex;align-items:center;gap:7px;margin:0 0 10px;font-size:14px}
.wcVitRow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.wcVit{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;border-radius:14px;background:var(--surface-alt);border:1px solid var(--border);color:var(--text-muted);opacity:.55}
.wcVit.on{opacity:1}
.wcVit b{font-family:var(--font-display);font-size:20px;line-height:1.1;color:var(--text)}
.wcVit small{font-size:12px}
.wcVit.g.on svg{color:#d4a017}.wcVit.s.on svg{color:#94a3b8}.wcVit.b.on svg{color:#b7794a}
.wcVitGifts{display:grid;gap:8px;margin-top:10px}
.wcVitGift{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 12px;border-radius:12px;background:var(--surface-alt)}
.wcVitGiftIc{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--wc-gold-bg);color:var(--wc-gold)}
.wcVitGift b{flex:1;min-width:120px;font-size:14px}
.wcVitEmpty{margin:10px 0 0;font-size:13px;line-height:1.45;color:var(--text-muted)}
/* llibres guanyats a la vitrina (27/10/2026) */
.wcBooks{margin-top:12px;padding-top:12px;border-top:1px dashed var(--border)}
.wcBookList{display:grid;gap:10px;margin-top:8px}
.wcBook{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border-radius:12px;border:1px solid var(--wc-gold-bd);background:linear-gradient(90deg,var(--wc-gold-bg),transparent)}
.wcBook.demo{border-style:dashed}
.wcBook img{flex:none;width:60px;height:auto;border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,.22)}
.wcBook>div{min-width:0}.wcBook small{display:block;margin-bottom:2px;font:700 11px/1.3 Poppins,system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--wc-gold)}
.wcBook b{display:block;font:600 14.5px/1.3 Poppins,system-ui,sans-serif}.wcBook span{display:block;margin-top:3px;font-size:13px;line-height:1.4;color:var(--text-muted)}
.wcBook a{display:inline-flex;align-items:center;gap:4px;margin-top:6px;font:600 13px Poppins,system-ui,sans-serif;color:var(--wc-gold);text-decoration:none}.wcBook a:hover{text-decoration:underline}

/* insígnies al costat dels pseudònims i qui regna (corona daurada) */
.wcTrs{display:inline-flex;gap:4px;margin-left:6px;vertical-align:middle}
.wcTr{display:inline-flex;align-items:center;gap:2px;padding:1px 5px;border-radius:999px;font-size:11px;font-weight:800;line-height:1.4}
.wcTr.g{background:rgba(212,160,23,.16);color:#a16207}.wcTr.s{background:rgba(148,163,184,.2);color:#64748b}.wcTr.b{background:rgba(183,121,74,.16);color:#9a5b2a}
html[data-theme="dark"] .wcTr.g{color:#fbbf24}html[data-theme="dark"] .wcTr.s{color:#cbd5e1}html[data-theme="dark"] .wcTr.b{color:#e0a274}
.wcReign{background:linear-gradient(90deg,#b8860b,#e9c46a,#a16207);-webkit-background-clip:text;background-clip:text;color:transparent!important;font-weight:800}
.wcDashGift{color:var(--wc-gold,#a16207);font-weight:700}

@media (max-width:600px){.wcMystery .wcMysTop{gap:12px}.wcGift{width:80px;height:80px}.wcGiftSvg{width:80px;height:74px}.wcReveal{flex-direction:column;text-align:center}.wcRevTxt{align-items:center}.wcGiftAct{justify-content:center}}
@media (prefers-reduced-motion:reduce){.wcGift *,.wcGiftGlow,.wcRevTxt>b,.wcRevTxt small{animation:none!important}.wcGift.open .wcGiftLid{transform:translate(-34px,18px) rotate(-38deg)}.wcGiftPrize{transform:translateY(-10px)}}
/* targeta fosca del guanyador: el bloc del regal també fosc (abans el títol quedava blanc sobre clar) */
.wcPrize .wcPrizeGift{background:rgba(255,255,255,.06);border-color:rgba(233,196,106,.42)}
.wcPrize .wcPrizeGift b{color:#fff}.wcPrize .wcPrizeGift small{color:#f4d58d}
/* vitrina: icona + nom a dalt i el botó a sota (al mòbil el nom quedava tallat lletra a lletra) */
.wcVitGift{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center}
.wcVitGift b{min-width:0}
.wcVitGift .btnv2{grid-column:1/-1;justify-self:start}
/* v8 (07/10/2026 vespre): col·lecció de 24 fitxes, fitxes per triar, novetats, setmanes amb regal a casa i regal de porta de l'Advent */
.wcColl{margin-top:12px;padding-top:12px;border-top:1px dashed var(--border)}
.wcCollHead{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px;font-size:14px}
.wcCollHead b{display:inline-flex;align-items:center;gap:6px}.wcCollHead span{font-family:var(--font-display);font-weight:800;color:var(--wc-gold)}
.wcCollGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}
.wcCollC{display:flex;align-items:center;gap:7px;min-height:38px;padding:6px 9px;border-radius:10px;border:1px dashed var(--border);background:transparent;color:var(--text-muted);font:inherit;font-size:12.5px;line-height:1.25;text-align:left;opacity:.6}
.wcCollC i{flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:var(--surface-alt);font-style:normal;font-weight:800;font-size:11px}
.wcCollC span{flex:1;min-width:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.wcCollC.on{opacity:1;border-style:solid;border-color:var(--wc-gold-bd);background:var(--wc-gold-bg);color:var(--text);cursor:pointer}
.wcCollC.on i{background:var(--wc-gold);color:#fff}.wcCollC.on svg{flex:none;color:var(--wc-gold)}
.wcChoose{margin:0 0 10px;padding:10px 12px;border-radius:12px;background:var(--wc-gold-bg);border:1px solid var(--wc-gold-bd)}
.wcChoose p{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 8px;font-size:13.5px}.wcChoose svg{color:var(--wc-gold)}
.wcChooseRow{display:flex;gap:8px;flex-wrap:wrap}.wcChooseSel{flex:1;min-width:0;min-height:38px;padding:6px 10px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;font-size:13.5px}
.wcNews{display:flex;gap:8px;align-items:flex-start;margin:0 0 8px;padding:9px 12px;border-radius:12px;background:var(--surface-alt);font-size:13.5px;line-height:1.45}.wcNews svg{flex:none;margin-top:2px;color:var(--wc-gold)}
.wcPhys{display:flex;align-items:flex-start;gap:12px;margin:0 0 14px;padding:12px 14px;border-radius:14px;background:linear-gradient(90deg,var(--wc-gold-bg),transparent);border:1px solid var(--wc-gold-bd)}
.wcPhysIc{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--wc-gold-bg);color:var(--wc-gold)}
.wcPhysTx{min-width:0}.wcPhysTx small{display:block;margin:0 0 3px;font:700 11.5px/1.3 Poppins,system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--wc-gold)}.wcPhysTx p{margin:0;font-size:14px;line-height:1.5}
/* setmana de Halloween (2026-W44) mentre dura l'època: la targeta es vesteix de Halloween (27/10/2026) */
html[data-tema="halloween"] .wcPhys[data-week="2026-W44"]{background:radial-gradient(70% 120% at 100% 0%,rgba(249,115,22,.28),transparent 60%),linear-gradient(135deg,#2e1065,#0d0710);border-color:rgba(253,186,116,.5);color:#fff7ed}
html[data-tema="halloween"] .wcPhys[data-week="2026-W44"] .wcPhysIc{background:linear-gradient(135deg,#f97316,#c2410c);color:#fff;box-shadow:0 0 16px rgba(249,115,22,.45)}
html[data-tema="halloween"] .wcPhys[data-week="2026-W44"] .wcPhysTx small{color:#fdba74}html[data-tema="halloween"] .wcPhys[data-week="2026-W44"] .wcPhysTx b{color:#fff}
.taGiftRow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0;padding:10px 12px;border-radius:14px;background:rgba(233,196,106,.14);border:1px solid rgba(233,196,106,.45);font-size:14px}
.taGiftRow span{flex:1;min-width:180px}.taGiftRow svg{color:#d4a017}
.taDoor24{display:flex;gap:8px;align-items:flex-start;margin:10px 0;padding:10px 12px;border-radius:14px;background:rgba(233,196,106,.14);font-size:14px;line-height:1.45}.taDoor24 svg{flex:none;color:#d4a017}

/* >>> ux:avisos-v1.css — Avisos dins l'app (app-avisos.js) (font _tools/avisos-v1.css) */
/* Avisos dins l'app (app-avisos.js) v2: campana animada + panell de vidre (dalt a la dreta / full inferior al mòbil).
   Cada avís porta el seu to (data-tone): or = repte, teal = examen, colors de l'època = Halloween, Advent, Nadal, Reis. */
.avBell{position:relative;flex:none;width:42px;height:42px;border-radius:13px;border:1px solid var(--border);background:transparent;color:inherit;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;margin-right:8px;transition:border-color .15s,background .15s,transform .15s}
.avBell:hover{background:color-mix(in srgb,var(--brand) 8%,transparent)}
.avBell:active{transform:scale(.94)}
.avBell:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
html[data-theme="dark"] .avBell{border-color:rgba(148,163,184,.2)}
.avBellIc{display:inline-flex;transform-origin:50% 2px}
.avBell.ring .avBellIc{animation:avRing 1.1s cubic-bezier(.36,.07,.19,.97) .3s 2}
@keyframes avRing{0%,100%{transform:rotate(0)}15%{transform:rotate(16deg)}30%{transform:rotate(-14deg)}45%{transform:rotate(10deg)}60%{transform:rotate(-6deg)}75%{transform:rotate(3deg)}}
.avDot{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:linear-gradient(135deg,#f6d27a,#d98a1c);color:#2b1a02;font:800 11px/20px var(--font-display);font-style:normal;text-align:center;box-shadow:0 0 0 2px var(--bg,#fff),0 4px 12px rgba(217,138,28,.45)}
.avDot::after{content:"";position:absolute;inset:-2px;border-radius:inherit;border:2px solid #f6d27a;opacity:0;animation:avPulse 2.4s ease-out 1.4s infinite}
@keyframes avPulse{0%{opacity:.7;transform:scale(1)}70%,100%{opacity:0;transform:scale(1.7)}}
html[data-theme="dark"] .avDot{box-shadow:0 0 0 2px #0a141b,0 4px 12px rgba(217,138,28,.45)}

/* panell de vidre */
.avPanel{--glass:rgba(11,20,27,.78);position:fixed;top:76px;right:18px;z-index:9300;width:min(400px,calc(100vw - 24px));max-height:calc(100dvh - 104px);overflow:auto;overscroll-behavior:contain;border-radius:26px;padding:14px;color:#eef5f7;font-family:var(--font-body);
  background:radial-gradient(130% 60% at 100% 0%,rgba(45,212,191,.16),transparent 62%),radial-gradient(90% 50% at 0% 100%,rgba(233,185,73,.10),transparent 60%),var(--glass);
  -webkit-backdrop-filter:blur(22px) saturate(1.5);backdrop-filter:blur(22px) saturate(1.5);
  border:1px solid rgba(255,255,255,.09);box-shadow:0 1px 0 rgba(255,255,255,.08) inset,0 30px 70px rgba(2,8,12,.5),0 0 0 1px rgba(0,0,0,.25);
  transform-origin:calc(100% - 40px) 0;animation:avIn .42s cubic-bezier(.16,1,.3,1);scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.3) transparent}
.avPanel.avClosing{animation:avOut .22s ease-in forwards;pointer-events:none}
@keyframes avIn{from{opacity:0;transform:translateY(-8px) scale(.94)}to{opacity:1;transform:none}}
@keyframes avOut{to{opacity:0;transform:translateY(-6px) scale(.96)}}
.avHandle{display:none}
.avHead{display:flex;align-items:center;gap:11px;padding:2px 2px 12px}
.avHeadIc{flex:none;width:36px;height:36px;border-radius:12px;display:grid;place-items:center;color:#5eead4;background:rgba(45,212,191,.12);box-shadow:0 0 0 1px rgba(45,212,191,.28) inset}
.avHeadT{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.avHeadT b{display:flex;align-items:center;gap:8px;font:700 16.5px/1.15 var(--font-display);letter-spacing:-.01em;color:#fff}
.avHeadT b em{font-style:normal;font:800 11.5px/1 var(--font-display);padding:4px 8px;border-radius:999px;color:#2b1a02;background:linear-gradient(135deg,#f6d27a,#d98a1c)}
.avHeadT small{font-size:12.5px;color:#93a9b4}
.avAll{flex:none;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);color:#d5e2e8;font:600 12.5px/1 var(--font-display);cursor:pointer;padding:9px 12px;border-radius:999px;transition:background .15s,color .15s}
.avAll:hover{color:#fff;background:rgba(255,255,255,.1)}
.avList{display:flex;flex-direction:column;gap:10px}

/* tons */
.avItem{--a1:#5eead4;--a2:#0d9488;--ink:#fff}
.avItem[data-tone="gold"]{--a1:#f6d27a;--a2:#d98a1c;--ink:#2b1a02}
.avItem[data-tone="hw"]{--a1:#fb923c;--a2:#7c3aed}
.avItem[data-tone="adv"]{--a1:#f6d99a;--a2:#1e40af}
.avItem[data-tone="nad"]{--a1:#f87171;--a2:#15803d}
.avItem[data-tone="reis"]{--a1:#e9c46a;--a2:#7e22ce}

/* targeta */
.avItem{position:relative;max-height:420px;display:flex;gap:14px;padding:15px 44px 15px 15px;border-radius:20px;overflow:hidden;isolation:isolate;
  background:linear-gradient(150deg,color-mix(in srgb,var(--a2) 16%,transparent),rgba(255,255,255,.035) 55%);
  box-shadow:0 0 0 1px rgba(255,255,255,.07) inset,0 10px 26px rgba(0,0,0,.18);
  animation:avItemIn .5s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(.08s + var(--i,0) * .07s);transition:transform .25s cubic-bezier(.16,1,.3,1),opacity .25s,max-height .3s ease,margin .3s ease,padding .3s ease}
.avItem::before{content:"";position:absolute;z-index:-1;left:-40px;top:-50px;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--a1) 30%,transparent),transparent 70%);pointer-events:none}
.avItem:hover{box-shadow:0 0 0 1px color-mix(in srgb,var(--a1) 40%,transparent) inset,0 14px 30px rgba(0,0,0,.24)}
@keyframes avItemIn{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
.avItem.drag{transition:none}
.avItem.out{animation:none}
.avItem.out:not(.swiped){transform:translateX(30px);opacity:0}
.avItem.out.swiped{opacity:0}
.avItem.out{max-height:0!important;padding-top:0;padding-bottom:0;margin-top:-10px}
.avItem.read{opacity:.62;padding-right:15px}
.avItem.read .avArt{filter:saturate(.4)}

/* peça visual */
.avArt{position:relative;flex:none;width:54px;height:54px;border-radius:17px;display:grid;place-items:center;color:#fff;
  background:linear-gradient(145deg,var(--a1),var(--a2));box-shadow:0 8px 20px color-mix(in srgb,var(--a2) 45%,transparent),0 1px 0 rgba(255,255,255,.35) inset}
.avArt svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.18))}
.avItem[data-tone="gold"] .avArt{color:#3a2503}
.avGift{width:38px;height:38px}
.avGift .avLid{transform-origin:24px 23px;animation:avLid 2.6s ease-in-out 1s infinite}
@keyframes avLid{0%,70%,100%{transform:none}76%{transform:translateY(-3px) rotate(-7deg)}82%{transform:translateY(-1px) rotate(5deg)}88%{transform:translateY(-2px) rotate(-3deg)}}
.avRing{background:rgba(255,255,255,.06);box-shadow:0 0 0 1px rgba(45,212,191,.3) inset;flex-direction:column;gap:0}
.avRing svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.avRingBg{fill:none;stroke:rgba(148,163,184,.2);stroke-width:4}
.avRingFg{fill:none;stroke:#2dd4bf;stroke-width:4;stroke-linecap:round;animation:avDash 1.2s cubic-bezier(.16,1,.3,1) .3s both}
@keyframes avDash{from{stroke-dasharray:0 200}}
.avRing b{position:relative;font:800 17px/1 var(--font-display);color:#fff;letter-spacing:-.02em}
.avRing small{position:relative;font:600 9.5px/1.1 var(--font-display);color:#9fe7dc;text-transform:uppercase;letter-spacing:.06em}

/* text */
.avBody{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}
.avKick{margin:0;display:flex;align-items:center;gap:7px;font:700 10.5px/1.3 var(--font-display);letter-spacing:.09em;text-transform:uppercase;color:color-mix(in srgb,var(--a1) 75%,#fff)}
.avPip{flex:none;width:7px;height:7px;border-radius:50%;background:var(--a1);box-shadow:0 0 0 3px color-mix(in srgb,var(--a1) 22%,transparent)}
.avBody h3{margin:0;font:700 16px/1.28 var(--font-display);letter-spacing:-.015em;color:#fff;text-wrap:balance}
.avTxt{margin:0;font-size:14px;line-height:1.5;color:#c2d1d8}
.avGo{align-self:flex-start;margin-top:8px;display:inline-flex;align-items:center;gap:10px;min-height:38px;padding:5px 6px 5px 15px;border-radius:999px;border:0;cursor:pointer;
  background:linear-gradient(135deg,var(--a1),var(--a2));color:var(--ink);font:700 13.5px/1.2 var(--font-display);box-shadow:0 8px 18px color-mix(in srgb,var(--a2) 40%,transparent);transition:transform .15s,box-shadow .15s}
.avGo i{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.28);transition:transform .2s}
.avItem[data-tone="gold"] .avGo i{background:rgba(255,255,255,.45)}
.avGo:hover{transform:translateY(-1px);box-shadow:0 12px 24px color-mix(in srgb,var(--a2) 50%,transparent)}
.avGo:hover i{transform:translateX(2px)}
.avX{position:absolute;top:10px;right:10px;width:30px;height:30px;border-radius:50%;border:0;background:rgba(255,255,255,.06);color:#a9bcc5;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,color .15s,transform .15s}
.avX:hover{background:rgba(255,255,255,.14);color:#fff;transform:rotate(90deg)}
.avXHead{position:static;flex:none;width:34px;height:34px}
.avRead{position:absolute;top:12px;right:14px;font:600 11px/1 var(--font-display);color:#8aa3b3;letter-spacing:.04em}
.avGo:focus-visible,.avX:focus-visible,.avAll:focus-visible{outline:2px solid #2dd4bf;outline-offset:2px}
.avEmpty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:18px 8px 22px;color:#7f96a2}
.avEmpty p{margin:0;font-size:14px;color:#9fb3bd}

/* mòbil: full inferior amb nansa; els avisos es poden lliscar cap al costat per tancar-los */
@media (max-width:700px){
  .avBell{width:40px;height:40px;margin-right:6px}
  .avPanel{top:auto;right:8px;left:8px;width:auto;bottom:calc(82px + env(safe-area-inset-bottom,0px));max-height:min(64dvh,560px);border-radius:28px;padding:10px 12px 12px;transform-origin:50% 100%;animation-name:avUp}
  .avPanel.avClosing{animation-name:avDown}
  @keyframes avUp{from{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}
  @keyframes avDown{to{opacity:0;transform:translateY(20px)}}
  .avHandle{display:block;width:38px;height:4px;margin:0 auto 8px;border-radius:999px;background:rgba(148,163,184,.35)}
  .avItem{touch-action:pan-y}
  .avArt{width:48px;height:48px;border-radius:15px}
  .avGift{width:34px;height:34px}
}
@media (prefers-reduced-motion:reduce){.avPanel,.avItem,.avGift .avLid,.avBell.ring .avBellIc,.avDot::after,.avRingFg{animation:none!important}.avItem{transition:none}}
@media print{.avPanel,.avBell{display:none!important}}
/* <<< ux:avisos-v1.css */

/* >>> ux:repte-ritme-v1.css — Ritme del líder al repte (app-repte.js paintPace) (font _tools/repte-ritme-v1.css) */
/* Ritme del líder durant el repte (app-repte.js paintPace): segon marcador al costat del compte enrere */
.examWrap .quizTopRow{flex-wrap:wrap;gap:6px}
.wcPace{display:inline-flex;align-items:center;gap:8px;padding:5px 11px;border-radius:999px;font-size:12.5px;line-height:1.2;color:#7a5408;background:rgba(233,196,106,.16);border:1px solid rgba(217,154,43,.45)}
.wcPace svg{flex:none;color:#d4a017}
.wcPace em{font-style:normal;padding-left:8px;border-left:1px solid rgba(217,154,43,.4)}
.wcPace b{font-variant-numeric:tabular-nums}
.wcPace.over{color:#64748b;background:rgba(148,163,184,.12);border-color:rgba(148,163,184,.4)}
.wcPace.over svg{color:#94a3b8}
html[data-theme="dark"] .wcPace{color:#f6dc9a;background:rgba(233,196,106,.1);border-color:rgba(233,196,106,.35)}
html[data-theme="dark"] .wcPace.over{color:#9fb3bd;background:rgba(148,163,184,.08)}
@media (max-width:700px){.wcPace{order:5;flex-basis:100%;justify-content:center}}
/* <<< ux:repte-ritme-v1.css */
/* idioma de les fitxes (08/10/2026) */
.wcLangRow{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px}.wcLangRow small{color:var(--text-2);font-size:12.5px}.wcLangRow .wcLangSel{flex:0 0 auto;max-width:150px}
.wcChooseRow .wcLangSel{flex:0 0 auto;max-width:130px}

/* >>> ux:atles-v1.css — Figures de l'Atles d'anatomia (consolida/_atles1010.js) (font _tools/atles-v1.css) */
/* Figures de l'Atles d'anatomia a la capa d'estudi (10/10/2026): imatge SVG amb fons blanc, llegenda numerada en HTML (CA/ES)
   i peu. Tocar la figura l'amplia (app-lectura.js). Clar i fosc: la imatge sempre sobre blanc; la llegenda segueix el tema. */
:is(#content,.lsMain) .atlFig{margin:10px auto 6px;max-width:min(600px,calc(var(--vw,500) * 1.2px));float:none;clear:both}
:is(#content,.lsMain) .atlFig .atlImg{display:block;width:100%;height:auto;max-height:min(620px,74vh);object-fit:contain;background:#fff;border:1px solid color-mix(in srgb,var(--t3-slate,#64748b) 22%,transparent);border-radius:12px;padding:6px;box-sizing:border-box;cursor:zoom-in}
:is(#content,.lsMain) .atlLeg{list-style:none;margin:10px 0 0;padding:0;columns:2 230px;column-gap:18px;font-size:13.5px;line-height:1.38;text-align:left}
:is(#content,.lsMain) .atlLeg li{display:flex;gap:8px;align-items:baseline;margin:0 0 6px;break-inside:avoid;padding:0}
:is(#content,.lsMain) .atlLeg li::before{content:none}
:is(#content,.lsMain) .atlLeg li b{flex:none;display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:#0b1a2a;color:#fff;font:700 11px/1 Poppins,sans-serif;box-sizing:border-box}
:is(#content,.lsMain) .atlLeg li span{color:var(--t3-ink,inherit)}
:is(#content,.lsMain) .atlFig figcaption{margin:6px 0 0;padding:0 0 0 10px;border-left:2px solid var(--t3-teal,#0d9488);font-size:13px;line-height:1.4;color:var(--t3-slate,#475569);background:none}
:is(#content,.lsMain) .atlGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(270px,100%),1fr));gap:16px;align-items:start}
:is(#content,.lsMain) .atlGrid .atlFig{margin:6px 0;max-width:none}
:is(#content,.lsMain) .atlGrid .atlLeg{columns:1}
[data-theme="dark"] :is(#content,.lsMain) .atlLeg li b{background:#e2e8f0;color:#0b1a2a}
[data-theme="dark"] :is(#content,.lsMain) .atlFig .atlImg{border-color:rgba(255,255,255,.14)}
@media (max-width:600px){
  :is(#content,.lsMain) .atlLeg{columns:1;font-size:13px}
  :is(#content,.lsMain) .atlFig .atlImg{padding:4px;border-radius:10px}
}
#lightbox img.atlZoomed{background:#fff}
/* <<< ux:atles-v1.css */

/* >>> ux:farmacs-v1.css — Fitxes de fàrmacs amb el Vademècum (consolida/_vad1110.js) (font _tools/farmacs-v1.css) */
/* Fitxes de fàrmacs enriquides amb el Vademècum d'infermeria (consolida/_vad1110.js, 11/10/2026):
   etiqueta d'alt risc (ISMP), requadre de seguretat, fila «Preparació i administració» (blau, com la via al vademècum)
   i fila «Funció renal» amb fons ombrejat. */
.drgRisk{flex:none;align-self:flex-start;margin-left:auto;display:inline-flex;align-items:center;gap:4px;padding:3px 8px 3px 6px;border-radius:999px;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1.3;white-space:nowrap;color:#b91c1c;background:rgba(220,38,38,.07);border:1px solid rgba(220,38,38,.22)}
.drgRisk svg{width:12px;height:12px}
.drgSafe,:is(#content,.lsMain) .drgBlk p.drgSafe{display:flex;gap:8px;align-items:flex-start;margin:10px 14px 0;padding:9px 11px;border-radius:12px;font-size:13.5px;line-height:1.45;background:rgba(245,158,11,.08);border:1px solid rgba(217,119,6,.25);color:var(--text)}
.drgSafe svg{flex:none;margin-top:2px;color:#b45309}
.drgSafe b{color:#92400e}
.drgRow.r-prep .drgRi{color:#2563eb}
.drgRow.r-ren{margin:4px -8px;padding:8px;border-radius:10px;border-bottom:0;background:rgba(99,102,241,.06)}
.drgRow.r-ren .drgRi{color:#4f46e5}
[data-theme="dark"] .drgRisk{color:#fca5a5;background:rgba(248,113,113,.1);border-color:rgba(248,113,113,.3)}
[data-theme="dark"] .drgSafe{background:rgba(251,191,36,.08);border-color:rgba(251,191,36,.28)}
[data-theme="dark"] .drgSafe svg{color:#fbbf24}
[data-theme="dark"] .drgSafe b{color:#fcd34d}
[data-theme="dark"] .drgRow.r-prep .drgRi{color:#60a5fa}
[data-theme="dark"] .drgRow.r-ren{background:rgba(129,140,248,.1)}
[data-theme="dark"] .drgRow.r-ren .drgRi{color:#a5b4fc}
@media (max-width:600px){.drgRisk{font-size:10px;padding:2px 7px 2px 5px}.drgSafe,:is(#content,.lsMain) .drgBlk p.drgSafe{font-size:13px;margin:8px 12px 0}}
@media print{.drgSafe,.drgRisk{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
/* si no hi cap, l'etiqueta baixa a una fila pròpia en lloc d'estrènyer el nom */
.drgHead:has(> .drgRisk){flex-wrap:wrap;row-gap:6px}
.drgHead:has(> .drgRisk) .drgName{flex:1 1 150px}
/* <<< ux:farmacs-v1.css */

/* >>> ux:proc-v1.css — Il·lustracions de l'Atles de procediments (consolida/_proc1110.js) (font _tools/proc-v1.css) */
/* Il·lustracions de l'Atles de procediments a la capa d'estudi (11/10/2026, consolida/_proc1110.js): imatge WebP amb els
   números dibuixats, llegenda numerada en HTML (CA/ES), crèdit discret i, si n'hi ha, punts crítics amb la seva font.
   Fa servir .atlFig/.atlLeg (atles-v1.css); aquí només el que és propi. */
:is(#content,.lsMain) .procFig .atlImg{padding:4px}
:is(#content,.lsMain) .procFig figcaption{border-left:0;padding:0;margin-top:2px}
:is(#content,.lsMain) .procFig .picCredit{font-size:10px;opacity:.55;line-height:1.3}
:is(#content,.lsMain) .procFig .picCredit a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}
:is(#content,.lsMain) .procBlk .procPtsT{margin:14px 0 4px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--t3-teal,#0d9488)}
:is(#content,.lsMain) .procBlk .procPtsT + ul{margin-top:0}
:is(#content,.lsMain) .procBlk .procSrc{margin:4px 0 0;font-size:11.5px;line-height:1.35;color:var(--t3-slate,#64748b)}
:is(#content,.lsMain) .procOwn figcaption{border-left:2px solid var(--t3-teal,#0d9488);padding:0 0 0 10px;margin-top:6px}
@media (max-width:600px){
  :is(#content,.lsMain) .procFig .picCredit{font-size:9.5px}
}
/* <<< ux:proc-v1.css */

/* >>> ux:llibres-v1.css — Figures dels llibres d'urgències, ECG i UCI (consolida/_llibres1110.js) (font _tools/llibres-v1.css) */
/* Figures dels llibres d'urgències, ECG i UCI a la capa d'estudi (11/10/2026, consolida/_llibres1110.js).
   Algorismes i il·lustracions: SVG amb fons blanc (clar i fosc), tocar-los els amplia (app-lectura.js, .atlImg).
   Al mòbil, l'algorisme manté una amplada mínima perquè la lletra sigui llegible i es desplaça de costat dins del marc.
   Tires d'ECG: graella de tires petites amb peu; les de tota l'amplada (.llbFull) ocupen la fila sencera.
   Fa servir .atlFig/.atlImg (atles-v1.css); aquí només el que és propi. */
:is(#content,.lsMain) .llbFig{max-width:min(680px,100%)}
:is(#content,.lsMain) .llbFig .llbScroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:12px}
:is(#content,.lsMain) .llbFig .atlImg{max-height:none}
:is(#content,.lsMain) .llbStrips{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr));gap:10px 14px;margin:10px 0 4px;align-items:start}
:is(#content,.lsMain) .llbStrip{margin:0}
:is(#content,.lsMain) .llbStrip.llbFull{grid-column:1/-1}
:is(#content,.lsMain) .llbStrip .atlImg{display:block;width:100%;height:auto;background:#fff;border:1px solid color-mix(in srgb,var(--t3-slate,#64748b) 22%,transparent);border-radius:8px;cursor:zoom-in}
:is(#content,.lsMain) .llbStrip figcaption{margin:5px 0 0;font-size:13px;line-height:1.38;color:var(--t3-slate,#475569)}
:is(#content,.lsMain) .llbBlk .llbNote{margin:8px 0 0;font-size:11.5px;line-height:1.35;color:var(--t3-slate,#64748b)}
[data-theme="dark"] :is(#content,.lsMain) .llbStrip .atlImg{border-color:rgba(255,255,255,.14)}
@media (max-width:600px){
  :is(#content,.lsMain) .llbFig .llbScroll .atlImg{min-width:640px;max-width:none}
  :is(#content,.lsMain) .llbFig :is(.llbScroll,.llbFit)::after{content:"↔ · toca per ampliar";display:block;text-align:right;font-size:11px;color:var(--t3-slate,#64748b);padding:2px 4px 0}
  :is(#content,.lsMain) .llbFig .llbFit::after{content:"toca per ampliar"}
  html[data-applang="es"] :is(#content,.lsMain) .llbFig .llbScroll::after{content:"↔ · toca para ampliar"}
  html[data-applang="es"] :is(#content,.lsMain) .llbFig .llbFit::after{content:"toca para ampliar"}
  :is(#content,.lsMain) .llbStrips{grid-template-columns:1fr 1fr}
  :is(#content,.lsMain) .llbStrip figcaption{font-size:12.5px}
}
/* <<< ux:llibres-v1.css */

/* >>> ux:botiga-v1.css — Botiga dins la plataforma (app-botiga.js) (font _tools/botiga-v1.css) */
/* Botiga dins la plataforma (app-botiga.js): ofertes discretes de llibres amb preu d'alumne */
.btOffer{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px 18px;align-items:center;margin:22px 0 8px;padding:16px 44px 16px 14px;border:1px solid var(--border);border-radius:18px;background:var(--surface);text-align:left;transition:opacity .25s,transform .25s}
.btOffer.btOut{opacity:0;transform:translateY(6px)}
.btOffer.btTema{margin-top:30px}
.btOffer.btRes{margin:0 0 18px}
.btOffer.btRepte{margin-top:14px}
.btX{position:absolute;top:10px;right:10px;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:transparent;color:var(--text-muted);cursor:pointer}
.btX:hover,.btX:focus-visible{background:var(--surface-alt);color:var(--text)}
.btBody{min-width:0;display:flex;flex-direction:column;gap:4px}
.btKick{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--brand-dark)}
.btKick svg{flex:none}
.btT{font-family:var(--font-display);font-size:16px;line-height:1.3;font-weight:600;color:var(--text)}
.btWhy{margin:0;font-size:13.5px;line-height:1.5;color:var(--text-muted)}
.btWhy b{color:var(--text);font-weight:600}
.btMeta{font-size:12.5px;color:var(--text-muted)}
.btPrice{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;margin-top:4px}
.btPrice s{font-size:13px;color:var(--text-muted)}
.btPrice b{font-family:var(--font-display);font-size:19px;font-weight:700;color:var(--text)}
.btPrice em{display:inline-flex;align-items:center;gap:5px;font-style:normal;font-size:12px;font-weight:700;color:var(--brand-dark);background:var(--brand-tint);padding:3px 9px;border-radius:999px}
.btBtns{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;margin-top:8px}
.btGo{display:inline-flex;align-items:center;gap:7px;text-decoration:none;min-height:38px;padding:8px 14px;font-size:13.5px}
.btNo{border:0;background:none;padding:6px 2px;font:inherit;font-size:13px;color:var(--text-muted);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.btNo:hover,.btNo:focus-visible{color:var(--text)}
html.btBusy .btOffer,html.btBusy .btLib{display:none!important}

/* ---- llibre animat (lleuger): la tapa s'obre i es veu l'índex real del llibre ---- */
.btBookLink{display:block;width:calc(var(--bw,60px) * 2);height:calc(var(--bw,60px) * 1.42 + 14px);position:relative;outline:none}
.btBook{--w:var(--bw,60px);--h:calc(var(--w) * 1.414);position:absolute;left:calc(var(--w) / 2);top:6px;width:var(--w);height:var(--h);perspective:640px;transition:left .7s cubic-bezier(.45,.05,.2,1)}
.btBook.deck{--h:calc(var(--w) * 1.41)}
.btB3{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateY(-16deg) rotateX(5deg);transition:transform .7s cubic-bezier(.22,.7,.22,1)}
.btB3::before{content:"";position:absolute;left:8%;right:-6%;bottom:-9px;height:10px;border-radius:50%;background:radial-gradient(closest-side,rgba(8,20,30,.32),transparent);filter:blur(1px);transform:translateZ(-20px)}
.btPg{position:absolute;inset:2px 2px 2px 0;background:#fff;border-radius:0 3px 3px 0;overflow:hidden;box-shadow:inset 7px 0 9px -7px rgba(0,0,0,.4)}
.btPg img{width:100%;height:100%;object-fit:cover;object-position:top left;display:block}
.btEdge{position:absolute;top:2px;bottom:2px;right:-3px;width:4px;border-radius:0 2px 2px 0;background:repeating-linear-gradient(180deg,#f6f3ec 0 1px,#ddd7ca 1px 2px);box-shadow:1px 0 2px rgba(0,0,0,.15)}
.btCv{position:absolute;inset:0;transform-origin:0 50%;transform-style:preserve-3d;transform:rotateY(0deg);transition:transform .9s cubic-bezier(.45,.05,.2,1)}
.btCv img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:2px 4px 4px 2px;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 6px 14px -6px rgba(8,20,30,.45),inset 0 0 0 1px rgba(0,0,0,.06);display:block}
.btCvBack{position:absolute;inset:0;border-radius:4px 2px 2px 4px;background:linear-gradient(90deg,#f1ede4,#fbfaf6 70%);transform:rotateY(180deg);backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:inset -7px 0 9px -7px rgba(0,0,0,.3)}
.btCvBack::after{content:"";position:absolute;left:16%;right:16%;top:14%;height:2px;border-radius:2px;background:var(--band,#0d9488);opacity:.6}
/* obert: en passar-hi el ratolí, amb el focus, o un cop en entrar a la vista (.peek) */
.btOffer:hover .btBook,.btLibRow:hover .btBook,.btOffer:focus-within .btBook,.btLibRow:focus-within .btBook,.btBook.peek{left:var(--w)}
.btOffer:hover .btB3,.btLibRow:hover .btB3,.btOffer:focus-within .btB3,.btLibRow:focus-within .btB3,.btBook.peek .btB3{transform:rotateY(0deg) rotateX(8deg)}
.btOffer:hover .btCv,.btLibRow:hover .btCv,.btOffer:focus-within .btCv,.btLibRow:focus-within .btCv,.btBook.peek .btCv{transform:rotateY(-164deg)}
.btBook.sm{--w:var(--bw,48px)}
/* pack: portades en ventall */
.btStack{position:absolute;left:8px;top:8px;width:calc(var(--bw,60px) * 1.8);height:calc(var(--bw,60px) * 1.42)}
.btStack img{position:absolute;left:calc(var(--i) * 22%);top:calc(var(--i) * 3px);width:var(--bw,60px);height:auto;border-radius:2px 4px 4px 2px;box-shadow:0 6px 14px -6px rgba(8,20,30,.45);transform:rotate(calc((var(--i) - 1) * 5deg));transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.btOffer:hover .btStack img{transform:translateY(-6px) rotate(calc((var(--i) - 1) * 8deg))}
@media (prefers-reduced-motion:reduce){
  .btBook,.btB3,.btCv,.btStack img,.btOffer{transition:none!important}
  .btOffer:hover .btBook,.btOffer:focus-within .btBook,.btBook.peek,.btLibRow:hover .btBook{left:calc(var(--w) / 2)}
  .btOffer:hover .btB3,.btOffer:focus-within .btB3,.btBook.peek .btB3,.btLibRow:hover .btB3{transform:rotateY(-16deg) rotateX(5deg)}
  .btOffer:hover .btCv,.btOffer:focus-within .btCv,.btBook.peek .btCv,.btLibRow:hover .btCv{transform:none}
}

/* ---- tauler: «Biblioteca OPOS Infermeria» plegable ---- */
.btLib{padding:0;overflow:hidden}
.btLib>summary{list-style:none;display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer}
.btLib>summary::-webkit-details-marker{display:none}
.btLib>summary>svg{margin-left:auto;flex:none;color:var(--text-muted);transition:transform .25s}
.btLib[open]>summary>svg{transform:rotate(180deg)}
.btLibIc{width:36px;height:36px;flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;background:var(--brand-tint);color:var(--brand-dark)}
.btLibTxt{display:flex;flex-direction:column;gap:2px;min-width:0}
.btLibTxt b{font-family:var(--font-display);font-size:15.5px;font-weight:600;color:var(--text)}
.btLibTxt small{font-size:12.5px;color:var(--text-muted)}
.btLibIn{padding:0 16px 14px;border-top:1px solid var(--border)}
.btLibList{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:12px;padding-top:14px}
.btLibRow{--bw:48px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:14px;background:var(--bg)}
.btLibRow .btGo{align-self:flex-start;margin-top:6px;min-height:34px;padding:6px 12px;font-size:13px}
.btLibRow .btPrice b{font-size:17px}
.btLibFoot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 14px;margin-top:12px}
.btAll{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:700;color:var(--brand-dark);text-decoration:none}
.btAll:hover{text-decoration:underline}

/* ---- «El meu compte» (panell fosc) ---- */
a.acBtn.btAcc{text-decoration:none;display:inline-flex;align-items:center}

/* ---- mode fosc ---- */
[data-theme="dark"] .btOffer{background:var(--surface)}
[data-theme="dark"] .btKick,[data-theme="dark"] .btAll{color:var(--brand)}
[data-theme="dark"] .btPrice em{color:var(--brand)}
[data-theme="dark"] .btLibRow{background:var(--surface-alt)}
[data-theme="dark"] .btLibIc{color:var(--brand)}

/* ---- mòbil ---- */
@media (max-width:600px){
  /* el llibre al costat del títol; el text, el preu i els botons a tota l'amplada */
  /* columna del llibre fixa (abans auto: els blocs que ocupen tota l'amplada la inflaven i el text quedava en una columna de 0 px; 12/10/2026) */
  .btOffer{--bw:46px;grid-template-columns:calc(var(--bw) * 2) minmax(0,1fr);gap:4px 12px;align-items:start;padding:14px 40px 14px 8px;border-radius:16px}
  .btOffer>.btBookLink{grid-row:1 / span 3;align-self:center}
  .btOffer>.btBody{display:contents}
  .btOffer .btKick{grid-column:2;grid-row:1}.btOffer .btT{grid-column:2;grid-row:2}.btOffer .btMeta{grid-column:2;grid-row:3}
  .btOffer .btWhy{grid-column:1 / -1;grid-row:4;margin-top:6px;padding-left:6px}.btOffer .btPrice{grid-column:1 / -1;grid-row:5;padding-left:6px}.btOffer .btBtns{grid-column:1 / -1;grid-row:6;padding-left:6px}
  .btT{font-size:15px}
  .btWhy{font-size:13px}
  .btBtns{gap:4px 12px}
  .btGo{min-height:36px;padding:7px 12px;font-size:13px}
  .btLibRow{--bw:42px}
}
/* Black Friday a la botiga (11/10/2026): etiqueta discreta i, si mai guanyés al preu d'alumne, el preu en vermell */
.btBf{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;color:#be123c;background:#fff1f2;border:1px solid #fecdd3;padding:3px 9px;border-radius:999px}
.btPrice b.btBfP{color:#e11d48}
[data-theme="dark"] .btBf{color:#fda4af;background:rgba(225,29,72,.16);border-color:rgba(251,113,133,.4)}
[data-theme="dark"] .btPrice b.btBfP{color:#fb7185}

/* Barra lateral: «Botiga de llibres» (12/10/2026): tota l'amplada de la graella, amb l'etiqueta del −30 % */
#sidebar .sideToolsGrid .sideShopBtn{grid-column:1/-1;text-decoration:none;margin-top:6px;background:rgba(45,212,191,.08);border:1px solid rgba(45,212,191,.22);border-radius:10px}
#sidebar .sideToolsGrid .sideShopBtn:hover{background:rgba(45,212,191,.14)}
#sidebar .sideToolsGrid .sideShopBtn .sideToolIcon{color:var(--brand-bright,#2dd4bf)}
#sidebar .sideToolsGrid .sideShopBtn .sideToolLabel{white-space:nowrap}
#sidebar .sideToolsGrid .sideShopBtn .sideShopTag{display:inline-block!important;margin-left:auto;color:var(--brand-bright,#2dd4bf);font-weight:700;letter-spacing:.01em}
/* Vitrina del repte: «També a la botiga» (Pack Oposicions i tota la botiga) sota «Completa la col·lecció» (12/10/2026) */
.btOffer .btMore{margin-top:12px;padding-top:10px;border-top:1px solid var(--border,rgba(15,23,42,.1));display:grid;gap:6px}
.btOffer .btMore small{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint,#8393a5)}
.btOffer .btMore a{display:flex;flex-direction:column;gap:1px;padding:8px 10px;border-radius:10px;border:1px solid var(--border,rgba(15,23,42,.1));text-decoration:none;color:inherit}
.btOffer .btMore a:hover{border-color:var(--brand,#0d9488)}
.btOffer .btMore b{font-size:14px}.btOffer .btMore span{font-size:12.5px;color:var(--text-muted,#52657a)}
@media (max-width:600px){.btOffer .btMore{grid-column:1 / -1;grid-row:7;padding-left:6px}}
/* <<< ux:botiga-v1.css */

/* >>> ux:repte-reveal-v1.css — La setmana passada en gran (app-repte.js bigReveal) (font _tools/repte-reveal-v1.css) */
/* «La setmana passada…» en gran (app-repte.js, bigReveal; 12/10/2026): finestra fosca amb la caixa que s'obre
   Seqüència: caixa que bota i convida a tocar-la → .opening (tremola i s'infla) → .open (la tapa surt volant, rajos de llum,
   halo, confeti i el regal puja amb rebot) → .shown (el text apareix per parts). Moviment reduït: directament obert. */
.wcBigOv{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(4,9,13,.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:wcBigFade .25s ease}
.wcBigOv.out{opacity:0;transition:opacity .2s ease}
@keyframes wcBigFade{from{opacity:0}to{opacity:1}}
@keyframes wcBigUp{from{opacity:0;transform:translateY(22px) scale(.96)}to{opacity:1;transform:none}}
.wcBigCard{position:relative;width:min(460px,100%);max-height:calc(100dvh - 32px);overflow:auto;overflow-x:hidden;text-align:center;color:#e8f2f4;padding:28px 26px 22px;border-radius:26px;
  background:radial-gradient(420px 300px at 50% 0%,rgba(233,196,106,.22),transparent 70%),radial-gradient(500px 360px at 50% 110%,rgba(45,212,191,.16),transparent 70%),#0a141b;
  border:1px solid rgba(233,196,106,.35);box-shadow:0 40px 90px -20px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.04) inset;animation:wcBigUp .4s cubic-bezier(.2,.8,.2,1)}
.wcBigCard.mine.shown{border-color:rgba(233,196,106,.75);box-shadow:0 40px 90px -20px rgba(0,0,0,.7),0 0 70px rgba(233,196,106,.28)}
.wcBigX{position:absolute;top:12px;right:12px;z-index:5;width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);color:#cfe0e6;display:grid;place-items:center;cursor:pointer}
.wcBigX:hover{background:rgba(255,255,255,.1)}
.wcBigKick{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:99px;border:1px solid rgba(233,196,106,.45);background:rgba(233,196,106,.1);color:#f2d58f;font:700 12px/1 Poppins,system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.wcBigCard h2{margin:14px 6px 0;font:700 22px/1.2 Poppins,system-ui,sans-serif;color:#fff;letter-spacing:-.01em;text-wrap:balance;transition:opacity .3s}

/* l'escenari de la caixa */
.wcBigStage{position:relative;height:250px;margin:6px auto 0;display:grid;place-items:end center;cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent}
.wcBigStage:focus-visible .wcBigBox{filter:drop-shadow(0 0 0 #2dd4bf) drop-shadow(0 0 18px rgba(45,212,191,.7))}
.wcBigBox{position:relative;z-index:3;width:200px;height:200px;margin-bottom:6px;overflow:visible;transform-origin:50% 92%;animation:wbBob 2.2s ease-in-out infinite}
.wcBigBox .wbLid{transform-box:fill-box;transform-origin:50% 100%;transition:transform .75s cubic-bezier(.2,.9,.25,1),opacity .5s ease .35s}
@keyframes wbBob{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-8px) rotate(-2deg)}60%{transform:translateY(0) rotate(1.5deg)}80%{transform:translateY(-3px) rotate(0)}}
.wcBigHint{position:absolute;left:50%;bottom:-30px;transform:translateX(-50%);display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-size:13px;font-weight:600;color:#f2d58f;animation:wbHint 1.6s ease-in-out infinite}
@keyframes wbHint{0%,100%{opacity:.55}50%{opacity:1}}
.wcBigHalo{position:absolute;left:50%;top:46%;width:260px;height:260px;margin:-130px 0 0 -130px;border-radius:50%;background:radial-gradient(circle,rgba(242,207,122,.55),rgba(242,207,122,.12) 45%,transparent 70%);opacity:.35;transform:scale(.7);transition:opacity .5s,transform .7s cubic-bezier(.2,.9,.25,1);z-index:1;pointer-events:none}
.wcBigRays{position:absolute;left:50%;top:44%;width:420px;height:420px;margin:-210px 0 0 -210px;border-radius:50%;z-index:0;pointer-events:none;opacity:0;transform:scale(.3);
  background:repeating-conic-gradient(from 0deg,rgba(242,207,122,.32) 0deg 9deg,transparent 9deg 24deg);-webkit-mask:radial-gradient(circle,#000 18%,transparent 66%);mask:radial-gradient(circle,#000 18%,transparent 66%);transition:opacity .5s,transform .8s cubic-bezier(.2,.9,.25,1)}
.wcBigPrizeIc{position:absolute;left:50%;top:150px;z-index:2;width:98px;height:98px;margin-left:-49px;border-radius:50%;display:grid;place-items:center;color:#1a1204;
  background:radial-gradient(circle at 35% 30%,#fff6d6,#f2cf7a 45%,#c9962e);box-shadow:0 0 0 4px rgba(10,20,27,.9),0 0 0 6px rgba(242,207,122,.7),0 18px 40px rgba(0,0,0,.5),0 0 60px rgba(242,207,122,.6);
  opacity:0;transform:translateY(30px) scale(.3)}
.wcBigPrizeIc svg{width:46px;height:46px}

/* 1) tremola i s'infla */
.wcBigCard.opening .wcBigBox{animation:wbShake .62s cubic-bezier(.36,.07,.19,.97) both}
.wcBigCard.opening .wcBigHalo{opacity:.75;transform:scale(1)}
.wcBigCard.opening .wcBigHint,.wcBigCard.open .wcBigHint{opacity:0;animation:none;transition:opacity .2s}
@keyframes wbShake{0%{transform:scale(1)}15%{transform:scale(1.04,.96) rotate(-5deg)}30%{transform:scale(.97,1.04) rotate(5deg)}45%{transform:scale(1.05,.95) rotate(-6deg)}60%{transform:scale(.96,1.05) rotate(6deg)}78%{transform:scale(1.08,.92) rotate(-2deg)}100%{transform:scale(.94,1.08) translateY(-6px)}}
/* 2) s'obre */
.wcBigCard.open .wcBigBox{animation:wbLand .5s cubic-bezier(.34,1.56,.64,1) both}
@keyframes wbLand{0%{transform:scale(.94,1.08) translateY(-6px)}55%{transform:scale(1.06,.94)}100%{transform:scale(1)}}
.wcBigCard.open .wcBigBox .wbLid{transform:translate(70px,-150px) rotate(38deg);opacity:0}
.wcBigCard.open .wcBigRays{opacity:1;transform:scale(1);animation:wbSpin 14s linear infinite}
@keyframes wbSpin{to{transform:scale(1) rotate(360deg)}}
.wcBigCard.open .wcBigHalo{opacity:1;transform:scale(1.25)}
.wcBigCard.open .wcBigPrizeIc{animation:wbRise .9s cubic-bezier(.34,1.56,.64,1) .12s forwards,wbFloat 3s ease-in-out 1.1s infinite}
@keyframes wbRise{0%{opacity:0;transform:translateY(30px) scale(.3)}60%{opacity:1}100%{opacity:1;transform:translateY(-118px) scale(1)}}
@keyframes wbFloat{0%,100%{opacity:1;transform:translateY(-118px) scale(1)}50%{opacity:1;transform:translateY(-126px) scale(1.03)}}
.wcCf{position:absolute;left:50%;top:120px;z-index:4;border-radius:2px;pointer-events:none;opacity:0;animation:wbConf 1.6s cubic-bezier(.15,.7,.3,1) var(--t) forwards}
@keyframes wbConf{0%{opacity:1;transform:translate(0,0) rotate(0)}70%{opacity:1}100%{opacity:0;transform:translate(var(--x),calc(var(--y) + 60px)) rotate(var(--r))}}

/* 3) el text apareix per parts */
.wcBigReveal>*{opacity:0;transform:translateY(10px)}
.wcBigCard.shown .wcBigReveal>*{animation:wbIn .5s cubic-bezier(.2,.8,.2,1) forwards}
.wcBigCard.shown .wcBigReveal>:nth-child(2){animation-delay:.08s}.wcBigCard.shown .wcBigReveal>:nth-child(3){animation-delay:.16s}
.wcBigCard.shown .wcBigReveal>:nth-child(4){animation-delay:.3s}.wcBigCard.shown .wcBigReveal>:nth-child(5){animation-delay:.42s}
.wcBigCard.shown .wcBigReveal>:nth-child(6){animation-delay:.54s}.wcBigCard.shown .wcBigReveal>:nth-child(7){animation-delay:.66s}
@keyframes wbIn{to{opacity:1;transform:none}}
.wcBigLab{margin:2px 0 2px;font-size:14px;color:#9fb4c1}
.wcBigPrize{display:block;font:700 25px/1.2 Poppins,system-ui,sans-serif;color:#f2cf7a;text-wrap:balance;text-shadow:0 0 24px rgba(242,207,122,.35)}
.wcBigDesc{display:block;margin-top:4px;font-size:14.5px;color:#c3d2dc;text-wrap:balance}
.wcBigWin{margin:14px 0 0;font-size:15.5px;color:#e8f2f4}.wcBigWin b{color:#5eead4}
.wcBigHome{display:flex;gap:9px;align-items:flex-start;text-align:left;margin:12px 0 0;padding:10px 12px;border-radius:14px;border:1px solid rgba(233,196,106,.3);background:rgba(233,196,106,.08);font-size:14px;color:#f6e3b0}
.wcBigHome svg{flex:none;margin-top:1px;color:#f2cf7a}
.wcBigAct{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:12px}
.wcBigNews:empty{display:none}.wcBigNews{margin-top:12px;text-align:left}
.wcBigNews .wcNews{background:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.1)!important;color:#c3d2dc!important}
.wcBigNews .wcNews b{color:#fff!important}.wcBigNews .wcNews svg{color:#f2cf7a}
.wcBigFoot{margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.08)}
.wcBigFoot p{margin:0 0 12px;font-size:14px;color:#9fb4c1}
.wcBigBtns{display:flex;flex-direction:column;gap:8px}
.wcBigBtns .btnv2{width:100%;justify-content:center}
.wcBigBtns .btnv2.secondary{background:transparent!important;color:#e8f2f4!important;border:1px solid rgba(255,255,255,.22)!important;box-shadow:none!important}
.wcBigBtns .btnv2.secondary:hover{background:rgba(255,255,255,.06)!important}
@media (max-width:520px){.wcBigOv{align-items:flex-end;padding:0}.wcBigCard{border-radius:24px 24px 0 0;max-height:94dvh;padding:24px 18px calc(18px + env(safe-area-inset-bottom))}.wcBigStage{height:232px}.wcBigBox{width:180px;height:180px}}
@media (prefers-reduced-motion:reduce){.wcBigOv,.wcBigCard,.wcBigBox,.wcBigHint{animation:none!important}.wcBigCard .wcBigPrizeIc{animation:none!important;opacity:1;transform:translateY(-118px)}.wcBigReveal>*{opacity:1!important;transform:none!important;animation:none!important}.wcCf{display:none}}
/* cerrada: la finestra és compacta; en obrir-se, el text s'hi desplega. Oberta: l'interior fosc de la caixa */
.wcBigReveal{max-height:0;overflow:hidden;transition:max-height .7s cubic-bezier(.2,.8,.2,1)}
.wcBigCard.shown .wcBigReveal{max-height:640px}
.wcBigBox .wbIn{opacity:0;transition:opacity .3s ease .25s}
.wcBigCard.open .wcBigBox .wbIn{opacity:1}
@media (prefers-reduced-motion:reduce){.wcBigReveal{max-height:none;transition:none}}
.wcBigStage{margin-bottom:34px}.wcBigCard.shown .wcBigStage{margin-bottom:6px;transition:margin .5s}
/* <<< ux:repte-reveal-v1.css */

/* >>> ux:maquetacio-v1.css — Arreglos de l'auditoria de l'app del 27/10/2026 (cicle, capçalera, tauler, examen, calculadores a l'Índex d'escales) (font _tools/maquetacio-v1.css) */
/* Arreglos de maquetació de l'auditoria del 27/10/2026 (portàtil 1280 px i mòbil) + calculadores a l'Índex d'escales */

/* Cicle d'estudi del tema: les 4 targetes no caben en una fila quan hi ha la columna de la dreta (paraules tallades,
   «Flashcard/s»). Ara 4 columnes si hi ha espai i 2 si no; cap paraula partida; la píndola de la lliçó no surt de la targeta. */
.mCycle .mSteps{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr))}
.mSteps li{min-width:0}
.mSteps li > div,.mSteps li > span:not(.mStepN){min-width:0}
.mSteps li b,.mSteps li small{overflow-wrap:normal;word-break:normal;hyphens:manual}
.mSteps .lsStart{max-width:100%;white-space:nowrap}
@media (max-width:860px){.mCycle .mSteps{grid-template-columns:minmax(0,1fr)}}

/* Capçalera: molles i botó de tema en una sola línia */
header.top .crumbs{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:0 1 auto;max-width:34%}
header.top .crumbs b{white-space:nowrap}
#themeToggle,#themeLabel{white-space:nowrap}
#themeToggle{flex:none}
@media (min-width:901px) and (max-width:1360px){
  /* quan hi ha molles i poc espai, el botó de tema queda només amb la icona */
  header.top:has(#crumbs:not(:empty)) #themeLabel{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  header.top:has(#crumbs:not(:empty)) #themeToggle{width:42px;padding:0;justify-content:center}
}

/* Tauler: «PREVISIÓ ICS» ja no queda partit en una columna estreta: si no hi cap al costat de la roda, va a sota */
@media (min-width:601px){
  .dStat.count{flex-wrap:wrap}
  #content .dStat.count > em.dCountTxt{min-width:118px}
  .dCountTxt span{white-space:nowrap}
}

/* Configuració de l'examen: totes les caselles igual de grans, encara que el nom del tema faci dues línies */
.topicCheck input[type="checkbox"]{flex:none;width:16px;height:16px;margin:0}
.topicCheck .topicIconSvg,.topicCheck > svg{flex:none}

/* Índex d'escales: calculadores interactives */
.scalesEsNote{margin:-4px 0 12px;font-size:13px;color:var(--text-muted)}
.scCalcBox{margin:0 0 18px;border:1px solid var(--border);border-radius:16px;background:var(--surface);overflow:hidden}
.scCalcBox > summary{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;list-style:none}
.scCalcBox > summary::-webkit-details-marker{display:none}
.scCalcBox > summary::after{content:'';margin-left:auto;width:9px;height:9px;border-right:2px solid var(--text-faint);border-bottom:2px solid var(--text-faint);transform:rotate(45deg);transition:transform .15s;flex:none}
.scCalcBox[open] > summary::after{transform:rotate(-135deg)}
.scCalcIc{width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;flex:none;color:var(--brand);background:color-mix(in srgb,var(--brand) 12%,transparent);font-size:20px}
.scCalcHead{display:flex;flex-direction:column;gap:2px;min-width:0}
.scCalcHead b{font-family:var(--font-display,Poppins,sans-serif);font-size:15.5px;color:var(--text)}
.scCalcHead small{font-size:12.5px;color:var(--text-muted)}
.scCalcN{display:inline-block;margin-left:4px;padding:1px 8px;border-radius:99px;font-size:12px;font-weight:700;color:var(--brand);background:color-mix(in srgb,var(--brand) 12%,transparent);vertical-align:2px}
.scCalcGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:8px;padding:0 16px 16px}
.scCalcBtn{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left;padding:10px 12px;border-radius:11px;border:1px solid var(--border);background:var(--surface-alt);color:var(--text);cursor:pointer;font:inherit;transition:border-color .15s,background .15s,transform .12s}
.scCalcBtn:hover{border-color:color-mix(in srgb,var(--brand) 45%,var(--border));background:color-mix(in srgb,var(--brand) 6%,var(--surface))}
.scCalcBtn:active{transform:scale(.99)}
.scCalcBtn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.scCalcT{font-size:13.5px;font-weight:600;line-height:1.3}
.scCalcW{font-size:11.5px;color:var(--text-muted);line-height:1.3}
.scalesCalcLinks{display:flex;flex-wrap:wrap;gap:6px;min-width:0}
.scalesCalcGo{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:99px;border:1px solid color-mix(in srgb,var(--brand) 40%,var(--border));background:color-mix(in srgb,var(--brand) 9%,transparent);color:var(--brand-dark,var(--brand));font:600 12.5px/1.2 var(--font-display,Poppins,sans-serif);cursor:pointer;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.scalesCalcGo:hover{background:color-mix(in srgb,var(--brand) 16%,transparent)}
.scalesCalcGo:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
html[data-theme="dark"] .scCalcBox{background:rgba(255,255,255,.03);border-color:rgba(148,163,184,.16)}
html[data-theme="dark"] .scCalcBtn{background:rgba(255,255,255,.04);border-color:rgba(148,163,184,.16);color:#e2e8f0}
html[data-theme="dark"] .scCalcBtn:hover{background:color-mix(in srgb,var(--brand) 8%,transparent);border-color:color-mix(in srgb,var(--brand) 40%,transparent)}
html[data-theme="dark"] .scalesCalcGo{color:var(--brand)}
/* <<< ux:maquetacio-v1.css */

/* >>> ux:rendiment-v1.css — Apartats del tema pintats a demanda (content-visibility, 27/10/2026) (font _tools/rendiment-v1.css) */
/* Rendiment en obrir un tema (27/10/2026). Un tema fa 13.000-24.000 nodes i fins a 220.000 px d'alt; el navegador en calculava
   tota la maquetació de cop (2-4 s bloquejat). Ara cada apartat es pinta quan s'acosta a la pantalla. «auto» recorda l'alçada
   real un cop pintat. Els salts a un apartat (cercador, índex, enrere) es corregeixen sols (oposScrollToEl, app-historial.js).
   Per desactivar-ho: treure aquest fitxer de _tools/concat-ux-css.js i tornar a executar-lo. */
#content .tsection{content-visibility:auto;contain-intrinsic-size:auto 1400px}
@media print{#content .tsection{content-visibility:visible;contain-intrinsic-size:none}}
/* <<< ux:rendiment-v1.css */
