.card-enter{animation:.5s ease-out both fadeInScale}.gradient-border{position:relative}.gradient-border:before{content:"";border-radius:inherit;background:linear-gradient(135deg, var(--border-color), var(--primary), var(--border-color));z-index:-1;opacity:0;background-size:300% 300%;transition:opacity .3s;animation:4s infinite gradientShift;position:absolute;inset:-1px}.gradient-border:hover:before{opacity:1}.shimmer-text{background:linear-gradient(120deg, var(--text-primary) 0%, var(--text-secondary) 40%, var(--text-primary) 60%, var(--text-secondary) 100%);-webkit-text-fill-color:transparent;background-size:200%;-webkit-background-clip:text;background-clip:text;animation:3s linear infinite shimmer}:root,[data-theme=light]{--bg-color:#fff;--bg-secondary:#fafafa;--panel-bg:#fff;--panel-bg-hover:#f8f8f8;--editor-bg:#1e1e1e;--primary:#ff7b00;--primary-hover:#e66a00;--primary-subtle:#ff7b0014;--secondary:#555;--secondary-hover:#333;--danger:#dc2626;--danger-subtle:#fef2f2;--success:#16a34a;--success-subtle:#f0fdf4;--text-primary:#111;--text-secondary:#777;--text-tertiary:#aaa;--border-color:#e5e5e5;--border-hover:#ccc;--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 4px 16px #00000014;--shadow-lg:0 12px 40px #0000001f;--shadow-glow:0 0 30px #ff7b0026;--overlay-bg:#0000004d;--modal-bg:#fff;--code-bg:#f5f5f5;--code-border:#eee;--badge-bg:#fef0e6;--badge-color:#d96800;--badge-border:#ffd1a8;--dot-color:#ff9d40;--line-color:#e8e8e8;--input-bg:#fafafa;--navbar-bg:#ffffffd9;--table-stripe:#fafafa;--table-hover:#f5f5f5;--scrollbar-thumb:#ddd;--scrollbar-hover:#bbb;--toggle-bg:#e5e5e5;--toggle-knob:#fff;--toggle-icon:#000}[data-theme=dark]{--bg-color:#0a0a0a;--bg-secondary:#111;--panel-bg:#141414;--panel-bg-hover:#1a1a1a;--editor-bg:#0d0d0d;--primary:#ff7b00;--primary-hover:#e66a00;--primary-subtle:#ff7b001a;--secondary:#aaa;--secondary-hover:#ccc;--danger:#ef4444;--danger-subtle:#1a0505;--success:#22c55e;--success-subtle:#051a0a;--text-primary:#f0f0f0;--text-secondary:#888;--text-tertiary:#555;--border-color:#222;--border-hover:#333;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 16px #0006;--shadow-lg:0 12px 40px #00000080;--shadow-glow:0 0 40px #ff7b001a;--overlay-bg:#0009;--modal-bg:#141414;--code-bg:#0d0d0d;--code-border:#222;--badge-bg:#22140a;--badge-color:#ffa14a;--badge-border:#4a2810;--dot-color:#ff7b00;--line-color:#1a1a1a;--input-bg:#111;--navbar-bg:#0a0a0ae6;--table-stripe:#111;--table-hover:#1a1a1a;--scrollbar-thumb:#333;--scrollbar-hover:#444;--toggle-bg:#333;--toggle-knob:#000;--toggle-icon:#fff}:root{--font-family:"Inter", system-ui, -apple-system, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background:var(--bg-color);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;margin:0;transition:background-color .4s,color .4s}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3,h4,h5,h6{letter-spacing:-.01em;margin-bottom:1rem;font-weight:600}h1{color:var(--text-primary);font-size:2rem}h2{color:var(--text-primary);font-size:1.5rem}h3{color:var(--text-primary);margin-bottom:.5rem;font-size:1.25rem}h4{color:var(--text-secondary);margin-bottom:.5rem;font-size:1rem}a{color:var(--primary);text-decoration:none;transition:opacity .2s}a:hover{opacity:.7}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes subtlePulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes floatSlow{0%,to{transform:translateY(0)rotate(0)}33%{transform:translateY(-12px)rotate(1deg)}66%{transform:translateY(-4px)rotate(-1deg)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes borderGlow{0%,to{border-color:var(--border-color)}50%{border-color:var(--border-hover)}}@keyframes dotPulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.8;transform:scale(1.5)}}@keyframes drawLine{0%{height:0}to{height:100%}}@keyframes revealText{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.fade-in{animation:.5s ease-out both fadeIn}.fade-in-scale{animation:.5s ease-out both fadeInScale}.slide-in-left{animation:.5s ease-out both slideInLeft}.slide-in-right{animation:.5s ease-out both slideInRight}.pulse-text{animation:2s ease-in-out infinite subtlePulse}.float{animation:3s ease-in-out infinite float}.float-slow{animation:6s ease-in-out infinite floatSlow}.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}.glass-panel{background:var(--panel-bg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:12px;padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.glass-panel:hover{box-shadow:var(--shadow-md);border-color:var(--border-hover)}.hover-lift{transition:transform .25s ease-out,box-shadow .25s ease-out}.hover-lift:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}@keyframes smoothFadeIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{animation:.6s ease-out forwards smoothFadeIn}.text-orange{color:var(--primary);font-weight:800}.text-white{color:var(--text-primary);font-weight:800}.btn{cursor:pointer;letter-spacing:.01em;border:none;border-radius:8px;justify-content:center;align-items:center;padding:.5rem 1.2rem;font-size:.9rem;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative;overflow:hidden}.btn:after{content:"";opacity:0;background:linear-gradient(120deg,#0000 30%,#ffffff1a 50%,#0000 70%) 0 0/200% 100%;transition:opacity .3s;position:absolute;inset:0}.btn:hover:after{opacity:1;animation:.8s ease-out shimmer}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--panel-bg-hover);border-color:var(--border-hover);transform:translateY(-1px)}.btn-danger{color:var(--danger);border:1px solid var(--danger);background:0 0}.btn-danger:hover{background:var(--danger);color:#fff;transform:translateY(-1px)}.btn-success{color:var(--success);border:1px solid var(--success);background:0 0}.btn-success:hover{background:var(--success);color:#fff}.form-group{flex-direction:column;margin-bottom:1.2rem;display:flex}.form-group label{color:var(--text-secondary);letter-spacing:.02em;margin-bottom:.4rem;font-size:.85rem;font-weight:500}.form-input{background:var(--input-bg);border:1px solid var(--border-color);color:var(--text-primary);border-radius:8px;width:100%;padding:.6rem .8rem;font-family:inherit;transition:all .25s}.form-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle);outline:none}.form-input::placeholder{color:var(--text-tertiary)}.navbar{background:var(--navbar-bg);border-bottom:1px solid var(--border-color);-webkit-backdrop-filter:blur(12px);z-index:100;justify-content:space-between;align-items:center;padding:.8rem 2rem;transition:background .4s,border-color .4s;display:flex;position:sticky;top:0}.navbar .brand{color:var(--text-primary);letter-spacing:-.02em;font-size:1.4rem;font-weight:800;transition:transform .2s}.navbar .brand:hover{transform:scale(1.03)}.navbar .brand span{color:var(--text-primary)}.navbar .nav-links{align-items:center;gap:1rem;display:flex}.theme-toggle{background:var(--toggle-bg);cursor:pointer;border:none;border-radius:13px;align-items:center;width:48px;height:26px;padding:0 4px;transition:background .3s;display:flex;position:relative}.theme-toggle:after{content:"";background:var(--toggle-knob);border-radius:50%;width:20px;height:20px;transition:transform .3s cubic-bezier(.4,0,.2,1),background .3s;position:absolute;left:3px;box-shadow:0 1px 4px #0003}[data-theme=dark] .theme-toggle:after{transform:translate(22px)}.theme-toggle .toggle-icon{font-size:12px;transition:opacity .3s;position:absolute}.theme-toggle .sun-icon{opacity:1;left:6px}.theme-toggle .moon-icon{opacity:1;right:6px}[data-theme=dark] .theme-toggle .sun-icon,[data-theme=dark] .theme-toggle .moon-icon{opacity:1}.container{width:100%;max-width:1200px;margin:0 auto;padding:2rem;animation:.4s ease-out fadeIn}.solve-container{flex-direction:column;gap:1.5rem;width:100%;max-width:1200px;margin:0 auto;padding:1.5rem;animation:.4s ease-out fadeIn;display:flex}.grid{gap:1.5rem;display:grid}.grid-2{grid-template-columns:repeat(2,1fr)}.leaderboard{border-collapse:collapse;width:100%}.leaderboard th{text-align:left;border-bottom:2px solid var(--border-color);color:var(--text-secondary);padding:.8rem;font-size:.85rem}.leaderboard td{border-bottom:1px solid var(--border-color);padding:.8rem}.leaderboard tr:hover{background:var(--table-hover)}.badge{letter-spacing:.03em;background:var(--badge-bg);color:var(--badge-color);border:1px solid var(--badge-border);border-radius:12px;padding:.2rem .6rem;font-size:.75rem;font-weight:600;transition:all .2s}.badge-yellow{background:var(--badge-bg);color:var(--badge-color);border:1px solid var(--badge-border)}.badge-orange{background:var(--badge-bg);color:var(--text-primary);border:1px solid var(--badge-border)}.problem-title{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.problem-desc{color:var(--text-secondary);margin-bottom:1rem;font-size:1rem;line-height:1.7}.inline-code{background:var(--code-bg);border:1px solid var(--code-border);color:var(--text-primary);border-radius:4px;padding:2px 6px;font-family:Consolas,monospace;font-size:.9em}.example-block{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;margin:1.5rem 0;padding:1.2rem;transition:border-color .2s}.example-block:hover{border-color:var(--border-hover)}.example-block pre{color:var(--text-primary);white-space:pre-wrap;margin-top:.5rem;font-family:Consolas,monospace;font-size:.9rem}.editor-wrapper{background:var(--editor-bg);border:1px solid var(--border-color);box-shadow:var(--shadow-md);border-radius:12px;flex-direction:column;transition:box-shadow .3s;display:flex;overflow:hidden}.editor-wrapper:hover{box-shadow:var(--shadow-lg)}.editor-toolbar{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:.5rem 1rem;display:flex}.editor-footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);justify-content:flex-end;gap:.8rem;padding:.8rem 1rem;display:flex}.testcase-panel{background:var(--panel-bg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:12px;transition:all .3s;overflow:hidden}.testcase-panel:hover{box-shadow:var(--shadow-md)}.testcase-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);color:var(--text-primary);padding:.8rem 1rem;font-weight:600}.testcase-body{padding:1.5rem}.test-block{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin-bottom:1rem;padding:1rem;transition:border-color .2s}.test-block:hover{border-color:var(--border-hover)}.sudden-death-overlay{background:var(--bg-color);z-index:50;text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;transition:background .4s;display:flex;position:absolute;top:0;left:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-hover)}::selection{background:var(--primary-subtle);color:var(--text-primary)}*,:before,:after{transition-property:background-color,border-color,color,box-shadow;transition-duration:0s}body.theme-transitioning,body.theme-transitioning *,body.theme-transitioning :before,body.theme-transitioning :after{transition-duration:.4s!important;transition-timing-function:ease!important}
