:root{--font: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--bg: #ffffff;--surface: #f8f9fb;--surface-2: #f1f3f6;--border: #e3e7ec;--text: #1f2430;--text-2: #5f6672;--text-3: #9aa1ad;--primary: #00729c;--primary-soft: #e6f4f9;--primary-strong: #005c7e;--brand-blue: #00bafa;--lectura: #00bafa;--calcul: #6529f5;--atencio: #f09436;--memoria: #8fc73f;--error: #e5484d;--ok: #2e9e44;--radius: 14px;--radius-sm: 9px;--shadow: 0 1px 2px rgba(20, 30, 50, .06), 0 4px 16px rgba(20, 30, 50, .07);--shadow-lift: 0 2px 6px rgba(20, 30, 50, .08), 0 12px 32px rgba(20, 30, 50, .12)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--text);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}button{font-family:inherit}h1,h2,h3,h4{margin:0;font-weight:700;letter-spacing:-.01em}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes fadein{0%{opacity:0}to{opacity:1}}.rise{animation:rise .45s cubic-bezier(.2,.7,.3,1) both}.rise-1{animation-delay:.05s}.rise-2{animation-delay:.12s}.rise-3{animation-delay:.19s}.rise-4{animation-delay:.26s}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:999px;cursor:pointer;font-weight:600;font-size:14px;padding:10px 22px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.btn:active{transform:scale(.97)}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 2px 10px #00729c4d}.btn-primary:hover{background:var(--primary-strong);box-shadow:0 4px 16px #00729c66}.btn-primary:disabled{background:var(--border);color:var(--text-3);box-shadow:none;cursor:default}.btn-ghost{background:transparent;color:var(--primary)}.btn-ghost:hover{background:var(--primary-soft)}.btn-outline{background:#fff;color:var(--text);border:1px solid var(--border)}.btn-outline:hover{border-color:var(--primary);color:var(--primary)}.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:20px}.card-hover{transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease;cursor:pointer}.card-hover:hover{box-shadow:var(--shadow-lift);transform:translateY(-3px);border-color:transparent}.chip{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600;border:1.5px solid var(--border);background:#fff;color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .15s ease}.chip:hover{border-color:var(--text-3)}.chip.on{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-strong)}.chip .dot{width:9px;height:9px;border-radius:50%}.toggle{position:relative;width:38px;height:22px;border-radius:999px;background:var(--border);border:none;cursor:pointer;flex:none;transition:background .2s ease}.toggle:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .2s cubic-bezier(.3,1.2,.4,1)}.toggle.on{background:var(--primary)}.toggle.on:after{transform:translate(16px)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(100deg,var(--surface-2) 40%,#fafbfc 50%,var(--surface-2) 60%);background-size:200% 100%;animation:shimmer 1.4s linear infinite}.progress-track{height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden}.progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--primary),var(--brand-blue));transition:width .35s cubic-bezier(.2,.7,.3,1)}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:18px;height:18px;border-radius:50%;border:2.5px solid var(--primary-soft);border-top-color:var(--primary);animation:spin .8s linear infinite}@keyframes orbita{0%{transform:rotate(0) translate(26px) rotate(0)}to{transform:rotate(360deg) translate(26px) rotate(-360deg)}}.orb-wrap{position:relative;width:90px;height:90px;margin:0 auto}.orb-core{position:absolute;top:25px;right:25px;bottom:25px;left:25px;border-radius:50%;background:radial-gradient(circle at 32% 32%,var(--brand-blue),var(--primary));box-shadow:0 4px 20px #00bafa73;animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.orb-sat{position:absolute;top:50%;left:50%;width:10px;height:10px;margin:-5px;border-radius:50%;animation:orbita 1.8s linear infinite}.orb-sat.s2{animation-duration:2.6s;animation-direction:reverse;width:7px;height:7px}.stepper{display:flex;align-items:center;gap:10px;margin:18px 0 26px}.step-pill{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--text-3)}.step-pill .num{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--surface-2);color:var(--text-3);font-size:12px;transition:all .25s ease}.step-pill.active{color:var(--text)}.step-pill.active .num{background:var(--primary);color:#fff}.step-pill.done .num{background:var(--ok);color:#fff}.step-line{flex:1;height:2px;background:var(--border);border-radius:2px;max-width:60px}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#141c2859;display:flex;animation:fadein .2s ease;align-items:safe center;justify-content:safe center;overflow-y:auto;padding:24px 20px}.modal{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow-lift);padding:24px;width:min(480px,calc(100vw - 40px));animation:rise .25s ease;flex-shrink:0}.input{width:100%;border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:10px 14px;font-family:inherit;font-size:14px;outline:none;transition:border-color .15s ease}.input:focus{border-color:var(--primary)}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:60;background:var(--text);color:#fff;font-size:13.5px;font-weight:600;padding:11px 22px;border-radius:999px;box-shadow:var(--shadow-lift);animation:rise .3s ease}.demo-banner{position:fixed;bottom:16px;right:16px;z-index:40;display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--atencio);background:#fdf3e7;border:1px solid #f5ddc0;padding:6px 14px;border-radius:999px;box-shadow:var(--shadow)}.nl-bub{display:flex;align-items:center;justify-content:center;background:var(--brand-blue);color:#fff;border-radius:50%;font-weight:800}.nl-assemble{position:relative;width:236px;height:84px;margin:0 auto}.nl-assemble .nl-bub{position:absolute;width:36px;height:36px;font-size:17px;animation:nl-fly 3.4s cubic-bezier(.25,.9,.3,1.05) infinite;opacity:0}@keyframes nl-fly{0%{transform:translate(var(--sx),var(--sy)) scale(.3);opacity:0}18%{transform:translate(0) scale(1.08);opacity:1}24%{transform:translate(0) scale(1)}46%{transform:translateY(-3px) scale(1)}62%{transform:translate(0) scale(1);opacity:1}82%{transform:translate(0) scale(1);opacity:1}95%,to{transform:translate(var(--ex),var(--ey)) scale(.25);opacity:0}}.nl-assemble .nl-lab{position:absolute;right:6px;bottom:-2px;color:var(--brand-blue);font-weight:800;font-size:20px;animation:nl-lab 3.4s ease infinite;opacity:0}@keyframes nl-lab{0%,26%{opacity:0;transform:translateY(6px)}38%,80%{opacity:1;transform:none}92%,to{opacity:0}}.nl-orbit{position:relative;width:96px;height:96px;margin:0 auto}.nl-orbit .nl-core{position:absolute;top:26px;right:26px;bottom:26px;left:26px;font-size:20px;animation:nl-pulse 1.6s ease-in-out infinite}@keyframes nl-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}.nl-orbit .nl-ring{position:absolute;top:0;right:0;bottom:0;left:0;animation:nl-spin 1.9s linear infinite}.nl-orbit .nl-ring.o2{animation-duration:3s;animation-direction:reverse}.nl-orbit .nl-ring .nl-bub{position:absolute;top:0;left:50%;width:15px;height:15px;margin-left:-7px;font-size:0}.nl-orbit .nl-ring.o2 .nl-bub{width:10px;height:10px;opacity:.75}@keyframes nl-spin{to{transform:rotate(360deg)}}.nl-bounce{display:inline-flex;gap:8px;align-items:flex-end;height:42px;vertical-align:middle}.nl-bounce .nl-bub{width:20px;height:20px;font-size:10px;animation:nl-bounce 1.15s ease-in-out infinite}.nl-bounce .nl-bub:nth-child(2){animation-delay:.12s}.nl-bounce .nl-bub:nth-child(3){animation-delay:.24s}.nl-bounce .nl-bub:nth-child(4){animation-delay:.36s}@keyframes nl-bounce{0%,60%,to{transform:translateY(0) scale(1)}30%{transform:translateY(-14px) scale(1.08)}45%{transform:translateY(2px) scale(.95)}}.nl-bounce.sm{gap:4px;height:18px}.nl-bounce.sm .nl-bub{width:10px;height:10px;font-size:0;animation-name:nl-bounce-sm}@keyframes nl-bounce-sm{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}45%{transform:translateY(1px)}}@media(prefers-reduced-motion){.nl-assemble .nl-bub,.nl-lab,.nl-ring,.nl-core,.nl-bounce .nl-bub{animation-duration:7s}}.page{max-width:1100px;margin:0 auto;padding:20px 16px 60px}.topbar{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--border);background:#fff;position:sticky;top:0;z-index:5}.topbar .logo{display:flex;align-items:center;gap:8px;font-weight:800}.spacer{flex:1}.sel-idioma{display:inline-flex;border:1.5px solid var(--border);border-radius:999px;padding:2px;background:#fff}.sel-idioma-op{border:0;background:none;padding:4px 9px;border-radius:999px;font:inherit;font-size:12px;font-weight:700;color:var(--text-2);cursor:pointer;letter-spacing:.03em}.sel-idioma-op.on{background:var(--lectura);color:#fff}.sel-idioma-op:hover:not(.on){background:var(--surface-2)}main.page{max-width:none;padding-left:16px;padding-right:16px}.page h1,.page h2,.rs-titol-gran{font-family:"Outfit",var(--font)}.page h1{font-size:30px;margin:8px 0 4px}.pro-titol-fila{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:30px 0 12px}.pro-titol-fila h2{margin:0;font-size:22px;font-weight:700;color:#1f2430}.aula-resums{display:flex;flex-wrap:wrap;gap:20px 28px;align-items:stretch}.aula-resum-col{flex:1 1 520px;min-width:0;display:flex;flex-direction:column}.aula-resum-col>.aula-panell{flex:1}.aula-panell{background:#eef6fb;border:1.5px solid #cfe4f2;border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}.rs-titol{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:0}.rs-titol-gran{margin:0;font-size:19px;font-weight:800;color:#1f2937}.rs-titol-rang{font-size:14px;color:var(--text-2)}.cm-accions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.aula-panell-accions{margin-top:auto;padding-top:4px}.lg-pagina{--lg-blau: #007eab;--lg-blau-fosc: #006d94;--lg-blau-clar: #e6f4f9;--lg-tinta: #23262e;min-height:100vh;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(440px,.88fr);background:#f8fafc;font-family:"Outfit",var(--font);color:var(--lg-tinta)}.lg-marca{position:sticky;top:0;height:100vh;overflow:hidden;background:#fff;padding:32px 56px;display:flex;flex-direction:column}.lg-marca-cap,.lg-cap-mobil{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.lg-marca-logo{display:flex;flex-direction:column;align-items:flex-start}.lg-marca-logo img{height:52px;width:auto}.lg-marca-logo span{margin-top:2px;padding-left:4px;font-size:16px;font-weight:600;color:#475569}.lg-marca-logo.compacte{flex-direction:row;align-items:center;gap:8px}.lg-marca-logo.compacte img{height:40px}.lg-marca-logo.compacte span{margin:0;padding:0;font-size:14px}.lg-marca-text{margin-top:32px;max-width:560px}.lg-eti{margin:0;font-size:14px;font-weight:700;color:var(--lg-blau)}.lg-titular{margin:12px 0 0;font-size:clamp(34px,3vw,44px);line-height:1.15;font-weight:700;color:#0f172a;letter-spacing:-.01em}.lg-cos{margin:16px 0 0;max-width:500px;font-size:16.5px;line-height:1.6;color:#475569}.lg-foto{flex:1 1 auto;min-height:0;width:100%;object-fit:contain;object-position:center;margin-top:24px}.lg-beneficis{margin-top:20px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.lg-beneficis span{display:flex;align-items:center;justify-content:center;gap:8px;height:44px;border-radius:12px;border:1px solid #e2e8f0;background:#f8fafc;font-size:14px;font-weight:600;color:#334155}.lg-beneficis svg{color:var(--lg-blau)}.lg-zona{display:flex;align-items:center;justify-content:center;padding:40px 32px}.lg-contingut{width:100%;max-width:500px}.lg-cap-mobil{display:none;margin-bottom:24px}.lg-targeta{background:#fff;border:1px solid #e2e8f0;border-radius:24px;padding:32px;box-shadow:0 16px 40px #0f172a1a;display:flex;flex-direction:column;gap:18px}.lg-xip{align-self:flex-start;font-size:12px;font-weight:700;color:var(--lg-blau-fosc);background:var(--lg-blau-clar);border-radius:999px;padding:4px 10px}.lg-targeta-cap h1{margin:0;font-size:24px;line-height:1.3;font-weight:700;color:#0f172a}.lg-targeta-cap p{margin:8px 0 0;font-size:14.5px;line-height:1.55;color:#475569;overflow-wrap:anywhere}.lg-form{display:flex;flex-direction:column;gap:16px}.lg-camp{display:flex;flex-direction:column;gap:8px}.lg-camp>span:first-child{font-size:14px;font-weight:600;color:#334155}.lg-input{display:flex;align-items:center;gap:10px;height:48px;padding:0 12px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;color:#94a3b8;transition:border-color .15s,box-shadow .15s}.lg-input:focus-within{border-color:var(--lg-blau);box-shadow:0 0 0 4px var(--lg-blau-clar)}.lg-input input{flex:1;min-width:0;height:100%;border:0;outline:none;background:transparent;font:inherit;font-size:16px;color:var(--lg-tinta)}.lg-input input::placeholder{color:#94a3b8}.lg-error{border:1px solid #fecaca;background:#fef2f2;color:#b91c1c;border-radius:12px;padding:10px 12px;font-size:14px}.lg-avis{margin:0;font-size:14px;color:#475569}.lg-boto{height:48px;width:100%;border:0;border-radius:12px;background:var(--lg-blau);color:#fff;font:inherit;font-size:15px;font-weight:600;cursor:pointer;box-shadow:0 1px 2px #0f172a14;transition:background .15s}.lg-boto:hover:not(:disabled),.lg-boto:focus-visible{background:var(--lg-blau-fosc)}.lg-boto:disabled{opacity:.6;cursor:not-allowed}.lg-enllacos{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.lg-enllac{background:none;border:0;padding:2px 0;font:inherit;font-size:14px;font-weight:600;color:var(--lg-blau);cursor:pointer}.lg-enllac:hover{color:var(--lg-blau-fosc);text-decoration:underline}.lg-nota{margin:0;font-size:13px;line-height:1.5;color:#64748b;background:#f8fafc;border-radius:12px;padding:10px 12px;text-align:left}.lg-nota a,.lg-peu a{color:var(--lg-blau);font-weight:600}.lg-altres{border-top:1px solid #f1f5f9;padding-top:16px}.lg-altres>p{margin:0 0 8px;font-size:13px;font-weight:700;color:#475569}.lg-altres>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.lg-app{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:12px;color:var(--lg-tinta);text-decoration:none;font-size:13px;transition:border-color .15s,background .15s}.lg-app span{color:var(--lg-blau);font-weight:600}.lg-app:hover,.lg-app:focus-visible{border-color:var(--lg-blau);background:var(--lg-blau-clar)}.lg-peu{border-top:1px solid #f1f5f9;padding-top:16px;text-align:center;font-size:12.5px;color:#64748b;display:flex;flex-direction:column;align-items:center;gap:10px}.lg-peu p{margin:0}.lg-peu nav{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px}.lg-peu nav a{color:#64748b;font-weight:500;text-decoration:none}.lg-peu nav a:hover{color:var(--lg-blau)}.lg-equip{background:none;border:0;color:#94a3b8;font:inherit;font-size:12px;cursor:pointer;padding:2px}.lg-equip:hover,.lg-equip:focus-visible{color:#475569;text-decoration:underline}@media(max-width:1023px){.lg-pagina{grid-template-columns:1fr}.lg-marca{display:none}.lg-cap-mobil{display:flex}.lg-zona{align-items:flex-start;padding:24px 16px}}@media(max-width:480px){.lg-targeta{padding:22px 18px;border-radius:20px}.lg-altres>div{grid-template-columns:1fr}}.pro-targeta{background:#fff;border-radius:22px;padding:14px 16px;border:1px solid #edf1f4;box-shadow:0 4px 18px #003c5a12}.pro-xifra{font-family:"Outfit",var(--font);font-size:34px;font-weight:800;color:var(--text);line-height:1.1}.pro-xifra-eti{font-size:13px;color:var(--text-2)}.pro-xifres{display:flex;flex-wrap:wrap;gap:12px}.pro-xifres>.pro-targeta{flex:1 1 160px}.pro-cerca{width:100%;max-width:360px;padding:9px 12px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font:inherit}.pro-cerca:focus{outline:none;border-color:var(--primary)}.pro-llista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.pro-fila{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:#fff;border:1px solid #edf1f4;border-radius:14px;padding:10px 14px;font:inherit;cursor:pointer}.pro-fila:hover{border-color:var(--primary)}.pro-fila-text{flex:1;min-width:0}.pro-fila-nom{font-weight:700;color:var(--text)}.pro-fila-det{font-size:13px;color:var(--text-2)}.pro-xip{display:inline-flex;align-items:center;font-size:12px;font-weight:600;border-radius:999px;padding:3px 10px;background:var(--surface-2);color:var(--text-2);white-space:nowrap}.pro-xip.actiu{background:#dcfce7;color:#15803d}.pro-xip.caducat{background:#fde8e8;color:#b42318}.pro-taula{width:100%;border-collapse:collapse;font-size:14px}.pro-taula th{text-align:left;font-size:12px;color:var(--text-2);font-weight:600;padding:6px 8px;border-bottom:1px solid var(--border)}.pro-taula td{padding:8px;border-bottom:1px solid #f1f3f6}.pro-buit{color:var(--text-2);font-size:14px;padding:6px 0}.pro-error{background:#fde8e8;color:#b42318;border-radius:var(--radius-sm);padding:10px 14px;font-size:14px}.pro-tornar{background:none;border:0;color:var(--primary);font:inherit;font-weight:600;cursor:pointer;padding:0}.pro-arees{display:flex;flex-wrap:wrap;gap:8px}.pro-nivell{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.pro-nivell-baix{background:#fde8e8;color:#b42318}.pro-nivell-mig{background:#fff4c2;color:#6b5300}.pro-nivell-alt{background:#dcfce7;color:#15803d}.pro-usuari{font-size:13px;color:var(--text-2)}@media(max-width:600px){.topbar .pro-nivell{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.pro-nivell-baix{background:#fde8e8;color:#b42318}.pro-nivell-mig{background:#fff4c2;color:#6b5300}.pro-nivell-alt{background:#dcfce7;color:#15803d}.pro-usuari{display:none}.pro-fila{flex-wrap:wrap}.pro-fila-text{flex-basis:100%}}
