.ai-tutor-fab[data-astro-cid-o46bn4u4]{position:fixed;bottom:1.5rem;right:1.5rem;width:3.5rem;height:3.5rem;border-radius:50%;background:var(--color-brand-500, #3b6df2);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #0003;transition:transform .2s,box-shadow .2s;z-index:1000}.ai-tutor-fab[data-astro-cid-o46bn4u4]:hover{transform:scale(1.08);box-shadow:0 6px 24px #00000040}.ai-fab-badge[data-astro-cid-o46bn4u4]{position:absolute;top:-2px;right:-2px;width:18px;height:18px;border-radius:50%;background:var(--color-accent-500, #7c4dff);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;animation:ai-badge-pulse 2s infinite}@keyframes ai-badge-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.ai-tutor-panel[data-astro-cid-o46bn4u4]{position:fixed;bottom:6rem;right:1.5rem;width:380px;max-height:calc(100vh - 8rem);border-radius:1rem;background:var(--color-bg, #fff);border:1px solid var(--color-border, #e2e8f0);box-shadow:0 12px 48px #00000026;display:flex;flex-direction:column;overflow:hidden;z-index:999;opacity:0;transform:translateY(12px) scale(.96);transition:opacity .3s,transform .3s}.ai-tutor-panel-open[data-astro-cid-o46bn4u4]{opacity:1;transform:translateY(0) scale(1)}@media(max-width:480px){.ai-tutor-panel[data-astro-cid-o46bn4u4]{width:calc(100vw - 1rem);right:.5rem;bottom:5rem;max-height:calc(100vh - 6rem);border-radius:.75rem}}.ai-tutor-header[data-astro-cid-o46bn4u4]{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--color-border, #e2e8f0);background:var(--color-bg-subtle, #f8fafc)}.ai-tutor-header-info[data-astro-cid-o46bn4u4]{display:flex;align-items:center;gap:.625rem}.ai-tutor-avatar[data-astro-cid-o46bn4u4]{width:2rem;height:2rem;border-radius:50%;background:var(--color-brand-500, #3b6df2);color:#fff;display:flex;align-items:center;justify-content:center}.ai-tutor-name[data-astro-cid-o46bn4u4]{font-weight:600;font-size:.875rem;color:var(--color-text, #1e293b)}.ai-tutor-status[data-astro-cid-o46bn4u4]{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:var(--color-text-faint, #94a3b8)}.ai-tutor-status-dot[data-astro-cid-o46bn4u4]{width:6px;height:6px;border-radius:50%;background:#22c55e}.ai-tutor-header-actions[data-astro-cid-o46bn4u4]{display:flex;gap:.25rem}.ai-tutor-icon-btn[data-astro-cid-o46bn4u4]{width:2rem;height:2rem;border-radius:.5rem;border:none;background:transparent;color:var(--color-text-soft, #64748b);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.ai-tutor-icon-btn[data-astro-cid-o46bn4u4]:hover{background:var(--color-bg-muted, #f1f5f9);color:var(--color-text, #1e293b)}.ai-tts-active[data-astro-cid-o46bn4u4]{color:var(--color-brand-500, #3b6df2)!important;background:var(--color-brand-50, #eff6ff)!important}.ai-tutor-quick-actions[data-astro-cid-o46bn4u4]{display:flex;flex-wrap:wrap;gap:.375rem;padding:.625rem .75rem;border-bottom:1px solid var(--color-border, #e2e8f0)}.ai-quick-btn[data-astro-cid-o46bn4u4]{display:inline-flex;align-items:center;gap:.375rem;padding:.3rem .625rem;border-radius:999px;border:1px solid var(--color-border, #e2e8f0);background:var(--color-bg, #fff);color:var(--color-text-soft, #64748b);font-size:.75rem;cursor:pointer;transition:all .15s;white-space:nowrap}.ai-quick-btn[data-astro-cid-o46bn4u4]:hover{background:var(--color-brand-50, #eff6ff);border-color:var(--color-brand-300, #93bbfc);color:var(--color-brand-600, #2563eb)}.ai-tutor-messages[data-astro-cid-o46bn4u4]{flex:1;overflow-y:auto;padding:.75rem;display:flex;flex-direction:column;gap:.625rem;min-height:200px;max-height:360px}.ai-msg[data-astro-cid-o46bn4u4]{display:flex;gap:.5rem;animation:ai-msg-in .3s ease}@keyframes ai-msg-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ai-msg-ai[data-astro-cid-o46bn4u4]{align-self:flex-start;max-width:90%}.ai-msg-user[data-astro-cid-o46bn4u4]{align-self:flex-end;max-width:80%;flex-direction:row-reverse}.ai-msg-avatar[data-astro-cid-o46bn4u4]{width:1.5rem;height:1.5rem;border-radius:50%;background:var(--color-brand-100, #dbeafe);color:var(--color-brand-600, #2563eb);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:.125rem}.ai-msg-bubble[data-astro-cid-o46bn4u4]{padding:.5rem .75rem;border-radius:.75rem;font-size:.8125rem;line-height:1.5;position:relative}.ai-msg-ai[data-astro-cid-o46bn4u4] .ai-msg-bubble[data-astro-cid-o46bn4u4]{background:var(--color-bg-subtle, #f8fafc);color:var(--color-text, #1e293b);border:1px solid var(--color-border, #e2e8f0);border-top-left-radius:.25rem}.ai-msg-user[data-astro-cid-o46bn4u4] .ai-msg-bubble[data-astro-cid-o46bn4u4]{background:var(--color-brand-500, #3b6df2);color:#fff;border-top-right-radius:.25rem}.ai-msg-bubble[data-astro-cid-o46bn4u4] a{text-decoration:underline;text-underline-offset:2px}.ai-msg-ai[data-astro-cid-o46bn4u4] .ai-msg-bubble[data-astro-cid-o46bn4u4] a{color:var(--color-brand-600, #2563eb)}.ai-msg-user[data-astro-cid-o46bn4u4] .ai-msg-bubble[data-astro-cid-o46bn4u4] a{color:#fff}.ai-msg-tts-btn[data-astro-cid-o46bn4u4]{position:absolute;bottom:.25rem;right:.25rem;width:1.25rem;height:1.25rem;border-radius:50%;border:none;background:transparent;color:var(--color-text-faint, #94a3b8);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s}.ai-msg-bubble[data-astro-cid-o46bn4u4]:hover .ai-msg-tts-btn[data-astro-cid-o46bn4u4]{opacity:1}.ai-msg-tts-btn[data-astro-cid-o46bn4u4]:hover{color:var(--color-brand-500, #3b6df2)}.ai-tutor-typing[data-astro-cid-o46bn4u4]{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem}.ai-tutor-typing-dots[data-astro-cid-o46bn4u4]{display:flex;gap:3px}.ai-tutor-typing-dots[data-astro-cid-o46bn4u4] span[data-astro-cid-o46bn4u4]{width:6px;height:6px;border-radius:50%;background:var(--color-text-faint, #94a3b8);animation:ai-typing-bounce 1.4s infinite ease-in-out}.ai-tutor-typing-dots[data-astro-cid-o46bn4u4] span[data-astro-cid-o46bn4u4]:nth-child(1){animation-delay:-.32s}.ai-tutor-typing-dots[data-astro-cid-o46bn4u4] span[data-astro-cid-o46bn4u4]:nth-child(2){animation-delay:-.16s}@keyframes ai-typing-bounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.ai-tutor-typing-text[data-astro-cid-o46bn4u4]{font-size:.75rem;color:var(--color-text-faint, #94a3b8);font-style:italic}.ai-tutor-input-area[data-astro-cid-o46bn4u4]{border-top:1px solid var(--color-border, #e2e8f0);padding:.625rem .75rem;background:var(--color-bg-subtle, #f8fafc)}.ai-tutor-input-row[data-astro-cid-o46bn4u4]{display:flex;align-items:center;gap:.375rem;background:var(--color-bg, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:999px;padding:.25rem .25rem .25rem .5rem;transition:border-color .15s}.ai-tutor-input-row[data-astro-cid-o46bn4u4]:focus-within{border-color:var(--color-brand-400, #6d9cf6);box-shadow:0 0 0 2px var(--color-brand-100, #dbeafe)}.ai-tutor-text-input[data-astro-cid-o46bn4u4]{flex:1;border:none;outline:none;font-size:.8125rem;background:transparent;color:var(--color-text, #1e293b);min-width:0}.ai-tutor-text-input[data-astro-cid-o46bn4u4]::placeholder{color:var(--color-text-faint, #94a3b8)}.ai-tutor-mic-btn[data-astro-cid-o46bn4u4],.ai-tutor-send-btn[data-astro-cid-o46bn4u4]{width:2rem;height:2rem;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s}.ai-tutor-mic-btn[data-astro-cid-o46bn4u4]{background:transparent;color:var(--color-text-soft, #64748b)}.ai-tutor-mic-btn[data-astro-cid-o46bn4u4]:hover{background:var(--color-bg-muted, #f1f5f9);color:var(--color-text, #1e293b)}.ai-mic-active[data-astro-cid-o46bn4u4]{background:#fecaca!important;color:#dc2626!important;animation:ai-mic-pulse 1.5s infinite}@keyframes ai-mic-pulse{0%,to{box-shadow:0 0 #dc26264d}50%{box-shadow:0 0 0 6px #dc262600}}.ai-mic-unavailable[data-astro-cid-o46bn4u4]{opacity:.3;cursor:not-allowed}.ai-tutor-send-btn[data-astro-cid-o46bn4u4]{background:var(--color-brand-500, #3b6df2);color:#fff}.ai-tutor-send-btn[data-astro-cid-o46bn4u4]:hover:not(:disabled){background:var(--color-brand-600, #2563eb)}.ai-tutor-send-btn[data-astro-cid-o46bn4u4]:disabled{opacity:.4;cursor:not-allowed}.ai-tutor-input-hint[data-astro-cid-o46bn4u4]{text-align:center;font-size:.625rem;color:var(--color-text-faint, #94a3b8);margin-top:.375rem;letter-spacing:.02em}.dark .ai-tutor-panel[data-astro-cid-o46bn4u4]{box-shadow:0 12px 48px #0006}.dark .ai-tutor-fab[data-astro-cid-o46bn4u4]{box-shadow:0 4px 16px #0006}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}html.quiz-hidden .quiz-container{display:none!important}.quiz-toggle[data-astro-cid-kzsznur2].quiz-on{background-color:color-mix(in oklab,var(--color-primary) 10%,transparent);color:var(--color-primary);border-color:color-mix(in oklab,var(--color-primary) 30%,transparent)}.quiz-toggle[data-astro-cid-kzsznur2].quiz-on:hover{background-color:color-mix(in oklab,var(--color-primary) 20%,transparent)}.quiz-toggle[data-astro-cid-kzsznur2].quiz-off{background-color:var(--color-surface-alt);color:var(--color-text-muted);border-color:var(--color-border)}.quiz-toggle[data-astro-cid-kzsznur2].quiz-off:hover{background-color:var(--color-surface);color:var(--color-text)}.line-clamp-2[data-astro-cid-ojj5oawk]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@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-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking: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-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-content:""}}}@layer theme{:root,:host{--font-sans:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"Fira Code", "JetBrains Mono", "Consolas", monospace;--color-red-500:oklch(63.7% .237 25.331);--color-amber-500:oklch(76.9% .188 70.08);--color-green-500:oklch(72.3% .219 149.579);--color-gray-900:oklch(21% .034 264.665);--color-neutral-50:oklch(98.5% 0 0);--color-neutral-100:oklch(97% 0 0);--color-neutral-200:oklch(92.2% 0 0);--color-neutral-300:oklch(87% 0 0);--color-neutral-400:oklch(70.8% 0 0);--color-neutral-600:oklch(43.9% 0 0);--color-neutral-700:oklch(37.1% 0 0);--color-neutral-800:oklch(26.9% 0 0);--color-neutral-900:oklch(20.5% 0 0);--color-neutral-950:oklch(14.5% 0 0);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--shadow-sm:0 1px 2px 0 #0000000d;--animate-spin:spin 1s linear infinite;--blur-sm:8px;--blur-md:12px;--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);--color-brand-50:#eef4ff;--color-brand-100:#dbe8ff;--color-brand-200:#bfd5ff;--color-brand-300:#93b8ff;--color-brand-400:#5f8fff;--color-brand-500:#3b6df2;--color-brand-600:#2f57d0;--color-brand-700:#2746a8;--color-brand-800:#243d86;--color-brand-900:#22376d;--color-accent-50:#f4f1ff;--color-accent-500:#7c4dff;--color-accent-600:#6938d3;--color-accent-700:#572ca8;--color-bg:#f8fafc;--color-bg-subtle:#f1f5f9;--color-surface:#fff;--color-surface-alt:#f1f5f9;--color-border:#cbd5e1;--color-border-strong:#94a3b8;--color-text:#0f172a;--color-text-soft:#334155;--color-text-muted:#475569;--color-text-faint:#64748b;--color-success-50:#ecfdf3;--color-success-200:#a6f4c5;--color-success-300:#6ce9a6;--color-success-500:#12b76a;--color-success-700:#027a48;--color-warning-50:#fffaeb;--color-warning-200:#fedf89;--color-warning-300:#fec84b;--color-warning-500:#f79009;--color-warning-700:#b54708;--color-danger-50:#fef3f2;--color-danger-200:#fecdca;--color-danger-300:#fda29b;--color-danger-500:#f04438;--color-danger-700:#b42318;--color-error-50:#fef3f2;--color-error-700:#b42318;--color-info-50:#eff6ff;--color-info-200:#bfdbfe;--color-info-300:#93c5fd;--color-info-700:#1d4ed8;--color-focus:#1d4ed8;--color-subject-math:#0369a1;--color-subject-science:#047857;--color-subject-language:#b45309;--color-subject-history:#b42318;--color-subject-thinking:#4338ca;--color-subject-geography:#0e7490;--ease-spring:cubic-bezier(.16, 1, .3, 1);--ease-smooth:cubic-bezier(.4, 0, .2, 1);--radius-card:1rem;--radius-btn:.875rem;--z-index-fixed:1030;--z-index-modal:1050}}@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}html{scroll-behavior:smooth}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:9999;background-color:var(--color-brand-500);color:#fff;border-radius:.5rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:top .15s;position:absolute;top:-100%;left:.5rem}.skip-link:focus{outline:2px solid var(--color-focus);outline-offset:2px;clip:auto;width:auto;height:auto;position:absolute;top:.5rem}:focus-visible{box-shadow:0 0 0 2px var(--color-focus),0 0 0 4px #fff;outline:none}.dark :focus-visible{box-shadow:0 0 0 2px var(--color-focus),0 0 0 4px var(--color-surface)}:root[data-contrast=high] :focus-visible{box-shadow:0 0 0 3px var(--color-focus),0 0 0 5px #fff}::selection{background-color:#306ee833}::-webkit-scrollbar{width:.5rem;height:.5rem}::-webkit-scrollbar-track{background-color:var(--color-bg-subtle)}::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:9999px}::-webkit-scrollbar-thumb:hover{background-color:var(--color-text-muted)}}@layer components{.container-custom{max-width:80rem;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}@media(min-width:640px){.container-custom{padding-left:1.5rem;padding-right:1.5rem}}@media(min-width:1024px){.container-custom{padding-left:2rem;padding-right:2rem}}.btn{border-radius:var(--radius-btn);transition:all var(--transition-fast);cursor:pointer;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;display:inline-flex}.btn:focus-visible{box-shadow:0 0 0 2px var(--color-focus),0 0 0 4px #fff;outline:none}.btn:disabled{pointer-events:none;opacity:.5}.btn-primary,.ui-btn-primary{border-radius:var(--radius-btn);background:linear-gradient(135deg,var(--color-brand-500),var(--color-brand-700));color:#fff;transition:all var(--transition-fast);cursor:pointer;border:1px solid #ffffff1a;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;display:inline-flex;box-shadow:0 2px 8px #0000001f,inset 0 1px #ffffff26}.btn-primary:hover,.ui-btn-primary:hover{background:linear-gradient(135deg,var(--color-brand-400),var(--color-brand-600));box-shadow:0 4px 16px #00000026,inset 0 1px #fff3}.btn-primary:active,.ui-btn-primary:active{transform:scale(.97)}.btn-primary:focus-visible,.ui-btn-primary:focus-visible{box-shadow:0 0 0 2px var(--color-focus),0 0 0 4px #fff;outline:none}.btn-secondary,.ui-btn-secondary{border-radius:var(--radius-btn);background-color:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong);transition:all var(--transition-fast);cursor:pointer;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;display:inline-flex}.btn-secondary:hover,.ui-btn-secondary:hover{background-color:var(--color-bg-subtle);border-color:var(--color-text-faint)}.btn-secondary:focus-visible,.ui-btn-secondary:focus-visible{box-shadow:0 0 0 2px var(--color-focus),0 0 0 4px #fff;outline:none}.btn-ghost:hover{background-color:var(--color-bg-subtle)}.btn-outline{border:1px solid var(--color-border);color:var(--color-text)}.btn-outline:hover{background-color:var(--color-bg-subtle)}.card,.ui-card{border-radius:var(--radius-card);-webkit-backdrop-filter:blur(12px)saturate(1.4);transition:box-shadow .25s var(--ease-spring),transform .25s var(--ease-spring),border-color .25s var(--ease-spring);background:#fff9;border:1px solid #fff3;padding:1rem;overflow:hidden;box-shadow:0 4px 24px #0000000f,inset 0 1px #ffffff80}@media(min-width:640px){.card,.ui-card{padding:1.5rem}}.dark .card,.dark .ui-card{background:#1e293b99;border-color:#ffffff14;box-shadow:0 4px 24px #0003,inset 0 1px #ffffff0d}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.card,.ui-card{background:var(--color-surface);border-color:var(--color-border);box-shadow:var(--shadow-sm)}}.ui-card-soft{border-radius:var(--radius-card);-webkit-backdrop-filter:blur(8px);background:#f8fafc80;border:1px solid #ffffff26;padding:1rem;overflow:hidden}@media(min-width:640px){.ui-card-soft{padding:1.5rem}}.dark .ui-card-soft{background:#1e293b66;border-color:#ffffff0f}.card-glass{border-radius:var(--radius-card);-webkit-backdrop-filter:blur(20px)saturate(1.8);background:#ffffff26;border:1px solid #ffffff40;padding:1rem;overflow:hidden;box-shadow:0 8px 32px #00000014,inset 0 1px #fff6}@media(min-width:640px){.card-glass{padding:1.5rem}}.dark .card-glass{background:#0003;border-color:#ffffff1f;box-shadow:0 8px 32px #0000004d,inset 0 1px #ffffff0f}.card-gradient{--card-hue:220;border-radius:var(--radius-card);border:1px solid oklch(80% .08 var(--card-hue) / .25);background:linear-gradient(135deg,oklch(96% .035 var(--card-hue) / .9),oklch(99% .015 var(--card-hue) / .5));-webkit-backdrop-filter:blur(12px);box-shadow:0 2px 12px oklch(50% .1 var(--card-hue) / .06),inset 0 1px #ffffff80;transition:box-shadow .25s var(--ease-spring),transform .25s var(--ease-spring),border-color .25s var(--ease-spring);padding:1rem;overflow:hidden}.card-gradient:hover{border-color:oklch(70% .12 var(--card-hue) / .35);box-shadow:0 8px 28px oklch(50% .12 var(--card-hue) / .12),inset 0 1px #fff9}@media(min-width:640px){.card-gradient{padding:1.5rem}}.dark .card-gradient{background:linear-gradient(135deg,oklch(25% .06 var(--card-hue) / .6),oklch(20% .03 var(--card-hue) / .3));border-color:oklch(50% .08 var(--card-hue) / .15);box-shadow:0 4px 24px oklch(20% .1 var(--card-hue) / .2),inset 0 1px #ffffff0d}.dark .card-gradient:hover{border-color:oklch(50% .1 var(--card-hue) / .3);box-shadow:0 8px 28px oklch(20% .12 var(--card-hue) / .3),inset 0 1px #ffffff14}.card-glow{--glow-color:var(--color-brand-400);border-radius:var(--radius-card);-webkit-backdrop-filter:blur(12px)saturate(1.4);isolation:isolate;transition:box-shadow .3s var(--ease-spring),transform .3s var(--ease-spring),border-color .3s var(--ease-spring);background:#fff9;border:1px solid #fff3;padding:1rem;position:relative;overflow:hidden;box-shadow:0 4px 24px #0000000f,inset 0 1px #ffffff80}.card-glow:before{content:"";background:radial-gradient(600px circle at var(--glow-x,50%) var(--glow-y,50%),var(--glow-color),transparent 60%);opacity:0;transition:opacity .4s var(--ease-smooth);pointer-events:none;z-index:-1;border-radius:inherit;position:absolute;inset:0}.card-glow:hover:before{opacity:.08}.card-glow:hover{border-color:#ffffff59;box-shadow:0 8px 32px #0000001a,inset 0 1px #fff9}@media(min-width:640px){.card-glow{padding:1.5rem}}.dark .card-glow{background:#1e293b99;border-color:#ffffff14;box-shadow:0 4px 24px #0003,inset 0 1px #ffffff0d}.dark .card-glow:hover:before{opacity:.12}.dark .card-glow:hover{border-color:#ffffff26;box-shadow:0 8px 32px #0000004d,inset 0 1px #ffffff14}.input,.ui-input{border-radius:var(--radius-btn);border:1px solid var(--color-border);background-color:var(--color-surface);width:100%;color:var(--color-text);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);padding:.625rem 1rem;font-size:.875rem}.input::placeholder,.ui-input::placeholder{color:var(--color-text-faint)}.input:focus,.ui-input:focus{border-color:var(--color-focus);outline:none;box-shadow:0 0 0 3px #306ee826}.badge,.ui-badge{-webkit-backdrop-filter:blur(8px);border:1px solid #0000;border-radius:9999px;align-items:center;padding:.25rem .625rem;font-size:.75rem;font-weight:500;display:inline-flex}.badge-primary{background:linear-gradient(135deg,var(--color-brand-50),#fff9);color:var(--color-brand-700);border-color:var(--color-brand-200)}.badge-success{background:linear-gradient(135deg,var(--color-success-50),#fff9);color:var(--color-success-700);border-color:var(--color-success-200)}.badge-warning{background:linear-gradient(135deg,var(--color-warning-50),#fff9);color:var(--color-warning-700);border-color:var(--color-warning-200)}.badge-error,.badge-danger{background:linear-gradient(135deg,var(--color-danger-50),#fff9);color:var(--color-danger-700);border-color:var(--color-danger-200)}.badge-info{background:linear-gradient(135deg,var(--color-info-50),#fff9);color:var(--color-info-700);border-color:var(--color-info-200)}.dark .badge-primary{color:var(--color-brand-300);background:linear-gradient(135deg,#081c45,#0000004d);border-color:#ffffff1a}.dark .badge-success{color:var(--color-success-300);background:linear-gradient(135deg,#062d14,#0000004d);border-color:#ffffff1a}.dark .badge-warning{color:var(--color-warning-300);background:linear-gradient(135deg,#312002,#0000004d);border-color:#ffffff1a}.dark .badge-error,.dark .badge-danger{color:var(--color-danger-300);background:linear-gradient(135deg,#2f0404,#0000004d);border-color:#ffffff1a}.dark .badge-info{color:var(--color-info-300);background:linear-gradient(135deg,#001933,#0000004d);border-color:#ffffff1a}.ui-heading{color:var(--color-text);font-weight:700;line-height:1.2}.ui-text{color:var(--color-text-soft);line-height:1.6}.ui-text-muted{color:var(--color-text-muted)}.ui-link{color:var(--color-brand-700);text-underline-offset:2px;text-decoration:underline;-webkit-text-decoration-color:var(--color-brand-300);text-decoration-color:var(--color-brand-300);transition:color var(--transition-fast),text-decoration-color var(--transition-fast)}.ui-link:hover{color:var(--color-brand-800);-webkit-text-decoration-color:var(--color-brand-600);text-decoration-color:var(--color-brand-600)}.dark .ui-link{color:var(--color-brand-400);-webkit-text-decoration-color:var(--color-brand-600);text-decoration-color:var(--color-brand-600)}.dark .ui-link:hover{color:var(--color-brand-300);-webkit-text-decoration-color:var(--color-brand-400);text-decoration-color:var(--color-brand-400)}.category-accent{border-left:4px solid var(--category-color,var(--color-brand-500))}}@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.-top-0\.5{top:calc(var(--spacing) * -.5)}.top-0{top:calc(var(--spacing) * 0)}.top-2{top:calc(var(--spacing) * 2)}.top-16{top:calc(var(--spacing) * 16)}.-right-0\.5{right:calc(var(--spacing) * -.5)}.right-0{right:calc(var(--spacing) * 0)}.right-2{right:calc(var(--spacing) * 2)}.left-0{left:calc(var(--spacing) * 0)}.z-\[var\(--z-sticky\)\]{z-index:var(--z-sticky)}.z-fixed{z-index:var(--z-index-fixed)}.z-modal{z-index:var(--z-index-modal)}.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-0{margin:calc(var(--spacing) * 0)}.-mx-2{margin-inline:calc(var(--spacing) * -2)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-auto{margin-inline:auto}.my-4{margin-block:calc(var(--spacing) * 4)}.my-6{margin-block:calc(var(--spacing) * 6)}.my-8{margin-block:calc(var(--spacing) * 8)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-16{margin-top:calc(var(--spacing) * 16)}.mt-auto{margin-top:auto}.mr-2{margin-right:calc(var(--spacing) * 2)}.-mb-px{margin-bottom:-1px}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-6{margin-left:calc(var(--spacing) * 6)}.ml-7{margin-left:calc(var(--spacing) * 7)}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.h-1{height:calc(var(--spacing) * 1)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-\[calc\(100vh-4rem\)\]{height:calc(100vh - 4rem)}.h-\[var\(--nav-height\)\]{height:var(--nav-height)}.h-full{height:100%}.max-h-64{max-height:calc(var(--spacing) * 64)}.max-h-\[60vh\]{max-height:60vh}.min-h-screen{min-height:100vh}.w-1{width:calc(var(--spacing) * 1)}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-10{width:calc(var(--spacing) * 10)}.w-12{width:calc(var(--spacing) * 12)}.w-14{width:calc(var(--spacing) * 14)}.w-16{width:calc(var(--spacing) * 16)}.w-36{width:calc(var(--spacing) * 36)}.w-64{width:calc(var(--spacing) * 64)}.w-auto{width:auto}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[72rem\]{max-width:72rem}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-none{max-width:none}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.scroll-mt-24{scroll-margin-top:calc(var(--spacing) * 24)}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-\[var\(--space-md\)\]{gap:var(--space-md)}.gap-\[var\(--space-sm\)\]{gap:var(--space-sm)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-10>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 10) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 10) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-12>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 12) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 12) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.scroll-smooth{scroll-behavior:smooth}.rounded{border-radius:.25rem}.rounded-\[var\(--radius-lg\)\]{border-radius:var(--radius-lg)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-lg{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-b-lg{border-bottom-right-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-border{border-color:var(--color-border)}.border-brand-200{border-color:var(--color-brand-200)}.border-red-500\/20{border-color:#fb2c3633}@supports (color:color-mix(in lab,red,red)){.border-red-500\/20{border-color:color-mix(in oklab,var(--color-red-500) 20%,transparent)}}.border-transparent{border-color:#0000}.border-warning-200{border-color:var(--color-warning-200)}.border-white{border-color:var(--color-white)}.bg-\[var\(--color-surface\)\]{background-color:var(--color-surface)}.bg-amber-500{background-color:var(--color-amber-500)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.bg-border{background-color:var(--color-border)}.bg-brand-50{background-color:var(--color-brand-50)}.bg-brand-100{background-color:var(--color-brand-100)}.bg-error-50{background-color:var(--color-error-50)}.bg-red-500\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/10{background-color:color-mix(in oklab,var(--color-red-500) 10%,transparent)}}.bg-success-50{background-color:var(--color-success-50)}.bg-surface{background-color:var(--color-surface)}.bg-surface-alt{background-color:var(--color-surface-alt)}.bg-transparent{background-color:#0000}.bg-warning-50{background-color:var(--color-warning-50)}.bg-white\/80{background-color:#fffc}@supports (color:color-mix(in lab,red,red)){.bg-white\/80{background-color:color-mix(in oklab,var(--color-white) 80%,transparent)}}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-brand-400{--tw-gradient-from:var(--color-brand-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-brand-500{--tw-gradient-from:var(--color-brand-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-accent-500{--tw-gradient-to:var(--color-accent-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-0{padding:calc(var(--spacing) * 0)}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-8{padding-inline:calc(var(--spacing) * 8)}.px-\[var\(--space-lg\)\]{padding-inline:var(--space-lg)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-20{padding-block:calc(var(--spacing) * 20)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-\[15vh\]{padding-top:15vh}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-10{padding-left:calc(var(--spacing) * 10)}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.whitespace-nowrap{white-space:nowrap}.text-brand-600{color:var(--color-brand-600)}.text-brand-700{color:var(--color-brand-700)}.text-brand-800{color:var(--color-brand-800)}.text-error-700{color:var(--color-error-700)}.text-green-500{color:var(--color-green-500)}.text-red-500{color:var(--color-red-500)}.text-success-700{color:var(--color-success-700)}.text-text{color:var(--color-text)}.text-text-faint{color:var(--color-text-faint)}.text-text-muted{color:var(--color-text-muted)}.text-transparent{color:#0000}.text-warning-700{color:var(--color-warning-700)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.not-italic{font-style:normal}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.placeholder-text-muted::placeholder{color:var(--color-text-muted)}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);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-blur-\[12px\]{--tw-backdrop-blur:blur(12px);-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,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-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,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-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))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-\[cubic-bezier\(0\.4\,0\,0\.2\,1\)\]{--tw-ease:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,.2,1)}.outline-none{--tw-outline-style:none;outline-style:none}@media(hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.last\:mb-0:last-child{margin-bottom:calc(var(--spacing) * 0)}@media(hover:hover){.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-border:hover{border-color:var(--color-border)}.hover\:border-brand-300:hover{border-color:var(--color-brand-300)}.hover\:bg-brand-200:hover{background-color:var(--color-brand-200)}.hover\:bg-red-500\/10:hover{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.hover\:bg-red-500\/10:hover{background-color:color-mix(in oklab,var(--color-red-500) 10%,transparent)}}.hover\:bg-surface:hover{background-color:var(--color-surface)}.hover\:bg-surface-alt:hover{background-color:var(--color-surface-alt)}.hover\:text-text:hover{color:var(--color-text)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px 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)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px 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)}.hover\:shadow-sm:hover{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}@media(min-width:40rem){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:inline{display:inline}.sm\:inline-flex{display:inline-flex}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:gap-2{gap:calc(var(--spacing) * 2)}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media(min-width:48rem){.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:inline{display:inline}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:gap-4{gap:calc(var(--spacing) * 4)}.md\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}}@media(min-width:64rem){.lg\:col-span-1{grid-column:span 1/span 1}.lg\:block{display:block}.lg\:inline{display:inline}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:80rem){.xl\:block{display:block}}.dark\:border-brand-800:where(.dark,.dark *){border-color:var(--color-brand-800)}.dark\:border-gray-900:where(.dark,.dark *){border-color:var(--color-gray-900)}.dark\:bg-brand-900\/20:where(.dark,.dark *){background-color:#22376d33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-brand-900\/20:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-brand-900) 20%,transparent)}}.dark\:bg-brand-900\/40:where(.dark,.dark *){background-color:#22376d66}@supports (color:color-mix(in lab,red,red)){.dark\:bg-brand-900\/40:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-brand-900) 40%,transparent)}}.dark\:bg-gray-900\/80:where(.dark,.dark *){background-color:#101828cc}@supports (color:color-mix(in lab,red,red)){.dark\:bg-gray-900\/80:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-gray-900) 80%,transparent)}}.dark\:text-brand-200:where(.dark,.dark *){color:var(--color-brand-200)}.dark\:text-brand-300:where(.dark,.dark *){color:var(--color-brand-300)}.dark\:text-brand-400:where(.dark,.dark *){color:var(--color-brand-400)}.dark\:text-success-300:where(.dark,.dark *){color:var(--color-success-300)}.dark\:text-warning-300:where(.dark,.dark *){color:var(--color-warning-300)}@media(hover:hover){.dark\:hover\:bg-brand-800\/50:where(.dark,.dark *):hover{background-color:#243d8680}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-brand-800\/50:where(.dark,.dark *):hover{background-color:color-mix(in oklab,var(--color-brand-800) 50%,transparent)}}.dark\:hover\:text-warning-200:where(.dark,.dark *):hover{color:var(--color-warning-200)}}.\[\&_li\]\:mb-1 li{margin-bottom:calc(var(--spacing) * 1)}.\[\&_strong\]\:font-semibold strong{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_ul\]\:list-disc ul{list-style-type:disc}.\[\&_ul\]\:pl-5 ul{padding-left:calc(var(--spacing) * 5)}.\[\&\>div\]\:relative>div{position:relative}.\[\&\>div\]\:pl-10>div{padding-left:calc(var(--spacing) * 10)}.\[\&\>div\]\:before\:absolute>div:before{content:var(--tw-content);position:absolute}.\[\&\>div\]\:before\:top-0>div:before{content:var(--tw-content);top:calc(var(--spacing) * 0)}.\[\&\>div\]\:before\:left-0>div:before{content:var(--tw-content);left:calc(var(--spacing) * 0)}.\[\&\>div\]\:before\:flex>div:before{content:var(--tw-content);display:flex}.\[\&\>div\]\:before\:h-7>div:before{content:var(--tw-content);height:calc(var(--spacing) * 7)}.\[\&\>div\]\:before\:w-7>div:before{content:var(--tw-content);width:calc(var(--spacing) * 7)}.\[\&\>div\]\:before\:items-center>div:before{content:var(--tw-content);align-items:center}.\[\&\>div\]\:before\:justify-center>div:before{content:var(--tw-content);justify-content:center}.\[\&\>div\]\:before\:rounded-full>div:before{content:var(--tw-content);border-radius:3.40282e38px}.\[\&\>div\]\:before\:bg-brand-100>div:before{content:var(--tw-content);background-color:var(--color-brand-100)}.\[\&\>div\]\:before\:text-sm>div:before{content:var(--tw-content);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.\[\&\>div\]\:before\:font-semibold>div:before{content:var(--tw-content);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&\>div\]\:before\:text-brand-700>div:before{content:var(--tw-content);color:var(--color-brand-700)}.\[\&\>div\]\:before\:content-\[counter\(step-counter\)\]>div:before{--tw-content:counter(step-counter);content:var(--tw-content)}}:root{--color-brand-50:#eef4ff;--color-brand-100:#dbe8ff;--color-brand-200:#bfd5ff;--color-brand-300:#93b8ff;--color-brand-400:#5f8fff;--color-brand-500:#3b6df2;--color-brand-600:#2f57d0;--color-brand-700:#2746a8;--color-brand-800:#243d86;--color-brand-900:#22376d;--color-accent-50:#f4f1ff;--color-accent-100:#ebe5ff;--color-accent-200:#d9ccff;--color-accent-300:#bea6ff;--color-accent-400:#9b75ff;--color-accent-500:#7c4dff;--color-accent-600:#6938d3;--color-accent-700:#572ca8;--color-accent-800:#472884;--color-accent-900:#3d246d;--color-bg:#f8fafc;--color-bg-subtle:#f1f5f9;--color-surface:#fff;--color-surface-soft:#f8fafc;--color-surface-alt:#f1f5f9;--color-border:#cbd5e1;--color-border-strong:#94a3b8;--color-text:#0f172a;--color-text-soft:#334155;--color-text-muted:#475569;--color-text-faint:#64748b;--color-primary:var(--color-brand-600);--color-primary-hover:var(--color-brand-700);--color-primary-soft:var(--color-brand-50);--color-success-50:#ecfdf3;--color-success-100:#d1fadf;--color-success-200:#a6f4c5;--color-success-300:#6ce9a6;--color-success-400:#32d583;--color-success-500:#12b76a;--color-success-600:#039855;--color-success-700:#027a48;--color-success-800:#05603a;--color-success-900:#054f31;--color-warning-50:#fffaeb;--color-warning-100:#fef0c7;--color-warning-200:#fedf89;--color-warning-300:#fec84b;--color-warning-400:#fdb022;--color-warning-500:#f79009;--color-warning-600:#dc6803;--color-warning-700:#b54708;--color-warning-800:#93370d;--color-warning-900:#7a2e0e;--color-danger-50:#fef3f2;--color-danger-100:#fee4e2;--color-danger-200:#fecdca;--color-danger-300:#fda29b;--color-danger-400:#f97066;--color-danger-500:#f04438;--color-danger-600:#d92d20;--color-danger-700:#b42318;--color-danger-800:#912018;--color-danger-900:#7a271a;--color-error-50:var(--color-danger-50);--color-error-100:var(--color-danger-100);--color-error-500:var(--color-danger-500);--color-error-600:var(--color-danger-600);--color-error-700:var(--color-danger-700);--color-info-50:#eff6ff;--color-info-100:#dbeafe;--color-info-200:#bfdbfe;--color-info-300:#93c5fd;--color-info-400:#60a5fa;--color-info-500:#3b82f6;--color-info-600:#2563eb;--color-info-700:#1d4ed8;--color-info-800:#1e40af;--color-info-900:#1e3a8a;--color-focus:#1d4ed8;--color-subject-math:#0369a1;--color-subject-science:#047857;--color-subject-language:#b45309;--color-subject-history:#b42318;--color-subject-thinking:#4338ca;--color-subject-geography:#0e7490;--font-sans:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"Fira Code", "JetBrains Mono", "Consolas", monospace;--spacing-xs:.25rem;--spacing-s:.5rem;--spacing-m:1rem;--spacing-l:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-card:1rem;--radius-btn:.875rem;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.35s cubic-bezier(.4, 0, .2, 1);--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070}.dark{--color-bg:#0f172a;--color-bg-subtle:#1e293b;--color-surface:#1e293b;--color-surface-soft:#1e293b;--color-surface-alt:#334155;--color-border:#334155;--color-border-strong:#475569;--color-text:#f1f5f9;--color-text-soft:#cbd5e1;--color-text-muted:#94a3b8;--color-text-faint:#64748b;--color-brand-50:#081c45;--color-brand-500:#5f8fff;--color-brand-600:#3b6df2;--color-brand-700:#2f57d0;--color-accent-500:#9b75ff;--color-accent-600:#7c4dff;--color-primary:var(--color-brand-500);--color-primary-hover:var(--color-brand-400);--color-primary-soft:#081c45;--color-success-50:#062d14;--color-success-500:#1fe066;--color-success-700:#18b451;--color-warning-50:#312002;--color-warning-500:#f7b23b;--color-warning-700:#dc8f09;--color-danger-50:#2f0404;--color-danger-500:#f37272;--color-danger-700:#ed2c2c;--color-info-50:#001933;--color-info-500:#3396ff;--color-info-700:#006fe6;--color-focus:#5f8fff;--color-subject-math:#38bdf8;--color-subject-science:#34d399;--color-subject-language:#fbbf24;--color-subject-history:#f87171;--color-subject-thinking:#a78bfa;--color-subject-geography:#22d3ee;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0006, 0 2px 4px -2px #0000004d;--shadow-lg:0 10px 15px -3px #0006, 0 4px 6px -4px #0000004d;--shadow-xl:0 20px 25px -5px #0006, 0 8px 10px -6px #0000004d}:root[data-contrast=high]{--color-bg:#fff;--color-bg-subtle:#f8fafc;--color-surface:#fff;--color-surface-soft:#fff;--color-surface-alt:#f1f5f9;--color-border:#64748b;--color-border-strong:#334155;--color-text:#020617;--color-text-soft:#0f172a;--color-text-muted:#1e293b;--color-text-faint:#334155;--color-brand-500:#1d4ed8;--color-brand-600:#1e40af;--color-brand-700:#1e3a8a;--color-accent-500:#6d28d9;--color-accent-600:#5b21b6;--color-accent-700:#4c1d95;--color-primary:var(--color-brand-600);--color-primary-hover:var(--color-brand-700);--color-focus:#1e40af;--shadow-sm:0 1px 3px 0 #0000001f;--shadow-md:0 4px 8px -1px #00000029, 0 2px 4px -2px #0000001f}:root[data-contrast=high].dark{--color-bg:#020617;--color-bg-subtle:#0f172a;--color-surface:#0f172a;--color-surface-soft:#0f172a;--color-surface-alt:#1e293b;--color-border:#64748b;--color-border-strong:#94a3b8;--color-text:#fff;--color-text-soft:#f1f5f9;--color-text-muted:#e2e8f0;--color-text-faint:#cbd5e1}.animate-on-scroll{opacity:0;transition:opacity .6s var(--ease-spring),transform .6s var(--ease-spring);transform:translateY(1.5rem)}.animate-on-scroll.is-visible{opacity:1;transform:translateY(0)}.animate-stagger>*{--stagger-delay:60ms;opacity:0;transition:opacity .5s var(--ease-spring),transform .5s var(--ease-spring);transform:translateY(.5rem)}.animate-stagger>.is-visible{opacity:1;transform:translateY(0)}.animate-stagger>:first-child{transition-delay:calc(var(--stagger-delay) * 0)}.animate-stagger>:nth-child(2){transition-delay:calc(var(--stagger-delay) * 1)}.animate-stagger>:nth-child(3){transition-delay:calc(var(--stagger-delay) * 2)}.animate-stagger>:nth-child(4){transition-delay:calc(var(--stagger-delay) * 3)}.animate-stagger>:nth-child(5){transition-delay:calc(var(--stagger-delay) * 4)}.animate-stagger>:nth-child(6){transition-delay:calc(var(--stagger-delay) * 5)}.animate-stagger>:nth-child(7){transition-delay:calc(var(--stagger-delay) * 6)}.animate-stagger>:nth-child(8){transition-delay:calc(var(--stagger-delay) * 7)}.animate-slide-left{opacity:0;transition:opacity .6s var(--ease-spring),transform .6s var(--ease-spring);transform:translate(-2rem)}.animate-slide-right{opacity:0;transition:opacity .6s var(--ease-spring),transform .6s var(--ease-spring);transform:translate(2rem)}.animate-slide-left.is-visible,.animate-slide-right.is-visible{opacity:1;transform:translate(0)}.hover-lift{transition:transform .25s var(--ease-spring),box-shadow .25s var(--ease-spring),border-color .25s var(--ease-spring)}.hover-lift:hover{border-color:#ffffff59;transform:translateY(-4px);box-shadow:0 12px 32px #0000001a,0 4px 12px #0000000f}.dark .hover-lift:hover{border-color:#ffffff26;box-shadow:0 12px 32px #0000004d,0 4px 12px #00000026}.scroll-progress{--progress-color:var(--color-brand-500);--progress-height:3px;width:100%;height:var(--progress-height);background:var(--progress-color);transform-origin:0;z-index:9999;animation:linear both scroll-progress;animation-timeline:scroll();position:fixed;top:0;left:0;scale:0 1}@keyframes scroll-progress{to{scale:1}}@supports not (animation-timeline:scroll()){.scroll-progress{display:none}}.progress-animate{transition:width .8s var(--ease-smooth)}@keyframes subtle-pulse{0%,to{opacity:1}50%{opacity:.7}}.animate-pulse-subtle{animation:2s ease-in-out infinite subtle-pulse}@media(prefers-reduced-motion:reduce){.animate-on-scroll,.animate-stagger>*,.animate-slide-left,.animate-slide-right{opacity:1;transition:none;transform:none}.hover-lift{transition:none}.hover-lift:hover{transform:none}.scroll-progress{animation:none;scale:1}.progress-animate{transition:none}.animate-pulse-subtle{animation:none}.btn-primary:active,.ui-btn-primary:active{transform:none}}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{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-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}
