@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";
:root{--color-primary-50:#fff7ed;--color-primary-100:#ffedd5;--color-primary-200:#fed7aa;--color-primary-300:#fdba74;--color-primary-400:#fb923c;--color-primary-500:#f97316;--color-primary-600:#ea580c;--color-primary-700:#c2410c;--color-primary-800:#9a3412;--color-primary-900:#7c2d12;--color-secondary-50:#fefce8;--color-secondary-100:#fef9c3;--color-secondary-200:#fef08a;--color-secondary-300:#fde047;--color-secondary-400:#facc15;--color-secondary-500:#eab308;--color-secondary-600:#ca8a04;--color-secondary-700:#a16207;--color-secondary-800:#854d0e;--color-secondary-900:#713f12;--color-cream-50:#fffbf5;--color-cream-100:#fff5e6;--color-cream-200:#ffecd0;--color-cream-300:#ffe0b2;--color-warm-brown-50:#faf5f0;--color-warm-brown-100:#f0e6d8;--color-warm-brown-200:#ded0be;--color-warm-brown-300:#c4ae94;--color-warm-brown-400:#a8896a;--color-warm-brown-500:#8d6e4c;--color-warm-brown-600:#6d5438;--color-warm-brown-700:#503d28;--color-warm-brown-800:#362818;--color-warm-brown-900:#1e160c;--color-success-50:#f0fdf4;--color-success-100:#dcfce7;--color-success-500:#22c55e;--color-success-600:#16a34a;--color-success-700:#15803d;--color-error-50:#fef2f2;--color-error-100:#fee2e2;--color-error-500:#ef4444;--color-error-600:#dc2626;--color-error-700:#b91c1c;--color-warning-50:#fffbeb;--color-warning-100:#fef3c7;--color-warning-500:#f59e0b;--color-warning-600:#d97706;--color-info-50:#eff6ff;--color-info-100:#dbeafe;--color-info-500:#3b82f6;--color-info-600:#2563eb;--bg-body:var(--color-cream-50);--bg-card:#fff;--bg-card-hover:#fefcf9;--bg-input:#fff;--bg-overlay:#1e160c80;--text-primary:var(--color-warm-brown-900);--text-secondary:var(--color-warm-brown-500);--text-muted:var(--color-warm-brown-300);--text-inverse:#fff;--text-link:var(--color-primary-600);--text-link-hover:var(--color-primary-700);--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-2xs:.625rem;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-size-6xl:3.75rem;--font-weight-light:300;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--line-height-tight:1.2;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--letter-spacing-tight:-.025em;--letter-spacing-normal:0;--letter-spacing-wide:.025em;--letter-spacing-wider:.05em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--shadow-xs:0 1px 2px #1e160c0a;--shadow-sm:0 1px 3px #1e160c0f, 0 1px 2px #1e160c0a;--shadow-md:0 4px 6px -1px #1e160c12, 0 2px 4px -2px #1e160c0d;--shadow-lg:0 10px 15px -3px #1e160c14, 0 4px 6px -4px #1e160c0a;--shadow-xl:0 20px 25px -5px #1e160c1a, 0 8px 10px -6px #1e160c0a;--shadow-2xl:0 25px 50px -12px #1e160c26;--shadow-glow:0 0 20px #f9731626;--shadow-glow-lg:0 0 40px #f9731633;--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);--transition-spring:.5s cubic-bezier(.34, 1.56, .64, 1);--z-dropdown:10;--z-sticky:20;--z-overlay:30;--z-modal:40;--z-tooltip:50;--z-toast:60;--container-sm:640px;--container-md:768px;--container-lg:1024px;--container-xl:1200px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-moz-text-size-adjust:100%;text-size-adjust:100%;font-size:16px}body{font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-normal);color:var(--text-primary);background-color:var(--bg-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:hidden}img,svg,video{max-width:100%;height:auto;display:block}a{color:var(--text-link);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--text-link-hover)}input,textarea,button,select{font-family:inherit;font-size:inherit;line-height:inherit}button{cursor:pointer;background:0 0;border:none}ul,ol{list-style:none}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);color:var(--text-primary)}h1{font-size:var(--font-size-5xl)}h2{font-size:var(--font-size-4xl)}h3{font-size:var(--font-size-3xl)}h4{font-size:var(--font-size-2xl)}h5{font-size:var(--font-size-xl)}h6{font-size:var(--font-size-lg)}p{line-height:var(--line-height-relaxed);color:var(--text-secondary)}.container{width:100%;max-width:var(--container-xl);padding:0 var(--space-6);margin:0 auto}.container--sm{max-width:var(--container-sm)}.container--md{max-width:var(--container-md)}.container--lg{max-width:var(--container-lg)}.section{padding:var(--space-20) 0}.section--sm{padding:var(--space-12) 0}.flex-center{justify-content:center;align-items:center;display:flex}.grid-2{gap:var(--space-6);grid-template-columns:repeat(2,1fr);display:grid}.grid-3{gap:var(--space-6);grid-template-columns:repeat(3,1fr);display:grid}.grid-4{gap:var(--space-6);grid-template-columns:repeat(4,1fr);display:grid}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);border-radius:var(--radius-lg);transition:all var(--transition-base);white-space:nowrap;-webkit-user-select:none;user-select:none;line-height:1;display:inline-flex;position:relative;overflow:hidden}.btn:after{content:"";opacity:0;transition:opacity var(--transition-fast);background:linear-gradient(135deg,#ffffff26 0%,#0000 50%);position:absolute;inset:0}.btn:hover:after{opacity:1}.btn:active{transform:scale(.97)}.btn--primary{background:linear-gradient(135deg, var(--color-primary-500), var(--color-primary-600));color:var(--text-inverse);box-shadow:var(--shadow-md), 0 2px 8px #f9731640}.btn--primary:hover{background:linear-gradient(135deg, var(--color-primary-400), var(--color-primary-500));box-shadow:var(--shadow-lg), 0 4px 12px #f9731659;transform:translateY(-1px)}.btn--secondary{background:var(--bg-card);color:var(--color-primary-600);border:2px solid var(--color-primary-200);box-shadow:var(--shadow-sm)}.btn--secondary:hover{background:var(--color-primary-50);border-color:var(--color-primary-400);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn--ghost{color:var(--text-secondary);background:0 0}.btn--ghost:hover{background:var(--color-warm-brown-50);color:var(--text-primary)}.btn--lg{padding:var(--space-4) var(--space-8);font-size:var(--font-size-lg);border-radius:var(--radius-xl)}.btn--sm{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);border-radius:var(--radius-md)}.btn--icon{padding:var(--space-3);border-radius:var(--radius-full)}.btn:disabled,.btn--disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn:disabled:hover,.btn--disabled:hover{box-shadow:none;transform:none!important}.btn:disabled:after,.btn--disabled:after{display:none}.card{background:var(--bg-card);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-sm);border:1px solid var(--color-cream-200);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-md);border-color:var(--color-cream-300)}.card--elevated{box-shadow:var(--shadow-lg);border:none}.card--elevated:hover{box-shadow:var(--shadow-xl);transform:translateY(-2px)}.card--glass{-webkit-backdrop-filter:blur(20px);background:#ffffffb3;border:1px solid #ffffff80}.card--glass:hover{box-shadow:var(--shadow-lg);background:#ffffffd9}.card--interactive{cursor:pointer}.card--interactive:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.input{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--font-size-base);color:var(--text-primary);background:var(--bg-input);border:2px solid var(--color-warm-brown-100);border-radius:var(--radius-lg);transition:all var(--transition-fast);outline:none}.input:focus{border-color:var(--color-primary-400);box-shadow:0 0 0 3px #f973161a}.input::placeholder{color:var(--text-muted)}.input--error{border-color:var(--color-error-500)}.input--error:focus{box-shadow:0 0 0 3px #ef44441a}.textarea{width:100%;padding:var(--space-4);font-size:var(--font-size-base);color:var(--text-primary);background:var(--bg-input);border:2px solid var(--color-warm-brown-100);border-radius:var(--radius-lg);transition:all var(--transition-fast);resize:vertical;min-height:150px;line-height:var(--line-height-relaxed);outline:none}.textarea:focus{border-color:var(--color-primary-400);box-shadow:0 0 0 3px #f973161a}.label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-2);display:block}.form-group{margin-bottom:var(--space-5)}.form-error{font-size:var(--font-size-sm);color:var(--color-error-600);margin-top:var(--space-1)}.option-group{gap:var(--space-3);flex-direction:column;display:flex}.option-btn{align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--bg-card);border:2px solid var(--color-warm-brown-100);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);text-align:left;font-size:var(--font-size-base);color:var(--text-primary);display:flex}.option-btn:hover{border-color:var(--color-primary-300);background:var(--color-primary-50)}.option-btn--selected{border-color:var(--color-primary-500);background:var(--color-primary-50);box-shadow:0 0 0 3px #f973161a}.option-btn__indicator{border-radius:var(--radius-full);border:2px solid var(--color-warm-brown-200);width:20px;height:20px;transition:all var(--transition-fast);flex-shrink:0;position:relative}.option-btn--selected .option-btn__indicator{border-color:var(--color-primary-500);background:var(--color-primary-500)}.option-btn--selected .option-btn__indicator:after{content:"";border-radius:var(--radius-full);background:#fff;width:8px;height:8px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.progress-bar{background:var(--color-warm-brown-100);border-radius:var(--radius-full);width:100%;height:8px;position:relative;overflow:hidden}.progress-bar__fill{background:linear-gradient(90deg, var(--color-primary-400), var(--color-primary-600));border-radius:var(--radius-full);height:100%;transition:width .6s cubic-bezier(.4,0,.2,1);position:relative}.progress-bar__fill:after{content:"";background:linear-gradient(90deg,#0000 0%,#ffffff4d 50%,#0000 100%);animation:2s infinite shimmer;position:absolute;inset:0}.badge{padding:var(--space-1) var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;border-radius:var(--radius-full);align-items:center;display:inline-flex}.badge--easy{background:var(--color-success-100);color:var(--color-success-700)}.badge--medium{background:var(--color-warning-100);color:var(--color-warning-600)}.badge--hard{background:var(--color-error-100);color:var(--color-error-700)}.badge--info{background:var(--color-info-100);color:var(--color-info-600)}.alert{padding:var(--space-4);border-radius:var(--radius-lg);font-size:var(--font-size-sm);align-items:flex-start;gap:var(--space-3);display:flex}.alert--success{background:var(--color-success-50);color:var(--color-success-700);border:1px solid var(--color-success-100)}.alert--error{background:var(--color-error-50);color:var(--color-error-700);border:1px solid var(--color-error-100)}.alert--warning{background:var(--color-warning-50);color:var(--color-warning-600);border:1px solid var(--color-warning-100)}.alert--info{background:var(--color-info-50);color:var(--color-info-600);border:1px solid var(--color-info-100)}.tooltip{position:relative}.tooltip__content{padding:var(--space-2) var(--space-3);background:var(--color-warm-brown-800);color:var(--text-inverse);font-size:var(--font-size-xs);border-radius:var(--radius-md);white-space:nowrap;opacity:0;visibility:hidden;transition:all var(--transition-fast);z-index:var(--z-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.tooltip:hover .tooltip__content{opacity:1;visibility:visible}.skeleton{background:linear-gradient(90deg, var(--color-warm-brown-50) 25%, var(--color-warm-brown-100) 50%, var(--color-warm-brown-50) 75%);border-radius:var(--radius-md);background-size:200% 100%;animation:1.5s ease-in-out infinite skeleton-loading}.skeleton--text{width:100%;height:1em;margin-bottom:var(--space-2)}.skeleton--circle{border-radius:var(--radius-full)}.gradient-hero{background:linear-gradient(135deg, var(--color-cream-50) 0%, var(--color-primary-50) 30%, var(--color-secondary-50) 60%, var(--color-cream-100) 100%)}.gradient-warm{background:linear-gradient(135deg, var(--color-primary-400) 0%, var(--color-secondary-400) 100%)}.gradient-warm-text{background:linear-gradient(135deg, var(--color-primary-500) 0%, var(--color-secondary-500) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.gradient-card{background:linear-gradient(145deg,#ffffffe6 0%,#fff7ed80 100%)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes pulseSoft{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes pulseRing{0%{opacity:1;transform:scale(.8)}to{opacity:0;transform:scale(2)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes progressFill{0%{width:0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes waveform{0%,to{height:4px}50%{height:20px}}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-100vh)rotate(0)}to{opacity:0;transform:translateY(100vh)rotate(720deg)}}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes countdownPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.animate-fade-in{animation:.6s cubic-bezier(.4,0,.2,1) forwards fadeIn}.animate-fade-in-up{animation:.6s cubic-bezier(.4,0,.2,1) forwards fadeInUp}.animate-slide-up{animation:.7s cubic-bezier(.4,0,.2,1) forwards slideUp}.animate-scale-in{animation:.4s cubic-bezier(.34,1.56,.64,1) forwards scaleIn}.animate-pulse{animation:2s ease-in-out infinite pulse}.animate-pulse-soft{animation:3s ease-in-out infinite pulseSoft}.animate-bounce{animation:1s ease-in-out infinite bounce}.animate-spin{animation:1s linear infinite spin}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}.stagger-6{animation-delay:.6s}@media (max-width:480px){:root{--font-size-5xl:2rem;--font-size-4xl:1.75rem;--font-size-3xl:1.5rem;--font-size-2xl:1.25rem}.container{padding:0 var(--space-4)}.section{padding:var(--space-12) 0}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.btn--lg{padding:var(--space-3) var(--space-6);font-size:var(--font-size-base)}}@media (min-width:481px) and (max-width:768px){:root{--font-size-5xl:2.5rem;--font-size-4xl:2rem}.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (min-width:769px) and (max-width:1024px){.grid-4{grid-template-columns:repeat(2,1fr)}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-cream-100);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:var(--color-warm-brown-200);border-radius:var(--radius-full);transition:background var(--transition-fast)}::-webkit-scrollbar-thumb:hover{background:var(--color-warm-brown-300)}:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px;border-radius:var(--radius-sm)}button:focus:not(:focus-visible),a:focus:not(:focus-visible),input:focus:not(:focus-visible){outline:none}::selection{background:var(--color-primary-200);color:var(--color-primary-900)}::selection{background:var(--color-primary-200);color:var(--color-primary-900)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{body{color:#000!important;background:#fff!important}.no-print,button,header,footer,nav,.btn,.no-print-area{display:none!important}.card{page-break-inside:avoid;box-shadow:none!important;background:0 0!important;border:1px solid #ddd!important}}
