:root{--color-black: #1A1A1A;--color-beige: #E3E2D2;--color-green: #0E5C4C;--color-pink: #FFE2E6;--color-bg: #FFFEF0;--color-surface: #ffffff;--color-surface-hover: #f5f3e8;--color-surface-active: #eeebe0;--color-border: #e2dcd2;--color-border-light: #eae5db;--color-text: #1A1A1A;--color-text-secondary: #3d3d35;--color-text-muted: #7a7a6e;--color-text-placeholder: #b0ab9e;--color-primary: #0E5C4C;--color-primary-hover: #0a4739;--color-primary-text: #ffffff;--color-accent: #0E5C4C;--color-accent-light: rgba(14, 92, 76, .08);--color-accent-border: rgba(14, 92, 76, .2);--color-pink-bg: #FFE2E6;--color-success: #0E5C4C;--color-success-bg: #d8f3dc;--color-locked: #b8b4ac;--color-locked-bg: #eeebe6;--font-serif: "Lora", Georgia, serif;--font-sans: "Inter", system-ui, sans-serif;--text-2xs: 10px;--text-xs: 11px;--text-sm: 13px;--text-base: 15px;--text-md: 16px;--text-lg: 19px;--text-xl: 22px;--text-2xl: 28px;--text-3xl: 34px;--text-hero: clamp(2.75rem, 5.5vw, 3.75rem);--text-dead-simple: clamp(1.75rem, 3vw, 2.25rem);--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--leading-tight: 1.2;--leading-snug: 1.35;--leading-normal: 1.55;--leading-relaxed: 1.72;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--announce-height: 36px;--nav-height: 62px;--sidebar-width: 256px;--tutor-width: 288px;--content-max: 700px;--page-max: 1100px;--page-px: 32px;--radius-sm: 5px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 22px;--radius-3xl: 32px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(26, 20, 10, .05);--shadow-sm: 0 1px 4px rgba(26, 20, 10, .07);--shadow-md: 0 4px 14px rgba(26, 20, 10, .09);--shadow-lg: 0 10px 36px rgba(26, 20, 10, .11);--shadow-dropdown: 0 8px 28px rgba(26, 20, 10, .13);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--duration-fast: .14s;--duration-normal: .2s;--duration-slow: .3s}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-tap-highlight-color:transparent;scroll-behavior:smooth}body{font-family:var(--font-sans);font-size:var(--text-base);color:var(--color-text);background-color:var(--color-bg);line-height:var(--leading-normal);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}img,svg{display:block;max-width:100%}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:var(--weight-semibold);line-height:var(--leading-tight);color:var(--color-text)}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}p{line-height:var(--leading-relaxed)}.card{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.chip{display:inline-flex;align-items:center;padding:7px 14px;border-radius:var(--radius-full);border:1px solid var(--color-border);background:var(--color-surface);font-size:var(--text-sm);font-family:var(--font-sans);color:var(--color-text);cursor:pointer;transition:background-color var(--duration-fast),border-color var(--duration-fast)}.chip:hover{background:var(--color-surface-hover)}.chip--active{background:var(--color-surface-hover);border-color:var(--color-border)}.section-label{font-size:var(--text-2xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);font-family:var(--font-sans)}.pro-tip{padding:14px 16px;background:linear-gradient(180deg,#f0f7f0,#fff);border:1px solid rgba(28,63,42,.18);border-radius:var(--radius-md);box-shadow:0 1px 2px #1c3f2a0f}.pro-tip__label{display:flex;align-items:center;font-size:var(--text-2xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text);margin-bottom:6px;font-family:var(--font-sans)}.pro-tip__text{font-size:var(--text-xs);color:var(--color-text-secondary);line-height:1.55}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:fadeInUp var(--duration-normal) var(--ease-out)}@keyframes dropdownIn{0%{opacity:0;transform:translate(-50%) translateY(-8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes modalBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes modalIn{0%{opacity:0;transform:scale(.97) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes drawerIn{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes tutorSlideIn{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes progressGrow{0%{width:0}}@keyframes pigBounce{0%,to{transform:translateY(0) rotate(0)}30%{transform:translateY(-6px) rotate(-1.5deg)}70%{transform:translateY(-2px) rotate(1.5deg)}}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes thinkingDot{0%,80%,to{transform:translateY(0);opacity:.35}40%{transform:translateY(-6px);opacity:1}}@keyframes chipIn{0%{opacity:0;transform:scale(.96) translateY(3px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes pigShake{0%,to{transform:translateY(0) rotate(0)}15%{transform:translateY(-2px) rotate(-3deg)}30%{transform:translateY(0) rotate(2deg)}45%{transform:translateY(-1px) rotate(-2deg)}60%{transform:translateY(0) rotate(1deg)}75%{transform:translateY(-1px) rotate(-1deg)}}@keyframes coinDrop{0%{transform:translateY(-80px);opacity:1}70%{transform:translateY(12px);opacity:1}to{transform:translateY(18px);opacity:0}}@keyframes loadingDotsBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-8px)}}@keyframes pigsWalk{0%,to{transform:translate(0)}50%{transform:translate(20px)}}.stagger-item{animation:fadeInUp var(--duration-slow) var(--ease-out) both}.stagger-item:nth-child(1){animation-delay:0ms}.stagger-item:nth-child(2){animation-delay:35ms}.stagger-item:nth-child(3){animation-delay:70ms}.stagger-item:nth-child(4){animation-delay:105ms}.stagger-item:nth-child(5){animation-delay:.14s}.stagger-item:nth-child(6){animation-delay:175ms}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media(max-width:768px){.nav-links{display:none!important}.nav-hamburger{display:flex!important}}
