.landing-lang-picker{position:relative}.landing-lang-picker--footer{align-self:center;margin:12px auto 0}.landing-lang-picker--mobile{width:100%}.landing-lang-picker--mobile .landing-lang-pill{width:100%;justify-content:flex-start;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft)}.landing-lang-pill{display:inline-flex;align-items:center;gap:6px;max-width:100%;height:36px;padding:0 10px;background:transparent;color:var(--text-muted);border:1px solid transparent;border-radius:8px;font-family:inherit;font-size:13px;font-weight:500;letter-spacing:-.01em;cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.landing-lang-pill:hover{color:var(--text-strong);background:var(--surface-soft);border-color:var(--border)}.landing-lang-pill-label{max-width:148px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.landing-lang-picker--header .landing-lang-prefix,.landing-lang-picker--mobile .landing-lang-prefix{display:none}.landing-lang-picker--footer .landing-lang-prefix{display:inline}.landing-lang-pill-chev{flex-shrink:0;transition:transform .18s ease}.landing-lang-pill-chev.open{transform:rotate(180deg)}.landing-lang-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:120;margin:0;padding:6px;list-style:none;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);min-width:168px;display:flex;flex-direction:column;gap:2px;animation:landing-lang-pop .14s ease}.landing-lang-picker--footer .landing-lang-menu{top:auto;bottom:calc(100% + 8px);left:50%;right:auto;transform:translate(-50%);animation:landing-lang-pop-up .14s ease}.landing-lang-picker--mobile .landing-lang-menu{top:auto;bottom:calc(100% + 6px);left:0;right:0;min-width:0}@keyframes landing-lang-pop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes landing-lang-pop-up{0%{opacity:0;transform:translate(-50%,4px)}to{opacity:1;transform:translate(-50%)}}.landing-lang-menu-item{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:8px 12px;background:transparent;color:var(--text-muted);border:none;border-radius:8px;font-family:inherit;font-size:14px;font-weight:500;text-align:left;cursor:pointer;transition:background-color .12s ease,color .12s ease}.landing-lang-menu-item:hover{background:var(--surface-soft);color:var(--text-strong)}.landing-lang-menu-item.is-active{color:#ffc01e}@media (max-width: 768px){.landing-lang-picker--header{display:none}.landing-lang-pill-label{max-width:108px;font-size:12px}.landing-lang-pill{height:32px;padding:0 8px}}@media (max-width: 480px){.landing-lang-pill-label{max-width:96px}}.layout{height:100dvh;max-height:100dvh;display:flex;flex-direction:column;overflow:hidden;background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}.navbar{background:var(--navbar-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-md);border-bottom:1px solid var(--border);padding:0 48px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;height:var(--navbar-height);min-height:var(--navbar-height);position:sticky;top:0;z-index:1100}.navbar-brand{display:flex;align-items:center}.navbar-brand a{display:flex;align-items:center;text-decoration:none}.navbar-logo{width:32px;height:32px;border-radius:50%;object-fit:cover}.navbar-menu{display:flex;gap:4px;flex:none;margin-left:16px}.nav-link{color:var(--text-muted);text-decoration:none;padding:6px 12px;border-radius:6px;font-size:13.5px;font-weight:500;transition:all .2s ease}.nav-link:hover{background-color:var(--hover-bg);color:var(--text-strong)}.nav-dropdown{position:relative}.nav-dropdown-trigger{display:flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;font-size:inherit;font-family:inherit}.nav-dropdown-trigger.active{background-color:var(--hover-bg);color:var(--text-strong)}.dropdown-arrow{font-size:9px;transition:transform .2s ease}.nav-dropdown-trigger.active .dropdown-arrow{transform:rotate(180deg)}.nav-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;background:var(--surface);border-radius:12px;box-shadow:var(--shadow-pop);border:1px solid var(--border);min-width:180px;padding:8px;z-index:200;animation:dropdown-fade .15s ease}@keyframes dropdown-fade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:6px;color:var(--text);text-decoration:none;font-weight:500;font-size:13px;transition:background .15s ease}.dropdown-item:hover{background:var(--hover-bg-strong)}.dropdown-item.disabled{color:var(--text-faint);cursor:not-allowed}.dropdown-item.disabled:hover{background:transparent}.lock-icon{font-size:12px;opacity:.7}.navbar-user{display:flex;align-items:center;gap:10px;margin-left:auto}.navbar-hamburger{display:none;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:transparent;border:1px solid var(--border);border-radius:10px;cursor:pointer;color:var(--text);transition:background .15s ease,border-color .15s ease}.navbar-hamburger:hover{background:var(--surface-soft);border-color:var(--border-strong)}.navbar-hamburger.is-open{background:var(--hover-bg-strong);border-color:var(--border-emphasis)}.navbar-hamburger-icon{position:relative;display:inline-block;width:18px;height:14px}.navbar-hamburger-icon span{position:absolute;left:0;width:100%;height:2px;background:currentColor;border-radius:2px;transition:transform .2s ease,opacity .15s ease,top .2s ease}.navbar-hamburger-icon span:nth-child(1){top:0}.navbar-hamburger-icon span:nth-child(2){top:6px}.navbar-hamburger-icon span:nth-child(3){top:12px}.navbar-hamburger.is-open .navbar-hamburger-icon span:nth-child(1){top:6px;transform:rotate(45deg)}.navbar-hamburger.is-open .navbar-hamburger-icon span:nth-child(2){opacity:0}.navbar-hamburger.is-open .navbar-hamburger-icon span:nth-child(3){top:6px;transform:rotate(-45deg)}.navbar-mobile-backdrop{position:fixed;inset:var(--navbar-height) 0 0;background:#0f172a59;z-index:1090;animation:navbar-mobile-fade .15s ease}.navbar-mobile-panel{position:fixed;top:var(--navbar-height);left:0;right:0;z-index:1095;display:flex;flex-direction:column;padding:12px 16px 16px;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-lg);animation:navbar-mobile-slide .18s ease}.navbar-mobile-panel .nav-link{display:block;padding:14px 12px;font-size:16px;border-radius:8px}.navbar-mobile-panel-footer{margin-top:auto;padding-top:12px;border-top:1px solid var(--border)}@keyframes navbar-mobile-fade{0%{opacity:0}to{opacity:1}}@keyframes navbar-mobile-slide{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.username{color:var(--text-muted);font-size:14px;font-weight:500}.user-menu-dropdown{position:relative}.username-btn{display:flex;align-items:center;gap:6px;background:none;border:1px solid var(--border);border-radius:6px;padding:5px 10px;color:var(--text-muted);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.username-btn:hover{background-color:var(--hover-bg);color:var(--text-strong);border-color:var(--border-strong)}.username-btn.active{background-color:var(--hover-bg);color:var(--text-strong);border-color:var(--border-emphasis)}.user-menu{position:absolute;top:calc(100% + 8px);right:0;background:var(--surface);border-radius:12px;box-shadow:var(--shadow-pop);border:1px solid var(--border);min-width:210px;padding:6px;z-index:200;animation:dropdown-fade .15s ease}.user-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 11px;border-radius:8px;color:var(--text);text-decoration:none;font-weight:500;font-size:13.5px;line-height:1.2;letter-spacing:-.005em;transition:background .15s ease,color .15s ease;background:none;border:none;cursor:pointer;text-align:left}.user-menu-item:hover{background:var(--hover-bg-strong)}.user-menu-icon{flex-shrink:0;width:16px;height:16px;opacity:.7}.user-menu-item.logout-item{color:var(--hard-fg)}.user-menu-item.logout-item:hover{background:var(--danger-bg)}.user-menu-divider{height:1px;background:var(--border);margin:6px}.theme-toggle{padding:4px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text-muted);font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.theme-toggle:hover{border-color:var(--border-emphasis);color:var(--text-strong);background:var(--surface-soft)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:30px;height:26px;padding:0}.main-content{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;padding:0 48px 32px;max-width:1400px;margin:0 auto;width:100%}@media (max-width: 900px){.navbar{padding:0 24px}.navbar-menu{margin-left:24px;gap:4px}.nav-link{padding:8px 12px;font-size:14px}.main-content{padding:0 24px 24px}}@media (max-width: 768px){:root{--navbar-height: 48px}.navbar{padding:0 16px;min-height:var(--navbar-height);flex-wrap:nowrap;gap:8px}.navbar-brand a{font-size:18px}.navbar-logo{width:32px;height:32px}.navbar-menu{display:none}.navbar-hamburger{display:inline-flex}.navbar-user{gap:8px}.username{display:none}.main-content{padding:0 16px 16px}}@media (max-width: 480px){.navbar{padding:0 12px}.navbar-brand a{font-size:16px;gap:8px}.navbar-logo{width:28px;height:28px}.username-btn{padding:6px 10px;font-size:13px}.navbar-hamburger{width:36px;height:36px}.navbar-user{gap:6px}.main-content{padding:0 12px 12px}}:root{color-scheme:light;--bg: #ffffff;--bg-soft: #f8fafc;--surface: #ffffff;--surface-soft: #f8fafc;--surface-strong: #f1f5f9;--navbar-bg: rgba(255, 255, 255, .85);--navbar-height: 52px;--border: #e2e8f0;--border-strong: #cbd5e1;--border-emphasis: #0f172a;--text: #0f172a;--text-strong: #0f172a;--text-muted: #475569;--text-subtle: #64748b;--text-faint: #94a3b8;--accent: #0f172a;--accent-hover: #1e293b;--accent-fg: #ffffff;--hover-bg: rgba(15, 23, 42, .05);--hover-bg-strong: #f1f5f9;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 2px 20px rgba(15, 23, 42, .06);--shadow-lg: 0 12px 48px -16px rgba(15, 23, 42, .08);--shadow-pop: 0 10px 40px rgba(15, 23, 42, .15);--easy-bg: #e6f7f5;--easy-fg: #00857a;--easy-border: #99e3db;--medium-bg: #fff5e6;--medium-fg: #b87500;--medium-border: #ffd39d;--hard-bg: #fdecec;--hard-fg: #c02c29;--hard-border: #f9b8b7;--success-bg: #f0fdf4;--success-fg: #166534;--success-border: #bbf7d0;--danger-bg: #fef2f2;--danger-fg: #991b1b;--danger-border: #fecaca;--focus-ring: rgba(15, 23, 42, .06)}:root[data-theme=dark]{color-scheme:dark;--bg: #18181b;--bg-soft: #1f1f23;--surface: #27272a;--surface-soft: #2e2e33;--surface-strong: #3f3f46;--navbar-bg: rgba(15, 15, 17, .92);--border: #2e2e33;--border-strong: #3f3f46;--border-emphasis: #f4f4f5;--text: #fafafa;--text-strong: #ffffff;--text-muted: #d4d4d8;--text-subtle: #a1a1aa;--text-faint: #71717a;--accent: #fafafa;--accent-hover: #e4e4e7;--accent-fg: #18181b;--hover-bg: rgba(250, 250, 250, .06);--hover-bg-strong: #3f3f46;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--shadow-md: 0 2px 20px rgba(0, 0, 0, .45);--shadow-lg: 0 12px 48px -16px rgba(0, 0, 0, .7);--shadow-pop: 0 10px 40px rgba(0, 0, 0, .55);--easy-bg: rgba(0, 184, 163, .12);--easy-fg: #2dd4bf;--easy-border: rgba(45, 212, 191, .3);--medium-bg: rgba(255, 184, 0, .12);--medium-fg: #fbbf24;--medium-border: rgba(251, 191, 36, .3);--hard-bg: rgba(239, 71, 67, .14);--hard-fg: #f87171;--hard-border: rgba(248, 113, 113, .3);--success-bg: rgba(34, 197, 94, .12);--success-fg: #4ade80;--success-border: rgba(74, 222, 128, .3);--danger-bg: rgba(239, 71, 67, .12);--danger-fg: #f87171;--danger-border: rgba(248, 113, 113, .3);--focus-ring: rgba(250, 250, 250, .12)}*{margin:0;padding:0;box-sizing:border-box;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg);color:var(--text);transition:background-color .18s ease,color .18s ease}html,body,#root{overscroll-behavior-x:none}::-webkit-scrollbar-button{display:none}body.coding-fullscreen .navbar{display:none!important}body.coding-fullscreen{overflow:hidden}code,pre,kbd,samp{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.container{max-width:1200px;margin:0 auto;padding:20px}.btn{padding:10px 20px;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;text-decoration:none}.btn:hover,.btn:focus,.btn:active{text-decoration:none}.btn-primary{background-color:#ffc01e;color:#000!important;border:1px solid #FFC01E;text-decoration:none}.btn-primary:hover{background-color:#ffb515;border-color:#ffb515;color:#000!important;transform:translateY(-1px);box-shadow:0 4px 12px #ffc01e59}a.btn-primary,a.btn-primary:hover{color:#000!important}:root[data-theme=dark] .btn-primary{background-color:var(--accent);color:var(--accent-fg)!important;border-color:var(--accent)}:root[data-theme=dark] .btn-primary:hover{background-color:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-fg)!important;box-shadow:0 4px 12px #0006}:root[data-theme=dark] a.btn-primary,:root[data-theme=dark] a.btn-primary:hover{color:var(--accent-fg)!important}.btn-secondary{background-color:var(--surface);color:var(--text-muted);border:1px solid var(--border)}.btn-secondary:hover{background-color:var(--surface-soft);border-color:var(--border-strong);color:var(--text)}.btn-success{background-color:#475569;color:#fff;border:1px solid #475569}.btn-success:hover{background-color:#334155;border-color:#334155}.btn-danger{background-color:#64748b;color:#fff;border:1px solid #64748b}.btn-danger:hover{background-color:#475569;border-color:#475569}.btn-warning{background-color:#94a3b8;color:#fff;border:1px solid #94a3b8}.btn-warning:hover{background-color:#64748b;border-color:#64748b}.form-group{margin-bottom:18px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 14px;border:1px solid var(--border);border-radius:8px;font-size:14px;background:var(--surface);color:var(--text);transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--border-emphasis);box-shadow:0 0 0 3px var(--focus-ring)}.card{background:var(--surface);border-radius:16px;padding:24px;margin-bottom:0;box-shadow:var(--shadow-pop);border:1px solid var(--border)}.error{color:var(--text);font-size:14px;margin-top:8px;padding:12px 16px;background-color:var(--danger-bg);border:1px solid var(--danger-border);border-radius:8px}.success{color:var(--text);font-size:14px;margin-top:8px;padding:12px 16px;background-color:var(--success-bg);border:1px solid var(--success-border);border-radius:8px}.loading{text-align:center;padding:40px;color:var(--text-subtle)}.badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500}.badge-easy{background-color:var(--easy-bg);color:var(--easy-fg);border:1px solid var(--easy-border)}.badge-medium{background-color:var(--medium-bg);color:var(--medium-fg);border:1px solid var(--medium-border)}.badge-hard{background-color:var(--hard-bg);color:var(--hard-fg);border:1px solid var(--hard-border)}.badge-todo{background-color:var(--surface-strong);color:var(--text-muted);border:1px solid var(--border)}.badge-done{background-color:var(--success-bg);color:var(--success-fg);border:1px solid var(--success-border)}.badge-missed{background-color:var(--danger-bg);color:var(--danger-fg);border:1px solid var(--danger-border)}:root[data-theme=dark] .panel,:root[data-theme=dark] .form-card,:root[data-theme=dark] .problems-toolbar,:root[data-theme=dark] .reviews-empty,:root[data-theme=dark] .reviews-loading,:root[data-theme=dark] .review-card,:root[data-theme=dark] .problem-card{background:var(--surface);border-color:var(--border);color:var(--text)}:root[data-theme=dark] .form-card input,:root[data-theme=dark] .form-card select,:root[data-theme=dark] .form-card textarea,:root[data-theme=dark] .search-input,:root[data-theme=dark] .topic-select,:root[data-theme=dark] input[type=text]:not([class*=badge]),:root[data-theme=dark] input[type=url],:root[data-theme=dark] input[type=email],:root[data-theme=dark] input[type=password],:root[data-theme=dark] input[type=number],:root[data-theme=dark] input[type=search],:root[data-theme=dark] select,:root[data-theme=dark] textarea{background-color:var(--surface-soft);border-color:var(--border);color:var(--text)}:root[data-theme=dark] input::placeholder,:root[data-theme=dark] textarea::placeholder{color:var(--text-faint)}:root[data-theme=dark] .form-card input:focus,:root[data-theme=dark] .form-card select:focus,:root[data-theme=dark] .form-card textarea:focus,:root[data-theme=dark] .search-input:focus,:root[data-theme=dark] input:focus,:root[data-theme=dark] textarea:focus,:root[data-theme=dark] select:focus{border-color:var(--border-emphasis);box-shadow:0 0 0 3px var(--focus-ring)}
