:root{--primary: #56a6dc;--primary-dark: #22285f;--accent: #f4c542;--accent-dark: #b8860b;--copper: #c7932f;--steel: #4f98cc;--secondary: #667085;--tertiary: #17212b;--background: #f6f7f4;--surface: #ffffff;--surface-soft: #eef2ed;--surface-muted: #d8dfd7;--text: #17212b;--text-muted: #596672;--line: #c9d2ca;--line-soft: #e2e7e1;--success: #15803d;--success-bg: #dcfce7;--danger: #b42318;--danger-bg: #fee4e2;--warning: #b45309;--warning-bg: #ffefd2;--shadow-sm: 0 10px 30px rgba(34, 40, 95, .08);--shadow-md: 0 18px 48px rgba(34, 40, 95, .14);--sidebar-width: 248px;--radius: 6px;color-scheme:light}:root[data-theme=oscuro]{--primary: #78bdf0;--primary-dark: #d5ecff;--accent: #f4c542;--accent-dark: #fde68a;--copper: #fb923c;--steel: #93c5fd;--secondary: #aab6c4;--tertiary: #f3f4f6;--background: #121817;--surface: #19211f;--surface-soft: #202b28;--surface-muted: #2d3a36;--text: #f8fafc;--text-muted: #bec9c5;--line: #3b4a45;--line-soft: #27332f;--success: #4ade80;--success-bg: rgba(74, 222, 128, .14);--danger: #fb7185;--danger-bg: rgba(251, 113, 133, .14);--warning: #fbbf24;--warning-bg: rgba(251, 191, 36, .14);--shadow-sm: 0 10px 30px rgba(0, 0, 0, .22);--shadow-md: 0 18px 48px rgba(0, 0, 0, .34);color-scheme:dark}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px;min-height:100vh;background:var(--background);color:var(--text);font-family:Inter,sans-serif}button,input{font:inherit}button{color:inherit;cursor:pointer}input{color:inherit}.auth-layout{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:var(--background)}.auth-visual{position:relative;min-height:100vh;color:#fff;background:linear-gradient(#0f172a8a,#0f172ac7),repeating-linear-gradient(112deg,transparent 0 28px,rgba(255,255,255,.12) 29px 31px),linear-gradient(160deg,#48515c,#111827);overflow:hidden}.auth-visual video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.42}.auth-visual:before,.auth-visual:after{content:"";position:absolute;background:#ffffff24;transform:skew(-12deg)}.auth-visual:before{width:130px;height:92%;left:18%;bottom:-12%}.auth-visual:after{width:90px;height:100%;left:55%;bottom:-18%}.streak-celebration{position:fixed;inset:0;z-index:120;display:grid;place-items:center;align-content:center;gap:14px;border:0;background:radial-gradient(circle at 50% 42%,color-mix(in srgb,#f97316 28%,transparent),transparent 24%),radial-gradient(circle at 50% 52%,color-mix(in srgb,#facc15 20%,transparent),transparent 34%),color-mix(in srgb,var(--background) 80%,transparent);color:var(--text);cursor:pointer;overflow:hidden;padding:24px;text-align:center;animation:streak-screen-in .32s ease both;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.streak-burst{position:absolute;width:min(72vw,720px);aspect-ratio:1;border-radius:999px;background:conic-gradient(from 12deg,transparent 0 7%,color-mix(in srgb,#f97316 50%,transparent) 7% 9%,transparent 9% 17%,color-mix(in srgb,#facc15 42%,transparent) 17% 19%,transparent 19% 100%);opacity:.9;animation:streak-burst-spin 1.8s cubic-bezier(.2,.78,.22,1) both}.streak-fire-ring{position:relative;z-index:1;display:grid;width:154px;height:154px;place-items:center;border:2px solid color-mix(in srgb,#f97316 46%,transparent);border-radius:999px;background:radial-gradient(circle at 50% 35%,color-mix(in srgb,#facc15 26%,transparent),transparent 48%),color-mix(in srgb,var(--surface) 76%,transparent);color:#f97316;box-shadow:0 0 0 18px color-mix(in srgb,#f97316 8%,transparent),0 28px 80px color-mix(in srgb,#f97316 28%,transparent);animation:streak-fire-pop .72s cubic-bezier(.18,.92,.2,1.2) both}.streak-kicker,.streak-copy{position:relative;z-index:1;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px;font-weight:900;text-transform:uppercase}.streak-celebration strong{position:relative;z-index:1;color:var(--text);font-size:clamp(54px,9vw,132px);font-weight:950;letter-spacing:0;line-height:.9;text-shadow:0 16px 38px color-mix(in srgb,#f97316 20%,transparent);animation:streak-number-rise .62s .12s cubic-bezier(.18,.92,.2,1.2) both}.streak-copy{max-width:420px;color:var(--text);font-family:Inter,sans-serif;font-size:18px;font-weight:800;line-height:1.35;text-transform:none}@keyframes streak-screen-in{0%{opacity:0}to{opacity:1}}@keyframes streak-fire-pop{0%{opacity:0;transform:scale(.48) rotate(-12deg)}70%{opacity:1;transform:scale(1.08) rotate(4deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes streak-number-rise{0%{opacity:0;transform:translateY(22px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes streak-burst-spin{0%{opacity:0;transform:scale(.2) rotate(0)}45%{opacity:.95}to{opacity:0;transform:scale(1.1) rotate(48deg)}}.auth-overlay{position:relative;z-index:1;min-height:100vh;display:flex;flex-direction:column;justify-content:center;gap:18px;padding:72px}.brand-lockup{display:flex;align-items:center;gap:14px;margin-bottom:18px}.brand-lockup img{width:42px;height:42px;border-radius:50%;object-fit:contain;background:#fff}.auth-overlay h1,.page-heading h1,.lesson-header h1,.quiz-question-main h1,.results-page h1,.empty-state h1,.profile-card h1{margin:0;font-weight:700;line-height:1.08}.auth-overlay h1{max-width:460px;font-size:44px}.auth-overlay p{max-width:480px;margin:0;line-height:1.55}.auth-form-panel{min-height:100vh;display:flex;flex-direction:column;justify-content:center;gap:24px;padding:72px 88px;background:var(--background)}.auth-system-code,.eyebrow,.badge,.technical-form label span,.module-progress-label,.lesson-row-meta,.section-header span,.auth-footer,.online-pill{font-family:JetBrains Mono,monospace}.auth-system-code{align-self:flex-end;color:var(--secondary);font-size:11px}.auth-title-row,.topbar,.top-actions,.button-row,.card-row,.result-stats,.footer-actions,.lesson-row-meta,.module-progress-label,.section-header,.question-inline-head,.sort-menu{display:flex;align-items:center;justify-content:space-between;gap:12px}.auth-title-row h2{margin:8px 0 4px;color:var(--primary-dark);font-size:28px}.auth-title-row p{margin:0;color:var(--text-muted)}.technical-form{display:grid;gap:16px}.technical-form label{display:grid;gap:8px}.technical-form label span,.eyebrow{color:var(--text-muted);font-size:12px;text-transform:uppercase}.technical-form input,.technical-form textarea{width:100%;border:1px solid var(--line);border-radius:0;background:var(--surface-soft);outline:none}.technical-form input{height:48px;padding:0 14px}.technical-form textarea{min-height:112px;resize:vertical;padding:13px 14px;color:var(--text);font:inherit;line-height:1.45}.technical-form input:focus,.technical-form textarea:focus{border-color:var(--primary)}.primary-button,.secondary-button,.small-action,.text-command,.icon-button{border-radius:2px}.primary-button,.secondary-button,.small-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:1px solid var(--primary);padding:0 20px;font-weight:700}.primary-button{background:var(--primary);color:#fff}.secondary-button,.small-action{background:transparent;color:var(--primary)}.small-action{min-height:34px;padding:0 12px;font-family:JetBrains Mono,monospace;font-size:12px}.primary-button.wide{width:100%}.primary-button:disabled,.secondary-button:disabled{opacity:.48;cursor:not-allowed}.text-command{border:0;background:transparent;color:var(--primary-dark);font-weight:700}.icon-button{display:grid;width:36px;height:36px;place-items:center;border:1px solid var(--line);background:var(--surface)}.auth-footer{display:flex;justify-content:space-between;gap:16px;margin-top:auto;color:var(--text-muted);font-size:11px}.landing-page{min-height:100vh;background:linear-gradient(180deg,#0f1715 0%,#14201d 44%,var(--background) 100%);color:var(--text);overflow-x:hidden}:root:not([data-theme=oscuro]) .landing-page{background:linear-gradient(180deg,#f4f8fb,#fff 42%,#eef4f7);color:#152033}:root:not([data-theme=oscuro]) .landing-nav{border-bottom-color:#22285f29;background:#fffffff0;box-shadow:0 12px 34px #22285f14}:root:not([data-theme=oscuro]) .landing-brand strong{color:#22285f}:root:not([data-theme=oscuro]) .landing-nav-links a,:root:not([data-theme=oscuro]) .landing-login,:root:not([data-theme=oscuro]) .landing-register{color:#334155}:root:not([data-theme=oscuro]) .landing-register{border-color:#22285f2e;background:#f8fbfd;color:#22285f}.landing-nav{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(220px,1fr);align-items:center;gap:24px;border-bottom:1px solid color-mix(in srgb,var(--line) 72%,transparent);background:color-mix(in srgb,var(--background) 94%,transparent);padding:14px clamp(18px,4vw,54px);-webkit-backdrop-filter:blur(18px) saturate(1.2);backdrop-filter:blur(18px) saturate(1.2)}.landing-brand,.landing-auth-actions,.landing-nav-links,.landing-hero-actions,.landing-inline-link,.landing-section-kicker,.landing-eyebrow{display:inline-flex;align-items:center}.landing-brand,.landing-nav-links a,.landing-login,.landing-register,.landing-inline-link,.landing-cta{text-decoration:none}.landing-brand{gap:12px;color:var(--text)}.landing-brand img{width:42px;height:42px;border-radius:50%;background:#fff;object-fit:contain}.landing-brand strong,.landing-brand small{display:block}.landing-brand strong{color:var(--primary-dark);font-size:15px}.landing-brand small,.landing-section-kicker,.landing-eyebrow,.landing-route-list span,.landing-video-overlay span{font-family:JetBrains Mono,monospace}.landing-brand small{margin-top:2px;color:var(--text-muted);font-size:11px}.landing-nav-links{justify-content:center;gap:8px}.landing-nav-links a,.landing-login,.landing-register{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:42px;gap:7px;border:1px solid transparent;border-radius:2px;padding:0 14px;color:var(--text-muted);font-family:Inter,sans-serif;font-size:13px;font-weight:800;overflow:hidden;transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease}.landing-auth-actions{justify-content:flex-end;gap:8px}.landing-nav-links a:after,.landing-login:after,.landing-register:after{content:"";position:absolute;right:12px;bottom:7px;left:12px;height:2px;background:linear-gradient(90deg,var(--primary),var(--accent));transform:scaleX(0);transform-origin:left;transition:transform .18s ease}.landing-register{color:var(--text-muted);font-weight:800}.landing-nav-links a:hover,.landing-login:hover,.landing-register:hover{border-color:color-mix(in srgb,var(--primary) 34%,transparent);background:color-mix(in srgb,var(--primary) 9%,var(--surface));color:var(--primary-dark);transform:translateY(-1px)}.landing-nav-links a:hover:after,.landing-login:hover:after,.landing-register:hover:after{transform:scaleX(1)}.landing-inline-link:hover{color:var(--primary-dark)}.landing-hero{position:relative;display:grid;min-height:calc(100vh - 70px);place-items:center;overflow:hidden;background:linear-gradient(#0c1816c7,#0c1816e6),radial-gradient(circle at 50% 34%,color-mix(in srgb,var(--primary) 16%,transparent),transparent 34%),#0f1715;padding:clamp(54px,7vw,96px) clamp(18px,5vw,72px);text-align:center}:root:not([data-theme=oscuro]) .landing-hero{background:linear-gradient(#08111cc2,#08111ce0),radial-gradient(circle at 50% 34%,rgba(86,166,220,.24),transparent 34%),#0f172a}:root:not([data-theme=oscuro]) .landing-hero-video{opacity:.42;filter:blur(7px) saturate(1.05) contrast(1.14)}:root:not([data-theme=oscuro]) .landing-hero:before{background:repeating-linear-gradient(112deg,transparent 0 42px,rgba(255,255,255,.09) 43px 45px),linear-gradient(90deg,#56a6dc33,#0f172a57 24%,#0f172a7a 76%,#f4c54229)}.landing-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.32;filter:blur(9px) saturate(.92) contrast(1.08);transform:scale(1.12);animation:landing-video-breathe 12s ease-in-out infinite}.landing-hero:before,.landing-hero:after{content:"";position:absolute;pointer-events:none}.landing-hero:before{inset:0;background:repeating-linear-gradient(112deg,transparent 0 42px,rgba(255,255,255,.08) 43px 45px),linear-gradient(90deg,#56a6dc38,#0f172a47 24%,#0f172a61 76%,#f4c54224);opacity:.92;animation:landing-lines-drift 9s ease-in-out infinite alternate}.landing-hero:after{right:-12vw;bottom:-22vh;width:48vw;height:48vw;border:1px solid rgba(244,197,66,.32);border-radius:50%;opacity:.38;animation:landing-orbit 12s linear infinite}.landing-hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(86,166,220,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(86,166,220,.08) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 18%,#000 78%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0%,#000 18%,#000 78%,transparent 100%);opacity:.34;animation:landing-grid-shift 16s linear infinite}.landing-hero-copy{position:relative;z-index:1;display:grid;justify-items:center;gap:22px;width:min(1060px,100%);animation:landing-rise .72s ease both}.landing-hero-mark{width:94px;height:94px;border-radius:50%;background:#fff;object-fit:contain;box-shadow:0 0 0 1px #ffffff2e,0 24px 80px #00000042;animation:landing-logo-pop .86s .16s cubic-bezier(.18,.92,.2,1.18) both}.landing-eyebrow,.landing-section-kicker{gap:8px;color:var(--copper);font-size:12px;font-weight:900;text-transform:uppercase}.landing-hero h1{margin:0;color:#d7ecff;font-size:clamp(72px,16vw,214px);font-weight:950;letter-spacing:0;line-height:.82;text-shadow:0 30px 82px rgba(86,166,220,.22)}.landing-hero h1:after{content:"";display:block;width:min(520px,52vw);height:3px;margin:clamp(18px,3vw,34px) auto 0;background:linear-gradient(90deg,transparent,var(--accent),var(--primary),transparent);animation:landing-title-line 2.8s ease-in-out infinite}.landing-hero p{max-width:880px;margin:0;color:#ffffffc2;font-size:clamp(18px,2vw,24px);line-height:1.45}.landing-hero-actions{justify-content:center;flex-wrap:wrap;gap:12px}.landing-hero-actions .secondary-button{border-color:#ffffff57;background:#ffffff0f;color:#d7ecff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.landing-hero-actions .secondary-button:hover{border-color:#ffffff8f;background:#ffffff1f;color:#fff}.landing-cta{min-height:48px}.landing-cta.compact{width:max-content}.landing-video-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-md)}.landing-band,.landing-resource-showcase,.landing-pillars,.landing-learning-map,.landing-video-section,.landing-footer{width:min(1180px,calc(100vw - 36px));margin:0 auto}.landing-band{display:grid;grid-template-columns:minmax(0,.9fr) minmax(300px,.7fr);gap:42px;align-items:end;border-top:1px solid var(--line);padding:86px 0 32px}.landing-band h2,.landing-learning-map h2,.landing-video-section h2{margin:10px 0 0;color:var(--primary-dark);font-size:clamp(32px,4vw,56px);line-height:1.02}.landing-band p,.landing-learning-map p,.landing-video-section p{margin:0;color:color-mix(in srgb,var(--text-muted) 72%,#ffffff);font-size:17px;line-height:1.55}:root:not([data-theme=oscuro]) .landing-band h2,:root:not([data-theme=oscuro]) .landing-learning-map h2,:root:not([data-theme=oscuro]) .landing-video-section h2{color:#22285f}:root:not([data-theme=oscuro]) .landing-band p,:root:not([data-theme=oscuro]) .landing-learning-map p,:root:not([data-theme=oscuro]) .landing-video-section p{color:#475569}.landing-video-section h2{color:color-mix(in srgb,var(--primary-dark) 82%,#ffffff)}.landing-resource-showcase{border-top:1px solid var(--line);padding:78px 0}.landing-resource-panorama{position:relative;min-height:560px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:radial-gradient(circle at 50% 46%,color-mix(in srgb,var(--primary) 16%,transparent),transparent 36%),linear-gradient(145deg,#0f1715,#15211f)}:root:not([data-theme=oscuro]) .landing-resource-panorama{border-color:#22285f29;background:radial-gradient(circle at 50% 46%,rgba(86,166,220,.18),transparent 36%),linear-gradient(145deg,#d9ecf8,#f7fbfd);box-shadow:0 24px 70px #22285f1f}:root:not([data-theme=oscuro]) .landing-resource-panorama:before{background:linear-gradient(90deg,#d9ecf8,transparent)}:root:not([data-theme=oscuro]) .landing-resource-panorama:after{background:linear-gradient(270deg,#f7fbfd,transparent)}.landing-resource-panorama:before,.landing-resource-panorama:after{content:"";position:absolute;top:0;bottom:0;z-index:3;width:16%;pointer-events:none}.landing-resource-panorama:before{left:0;background:linear-gradient(90deg,#0f1715,transparent)}.landing-resource-panorama:after{right:0;background:linear-gradient(270deg,#0f1715,transparent)}.landing-resource-track{display:flex;align-items:center;gap:18px;width:max-content;height:100%;padding:54px 0;animation:landing-resource-drift 30s linear infinite}.landing-resource-panorama:hover .landing-resource-track{animation-play-state:paused}.landing-resource-card{position:relative;width:min(360px,34vw);min-width:320px;height:380px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:#fff;opacity:.72;transform:scale(.88);transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease,opacity .26s ease}.landing-resource-card.focus{width:min(440px,40vw);min-width:390px;height:470px;opacity:1;transform:scale(1);box-shadow:var(--shadow-md)}.landing-resource-card:hover{border-color:color-mix(in srgb,var(--primary) 38%,var(--line));box-shadow:var(--shadow-md);opacity:1;transform:scale(1.02)}.landing-resource-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.92) contrast(1.08) brightness(.88);transform:scale(1.08) translate(-2%);animation:landing-image-pan 9s ease-in-out infinite alternate;transition:transform .42s ease,filter .42s ease}.landing-resource-card:nth-child(2) img{animation-delay:-2s;animation-duration:10.5s}.landing-resource-card:nth-child(3) img{animation-delay:-4s;animation-duration:11s}.landing-resource-card:nth-child(4) img{animation-delay:-6s;animation-duration:9.5s}.landing-resource-card:hover img{filter:saturate(1.14) contrast(1.12) brightness(.94);transform:scale(1.14)}.landing-resource-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0f172a14,#0a1210eb),repeating-linear-gradient(112deg,transparent 0 34px,rgba(255,255,255,.08) 35px 37px)}.landing-resource-card div{position:absolute;right:0;bottom:0;left:0;z-index:1;padding:18px}.landing-resource-card span{color:#ffffffb8;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:900;text-transform:uppercase}.landing-resource-card strong{display:block;margin-top:8px;font-size:22px;line-height:1.06}.landing-resource-card p{margin-top:10px;color:#ffffffc7;font-size:14px;line-height:1.42}.landing-pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:42px 0 88px}.landing-pillar-card,.landing-route-list li{border:1px solid color-mix(in srgb,var(--primary) 28%,var(--line));border-radius:var(--radius);background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 88%,var(--primary)),var(--surface))}:root:not([data-theme=oscuro]) .landing-pillar-card,:root:not([data-theme=oscuro]) .landing-route-list li,:root:not([data-theme=oscuro]) .landing-footer{border-color:#22285f29;background:linear-gradient(145deg,#fff,#f5f9fb);box-shadow:0 18px 48px #22285f1a}:root:not([data-theme=oscuro]) .landing-pillar-card p,:root:not([data-theme=oscuro]) .landing-footer span{color:#475569}:root:not([data-theme=oscuro]) .landing-route-list strong{color:#17212b}.landing-pillar-card{min-height:238px;padding:22px;box-shadow:0 18px 44px #56a6dc0f;transform:translateY(0);transition:transform .26s ease,border-color .26s ease,box-shadow .26s ease}.landing-pillar-card:hover,.landing-route-list li:hover{border-color:color-mix(in srgb,var(--primary) 38%,var(--line));box-shadow:0 18px 54px color-mix(in srgb,var(--primary) 18%,transparent);transform:translateY(-3px)}.landing-pillar-card span{display:grid;width:46px;height:46px;place-items:center;background:color-mix(in srgb,var(--primary) 14%,var(--surface));color:var(--primary-dark)}.landing-pillar-card:nth-child(2) span{background:color-mix(in srgb,var(--success) 14%,var(--surface));color:var(--success)}.landing-pillar-card:nth-child(3) span{background:color-mix(in srgb,var(--accent) 22%,var(--surface));color:var(--accent-dark)}.landing-pillar-card:nth-child(4) span{background:color-mix(in srgb,var(--steel) 14%,var(--surface));color:var(--steel)}.landing-pillar-card h3{margin:22px 0 10px;color:var(--primary-dark);font-size:21px}.landing-pillar-card p{margin:0;color:color-mix(in srgb,var(--text-muted) 78%,var(--text));line-height:1.5}.landing-learning-map,.landing-video-section{display:grid;grid-template-columns:minmax(0,.78fr) minmax(360px,.72fr);gap:52px;align-items:center;border-top:1px solid color-mix(in srgb,var(--primary) 22%,var(--line));padding:82px 0}.landing-map-copy,.landing-video-copy{display:grid;gap:18px}.landing-inline-link{gap:8px;width:max-content;color:var(--primary);font-weight:900}.landing-route-list{display:grid;gap:12px;margin:0;padding:0;list-style:none}.landing-route-list li{display:grid;grid-template-columns:52px minmax(0,1fr) 26px;align-items:center;gap:14px;min-height:74px;padding:14px 16px;box-shadow:0 14px 34px #56a6dc0d;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.landing-route-list span{color:var(--copper);font-family:JetBrains Mono,monospace;font-weight:900}.landing-route-list strong{color:var(--text);line-height:1.3}.landing-route-list svg{color:var(--success)}.landing-video-section{grid-template-columns:minmax(320px,.72fr) minmax(0,1fr)}.landing-video-stack{display:grid;grid-template-columns:1fr .74fr;grid-template-rows:repeat(2,minmax(160px,1fr));gap:14px}.landing-video-card{min-height:210px;background:#0f1715;box-shadow:0 24px 70px #56a6dc2e,inset 0 0 0 1px #ffffff0a}.landing-video-card:first-child{grid-row:span 2;min-height:438px}.landing-video-card video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.92;filter:saturate(1.08) contrast(1.04);transform:scale(1.02);transition:opacity .26s ease,transform .42s ease,filter .42s ease}.landing-video-card:hover video{opacity:1;filter:saturate(1.16) contrast(1.08);transform:scale(1.08)}.landing-video-overlay{position:absolute;inset:0;display:grid;grid-template-rows:1fr auto;align-items:end;gap:16px;background:linear-gradient(#0f172a00,#080f0e94),repeating-linear-gradient(112deg,transparent 0 34px,rgba(255,255,255,.06) 35px 37px);color:#fff;padding:18px;transition:background .26s ease}.landing-video-overlay button{display:grid;width:58px;height:58px;place-items:center;border:1px solid rgba(255,255,255,.56);border-radius:50%;background:#ffffff2e;color:#fff;align-self:start;justify-self:end;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:landing-pulse 2.2s ease-in-out infinite}.landing-video-card:hover .landing-video-overlay{background:linear-gradient(#0f172a00,#080f0e6b),repeating-linear-gradient(112deg,transparent 0 34px,rgba(255,255,255,.08) 35px 37px)}.landing-video-overlay span{display:block;color:#ffffffd1;font-size:12px;font-weight:900;text-transform:uppercase}.landing-video-overlay strong{display:block;margin-top:4px;color:#fff;font-size:clamp(20px,2vw,30px);line-height:1.04}.landing-video-overlay p{max-width:340px;margin:8px 0 0;color:#ffffffe6;font-size:14px;line-height:1.42}.landing-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid color-mix(in srgb,var(--primary) 24%,var(--line));border-radius:var(--radius);background:radial-gradient(circle at 18% 18%,color-mix(in srgb,var(--primary) 12%,transparent),transparent 34%),var(--surface);padding:24px;margin-bottom:34px;box-shadow:0 18px 52px #56a6dc14}.landing-footer>div{display:grid;grid-template-columns:42px minmax(0,auto);gap:2px 12px;align-items:center}.landing-footer img{grid-row:span 2;width:42px;height:42px;border-radius:50%;background:#fff;object-fit:contain}.landing-footer strong{color:var(--primary-dark);font-size:16px}.landing-footer span{color:var(--text-muted);font-size:13px}.landing-footer a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:1px solid var(--line);border-radius:2px;padding:0 14px;color:var(--primary);font-weight:800;text-decoration:none}.landing-footer a:hover{border-color:color-mix(in srgb,var(--primary) 42%,var(--line));background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary-dark)}:root:not([data-theme=oscuro]) .landing-footer a{border-color:#22285f2e;background:#fff;color:#22285f}:root:not([data-theme=oscuro]) .landing-footer a:hover{background:#eaf5fc}@keyframes landing-rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes landing-video-breathe{0%,to{transform:scale(1.12)}50%{transform:scale(1.18)}}@keyframes landing-lines-drift{0%{transform:translate(-18px)}to{transform:translate(18px)}}@keyframes landing-grid-shift{0%{background-position:0 0}to{background-position:72px 72px}}@keyframes landing-logo-pop{0%{opacity:0;transform:translateY(18px) scale(.72)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes landing-title-line{0%,to{opacity:.44;transform:scaleX(.72)}50%{opacity:1;transform:scaleX(1)}}@keyframes landing-image-pan{0%{transform:scale(1.08) translate(-2%) translateY(0)}to{transform:scale(1.14) translate(3%) translateY(-2%)}}@keyframes landing-resource-drift{0%{transform:translate(0)}to{transform:translate(calc(-50% - 9px))}}@keyframes landing-orbit{0%,to{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.04)}}@keyframes landing-pulse{0%,to{box-shadow:0 0 #ffffff38}50%{box-shadow:0 0 0 18px #fff0}}.app-frame{min-height:100vh;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);transition:grid-template-columns .18s ease}.app-frame:has(.sidebar.collapsed){grid-template-columns:84px minmax(0,1fr)}.app-frame:has(.sidebar.collapsed) .page-shell,.app-frame:has(.sidebar.collapsed) .status-banner,.app-frame:has(.sidebar.collapsed) .resource-reader-page{width:min(1180px,calc(100vw - 132px))}.app-frame:has(.sidebar.collapsed) .lesson-page{width:min(1380px,calc(100vw - 196px));padding-right:32px;padding-left:32px}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;border-right:1px solid var(--line);background:var(--surface-soft)}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:20px 18px 28px}.sidebar-collapse{display:flex;align-items:center;justify-content:center;gap:8px;min-height:38px;margin:0 18px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px}.sidebar-brand img{width:44px;height:44px;flex:0 0 auto;border-radius:50%;object-fit:contain;background:#fff}.sidebar-brand strong{display:block;color:var(--primary-dark);font-size:16px;line-height:1.15}.sidebar-brand span,.sidebar-user span,.sidebar-counters,.page-heading p,.metric-card span,.resume-card p,.module-card p,.lesson-row p,.lesson-header p,.technical-reading p,.idea-card p,.result-hero p,.profile-card p,.profile-module-card p{color:var(--text-muted)}.sidebar-brand span,.sidebar-counters{font-family:JetBrains Mono,monospace;font-size:12px}.sidebar-nav{display:grid;gap:4px}.sidebar-link{display:flex;align-items:center;gap:12px;min-height:44px;border:0;border-left:3px solid transparent;padding:0 18px;background:transparent;color:var(--text);text-align:left}.sidebar.collapsed .sidebar-brand{justify-content:center;padding:18px 12px 22px}.sidebar.collapsed .sidebar-brand div,.sidebar.collapsed .sidebar-link span,.sidebar.collapsed .sidebar-user>div:last-child,.sidebar.collapsed .sidebar-counters{display:none}.sidebar.collapsed .sidebar-collapse{width:44px;margin:0 auto 16px;padding:0}.sidebar.collapsed .sidebar-collapse span{display:none}.sidebar.collapsed .sidebar-link{justify-content:center;padding:0}.sidebar.collapsed .sidebar-user{justify-content:center;margin:14px 12px;padding:10px}.sidebar-link.active{border-left-color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary-dark)}:root[data-theme=oscuro] .sidebar-link.active{background:color-mix(in srgb,var(--primary) 16%,var(--surface))}.sidebar-spacer{flex:1}.sidebar-user{display:flex;align-items:center;gap:12px;margin:18px;padding:14px;border:1px solid var(--line);background:var(--surface);overflow:hidden}.sidebar-user>div:last-child{min-width:0}.sidebar-user strong,.sidebar-user span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar-mini,.profile-avatar,.metric-icon,.module-icon-box,.lesson-index{display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 14%,var(--surface));color:var(--primary-dark)}.avatar-mini{width:34px;height:34px;border-radius:50%;font-size:12px;font-weight:700}.sidebar-counters{display:grid;gap:6px;margin:0 18px 16px}.sidebar-link.danger{color:var(--danger);margin-bottom:16px}.content-frame{min-width:0}.topbar{position:sticky;top:0;z-index:5;height:56px;display:grid;grid-template-columns:220px minmax(280px,520px) auto;justify-content:space-between;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--background) 92%,transparent);padding:0 20px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.topbar-brand{display:inline-flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--primary-dark);font-weight:800;white-space:nowrap}.topbar-brand img{width:30px;height:30px;border-radius:50%;object-fit:contain;background:#fff}.search-shell{display:flex;align-items:center;gap:8px;width:100%;height:34px;border:1px solid var(--line);padding:0 12px;background:var(--surface);color:var(--text-muted)}.top-search{position:relative;width:min(520px,44vw);justify-self:center}.search-results-panel{position:absolute;top:calc(100% + 8px);right:0;left:0;z-index:12;display:grid;gap:4px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-md);padding:8px}.search-results-panel button{display:grid;gap:3px;border:0;border-radius:var(--radius);background:transparent;padding:10px;text-align:left}.search-results-panel button:hover{background:color-mix(in srgb,var(--primary) 9%,var(--surface))}.search-results-panel span,.search-state{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px}.search-shell input{width:100%;min-width:0;border:0;background:transparent;outline:none}.search-shell input::placeholder{color:var(--text-muted)}.top-tabs{display:flex;align-items:center;gap:24px;font-family:JetBrains Mono,monospace;font-size:12px}.top-tabs span,.top-tabs button{color:var(--text-muted)}.top-tabs button{border:0;background:transparent;font-family:inherit;font-size:inherit}.top-tabs button:hover{color:var(--primary-dark)}.top-tabs .active{color:var(--primary-dark);text-decoration:underline;text-underline-offset:8px}.top-actions{justify-content:flex-end}.online-pill{border:1px solid #bbf7d0;background:#dcfce7;color:#166534;padding:4px 10px;font-size:11px}.page-shell{width:min(980px,calc(100vw - var(--sidebar-width) - 48px));margin:0 auto;padding:34px 0 56px}.lesson-page{width:min(1380px,calc(100vw - var(--sidebar-width) - 88px));padding-right:24px;padding-left:24px}.page-heading{margin-bottom:24px}.page-heading.split,.lesson-header,.profile-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}.page-heading h1{font-size:30px}.page-heading p,.lesson-header p{max-width:680px;margin:8px 0 0;line-height:1.55}.dashboard-grid,.module-preview-grid,.modules-grid,.progress-summary-grid,.progress-module-grid,.profile-modules{display:grid;gap:20px}.dashboard-grid{grid-template-columns:repeat(3,1fr);margin-bottom:22px}.metric-card,.level-card,.resume-card,.dashboard-side,.module-card,.lessons-panel,.lesson-row,.lesson-meta-card,.technical-reading,.idea-card,.diagram-panel,.quiz-progress-head,.quiz-question-main,.answer-question-block,.result-hero,.question-breakdown,.progress-main-card,.progress-module-card,.recent-table,.profile-card,.profile-side,.profile-module-card,.empty-state,.status-banner{border:1px solid var(--line);background:var(--surface)}.metric-card,.level-card,.dashboard-side,.module-card,.lessons-panel,.lesson-row,.lesson-meta-card,.technical-reading,.idea-card,.diagram-panel,.quiz-progress-head,.quiz-question-main,.answer-question-block,.result-hero,.question-breakdown,.progress-main-card,.progress-module-card,.recent-table,.profile-card,.profile-side,.profile-module-card{border-radius:var(--radius)}.metric-card,.level-card{position:relative;min-height:116px;padding:22px}.metric-icon{position:absolute;top:18px;right:18px;width:30px;height:30px}.metric-card strong,.level-card strong{display:block;margin-top:18px;color:var(--primary-dark);font-size:32px}.metric-card small{font-size:14px}.level-card{background:var(--primary);color:#fff;overflow:hidden}.level-card span,.level-card p{color:color-mix(in srgb,#ffffff 78%,var(--primary))}.level-card strong{color:#fff}.resume-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:20px;margin-bottom:24px}.resume-card{position:relative;min-height:230px;padding:30px;overflow:hidden}.resume-card h2{max-width:520px;margin:18px 0 12px;font-size:28px;line-height:1.12}.resume-card p{max-width:560px;line-height:1.55}.resume-card .primary-button{margin-top:24px}.resume-progress{position:absolute;left:0;bottom:0;height:4px;background:var(--primary)}.dashboard-side,.progress-main-card,.profile-side{display:grid;place-items:center;gap:18px;padding:22px}.mini-progress{width:100%;border-top:1px solid var(--line);padding-top:16px;text-align:center}.mini-progress strong{display:block;margin-top:6px;font-size:24px}.section-header{margin:22px 0 14px}.section-header h2{margin:0;font-size:22px}.section-header span{color:var(--primary-dark);font-size:12px}.module-preview-grid,.modules-grid,.progress-module-grid{grid-template-columns:repeat(3,1fr)}.library-hero{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:28px;align-items:center;min-height:240px;border:1px solid var(--line);border-radius:var(--radius);padding:34px;background:linear-gradient(#0052cce0,#003d9beb),url(/assets/bibliotecanormativa.avif) center / cover;color:#fff}.library-hero h1{max-width:650px;margin:18px 0 12px;font-size:34px;line-height:1.08}.library-hero p{max-width:680px;margin:0;color:color-mix(in srgb,#ffffff 82%,var(--primary));line-height:1.55}.library-hero img{width:150px;height:150px;border-radius:50%;object-fit:contain;background:#fff}.resource-grid,.guide-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.guide-actions-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-bottom:22px}.guide-workbench{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:18px;margin-bottom:24px}.guide-progress-command{display:grid;gap:6px}.guide-progress-hero{display:grid;grid-template-columns:minmax(280px,.86fr) minmax(0,1.14fr);align-items:end;gap:36px;border-bottom:1px solid var(--line);padding:4px 0 10px}.guide-progress-hero>div>span,.guide-progress-hero dt{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px;text-transform:uppercase}.guide-progress-hero>div>strong{display:block;margin-top:8px;color:var(--text);font-size:clamp(64px,9vw,118px);font-weight:900;letter-spacing:0;line-height:.86}.guide-progress-hero p{max-width:520px;margin:18px 0 0;color:var(--text-muted);font-size:18px;line-height:1.45}.guide-progress-hero dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:24px;margin:0;min-height:190px}.guide-progress-hero dl>div{position:relative;display:grid;grid-template-rows:1fr auto auto;min-height:190px}.guide-progress-hero dl>div>span{display:flex;position:relative;align-items:end;justify-content:center;min-height:118px;margin-bottom:14px}.guide-progress-hero dl>div>span:before{content:"";width:min(64px,72%);height:max(16px,var(--guide-stat));min-height:16px;max-height:118px;border-radius:10px 10px 4px 4px;background:linear-gradient(90deg,#2f657e,#6fa7c2 48%,#264b5d);box-shadow:inset -12px 0 18px #0000002e,inset 10px 0 18px #ffffff38,0 18px 26px #11182729;transform:perspective(240px) rotateX(6deg) skew(-3deg)}.guide-progress-hero dl>div:nth-child(2)>span:before{background:linear-gradient(90deg,#4d856c,#78ba96 45%,#2f614c)}.guide-progress-hero dl>div:nth-child(3)>span:before{background:linear-gradient(90deg,#94772a,#c8b05e 44%,#68571f)}.guide-progress-hero dl>div:nth-child(4)>span:before{background:linear-gradient(90deg,#7a858e,#bec8cf 44%,#58626b)}.guide-progress-hero dl>div:after{content:"";position:absolute;left:8%;right:8%;bottom:56px;height:10px;border-radius:50%;background:#00000024;filter:blur(4px)}.guide-progress-hero dt{border-top:3px solid var(--primary);padding-top:10px}.guide-progress-hero dl>div:nth-child(2) dt{border-color:#4d856c}.guide-progress-hero dl>div:nth-child(3) dt{border-color:#94772a}.guide-progress-hero dl>div:nth-child(4) dt{border-color:#7a858e}.guide-progress-hero dd{margin:6px 0 0;color:var(--text);font-size:clamp(20px,2vw,30px);font-weight:900;line-height:1}.guide-progress-hero-compact{grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);padding-bottom:24px}.guide-progress-hero-compact dl{min-height:156px}.guide-progress-hero-compact dl>div{min-height:156px}.guide-progress-hero-compact dl>div>span{min-height:92px}.guide-progress-hero-compact dl>div>span:before{max-height:92px}.guide-selected-module{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--surface-soft) 72%,var(--surface));padding:12px 14px}.guide-selected-module>div{display:grid;grid-template-columns:22px minmax(0,1fr);gap:3px 10px;align-items:center;min-width:0}.guide-selected-module svg{grid-row:span 2;color:var(--primary)}.guide-selected-module span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px;text-transform:uppercase}.guide-selected-module strong{min-width:0;overflow:hidden;color:var(--text);text-overflow:ellipsis;white-space:nowrap}.guide-module-actions{display:flex;align-items:center;gap:10px}.guide-selected-module select{width:100%;min-width:260px;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft);color:var(--text);padding:10px 12px}.guide-module-strip{display:flex;gap:10px;overflow-x:auto;margin-bottom:18px;padding-bottom:4px}.guide-module-pill{display:grid;gap:4px;min-width:190px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:12px;text-align:left}.guide-module-pill span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px}.guide-module-pill.active{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,var(--surface))}.guide-progress-strip{margin-bottom:0}.guide-progress-strip .guide-module-pill{min-width:220px;transition:border-color .18s ease,background-color .18s ease,transform .18s ease}.guide-progress-strip .guide-module-pill:hover,.guide-progress-strip .guide-module-pill:focus-visible{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--surface));transform:translateY(-2px)}.guide-progress-workbench{display:grid;grid-template-columns:minmax(0,1fr);justify-content:center;align-items:stretch;gap:10px}.guide-progress-workbench .guide-study-card.central{border:0;background:transparent;box-shadow:none;padding:0}.guide-floating-head{display:block;padding:0 2px;margin-top:16px}.guide-title-row{display:flex;align-items:start;justify-content:space-between;gap:clamp(28px,5vw,88px);width:100%}.guide-floating-head h2{flex:0 0 auto;font-family:JetBrains Mono,monospace;font-size:clamp(34px,4.2vw,60px);font-style:italic;font-weight:900;letter-spacing:0;text-transform:uppercase;line-height:1;margin:0;white-space:nowrap}.guide-module-picker{display:grid;flex:0 1 min(48vw,820px);margin-left:auto;min-width:500px;gap:6px}.guide-module-picker span{justify-self:end;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px;font-weight:800;text-align:right;text-transform:uppercase}.guide-module-picker select{width:100%;border:1px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:8px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-soft) 88%,transparent),color-mix(in srgb,var(--surface) 64%,transparent));color:var(--text);padding:12px 14px;font-size:14px;font-weight:700;box-shadow:inset 0 0 0 1px color-mix(in srgb,#ffffff 4%,transparent)}.guide-lesson-filter{display:flex;gap:8px;overflow-x:auto;padding:2px 0 4px}.guide-lesson-filter button{display:inline-flex;align-items:center;gap:8px;max-width:260px;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft);color:var(--text-muted);cursor:pointer;padding:8px 10px;font-size:13px;text-align:left;white-space:nowrap;transition:border-color .18s ease,background-color .18s ease,color .18s ease}.guide-lesson-filter button span{color:inherit;font-family:JetBrains Mono,monospace;font-size:11px}.guide-lesson-filter button.active,.guide-lesson-filter button:hover,.guide-lesson-filter button:focus-visible{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,var(--surface));color:var(--primary-dark)}.guide-focus-card{position:relative;isolation:isolate;display:grid;grid-template-areas:"card";min-height:420px;border-color:color-mix(in srgb,var(--line) 70%,transparent);background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--primary) 12%,transparent),transparent 42%),linear-gradient(180deg,color-mix(in srgb,var(--primary) 4%,transparent),transparent);padding:clamp(30px,5vw,58px);overflow:hidden;perspective:1400px;transform-style:preserve-3d;transition:border-color .22s ease,background .22s ease,transform .26s ease,box-shadow .26s ease}.guide-focus-card:hover{border-color:color-mix(in srgb,var(--primary) 42%,var(--line));box-shadow:0 18px 36px #0000001f;transform:translateY(-2px)}.guide-focus-card.flipped{animation:guide-card-flip .52s cubic-bezier(.2,.74,.25,1);background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 42%),linear-gradient(180deg,color-mix(in srgb,var(--accent) 5%,transparent),transparent)}.guide-card-face{display:grid;grid-area:card;gap:16px;place-items:center;align-content:center;width:100%;height:100%;min-height:inherit;transform-style:preserve-3d;animation:guide-card-face-in .36s ease both}.guide-focus-card.flipped .guide-card-face{animation-name:guide-card-face-answer}.guide-focus-card .guide-card-face>strong{max-width:820px;font-size:clamp(28px,4vw,48px);letter-spacing:0;line-height:1.12}.guide-focus-card .guide-card-face>span{justify-self:center;max-width:min(100%,520px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guide-navigation-screen{position:absolute;inset:0!important;z-index:3;display:grid;grid-area:card;width:100%!important;max-width:none!important;height:100%!important;min-height:100%!important;max-height:none!important;margin:0;align-items:center;align-self:stretch!important;justify-content:center;justify-self:stretch!important;justify-items:center;align-content:center;gap:16px;border-radius:inherit;background:transparent;color:#16a34a;overflow:hidden;opacity:0;pointer-events:none;text-overflow:clip;transform:none;white-space:normal;transition:opacity .16s ease}.guide-navigation-screen:before{content:"";position:absolute;inset:0;z-index:0;border-radius:inherit;background:color-mix(in srgb,var(--surface) 86%,transparent)}.guide-navigation-screen.previous{background:transparent;color:#2563eb}.guide-navigation-screen svg,.guide-navigation-screen b{position:relative;z-index:1}.guide-navigation-screen b{font-size:clamp(32px,5vw,70px);line-height:1;text-shadow:0 8px 28px color-mix(in srgb,currentColor 26%,transparent)}.guide-navigation-screen.visible{opacity:1}.guide-next-button.confirmed{border-color:color-mix(in srgb,#22c55e 72%,transparent);background:color-mix(in srgb,#22c55e 18%,var(--surface));color:#86efac}.guide-card-controls{grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:24px}.guide-progress-readout{display:grid;grid-template-columns:auto minmax(160px,420px);align-items:center;justify-content:start;gap:6px 14px}.guide-progress-readout strong{grid-row:span 2;color:var(--text);font-size:30px;font-weight:900;line-height:1}.guide-progress-readout .deck-progress{width:min(42vw,420px);height:12px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line) 44%,transparent)}.guide-progress-readout .deck-progress span{background:linear-gradient(90deg,#7ec8f5,#f3c846,#22c55e);box-shadow:0 0 18px color-mix(in srgb,var(--primary) 34%,transparent)}.guide-progress-readout small{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px}.guide-arrow-controls{display:flex;justify-content:end;gap:10px;overflow:visible}.guide-arrow-controls .icon-only{position:relative;width:54px;height:54px;min-width:54px;justify-content:center;padding:0}.guide-arrow-controls .icon-only:after{content:attr(data-tooltip);position:absolute;right:50%;bottom:calc(100% + 9px);z-index:8;width:max-content;max-width:160px;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:6px;background:color-mix(in srgb,var(--surface) 94%,#000000 6%);color:var(--text);padding:6px 8px;font-size:11px;font-weight:800;line-height:1;opacity:0;pointer-events:none;transform:translate(50%,4px);transition:opacity .14s ease,transform .14s ease;white-space:nowrap}.guide-arrow-controls .icon-only:hover:after,.guide-arrow-controls .icon-only:focus-visible:after{opacity:1;transform:translate(50%)}.guide-save-card.saved{border-color:color-mix(in srgb,var(--success) 58%,var(--line));background:color-mix(in srgb,var(--success) 12%,var(--surface));color:var(--success)}.guide-reset-card.reset{border-color:color-mix(in srgb,var(--warning) 58%,var(--line));background:color-mix(in srgb,var(--warning) 12%,var(--surface));color:var(--warning)}@keyframes guide-card-flip{0%{transform:rotateY(0) scale(1)}48%{transform:rotateY(88deg) scale(.985)}52%{transform:rotateY(-88deg) scale(.985)}to{transform:rotateY(0) scale(1)}}@keyframes guide-card-face-in{0%{opacity:0;transform:rotateY(-18deg) translateY(8px)}to{opacity:1;transform:rotateY(0) translateY(0)}}@keyframes guide-card-face-answer{0%{opacity:0;transform:rotateY(18deg) translateY(8px)}to{opacity:1;transform:rotateY(0) translateY(0)}}.guide-progress-workbench .guide-game-card{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 8%,var(--surface)),var(--surface))}.guide-action-card,.guide-study-card,.guide-game-card{display:grid;gap:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:22px}.guide-action-card h2,.guide-study-card h2,.guide-game-card h2{margin:0}.guide-action-card p,.guide-action-card small,.guide-game-card p{margin:0;color:var(--text-muted);line-height:1.5}.study-deck-head{display:flex;align-items:start;justify-content:space-between;gap:18px}.study-deck-head strong{color:var(--primary-dark);font-family:JetBrains Mono,monospace}.study-card-large{position:relative;display:grid;gap:16px;min-height:300px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 7%,var(--surface)),var(--surface));padding:34px;text-align:center;align-content:center;perspective:1200px;transform-style:preserve-3d;transition:border-color .22s ease,box-shadow .22s ease,transform .24s ease,background .22s ease}.study-card-large:hover{box-shadow:0 24px 70px color-mix(in srgb,var(--primary) 12%,transparent);transform:translateY(-2px)}.study-card-large.flipped{border-color:var(--primary);background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 10%,var(--surface)),var(--surface))}.study-card-large span,.study-card-large small,.deck-counter{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px}.study-card-large strong{max-width:680px;margin:0 auto;font-size:26px;line-height:1.22}.guide-card-face{display:grid;gap:18px;transform-origin:center;animation:guide-card-turn-in .42s cubic-bezier(.2,.9,.22,1) both}.guide-card-face[data-face=answer]{animation-name:guide-card-answer-in}.study-card-large.navigating .guide-card-face{animation:guide-card-slide-settle .52s cubic-bezier(.2,.9,.22,1) both}.study-card-large.guide-focus-card.flipped{border-color:color-mix(in srgb,var(--accent) 34%,var(--line));background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 42%),linear-gradient(180deg,color-mix(in srgb,var(--accent) 5%,transparent),transparent)}.study-card-large .guide-navigation-screen{inset:0!important;align-self:stretch!important;justify-self:stretch!important;width:100%!important;max-width:none!important;height:100%!important;min-height:100%!important;max-height:none!important;margin:0!important;font-family:inherit;font-size:inherit;overflow:hidden;text-overflow:clip;white-space:normal}.study-card-large .guide-navigation-screen svg{opacity:.84}.study-deck-controls{display:grid;grid-template-columns:auto minmax(120px,1fr) auto;gap:14px;align-items:center}.deck-progress{overflow:hidden;height:8px;border-radius:999px;background:var(--surface-muted)}.deck-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--accent));position:relative;transition:width .42s cubic-bezier(.2,.9,.22,1)}.deck-progress span:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.58),transparent);transform:translate(-100%);animation:progress-shine 1.4s ease infinite}.guide-game-card{align-content:start}.guide-game-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px}.guide-action-list{display:grid;gap:8px}.guide-action-list button{display:grid;gap:3px;min-height:54px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);padding:10px;text-align:left}.guide-action-list span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px}.challenge-meter{overflow:hidden;height:8px;border-radius:999px;background:var(--surface-muted)}.challenge-meter span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--accent))}.resource-card,.guide-card,.guide-feature,.compact-module-row{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.resource-card,.guide-card{display:grid;gap:14px;padding:22px}.resource-card{padding-top:132px}.resource-card>*:not(.resource-card-cover){position:relative;z-index:1}.resource-card-cover{position:absolute;top:0;right:0;left:0;height:104px;pointer-events:none;background:linear-gradient(135deg,#111827c2,#315f8757),var(--resource-cover, url(/assets/bibliotecanormativa.avif)) center / cover;transition:transform .22s ease}.resource-card:hover .resource-card-cover{transform:scale(1.03)}.resource-card h2,.guide-card h2{margin:0;font-size:21px;line-height:1.14}.resource-card p,.guide-card p{margin:0;color:var(--text-muted);line-height:1.5}.resource-meta{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px}.resource-card .primary-button{justify-self:start}.guide-feature{display:grid;gap:8px;padding:20px;color:var(--primary-dark)}.guide-feature span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px}.guide-steps{display:flex;flex-wrap:wrap;gap:8px}.guide-steps span{border:1px solid var(--line);background:var(--surface-soft);padding:6px 8px;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px}.compact-module-list{display:grid;gap:10px}.compact-module-row{display:grid;grid-template-columns:90px minmax(0,1fr) 24px;gap:14px;align-items:center;min-height:58px;padding:12px 16px;text-align:left}.compact-module-row span{color:var(--primary-dark);font-family:JetBrains Mono,monospace;font-size:12px;text-transform:uppercase}.module-card{display:grid;gap:14px;min-height:230px;padding:22px;text-align:left}.module-card h3{margin:0;font-size:20px;line-height:1.16}.module-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}.view-toggle{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:4px}.view-toggle button{display:inline-flex;align-items:center;gap:7px;min-height:38px;border:0;border-radius:calc(var(--radius) - 4px);background:transparent;padding:0 12px;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px}.view-toggle button.active{background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary-dark)}.sort-menu{position:relative;justify-content:flex-end}.sort-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:8;display:grid;min-width:190px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-md);padding:8px}.sort-popover button{min-height:36px;border:0;border-radius:var(--radius);background:transparent;padding:0 10px;color:var(--text-muted);text-align:left}.sort-popover button:hover,.sort-popover button.active{background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary-dark)}.module-card p{margin:0;line-height:1.45}.module-card-catalog{grid-template-columns:repeat(4,minmax(0,1fr))}.module-detail-page{display:grid;gap:22px}.module-detail-hero{display:grid;gap:14px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 12%,transparent),transparent 46%),var(--surface);padding:clamp(22px,3vw,34px);box-shadow:var(--shadow-sm)}.module-detail-hero h2{max-width:860px;margin:0;font-size:clamp(28px,4vw,48px);line-height:1.02}.module-detail-hero p{max-width:780px;margin:0;color:var(--text-muted);font-size:16px;line-height:1.6}.module-detail-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.module-detail-stats span{display:inline-flex;align-items:center;min-height:34px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--surface-soft) 70%,var(--surface));padding:0 12px;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px}.lesson-row-skeleton{pointer-events:none}.lesson-row-skeleton>.skeleton-line.short{width:42px;height:42px;border-radius:var(--radius)}.lesson-row-skeleton div{display:grid;gap:10px}.module-icon-box{width:38px;height:38px;border:1px solid var(--line)}.module-progress-label{color:var(--text-muted);font-size:11px}.progress-track{width:100%;height:7px;background:var(--surface-muted)}.progress-track span{display:block;height:100%;background:var(--primary)}.card-action{display:flex;align-items:center;justify-content:flex-end;gap:8px;color:var(--primary-dark);font-family:JetBrains Mono,monospace;font-size:12px}.book-shell{width:min(1640px,calc(100vw - var(--sidebar-width) - 34px))}.app-frame:has(.sidebar.collapsed) .book-shell{width:min(1720px,calc(100vw - 118px))}.book-view{display:grid;grid-template-columns:56px minmax(0,1fr);min-height:760px;margin-top:24px;border:1px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:10px;background:#f7f7f2;overflow:hidden;box-shadow:0 34px 80px #0f172a24}.book-view.single-book{min-height:760px}.book-spine{display:flex;align-items:center;justify-content:space-between;writing-mode:vertical-rl;transform:rotate(180deg);padding:28px 0;background:#111827;color:#fff}.book-spine span,.book-spine strong,.book-index-heading span,.book-content-header span,.book-chapter small,.book-lesson small{font-family:JetBrains Mono,monospace}.book-spine span{font-size:12px;letter-spacing:0;text-transform:uppercase}.book-spine strong{font-size:11px;font-weight:600}.book-pages{display:grid;grid-template-columns:minmax(260px,.38fr) minmax(0,.62fr);min-width:0;background:#f7f7f2}.single-book .book-pages{grid-template-columns:minmax(0,1fr);background:linear-gradient(90deg,rgba(15,23,42,.03) 0 1px,transparent 1px 100%),#f7f7f2}.book-index,.book-content{min-width:0;padding:24px}.single-book .book-content{padding:34px}.book-index{border-right:1px solid var(--line)}.book-index-heading,.book-content-header{margin-bottom:18px}.book-index-heading span,.book-content-header span{display:block;color:var(--text-muted);font-size:11px;text-transform:uppercase}.book-index-heading strong{display:block;margin-top:4px;font-size:24px}.book-content-header h2{margin:4px 0 8px;font-size:26px;line-height:1.14}.book-content-header p{max-width:680px;margin:0;color:var(--text-muted);line-height:1.55}.book-reader-toolbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;max-width:1240px;margin:0 auto 18px}.book-reader-toolbar button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;border:1px solid var(--line);border-radius:6px;background:#fff;padding:0 12px;color:var(--primary-dark);font-family:JetBrains Mono,monospace;font-size:12px}.book-reader-toolbar button:disabled{cursor:not-allowed;opacity:.45}.book-reader-toolbar span{justify-self:center;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px}.book-reader{position:relative;display:grid;place-items:center;min-height:650px;perspective:2200px}.book-spread{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:min(1240px,100%);min-height:650px;border-radius:8px;box-shadow:0 28px 70px #0f172a29,0 3px #0f172a14;transform-style:preserve-3d;animation:book-page-turn .52s cubic-bezier(.2,.72,.18,1) both}.book-spread:before{content:"";position:absolute;inset:0 calc(50% - 16px) 0 calc(50% - 16px);z-index:3;pointer-events:none;background:linear-gradient(90deg,rgba(15,23,42,.14),transparent 46%,rgba(255,255,255,.72) 50%,transparent 54%,rgba(15,23,42,.11))}.book-spread:after{content:"";position:absolute;right:-9px;top:14px;bottom:14px;width:9px;border-radius:0 8px 8px 0;background:repeating-linear-gradient(180deg,#e8e3d8 0 2px,#f7f3ea 2px 5px);box-shadow:9px 8px 18px #0f172a1f}.book-sheet{position:relative;display:grid;align-content:start;min-height:650px;background:linear-gradient(90deg,rgba(0,0,0,.035) 0 1px,transparent 1px 100%),#fffdf8;padding:clamp(34px,4vw,58px);padding-bottom:78px;overflow:hidden}.book-page-left{border-radius:8px 0 0 8px;box-shadow:inset -18px 0 32px #0f172a13}.book-page-right{border-radius:0 8px 8px 0;box-shadow:inset 18px 0 32px #0f172a0f}.book-sheet:before{content:"";position:absolute;inset:22px;pointer-events:none;border:1px solid rgba(15,23,42,.08)}.book-sheet:after{content:"";position:absolute;inset:auto 26px 18px;height:1px;background:#0f172a1a}.book-page{animation:book-page-turn .52s cubic-bezier(.2,.72,.18,1) both}.single-book .book-page{min-height:640px}.book-page:after{content:"";position:absolute;inset:16px 18px;pointer-events:none;border:1px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:calc(var(--radius) - 4px)}.book-cover-page{align-content:center;background:linear-gradient(135deg,#172554,#315f87),#172554;color:#fff;overflow:hidden}.book-title-page{align-content:center;background:linear-gradient(90deg,rgba(15,23,42,.05) 0 1px,transparent 1px 100%),#fffdf8}.book-title-page h2,.book-index-preface h2{margin:12px 0;color:var(--text);font-size:clamp(42px,5vw,76px);line-height:.95}.book-title-page p,.book-index-preface p{max-width:440px;color:var(--text-muted);line-height:1.7}.book-title-page footer{display:flex;align-items:center;justify-content:space-between;align-self:end;margin-top:72px;color:var(--text-muted);font-family:JetBrains Mono,monospace}.book-cover-kicker,.book-page-kicker{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px;text-transform:uppercase}.book-cover-page .book-cover-kicker{color:#ffffffb8}.book-cover-page h2,.book-table-page h2,.book-lesson-page h2{margin:12px 0 14px;max-width:760px;font-size:clamp(40px,5vw,72px);line-height:.96}.book-table-page h2,.book-lesson-page h2{color:var(--text);font-size:clamp(30px,3vw,48px)}.book-cover-page p,.book-lesson-page p{max-width:660px;margin:0;line-height:1.68}.book-cover-page p{color:#ffffffc7}.book-cover-meta{display:flex;flex-wrap:wrap;gap:10px;margin:34px 0}.book-cover-meta span{border:1px solid rgba(255,255,255,.28);padding:8px 12px;color:#ffffffd1;font-family:JetBrains Mono,monospace;font-size:12px}.book-cover-page .primary-button{justify-self:start;border-color:#ffffff57;background:#fff;color:var(--primary-dark)}.book-mini-stats{display:grid;gap:10px;margin-top:34px}.book-mini-stats span{display:flex;justify-content:space-between;border-bottom:1px solid rgba(15,23,42,.12);padding:10px 0;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px}.book-table-page{gap:18px}.book-table-list{display:grid;gap:8px}.book-global-index{display:grid;gap:12px;max-height:500px;overflow:auto;padding-right:6px}.book-table-list.nested{margin-top:8px;padding:8px 0 0 54px;border-top:1px solid var(--line-soft)}.book-table-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto 34px;align-items:center;gap:12px;min-height:48px;border:0;border-bottom:1px solid var(--line-soft);background:transparent;padding:8px 0;color:var(--text);text-align:left}.book-global-index .book-chapter{margin-bottom:0}.book-table-row:hover{color:var(--primary-dark)}.book-table-row span,.book-table-row small,.book-table-row em{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px;font-style:normal}.book-table-row strong{overflow-wrap:anywhere}.book-table-row em{justify-self:end}.book-lesson-page{gap:18px}.book-page-number{position:absolute;right:34px;bottom:26px;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px}.book-page-footer{position:absolute;left:clamp(34px,4vw,58px);right:clamp(34px,4vw,58px);bottom:28px;display:flex;align-items:center;justify-content:space-between;color:color-mix(in srgb,var(--text-muted) 88%,transparent);font-family:JetBrains Mono,monospace;font-size:11px;text-transform:uppercase}.book-cover-page .book-page-footer{color:#ffffffb8}.book-lesson-details{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.book-lesson-details>span:first-child{border:1px solid var(--line);background:var(--surface-soft);padding:6px 10px;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px}.book-note{max-width:620px;border-left:4px solid var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--surface));padding:18px 20px}.book-note strong{display:block;margin-bottom:6px}.book-note p{color:var(--text-muted)}.book-lesson-page .secondary-button{justify-self:start}.book-chapter{position:relative;display:grid;gap:10px;margin-bottom:10px;border:1px solid var(--line);border-radius:6px;background:transparent;padding:12px}.book-chapter.open{border-color:color-mix(in srgb,var(--primary) 46%,var(--line));background:#2563eb0b;box-shadow:var(--shadow-sm)}.book-chapter button{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;border:0;background:transparent;padding:0;text-align:left}.book-chapter button svg{color:var(--text-muted);transition:transform .18s ease}.book-chapter.open button svg{color:var(--primary-dark);transform:rotate(180deg)}.book-chapter-number,.book-lesson-marker{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--line);background:var(--surface-soft);color:var(--primary-dark);font-family:JetBrains Mono,monospace;font-size:12px}.book-chapter strong,.book-lesson strong{display:block;overflow-wrap:anywhere;line-height:1.2}.book-chapter small{display:block;margin-top:4px;color:var(--text-muted);font-size:11px}.book-chapter-progress{height:6px;overflow:hidden;background:var(--surface-muted)}.book-chapter-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--accent))}.book-chapter>.badge{justify-self:start}.book-lesson-list{display:grid;gap:10px}.book-lesson{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:center;width:100%;min-height:74px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--surface) 92%,var(--surface-soft));padding:14px;text-align:left}.book-lesson:hover{border-color:color-mix(in srgb,var(--primary) 42%,var(--line));background:var(--surface);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.book-lesson small{display:block;margin-top:5px;color:var(--text-muted);font-size:12px;line-height:1.35}.book-lesson-marker.completed{background:var(--success-bg);color:var(--success)}.book-lesson-marker.locked{background:var(--surface-muted);color:var(--secondary)}.book-empty-state{border:1px dashed var(--line);border-radius:var(--radius);padding:22px;color:var(--text-muted);text-align:center}.content-frame:has(.book-shell) .topbar,.content-frame:has(.book-shell) .status-banner{display:none}.content-frame:has(.book-shell){min-height:100vh}.book-shell{width:calc(100vw - var(--sidebar-width));margin:0;padding:14px 18px 18px}.app-frame:has(.sidebar.collapsed) .book-shell{width:calc(100vw - 84px)}.book-view.single-book{position:relative;grid-template-columns:42px minmax(0,1fr);min-height:calc(100vh - 32px);margin-top:0;border-color:color-mix(in srgb,var(--line) 72%,transparent);background:color-mix(in srgb,var(--surface-soft) 88%,var(--background))}.book-floating-toolbar{position:absolute;top:16px;right:18px;z-index:8}.book-floating-toolbar button{display:inline-flex;align-items:center;gap:8px;min-height:38px;border:1px solid color-mix(in srgb,var(--line) 86%,transparent);border-radius:6px;background:color-mix(in srgb,var(--surface) 94%,transparent);padding:0 12px;color:var(--primary-dark);box-shadow:var(--shadow-sm);font-family:JetBrains Mono,monospace;font-size:12px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.single-book .book-content{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:calc(100vh - 32px);padding:clamp(14px,1.6vw,26px);padding-top:64px}.book-reader-toolbar{width:min(1540px,100%);max-width:none}.book-reader-toolbar button{background:var(--surface);color:var(--text)}.book-reader{min-height:0}.book-spread{width:min(1540px,100%);min-height:calc(100vh - 164px)}.book-sheet{min-height:calc(100vh - 164px);background:linear-gradient(90deg,color-mix(in srgb,var(--text) 4%,transparent) 0 1px,transparent 1px 100%),var(--book-paper, #fffdf8);color:var(--book-ink, var(--text));overflow:auto;scrollbar-width:thin}.book-title-page,.book-index-preface{align-content:center}.book-title-page h2,.book-index-preface h2{color:var(--book-ink, var(--text));font-size:clamp(42px,5.8vw,92px)}.book-index-preface p{max-width:620px;font-size:clamp(17px,1.35vw,22px)}.book-mini-stats{max-width:620px}.book-global-index{gap:10px;max-height:calc(100vh - 260px);padding-right:8px}.book-chapter{gap:8px;border-color:color-mix(in srgb,var(--book-line, var(--line)) 82%,transparent);background:color-mix(in srgb,var(--book-paper, var(--surface)) 94%,var(--surface-soft));padding:14px 16px}.book-chapter.open{border-color:color-mix(in srgb,var(--primary) 36%,var(--book-line, var(--line)));background:color-mix(in srgb,var(--primary) 7%,var(--book-paper, var(--surface)))}.book-chapter button{grid-template-columns:minmax(0,1fr) auto;min-height:46px;cursor:pointer}.book-chapter button svg{justify-self:end}.book-chapter>.badge{display:none}.book-table-list.nested{margin-top:10px;padding:10px 0 0 clamp(34px,4vw,58px);border-top-color:color-mix(in srgb,var(--book-line, var(--line)) 82%,transparent)}.book-table-row{grid-template-columns:minmax(0,1fr);min-height:52px;border:1px solid color-mix(in srgb,var(--book-line, var(--line)) 82%,transparent);border-radius:6px;background:color-mix(in srgb,var(--book-paper, var(--surface)) 88%,var(--surface-soft));padding:12px 14px 12px 22px;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease}.book-table-row strong{color:var(--book-ink, var(--text));font-size:clamp(16px,1.15vw,20px);font-weight:500;line-height:1.22}.book-table-row:hover{border-color:color-mix(in srgb,var(--primary) 58%,var(--book-line, var(--line)));background:color-mix(in srgb,var(--primary) 13%,var(--book-paper, var(--surface)));box-shadow:0 10px 24px color-mix(in srgb,var(--primary) 14%,transparent);color:var(--primary-dark);transform:translate(4px)}.book-table-row:hover strong{color:var(--primary-dark)}.book-chapter{transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.book-chapter:hover{border-color:color-mix(in srgb,var(--primary) 52%,var(--book-line, var(--line)));background:color-mix(in srgb,var(--primary) 9%,var(--book-paper, var(--surface)));box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 12%,transparent)}.book-lesson-page{gap:16px}.book-lesson-page h2{font-size:clamp(28px,3vw,54px)}.book-lesson-page p{max-width:none;color:color-mix(in srgb,var(--book-ink, var(--text)) 82%,var(--text-muted));font-size:clamp(15px,1vw,18px)}.book-text-block{display:grid;gap:8px;max-width:760px;border-top:1px solid color-mix(in srgb,var(--book-line, var(--line)) 76%,transparent);padding-top:14px}.book-text-block.featured{border-top:0;padding-top:2px}.book-text-block span{color:var(--primary-dark);font-family:JetBrains Mono,monospace;font-size:11px;text-transform:uppercase}.book-text-block p{margin:0;line-height:1.72}.book-note{border-left-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--book-paper, var(--surface)))}:root[data-theme=oscuro]{--book-paper: #111827;--book-ink: #e7edf6;--book-line: rgba(226, 232, 240, .16)}:root[data-theme=oscuro] .book-view.single-book,:root[data-theme=oscuro] .single-book .book-pages{background:linear-gradient(90deg,rgba(255,255,255,.025) 0 1px,transparent 1px 100%),#0b1120}:root[data-theme=oscuro] .book-spine{background:#050816}:root[data-theme=oscuro] .book-sheet{box-shadow:inset -10px 0 30px #00000038}:root[data-theme=oscuro] .book-page-right{box-shadow:inset 18px 0 32px #00000038}:root[data-theme=oscuro] .book-spread:before{background:linear-gradient(90deg,rgba(0,0,0,.34),transparent 46%,rgba(255,255,255,.08) 50%,transparent 54%,rgba(0,0,0,.24))}:root[data-theme=oscuro] .book-spread:after{background:repeating-linear-gradient(180deg,#111827 0 2px,#1f2937 2px 5px)}:root[data-theme=oscuro] .book-title-page h2,:root[data-theme=oscuro] .book-index-preface h2,:root[data-theme=oscuro] .book-table-page h2,:root[data-theme=oscuro] .book-lesson-page h2{color:var(--book-ink)}@keyframes book-page-turn{0%{opacity:0;transform:rotateY(-14deg) translate(22px) scale(.985);filter:blur(1px)}to{opacity:1;transform:rotateY(0) translate(0) scale(1);filter:blur(0)}}.lessons-panel{margin-top:22px;padding:20px}.lesson-list{display:grid;gap:12px}.lesson-row{display:grid;grid-template-columns:52px minmax(0,1fr) auto auto;gap:18px;align-items:center;width:100%;min-height:86px;padding:14px;text-align:left}.lesson-index{width:42px;height:42px;font-family:JetBrains Mono,monospace}.lesson-index.completed{background:var(--success-bg);color:var(--success)}.lesson-index.locked{background:var(--surface-muted);color:var(--secondary)}.lesson-row h3{margin:0 0 4px}.lesson-row p{margin:0}.lesson-row-meta{justify-content:flex-start;margin-top:8px;color:var(--text-muted);font-size:12px}.lesson-row-meta span{display:inline-flex;align-items:center;gap:5px}.badge{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:4px 9px;border:1px solid var(--line);background:var(--surface-soft);color:var(--text-muted);font-size:11px;text-transform:uppercase}.badge.blue,.badge.available,.badge.in-progress{border-color:color-mix(in srgb,var(--primary) 34%,var(--surface));background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary-dark)}.badge.success,.badge.completed{border-color:#bbf7d0;background:var(--success-bg);color:var(--success)}.badge.danger,.badge.locked{border-color:var(--line);background:var(--surface-muted);color:var(--text-muted)}.lesson-header h1{margin-top:12px;font-size:30px}.lesson-meta-card{display:grid;grid-template-columns:1fr;gap:18px;min-height:132px;padding:22px}.lesson-meta-card span{display:block;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px;text-transform:uppercase}.lesson-meta-card strong{font-size:20px}.lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:30px}.lesson-main-column,.lesson-side-column{display:grid;gap:28px}.lesson-side-column{position:sticky;top:84px;justify-self:stretch;margin-top:36px}.lesson-page .lesson-header{display:block}.technical-reading{padding:28px}.reading-flow{display:grid;gap:16px;margin-top:22px}.reading-flow h2,.reading-flow h3,.reading-flow p{margin:0}.reading-flow h2{padding-bottom:12px;border-bottom:1px solid var(--line);color:var(--text);font-size:21px;line-height:1.25}.reading-flow h3{margin-top:18px;color:var(--text);font-family:inherit;font-size:20px;font-weight:800;line-height:1.35;text-transform:none}.reading-flow p{color:var(--text-muted);font-size:17px;line-height:1.7}.reading-chapter{display:inline-flex;width:fit-content;padding:6px 10px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));background:color-mix(in srgb,var(--accent) 9%,var(--surface));color:var(--accent-dark);font-family:JetBrains Mono,monospace;font-size:11px;text-transform:uppercase}.reading-bullet{position:relative;padding-left:18px}.reading-bullet:before{content:"";position:absolute;top:.72em;left:2px;width:6px;height:6px;border-radius:999px;background:var(--primary)}.reading-application{margin-top:28px;padding:20px;border-left:4px solid var(--primary);background:var(--surface-soft)}.reading-application span{display:block;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px;margin-bottom:8px;text-transform:uppercase}.reading-application p{margin:0;color:var(--text);line-height:1.65}.equation-box{margin-top:24px;padding:22px;border-left:4px solid var(--primary);background:var(--surface-soft)}.equation-box span{display:block;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px;margin-bottom:10px}.equation-box code{color:var(--primary-dark);font-family:JetBrains Mono,monospace}.idea-card{position:relative;min-height:86px;padding:0;background:var(--primary);color:#fff;overflow:hidden}.idea-card summary{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:86px;padding:0 24px;cursor:pointer;list-style:none}.idea-card summary::-webkit-details-marker{display:none}.idea-card summary svg{transition:transform .18s ease}.idea-card[open] summary{min-height:0;padding-top:22px;padding-bottom:12px}.idea-chevron-up,.idea-card[open] .idea-chevron-down{display:none}.idea-card[open] .idea-chevron-up{display:block}.idea-card span{color:#fff;font-size:20px;font-weight:800}.idea-card p{color:color-mix(in srgb,#ffffff 78%,var(--primary))}.idea-card strong{display:block;position:relative;z-index:1;margin:0;padding:0 24px 24px;color:#fff;font-size:18px;line-height:1.35}.reading-index-card{display:grid;gap:12px;max-height:360px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:16px;box-shadow:var(--shadow-sm);overflow:hidden}.reading-index-card>span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px;text-transform:uppercase}.reading-index-card>div{display:grid;gap:6px;overflow:auto;padding-right:4px;scrollbar-width:thin}.reading-index-card button{border:0;border-left:3px solid transparent;background:transparent;padding:8px 8px 8px 10px;color:var(--text-muted);font-size:13px;line-height:1.35;text-align:left}.reading-index-card button:hover{border-left-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,transparent);color:var(--primary-dark)}.back-to-top-button{position:fixed;right:28px;bottom:126px;z-index:20;display:grid;width:46px;height:46px;place-items:center;border:1px solid color-mix(in srgb,var(--primary) 46%,var(--line));border-radius:50%;background:var(--primary);color:#fff;box-shadow:var(--shadow-md)}.back-to-top-button:hover{transform:translateY(-2px)}.lesson-progress-pie{display:grid;grid-template-columns:66px minmax(0,1fr);align-items:center;gap:12px;width:100%;min-height:108px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:18px;box-shadow:var(--shadow-sm);animation:progress-pie-arrive .42s cubic-bezier(.2,.9,.22,1) both;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.lesson-progress-pie:hover{border-color:color-mix(in srgb,var(--primary) 52%,var(--line));box-shadow:0 18px 42px color-mix(in srgb,var(--primary) 14%,transparent);transform:translateY(-2px)}.lesson-progress-pie-chart{position:relative;display:grid;width:66px;height:66px;place-items:center;border-radius:50%;background:radial-gradient(circle at center,var(--surface) 0 54%,transparent 55%),conic-gradient(#58aee8 0 var(--lesson-reading-progress),#e7b842 var(--lesson-reading-progress) var(--lesson-total-progress),color-mix(in srgb,var(--line) 72%,transparent) var(--lesson-total-progress) 100%);transition:background .42s cubic-bezier(.2,.9,.22,1)}.lesson-progress-pie-chart:after{content:"";position:absolute;inset:7px;border-radius:inherit;border:1px solid color-mix(in srgb,var(--primary) 22%,transparent);opacity:0;animation:progress-ring-pulse 1.8s ease infinite}.lesson-progress-pie-chart strong{color:var(--text);font-family:JetBrains Mono,monospace;font-size:12px}.lesson-progress-pie span,.lesson-progress-pie small{display:block;min-width:0}.lesson-progress-pie span{color:var(--text);font-size:20px;font-weight:800}.lesson-progress-pie small{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.lesson-progress-pie mark{display:inline-flex;align-items:center;gap:5px;border-radius:999px;background:transparent;color:var(--text-muted);font-size:12px;font-weight:700;line-height:1.2}.lesson-progress-pie mark:before{content:"";width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:#58aee8}.lesson-progress-pie mark.video:before{background:#e7b842}.lesson-save-state{display:inline-flex;align-items:center;gap:5px;margin-top:10px;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px;font-style:normal;line-height:1}.lesson-save-state.saved svg{color:var(--success)}.lesson-save-state.local svg,.lesson-save-state.saving svg{color:var(--accent)}.lesson-save-state.saving svg{animation:spin .9s linear infinite}.lesson-assets{display:grid;gap:18px}.lesson-resource-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.lesson-resource-tabs button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:48px;padding:0 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;font-weight:800}.lesson-resource-tabs button svg:last-child{justify-self:end}.lesson-resource-tabs button:hover:not(:disabled),.lesson-resource-tabs button.active{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary-dark)}.lesson-resource-tabs button:disabled{cursor:not-allowed;opacity:.45}.lesson-resource-tabs small{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;color:var(--text-muted);font-size:18px;line-height:1}.lesson-resource-stage{display:grid;gap:16px}.lesson-resource-placeholder{display:flex;align-items:center;gap:10px;min-height:92px;padding:20px;border:1px dashed color-mix(in srgb,var(--primary) 30%,var(--line));border-radius:var(--radius-lg);background:color-mix(in srgb,var(--primary) 5%,var(--surface));color:var(--text-muted)}.lesson-video-panel,.lesson-image-panel,.lesson-downloads a{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-soft)}.lesson-video-panel{padding:18px}.asset-heading{display:flex;align-items:center;gap:12px;margin-bottom:14px}.asset-heading>div{min-width:0}.asset-heading span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px;text-transform:uppercase}.asset-heading h2{margin:2px 0 0;font-size:18px}.lesson-image-expand-button,.lesson-image-close-button{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft);color:var(--text-muted);cursor:pointer;font-weight:800}.lesson-image-expand-button{margin-left:auto}.lesson-image-expand-button:hover,.lesson-image-close-button:hover{border-color:var(--primary);color:var(--primary-dark)}.lesson-video-panel video{display:block;width:100%;max-height:520px;border-radius:8px;background:#020617}.lesson-video-panel p{margin:14px 0 0;color:var(--text-muted)}.lesson-image-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.lesson-image-panel{margin:0;overflow:hidden}.lesson-image-panel .image-heading{padding:14px 16px 0}.lesson-image-panel img{display:block;width:100%;aspect-ratio:16 / 10;object-fit:contain;background:var(--surface-soft)}.lesson-image-expanded-view{position:fixed!important;inset:0!important;z-index:9999!important;display:flex;align-items:center;justify-content:center;width:100vw;height:100vh;height:100dvh;padding:72px 28px 28px;background:#020617fa}.lesson-image-expanded-view img{display:block;max-width:100%;max-height:calc(100dvh - 112px);object-fit:contain}.lesson-image-close-button{position:fixed!important;top:20px;right:24px;z-index:10000;border-color:#e2e8f047;background:#0f172aeb;color:#f8fafc}body.lesson-image-expanded-active{overflow:hidden}.lesson-image-panel figcaption{padding:12px 14px;color:var(--text-muted);font-size:13px}.lesson-downloads{display:grid;gap:10px}.lesson-downloads a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 16px;color:var(--text);text-decoration:none}.lesson-downloads a:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--line));transform:translateY(-1px)}.lesson-downloads strong,.lesson-downloads small{display:block}.lesson-downloads small{margin-top:3px;color:var(--text-muted)}.diagram-panel{margin-top:20px;padding:20px;background:color-mix(in srgb,var(--primary) 12%,var(--surface))}.bridge-figure{position:relative;height:280px;overflow:hidden;background:repeating-linear-gradient(150deg,color-mix(in srgb,var(--primary) 20%,transparent) 0 2px,transparent 2px 18px),linear-gradient(160deg,color-mix(in srgb,var(--primary) 16%,var(--surface)),color-mix(in srgb,var(--accent) 16%,var(--surface)))}.truss-line{position:absolute;left:8%;width:88%;height:2px;background:#0f172a59;transform-origin:left center}.truss-line.one{top:42%;transform:rotate(-14deg)}.truss-line.two{top:60%;transform:rotate(-14deg)}.truss-line.three{top:78%;transform:rotate(-14deg)}.callout{position:absolute;left:45%;top:46%;width:220px;border:1px solid var(--primary);background:var(--surface);padding:12px;color:var(--text-muted);font-size:12px}.footer-actions{justify-content:flex-end;margin-top:28px;flex-wrap:wrap;gap:12px}.footer-actions .primary-button,.footer-actions .secondary-button{min-height:48px;border-radius:4px;font-size:15px;font-weight:800}.lesson-page .footer-actions{display:grid;grid-template-columns:repeat(4,minmax(0,auto));align-items:center}.quiz-progress-head,.quiz-question-main,.answer-question-block{padding:22px}.quiz-progress-head{display:grid;grid-template-columns:auto auto minmax(180px,1fr);align-items:center;gap:16px;margin-bottom:26px;font-family:JetBrains Mono,monospace;animation:quiz-panel-rise .36s ease both}.quiz-question-main h1{max-width:760px;margin:16px 0 22px;font-size:18px;line-height:1.5}.beam-figure{position:relative;height:180px;border:1px solid var(--line);background:var(--surface)}.beam-line{position:absolute;left:20%;right:20%;bottom:48px;height:4px;background:var(--secondary)}.beam-loads{position:absolute;left:25%;right:25%;top:64px;border-top:2px dashed var(--primary)}.beam-loads:before,.beam-loads:after{content:"";position:absolute;width:2px;height:50px;background:var(--primary);top:0}.beam-loads:before{left:15%}.beam-loads:after{right:15%}.beam-figure span{position:absolute;top:86px;left:46%;color:var(--primary-dark);font-family:JetBrains Mono,monospace;font-size:12px}.answer-grid{display:grid;gap:18px;margin-top:22px}.answer-question-block{animation:quiz-panel-rise .42s ease both;animation-delay:calc(var(--question-index, 0) * 50ms)}.question-inline-head{justify-content:flex-start;align-items:flex-start}.answer-options{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:18px}.answer-option{display:grid;grid-template-columns:0 32px minmax(0,1fr);gap:12px;align-items:center;min-height:72px;border:1px solid var(--line);padding:16px;background:var(--surface);transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.answer-option input{width:0;opacity:0}.answer-option span{display:grid;width:24px;height:24px;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--text-muted);transition:background .18s ease,color .18s ease,transform .18s ease}.answer-option:hover{border-color:color-mix(in srgb,var(--primary) 50%,var(--line));background:color-mix(in srgb,var(--primary) 6%,var(--surface));box-shadow:0 14px 34px color-mix(in srgb,var(--primary) 10%,transparent);transform:translateY(-2px)}.answer-option.selected{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,var(--surface));animation:answer-selected-pop .34s cubic-bezier(.2,.9,.22,1) both}:root[data-theme=oscuro] .answer-option.selected{background:color-mix(in srgb,var(--primary) 14%,var(--surface))}.answer-option.selected span{background:var(--primary);color:#fff;transform:scale(1.08)}.result-hero{display:grid;grid-template-columns:190px minmax(0,1fr);gap:24px;align-items:center;padding:28px;animation:result-hero-enter .52s cubic-bezier(.2,.9,.22,1) both}.result-hero h2{margin:12px 0;font-size:28px;line-height:1.12}.result-stats{justify-content:flex-start;margin-top:18px}.result-stats span{border-right:1px solid var(--line);padding-right:18px;color:var(--text-muted)}.result-stats strong{color:var(--primary-dark)}.question-breakdown{margin-top:24px;padding:20px}.result-section-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}.result-section-head h2{margin:0;font-size:22px}.result-section-head span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px}.feedback-row{display:grid;grid-template-columns:34px minmax(0,1fr) 24px;gap:14px;align-items:start;padding:16px 0;border-top:1px solid var(--line-soft);opacity:0;animation:feedback-row-enter .42s cubic-bezier(.2,.9,.22,1) var(--feedback-delay, 0ms) both}.result-section-head+.feedback-row{border-top:0}.feedback-row.correct svg{color:var(--success);animation:feedback-icon-pop .48s cubic-bezier(.2,.9,.22,1) calc(var(--feedback-delay, 0ms) + .12s) both}.feedback-row.wrong svg{color:var(--danger);animation:feedback-wrong-nudge .42s ease calc(var(--feedback-delay, 0ms) + .12s) both}.feedback-number{display:grid;width:26px;height:26px;place-items:center;border-radius:50%;background:var(--surface-muted);font-family:JetBrains Mono,monospace}.feedback-row p{margin:8px 0 0;padding:12px 14px;border-left:3px solid currentColor;background:var(--surface-soft);color:var(--text-muted);line-height:1.45}.result-actions .secondary-button{min-width:154px;border-color:color-mix(in srgb,var(--primary) 46%,var(--line));background:var(--surface)}.result-actions .primary-button{min-width:260px}.progress-summary-grid{grid-template-columns:1.2fr 1fr 1fr}.progress-main-card{text-align:center}.progress-main-card h2{margin:8px 0 0}.progress-main-card p{margin:0;color:var(--text-muted)}.progress-command-center{display:grid;gap:24px}.progress-executive-hero,.progress-diagnosis-panel,.progress-portal-grid{display:grid}.progress-executive-hero{grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);align-items:end;gap:36px;border-bottom:1px solid var(--line);padding:8px 0 30px}.progress-executive-hero>div>span,.progress-executive-hero dt{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px;text-transform:uppercase}.progress-executive-hero>div>strong{display:block;margin-top:8px;color:var(--text);font-size:clamp(64px,9vw,118px);font-weight:900;letter-spacing:0;line-height:.86}.progress-executive-hero p{max-width:520px;margin:18px 0 0;color:var(--text-muted);font-size:18px;line-height:1.45}.progress-executive-hero dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:24px;margin:0;min-height:220px}.progress-executive-hero dl>div{position:relative;display:grid;grid-template-rows:1fr auto auto;min-height:220px;padding-top:0}.progress-executive-hero dl>div>span{display:flex;position:relative;align-items:end;justify-content:center;min-height:142px;margin-bottom:16px}.progress-executive-hero dl>div.silver>span:before,.progress-executive-hero dl>div.blue>span:before{content:"";width:min(68px,72%);height:max(18px,var(--stat-value));min-height:18px;border-radius:10px 10px 4px 4px;background:linear-gradient(90deg,#e2b94a,#fff0a8 42%,#b88718);box-shadow:inset -12px 0 18px #0000002e,inset 10px 0 18px #ffffff47,0 18px 26px #1e180a38;transform:perspective(240px) rotateX(6deg) skew(-3deg)}.progress-executive-hero dl>div.silver>span:after,.progress-executive-hero dl>div.blue>span:after{content:"";position:absolute;right:18%;bottom:0;width:min(26px,28%);height:max(18px,var(--stat-value));min-height:18px;border-radius:0 10px 4px 0;background:#00000029;transform:skewY(-18deg);transform-origin:bottom left;mix-blend-mode:multiply}.progress-executive-hero dl>div.silver:after,.progress-executive-hero dl>div.blue:after,.progress-executive-hero dl>div.books:after,.progress-executive-hero dl>div.fire:after{content:"";position:absolute;left:8%;right:8%;bottom:58px;height:10px;border-radius:50%;background:#0000002e;filter:blur(4px)}.progress-executive-hero dl>div.silver>span:before{background:linear-gradient(90deg,#9ba8b4,#f5f8fb 44%,#6f7d8a)}.progress-executive-hero dl>div.blue>span:before{background:linear-gradient(90deg,#327aa6,#87cdf4 45%,#1f5479)}.book-stack{align-content:end;align-items:center;flex-direction:column-reverse;justify-content:flex-start;gap:2px;min-height:146px;padding:6px 0 2px}.book-stack:before{content:"";position:absolute;top:4px;bottom:0;left:50%;width:min(110px,90%);border:1px solid color-mix(in srgb,var(--line) 48%,transparent);border-bottom:3px solid color-mix(in srgb,#327aa6 46%,var(--line));border-radius:10px 10px 5px 5px;opacity:.42;transform:translate(-50%)}.book-stack i{display:block;position:relative;z-index:1;width:min(84px,76%);height:5px;border-radius:3px 8px 8px 3px;background:color-mix(in srgb,var(--line) 52%,transparent);box-shadow:none;opacity:.12;transform:translate(-2px)}.book-stack i.filled{background:linear-gradient(90deg,#1f3640 0 12%,#d8e5ec 12% 18%,#4d92b5 18% 100%);box-shadow:inset -8px 0 10px #0003,0 3px 8px #1118272e;opacity:1}.book-stack i:nth-child(2n){width:min(78px,70%);transform:translate(3px)}.book-stack i.filled:nth-child(2n){background:linear-gradient(90deg,#27323a 0 12%,#d8e5ec 12% 18%,#a98d35 18% 100%)}.book-stack i:nth-child(3n){width:min(94px,82%);transform:translate(-5px)}.book-stack i.filled:nth-child(3n){background:linear-gradient(90deg,#1e293b 0 12%,#d8e5ec 12% 18%,#4d856c 18% 100%)}.book-stack i:nth-child(4n){transform:translate(6px)}.book-stack b,.fire-stack b{align-self:center;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:16px;font-weight:900}.book-stack b{display:grid;width:74px;height:74px;place-items:center;border:2px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:50%}.fire-stack{align-items:end;gap:5px}.campfire-off{position:relative;display:block;width:84px;height:70px}.campfire-off i{position:absolute;left:14px;bottom:14px;width:58px;height:12px;border-radius:999px;background:linear-gradient(90deg,#4b3528,#8a5a35,#3c2a22);box-shadow:inset -8px 0 10px #0003;transform:rotate(24deg)}.campfire-off i:nth-child(2){transform:rotate(-24deg)}.campfire-off span{position:absolute;left:28px;bottom:30px;width:30px;height:18px;border-radius:50%;background:radial-gradient(circle,#9aa3aa 0 28%,#4b5560 70%,transparent 72%);opacity:.8;filter:blur(.2px)}.fire-stack i{display:block;width:24px;height:calc(28px + var(--stat-value) * .52);max-height:108px;border-radius:999px 999px 999px 8px;background:radial-gradient(circle at 52% 68%,#fff3b0 0 18%,transparent 20%),linear-gradient(180deg,#ffdf5d,#ff7a2f 45%,#c82626);box-shadow:0 0 18px #ff7a2f5c,inset -6px -8px 12px #60141440;transform:rotate(45deg) scale(calc(.7 + var(--stat-value) / 180));transform-origin:bottom center}.fire-stack i:nth-child(2){width:30px}.fire-stack i:nth-child(3){width:36px}.fire-stack i:nth-child(4),.fire-stack i:nth-child(5){width:42px}.progress-executive-hero dl>div.books dt{color:#327aa6}.progress-executive-hero dl>div.silver dt{color:#7b8793}.progress-executive-hero dl>div.fire dt{color:#d3542c}.progress-executive-hero dl>div.blue dt{color:var(--primary-dark)}.progress-executive-hero dl>div dt{border-top:3px solid currentColor;padding-top:10px}.progress-executive-hero dl>div dd{margin-top:6px}.progress-executive-hero dl>div>span.progress-line{background:linear-gradient(90deg,var(--primary) 0 var(--stat-value),color-mix(in srgb,var(--line) 72%,transparent) var(--stat-value) 100%)}.progress-executive-hero dd{margin:5px 0 0;color:var(--text);font-size:clamp(20px,2vw,30px);font-weight:900;line-height:1}.progress-diagnosis-panel{grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:28px;border-bottom:1px solid var(--line);padding:0 0 28px}.diagnosis-pie{order:2;display:grid;position:relative;width:188px;height:188px;place-items:center;justify-self:center}.diagnosis-pie svg,.diagnosis-pie>strong,.diagnosis-pie>span{grid-area:1 / 1}.diagnosis-pie svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 22px 26px rgba(17,24,39,.18));transform:rotate(-90deg)}.diagnosis-track,.diagnosis-segment{fill:none;stroke-width:14}.diagnosis-track{stroke:color-mix(in srgb,var(--line) 60%,transparent)}.diagnosis-segment{cursor:pointer;outline:none;stroke-linecap:round;transition:opacity .18s ease,stroke-width .18s ease,filter .18s ease}.diagnosis-segment.risk{stroke:#ef4444}.diagnosis-segment.strength{stroke:#22c55e}.diagnosis-segment.pending{stroke:#f3c846}.diagnosis-segment:hover,.diagnosis-segment:focus,.diagnosis-segment.active{stroke-width:17;filter:drop-shadow(0 0 8px currentColor)}.diagnosis-segment.muted{opacity:.22}.diagnosis-pie>strong{margin-top:-16px;color:var(--text);font-size:38px;font-weight:900;pointer-events:none}.diagnosis-pie>span{margin-top:38px;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px;text-transform:uppercase;pointer-events:none}.diagnosis-tooltip{position:absolute;right:82%;top:8px;z-index:2;display:grid;gap:5px;width:190px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:10px;box-shadow:var(--shadow-md)}.diagnosis-tooltip strong{color:var(--text);font-size:13px}.diagnosis-tooltip small{color:var(--text-muted);line-height:1.35}.diagnosis-legend{order:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.ranking-histogram-panel,.progress-filter-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:16px;box-shadow:var(--shadow-sm)}.ranking-histogram-panel{display:grid;grid-template-columns:1fr;gap:20px;min-height:0;margin-top:0;padding:28px 0 0;border:0;border-radius:0;background:transparent;box-shadow:none}.ranking-head{display:flex;align-items:end;justify-content:space-between;gap:18px}.ranking-head>div span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px;text-transform:uppercase}.ranking-head h2{margin:4px 0 0;font-size:clamp(28px,3vw,40px)}.ranking-head svg{color:var(--primary);margin-bottom:8px}.ranking-histogram{display:grid;align-content:center;gap:18px;min-height:0;padding:0}.ranking-bar{position:relative;display:grid;grid-template-columns:64px minmax(0,1fr);grid-template-rows:auto 24px;align-items:end;gap:7px 18px;min-width:0;min-height:64px;border:0;background:transparent;color:var(--text);cursor:pointer;padding:0;text-align:center;transition:opacity .18s ease,transform .18s ease}.ranking-histogram.has-focus .ranking-bar{opacity:.78}.ranking-histogram.has-focus .ranking-bar.active,.ranking-bar:hover,.ranking-bar:focus-visible{opacity:1}.ranking-bar>span{position:relative;grid-column:2;grid-row:2;justify-self:stretch;width:100%;height:20px;min-width:18px;border-radius:5px 12px 12px 5px;background:color-mix(in srgb,var(--line) 42%,transparent);overflow:hidden;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line) 48%,transparent)}.ranking-bar>span:before{content:"";position:absolute;inset:0 auto 0 0;width:var(--rank-width);min-width:18px;border-radius:inherit;background:linear-gradient(90deg,#2f657e,#6fa7c2 48%,#264b5d);box-shadow:inset -8px 0 14px #00000029,inset 7px 0 12px #ffffff24,0 10px 18px #11182724;transition:width .18s ease,filter .18s ease}.ranking-bar.active>span:before,.ranking-bar:hover>span:before,.ranking-bar:focus-visible>span:before{filter:brightness(1.08)}.ranking-bar.rank-1>span:before{background:linear-gradient(90deg,#94772a,#c8b05e 44%,#68571f)}.ranking-bar.rank-2>span:before{background:linear-gradient(90deg,#7a858e,#bec8cf 44%,#58626b)}.ranking-bar.rank-3>span:before{background:linear-gradient(90deg,#7d4d31,#ac7a55 44%,#5f351f)}.ranking-bar.current>span:before{outline:2px solid color-mix(in srgb,var(--accent) 72%,transparent);outline-offset:-2px}.ranking-bar strong,.ranking-bar em{font-family:JetBrains Mono,monospace;font-style:normal}.ranking-bar strong{grid-column:1;grid-row:1 / 3;align-self:center;color:var(--text-muted);font-size:15px}.ranking-bar small{grid-column:2;grid-row:1;min-width:0;padding-right:78px;color:var(--text);font-size:clamp(20px,2.1vw,28px);font-weight:600;overflow:hidden;text-overflow:ellipsis;text-align:left;white-space:nowrap}.ranking-bar em{grid-column:2;grid-row:1;justify-self:end;color:var(--text-muted);font-size:13px;text-align:right}.diagnosis-legend>div,.progress-section-title,.progress-filter-head{display:flex;align-items:start;justify-content:space-between;gap:16px}.diagnosis-legend>div{display:grid;grid-template-columns:10px minmax(0,1fr);gap:5px 10px;border-radius:var(--radius);padding:8px;transition:background-color .18s ease,opacity .18s ease,transform .18s ease}.progress-diagnosis-panel[class*=focus-] .diagnosis-legend>div{opacity:.36}.progress-diagnosis-panel.focus-risk .diagnosis-legend .risk,.progress-diagnosis-panel.focus-strength .diagnosis-legend .strength,.progress-diagnosis-panel.focus-pending .diagnosis-legend .pending,.diagnosis-legend>div.active{background:color-mix(in srgb,var(--surface-soft) 70%,var(--surface));opacity:1;transform:translateY(-2px)}.diagnosis-legend>div>span{grid-row:span 3;width:10px;min-height:100%;border-radius:999px;background:#ef4444}.diagnosis-legend .strength>span{background:#22c55e}.diagnosis-legend .pending>span{background:#f3c846}.diagnosis-legend strong{color:var(--text);font-size:34px;font-weight:900;line-height:.9}.diagnosis-legend p,.diagnosis-legend small{margin:0}.diagnosis-legend p{color:var(--text);font-family:JetBrains Mono,monospace;font-size:12px;font-weight:800;text-transform:uppercase}.diagnosis-legend small{color:var(--text-muted);line-height:1.35}.progress-section-title,.progress-filter-head{align-items:center;margin-bottom:16px}.progress-section-title span,.progress-filter-head span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px;text-transform:uppercase}.progress-section-title h2,.progress-filter-head h2{margin:4px 0 0;font-size:20px}.progress-filter-head>small{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px;white-space:nowrap}.practice-stack,.leaderboard-list,.progress-lesson-table{display:grid;gap:10px}.practice-item,.leaderboard-row,.progress-lesson-row{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--surface-soft)}.practice-item{display:grid;grid-template-columns:74px minmax(0,1fr);align-items:center;gap:5px;padding:14px;border-left:0}.practice-item.risk{border-color:color-mix(in srgb,var(--danger) 28%,var(--line-soft))}.practice-item.strength,.practice-item.completed{border-color:color-mix(in srgb,var(--success) 24%,var(--line-soft))}.practice-item.not_started{border-color:var(--line)}.practice-thumb{width:58px;height:58px;border-radius:4px;background:linear-gradient(180deg,#00000005,#00000052),var(--practice-cover) center / cover}.practice-thumb.clean{background:linear-gradient(135deg,color-mix(in srgb,var(--success) 24%,var(--surface)),var(--surface-soft))}.practice-item span,.progress-lesson-row span:first-child{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px;text-transform:uppercase}.practice-item strong{color:var(--text)}.practice-item small,.leaderboard-row small{color:var(--text-muted)}.leaderboard-row{display:grid;grid-template-columns:46px minmax(0,1fr);gap:8px 12px;align-items:center;padding:12px}.leaderboard-row.current{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,var(--surface))}.leaderboard-row>span{grid-row:span 2;color:var(--primary-dark);font-family:JetBrains Mono,monospace;font-weight:800}.leaderboard-row .rank-medal{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;color:#1f2933;box-shadow:inset -8px -8px 12px #00000024,inset 6px 6px 10px #fff6,0 10px 18px #11182724}.leaderboard-row .rank-1{background:linear-gradient(135deg,#fff1a6,#d7a928 58%,#936b10)}.leaderboard-row .rank-2{background:linear-gradient(135deg,#f8fafc,#aeb8c2 58%,#64717f)}.leaderboard-row .rank-3{background:linear-gradient(135deg,#ffc08a,#b86a2f 58%,#733819)}.progress-filter-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 220px 160px;gap:10px;margin-bottom:12px}.segmented-filter{display:flex;flex-wrap:wrap;gap:6px}.segmented-filter button,.progress-filter-toolbar select,.progress-search{min-height:36px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text)}.segmented-filter button{padding:0 10px;color:var(--text-muted);font-size:12px;font-weight:800}.segmented-filter button.active{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 11%,var(--surface));color:var(--primary-dark)}.progress-filter-toolbar select{padding:0 12px}.progress-search{display:flex;align-items:center;gap:8px;width:min(320px,100%);padding:0 12px}.progress-search input{width:100%;border:0;background:transparent;color:var(--text);outline:none}.progress-lesson-row{display:grid;grid-template-columns:minmax(320px,1.7fr) minmax(160px,.8fr) 108px;align-items:center;gap:14px;padding:9px 10px}.progress-lesson-title{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:14px}.progress-lesson-cover{display:block;width:64px;height:48px;border-radius:4px;background:linear-gradient(180deg,#00000005,#00000061),var(--lesson-cover) center / cover}.progress-lesson-title>div{display:grid;gap:4px}.progress-lesson-meta{display:grid;justify-items:end;gap:4px}.progress-lesson-meta strong{color:var(--text);font-size:22px;font-weight:900;line-height:1}.progress-lesson-meta small{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px}@media(max-width:1180px){.progress-hero-grid,.progress-executive-hero{grid-template-columns:1fr 1fr}.ranking-histogram-panel{grid-template-columns:1fr}.progress-focus-card,.progress-executive-hero>div{grid-column:1 / -1}.progress-executive-hero dl{grid-column:1 / -1}.progress-filter-toolbar{grid-template-columns:1fr}.progress-lesson-row{grid-template-columns:minmax(220px,1fr) minmax(140px,.8fr) 108px}}@media(max-width:760px){.progress-hero-grid,.progress-executive-hero,.progress-executive-hero dl,.progress-diagnosis-panel,.diagnosis-legend,.ranking-histogram-panel,.progress-focus-card,.progress-lesson-row{grid-template-columns:1fr}.ranking-histogram{overflow:visible;padding-bottom:0}.ranking-bar{grid-template-columns:34px minmax(0,1fr) 52px}.progress-filter-head{align-items:stretch;flex-direction:column}.progress-search,.progress-lesson-row .progress-track{width:100%}.progress-lesson-title{grid-template-columns:56px minmax(0,1fr)}.progress-lesson-cover{width:56px;height:44px}}.progress-module-grid{margin-bottom:28px}.progress-module-card{padding:18px}.progress-module-card h3{min-height:48px;margin:16px 0}.progress-module-card small{display:block;margin-top:12px;color:var(--text-muted)}.recent-table{padding:18px}.table-row{display:grid;grid-template-columns:minmax(220px,1fr) 180px 90px 120px;gap:18px;align-items:center;min-height:58px;border-top:1px solid var(--line-soft)}.profile-grid{grid-template-columns:minmax(0,1fr) 240px;margin-bottom:24px}.profile-card{display:grid;grid-template-columns:112px minmax(0,1fr) 260px;gap:24px;align-items:start;min-height:220px;padding:28px}.profile-avatar{width:96px;height:96px;border:4px solid var(--primary);border-radius:8px;font-size:28px;font-weight:800}.profile-card h1{margin-bottom:4px;font-size:28px}.profile-card .secondary-button{margin-top:18px}.unified-profile-card{grid-template-columns:96px minmax(0,1fr) auto 250px;align-items:center;margin-bottom:24px}.profile-main h1{margin-bottom:4px}.profile-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.profile-actions .secondary-button,.profile-actions .profile-upload{min-height:36px;margin-top:0;padding:0 12px}.profile-actions .danger-action{border-color:color-mix(in srgb,var(--danger) 38%,var(--line));color:var(--danger)}.profile-quick-stats{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.profile-quick-stats span{display:inline-flex;align-items:center;gap:6px;min-height:34px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);padding:0 10px;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px}.profile-details{display:grid;gap:8px;border-left:1px solid var(--line);padding-left:20px;min-width:0}.profile-details span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px}.profile-details strong{min-width:0;overflow-wrap:anywhere;word-break:break-word;line-height:1.25}.profile-modules{grid-template-columns:repeat(3,1fr)}.profile-module-card{padding:22px}.profile-module-card h3{margin:18px 0 8px}.profile-command-center{display:grid;gap:22px}.profile-identity-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,auto);align-items:center;gap:24px;border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent);padding-top:18px}.profile-social-card{overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:var(--radius);background:var(--surface)}.profile-cover{position:relative;min-height:clamp(150px,20vw,230px);overflow:hidden;background:linear-gradient(135deg,#22285fdb,#56a6dc8a),url(/assets/demex-feature.jpg) center / cover}.profile-cover img{width:100%;height:100%;min-height:inherit;object-fit:cover}.profile-cover>span{display:block;min-height:inherit}.profile-cover-upload{position:absolute;right:18px;bottom:16px}.profile-social-body{display:grid;grid-template-columns:148px minmax(0,1fr) minmax(190px,auto);gap:26px;align-items:start;padding:0 28px 26px}.profile-avatar-block{display:grid;gap:10px;justify-items:start;margin-top:-54px;position:relative;z-index:1}.profile-social-copy{display:grid;gap:9px;min-width:0;padding-top:22px}.profile-social-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:30px}.profile-persona{display:grid;grid-template-columns:86px minmax(0,1fr);align-items:center;gap:18px}.profile-persona>div:last-child{display:grid;gap:6px}.profile-persona span,.profile-info-head span,.profile-info-grid span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px;font-weight:900;text-transform:uppercase}.profile-persona h1,.profile-social-copy h1{margin:0;color:var(--text);font-size:clamp(28px,3.1vw,42px);font-weight:900;letter-spacing:0;line-height:1.05}.profile-persona p,.profile-social-copy p{max-width:720px;margin:0;color:var(--text-muted);font-size:15px;line-height:1.45}.profile-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;min-width:0}.profile-title-row strong{display:inline-flex;align-items:center;min-height:26px;border:1px solid color-mix(in srgb,var(--primary) 34%,var(--line));border-radius:999px;padding:0 10px;background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary-dark);font-family:JetBrains Mono,monospace;font-size:11px;font-weight:900;text-transform:uppercase}.profile-title-row strong[data-role=superadmin]{border-color:color-mix(in srgb,var(--accent) 42%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 24%,var(--surface)),color-mix(in srgb,var(--primary) 12%,var(--surface)));color:var(--primary-dark)}.verified-badge{display:inline-grid;position:relative;place-items:center;width:26px;height:26px;border:1px solid color-mix(in srgb,#f4c542 72%,#ffffff);border-radius:999px;background:radial-gradient(circle at 35% 25%,rgba(255,255,255,.38),transparent 38%),linear-gradient(135deg,#f9d76a,#d49b16);color:#fff;box-shadow:none;cursor:help}.verified-badge:after{content:"Verificado por DEMEX";position:absolute;bottom:calc(100% + 9px);left:50%;pointer-events:none;min-width:max-content;border:1px solid color-mix(in srgb,#f4c542 48%,var(--line));border-radius:6px;padding:6px 8px;background:color-mix(in srgb,var(--surface) 94%,#f4c542);color:var(--text);font-size:11px;font-weight:850;opacity:0;transform:translate(-50%,4px);transition:opacity .14s ease,transform .14s ease;white-space:nowrap;z-index:4}.verified-badge:hover:after,.verified-badge:focus-visible:after{opacity:1;transform:translate(-50%)}.verified-badge svg{filter:drop-shadow(0 1px 1px rgba(73,48,0,.28))}.profile-social-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:0}.profile-social-meta span{position:relative;display:inline-flex;align-items:center;gap:6px;color:var(--text-muted);font-family:inherit;font-size:14px;font-weight:750;text-transform:none}.profile-social-meta span+span:before{content:"";position:absolute;left:-10px;width:3px;height:3px;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 64%,transparent)}.profile-command-center .profile-avatar{display:grid;position:relative;width:132px;height:132px;place-items:center;border:5px solid var(--surface);border-radius:999px;background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--primary) 18%,transparent),transparent 62%),var(--surface);color:var(--primary-dark);font-size:34px;font-weight:900;overflow:hidden;box-shadow:0 12px 28px color-mix(in srgb,#000000 18%,transparent)}.profile-action-rail{display:grid;grid-template-columns:auto auto auto;justify-content:end;align-items:end;gap:8px;border-bottom:1px solid color-mix(in srgb,var(--line) 64%,transparent);padding-bottom:10px}.profile-action-rail>span{grid-column:1 / -1;justify-self:end;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px;font-weight:900;text-transform:uppercase}.profile-action-rail .secondary-button,.profile-action-rail .profile-upload,.profile-action-rail .primary-button{min-height:38px;margin-top:0;padding:0 12px}.profile-action-rail .danger-action{border-color:color-mix(in srgb,var(--danger) 38%,var(--line));color:var(--danger)}.profile-social-actions .secondary-button{min-height:36px;margin:0;padding:0 12px}.profile-media-actions{display:grid;grid-template-columns:1fr;justify-items:end;gap:14px;max-width:280px;padding-top:24px}.profile-media-actions p{max-width:250px;margin:0;color:var(--text-muted);font-size:12px;line-height:1.35;text-align:right}.profile-edit-action-column{display:grid;grid-template-columns:44px;gap:9px;justify-content:end}.profile-icon-action{position:relative;display:grid;width:44px;height:44px;place-items:center;border:1px solid color-mix(in srgb,var(--line) 82%,transparent);border-radius:8px;background:color-mix(in srgb,var(--surface) 84%,transparent);color:var(--text-muted);box-shadow:0 12px 28px color-mix(in srgb,var(--primary-dark) 8%,transparent);transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.profile-icon-action:after{content:attr(data-tooltip);position:absolute;right:calc(100% + 10px);top:50%;z-index:12;width:max-content;max-width:170px;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:6px;background:color-mix(in srgb,var(--surface) 94%,#000000 6%);color:var(--text);padding:7px 9px;font-size:11px;font-weight:850;line-height:1;opacity:0;pointer-events:none;transform:translate(6px,-50%);transition:opacity .14s ease,transform .14s ease;white-space:nowrap}.profile-icon-action:hover,.profile-icon-action:focus-visible{border-color:color-mix(in srgb,var(--primary) 48%,var(--line));background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary-dark);transform:translate(-2px)}.profile-icon-action:hover:after,.profile-icon-action:focus-visible:after{opacity:1;transform:translateY(-50%)}.profile-save-button{border-color:color-mix(in srgb,var(--primary) 42%,var(--line));background:color-mix(in srgb,var(--primary) 10%,transparent);color:var(--primary-dark)}.profile-danger-action{border-color:color-mix(in srgb,var(--danger) 34%,var(--line));color:color-mix(in srgb,var(--danger) 78%,var(--text-muted))}.profile-danger-action:hover,.profile-danger-action:focus-visible{border-color:color-mix(in srgb,var(--danger) 60%,var(--line));background:color-mix(in srgb,var(--danger) 10%,var(--surface));color:var(--danger)}.profile-image-control{display:inline-grid;place-items:center;width:36px;height:36px;border:1px solid color-mix(in srgb,#ffffff 56%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--primary-dark);box-shadow:0 10px 24px color-mix(in srgb,#000000 18%,transparent);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:border-color .16s ease,transform .16s ease,background-color .16s ease}.profile-image-control:hover{border-color:var(--accent);background:color-mix(in srgb,var(--surface) 96%,var(--accent));transform:translateY(-1px)}.profile-image-control input{display:none}.profile-avatar-edit-button{position:absolute;right:-2px;bottom:8px;z-index:2;width:40px;height:40px;border-width:2px;background:color-mix(in srgb,var(--surface) 96%,#000000 4%);box-shadow:0 0 0 4px color-mix(in srgb,var(--surface) 72%,transparent),0 12px 26px color-mix(in srgb,#000000 22%,transparent)}.profile-edit-title-fields label,.profile-edit-inline-grid label,.profile-edit-headline{display:grid;gap:5px;min-width:0}.profile-edit-title-fields span,.profile-edit-inline-grid span,.profile-edit-headline span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:10px;font-weight:900;text-transform:uppercase}.profile-edit-title-fields input,.profile-edit-inline-grid input,.profile-edit-headline input{width:100%;border:0;border-bottom:1px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:0;padding:0 0 7px;background:transparent;color:var(--text);outline:none}.profile-edit-title-fields input{font-size:clamp(28px,3.1vw,42px);font-weight:900;letter-spacing:0;line-height:1.05}.profile-edit-inline-grid{display:grid;grid-template-columns:repeat(2,minmax(0,max-content));gap:8px 18px}.profile-edit-inline-grid input,.profile-edit-headline input{color:var(--text-muted);font-size:15px;font-weight:750}.profile-edit-headline input{max-width:720px;font-weight:650}.profile-edit-media-card .profile-social-body{grid-template-columns:148px minmax(0,1fr) minmax(190px,auto)}.profile-edit-media-card .profile-avatar{overflow:visible}.profile-social-card .profile-avatar img{border-radius:999px}.profile-identity-hero .profile-avatar{width:86px;height:86px;border-radius:8px;font-size:26px;box-shadow:none}.profile-info-panel{display:grid;grid-template-columns:minmax(170px,.24fr) minmax(0,1fr);align-items:start;gap:clamp(22px,3vw,46px);border-top:1px solid color-mix(in srgb,var(--line) 58%,transparent);border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent);padding:24px 0 28px}.profile-info-head{display:grid;gap:6px;align-content:start}.profile-info-head strong{color:var(--text);font-size:clamp(20px,1.9vw,28px);font-weight:900;line-height:1.05}.profile-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 30px}.profile-protected-grid{display:grid;grid-template-columns:minmax(280px,1.4fr) minmax(180px,.8fr);gap:14px 34px;min-width:0}.profile-info-layout{display:grid;gap:14px;min-width:0}.profile-info-grid article,.profile-protected-grid article,.profile-primary-fact,.profile-contact-row article,.profile-detail-list article{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:5px 12px;min-height:72px;border-bottom:1px solid color-mix(in srgb,var(--line) 72%,transparent);padding:0 0 14px}.profile-info-grid svg,.profile-protected-grid svg,.profile-primary-fact svg,.profile-contact-row article svg,.profile-detail-list svg,.profile-row-logo{grid-row:1 / span 2;color:var(--primary)}.profile-row-logo{align-self:center;justify-self:start;width:22px;height:22px;border:1px solid color-mix(in srgb,var(--primary) 30%,var(--line));border-radius:6px;padding:3px;background:color-mix(in srgb,var(--surface-muted) 74%,transparent);object-fit:contain}.profile-info-grid strong,.profile-protected-grid strong,.profile-primary-fact strong,.profile-contact-row article strong,.profile-detail-list strong{min-width:0;overflow-wrap:anywhere;word-break:break-word;color:var(--text);font-weight:800;font-size:clamp(17px,1.4vw,21px);line-height:1.15}.profile-protected-grid article{min-height:58px;border:0;padding:0;background:transparent}.profile-protected-email strong{font-size:clamp(15px,1.1vw,18px);line-height:1.3;word-break:break-word}.profile-primary-fact{min-height:auto;border:1px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:var(--radius);padding:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 8%,transparent),transparent 58%),color-mix(in srgb,var(--surface-muted) 56%,transparent)}.profile-primary-fact span,.profile-contact-row article span,.profile-protected-grid span,.profile-detail-list span,.profile-metric-strip span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px;font-weight:900;text-transform:uppercase}.profile-public-panel{border-bottom:0;padding-bottom:20px}.profile-contact-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;min-width:0}.profile-contact-row article{min-height:54px}.profile-contact-row article strong{display:block;margin-top:3px;font-size:clamp(15px,1.2vw,18px);line-height:1.25}.profile-primary-fact strong{display:block;margin-top:5px;font-size:clamp(20px,2.2vw,30px);line-height:1.12}.profile-metric-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.profile-metric-strip article{display:grid;grid-template-columns:24px minmax(0,1fr);gap:3px 8px;align-items:center;min-width:0;border-bottom:1px solid color-mix(in srgb,var(--line) 72%,transparent);padding:0 0 12px;background:transparent}.profile-metric-strip svg{grid-row:1 / span 3;color:var(--primary)}.profile-metric-strip strong{min-width:0;overflow-wrap:anywhere;color:var(--text);font-size:clamp(16px,1.2vw,19px);font-weight:900;line-height:1.1}.profile-metric-strip small{color:var(--text-muted);font-size:12px;line-height:1.3}.profile-detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px}.profile-detail-list article{min-height:54px}.profile-detail-list strong{display:grid;gap:4px;font-size:clamp(14px,.95vw,16px);line-height:1.22}.profile-detail-list strong small{color:var(--text-muted);font-size:13px;font-weight:650;line-height:1.2}.profile-bio-panel{align-items:center}.profile-bio-panel p{max-width:820px;margin:0;color:var(--text);font-size:clamp(16px,1.5vw,20px);line-height:1.55}.profile-edit-panel{align-items:start;border-bottom:0;padding-bottom:20px}.profile-protected-panel{border-top:1px solid color-mix(in srgb,var(--line) 58%,transparent);border-bottom:0;padding-top:24px}.profile-edit-form{max-width:860px}.profile-edit-form label{min-width:0}.profile-activity-panel{display:grid;gap:18px;border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent);padding:8px 0 28px}.profile-activity-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px}.profile-activity-head>div{display:grid;gap:8px}.profile-activity-head span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px;font-weight:900;text-transform:uppercase}.profile-activity-head strong{color:var(--text);font-size:clamp(26px,3vw,38px);font-weight:900;line-height:1}.profile-activity-map{display:grid;grid-auto-flow:column;grid-template-rows:repeat(7,18px);grid-auto-columns:minmax(18px,1fr);gap:7px;align-items:stretch;min-height:168px;border-top:1px solid color-mix(in srgb,var(--line) 54%,transparent);border-bottom:1px solid color-mix(in srgb,var(--line) 54%,transparent);padding:18px 0}.profile-activity-map span,.profile-activity-legend i{display:block;border:1px solid color-mix(in srgb,var(--line) 62%,transparent);border-radius:4px;background:color-mix(in srgb,var(--surface-muted) 78%,transparent)}.profile-activity-map span{min-width:18px;cursor:help;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.profile-activity-map span:hover{border-color:color-mix(in srgb,var(--primary) 64%,var(--line));box-shadow:0 10px 26px color-mix(in srgb,var(--primary) 16%,transparent);transform:translateY(-2px) scale(1.08)}.profile-activity-map span[data-level="1"],.profile-activity-legend i[data-level="1"]{background:color-mix(in srgb,var(--primary) 28%,var(--surface))}.profile-activity-map span[data-level="2"],.profile-activity-legend i[data-level="2"]{background:color-mix(in srgb,var(--primary) 48%,var(--surface))}.profile-activity-map span[data-level="3"],.profile-activity-legend i[data-level="3"]{background:color-mix(in srgb,var(--primary) 68%,var(--surface))}.profile-activity-map span[data-level="4"],.profile-activity-legend i[data-level="4"]{background:color-mix(in srgb,var(--success) 76%,var(--primary))}.profile-activity-legend{display:inline-grid;grid-template-columns:auto repeat(5,16px) auto;justify-content:end;align-items:center;gap:7px;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px;font-weight:800}.profile-activity-legend i{width:16px;height:16px}.profile-module-bars{display:grid;gap:16px}.profile-module-bars article{display:grid;gap:8px}.profile-module-bars article>div:first-child{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:end}.profile-module-bars span{min-width:0;color:var(--text);font-size:clamp(18px,2.2vw,30px);font-weight:850;line-height:1}.profile-module-bars strong{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:18px}.profile-module-track{overflow:hidden;height:14px;border-radius:999px;background:color-mix(in srgb,var(--surface-muted) 74%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line) 62%,transparent)}.profile-module-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--accent),#22c55e);box-shadow:0 0 24px color-mix(in srgb,var(--primary) 28%,transparent)}.profile-module-bars article.complete .profile-module-track span{background:linear-gradient(90deg,#22c55e,#86efac)}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.admin-card{display:grid;gap:12px;min-height:190px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:22px}.admin-card h2{margin:0}.admin-card p{margin:0;color:var(--text-muted);line-height:1.5}.admin-card span{align-self:end;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px;text-transform:uppercase}.admin-heading{align-items:stretch}.admin-page{width:min(1220px,calc(100vw - var(--sidebar-width) - 36px))}.admin-current-user,.admin-panel,.admin-metric,.admin-state,.admin-list-item,.admin-question-card,.admin-asset-card,.admin-user-card,.admin-activity-list article{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.admin-current-user{display:grid;align-content:center;gap:4px;min-width:0;padding:18px}.admin-current-user span,.admin-current-user small,.admin-panel-head span,.admin-field span,.admin-state,.admin-list-item span,.admin-list-item small,.admin-question-card span,.admin-question-card small,.admin-asset-card span,.admin-asset-card small,.admin-user-card span,.admin-user-card small,.admin-activity-list span,.admin-activity-list small{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px}.admin-current-user strong,.admin-list-item strong,.admin-question-card strong,.admin-asset-card strong,.admin-user-card strong,.admin-activity-list strong{min-width:0;overflow-wrap:anywhere}.admin-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:18px}.admin-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text-muted);font-weight:700}.admin-tabs button:hover,.admin-tabs button.active{border-color:color-mix(in srgb,var(--primary) 44%,var(--line));background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary-dark)}.admin-stack,.admin-form,.admin-list,.admin-question-list,.admin-asset-list,.admin-user-detail,.admin-activity-list{display:grid;gap:12px}.admin-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admin-metric{display:grid;gap:8px;padding:18px}.admin-metric span{display:grid;width:34px;height:34px;place-items:center;border-radius:var(--radius);background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary-dark)}.admin-metric strong{color:var(--primary-dark);font-size:28px}.admin-workspace{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr) minmax(300px,1fr);gap:14px;align-items:start}.admin-workspace.two{grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr)}.admin-panel{min-width:0;padding:18px}.admin-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.admin-panel-head h2,.admin-form h3{margin:4px 0 0}.admin-guidance{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:18px;align-items:center}.admin-guidance p{margin:0;color:var(--text-muted);line-height:1.55}.admin-guidance div{display:grid;gap:4px;border-left:1px solid var(--line);padding-left:16px}.admin-state{padding:14px;line-height:1.45}.admin-state.error{border-color:color-mix(in srgb,var(--danger) 36%,var(--line));background:var(--danger-bg);color:var(--danger)}.admin-list{max-height:430px;overflow:auto;padding-right:2px}.admin-list-item{display:grid;width:100%;grid-template-columns:52px minmax(0,1fr);gap:4px 10px;padding:12px;text-align:left}.admin-list-item span{grid-row:span 2;align-self:center;justify-self:center;max-width:48px;overflow:hidden;text-overflow:ellipsis}.admin-list-item:hover,.admin-list-item.active{border-color:color-mix(in srgb,var(--primary) 40%,var(--line));background:color-mix(in srgb,var(--primary) 8%,var(--surface))}.admin-form{margin-top:14px;border-top:1px solid var(--line-soft);padding-top:14px}.admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-field{display:grid;gap:7px;min-width:0}.admin-field input,.admin-field select,.admin-field textarea,.admin-option-row input[type=text],.admin-option-row input:not([type]){width:100%;min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);padding:10px 12px;outline:none}.admin-field textarea{resize:vertical;line-height:1.45}.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus,.admin-option-row input:focus{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 14%,transparent)}.admin-segmented{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:4px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--surface-soft) 55%,var(--surface))}.admin-segmented button{min-height:34px;border:0;border-radius:4px;background:transparent;color:var(--text-muted);font-weight:700}.admin-segmented button.active,.admin-segmented button:hover{background:var(--surface);color:var(--primary-dark);box-shadow:var(--shadow-sm)}.admin-toggle,.admin-option-row{display:flex;align-items:center;gap:10px}.admin-toggle{color:var(--text-muted);font-size:14px}.admin-options{display:grid;gap:8px}.admin-inline-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-inline-head span,.admin-inline-head small{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px}.admin-option-row input[type=radio]{width:16px;height:16px;accent-color:var(--primary-dark)}.admin-rubric-box{display:grid;gap:10px;border:1px solid var(--line-soft);border-radius:var(--radius);padding:12px;background:color-mix(in srgb,var(--surface-soft) 42%,var(--surface))}.admin-rubric-row{display:grid;grid-template-columns:minmax(100px,1fr) 72px 72px minmax(150px,1.4fr);gap:8px;align-items:end}.admin-question-list,.admin-asset-list{max-height:360px;overflow:auto}.admin-question-card,.admin-asset-card,.admin-user-card,.admin-activity-list article{display:grid;gap:6px;padding:12px}.admin-question-card{grid-template-columns:minmax(0,1fr) auto}.admin-asset-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-card{background:color-mix(in srgb,var(--primary) 7%,var(--surface))}.admin-role-actions{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:12px 0}.donut{display:grid;width:150px;height:150px;place-items:center;border-radius:50%;background:conic-gradient(var(--primary) var(--value),var(--surface-muted) 0deg)}.donut>div{display:grid;width:110px;height:110px;place-items:center;align-content:center;border-radius:50%;background:var(--surface);text-align:center}.donut strong{color:var(--primary-dark);font-size:32px}.donut span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px;text-transform:uppercase}.empty-state{display:grid;min-height:420px;place-items:center;align-content:center;gap:12px;padding:48px;text-align:center}.empty-state p{max-width:420px;color:var(--text-muted)}.status-banner{width:min(980px,calc(100vw - var(--sidebar-width) - 48px));margin:14px auto 0;padding:12px 14px;font-size:14px}.status-banner.error{border-color:#fecaca;background:var(--danger-bg);color:var(--danger)}.status-banner.loading{border-color:#fde68a;background:var(--warning-bg);color:var(--warning)}.skeleton-page{pointer-events:none}.skeleton-heading,.skeleton-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}.skeleton-heading{display:grid;gap:12px;margin-bottom:28px;padding:24px}.skeleton-card{display:grid;gap:14px;min-height:160px;padding:20px}.skeleton-line,.skeleton-visual{display:block;overflow:hidden;border-radius:999px;background:linear-gradient(90deg,var(--surface-soft) 0%,color-mix(in srgb,var(--primary) 14%,var(--surface)) 45%,var(--surface-soft) 90%);background-size:220% 100%;animation:skeleton-shimmer 1.35s ease-in-out infinite}.skeleton-line{width:min(100%,520px);height:14px}.skeleton-line.short{width:140px}.skeleton-line.medium{width:min(70%,340px)}.skeleton-line.wide{width:min(92%,720px);height:20px}.skeleton-visual{width:100%;min-height:150px;border-radius:var(--radius)}.metric-skeleton{min-height:124px}.resume-skeleton{min-height:260px}.donut-skeleton{min-height:260px;border-radius:50%}.module-card-skeleton{min-height:390px}.side-skeleton{min-height:116px}.side-skeleton.short-panel{min-height:88px}.quiz-skeleton{min-height:230px}@keyframes skeleton-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}@media(max-width:1180px){.landing-nav{grid-template-columns:minmax(180px,1fr) minmax(220px,auto)}.landing-nav-links{display:none}.landing-hero,.landing-band,.landing-resource-showcase,.landing-learning-map,.landing-video-section{grid-template-columns:1fr}.landing-hero{min-height:auto}.landing-pillars{grid-template-columns:repeat(2,1fr)}.auth-layout,.dashboard-grid,.resume-layout,.module-preview-grid,.modules-grid,.resource-grid,.guide-grid,.guide-actions-grid,.guide-workbench,.guide-progress-hero,.library-hero,.lesson-layout,.book-view,.book-pages,.progress-summary-grid,.progress-module-grid,.profile-grid,.profile-modules,.page-heading.split,.lesson-header{grid-template-columns:1fr}.guide-progress-hero dl{grid-template-columns:repeat(4,minmax(0,1fr))}.guide-floating-head{align-items:start}.guide-title-row{flex-direction:column;gap:18px}.guide-module-picker{flex:0 1 auto;margin-left:0;min-width:0;width:100%}.guide-module-picker select{width:100%}.guide-selected-module{grid-template-columns:1fr}.guide-module-actions{align-items:stretch;flex-direction:column}.guide-selected-module select{min-width:0}.lesson-side-column{position:static;margin-top:0}.book-spine{writing-mode:horizontal-tb;transform:none;min-height:58px;padding:0 18px;border-left:0;border-bottom:1px solid color-mix(in srgb,var(--primary) 24%,var(--line))}.book-shell,.app-frame:has(.sidebar.collapsed) .book-shell{width:min(980px,calc(100vw - var(--sidebar-width) - 32px))}.book-spread{grid-template-columns:1fr;width:min(760px,100%)}.book-spread:before{display:none}.book-page-left,.book-page-right{border-radius:8px;box-shadow:inset 12px 0 24px #0f172a0b}.book-page-left{margin-bottom:14px}.page-shell,.status-banner{width:min(980px,calc(100vw - var(--sidebar-width) - 32px))}}@media(max-width:860px){.landing-nav{position:static;grid-template-columns:1fr;gap:14px}.landing-auth-actions{justify-content:stretch}.landing-login,.landing-register{flex:1}.landing-hero{padding-top:30px}.landing-hero h1{font-size:clamp(64px,18vw,132px)}.landing-video-card{min-height:300px}.landing-resource-panorama{min-height:480px}.landing-resource-card,.landing-resource-card.focus{width:330px;min-width:330px;height:360px}.landing-video-stack{grid-template-columns:1fr;grid-template-rows:none}.landing-video-card:first-child{grid-row:auto;min-height:300px}.app-frame{grid-template-columns:1fr}.sidebar{position:static;height:auto}.sidebar-spacer,.top-search,.top-tabs{display:none}.sidebar-nav{grid-template-columns:repeat(4,1fr);padding:0 12px 12px}.sidebar-link{justify-content:center;border-left:0;border-bottom:3px solid transparent;padding:0 8px}.sidebar-link.active{border-bottom-color:var(--primary)}.content-frame{min-width:0}.page-shell,.status-banner{width:min(100vw - 24px,980px)}.auth-form-panel,.auth-overlay{padding:34px 24px}.auth-visual,.auth-overlay{min-height:420px}.topbar{position:static}.lesson-row,.profile-card,.result-hero,.table-row,.quiz-progress-head,.answer-options{grid-template-columns:1fr}.profile-details{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:18px}.unified-profile-card,.resource-workspace.compact,.resource-reader-layout{grid-template-columns:1fr}.profile-quick-stats{justify-content:flex-start}.profile-identity-hero,.profile-info-panel{grid-template-columns:1fr}.profile-social-body{grid-template-columns:126px minmax(0,1fr);gap:20px;padding:0 22px 24px}.profile-avatar-block{margin-top:-48px}.profile-social-actions{grid-column:1 / -1;justify-content:flex-start;padding-top:0}.profile-media-actions{grid-column:1 / -1;justify-items:start;max-width:none;padding-top:0}.profile-media-actions p{text-align:left}.profile-edit-action-column{justify-content:start}.profile-action-rail{grid-template-columns:repeat(3,max-content);justify-content:flex-start}.profile-action-rail>span{justify-self:start}.profile-info-grid{grid-template-columns:1fr 1fr}.profile-activity-head{grid-template-columns:1fr}.resource-reader-page{width:min(100vw - 24px,980px)}.resource-reader-side{position:static}}@media(max-width:560px){.landing-brand small,.landing-login{display:none}.landing-register{width:100%}.landing-hero h1{font-size:clamp(54px,18vw,76px)}.landing-pillars{grid-template-columns:1fr}.landing-resource-panorama{min-height:430px}.landing-resource-card,.landing-resource-card.focus{width:280px;min-width:280px;height:330px}.landing-pillar-card{min-height:0}.landing-route-list li{grid-template-columns:42px minmax(0,1fr)}.landing-route-list svg{display:none}.landing-cta,.landing-cta.compact{width:100%}.top-actions .online-pill,.sidebar-user,.sidebar-counters{display:none}.sidebar-nav{grid-template-columns:repeat(2,1fr)}.topbar{padding:0 12px}.topbar-brand{font-size:14px}.page-heading h1,.lesson-header h1,.result-hero h2{font-size:24px}.auth-overlay h1{font-size:34px}.footer-actions,.button-row,.auth-title-row,.module-toolbar{align-items:stretch;flex-direction:column}.view-toggle{width:100%}.view-toggle button{flex:1;justify-content:center}.guide-progress-hero dl{grid-template-columns:repeat(2,minmax(0,1fr));min-height:0}.guide-progress-hero dl>div{min-height:150px}.guide-progress-hero dl>div>span{min-height:86px}.guide-progress-hero>div>strong{font-size:clamp(54px,22vw,82px)}.book-index,.book-content{padding:18px}.book-reader-toolbar{grid-template-columns:1fr}.book-reader-toolbar span{order:-1}.book-page{min-height:460px;padding:30px 24px}.book-cover-page h2,.book-table-page h2,.book-lesson-page h2{font-size:28px}.book-table-row{grid-template-columns:34px minmax(0,1fr) 28px}.book-table-row small{display:none}.book-lesson{grid-template-columns:40px minmax(0,1fr)}.book-lesson .badge{grid-column:2;justify-self:start}.technical-reading{padding:22px}.reading-flow p{font-size:15px}.lesson-resource-tabs{grid-template-columns:1fr}.lesson-page .footer-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@keyframes page-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes modal-enter{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes guide-card-turn-in{0%{opacity:0;transform:rotateY(-18deg) translateY(10px) scale(.985)}to{opacity:1;transform:rotateY(0) translateY(0) scale(1)}}@keyframes guide-card-answer-in{0%{opacity:0;transform:rotateY(22deg) translateY(8px) scale(.985)}to{opacity:1;transform:rotateY(0) translateY(0) scale(1)}}@keyframes guide-card-slide-settle{0%{opacity:.76;transform:translate(18px) scale(.992)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes progress-shine{to{transform:translate(140%)}}@keyframes quiz-panel-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes answer-selected-pop{0%{transform:scale(1)}48%{transform:scale(1.018)}to{transform:scale(1)}}@keyframes result-hero-enter{0%{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes feedback-row-enter{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes feedback-icon-pop{0%{opacity:0;transform:scale(.5) rotate(-18deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes feedback-wrong-nudge{0%,to{transform:translate(0)}30%{transform:translate(-3px)}62%{transform:translate(3px)}}@keyframes progress-pie-arrive{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes progress-ring-pulse{0%{opacity:0;transform:scale(.82)}42%{opacity:.9}to{opacity:0;transform:scale(1.28)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.page-shell{animation:page-enter .28s ease both}.primary-button,.secondary-button,.small-action,.text-command,.icon-button,.sidebar-link,.module-card,.lesson-row,.book-chapter,.book-lesson,.book-reader-toolbar button,.book-table-row,.view-toggle button,.resource-card,.guide-card,.compact-module-row,.answer-option,.profile-module-card,.progress-module-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background-color .18s ease,color .18s ease}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 70%,transparent);outline-offset:3px}.primary-button{border-color:var(--primary-dark);background:var(--primary-dark);box-shadow:none}.primary-button:hover:not(:disabled){border-color:color-mix(in srgb,var(--primary-dark) 72%,#000000);background:color-mix(in srgb,var(--primary-dark) 88%,#000000);transform:translateY(-2px);box-shadow:0 14px 28px color-mix(in srgb,var(--primary-dark) 20%,transparent)}.secondary-button:hover:not(:disabled),.small-action:hover,.text-command:hover,.icon-button:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--accent-dark);transform:translateY(-2px);box-shadow:0 12px 24px color-mix(in srgb,var(--accent) 14%,transparent)}.primary-button:active:not(:disabled),.secondary-button:active:not(:disabled),.small-action:active,.text-command:active,.icon-button:active{transform:translateY(0);box-shadow:none}.secondary-button.danger{border-color:color-mix(in srgb,var(--danger) 52%,var(--line));color:var(--danger)}.secondary-button.danger:hover:not(:disabled){border-color:var(--danger);background:var(--danger-bg);color:var(--danger)}.technical-form input,.technical-form textarea{border-radius:var(--radius);transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.technical-form input:focus,.technical-form textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 16%,transparent);background:var(--surface)}.form-grid.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.toggle-field{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;border:1px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:var(--radius);padding:12px 14px;background:color-mix(in srgb,var(--surface-muted) 72%,transparent)}.technical-form .toggle-field input{width:18px;height:18px;padding:0;accent-color:var(--primary)}.technical-form .toggle-field span{color:var(--text);font-family:inherit;font-size:14px;font-weight:750;text-transform:none}.sidebar{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-soft) 88%,var(--primary)),var(--surface-soft))}.sidebar-brand{position:relative}.sidebar-brand:after{content:"";position:absolute;right:18px;bottom:14px;left:18px;height:1px;background:linear-gradient(90deg,var(--primary),transparent)}.sidebar-link:hover{background:color-mix(in srgb,var(--primary) 9%,transparent);color:var(--primary-dark)}.sidebar-link.active{background:color-mix(in srgb,var(--primary) 16%,var(--surface))}.topbar{height:64px;box-shadow:0 1px color-mix(in srgb,var(--line) 70%,transparent)}.top-context{display:grid;gap:2px;min-width:150px}.top-context span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:10px;text-transform:uppercase}.top-context strong{font-size:14px;line-height:1.1}.online-pill{border-color:color-mix(in srgb,var(--success) 28%,var(--surface));background:color-mix(in srgb,var(--success-bg) 74%,var(--surface))}.metric-card,.level-card,.resume-card,.dashboard-side,.module-card,.lessons-panel,.lesson-row,.lesson-meta-card,.technical-reading,.idea-card,.diagram-panel,.quiz-progress-head,.quiz-question-main,.answer-question-block,.result-hero,.question-breakdown,.progress-main-card,.progress-module-card,.recent-table,.profile-card,.profile-side,.profile-module-card,.resource-card,.guide-card,.guide-feature,.compact-module-row{box-shadow:none}.metric-card:hover,.resume-card:hover,.module-card:hover,.lesson-row:hover,.book-chapter:hover,.book-lesson:hover,.resource-card:hover,.guide-card:hover,.compact-module-row:hover,.progress-module-card:hover,.profile-module-card:hover{border-color:color-mix(in srgb,var(--primary) 42%,var(--line));box-shadow:var(--shadow-sm);transform:translateY(-2px)}.module-card.selected{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 12%,transparent)}.resume-card:before,.level-card:before,.idea-card:before{content:"";position:absolute;inset:auto -50px -68px auto;width:170px;height:170px;border:1px solid rgba(255,255,255,.22);transform:rotate(28deg)}.module-card{position:relative;overflow:hidden;padding-top:118px}.module-card>*:not(.module-visual){position:relative;z-index:1}.module-visual{pointer-events:none}.module-card:hover .module-visual{transform:scale(1.03)}.module-card:hover .card-action svg{transform:translate(3px)}.card-action svg{transition:transform .18s ease}.module-visual{position:absolute;top:0;right:0;left:0;height:94px;overflow:hidden;background:linear-gradient(135deg,#17212b38,#17212b14),var(--module-cover, url(/assets/demex-feature.jpg)) center / cover;transition:transform .26s ease}.module-visual:before,.module-visual:after,.module-visual span{content:"";position:absolute;background:#ffffff6b}.module-visual:before{width:70%;height:2px;left:15%;top:42%;transform:rotate(-9deg)}.module-visual:after{width:62%;height:2px;left:20%;top:64%;transform:rotate(9deg)}.module-visual span{width:2px;height:78%;left:32%;top:12%;transform:rotate(17deg)}.module-visual-1{background:linear-gradient(135deg,#22285fc2,#56a6dc6b),var(--module-cover, url(/assets/demex-feature.jpg)) center / cover}.module-visual-2{background:linear-gradient(135deg,#56a6dcc7,#22285f7a),var(--module-cover, url(/assets/demex-feature.jpg)) center / cover}.module-visual-3{background:linear-gradient(135deg,#22285fb8,#f4c54257),var(--module-cover, url(/assets/demex-feature.jpg)) center / cover}.module-visual-4{background:linear-gradient(135deg,#4f98ccbd,#22285f7a),var(--module-cover, url(/assets/demex-feature.jpg)) center / cover}.module-icon-box,.metric-icon,.avatar-mini,.profile-avatar,.lesson-index{background:color-mix(in srgb,var(--primary) 14%,var(--surface));color:var(--primary-dark)}.badge.blue,.badge.available,.badge.in-progress{border-color:color-mix(in srgb,var(--primary) 34%,var(--surface));background:color-mix(in srgb,var(--primary) 13%,var(--surface));color:var(--primary-dark)}.progress-track{overflow:hidden;border-radius:999px}.progress-track span,.resume-progress{background:linear-gradient(90deg,var(--primary),var(--accent))}.library-hero{box-shadow:none;background:linear-gradient(135deg,#22285fe0,#56a6dc8a),url(/assets/bibliotecanormativa.avif) center / cover}.answer-option:hover{border-color:color-mix(in srgb,var(--primary) 42%,var(--line));background:color-mix(in srgb,var(--primary) 6%,var(--surface))}.answer-option.selected{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,var(--surface));box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 12%,transparent)}.diagram-panel{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 14%,var(--surface)),color-mix(in srgb,var(--accent) 18%,var(--surface)))}.bridge-figure{border-radius:var(--radius);background:repeating-linear-gradient(150deg,color-mix(in srgb,var(--primary) 18%,transparent) 0 2px,transparent 2px 18px),linear-gradient(160deg,color-mix(in srgb,var(--primary) 18%,var(--surface)),color-mix(in srgb,var(--accent) 20%,var(--surface)))}.callout{box-shadow:var(--shadow-sm)}.modal-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:20px;background:#1218177a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.profile-modal{width:min(720px,100%);max-height:min(86vh,820px);overflow:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-md);padding:24px;animation:modal-enter .22s ease both}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.modal-head h2{margin:6px 0 0;font-size:24px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.field-error{margin:-4px 0 0;color:var(--danger);font-size:13px}@media(max-width:860px){.top-context{display:none}.module-card{min-height:250px}}@media(max-width:560px){.modal-actions{flex-direction:column-reverse}.modal-actions .primary-button,.modal-actions .secondary-button{width:100%}.study-deck-controls{grid-template-columns:1fr}.study-card-large{min-height:240px;padding:22px}.study-card-large strong{font-size:20px}.profile-persona,.profile-info-grid,.profile-protected-grid,.profile-metric-strip,.profile-detail-list{grid-template-columns:1fr}.profile-cover{min-height:138px}.profile-social-body{grid-template-columns:1fr;padding:0 16px 20px}.profile-avatar-block{justify-items:start;margin-top:-44px}.profile-social-copy{padding-top:0}.profile-media-actions{justify-items:stretch}.profile-media-actions p{text-align:left}.profile-edit-action-column{grid-template-columns:44px;justify-content:start}.profile-action-rail .secondary-button,.profile-action-rail .profile-upload,.profile-action-rail .primary-button{width:100%;justify-content:center}.profile-action-rail{grid-template-columns:1fr}.profile-info-grid article,.profile-protected-grid article,.profile-primary-fact,.profile-contact-row article,.profile-detail-list article{grid-template-columns:30px minmax(0,1fr)}.profile-contact-row,.form-grid.two{grid-template-columns:1fr}.profile-activity-map{grid-template-rows:repeat(7,14px);grid-auto-columns:14px;gap:5px;overflow-x:auto;min-height:132px}.profile-activity-map span{min-width:14px}}.avatar-mini img,.avatar-button img{width:100%;height:100%;border-radius:999px!important;clip-path:circle(50%);object-fit:cover}.profile-avatar img{width:100%;height:100%;border-radius:4px;object-fit:cover}.avatar-button{display:grid;width:36px;height:36px;place-items:center;overflow:hidden;border:1px solid var(--line);border-radius:999px;padding:0;aspect-ratio:1;background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary-dark);font-weight:800;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.avatar-button:hover{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 18%,transparent);transform:translateY(-1px)}.avatar-button span{font-size:12px}.sidebar-user{width:auto;color:inherit;text-align:left;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.sidebar-user:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--line));background:color-mix(in srgb,var(--primary) 8%,var(--surface));box-shadow:var(--shadow-sm);transform:translateY(-1px)}.profile-avatar{overflow:hidden;color:var(--primary-dark);background:linear-gradient(var(--surface),var(--surface)) padding-box,linear-gradient(135deg,var(--primary),var(--accent)) border-box;border:4px solid transparent}.profile-upload{width:fit-content;margin-top:10px;cursor:pointer}.profile-upload input,.profile-cover-upload input{display:none}.danger-text{display:inline-flex;align-items:center;gap:6px;margin-top:10px;color:var(--danger)}.resource-workspace{display:grid;grid-template-columns:minmax(0,.92fr) minmax(380px,1.08fr);gap:20px;align-items:start}.resource-workspace.compact{grid-template-columns:minmax(0,1fr) 320px}.resource-workspace .resource-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:820px;overflow:auto;padding-right:4px}.resource-workspace.compact .resource-grid{max-height:none}.resource-card{position:relative;overflow:hidden;width:100%;color:inherit;text-align:left}.resource-card.active{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent),var(--shadow-sm)}.pdf-preview-panel{position:sticky;top:84px;display:grid;gap:14px;min-height:720px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-md);padding:18px}.pdf-preview-panel.compact{min-height:auto;box-shadow:none}.pdf-preview-head h2{margin:12px 0 8px;line-height:1.12}.pdf-preview-head p,.pdf-preview-empty p{margin:0;color:var(--text-muted);line-height:1.55}.pdf-preview-panel iframe{width:100%;min-height:540px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft)}.resource-reader-page{width:min(1180px,calc(100vw - var(--sidebar-width) - 48px))}.reader-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.resource-reader-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}.resource-reader-main,.resource-reader-side{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.resource-reader-main{min-height:calc(100vh - 170px);padding:12px}.resource-reader-main iframe{width:100%;min-height:calc(100vh - 196px);border:0;border-radius:var(--radius);background:var(--surface-soft)}.resource-reader-side{position:sticky;top:84px;display:grid;gap:12px;padding:18px}.resource-reader-side h1{margin:0;font-size:24px;line-height:1.14}.resource-reader-side p{margin:0;color:var(--text-muted);line-height:1.55}.reader-list{display:grid;gap:8px;margin-top:10px}.reader-list-item{min-height:40px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:8px 10px;color:var(--text-muted);text-align:left}.reader-list-item.active{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,var(--surface));color:var(--primary-dark)}.pdf-preview-panel .text-command{justify-self:start}.pdf-preview-empty{display:grid;place-items:center;align-content:center;min-height:540px;text-align:center}.metric-card:nth-child(2) .metric-icon{background:color-mix(in srgb,var(--accent) 22%,var(--surface));color:var(--accent-dark)}.level-card,.idea-card{background:var(--primary-dark)}.library-hero,.module-visual-1,.module-visual-2,.module-visual-3,.module-visual-4{background-blend-mode:multiply,normal}.module-visual-1{background:linear-gradient(135deg,#22285fc7,#56a6dc5c),var(--module-cover, url(/assets/demex-feature.jpg)) center / cover}.module-visual-2{background:linear-gradient(135deg,#56a6dcbd,#22285f75),var(--module-cover, url(/assets/demex-feature.jpg)) center / cover}.module-visual-3{background:linear-gradient(135deg,#22285fc2,#f4c54247),var(--module-cover, url(/assets/demex-feature.jpg)) center / cover}.module-visual-4{background:linear-gradient(135deg,#4f98ccb8,#22285f7a),var(--module-cover, url(/assets/demex-feature.jpg)) center / cover}.library-hero{background:linear-gradient(135deg,#22285fe6,#56a6dc80),url(/assets/bibliotecanormativa.avif) center / cover}:root[data-theme=oscuro] .search-shell,:root[data-theme=oscuro] .technical-form input,:root[data-theme=oscuro] .technical-form textarea,:root[data-theme=oscuro] .answer-option,:root[data-theme=oscuro] .beam-figure,:root[data-theme=oscuro] .pdf-preview-panel iframe,:root[data-theme=oscuro] .study-card-large,:root[data-theme=oscuro] .guide-action-list button,:root[data-theme=oscuro] .search-results-panel,:root[data-theme=oscuro] .sort-popover{background:color-mix(in srgb,var(--surface) 82%,#000000)}:root[data-theme=oscuro] .guide-navigation-screen{background:transparent;color:#4ade80}:root[data-theme=oscuro] .guide-navigation-screen.previous{background:transparent;color:#7dd3fc}:root[data-theme=oscuro] .sidebar-link.active,:root[data-theme=oscuro] .answer-option.selected,:root[data-theme=oscuro] .badge.blue,:root[data-theme=oscuro] .badge.available,:root[data-theme=oscuro] .badge.in-progress{background:color-mix(in srgb,var(--primary) 16%,var(--surface));border-color:color-mix(in srgb,var(--primary) 36%,var(--line));color:var(--primary-dark)}:root[data-theme=oscuro] .online-pill{background:#4ade8021;color:#bbf7d0}:root[data-theme=oscuro] .feedback-row p,:root[data-theme=oscuro] .equation-box,:root[data-theme=oscuro] .guide-steps span,:root[data-theme=oscuro] .profile-quick-stats span{background:color-mix(in srgb,var(--surface-soft) 76%,#000000)}:root[data-theme=oscuro] .primary-button{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 24%,var(--surface));color:var(--primary-dark)}:root[data-theme=oscuro] .level-card,:root[data-theme=oscuro] .idea-card{background:color-mix(in srgb,var(--primary) 18%,var(--surface));color:var(--text)}:root[data-theme=oscuro] .level-card span,:root[data-theme=oscuro] .level-card p,:root[data-theme=oscuro] .idea-card span,:root[data-theme=oscuro] .idea-card p{color:var(--text-muted)}:root[data-theme=oscuro] .level-card strong,:root[data-theme=oscuro] .idea-card strong{color:var(--text)}:root[data-theme=oscuro] .idea-card summary span,:root[data-theme=oscuro] .idea-card summary svg{color:var(--text)}@media(max-width:1180px){.resource-workspace{grid-template-columns:1fr}.pdf-preview-panel{position:static;min-height:auto}.pdf-preview-panel iframe{min-height:520px}}:root[data-theme=oscuro] .admin-current-user,:root[data-theme=oscuro] .admin-panel,:root[data-theme=oscuro] .admin-metric,:root[data-theme=oscuro] .admin-state,:root[data-theme=oscuro] .admin-list-item,:root[data-theme=oscuro] .admin-question-card,:root[data-theme=oscuro] .admin-asset-card,:root[data-theme=oscuro] .admin-user-card,:root[data-theme=oscuro] .admin-activity-list article,:root[data-theme=oscuro] .admin-tabs button,:root[data-theme=oscuro] .admin-field input,:root[data-theme=oscuro] .admin-field select,:root[data-theme=oscuro] .admin-field textarea,:root[data-theme=oscuro] .admin-segmented,:root[data-theme=oscuro] .admin-rubric-box,:root[data-theme=oscuro] .admin-option-row input:not([type=radio]){background:color-mix(in srgb,var(--surface) 86%,#000000)}:root[data-theme=oscuro] .admin-tabs button.active,:root[data-theme=oscuro] .admin-tabs button:hover,:root[data-theme=oscuro] .admin-list-item.active,:root[data-theme=oscuro] .admin-list-item:hover,:root[data-theme=oscuro] .admin-segmented button.active,:root[data-theme=oscuro] .admin-segmented button:hover{background:color-mix(in srgb,var(--primary) 14%,var(--surface));color:var(--primary-dark)}@media(max-width:940px){.admin-workspace,.admin-workspace.two{grid-template-columns:1fr}.admin-list,.admin-question-list,.admin-asset-list{max-height:320px}}@media(max-width:860px){.admin-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-heading,.admin-guidance{grid-template-columns:1fr}.admin-guidance div{border-left:0;border-top:1px solid var(--line);padding:14px 0 0}}@media(max-width:560px){.admin-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-tabs button{min-height:40px}.admin-form-grid,.admin-metric-grid,.admin-rubric-row{grid-template-columns:1fr}.admin-panel,.admin-metric{padding:14px}.admin-list-item{grid-template-columns:42px minmax(0,1fr)}}.admin-topline{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:18px;align-items:stretch;margin-bottom:16px}.admin-topline h1{margin:2px 0 6px;font-size:30px}.admin-topline p{margin:0;color:var(--text-muted)}.admin-gate-page{display:grid;place-items:center;min-height:min(620px,calc(100vh - 150px))}.admin-gate-panel{display:grid;gap:18px;width:min(460px,100%);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);padding:24px}.admin-gate-panel h1{margin:2px 0 6px;font-size:clamp(24px,3vw,34px)}.admin-gate-panel p{margin:0;color:var(--text-muted);line-height:1.5}.admin-gate-mark{display:grid;place-items:center;width:46px;height:46px;border:1px solid color-mix(in srgb,var(--primary) 34%,var(--line));border-radius:var(--radius);background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary-dark)}.admin-gate-fields{display:grid;gap:12px}.admin-console{display:grid;grid-template-columns:156px minmax(0,1fr);gap:12px;min-height:620px;height:min(680px,calc(100vh - 178px))}.admin-rail,.admin-board,.admin-console-column,.admin-stat-tile,.admin-focus-card,.admin-modal{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.admin-rail{display:grid;align-content:start;gap:8px;padding:10px}.admin-rail button{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:8px;min-height:42px;border:1px solid transparent;border-radius:var(--radius);background:transparent;color:var(--text-muted);padding:0 10px;text-align:left;font-weight:700}.admin-rail button:hover,.admin-rail button.active{border-color:color-mix(in srgb,var(--primary) 32%,var(--line));background:color-mix(in srgb,var(--primary) 9%,var(--surface));color:var(--primary-dark)}.admin-board{min-width:0;overflow:hidden;padding:12px}.admin-board-grid{display:grid;height:100%;min-height:0;gap:12px}.admin-board-grid.three{grid-template-columns:minmax(210px,.85fr) minmax(250px,1fr) minmax(300px,1.15fr)}.admin-board-grid.users{grid-template-columns:minmax(290px,.85fr) minmax(0,1.15fr)}.admin-console-column{display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;overflow:hidden}.admin-column-head{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line-soft);padding:14px}.admin-column-head span,.admin-stat-tile span,.admin-focus-card span,.admin-modal-head span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px}.admin-column-head h2,.admin-focus-card h2,.admin-modal-head h2{margin:3px 0 0}.admin-column-body{display:grid;align-content:start;gap:8px;min-height:0;overflow:auto;padding:12px}.admin-compact-row,.admin-question-row,.admin-mini-feed article{display:grid;gap:4px;width:100%;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:11px;text-align:left}.admin-compact-row{grid-template-columns:44px minmax(0,1fr)}.admin-compact-row span{grid-row:span 2;align-self:center;justify-self:center;max-width:44px;overflow:hidden;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:11px;text-overflow:ellipsis}.admin-compact-row strong,.admin-question-row strong,.admin-mini-feed strong{min-width:0;overflow-wrap:anywhere}.admin-compact-row small,.admin-question-row span,.admin-mini-feed span,.admin-focus-card p,.admin-focus-card small{min-width:0;overflow:hidden;color:var(--text-muted);text-overflow:ellipsis}.admin-compact-row:hover,.admin-compact-row.active,.admin-role-grid button:hover,.admin-role-grid button.active{border-color:color-mix(in srgb,var(--primary) 38%,var(--line));background:color-mix(in srgb,var(--primary) 8%,var(--surface));color:var(--primary-dark)}.admin-overview-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admin-stat-tile,.admin-focus-card{display:grid;gap:8px;padding:18px}.admin-stat-tile strong{color:var(--primary-dark);font-size:30px}.admin-focus-card{grid-column:1 / -1}.admin-focus-card.compact{grid-column:auto}.admin-detail-stack,.admin-mini-feed,.admin-question-builder,.admin-editor-box{display:grid;gap:10px}.admin-role-grid,.admin-profile-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.admin-profile-facts article{display:grid;gap:4px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--surface-soft) 44%,var(--surface));padding:10px}.admin-profile-facts span{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:10px}.admin-profile-facts strong{min-width:0;overflow-wrap:anywhere;font-size:12px}.admin-role-grid button{min-height:40px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font-weight:700}.admin-modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:18px;background:#1218177a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.admin-modal{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(780px,100%);max-height:min(760px,calc(100vh - 36px));box-shadow:var(--shadow-md);overflow:hidden;animation:modal-enter .18s ease both}.admin-modal-head,.admin-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line-soft);padding:16px}.admin-modal-footer{justify-content:flex-end;border-top:1px solid var(--line-soft);border-bottom:0}.admin-modal-body{min-height:0;overflow:auto;padding:16px}.admin-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-modal-grid.compact{grid-template-columns:1fr 140px}.admin-modal-grid .admin-field:has(textarea),.admin-modal-grid .admin-toggle{grid-column:1 / -1}.admin-confirm-text{margin:0;color:var(--text-muted);line-height:1.5}.admin-hint{border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line));border-radius:var(--radius);background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--text-muted);padding:10px 12px;font-size:13px;line-height:1.45}.admin-editor-box{border:1px solid var(--line-soft);border-radius:var(--radius);background:color-mix(in srgb,var(--surface-soft) 46%,var(--surface));padding:12px}:root[data-theme=oscuro] .admin-rail,:root[data-theme=oscuro] .admin-board,:root[data-theme=oscuro] .admin-console-column,:root[data-theme=oscuro] .admin-stat-tile,:root[data-theme=oscuro] .admin-focus-card,:root[data-theme=oscuro] .admin-modal,:root[data-theme=oscuro] .admin-compact-row,:root[data-theme=oscuro] .admin-question-row,:root[data-theme=oscuro] .admin-mini-feed article,:root[data-theme=oscuro] .admin-role-grid button,:root[data-theme=oscuro] .admin-editor-box,:root[data-theme=oscuro] .admin-profile-facts article,:root[data-theme=oscuro] .admin-gate-panel,:root[data-theme=oscuro] .admin-hint{background:color-mix(in srgb,var(--surface) 86%,#000000)}@media(max-width:1120px){.admin-console{grid-template-columns:1fr;height:auto}.admin-rail{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-board-grid.three,.admin-board-grid.users{grid-template-columns:1fr}.admin-console-column{min-height:300px}}@media(max-width:680px){.reading-index-card{max-height:260px}.back-to-top-button{right:18px;bottom:112px}.lesson-progress-pie{grid-template-columns:56px minmax(0,1fr);padding:10px 12px}.lesson-progress-pie-chart{width:56px;height:56px}.admin-topline,.admin-modal-grid,.admin-modal-grid.compact,.admin-overview-board{grid-template-columns:1fr}.admin-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-profile-facts{grid-template-columns:1fr}.admin-modal-footer{flex-direction:column-reverse}.admin-modal-footer .primary-button,.admin-modal-footer .secondary-button{width:100%}}.module-card-catalog{align-items:stretch;grid-template-columns:repeat(4,minmax(0,1fr))}.module-card-catalog .module-card{min-height:500px;padding:122px 22px 22px}.module-card-catalog .module-visual{height:96px}.module-card-catalog .module-visual:before,.module-card-catalog .module-visual:after,.module-card-catalog .module-visual span{opacity:.55}.module-card-catalog .module-card h3{display:-webkit-box;min-height:72px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;font-size:20px;line-height:1.18}.module-card-catalog .module-card p{display:-webkit-box;min-height:102px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:5;color:var(--text-muted);font-size:14px;line-height:1.45}.module-card-catalog .card-action{margin-top:auto}.module-detail-page{gap:14px}.module-detail-actions-heading{margin-bottom:16px}.module-detail-actions-heading .module-toolbar{justify-self:end}.module-detail-banner{position:relative;display:grid;align-content:end;gap:18px;min-height:230px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(90deg,#0f172ac2,#0f172a5c 58%,#0f172a29),var(--module-detail-cover, url(/assets/demex-feature.jpg)) center / cover;padding:clamp(22px,3vw,34px);color:#fff}.module-detail-banner:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.2) 0 1px,transparent 1px 100%),linear-gradient(0deg,rgba(15,23,42,.28),transparent 46%)}.module-detail-banner>*{position:relative;z-index:1}.module-banner-actions{position:absolute;top:18px;right:18px;z-index:2;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.module-tool-button.banner{min-height:40px;border-color:#ffffff57;background:#0f172a47;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.module-tool-button.banner:hover:not(:disabled){border-color:#ffffff8f;background:#ffffff2e;color:#fff}.banner-popover{border-color:#ffffff47;background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.module-detail-banner .badge{border-color:#ffffff57;background:#ffffff24;color:#fff}.module-detail-banner h2{max-width:860px;margin:12px 0 0;color:#fff;font-size:clamp(30px,4vw,52px);line-height:1.02}.module-detail-banner p{max-width:860px;margin:14px 0 0;color:#ffffffd1;font-size:16px;line-height:1.5}.module-detail-summary{display:flex;flex-wrap:wrap;gap:8px}.module-detail-summary span{display:inline-flex;align-items:center;min-height:32px;border:1px solid color-mix(in srgb,#ffffff 34%,transparent);border-radius:var(--radius);background:#ffffff24;padding:0 11px;color:#fff;font-family:JetBrains Mono,monospace;font-size:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.module-detail-page .lessons-panel{margin-top:0}.module-empty-state{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.module-empty-state .empty-state{min-height:300px}.module-tool-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:0 14px;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:12px;font-weight:800}.module-tool-button:hover:not(:disabled){border-color:color-mix(in srgb,var(--primary) 34%,var(--line));background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary-dark)}.page-shell:not(.book-shell) .book-view.single-book{grid-template-columns:42px minmax(0,1fr);min-height:680px;margin-top:22px}.page-shell:not(.book-shell) .single-book .book-content{min-height:680px;padding-top:24px}.page-shell:not(.book-shell) .book-spread,.page-shell:not(.book-shell) .book-sheet{min-height:560px}.book-compact .book-reader{justify-items:center}.book-compact .book-spread{grid-template-columns:minmax(0,1fr);width:min(860px,100%);box-shadow:0 18px 46px #0f172a1a}.book-compact .book-spread:before,.book-compact .book-spread:after,.book-compact .book-page-left{display:none}.book-compact .book-page-right{border-radius:8px;box-shadow:none}.book-compact .book-lesson-spread .book-page-left{display:grid;border-radius:8px;box-shadow:none}.book-compact .book-lesson-spread .book-page-right{display:none}.book-compact .book-sheet{overflow:auto}.book-compact .book-title-page,.book-compact .book-cover-page,.book-compact .book-index-preface,.book-compact .book-table-page,.book-compact .book-lesson-page{padding:clamp(28px,4vw,46px)}.book-compact .book-cover-page h2,.book-compact .book-table-page h2,.book-compact .book-lesson-page h2{font-size:clamp(28px,4vw,44px);line-height:1.02}.book-compact .book-table-list.nested{padding-left:0}.book-floating-toolbar{display:flex;align-items:center;gap:10px}.book-floating-toolbar .view-toggle{background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.book-floating-toolbar .view-toggle button{border:0;background:transparent;box-shadow:none}.book-floating-toolbar .view-toggle button.active{background:color-mix(in srgb,var(--primary) 12%,var(--surface))}@media(max-width:1180px){.module-card-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.module-card-catalog{grid-template-columns:1fr}.module-card-catalog .module-card{min-height:430px}.module-banner-actions{position:relative;top:auto;right:auto;justify-content:flex-start;order:-1}}
