@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;600;700;800&family=Syne:wght@400;600;700;800&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;1,9..40,300&family=Inter:wght@400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500;600&display=swap";@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--font-weight-semibold:600;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-1{margin:calc(var(--spacing) * 1)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.text-center{text-align:center}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}}.skip-link{z-index:99999;background:var(--primary);color:#fff;border-radius:0 0 8px 8px;padding:.5rem 1rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:top .2s;position:absolute;top:-100%;left:1rem}.skip-link:focus{outline-offset:2px;outline:3px solid #fff;top:0}:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:4px}a:focus-visible,button:focus-visible,[role=button]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}:root{--primary:#6366f1;--primary-hover:#4f46e5;--primary-light:#eef2ff;--primary-dim:#6366f11f;--blue:#1a4fba;--blue2:#2563eb;--blue3:#dbeafe;--blue4:#eff6ff;--green:#16a34a;--green2:#dcfce7;--orange:#ea580c;--orange2:#fff7ed;--red:#dc2626;--red2:#fee2e2;--purple:#7c3aed;--purple2:#ede9fe;--teal:#0891b2;--teal2:#cffafe;--pink:#db2777;--pink2:#fce7f3;--bg:#f0f4ff;--surface:#fff;--surface2:#f8fafc;--border:#e2e8f0;--border-faint:#f1f5f9;--text:#1e293b;--text-muted:#64748b;--text-faint:#94a3b8;--sidebar-w:260px;--sidebar-bg:#fff;--sidebar-border:#e2e8f0;--header-h:60px;--header-bg:#ffffffe0;--gray1:#1e293b;--gray2:#475569;--gray3:#94a3b8;--gray4:#e2e8f0;--gray5:#f8fafc;--white:#fff;--shadow:0 2px 16px #1e293b17;--shadow2:0 8px 40px #1e293b21;--radius:14px;--max-w:860px;--font:"Manrope", "Inter", "Segoe UI", system-ui, Arial, sans-serif;--font-display:"Manrope", "Inter", sans-serif;--font-body:"Manrope", "Inter", system-ui, sans-serif;--mono:"JetBrains Mono", "Cascadia Code", "Consolas", monospace;--transition:.22s cubic-bezier(.4,0,.2,1);--surface-2:var(--surface2);--text-2:var(--text-muted);--neon-blue:#6366f1;--neon-purple:#7c3aed;--neon-green:#16a34a;--neon-pink:#db2777;--glow-blue:none;--glow-purple:none;--glow-green:none;--glass-bg:#fffc;--glass-border:#6366f126}[data-theme=dark]{--primary:#818cf8;--primary-hover:#a5b4fc;--primary-light:#1e1b4b;--primary-dim:#818cf826;--blue:#60a5fa;--blue2:#3b82f6;--blue3:#1e3a5f;--blue4:#0f2040;--green:#4ade80;--green2:#052e16;--orange:#fb923c;--orange2:#431407;--red:#f87171;--red2:#450a0a;--purple:#a78bfa;--purple2:#2e1065;--teal:#22d3ee;--teal2:#083344;--pink:#f472b6;--pink2:#500724;--bg:#0d1117;--surface:#161b22;--surface2:#1c2128;--border:#30363d;--border-faint:#21262d;--text:#e6edf3;--text-muted:#8b949e;--text-faint:#6e7681;--sidebar-bg:#161b22;--sidebar-border:#30363d;--header-bg:#0d1117e0;--gray1:#e6edf3;--gray2:#8b949e;--gray3:#6e7681;--gray4:#30363d;--gray5:#1c2128;--white:#161b22;--shadow:0 2px 16px #0006;--shadow2:0 8px 40px #00000080;--neon-blue:#00d4ff;--neon-purple:#a855f7;--neon-green:#0f8;--neon-pink:#ff007a;--glow-blue:0 0 18px #00d4ff59, 0 0 40px #00d4ff26;--glow-purple:0 0 18px #a855f759, 0 0 40px #a855f726;--glow-green:0 0 18px #00ff8859, 0 0 40px #00ff8826;--glass-bg:#161b22bf;--glass-border:#ffffff14}.glass{-webkit-backdrop-filter:blur(16px);background:#ffffff0a;border:1px solid #ffffff14}[data-theme=dark] .glass{background:var(--glass-bg);border-color:var(--glass-border)}.glass-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}[data-theme=dark] .glass-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);border-color:var(--glass-border)}[data-theme=dark] .neon-blue{box-shadow:var(--glow-blue);border-color:#00d4ff4d!important}[data-theme=dark] .neon-purple{box-shadow:var(--glow-purple);border-color:#a855f74d!important}[data-theme=dark] .neon-green{box-shadow:var(--glow-green);border-color:#00ff884d!important}[data-theme=dark] .neon-text{color:var(--neon-blue)}[data-theme=dark] .neon-text-purple{color:var(--neon-purple)}.cyber-grid{background-image:linear-gradient(#6366f10a 1px,#0000 1px),linear-gradient(90deg,#6366f10a 1px,#0000 1px);background-size:40px 40px}[data-theme=dark] .cyber-grid{background-image:linear-gradient(#00d4ff0a 1px,#0000 1px),linear-gradient(90deg,#00d4ff0a 1px,#0000 1px)}.gradient-text{background:linear-gradient(135deg,var(--primary) 0%,#a855f7 60%,#06b6d4 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}[data-theme=dark] .gradient-text{background:linear-gradient(135deg,var(--neon-blue) 0%,var(--neon-purple) 60%,var(--neon-green) 100%);-webkit-background-clip:text;background-clip:text}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;transition:background var(--transition),color var(--transition);line-height:1.75}.app-shell{min-height:100vh;padding-top:var(--header-h);display:flex}.app-content{min-width:0;margin-left:var(--sidebar-w);flex:1}@media(max-width:1023px){.app-content{margin-left:0}}.site-header{height:var(--header-h);background:var(--header-bg);-webkit-backdrop-filter:blur(20px)saturate(180%);border-bottom:1px solid var(--border);z-index:200;transition:box-shadow var(--transition);align-items:center;gap:12px;padding:0 20px;display:flex;position:fixed;top:0;left:0;right:0}.site-header.scrolled{box-shadow:0 4px 24px #0000002e}[data-theme=dark] .site-header.scrolled{box-shadow:0 4px 24px #00000080}.site-header-inner{align-items:center;gap:12px;width:100%;display:flex}.site-logo{color:var(--text);white-space:nowrap;align-items:center;gap:8px;font-size:17px;font-weight:800;text-decoration:none;display:flex}.site-logo-icon{background:linear-gradient(135deg,var(--primary) 0%,#a855f7 100%);border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;display:flex}.site-logo strong{color:var(--primary)}.header-spacer{flex:1}.header-actions{align-items:center;gap:8px;display:flex}.btn-header{transition:background var(--transition),color var(--transition);cursor:pointer;font-size:13.5px;font-weight:600;font-family:var(--font);border:none;border-radius:999px;align-items:center;gap:6px;padding:7px 14px;text-decoration:none;display:flex}.btn-header-ghost{color:var(--text-muted);background:0 0}.btn-header-ghost:hover{background:var(--surface2);color:var(--text)}.btn-header-ai{background:linear-gradient(135deg,var(--primary) 0%,#a855f7 100%);color:#fff}.btn-header-ai:hover{opacity:.88}.btn-header-exercises{color:#10b981;background:#10b98126;border:1.5px solid #10b9814d}.btn-header-exercises:hover{background:#10b98140}.sidebar-toggle{background:var(--surface2);cursor:pointer;width:36px;height:36px;color:var(--text);transition:background var(--transition);border:none;border-radius:8px;justify-content:center;align-items:center;display:none}.sidebar-toggle:hover{background:var(--border)}.sidebar-toggle svg{width:18px;height:18px}@media(max-width:1023px){.sidebar-toggle{display:flex}}.sidebar{top:var(--header-h);width:var(--sidebar-w);height:calc(100vh - var(--header-h));background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);z-index:150;transition:transform var(--transition);flex-direction:column;display:flex;position:fixed;left:0;overflow-y:auto}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.sidebar-overlay{z-index:140;-webkit-backdrop-filter:blur(4px);transition:opacity var(--transition);background:#00000073;display:none;position:fixed;inset:0}@media(max-width:1023px){.sidebar.open~.sidebar-overlay{display:block}.sidebar{transform:translate(-100%)}.sidebar.open{box-shadow:var(--shadow2);transform:translate(0)}}.sidebar-xp{padding:16px 16px 0}.xp-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.7px;justify-content:space-between;margin-bottom:6px;font-size:11.5px;font-weight:700;display:flex}.xp-bar{background:var(--border);border-radius:99px;height:6px;overflow:hidden}.xp-fill{background:linear-gradient(90deg,var(--primary) 0%,#a855f7 100%);border-radius:99px;height:100%;transition:width .8s cubic-bezier(.4,0,.2,1)}.sidebar-nav{flex:1;padding:12px 0 20px}.sidebar-section-label{color:var(--text-faint);text-transform:uppercase;letter-spacing:1px;padding:8px 16px 4px;font-size:10.5px;font-weight:700}.sidebar-link{color:var(--text-muted);transition:background var(--transition),color var(--transition);border-radius:0;align-items:center;gap:10px;padding:9px 16px;font-size:13.5px;font-weight:500;text-decoration:none;display:flex;position:relative}.sidebar-link:hover{background:var(--surface2);color:var(--text)}.sidebar-link.active{background:var(--primary-dim);color:var(--primary);font-weight:700}.sidebar-link.active:before{content:"";background:var(--primary);border-radius:0 4px 4px 0;width:3px;position:absolute;top:4px;bottom:4px;left:0}.sidebar-link .ch-icon{border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;line-height:1;display:flex;overflow:hidden}.sidebar-done{background:var(--green);color:#fff;opacity:0;width:16px;height:16px;transition:opacity var(--transition);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;font-size:9px;display:flex}.sidebar-done.visible{opacity:1}.sidebar-progress-dot{background:var(--border);width:6px;height:6px;transition:background var(--transition);border-radius:50%;flex-shrink:0;margin-left:auto}.sidebar-progress-dot.done{background:var(--green)}.sidebar-progress-dot.active{background:var(--primary)}#scroll-progress{top:var(--header-h);z-index:201;background:linear-gradient(90deg,var(--primary) 0%,#a855f7 100%);transform-origin:0;height:3px;transition:transform .1s linear;position:fixed;left:0;right:0;transform:scaleX(0)}#page-overlay{background:var(--bg);z-index:9999;pointer-events:none;opacity:0;transition:opacity .3s;position:fixed;inset:0}#page-overlay.fade-in{opacity:1}.theme-toggle{border:1px solid var(--border);background:var(--surface);cursor:pointer;width:36px;height:36px;transition:background var(--transition),border-color var(--transition);border-radius:10px;justify-content:center;align-items:center;font-size:16px;display:flex}.theme-toggle:hover{background:var(--surface2)}.chapter-hero{color:#fff;background:var(--hero-gradient,linear-gradient(135deg, #1e3a5f 0%, #1e40af 100%));padding:52px 40px 44px;position:relative;overflow:hidden}.chapter-hero:before{content:"";pointer-events:none;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/svg%3E");position:absolute;inset:0}.chapter-hero-back{color:#ffffffb3;align-items:center;gap:6px;margin-bottom:20px;font-size:13px;font-weight:500;text-decoration:none;transition:color .15s;display:inline-flex}.chapter-hero-back:hover{color:#fff}.chapter-hero h1{margin-bottom:10px;font-size:clamp(22px,4vw,36px);font-weight:800;line-height:1.2;position:relative}.chapter-hero p{opacity:.85;max-width:560px;margin-bottom:18px;font-size:15px;position:relative}.chapter-hero-tags{flex-wrap:wrap;gap:8px;display:flex;position:relative}.chapter-hero-tag{background:#ffffff26;border:1px solid #ffffff40;border-radius:8px;padding:3px 12px;font-size:12.5px;font-weight:600}.reading-badge{background:#ffffff1f;border:1px solid #fff3;border-radius:999px;align-items:center;gap:5px;padding:4px 12px;font-size:12px;display:inline-flex;position:absolute;top:20px;right:24px}@media(max-width:600px){.reading-badge{margin-top:12px;position:static}}.nav-bar{top:var(--header-h);z-index:100;background:var(--surface);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);white-space:nowrap;scrollbar-width:none;padding:0 20px;position:sticky;overflow-x:auto;box-shadow:0 1px 12px #0000000f}.nav-bar::-webkit-scrollbar{display:none}.nav-bar ul{gap:2px;padding:8px 0;list-style:none;display:inline-flex}.nav-bar a{color:var(--text-muted);transition:background var(--transition),color var(--transition);border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600;text-decoration:none;display:inline-block}.nav-bar a:hover{background:var(--surface2);color:var(--text)}.nav-bar a.active{background:var(--primary-dim);color:var(--primary)}.wrapper{max-width:var(--max-w);margin:0 auto;padding:0 24px 100px}.slide{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);opacity:0;margin-top:24px;transition:opacity .5s,transform .5s,box-shadow .2s;overflow:hidden;transform:translateY(20px);box-shadow:0 1px 3px #0000000f,0 4px 16px #0000000a}.slide.visible{opacity:1;transform:translateY(0)}.slide.visible:hover{box-shadow:0 4px 24px #0000001a}.slide-header{border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:18px 24px 14px;display:flex}.slide-icon{text-overflow:clip;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:42px;min-width:42px;height:42px;font-size:18px;line-height:1;display:flex;overflow:hidden}.icon-blue{background:var(--blue3)}.icon-green{background:var(--green2)}.icon-orange{background:var(--orange2)}.icon-red{background:var(--red2)}.icon-purple{background:var(--purple2)}.icon-teal{background:var(--teal2)}.icon-pink{background:var(--pink2)}.slide-header h2{color:var(--text);font-size:17px;font-weight:800}.slide-header .step-num{color:var(--text-faint);letter-spacing:1px;text-transform:uppercase;font-size:11px;font-weight:700;display:block}.slide-body{padding:20px 24px 24px}.slide-body h3{color:var(--blue);align-items:center;gap:7px;margin:18px 0 8px;font-size:15px;font-weight:700;display:flex}[data-theme=dark] .slide-body h3{color:var(--blue)}.slide-body p{color:var(--text);margin-bottom:12px}.slide-body ul,.slide-body ol{margin-bottom:12px;padding-left:20px}.slide-body li{color:var(--text);margin-bottom:4px}strong{font-weight:700}pre{background:var(--surface2);border:1px solid var(--border);font-family:var(--mono);font-variant-ligatures:none;font-feature-settings:"liga" 0,"calt" 0;border-radius:10px;margin:14px 0;padding:18px 20px;font-size:13.5px;line-height:1.6;position:relative;overflow-x:auto}code{font-family:var(--mono);background:var(--surface2);border:1px solid var(--border);color:var(--primary);font-variant-ligatures:none;font-feature-settings:"liga" 0,"calt" 0;border-radius:5px;padding:1px 6px;font-size:.88em}pre code{color:inherit;background:0 0;border:none;padding:0}.kw{color:#a855f7;font-weight:600}.nu{color:#22d3ee}.st{color:#4ade80}.cm{color:var(--text-faint);font-style:italic}.fn{color:#60a5fa}[data-theme=dark] .kw{color:#c084fc}[data-theme=dark] .nu{color:#67e8f9}[data-theme=dark] .st{color:#86efac}[data-theme=dark] .fn{color:#93c5fd}.copy-btn{background:var(--border);cursor:pointer;color:var(--text-muted);transition:background var(--transition),color var(--transition);font-size:11px;font-weight:600;font-family:var(--font);border:none;border-radius:6px;padding:4px 10px;position:absolute;top:10px;right:10px}.copy-btn:hover{background:var(--primary);color:#fff}.copy-btn.copied{background:var(--green);color:#fff}.xp-toast{z-index:9999;color:#fff;opacity:0;pointer-events:none;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:20px;padding:8px 16px;font-size:14px;font-weight:700;transition:opacity .3s,transform .3s;position:fixed;bottom:80px;right:24px;transform:translateY(12px);box-shadow:0 4px 20px #6366f166}.xp-toast--show{opacity:1;transform:translateY(0)}.section-read-time{color:var(--text-muted);background:var(--surface2);white-space:nowrap;border-radius:20px;align-self:center;margin-left:auto;padding:2px 10px;font-size:12px;font-weight:500}.callout{border:1px solid #0000;border-radius:10px;margin:14px 0;padding:14px 16px 14px 44px;font-size:14px;line-height:1.65;position:relative}.callout:before{justify-content:center;align-items:center;width:20px;height:20px;font-size:15px;line-height:1;display:flex;position:absolute;top:14px;left:14px;overflow:hidden}.callout>strong:first-child,.callout>div>strong:first-child{margin-bottom:6px;font-size:14.5px;display:block}.callout pre{position:relative}.callout.warning{background:var(--orange2);color:#7c2d12;border-color:#fed7aa}.callout.warning:before{content:"⚠️"}.callout.info{background:var(--blue4);border-color:var(--blue3);color:#1e3a8a}.callout.info:before{content:"ℹ️"}.callout.success{background:var(--green2);color:#14532d;border-color:#bbf7d0}.callout.success:before{content:"✅"}.callout.tip{background:var(--purple2);color:#3b0764;border-color:#ddd6fe}.callout.tip:before{content:"💡"}.callout.purple{color:#4c1d95;background:#8b5cf614;border-color:#a78bfa}.callout.purple:before{content:"📝"}[data-theme=dark] .callout.warning{color:#fed7aa}[data-theme=dark] .callout.info{color:#bfdbfe}[data-theme=dark] .callout.success{color:#bbf7d0}[data-theme=dark] .callout.tip{color:#ddd6fe}[data-theme=dark] .callout.purple{color:#c4b5fd}.card-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:16px 0;display:grid}.card{background:var(--surface2);border:1px solid var(--border);border-radius:10px;padding:14px 16px;font-size:13.5px}.card strong{margin-bottom:6px;font-size:14.5px;font-weight:700;line-height:1.3;display:block}.card p{line-height:1.55}.card.blue{border-left:3px solid var(--blue2)}.card.green{border-left:3px solid var(--green)}.card.orange{border-left:3px solid var(--orange)}.card.red{border-left:3px solid var(--red)}.card.purple{border-left:3px solid var(--purple)}.card.teal{border-left:3px solid var(--teal,#14b8a6)}.card table{font-variant-ligatures:none;display:block;overflow-x:auto}.card-link-btn{color:#fff;background:linear-gradient(135deg,#2563eb,#0ea5e9);border-radius:8px;margin-top:10px;padding:6px 16px;font-size:13px;font-weight:600;text-decoration:none;transition:opacity .2s,transform .15s;display:inline-block}.card-link-btn:hover{opacity:.85;transform:translateY(-1px)}.bar-row{align-items:center;gap:8px;padding:4px 0;display:flex}.bar-outer{background:var(--border-faint,#ffffff0f);border-radius:6px;flex:1;height:18px;overflow:hidden}.bar-inner{border-radius:6px;min-width:2px;height:100%;transition:width 1s ease-out}.bar-inner.g-great{background:linear-gradient(90deg,#10b981,#34d399)}.bar-inner.g-good{background:linear-gradient(90deg,#0ea5e9,#38bdf8)}.bar-inner.g-medium{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.bar-inner.g-bad{background:linear-gradient(90deg,#f97316,#fb923c)}.bar-inner.g-worst{background:linear-gradient(90deg,#ef4444,#f87171)}.tag{font-weight:600}.tag.green{color:#10b981}.tag.blue{color:#0ea5e9}.tag.orange{color:#f59e0b}.tag.red{color:#ef4444}.bac-problem{background:var(--surface2);border:1.5px solid var(--border);border-radius:12px;margin-bottom:18px;padding:20px}.bac-problem__header{margin-bottom:10px;font-size:15px}.bac-problem__header strong{color:var(--primary);font-weight:800}.bac-problem>p{margin:0 0 14px;font-size:14px;line-height:1.65}.bac-problem__solution{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px 16px}.bac-problem__solution-label{color:var(--green);margin-bottom:10px;font-size:13px;font-weight:700}.bac-problem__solution pre{margin:0;position:relative}.beginner-box{background:linear-gradient(135deg,var(--blue4) 0%,#f0f9ff 100%);border:1px solid var(--blue3);border-radius:12px;margin-bottom:18px;padding:16px 18px;font-size:14px}[data-theme=dark] .beginner-box{background:linear-gradient(135deg,var(--blue4) 0%,#0f2040 100%);border-color:#1e3a5f}.bb-title{color:var(--blue2);margin-bottom:8px;font-size:14.5px;font-weight:800}.beginner-box ul{margin:6px 0 0}.table-wrap{margin:14px 0;overflow-x:auto}table{border-collapse:collapse;font-variant-ligatures:none;font-feature-settings:"liga" 0,"calt" 0;width:100%;font-size:13.5px}th,td{border:1px solid var(--border);text-align:left;padding:10px 14px}th{background:var(--surface2);color:var(--text);text-transform:uppercase;letter-spacing:.5px;font-size:12.5px;font-weight:700}tr:nth-child(2n) td{background:var(--border-faint)}.quiz-wrap{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);margin:24px 0;padding:24px}.quiz-header{align-items:center;gap:12px;margin-bottom:16px;font-size:13px;font-weight:600;display:flex}.quiz-lbl{background:var(--primary-dim);color:var(--primary);border-radius:999px;padding:3px 12px}.quiz-prog{color:var(--text-muted);margin-left:auto}.quiz-sc{color:var(--green);font-weight:700}.quiz-q{color:var(--text);margin-bottom:16px;font-size:16px;font-weight:700;line-height:1.5}.quiz-opts{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.quiz-opt{border:1.5px solid var(--border);background:var(--surface2);cursor:pointer;text-align:left;font-size:14.5px;font-family:var(--font);color:var(--text);border-radius:10px;align-items:flex-start;gap:12px;width:100%;padding:12px 16px;transition:all .15s;display:flex}.quiz-opt:hover{border-color:var(--primary);background:var(--primary-dim)}.quiz-opt.correct{border-color:var(--green);background:var(--green2);color:#14532d}.quiz-opt.wrong{border-color:var(--red);background:var(--red2);color:#7f1d1d}.quiz-opt.disabled{opacity:.5;cursor:default}[data-theme=dark] .quiz-opt.correct{color:#bbf7d0}[data-theme=dark] .quiz-opt.wrong{color:#fca5a5}.quiz-opt-letter{background:var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:12px;font-weight:800;display:flex}.quiz-opt.correct .quiz-opt-letter{background:var(--green);color:#fff}.quiz-opt.wrong .quiz-opt-letter{background:var(--red);color:#fff}.quiz-exp{border-radius:10px;margin-bottom:14px;padding:12px 16px;font-size:14px}.quiz-exp-ok{background:var(--green2);color:#14532d;border:1px solid #bbf7d0}.quiz-exp-fail{background:var(--red2);color:#7f1d1d;border:1px solid #fca5a5}[data-theme=dark] .quiz-exp-ok{color:#bbf7d0}[data-theme=dark] .quiz-exp-fail{color:#fca5a5}.quiz-nav{justify-content:space-between;align-items:center;gap:10px;display:flex}.quiz-btn-nav{border:1.5px solid var(--border);background:var(--surface2);color:var(--text);cursor:pointer;font-size:13.5px;font-weight:600;font-family:var(--font);border-radius:8px;padding:9px 18px;transition:all .15s}.quiz-btn-nav:hover{border-color:var(--primary);color:var(--primary)}.quiz-btn-nav.primary{background:var(--primary);border-color:var(--primary);color:#fff}.quiz-btn-nav.primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.quiz-diff-badge{vertical-align:middle;border-radius:999px;margin-right:8px;padding:2px 10px;font-size:11px;font-weight:700;display:inline-block}.quiz-diff-facil{background:var(--green2);color:var(--green)}.quiz-diff-mediu{background:var(--orange2);color:var(--orange)}.quiz-diff-dificil{background:var(--red2);color:var(--red)}.quiz-finish{text-align:center}.qf-emoji{margin-bottom:12px;font-size:3.5rem}.qf-score{color:var(--text);font-size:2.5rem;font-weight:900}.qf-pct{color:var(--primary);margin-bottom:8px;font-size:1.15rem;font-weight:700}.qf-msg{color:var(--text-muted);margin-bottom:20px;font-size:15px}.qf-breakdown{flex-wrap:wrap;justify-content:center;gap:16px;margin:8px 0 12px;display:flex}.qf-breakdown span{border-radius:999px;padding:5px 14px;font-size:13px;font-weight:700}.qfb-correct{background:var(--green2);color:var(--green)}.qfb-wrong{background:var(--red2);color:var(--red)}.qfb-skipped{background:var(--orange2);color:var(--orange)}.qf-skip-note{color:var(--orange);background:var(--orange2);border-radius:8px;margin-bottom:10px;padding:6px 14px;font-size:13px;display:inline-block}.quiz-stats{flex-wrap:wrap;gap:12px;margin-bottom:14px;font-size:12.5px;font-weight:700;display:flex}.qs-correct{color:var(--green)}.qs-skipped{color:var(--orange)}.qs-left{color:var(--text-muted)}.quiz-dots{flex-wrap:wrap;gap:6px;margin-bottom:18px;display:flex}.quiz-dot{border:2px solid var(--border);background:var(--surface2);cursor:pointer;border-radius:50%;flex-shrink:0;width:14px;height:14px;padding:0;transition:all .15s}.quiz-dot:hover{border-color:var(--primary)}.quiz-dot.qd-current{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-dim)}.quiz-dot.qd-correct{background:var(--green);border-color:var(--green)}.quiz-dot.qd-wrong{background:var(--red);border-color:var(--red)}.quiz-dot.qd-skipped{background:var(--orange);border-color:var(--orange)}.quiz-btn-skip{border-color:var(--orange);color:var(--orange)}.quiz-btn-skip:hover{background:var(--orange2);border-color:var(--orange);color:var(--orange)}.quiz-btn-unskip{border-color:var(--blue2);color:var(--blue2)}.quiz-btn-unskip:hover{background:var(--blue3);border-color:var(--blue2);color:var(--blue2)}.quiz-exp-skip{background:var(--orange2);border:1px solid var(--orange);color:var(--orange);border-radius:10px;margin-bottom:14px;padding:10px 14px;font-size:13.5px}.qb-small{padding:6px 12px;font-size:12px}.audio-toggle-btn,#audio-player,.ab-player,.ab-reopen-fab{display:none!important}.audio-toggle-btn{background:linear-gradient(135deg,var(--primary) 0%,#a855f7 100%);color:#fff;cursor:pointer;z-index:300;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:20px;transition:transform .2s,box-shadow .2s;display:flex;position:fixed;bottom:80px;right:20px;box-shadow:0 4px 20px #6366f173}.audio-toggle-btn:hover{transform:scale(1.08);box-shadow:0 6px 28px #6366f18c}#audio-player{background:var(--surface);border:1px solid var(--border);width:300px;box-shadow:var(--shadow2);z-index:300;border-radius:16px;transition:opacity .2s,transform .2s;position:fixed;bottom:136px;right:20px;overflow:hidden}#audio-player.hidden{opacity:0;pointer-events:none;transform:translateY(10px)scale(.97)}.ap-header{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:12px 14px 10px;display:flex}.ap-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.ap-time{color:var(--text-muted);font-size:11.5px}.ap-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:2px 4px;font-size:16px}.ap-close:hover{color:var(--text)}.ap-section-name{color:var(--text-muted);min-height:28px;padding:8px 14px;font-size:12px;font-style:italic}.ap-progress-wrap{align-items:center;gap:8px;padding:0 14px 10px;display:flex}.ap-progress-bar{background:var(--border);border-radius:99px;flex:1;height:4px;overflow:hidden}.ap-progress-fill{background:linear-gradient(90deg,var(--primary) 0%,#a855f7 100%);border-radius:99px;height:100%;transition:width .5s}.ap-progress-label{color:var(--text-faint);white-space:nowrap;font-size:11px}.ap-controls{align-items:center;gap:8px;padding:8px 14px 14px;display:flex}.ap-btn{border:1px solid var(--border);background:var(--surface2);width:36px;height:36px;color:var(--text);cursor:pointer;transition:background var(--transition),border-color var(--transition);border-radius:50%;justify-content:center;align-items:center;font-size:16px;display:flex}.ap-btn:hover{background:var(--primary-dim);border-color:var(--primary);color:var(--primary)}.ap-btn.ap-play{background:linear-gradient(135deg,var(--primary) 0%,#a855f7 100%);color:#fff;border-color:#0000;width:40px;height:40px}.ap-speed{background:var(--surface2);border:1px solid var(--border);color:var(--text);font-size:12px;font-weight:600;font-family:var(--font);cursor:pointer;border-radius:8px;margin-left:auto;padding:4px 8px}.chapter-footer-nav{bottom:0;left:var(--sidebar-w);background:var(--surface);border-top:1px solid var(--border);z-index:100;align-items:center;height:56px;display:flex;position:fixed;right:0;box-shadow:0 -4px 20px #0000000f}@media(max-width:1023px){.chapter-footer-nav{left:0}}.cfn-btn{color:var(--text-muted);transition:color var(--transition),background var(--transition);flex:1;align-items:center;gap:10px;height:100%;padding:0 20px;font-size:13px;font-weight:600;text-decoration:none;display:flex}.cfn-btn:hover{color:var(--primary);background:var(--primary-dim)}.cfn-btn.cfn-disabled{opacity:0;pointer-events:none}.cfn-prev{border-right:1px solid var(--border)}.cfn-next{border-left:1px solid var(--border);justify-content:flex-end}.cfn-home{border-left:1px solid var(--border);border-right:1px solid var(--border);flex:0 0 56px;justify-content:center;font-size:18px}.cfn-label{flex-direction:column;display:flex}.cfn-label small{opacity:.7;font-size:10.5px;font-weight:500}.cfn-arrow{flex-shrink:0;font-size:18px}.go-top-btn{background:var(--surface);border:1.5px solid var(--border);width:40px;height:40px;color:var(--text-muted);cursor:pointer;box-shadow:var(--shadow);z-index:200;opacity:0;pointer-events:none;border-radius:50%;justify-content:center;align-items:center;font-size:20px;font-weight:700;transition:opacity .2s,transform .2s;display:flex;position:fixed;bottom:80px;right:80px;transform:translateY(10px)}.go-top-btn.visible{opacity:1;pointer-events:all;transform:translateY(0)}.go-top-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.hero{color:#fff;background:linear-gradient(135deg,#0f172a,#1e1b4b 40%,#312e81,#4c1d95);padding:80px 40px 72px;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background:url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Ccircle cx='40' cy='40' r='4'/%3E%3C/g%3E%3C/svg%3E");position:absolute;inset:0}.hero-inner{grid-template-columns:1fr 1fr;align-items:center;gap:48px;max-width:900px;margin:0 auto;display:grid;position:relative}@media(max-width:768px){.hero-inner{grid-template-columns:1fr}.hero-graphic{display:none}}.hero-eyebrow{letter-spacing:1px;text-transform:uppercase;color:#a5b4fc;background:#818cf833;border:1px solid #818cf84d;border-radius:999px;margin-bottom:18px;padding:4px 14px;font-size:12px;font-weight:700;display:inline-block}.hero-inner h1{margin-bottom:18px;font-size:clamp(28px,5vw,46px);font-weight:900;line-height:1.1}.hero-inner h1 span{color:#a5b4fc}.hero-desc{opacity:.82;margin-bottom:22px;font-size:16px;line-height:1.65}.hero-badges{flex-wrap:wrap;gap:8px;margin-bottom:28px;display:flex}.hero-badge{background:#ffffff1a;border:1px solid #ffffff2e;border-radius:8px;padding:4px 12px;font-size:12.5px;font-weight:600}.hero-actions{flex-wrap:wrap;gap:10px;display:flex}.btn-hero-primary{color:#fff;background:linear-gradient(135deg,#818cf8,#a855f7);border-radius:12px;padding:13px 26px;font-size:15px;font-weight:700;text-decoration:none;transition:opacity .2s,transform .2s;display:inline-block;box-shadow:0 4px 20px #6366f166}.btn-hero-primary:hover{opacity:.9;transform:translateY(-1px)}.btn-hero-secondary{color:#fff;background:#ffffff1a;border:1.5px solid #ffffff40;border-radius:12px;padding:12px 22px;font-size:14.5px;font-weight:600;text-decoration:none;transition:background .2s;display:inline-block}.btn-hero-secondary:hover{background:#ffffff2e}.btn-hero-ghost{background:#ffffff2e;border-color:#fff6}.hero-onboarding{color:#ffffffc7;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;margin-top:1rem;padding:.5rem 1rem;font-size:.88rem;display:inline-block}.hero-onboarding strong{color:#fff}.hero-onboarding a{color:#ffffffe6;text-decoration:underline}.hero-onboarding a:hover{color:#fff}.table-scroll{overflow-x:auto}.hero-graphic{justify-content:flex-end;align-items:center;display:flex}.hero-code-preview{background:#0d1117cc;border:1px solid #818cf84d;border-radius:14px;width:100%;max-width:440px;overflow:hidden;box-shadow:0 20px 60px #0006}.hcp-bar{background:#161b22e6;border-bottom:1px solid #818cf826;align-items:center;gap:8px;padding:10px 16px;display:flex}.hcp-dot{border-radius:50%;width:12px;height:12px}.hcp-dot.r{background:#f87171}.hcp-dot.y{background:#fbbf24}.hcp-dot.g{background:#4ade80}.hcp-title{color:#ffffff73;margin-left:6px;font-size:12px}.hcp-code{font-family:var(--mono);color:#e6edf3;background:0 0;border:none;border-radius:0;margin:0;padding:18px 20px;font-size:13px;line-height:1.65}.stats-strip{background:var(--surface);border-bottom:1px solid var(--border);align-items:center;padding:0;display:flex}.stat-item{flex-direction:column;flex:1;align-items:center;padding:18px 16px;display:flex}.stat-num{color:var(--primary);font-size:24px;font-weight:900;line-height:1}.stat-lbl{color:var(--text-muted);margin-top:3px;font-size:12px;font-weight:600}.stat-sep{background:var(--border);flex-shrink:0;width:1px;height:40px}.section-heading{text-align:center;max-width:1140px;margin:0 auto;padding:52px 24px 32px}.section-title{color:var(--text);margin-bottom:10px;font-size:clamp(22px,4vw,32px);font-weight:900}.section-subtitle{color:var(--text-muted);font-size:16px}.chapters-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;max-width:1140px;margin:0 auto;padding:0 24px 60px;display:grid}.chapter-card{background:var(--surface);border:1.5px solid var(--border);color:inherit;border-radius:20px;flex-direction:column;padding:28px;text-decoration:none;transition:transform .22s,box-shadow .22s,border-color .22s;display:flex;position:relative;overflow:hidden}.chapter-card:hover{box-shadow:var(--shadow2);transform:translateY(-4px)}.chapter-card-stripe{height:5px;position:absolute;top:0;left:0;right:0}.ch-blue .chapter-card-stripe{background:linear-gradient(90deg,#2563eb,#60a5fa)}.ch-green .chapter-card-stripe{background:linear-gradient(90deg,#16a34a,#4ade80)}.ch-orange .chapter-card-stripe{background:linear-gradient(90deg,#ea580c,#fb923c)}.ch-red .chapter-card-stripe{background:linear-gradient(90deg,#dc2626,#f87171)}.ch-purple .chapter-card-stripe{background:linear-gradient(90deg,#7c3aed,#a78bfa)}.ch-teal .chapter-card-stripe{background:linear-gradient(90deg,#0891b2,#22d3ee)}.ch-pink .chapter-card-stripe{background:linear-gradient(90deg,#db2777,#f472b6)}.ch-indigo .chapter-card-stripe{background:linear-gradient(90deg,#4338ca,#818cf8)}.chapter-card-header{align-items:center;gap:14px;margin-top:10px;margin-bottom:10px;display:flex}.chapter-num{background:var(--surface2);border:1.5px solid var(--border);width:42px;height:42px;color:var(--text-muted);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:800;display:flex}.chapter-card h2{color:var(--text);margin-bottom:3px;font-size:16px;font-weight:800}.chapter-card p{color:var(--text-muted);font-size:13px}.chapter-card-body{color:var(--text-muted);flex:1;font-size:13.5px;line-height:1.6}.chapter-card-footer{border-top:1px solid var(--border-faint);justify-content:space-between;align-items:center;margin-top:18px;padding-top:14px;font-size:12.5px;display:flex}.chapter-card-arrow{color:var(--primary);font-size:16px;transition:transform .2s}.chapter-card:hover .chapter-card-arrow{transform:translate(3px)}.bac-cta{max-width:1140px;margin:0 auto;padding:0 24px 80px}.bac-cta-inner{color:#fff;background:linear-gradient(135deg,#1e1b4b,#312e81,#4c1d95);border-radius:20px;align-items:center;gap:40px;padding:44px 48px;display:flex;position:relative;overflow:hidden}@media(max-width:640px){.bac-cta-inner{flex-direction:column;padding:32px 24px}}.bac-cta-text h2{margin-bottom:10px;font-size:22px;font-weight:900}.bac-cta-text p{opacity:.8;font-size:14px;line-height:1.6}.bac-cta-btn{color:#312e81;white-space:nowrap;background:#fff;border-radius:12px;flex-shrink:0;align-items:center;gap:8px;padding:14px 28px;font-size:15px;font-weight:800;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 4px 20px #0003}.bac-cta-btn:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0000004d}.page-stats{align-items:center;gap:12px;margin-top:16px;display:flex}.like-btn{cursor:pointer;color:#fff;font-size:13px;font-weight:600;font-family:var(--font);background:#ffffff26;border:1px solid #ffffff4d;border-radius:999px;align-items:center;gap:6px;padding:5px 14px;transition:background .15s,transform .15s;display:flex}.like-btn:hover{background:#ffffff40;transform:scale(1.04)}@keyframes burst{0%{transform:scale(1)}40%{transform:scale(1.3)}to{transform:scale(1)}}.like-btn.burst{animation:.35s burst}.view-counter{color:#ffffffb3;align-items:center;gap:5px;font-size:13px;display:flex}.sort-demo{align-items:flex-end;gap:4px;height:120px;display:flex}.sort-bar{background:var(--primary);cursor:default;border-radius:4px 4px 0 0;flex:1;transition:height .3s,background .15s;position:relative}.sort-bar.comparing{background:var(--orange)}.sort-bar.swapping{background:var(--red)}.sort-bar.sorted{background:var(--green)}.sort-controls{flex-wrap:wrap;gap:10px;margin:14px 0;display:flex}.sort-btn{border:1.5px solid var(--border);background:var(--surface2);color:var(--text);cursor:pointer;font-size:13px;font-weight:600;font-family:var(--font);border-radius:8px;padding:8px 16px;transition:all .15s}.sort-btn:hover{border-color:var(--primary);color:var(--primary)}.sort-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.speed-wrap{flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0;display:flex}.speed-wrap label{color:var(--text-muted);font-size:13px;font-weight:600}.speed-label{color:var(--primary);min-width:80px;font-size:12px;font-weight:700}.vec-container,.matrix-viz{overflow-x:auto}.vec-cell,.matrix-cell{border:2px solid var(--border);width:44px;height:44px;font-family:var(--mono);background:var(--surface2);color:var(--text);border-radius:8px;justify-content:center;align-items:center;margin:2px;font-size:15px;font-weight:700;transition:all .25s;display:inline-flex}.vec-cell.highlight{background:var(--primary-dim);border-color:var(--primary);color:var(--primary)}.vec-cell.found{background:var(--green2);border-color:var(--green);color:var(--green)}.vec-cell.comparing{background:var(--orange2);border-color:var(--orange);color:var(--orange)}.tree{flex-direction:column;align-items:center;gap:0;display:flex;overflow-x:auto}.tree-row{justify-content:center;gap:16px;margin:0;display:flex}.tree-node{background:var(--primary-dim);border:2px solid var(--primary);width:44px;height:44px;font-family:var(--mono);color:var(--primary);opacity:0;border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:700;transition:opacity .3s,transform .3s;display:flex;position:relative;transform:scale(.7)}.tree-node.visible{opacity:1;transform:scale(1)}@media(max-width:640px){.wrapper{padding:0 14px 80px}.slide-header,.slide-body{padding-left:16px;padding-right:16px}.chapter-hero{padding:36px 20px 32px}.chapters-grid{grid-template-columns:1fr}.section-heading{padding:36px 16px 24px}.bac-cta-inner{padding:28px 20px}pre{white-space:pre;max-width:100%}.slide-body table,.wrapper table{-webkit-overflow-scrolling:touch;max-width:100%;display:block;overflow-x:auto}.nav-bar a{align-items:center;min-height:44px;padding:10px 12px;display:inline-flex}.cfn-btn{min-height:48px}.btn-header{min-height:44px;padding:8px 12px}.section-read-time{display:none}}:root{--surface-2:var(--surface2);--shadow-md:var(--shadow2)}.chapter-topics{margin:0;padding:0;list-style:none}.chapter-topics li{color:var(--text-muted);align-items:center;gap:6px;padding:4px 0;font-size:12.5px;display:flex}.chapter-topics li:before{content:"›";color:var(--primary);font-weight:700}.go{color:var(--primary);transition:transform var(--transition);font-size:12.5px;font-weight:700}.chapter-card:hover .go{transform:translate(3px)}.btn-bac-cta{color:var(--primary);transition:transform var(--transition),box-shadow var(--transition);background:#fff;border-radius:999px;align-items:center;padding:12px 28px;font-size:15px;font-weight:800;text-decoration:none;display:inline-flex}.btn-bac-cta:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0000004d}.bac-cta h2{margin-bottom:12px;font-size:26px;font-weight:900}.bac-cta p{opacity:.82;max-width:480px;margin-bottom:24px;font-size:14.5px;line-height:1.6}.o-table{border-collapse:collapse;border-radius:var(--radius);border:1px solid var(--border);width:100%;font-size:14px;overflow:hidden}.o-table thead th{background:var(--surface2);text-align:left;border-bottom:2px solid var(--border);color:var(--text);padding:11px 16px;font-weight:700}.o-table tbody td{border-bottom:1px solid var(--border);color:var(--text);padding:10px 16px}.o-table tbody tr:last-child td{border-bottom:none}.o-table .row-green td:first-child{color:var(--green);font-weight:700}.o-table .row-yellow td:first-child{color:var(--orange);font-weight:700}.o-table .row-red td:first-child{color:var(--red);font-weight:700}.quiz-float-btn{z-index:1100;background:linear-gradient(135deg,var(--primary) 0%,#a855f7 100%);color:#fff;cursor:pointer;border:none;border-radius:50px;align-items:center;gap:7px;padding:10px 18px 10px 13px;font-size:14px;font-weight:700;transition:transform .2s,box-shadow .2s;display:flex;position:fixed;bottom:164px;right:20px;box-shadow:0 4px 20px #6366f180}.quiz-float-btn:hover{transform:scale(1.08);box-shadow:0 6px 28px #6366f1a6}.quiz-float-btn span{letter-spacing:.3px}.quiz-modal-overlay{z-index:2000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000000bf;justify-content:center;align-items:center;padding:16px;animation:.22s qmo-in;display:none;position:fixed;inset:0}.quiz-modal-overlay.open{display:flex}@keyframes qmo-in{0%{opacity:0}to{opacity:1}}.quiz-modal{background:var(--surface);border-radius:20px;flex-direction:column;width:100%;max-width:680px;max-height:90vh;animation:.25s cubic-bezier(.34,1.56,.64,1) qm-in;display:flex;overflow:hidden;box-shadow:0 24px 64px #00000080}@keyframes qm-in{0%{opacity:0;transform:scale(.92)translateY(20px)}to{opacity:1;transform:none}}.qm-header{background:var(--primary-dim);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.qm-title{color:var(--text);font-size:16px;font-weight:800}.qm-close{background:var(--surface2);color:var(--text-muted);cursor:pointer;width:30px;height:30px;transition:background var(--transition),color var(--transition);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:14px;display:flex}.qm-close:hover{background:var(--border);color:var(--text)}.qm-body{flex:1;padding:24px;overflow-y:auto}body.has-chapter-nav .go-top-btn{bottom:84px}body.has-chapter-nav .audio-toggle-btn{bottom:146px}body.has-chapter-nav .quiz-float-btn{bottom:220px}@media(max-width:480px){.quiz-float-btn{padding:10px 14px;bottom:148px;right:16px}.quiz-float-btn span{display:none}body.has-chapter-nav .audio-toggle-btn{bottom:138px}body.has-chapter-nav .quiz-float-btn{bottom:204px}}.ab-sec-target{border-radius:var(--radius);transition:box-shadow .45s,background .45s}.ab-sec-target.ab-active{box-shadow:inset 4px 0 0 var(--primary),inset 0 0 0 1px #6366f11a;background:#6366f10a;animation:.55s forwards abSecFade}@keyframes abSecFade{0%{background:#6366f11f}to{background:#6366f10a}}.ab-player{z-index:995;-webkit-user-select:none;user-select:none;background:#0f172a;border-top:1px solid #ffffff14;position:fixed;bottom:56px;left:0;right:0;box-shadow:0 -4px 24px #0006}.ab-player.ab-hidden{display:none}.ab-info-row{align-items:center;gap:8px;padding:8px 14px 3px;display:flex}.ab-track-info{flex:1;min-width:0;overflow:hidden}.ab-lesson-lbl{text-transform:uppercase;letter-spacing:1px;color:#475569;white-space:nowrap;text-overflow:ellipsis;font-size:9.5px;font-weight:700;overflow:hidden}.ab-sec-name{color:#cbd5e1;white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:13px;font-weight:600;overflow:hidden}.ab-top-btns{flex-shrink:0;gap:5px;display:flex}.ab-icon-btn{cursor:pointer;color:#64748b;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:7px;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;transition:background .15s,color .15s;display:flex}.ab-icon-btn:hover{color:#e2e8f0;background:#ffffff24}.ab-icon-on{border-color:var(--primary)!important;color:#818cf8!important;background:#6366f14d!important}.ab-prog-row{align-items:center;gap:8px;padding:3px 14px;display:flex}.ab-time{color:#475569;font-size:10.5px;font-weight:700;font-family:var(--mono);flex-shrink:0;min-width:32px}.ab-prog-track{cursor:pointer;background:#ffffff1a;border-radius:999px;flex:1;height:4px;transition:height .15s,margin .15s;position:relative}.ab-prog-track:hover{height:6px}.ab-prog-fill{background:linear-gradient(90deg,var(--primary),#a855f7);pointer-events:none;border-radius:999px;height:100%;transition:width .12s linear}.ab-prog-thumb{pointer-events:none;opacity:0;background:#fff;border-radius:50%;width:13px;height:13px;transition:opacity .15s;position:absolute;top:50%;left:0;transform:translate(-50%,-50%);box-shadow:0 1px 4px #00000080}.ab-prog-track:hover .ab-prog-thumb{opacity:1}.ab-ctrl-row{justify-content:center;align-items:center;gap:4px;padding:3px 14px 9px;display:flex}.ab-btn{color:#64748b;cursor:pointer;width:34px;height:34px;font-size:17px;font-family:var(--font);background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s,transform .1s;display:flex}.ab-btn:hover{color:#e2e8f0;background:#ffffff17}.ab-btn:active{transform:scale(.9)}.ab-play-btn{box-shadow:0 2px 12px #6366f166;background:var(--primary)!important;color:#fff!important;width:44px!important;height:44px!important;font-size:18px!important}.ab-play-btn:hover{opacity:.85!important;transform:scale(1.07)!important}.ab-skip-btn{font-weight:800;width:42px!important;font-size:12px!important}.ab-speeds{gap:3px;margin-left:8px;display:flex}.ab-spd{color:#475569;cursor:pointer;font-size:10px;font-weight:700;font-family:var(--font);white-space:nowrap;background:0 0;border:1px solid #ffffff1f;border-radius:5px;padding:3px 6px;transition:all .15s}.ab-spd:hover{color:#e2e8f0;border-color:#ffffff4d}.ab-spd-on{border-color:var(--primary)!important;color:#818cf8!important;background:#6366f159!important}.ab-sec-list{border-top:1px solid #0000;max-height:0;transition:max-height .35s cubic-bezier(.4,0,.2,1);overflow:hidden}.ab-sec-list.ab-sec-list-open{border-top-color:#ffffff12;max-height:220px;overflow-y:auto}.ab-sec-list::-webkit-scrollbar{width:4px}.ab-sec-list::-webkit-scrollbar-thumb{background:#334155;border-radius:4px}.ab-li{cursor:pointer;border-bottom:1px solid #ffffff0a;align-items:center;gap:9px;padding:8px 14px;font-size:12.5px;transition:background .15s;display:flex}.ab-li:hover{background:#ffffff0f}.ab-li-on{background:#6366f12e!important}.ab-li-n{color:#334155;min-width:18px;font-size:10px;font-weight:700;font-family:var(--mono)}.ab-li-on .ab-li-n{color:#818cf8}.ab-li-title{color:#64748b;white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.ab-li-on .ab-li-title{color:#e2e8f0;font-weight:600}.ab-li-t{color:#334155;font-size:10px;font-family:var(--mono)}.ab-li-on .ab-li-t{color:#818cf8}.ab-reopen-fab{z-index:994;background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:22px;transition:transform .2s,box-shadow .2s;display:flex;position:fixed;bottom:84px;left:28px;box-shadow:0 4px 20px #6366f180}.ab-reopen-fab:hover{transform:scale(1.1);box-shadow:0 6px 28px #6366f1b3}body.has-audiobook.has-chapter-nav .go-top-btn{bottom:184px}body.has-audiobook.has-chapter-nav .quiz-float-btn{bottom:250px}@media(max-width:620px){.ab-lesson-lbl,.ab-speeds{display:none}}@media(max-width:480px){.ab-player{bottom:56px}.ab-info-row{padding:6px 10px 2px}.ab-prog-row{padding:2px 10px}.ab-ctrl-row{gap:2px;padding:3px 10px 7px}.ab-prev-btn,.ab-next-btn{display:none}body.has-audiobook.has-chapter-nav .go-top-btn{bottom:180px}body.has-audiobook.has-chapter-nav .quiz-float-btn{bottom:240px}}.site-footer{text-align:center;color:var(--text-muted);border-top:1px solid var(--border);background:var(--surface);padding:36px 24px;font-size:13.5px}.site-footer a{color:var(--primary);text-decoration:none}.site-footer a:hover{text-decoration:underline}.site-footer p{margin-bottom:6px}@media print{.sidebar,.site-header,.audio-toggle-btn,#audio-player,.go-top-btn,.chapter-footer-nav,#scroll-progress{display:none!important}.app-content{margin-left:0}.slide{opacity:1;transform:none}}.search-trigger{background:var(--surface2);border:1.5px solid var(--border);color:var(--text-muted);font-size:14px;font-family:var(--font);cursor:pointer;transition:background var(--transition),color var(--transition),border-color var(--transition),box-shadow var(--transition);border-radius:10px;align-items:center;gap:8px;padding:8px 20px;display:flex}.search-trigger:hover{background:var(--surface);color:var(--text);border-color:var(--primary);box-shadow:0 0 0 3px #6366f11a}.search-trigger kbd{border:1px solid var(--border);background:var(--surface);font-size:11px;font-family:var(--mono);opacity:.7;border-radius:4px;padding:1px 5px}@media(max-width:600px){.search-trigger{display:none}}.search-modal{z-index:2000;justify-content:center;align-items:flex-start;padding-top:80px;display:none;position:fixed;inset:0}.search-modal.open{display:flex}.search-backdrop{-webkit-backdrop-filter:blur(6px);background:#00000080;position:absolute;inset:0}.search-dialog{z-index:1;background:var(--surface);border:1px solid var(--border);border-radius:16px;width:min(580px,100vw - 32px);position:relative;overflow:hidden;box-shadow:0 24px 64px #0000004d}.search-header{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:16px 20px;display:flex}.search-icon{color:var(--text-muted);flex-shrink:0;font-size:18px}#searchInput{font-size:16px;font-family:var(--font);color:var(--text);background:0 0;border:none;outline:none;flex:1}#searchResults{max-height:360px;padding:8px;list-style:none;overflow-y:auto}#searchResults li{cursor:pointer;transition:background var(--transition);border-radius:8px;align-items:center;gap:10px;padding:10px 12px;display:flex}#searchResults li:hover,#searchResults li.active{background:var(--surface2)}#searchResults .sr-title{font-size:14px;font-weight:600}#searchResults .sr-subtitle{color:var(--text-muted);font-size:12px}.search-footer{border-top:1px solid var(--border);color:var(--text-faint);gap:16px;padding:10px 20px;font-size:12px;display:flex}.chapter-nav{gap:16px;margin-top:48px;padding:0 0 32px;display:flex}.chapter-nav-btn{background:var(--surface);border:1px solid var(--border);color:var(--text);transition:border-color var(--transition),box-shadow var(--transition),background var(--transition);border-radius:12px;flex:1;align-items:center;gap:12px;padding:16px 20px;text-decoration:none;display:flex}.chapter-nav-btn:hover{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-dim);background:var(--surface2)}.chapter-nav-btn.next{text-align:right;justify-content:flex-end}.chapter-nav-btn .nav-label{text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted);font-size:11px;font-weight:700}.chapter-nav-btn .nav-title{font-size:15px;font-weight:700}.chapter-nav-btn .nav-arrow{color:var(--primary);flex-shrink:0;font-size:20px}.breadcrumbs{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px;font-size:13px;display:flex}.breadcrumbs a{color:var(--text-muted);transition:color var(--transition);text-decoration:none}.breadcrumbs a:hover{color:var(--primary)}.breadcrumbs-sep{opacity:.5}.bt-cell{background:var(--surface2);border:1px solid var(--border);cursor:default;-webkit-user-select:none;user-select:none;border-radius:6px;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.5rem;transition:background .15s,border-color .15s,transform .1s;display:flex}.bt-cell:nth-child(odd of.bt-row-even){background:#f0d9b5}.bt-cell:nth-child(2n of.bt-row-even){background:#b58863}.bt-cell.queen{color:#1e293b;font-size:1.6rem;background:#dcfce7!important;border-color:#16a34a!important}.bt-cell.trying{background:#fef9c3!important;border-color:#ca8a04!important}.bt-cell.fail{background:#fef2f2!important;border-color:#ef4444!important}.bt-cell.safe{background:#f0fdf4!important;border-color:#22c55e!important}[data-theme=dark] .bt-cell{background:#1e293b;border-color:#334155}[data-theme=dark] .bt-cell.queen{color:#86efac;background:#14532d!important;border-color:#22c55e!important}[data-theme=dark] .bt-cell.trying{background:#422006!important;border-color:#d97706!important}[data-theme=dark] .bt-cell.fail{background:#450a0a!important;border-color:#dc2626!important}[data-theme=dark] .bt-cell.safe{background:#052e16!important;border-color:#16a34a!important}.speed-wrap{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.speed-wrap input[type=range]{width:120px;accent-color:var(--primary)}.speed-label{color:var(--text);font-weight:600}.matrix-viz{background:var(--surface);border:1px solid var(--border);border-radius:10px;gap:4px;margin:16px auto;padding:8px;display:inline-grid}.matrix-viz-wrap{text-align:center;overflow-x:auto}.mx-cell{width:46px;height:46px;font-family:var(--font-mono,"JetBrains Mono", monospace);background:var(--surface2);border:1px solid var(--border);color:var(--text-muted);border-radius:5px;justify-content:center;align-items:center;font-size:.8rem;font-weight:600;transition:background .2s,border-color .2s,color .2s,transform .15s;display:flex}.mx-cell.diag-main{color:#93c5fd;background:#1d4ed840;border-color:#1d4ed8;font-weight:700}.mx-cell.diag-sec{color:#c4b5fd;background:#7c3aed40;border-color:#7c3aed;font-weight:700}.mx-cell.both-diag{color:#fca5a5;background:#991b1b59;border-color:#991b1b;font-weight:700}.mx-cell.tri-upper{color:#5eead4;background:#0f766e33;border-color:#0f766e}.mx-cell.tri-lower{color:#fcd34d;background:#b4530933;border-color:#b45309}.mx-cell.border-cell{color:#f9a8d4;background:#be185d33;border-color:#be185d}.matrix-zone-btns{flex-wrap:wrap;gap:8px;margin:16px 0 10px;display:flex}.matrix-zone-btns .btn{padding:6px 12px;font-size:12px}.matrix-legend{flex-wrap:wrap;justify-content:center;gap:12px 20px;margin-top:12px;display:flex}.mx-legend-item{color:var(--text-muted);align-items:center;gap:6px;font-size:12px;display:flex}.mx-legend-color{border-radius:3px;flex-shrink:0;width:14px;height:14px}.call-stack{background:var(--surface);border:2px solid var(--border);border-radius:12px;flex-direction:column-reverse;gap:5px;min-height:180px;max-height:340px;padding:16px;display:flex;overflow-y:auto}[data-theme=dark] .call-stack{background:var(--surface2)}.stack-frame-push{background:var(--blue,#3b82f6);color:#fff;border-radius:7px;padding:8px 16px;font-size:14px;font-weight:700;transition:all .35s;animation:.3s slideInLeft}.stack-frame-pop{background:var(--green,#22c55e);color:#fff}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.fact-result{color:var(--green,#22c55e);min-height:26px;margin-top:12px;font-size:15px;font-weight:700}.vec-track{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;align-items:center;gap:4px;min-height:80px;margin:12px 0;padding:12px;display:flex}.vec-block{width:52px;height:52px;font-family:var(--font-mono,monospace);background:var(--surface2);border:2px solid var(--border);border-radius:7px;justify-content:center;align-items:center;font-size:14px;font-weight:700;transition:all .25s;display:flex}.vec-block.empty{color:var(--text-muted);border-style:dashed}.vec-block.highlight{background:var(--primary-dim);border-color:var(--primary);color:var(--primary)}.vec-block.found{color:#15803d;background:#dcfce7;border-color:#16a34a}.vec-block.comparing{color:#92400e;background:#fef9c3;border-color:#ca8a04}.vec-block.removing{color:#dc2626;background:#fef2f2;border-color:#ef4444}.vec-status{color:var(--text-muted);background:var(--surface);border:1px solid var(--border);border-radius:8px;min-height:22px;padding:8px 12px;font-size:13px}.warning-banner{background:#f59e0b1a;border:1px solid #f59e0b66;border-left:4px solid #f59e0b;border-radius:10px;align-items:flex-start;gap:12px;margin:20px 0;padding:16px 20px;display:flex}.warning-banner .warning-icon{flex-shrink:0;margin-top:1px;font-size:1.3rem}.warning-banner .warning-content{font-size:.9rem;line-height:1.65}.warning-banner .warning-content strong{color:#f59e0b}.warning-banner .warning-content code{color:#f59e0b;font-family:var(--font-mono,monospace);background:#f59e0b26;border-radius:3px;padding:1px 5px}@media(max-width:560px){.bt-cell{width:44px;height:44px;font-size:1.2rem}.mx-cell{width:36px;height:36px;font-size:.7rem}.vec-block{width:42px;height:42px;font-size:12px}.matrix-zone-btns{gap:6px}.matrix-zone-btns .btn{padding:5px 9px;font-size:11px}}.difficulty-badge{text-transform:uppercase;letter-spacing:.4px;border-radius:99px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.difficulty-badge.easy{color:#10b981;background:#10b9811f}.difficulty-badge.medium{color:#f59e0b;background:#f59e0b1f}.difficulty-badge.hard{color:#ef4444;background:#ef44441f}.cal-day{aspect-ratio:1;cursor:default;background:var(--color-background,#0f172a);color:var(--color-text-muted,#64748b);border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;font-size:13px;font-weight:500;transition:transform .15s;display:flex}.cal-day--empty{background:0 0}.cal-day--studied{color:#fff;background:linear-gradient(135deg,#0369a1,#0ea5e9);font-weight:700;box-shadow:0 2px 8px #0ea5e94d}.cal-day--today{color:#fbbf24;background:#f59e0b2e;border:3px solid #f59e0b;font-weight:800;position:relative;box-shadow:0 0 10px #f59e0b73}.cal-day--today:after{content:"";background:#f59e0b;border-radius:50%;width:5px;height:5px;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.cal-day--today.cal-day--studied{color:#fff;background:linear-gradient(135deg,#0369a1,#0ea5e9);border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b66,0 2px 8px #0ea5e94d}.cal-day--today.cal-day--studied:after{background:#fbbf24}.cal-day--future{opacity:.3}.cal-day:not(.cal-day--empty):hover{z-index:1;transform:scale(1.1)}.card-progress{background:var(--border);border-radius:99px;height:3px;margin-top:12px;overflow:hidden}.card-progress-fill{background:linear-gradient(90deg,var(--primary) 0%,#a855f7 100%);border-radius:99px;width:0;height:100%;transition:width .8s cubic-bezier(.4,0,.2,1) .3s}.chapter-card{position:relative;overflow:hidden}.chapter-card:after{content:"";border-radius:inherit;background:linear-gradient(var(--surface),var(--surface)) padding-box,linear-gradient(135deg,var(--primary),#a855f7,#06b6d4) border-box;opacity:0;transition:opacity var(--transition);pointer-events:none;border:2px solid #0000;position:absolute;inset:0}.chapter-card:hover:after{opacity:1}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.5)}}.hero-eyebrow-dot{background:#10b981;border-radius:50%;width:7px;height:7px;margin-right:6px;animation:2s ease-in-out infinite pulse-dot;display:inline-block}.hero h1,.hero-inner h1,.chapter-hero h1{font-family:var(--font-display)}.xp-toast{background:var(--surface);border:1px solid var(--primary);color:var(--primary);z-index:3000;opacity:0;pointer-events:none;border-radius:12px;padding:12px 20px;font-size:14px;font-weight:700;transition:transform .35s cubic-bezier(.4,0,.2,1),opacity .35s;position:fixed;bottom:24px;right:24px;transform:translateY(80px);box-shadow:0 8px 32px #6366f140}.xp-toast.show{opacity:1;transform:translateY(0)}.chapter-hero-tag{cursor:pointer;transition:background var(--transition),color var(--transition)}.chapter-hero-tag:hover{background:var(--primary-dim);color:var(--primary)}.logo-svg-icon{flex-shrink:0;width:32px;height:32px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.gradient-bg{background:linear-gradient(135deg,var(--primary) 0%,#a855f7 50%,#06b6d4 100%)}.glow{box-shadow:0 0 32px #6366f140}[data-theme=dark] .glow{box-shadow:0 0 32px #818cf859}.chart-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:32px 0;padding:24px}.chart-section h3{margin-bottom:16px;font-size:16px;font-weight:700}.chart-wrapper{height:280px;position:relative}.chart-controls{flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px;display:flex}.chart-controls label{color:var(--text-muted);font-size:13px}.chart-controls input[type=range]{width:180px;accent-color:var(--primary)}@media(max-width:768px){.search-dialog{width:95vw;max-width:95vw;margin:10px}}@media(max-width:480px){.search-dialog{border-radius:0;width:100vw;max-width:100vw;height:100vh;margin:0}.search-footer{flex-wrap:wrap;gap:6px;font-size:11px}}pre,.sheet-card-body pre,code{-webkit-overflow-scrolling:touch}pre::-webkit-scrollbar{height:4px}pre::-webkit-scrollbar-track{background:var(--surface);border-radius:2px}pre::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}[role=code]{font-family:var(--mono)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
