@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/cd79e1ff94fa521b-s.p.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/89362aa296165c6d-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e11f95d95ac59fa4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/00f4982f357db61e-s.p.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/62a3c74fa0e47362-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8201559e247ad180-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/2173e4bb28c315da-s.p.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c6f81e539d11fc99-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/25ab8995c98996d7-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/9ddf1512dbee9c99-s.p.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8247d8d2a376ae43-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e270c9fc4fe96f5a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Be Vietnam Pro Fallback;src:local("Arial");ascent-override:90.61%;descent-override:24.01%;line-gap-override:0.00%;size-adjust:110.36%}.__className_83907a{font-family:Be Vietnam Pro,Be Vietnam Pro Fallback;font-style:normal}.__variable_83907a{--font-sans:"Be Vietnam Pro","Be Vietnam Pro Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/886030b0b59bc5a7-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/0aa834ed78bf6d07-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/67957d42bae0796d-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/f911b923c6adde36-s.p.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/939c4f875ee75fbb-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/bb3ef058b751a6ad-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_eabdf6{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_eabdf6{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}:root{--primary-50:#e0f2fe;--primary-100:#bae6fd;--primary-200:#7dd3fc;--primary-300:#38bdf8;--primary-400:#0ea5e9;--primary-500:#0284c7;--primary-600:#0369a1;--primary-700:#075985;--accent-400:#fb923c;--accent-500:#f97316;--accent-600:#ea580c;--success-400:#4ade80;--success-500:#22c55e;--success-600:#16a34a;--error-400:#f87171;--error-500:#ef4444;--error-600:#dc2626;--warning-400:#facc15;--warning-500:#eab308;--white:#fff;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--bg-primary:var(--white);--bg-secondary:var(--gray-50);--bg-tertiary:var(--gray-100);--text-primary:var(--gray-900);--text-secondary:var(--gray-600);--text-muted:var(--gray-400);--border-color:var(--gray-200);--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--font-sans:"Be Vietnam Pro",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:"JetBrains Mono","Fira Code","Consolas",monospace;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.625;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.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;--transition-fast:150ms ease;--transition-normal:200ms ease;--transition-slow:300ms ease;--z-dropdown:1000;--z-sticky:1100;--z-modal:1200;--z-tooltip:1300;--font-serif:"Times New Roman",Times,serif}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-primary);background-color:var(--bg-primary);min-height:100vh}.app-wrapper{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:var(--leading-tight);color:var(--text-primary)}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}p{margin-bottom:var(--space-4);color:var(--text-secondary)}a{color:var(--primary-500);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-600)}code,pre{font-family:var(--font-mono)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:500;line-height:1;border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--primary-500),var(--primary-600));color:var(--white);box-shadow:var(--shadow-md),0 2px 8px rgba(2,132,199,.25)}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-600),var(--primary-700));transform:translateY(-1px);box-shadow:var(--shadow-lg),0 4px 12px rgba(2,132,199,.3)}.btn-secondary{background:var(--white);color:var(--text-primary);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.btn-secondary:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-300)}.btn-accent{background:linear-gradient(135deg,var(--accent-500),var(--accent-600));color:var(--white);box-shadow:var(--shadow-md),0 2px 8px rgba(249,115,22,.25)}.btn-accent:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-600),#c2410c);transform:translateY(-1px)}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--text-base);border-radius:var(--radius-xl)}.btn-sm{padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}.card{background:var(--white);border-radius:var(--radius-xl);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);overflow:hidden}.card-hover{transition:all var(--transition-normal)}.card-hover:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-color)}.card-body{padding:var(--space-6)}.card-footer{padding:var(--space-4) var(--space-6);background:var(--bg-secondary);border-top:1px solid var(--border-color)}.input{width:100%;padding:var(--space-3) var(--space-4);font-family:var(--font-sans);font-size:var(--text-base);color:var(--text-primary);background:var(--white);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.input:focus{outline:none;border-color:var(--primary-400);box-shadow:0 0 0 3px rgba(14,165,233,.15)}.input:disabled{background:var(--bg-secondary);cursor:not-allowed}.input-lg{padding:var(--space-4) var(--space-5);font-size:var(--text-lg)}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 var(--space-4)}@media (min-width:768px){.container{padding:0 var(--space-6)}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}@media (max-width:768px){.grid-cols-2,.grid-cols-3{grid-template-columns:1fr}}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.p-2{padding:var(--space-2)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-sm{font-size:var(--text-sm)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-primary-color{color:var(--primary-500)}.text-success{color:var(--success-500)}.text-error{color:var(--error-500)}.typing-area{font-family:var(--font-mono);font-size:var(--text-xl);line-height:1.8;padding:var(--space-6);background:var(--bg-secondary);border-radius:var(--radius-xl);border:2px solid var(--border-color)}.typing-char{display:inline}.typing-char.current{background:var(--primary-100);border-bottom:2px solid var(--primary-500)}.typing-char.correct{color:var(--success-600)}.typing-char.incorrect{color:var(--error-500);background:var(--error-400);border-radius:2px}.typing-char.pending{color:var(--text-muted)}.stats-panel{display:flex;gap:var(--space-6);padding:var(--space-4) var(--space-6);background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.stat-item{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.stat-value{font-size:var(--text-3xl);font-weight:700;color:var(--primary-600);font-family:var(--font-mono)}.stat-label{font-size:var(--text-sm);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.stat-wpm .stat-value{background:linear-gradient(135deg,var(--primary-500),var(--primary-600));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.animate-fadeIn{animation:fadeIn var(--transition-normal)}.animate-slideUp{animation:slideUp var(--transition-slow)}.animate-pulse{animation:pulse 2s infinite}.keyboard{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);background:var(--bg-tertiary);border-radius:var(--radius-xl)}.keyboard-row{gap:var(--space-1)}.key,.keyboard-row{display:flex;justify-content:center}.key{align-items:center;width:44px;height:44px;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:500;color:var(--text-primary);background:var(--white);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.key.active{background:linear-gradient(135deg,var(--primary-400),var(--primary-500));color:var(--white);transform:scale(1.1);box-shadow:var(--shadow-md),0 0 12px rgba(14,165,233,.4)}.key.hint{background:var(--primary-50);border-color:var(--primary-300)}.key.finger-pinky-left{border-bottom:3px solid #ec4899}.key.finger-ring-left{border-bottom:3px solid #a855f7}.key.finger-middle-left{border-bottom:3px solid #3b82f6}.key.finger-index-left{border-bottom:3px solid #22c55e}.key.finger-index-right{border-bottom:3px solid #eab308}.key.finger-middle-right{border-bottom:3px solid #3b82f6}.key.finger-ring-right{border-bottom:3px solid #a855f7}.key.finger-pinky-right{border-bottom:3px solid #ec4899}.race-track{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);background:linear-gradient(180deg,var(--gray-100),var(--gray-50));border-radius:var(--radius-xl);border:1px solid var(--border-color)}.race-lane{display:flex;align-items:center;gap:var(--space-3);height:48px;padding:0 var(--space-3);background:var(--white);border-radius:var(--radius-lg);position:relative;overflow:hidden}.race-lane:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent,transparent 20px,var(--gray-100) 20px,var(--gray-100) 21px)}.race-player-name{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);width:100px;z-index:1}.race-progress-bar{flex:1 1;height:8px;background:var(--gray-200);border-radius:var(--radius-full);position:relative;z-index:1}.race-progress-fill{height:100%;background:linear-gradient(90deg,var(--primary-400),var(--primary-500));border-radius:var(--radius-full);transition:width var(--transition-normal)}.race-vehicle{font-size:var(--text-xl);position:absolute;transition:left var(--transition-normal);z-index:2}.vehicle-level-1:after{content:"🚶"}.vehicle-level-2:after{content:"🚲"}.vehicle-level-3:after{content:"🏍️"}.vehicle-level-4:after{content:"🚗"}.vehicle-level-5:after{content:"✈️"}.vehicle-level-6:after{content:"🚀"}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-full)}.badge-primary{background:var(--primary-100);color:var(--primary-700)}.badge-success{background:var(--success-400);color:var(--white)}.badge-gold{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:var(--white)}.badge-silver{background:linear-gradient(135deg,#cbd5e1,#94a3b8);color:var(--white)}.badge-bronze{background:linear-gradient(135deg,#d97706,#b45309);color:var(--white)}.level-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);background:var(--accent-500);color:var(--white);font-size:var(--text-sm);font-weight:600;border-radius:var(--radius-full)}.leaderboard{display:flex;flex-direction:column;gap:var(--space-2)}.leaderboard-item{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--white);border-radius:var(--radius-lg);border:1px solid var(--border-color);transition:all var(--transition-fast)}.leaderboard-item:hover{background:var(--bg-secondary)}.leaderboard-item.rank-1{border-color:#fbbf24;background:linear-gradient(90deg,rgba(251,191,36,.1),transparent)}.leaderboard-item.rank-2{border-color:#94a3b8;background:linear-gradient(90deg,rgba(148,163,184,.1),transparent)}.leaderboard-item.rank-3{border-color:#d97706;background:linear-gradient(90deg,rgba(217,119,6,.1),transparent)}.leaderboard-rank{font-size:var(--text-xl);font-weight:700;width:40px;text-align:center}.leaderboard-avatar{width:40px;height:40px;border-radius:var(--radius-full);object-fit:cover}.leaderboard-info{flex:1 1}.leaderboard-name{font-weight:600;color:var(--text-primary)}.leaderboard-stats{font-size:var(--text-sm);color:var(--text-muted)}.leaderboard-wpm{font-size:var(--text-lg);font-weight:700;color:var(--primary-600);font-family:var(--font-mono)}.Footer_footer__eNA9m{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:var(--space-12) 0 var(--space-6);margin-top:auto}.Footer_footerContainer__oD0EQ{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:var(--space-8);gap:var(--space-8);align-items:start}.Footer_brand__Lj6Sp{display:flex;flex-direction:column;gap:var(--space-2)}.Footer_logo__8uCHD{display:flex;align-items:center;gap:var(--space-2);text-decoration:none;color:var(--text-primary)}.Footer_logoIcon__WWDSF{font-size:var(--text-xl)}.Footer_logoText__SzK4_{font-size:var(--text-lg);font-weight:700;color:var(--primary-600)}.Footer_tagline__WuViG{font-size:var(--text-sm);color:var(--text-muted);margin:0}.Footer_links__13oK3{display:flex;gap:var(--space-12)}.Footer_linkGroup__D6mKM{display:flex;flex-direction:column;gap:var(--space-2)}.Footer_linkTitle__llRF3{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-1)}.Footer_linkGroup__D6mKM a{font-size:var(--text-sm);color:var(--text-secondary);text-decoration:none;transition:color var(--transition-fast)}.Footer_linkGroup__D6mKM a:hover{color:var(--primary-500)}.Footer_copyright__vFlrA{text-align:right}.Footer_copyright__vFlrA p{font-size:var(--text-sm);color:var(--text-muted);margin:0}@media (max-width:768px){.Footer_footerContainer__oD0EQ{grid-template-columns:1fr;text-align:center}.Footer_links__13oK3{justify-content:center;flex-wrap:wrap;gap:var(--space-6)}.Footer_copyright__vFlrA{text-align:center}}.Header_header__hO3lJ{position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-sticky);background:hsla(0,0%,100%,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color)}.Header_headerContainer__GdAlq{display:flex;align-items:center;justify-content:space-between;height:64px}.Header_logo__e5KhT{display:flex;align-items:center;gap:var(--space-2);text-decoration:none;color:var(--text-primary)}.Header_logoIcon__VF71g{font-size:var(--text-2xl)}.Header_logoText__4ZhAR{font-size:var(--text-xl);font-weight:700;background:linear-gradient(135deg,var(--primary-500),var(--primary-600));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.Header_nav__3fHSH{display:flex;align-items:center;gap:var(--space-1)}.Header_navLink__LzXns{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);text-decoration:none;border-radius:var(--radius-lg);transition:all var(--transition-fast)}.Header_navLink__LzXns:hover{color:var(--text-primary);background:var(--bg-secondary)}.Header_navLink__LzXns.Header_active__HNQqd{color:var(--primary-600);background:var(--primary-50)}.Header_actions__SRauh{display:flex;align-items:center;gap:var(--space-3)}.Header_langSwitch__mffcZ{display:flex;align-items:center;justify-content:center;width:40px;height:40px;font-size:var(--text-xl);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.Header_langSwitch__mffcZ:hover{background:var(--bg-tertiary);transform:scale(1.05)}.Header_mobileMenuBtn__XrV0l{display:none;flex-direction:column;justify-content:center;gap:4px;width:40px;height:40px;padding:8px;background:none;border:none;cursor:pointer}.Header_mobileMenuBtn__XrV0l span{display:block;width:100%;height:2px;background:var(--text-primary);border-radius:2px;transition:all var(--transition-fast)}@media (max-width:768px){.Header_actions__SRauh,.Header_nav__3fHSH{display:none}.Header_mobileMenuBtn__XrV0l{display:flex}}.Header_mobileMenuBtn__XrV0l.Header_mobileMenuOpen__jlZ4l span:first-child{transform:rotate(45deg) translate(5px,5px)}.Header_mobileMenuBtn__XrV0l.Header_mobileMenuOpen__jlZ4l span:nth-child(2){opacity:0}.Header_mobileMenuBtn__XrV0l.Header_mobileMenuOpen__jlZ4l span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.Header_mobileMenu___oHDY{display:none;flex-direction:column;background:var(--white);border-top:1px solid var(--border-color);padding:var(--space-4)}@media (max-width:768px){.Header_mobileMenu___oHDY{display:flex}}.Header_mobileNav__HHzTb{display:flex;flex-direction:column;gap:var(--space-1)}.Header_mobileNavLink__cGBRQ{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-size:var(--text-base);font-weight:500;color:var(--text-primary);text-decoration:none;border-radius:var(--radius-lg);transition:all var(--transition-fast)}.Header_mobileNavLink__cGBRQ:hover{background:var(--bg-secondary)}.Header_mobileDivider__Zl53K{height:1px;background:var(--border-color);margin:var(--space-3) 0}.Header_mobileActions___Jwz_{display:flex;flex-direction:column;gap:var(--space-2)}.Header_mobileActionBtn__g4mTn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--text-secondary);text-decoration:none;background:none;border:none;border-radius:var(--radius-lg);cursor:pointer;text-align:left;transition:all var(--transition-fast)}.Header_mobileActionBtn__g4mTn:hover{background:var(--bg-secondary);color:var(--text-primary)}.Header_mobileLoginBtn__w7P9r{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-size:var(--text-base);font-weight:600;color:var(--white);text-decoration:none;background:linear-gradient(135deg,var(--primary-400),var(--primary-600));border-radius:var(--radius-lg);transition:all var(--transition-fast)}.Header_mobileLoginBtn__w7P9r:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(59,130,246,.3)}.Header_loadingSpinner__6xJj9{width:24px;height:24px;border:2px solid var(--gray-200);border-top-color:var(--primary-500);border-radius:50%;animation:Header_spin__UL_47 .8s linear infinite}@keyframes Header_spin__UL_47{to{transform:rotate(1turn)}}.Header_userMenu__XfrJB{position:relative}.Header_userButton__6__0T{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.Header_userButton__6__0T:hover{background:var(--bg-tertiary)}.Header_userAvatar__2ylfw{width:32px;height:32px;border-radius:var(--radius-full);object-fit:cover}.Header_userAvatarPlaceholder__KRyBy{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--primary-500);color:var(--white);font-weight:600;font-size:var(--text-sm);border-radius:var(--radius-full)}.Header_userName__y5UKs{font-size:var(--text-sm);font-weight:500;color:var(--text-primary);max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.Header_userLevel__Jq2Ij{font-size:var(--text-xs);font-weight:600;color:var(--white);background:var(--accent-500);padding:2px 6px;border-radius:var(--radius-full)}.Header_dropdown__DtJe3{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;background:var(--white);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transform:translateY(-8px);transition:all var(--transition-fast);z-index:var(--z-dropdown)}.Header_userMenu__XfrJB:focus-within .Header_dropdown__DtJe3,.Header_userMenu__XfrJB:hover .Header_dropdown__DtJe3{opacity:1;visibility:visible;transform:translateY(0)}.Header_dropdownItem__MMIVm{display:block;width:100%;padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--text-primary);text-decoration:none;text-align:left;background:none;border:none;cursor:pointer;transition:background var(--transition-fast)}.Header_dropdownItem__MMIVm:hover{background:var(--bg-secondary)}.Header_dropdownDivider__C2rkh{margin:var(--space-1) 0;border:none;border-top:1px solid var(--border-color)}