:root{--color-bg: #ffffff;--color-bg-secondary: #fafafa;--color-bg-card: #ffffff;--color-bg-elevated: #f4f4f5;--color-primary: #4f46e5;--color-primary-light: #6366f1;--color-primary-dark: #4338ca;--color-secondary: #ec4899;--color-accent: #06b6d4;--color-text: #18181b;--color-text-secondary: #52525b;--color-text-muted: #a1a1aa;--color-border: #e4e4e7;--color-border-light: #f4f4f5;--color-easy: #22c55e;--color-medium: #f59e0b;--color-hard: #ef4444;--color-success: #22c55e;--color-error: #ef4444;--gradient-primary: linear-gradient(135deg, #4f46e5, #6366f1);--gradient-card: linear-gradient(180deg, rgba(79, 70, 229, .05), transparent);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1);--shadow-glow: 0 0 40px rgba(79, 70, 229, .15);--shadow-indigo: 0 25px 50px -12px rgba(79, 70, 229, .25);--font-sans: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-2xl: 32px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s cubic-bezier(.4, 0, .2, 1)}@media(prefers-color-scheme:dark){:root{--color-bg: #09090b;--color-bg-secondary: #18181b;--color-bg-card: #18181b;--color-bg-elevated: #27272a;--color-text: #f4f4f5;--color-text-secondary: #a1a1aa;--color-text-muted: #71717a;--color-border: #27272a;--color-border-light: #3f3f46}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-sans);background-color:var(--color-bg);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea{font-family:inherit;font-size:inherit}.gradient-text{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.highlight{color:var(--color-primary)}.spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 32px;font-size:.95rem;font-weight:700;border-radius:var(--radius-full);transition:all var(--transition-base);white-space:nowrap}.btn-primary{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-indigo)}.btn-primary:hover{background:var(--color-primary-dark);transform:translateY(-2px)}.btn-primary:active{transform:scale(.95)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-outline{border:1px solid var(--color-border);color:var(--color-text);background:transparent}.btn-outline:hover{border-color:var(--color-primary);background:#4f46e50d;color:var(--color-primary)}.btn-ghost{color:var(--color-text-secondary);padding:10px 16px}.btn-ghost:hover{color:var(--color-text);background:var(--color-bg-elevated)}.btn-ghost:hover{color:var(--color-text);background:#ffffff0d}.btn-lg{padding:16px 32px;font-size:1.05rem}.btn-block{width:100%}.btn-group{display:flex;gap:12px}.logo{display:flex;align-items:center;gap:10px;font-size:1.4rem;font-weight:700;color:var(--color-text)}.logo svg{color:var(--color-primary)}.landing-page{min-height:100vh;background:var(--color-bg)}.landing-nav{display:flex;justify-content:space-between;align-items:center;padding:20px 48px;border-bottom:1px solid var(--color-border);position:sticky;top:0;background:var(--color-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:50}.logo-link{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--color-text)}.logo-link:hover .logo-text{color:var(--color-primary)}.logo-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.logo-icon-small svg{width:24px;height:24px}.logo-text{font-weight:700;font-size:1.25rem;letter-spacing:-.02em;text-transform:uppercase;transition:color var(--transition-fast)}.nav-actions{display:flex;align-items:center;gap:24px}.nav-link-text{font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);transition:color var(--transition-fast)}.nav-link-text:hover{color:var(--color-text)}.hero-section{padding:80px 48px;min-height:calc(100vh - 80px);display:flex;align-items:center}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;max-width:1400px;margin:0 auto;width:100%;align-items:center}.hero-text{max-width:700px}.hero-title{font-size:clamp(3rem,8vw,6rem);font-weight:700;letter-spacing:-.04em;line-height:.9;margin-bottom:32px;color:var(--color-text)}.hero-highlight{color:var(--color-primary);font-style:italic;font-weight:500}.hero-description{font-size:1.25rem;line-height:1.7;color:var(--color-text-secondary);margin-bottom:40px}.text-underline{color:var(--color-text);font-weight:700;text-decoration:underline;text-decoration-color:#4f46e54d;text-underline-offset:4px}.hero-buttons{display:flex;gap:16px;flex-wrap:wrap}.hero-visual{position:relative;height:500px;display:flex;align-items:center;justify-content:center}.peer-card{position:absolute;background:var(--color-bg-card);border-radius:var(--radius-2xl);padding:32px;display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .4s cubic-bezier(.175,.885,.32,1.275)}.peer-card-back{width:280px;height:380px;border:1px solid var(--color-border);transform:rotate(-12deg) translate(-40px);opacity:.4}.peer-card-main{width:280px;height:380px;border:2px solid var(--color-primary);transform:rotate(3deg) translate(20px);z-index:10;box-shadow:0 0 40px #4f46e526}.peer-avatar-placeholder{width:80px;height:80px;border-radius:var(--radius-full);background:var(--color-border);margin-bottom:24px}.peer-name-placeholder{width:120px;height:16px;border-radius:var(--radius-sm);background:var(--color-border);margin-bottom:12px}.peer-tag-placeholder{width:80px;height:12px;border-radius:var(--radius-sm);background:var(--color-border-light)}.peer-avatar{width:96px;height:96px;border-radius:var(--radius-full);background:#4f46e51a;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;color:var(--color-primary);margin-bottom:20px}.peer-name{font-size:1.5rem;font-weight:700;margin-bottom:4px}.peer-status{font-size:.7rem;text-transform:uppercase;letter-spacing:.2em;font-weight:700;color:var(--color-text-muted);margin-bottom:16px}.peer-topic{font-size:1rem;font-weight:600;color:var(--color-primary);margin-bottom:8px}.peer-goal{font-size:.85rem;color:var(--color-text-muted);font-style:italic;margin-bottom:24px}.peer-actions{display:flex;gap:32px;margin-top:auto}.action-pass,.action-match{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;transition:transform var(--transition-fast)}.action-pass{color:var(--color-error)}.action-match{color:var(--color-success)}.action-pass:hover,.action-match:hover{transform:scale(1.1)}@media(max-width:1024px){.hero-grid{grid-template-columns:1fr;text-align:center}.hero-text{max-width:100%;order:2}.hero-visual{height:350px;order:1}.hero-buttons{justify-content:center}.peer-card-back{display:none}.peer-card-main{transform:none;position:static}}@media(max-width:768px){.landing-nav{padding:16px 24px}.hero-section{padding:40px 24px}.hero-title{font-size:2.5rem}.hero-description{font-size:1rem}.hero-visual{display:none}.features,.cta-section{padding:60px 24px}}.features{padding:100px 24px;max-width:1200px;margin:0 auto}.features h2{font-size:2.5rem;text-align:center;margin-bottom:60px}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px}.feature-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:32px;transition:all var(--transition-base)}.feature-card:hover{transform:translateY(-8px);border-color:var(--color-primary);box-shadow:var(--shadow-glow)}.feature-icon{width:64px;height:64px;border-radius:var(--radius-lg);background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;margin-bottom:24px;color:#fff}.feature-card h3{font-size:1.3rem;margin-bottom:12px}.feature-card p{color:var(--color-text-secondary);line-height:1.7}.algorithm-section{padding:100px 24px;background:var(--color-bg-secondary)}.algorithm-content{max-width:700px;margin:0 auto}.algorithm-content h2{font-size:2rem;margin-bottom:16px}.algorithm-content>p{color:var(--color-text-secondary);margin-bottom:40px}.scoring-breakdown{display:flex;flex-direction:column;gap:16px}.score-item{position:relative}.score-bar{height:40px;background:var(--gradient-primary);border-radius:var(--radius-md);opacity:.8}.score-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-weight:600;font-size:.9rem}.cta-section{padding:100px 24px;text-align:center}.cta-section h2{font-size:2.5rem;margin-bottom:16px}.cta-section p{color:var(--color-text-secondary);margin-bottom:32px;font-size:1.1rem}.footer{padding:40px 24px;border-top:1px solid var(--color-border)}.footer-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.footer-content p{color:var(--color-text-muted)}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(circle at 50% 0%,rgba(79,70,229,.15) 0%,transparent 50%)}.auth-container{width:100%;max-width:440px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:48px 40px}.auth-header{text-align:center;margin-bottom:40px}.auth-header .logo{justify-content:center;margin-bottom:32px}.auth-header h1{font-size:1.8rem;margin-bottom:8px}.auth-header p{color:var(--color-text-secondary)}.auth-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:.9rem;font-weight:500;color:var(--color-text-secondary)}.form-group input{padding:14px 16px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);transition:all var(--transition-fast)}.form-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #4f46e533}.form-group input::placeholder{color:var(--color-text-muted)}.password-input{position:relative}.password-input input{width:100%;padding-right:48px}.password-toggle{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);transition:color var(--transition-fast)}.password-toggle:hover{color:var(--color-text)}.form-hint{font-size:.8rem;color:var(--color-text-muted)}.error-message{padding:12px 16px;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:var(--color-error);font-size:.9rem;display:flex;align-items:center;gap:8px}.form-group.has-error input{border-color:var(--color-error)}.form-group.has-error input:focus{box-shadow:0 0 0 3px #ef444433}.field-error{font-size:.8rem;color:var(--color-error);display:flex;align-items:center;gap:4px}.field-success{font-size:.8rem;color:var(--color-success);display:flex;align-items:center;gap:4px}.leetcode-connect-section{margin-bottom:24px}.leetcode-link{display:inline-flex;align-items:center;gap:4px;font-size:.85rem;color:var(--color-primary);margin-top:8px;transition:opacity var(--transition-fast)}.auth-footer{margin-top:32px;text-align:center;color:var(--color-text-secondary)}.auth-footer a{color:var(--color-primary);font-weight:600}.auth-footer a:hover{text-decoration:underline}.step-indicator{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:32px}.step{width:36px;height:36px;border-radius:var(--radius-full);background:var(--color-bg);border:2px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem;color:var(--color-text-muted);transition:all var(--transition-base)}.step.active{border-color:var(--color-primary);color:var(--color-primary)}.step.completed{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.step-line{width:40px;height:2px;background:var(--color-border)}.leetcode-preview{background:var(--color-bg);border-radius:var(--radius-md);padding:20px;margin-top:8px}.preview-icon{font-size:2rem;margin-bottom:12px}.leetcode-preview p{color:var(--color-text-secondary);margin-bottom:12px}.leetcode-preview ul{list-style:none;display:flex;flex-direction:column;gap:8px}.leetcode-preview li{color:var(--color-text-muted);font-size:.9rem}.leetcode-preview li:before{content:"✓ ";color:var(--color-success)}.onboarding-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.onboarding-container{width:100%;max-width:600px}.onboarding-header{text-align:center;margin-bottom:32px}.onboarding-header .logo{justify-content:center;margin-bottom:24px}.progress-bar{height:4px;background:var(--color-bg-card);border-radius:var(--radius-full);overflow:hidden}.progress{height:100%;background:var(--gradient-primary);transition:width var(--transition-base)}.onboarding-step{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:40px}.onboarding-step h2{font-size:1.5rem;margin-bottom:8px}.onboarding-step>p{color:var(--color-text-secondary);margin-bottom:32px}.topics-grid,.languages-grid{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:32px}.topic-chip,.language-chip{padding:10px 18px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:.9rem;color:var(--color-text-secondary);display:flex;align-items:center;gap:6px;transition:all var(--transition-fast)}.topic-chip:hover,.language-chip:hover{border-color:var(--color-primary);color:var(--color-text)}.topic-chip.selected,.language-chip.selected{background:#4f46e533;border-color:var(--color-primary);color:var(--color-primary-light)}.difficulty-options{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px}.difficulty-card{background:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:24px 16px;text-align:center;transition:all var(--transition-base)}.difficulty-card:hover{border-color:var(--color-primary)}.difficulty-card.selected{border-color:var(--color-primary);background:#4f46e51a}.difficulty-icon{font-size:2rem;margin-bottom:12px}.difficulty-label{display:block;font-weight:600;margin-bottom:4px}.difficulty-desc{font-size:.8rem;color:var(--color-text-muted)}.style-options{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.style-card{display:flex;align-items:center;gap:16px;background:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:16px 20px;text-align:left;transition:all var(--transition-base)}.style-card:hover{border-color:var(--color-primary)}.style-card.selected{border-color:var(--color-primary);background:#4f46e51a}.style-icon{font-size:1.5rem}.style-label{font-weight:600;margin-right:8px}.style-desc{color:var(--color-text-muted);font-size:.9rem}.daily-goal{margin-bottom:32px}.daily-goal label{display:block;font-weight:500;margin-bottom:12px}.goal-slider{display:flex;align-items:center;gap:16px}.goal-slider input[type=range]{flex:1;-webkit-appearance:none;height:8px;background:var(--color-bg);border-radius:var(--radius-full)}.goal-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;background:var(--gradient-primary);border-radius:var(--radius-full);cursor:pointer}.goal-value{font-weight:600;color:var(--color-primary);min-width:100px}.main-navbar{background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);padding:12px 24px;position:sticky;top:0;z-index:100}.navbar-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.navbar-content .logo{font-size:1.2rem}.navbar-content .nav-links{display:flex;gap:8px}.nav-link{display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:var(--radius-md);color:var(--color-text-secondary);font-weight:500;transition:all var(--transition-fast)}.nav-link:hover{color:var(--color-text);background:#ffffff0d}.nav-link.active{color:var(--color-primary);background:#4f46e526}.nav-user{display:flex;align-items:center;gap:16px}.nav-user .user-info{display:flex;align-items:center;gap:10px}.avatar-small{width:36px;height:36px;border-radius:var(--radius-full);background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem}.nav-user .username{font-weight:500}.logout-btn{padding:8px;color:var(--color-text-muted);border-radius:var(--radius-md);transition:all var(--transition-fast)}.logout-btn:hover{color:var(--color-error);background:#ef44441a}.mobile-menu-btn{display:none;padding:8px;color:var(--color-text);border-radius:var(--radius-md);transition:all var(--transition-fast)}.mobile-menu-btn:hover{background:var(--color-bg-elevated)}.mobile-menu{display:none;flex-direction:column;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);padding:0 16px;max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease}.mobile-menu.open{max-height:400px;padding:16px}.mobile-nav-link{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--radius-md);color:var(--color-text-secondary);font-weight:500;font-size:1rem;transition:all var(--transition-fast)}.mobile-nav-link:hover,.mobile-nav-link.active{color:var(--color-primary);background:#4f46e51a}.mobile-user-section{margin-top:16px;padding-top:16px;border-top:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between}.mobile-user-info{display:flex;align-items:center;gap:10px;font-weight:500}.mobile-logout-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;color:var(--color-error);font-size:.9rem;border-radius:var(--radius-md);transition:all var(--transition-fast)}.mobile-logout-btn:hover{background:#ef44441a}.desktop-only{display:flex}@media(max-width:768px){.desktop-only{display:none!important}.mobile-menu-btn,.mobile-menu{display:flex}.navbar-content .logo span{display:none}.main-navbar{padding:10px 16px}}.discover-page{min-height:100vh;background:var(--color-bg)}.discover-container{max-width:500px;margin:0 auto;padding:24px;min-height:calc(100vh - 70px);display:flex;flex-direction:column}.loading-state,.empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--color-text-secondary);text-align:center}.empty-state svg{color:var(--color-primary);opacity:.5}.empty-state h2{font-size:1.5rem;color:var(--color-text)}.cards-stack{flex:1;position:relative;display:flex;align-items:center;justify-content:center;margin-bottom:24px}.card-wrapper{position:absolute;width:100%;transition:all var(--transition-base)}.card-wrapper.top{position:relative}.discover-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:24px;box-shadow:var(--shadow-lg)}.discover-card .card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.discover-card .user-info{display:flex;gap:14px}.discover-card .avatar{width:56px;height:56px;font-size:1.4rem}.discover-card .user-details h3{font-size:1.3rem;margin-bottom:4px}.skill-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#4f46e526;border-radius:var(--radius-full);font-size:.85rem;color:var(--color-primary-light)}.compatibility-badge{display:flex;flex-direction:column;align-items:center;padding:12px 16px;background:var(--gradient-primary);border-radius:var(--radius-lg);min-width:70px}.compatibility-badge .percentage{font-size:1.5rem;font-weight:700}.compatibility-badge .label{font-size:.7rem;opacity:.9}.leetcode-stats{display:flex;gap:12px;margin-bottom:20px;padding:16px;background:var(--color-bg);border-radius:var(--radius-lg)}.leetcode-stats .stat{flex:1;text-align:center}.leetcode-stats .stat-value{display:flex;align-items:center;justify-content:center;gap:4px;font-size:1.3rem;font-weight:700}.leetcode-stats .stat-value.easy{color:var(--color-easy)}.leetcode-stats .stat-value.medium{color:var(--color-medium)}.leetcode-stats .stat-value.hard{color:var(--color-hard)}.leetcode-stats .stat-value.rating{color:var(--color-primary);font-size:1rem}.leetcode-stats .stat-label{font-size:.75rem;color:var(--color-text-muted)}.topics-section{margin-bottom:16px}.topics-section h4{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--color-text-secondary);margin-bottom:10px}.topics-list{display:flex;flex-wrap:wrap;gap:8px}.topic-tag{padding:6px 12px;border-radius:var(--radius-full);font-size:.8rem}.topic-tag.strong{background:#22c55e26;color:var(--color-easy)}.topic-tag.learning{background:#f59e0b26;color:var(--color-medium)}.discover-card .match-reasons{margin-bottom:16px}.discover-card .match-reasons h4{font-size:.85rem;color:var(--color-text-secondary);margin-bottom:10px}.discover-card .reason{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--color-text);margin-bottom:6px}.reason-icon{color:var(--color-success);font-weight:700}.score-breakdown{margin-bottom:16px}.breakdown-item{margin-bottom:8px}.breakdown-label{display:block;font-size:.75rem;color:var(--color-text-muted);margin-bottom:4px}.breakdown-bar{height:6px;background:var(--color-bg);border-radius:var(--radius-full);overflow:hidden}.breakdown-fill{height:100%;background:var(--gradient-primary);border-radius:var(--radius-full);transition:width var(--transition-base)}.preferences{display:flex;gap:8px}.pref-tag{padding:6px 12px;border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:.8rem;color:var(--color-text-secondary)}.action-buttons{display:flex;justify-content:center;gap:20px}.action-btn{width:64px;height:64px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;transition:all var(--transition-base);box-shadow:var(--shadow-md)}.action-btn:disabled{opacity:.5;cursor:not-allowed}.action-btn.pass{background:var(--color-bg-card);border:2px solid var(--color-border);color:var(--color-text-muted)}.action-btn.pass:hover:not(:disabled){border-color:var(--color-error);color:var(--color-error);transform:scale(1.1)}.action-btn.like{background:var(--gradient-primary);color:#fff}.action-btn.like:hover:not(:disabled){transform:scale(1.1);box-shadow:var(--shadow-glow)}.action-btn.superlike{background:var(--color-bg-card);border:2px solid var(--color-accent);color:var(--color-accent)}.action-btn.superlike:hover:not(:disabled){background:var(--color-accent);color:#fff;transform:scale(1.1)}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:40px;max-width:440px;width:100%;position:relative}.modal-close{position:absolute;top:16px;right:16px;color:var(--color-text-muted);padding:8px;border-radius:var(--radius-md);transition:all var(--transition-fast)}.modal-close:hover{color:var(--color-text);background:var(--color-bg-elevated)}.verify-modal{text-align:center}.verify-modal h2{font-size:1.5rem;margin-bottom:12px}.verify-icon{font-size:3rem;margin-bottom:16px}.verify-description{color:var(--color-text-secondary);margin-bottom:24px;line-height:1.6}.verify-benefits{background:var(--color-bg-elevated);border-radius:var(--radius-md);padding:16px 20px;margin-bottom:24px;text-align:left}.verify-benefits .benefit{font-size:.9rem;color:var(--color-text-secondary);padding:4px 0}.verify-modal .form-group{text-align:left;margin-bottom:12px}.verify-modal .leetcode-link{display:inline-flex;align-items:center;gap:4px;font-size:.85rem;color:var(--color-primary);margin-bottom:20px}.verify-modal .btn-block{width:100%}.match-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.match-modal{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:48px 40px;max-width:420px;text-align:center;position:relative;overflow:hidden}.match-celebration{position:absolute;inset:0;pointer-events:none}.sparkle{position:absolute;color:var(--color-primary);animation:sparkle 2s ease-in-out infinite}.sparkle-1{top:10%;left:10%;animation-delay:0s}.sparkle-2{top:20%;right:15%;animation-delay:.5s}.sparkle-3{bottom:30%;left:20%;animation-delay:1s}@keyframes sparkle{0%,to{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1)}}.match-modal h2{font-size:2rem;margin-bottom:12px}.match-modal>p{color:var(--color-text-secondary);margin-bottom:24px}.match-score{display:inline-flex;flex-direction:column;align-items:center;padding:16px 32px;background:var(--gradient-primary);border-radius:var(--radius-lg);margin-bottom:24px}.match-score .score{font-size:2.5rem;font-weight:700}.match-score .label{font-size:.85rem;opacity:.9}.match-modal .match-reasons{text-align:left;margin-bottom:32px}.match-modal .reason{padding:10px 16px;background:var(--color-bg);border-radius:var(--radius-md);margin-bottom:8px;font-size:.9rem}.match-actions{display:flex;gap:12px}.match-actions .btn{flex:1}.matches-page{min-height:100vh;background:var(--color-bg)}.matches-container{display:flex;height:calc(100vh - 70px)}.matches-list{width:340px;background:var(--color-bg-secondary);border-right:1px solid var(--color-border);display:flex;flex-direction:column}.list-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--color-border)}.list-header h2{font-size:1.2rem}.match-count{padding:4px 12px;background:var(--color-primary);border-radius:var(--radius-full);font-size:.85rem;font-weight:600}.empty-matches{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--color-text-secondary);padding:24px}.matches-items{flex:1;overflow-y:auto}.match-item{display:flex;align-items:center;gap:14px;padding:16px 20px;border-bottom:1px solid var(--color-border);transition:background var(--transition-fast)}.match-item:hover{background:#ffffff08}.match-item.active{background:#4f46e51a;border-left:3px solid var(--color-primary)}.match-avatar{width:48px;height:48px;border-radius:var(--radius-full);background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.1rem;flex-shrink:0}.match-info{flex:1;min-width:0}.match-name{display:block;font-weight:600;margin-bottom:2px}.match-preview{display:block;font-size:.85rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.match-meta .match-score{font-size:.85rem;padding:4px 10px;background:#4f46e526;border-radius:var(--radius-full);color:var(--color-primary-light)}.chat-area{flex:1;display:flex;flex-direction:column;background:var(--color-bg)}.no-chat-selected{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--color-text-secondary)}.no-chat-selected svg{opacity:.3}.chat-header{display:flex;align-items:center;gap:16px;padding:16px 24px;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border)}.back-btn{display:none;padding:8px;color:var(--color-text-secondary)}.chat-user{display:flex;align-items:center;gap:12px}.chat-avatar{width:44px;height:44px;border-radius:var(--radius-full);background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;font-weight:600}.chat-username{display:block;font-weight:600}.chat-compatibility{font-size:.85rem;color:var(--color-text-secondary)}.messages-area{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:8px}.message{max-width:70%;padding:12px 16px;border-radius:var(--radius-lg)}.message.sent{align-self:flex-end;background:var(--gradient-primary);color:#fff;border-bottom-right-radius:4px}.message.received{align-self:flex-start;background:var(--color-bg-card);border:1px solid var(--color-border);border-bottom-left-radius:4px}.message-content{margin-bottom:4px;line-height:1.5}.message-time{font-size:.7rem;opacity:.7;text-align:right}.typing-indicator{align-self:flex-start;padding:8px 16px;background:var(--color-bg-card);border-radius:var(--radius-lg);font-size:.85rem;color:var(--color-text-muted);font-style:italic}.chat-input{display:flex;gap:12px;padding:16px 24px;background:var(--color-bg-secondary);border-top:1px solid var(--color-border)}.chat-input input{flex:1;padding:12px 16px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text)}.chat-input input:focus{outline:none;border-color:var(--color-primary)}.chat-input button{width:48px;height:48px;border-radius:var(--radius-full);background:var(--gradient-primary);color:#fff;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.chat-input button:disabled{opacity:.5;cursor:not-allowed}.chat-input button:hover:not(:disabled){transform:scale(1.05)}@media(max-width:768px){.matches-list{width:100%}.matches-list.hidden-mobile,.chat-area.hidden-mobile{display:none}.back-btn.mobile-only{display:block}.hero-content h1{font-size:2rem}.stats-bar{flex-direction:column;gap:24px}.difficulty-options{grid-template-columns:1fr}.nav-links span{display:none}}.loading-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:var(--color-text-secondary)}.profile-page{min-height:100vh;background:var(--color-bg)}.profile-container{max-width:800px;margin:0 auto;padding:32px 24px}.profile-header{display:flex;gap:32px;align-items:center;margin-bottom:40px;padding-bottom:32px;border-bottom:1px solid var(--color-border)}.profile-avatar{flex-shrink:0}.profile-avatar img{width:120px;height:120px;border-radius:var(--radius-full);object-fit:cover;border:3px solid var(--color-primary)}.avatar-placeholder{width:120px;height:120px;border-radius:var(--radius-full);background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;font-size:3rem;font-weight:700;color:#fff}.profile-info h1{font-size:2rem;margin-bottom:4px}.profile-info .email{color:var(--color-text-secondary);margin-bottom:8px}.profile-info .bio{color:var(--color-text-muted);margin-bottom:12px}.leetcode-link{display:inline-flex;align-items:center;gap:6px;color:var(--color-primary);font-weight:500;transition:opacity var(--transition-fast)}.leetcode-link:hover{opacity:.8}.profile-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:40px}.stat-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px;display:flex;align-items:center;gap:16px;transition:all var(--transition-base)}.stat-card:hover{border-color:var(--color-primary);transform:translateY(-2px)}.stat-card .stat-icon{width:48px;height:48px;border-radius:var(--radius-md);background:#4f46e526;display:flex;align-items:center;justify-content:center;color:var(--color-primary)}.stat-card .stat-content{display:flex;flex-direction:column}.stat-card .stat-value{font-size:1.5rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.stat-card .stat-label{font-size:.85rem;color:var(--color-text-muted)}.profile-details{display:flex;flex-direction:column;gap:32px;margin-bottom:40px}.detail-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px}.detail-section h3{font-size:1.1rem;margin-bottom:20px;color:var(--color-text)}.difficulty-bars{display:flex;flex-direction:column;gap:16px}.difficulty-item{display:flex;align-items:center;gap:16px}.difficulty-label{width:70px;font-size:.9rem;font-weight:600}.difficulty-label.easy{color:var(--color-easy)}.difficulty-label.medium{color:var(--color-medium)}.difficulty-label.hard{color:var(--color-hard)}.bar-container{flex:1;height:12px;background:var(--color-bg);border-radius:var(--radius-full);overflow:hidden}.bar{height:100%;border-radius:var(--radius-full);transition:width var(--transition-slow)}.bar.easy{background:var(--color-easy)}.bar.medium{background:var(--color-medium)}.bar.hard{background:var(--color-hard)}.difficulty-item .count{width:50px;text-align:right;font-weight:600;color:var(--color-text-secondary)}.topics-list{display:flex;flex-direction:column;gap:12px}.topic-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--color-bg);border-radius:var(--radius-md)}.topic-name{font-weight:500}.topic-count{color:var(--color-text-muted);font-size:.9rem}.learning-topics{display:flex;flex-wrap:wrap;gap:10px}.settings-btn{width:100%;padding:16px;justify-content:center}@media(max-width:1024px){.hero-grid{grid-template-columns:1fr;text-align:center;gap:40px}.hero-text{order:2;max-width:100%}.hero-visual{order:1;height:350px}.hero-buttons{justify-content:center}.peer-card-back{display:none}.peer-card-main{transform:none;position:static}.matches-container{flex-direction:column}.matches-sidebar{width:100%;max-width:100%;border-right:none;border-bottom:1px solid var(--color-border)}}@media(max-width:768px){.btn{padding:12px 24px;font-size:.9rem}.btn-lg{padding:14px 28px}.navbar{padding:10px 16px}.navbar .logo span{display:none}.navbar .nav-links{gap:4px}.nav-link{padding:10px;font-size:.85rem}.nav-link span,.nav-user .username{display:none}.landing-nav{padding:12px 16px}.landing-nav .logo-text{font-size:1rem}.landing-nav .nav-actions{gap:12px}.landing-nav .nav-link-text{display:none}.hero-section{padding:40px 20px;min-height:auto}.hero-title{font-size:2.5rem;margin-bottom:20px}.hero-description{font-size:1rem;margin-bottom:28px}.hero-visual{display:none}.features{padding:60px 20px}.features h2{font-size:1.8rem;margin-bottom:40px}.features-grid{gap:20px}.feature-card{padding:24px}.feature-icon{width:48px;height:48px}.cta-section{padding:60px 20px}.cta-section h2{font-size:1.6rem}.footer{padding:40px 20px}.footer-content{flex-direction:column;text-align:center;gap:12px}.auth-page{padding:16px}.auth-container{padding:28px 20px;max-width:100%}.auth-container h1{font-size:1.5rem}.auth-container p{font-size:.9rem}.step-indicator{gap:8px;margin-bottom:24px}.step-indicator .step{width:32px;height:32px;font-size:.8rem}.step-indicator .connector{width:30px}.form-group input{padding:12px 14px;font-size:.95rem}.btn-group{flex-direction:column;gap:12px}.btn-group .btn{width:100%}.discover-page{padding-bottom:100px}.discover-container,.discover-card{padding:16px}.discover-card .card-header{margin-bottom:16px}.discover-card .avatar{width:48px;height:48px;font-size:1.2rem}.discover-card .user-details h3{font-size:1.1rem}.compatibility-badge{padding:8px 12px}.compatibility-badge .percentage{font-size:1.2rem}.leetcode-stats{gap:12px;margin-bottom:16px}.leetcode-stats .stat-value{font-size:1rem}.score-breakdown,.discover-card .match-reasons{display:none}.topics-section{margin-bottom:12px}.topics-section h4{font-size:.75rem}.topic-tag{font-size:.7rem;padding:3px 8px}.topics-list{gap:6px}.preferences{gap:8px}.pref-tag{font-size:.75rem;padding:4px 10px}.action-buttons{gap:16px;padding:16px 0;position:fixed;bottom:0;left:0;right:0;background:var(--color-bg);border-top:1px solid var(--color-border);justify-content:center;z-index:100}.action-btn{width:56px;height:56px}.action-btn.superlike{width:48px;height:48px}.matches-sidebar{max-height:35vh;overflow-y:auto}.match-list{max-height:100%}.match-item{padding:12px 16px}.chat-area{height:55vh}.chat-header{padding:12px 16px}.chat-messages{padding:12px}.message-bubble{max-width:85%;padding:10px 14px;font-size:.9rem}.chat-input-area{padding:12px 16px}.chat-input-area input{padding:10px 14px;font-size:.9rem}.profile-page{padding:0}.profile-container{padding:20px 16px}.profile-header{flex-direction:column;text-align:center;gap:16px;margin-bottom:24px;padding-bottom:24px}.profile-avatar img,.avatar-placeholder{width:90px;height:90px;font-size:2.2rem}.profile-info h1{font-size:1.4rem}.profile-info .email{font-size:.9rem}.leetcode-link{justify-content:center}.profile-stats-grid{grid-template-columns:1fr;gap:12px;margin-bottom:24px}.stat-card{padding:16px;gap:12px}.stat-card .stat-icon{width:40px;height:40px}.stat-card .stat-value{font-size:1.3rem}.profile-details{gap:16px;margin-bottom:24px}.detail-section{padding:16px}.detail-section h3{font-size:1rem;margin-bottom:16px}.difficulty-item{gap:8px}.difficulty-label{width:50px;font-size:.75rem}.topic-item{padding:10px 12px;font-size:.9rem}.learning-topics{gap:8px}.learning-topics .tag{padding:6px 12px;font-size:.8rem}.settings-btn{padding:14px;font-size:.9rem}.modal-overlay,.match-modal-overlay{padding:16px;align-items:flex-end}.modal,.match-modal{padding:24px 20px;max-width:100%;border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-height:85vh;overflow-y:auto}.modal-close{top:12px;right:12px}.verify-modal h2{font-size:1.3rem}.verify-icon{font-size:2.5rem}.verify-benefits{padding:14px 16px}.verify-benefits .benefit{font-size:.85rem}.onboarding-page{padding:16px}.onboarding-container{padding:24px 20px}.onboarding-step h2{font-size:1.3rem}.onboarding-step p{font-size:.9rem}.topics-grid,.languages-grid{gap:10px}.topic-chip,.language-chip{padding:10px 14px;font-size:.85rem}.difficulty-grid,.style-grid{grid-template-columns:1fr;gap:12px}.difficulty-card,.style-card{padding:16px}.empty-state,.loading-state{padding:40px 20px}.empty-state h2{font-size:1.3rem}}@media(max-width:480px){.hero-section{padding:32px 16px}.hero-title{font-size:2rem;line-height:1}.hero-description{font-size:.95rem}.hero-buttons{flex-direction:column;width:100%}.hero-buttons .btn{width:100%;justify-content:center}.features-grid{grid-template-columns:1fr}.feature-card{padding:20px}.feature-card h3{font-size:1.1rem}.auth-container{padding:24px 16px}.step-indicator .step{width:28px;height:28px;font-size:.75rem}.step-indicator .connector{width:20px}.discover-card .card-header{flex-direction:column;align-items:flex-start;gap:12px}.compatibility-badge{align-self:flex-start}.leetcode-stats{flex-wrap:wrap;gap:10px}.leetcode-stats .stat{flex:1 0 40%}.action-buttons{gap:12px}.action-btn{width:52px;height:52px}.action-btn.superlike{width:44px;height:44px}.profile-header .avatar{width:80px;height:80px;font-size:2rem}.profile-info h1{font-size:1.3rem}.modal,.match-modal{padding:20px 16px}.verify-modal h2{font-size:1.2rem}.matches-sidebar{max-height:30vh}.chat-area{height:60vh}}
