:root{--font-pixel: "Press Start 2P", monospace;--font-mono: "Silkscreen", monospace;--font-body: "Space Grotesk", sans-serif;--font-m: "Martel Sans", sans-serif;--font-jet: "JetBrains Mono", "Courier New", monospace}.navbar{background:#110820;border-bottom:3px solid #6c3fd4;box-shadow:0 4px #3d1fa3;display:flex;align-items:center;padding:0 24px;height:65px;position:relative;z-index:10}.navbar-logo{width:32px;height:32px;background:#6c3fd4;border:2px solid #c084fc;box-shadow:2px 2px #3d1fa3;display:flex;align-items:center;justify-content:center;font-size:18px}.navbar-brand{font-family:var(--font-pixel);font-size:11px;color:#f0abfc;letter-spacing:1px;display:flex;align-items:center;gap:10px;text-decoration:none;margin-right:24px}.navbar-links{display:flex;gap:4px;flex:1}.navbar-auth{display:flex;gap:10px;align-items:center}.navbar-username{position:relative;font-family:var(--font-m);font-size:14px;color:#e2d9f3;letter-spacing:1px;top:.15em}.navbar-auth-btn{font-family:var(--font-mono);font-size:14px;padding:6px 14px;border:2px solid;text-decoration:none;transition:color .1s,background .1s,box-shadow .1s,transform .08s}.navbar-auth-btn:active{transform:translate(2px,2px);box-shadow:none!important}.navbar-login{color:#7c5cbf;border-color:transparent;background:transparent}.navbar-login:hover{color:#e2d9f3;border-color:#6c3fd4;background:#1e0a3a;box-shadow:2px 2px #3d1fa3}.navbar-signup{color:#f0abfc;border-color:#6c3fd4;background:#6c3fd4;box-shadow:2px 2px #3d1fa3}.navbar-signup:hover{background:#7c4fe4;border-color:#c084fc;color:#fff;box-shadow:2px 2px #3d1fa3;transform:translate(-1px,-1px)}.navbar-link{font-family:var(--font-mono);font-size:20px;color:#7c5cbf;padding:6px 16px;border:2px solid transparent;text-decoration:none;transition:color .1s,border-color .1s,background .1s,box-shadow .1s}.navbar-link:hover{color:#e2d9f3}.navbar-link.active{color:#e2d9f3;border:2px solid #6c3fd4;background:#1e0a3a;box-shadow:2px 2px #3d1fa3}*{box-sizing:border-box;margin:0;padding:0}:root{background-color:#1a0a2e}.card{display:flex;justify-content:space-between;align-items:center;text-decoration:none;background:#0d0d1a;border:3px solid #6c3fd4;border-radius:0;padding:16px 20px;height:100px;width:450px;box-shadow:4px 4px #3d1fa3;cursor:pointer;transition:transform .08s,box-shadow .08s}.card:hover{transform:translate(-2px,-2px);box-shadow:6px 6px #3d1fa3;border-color:#c084fc}.card:hover .card-title{color:#f0abfc}.card:active{transform:translate(2px,2px);box-shadow:2px 2px #3d1fa3}.card-text{display:flex;flex-direction:column}.card-title{font-family:var(--font-pixel);font-size:16px;color:#e2d9f3;margin:0 0 6px;letter-spacing:.5px;line-height:1.6;transition:color .1s}.card-subtitle{font-family:var(--font-pixel);font-size:12px;color:#7c5cbf;line-height:1.6}.card-star{fill:#4a2d8a;flex-shrink:0}.card-star-completed{fill:#fbbf24;filter:drop-shadow(0 0 6px rgba(251,191,36,.7))}.card-container{display:grid;grid-template-columns:repeat(2,470px);gap:16px;justify-content:start;align-content:start;background:#1a0a2e;padding:28px}.solve-error{color:#ff6b6b;font-family:var(--font-mono);font-size:12px}.card-skeleton{width:450px;height:100px;background:#0d0d1a;border:3px solid #2a1560;box-shadow:4px 4px #1a0a3a;background-image:linear-gradient(90deg,#0d0d1a,#1a0a2e,#0d0d1a 80%);background-size:200% 100%;animation:skeleton-scan 1.4s linear infinite}.cp-container{min-height:calc(100vh - 65px);background:#1a0a2e;padding:28px 36px;display:flex;flex-direction:column;gap:24px}.cp-back-row{display:flex;align-items:center}.cp-back{font-family:var(--font-mono);font-size:14px;color:#a07fd4;text-decoration:none;letter-spacing:1px;transition:color .1s}.cp-back:hover{color:#c791fd}.cp-header{display:flex;flex-direction:column;gap:8px;border-bottom:2px solid #1e0a3a;padding-bottom:20px}.cp-title{font-family:var(--font-pixel);font-size:20px;color:#f0abfc;margin:0;text-shadow:0 0 10px rgba(240,171,252,.6),3px 3px 0 #3d1fa3}.cp-subtitle{font-family:var(--font-mono);font-size:12px;color:#7c5cbf;margin:0;letter-spacing:1px}.cp-problem-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;max-width:1100px}.cp-problem-row{display:flex;align-items:center;gap:16px;background:#0d0d1a;border:2px solid #2a1560;box-shadow:3px 3px #1a0a3a;padding:14px 20px;cursor:pointer;transition:border-color .08s,box-shadow .08s,transform .08s}.cp-problem-row:hover{border-color:#6c3fd4;border-left-color:#6c3fd4;box-shadow:4px 4px #3d1fa3;transform:translate(-1px,-1px)}.cp-problem-row:hover .cp-problem-title{color:#f0abfc}.cp-problem-index{font-family:var(--font-body);font-size:13px;color:#8b6fa8;min-width:28px;flex-shrink:0;align-self:center}.cp-problem-title{font-family:var(--font-pixel);font-size:11px;color:#c4b5d4;flex:1;line-height:1.6;transition:color .1s}.cp-gem{fill:#2a1560;flex-shrink:0;transition:fill .1s,filter .1s}.cp-gem-solved{fill:#10b981;filter:drop-shadow(0 0 6px rgba(16,185,129,.8))}.cp-problem-skeleton{height:52px;background:#0d0d1a;border:2px solid #1a0a30;box-shadow:3px 3px #1a0a3a;background-image:linear-gradient(90deg,#0d0d1a,#1a0a2e,#0d0d1a 80%);background-size:200% 100%;animation:skeleton-scan 1.4s linear infinite}.cp-coming-soon{font-family:var(--font-pixel);font-size:18px;color:#7c5cbf;margin:0;letter-spacing:2px}.cp-error{color:#ff6b6b;font-family:var(--font-mono);font-size:12px;margin:0}.prob-layout{display:flex;flex-direction:column;min-height:calc(100vh - 65px);background:#1a0a2e}.prob-top{display:flex;flex-direction:column;gap:16px;padding:28px 36px 12px}.prob-bottom{display:flex;flex-direction:row;align-items:flex-start;flex:1}.prob-editor-col{flex:0 0 604px;min-width:0;display:flex;flex-direction:column;gap:10px;padding:20px 24px 24px 36px;overflow:hidden}.prob-tc-col{flex:0 0 460px;max-width:460px;padding:20px 28px 24px 24px}.prob-nav-row{display:flex;align-items:center;justify-content:space-between;max-width:544px}.prob-prev-next{display:flex;gap:16px}.prob-sibling-btn{font-family:var(--font-mono);font-size:14px;color:#a07fd4;background:none;border:none;cursor:pointer;padding:0;letter-spacing:1px;transition:color .1s}.prob-sibling-btn:hover:not(:disabled){color:#c791fd}.prob-sibling-btn:disabled{color:#4a3570;cursor:default}.prob-back{font-family:var(--font-mono);font-size:14px;color:#a07fd4;background:none;border:none;cursor:pointer;padding:0;letter-spacing:1px;text-align:left;transition:color .1s;width:fit-content}.prob-back:hover{color:#c791fd}.prob-header{display:flex;flex-direction:column;gap:12px}.prob-title-row{display:flex;align-items:center;gap:16px}.prob-solved-badge{font-size:24px;color:#10b981;text-shadow:0 0 8px rgba(16,185,129,.8),0 0 16px rgba(16,185,129,.4)}.prob-category{font-family:var(--font-pixel);font-size:20px;color:#f0abfc;margin:0;text-shadow:0 0 10px rgba(240,171,252,.6),3px 3px 0 #3d1fa3}.prob-title{font-family:var(--font-pixel);font-size:13px;color:#c4b5d4;margin:0;line-height:1.8}.prob-title-divider{border:none;border-top:2px solid #2a1560;width:544px;margin:0}.prob-description{font-family:var(--font-body);font-size:16px;color:#a89bc2;line-height:1.3;margin:0;max-width:544px}.prob-editor-section{display:flex;flex-direction:column;gap:10px}.prob-editor-label{font-family:var(--font-mono);font-size:11px;color:#c084fc;letter-spacing:1px}.prob-editor{height:420px;width:100%;min-width:0;border:2px solid #6c3fd4;overflow:hidden}.prob-editor .cm-editor{height:100%;min-width:0}.prob-editor .cm-scroller{overflow-x:auto!important;overflow-y:auto!important}.prob-editor .cm-content{min-width:0}.prob-editor .cm-scroller::-webkit-scrollbar{width:14px;height:14px}.prob-editor .cm-scroller::-webkit-scrollbar-track{background:#0d0a1a}.prob-editor .cm-scroller::-webkit-scrollbar-thumb{background:#5a3a9a;border-radius:0}.prob-editor .cm-scroller::-webkit-scrollbar-thumb:hover{background:#8b5cf6}.prob-editor .cm-scroller::-webkit-scrollbar-corner{background:#0d0a1a}.prob-editor .cm-scroller::-webkit-scrollbar-button{background-color:#1e0a3a;display:block;background-repeat:no-repeat;background-position:center;background-size:6px 6px}.prob-editor .cm-scroller::-webkit-scrollbar-button:hover{background-color:#3d1fa3}.prob-editor .cm-scroller::-webkit-scrollbar-button:vertical:decrement:end{display:none}.prob-editor .cm-scroller::-webkit-scrollbar-button:vertical:increment:start{display:none}.prob-editor .cm-scroller::-webkit-scrollbar-button:horizontal:decrement:end{display:none}.prob-editor .cm-scroller::-webkit-scrollbar-button:horizontal:increment:start{display:none}.prob-editor .cm-scroller::-webkit-scrollbar-button:vertical:decrement:start{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 6'%3E%3Cpath d='M3 1 L6 5 L0 5 Z' fill='%238b5cf6'/%3E%3C/svg%3E")}.prob-editor .cm-scroller::-webkit-scrollbar-button:vertical:increment:end{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 6'%3E%3Cpath d='M3 5 L6 1 L0 1 Z' fill='%238b5cf6'/%3E%3C/svg%3E")}.prob-editor .cm-scroller::-webkit-scrollbar-button:horizontal:decrement:start{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 6'%3E%3Cpath d='M1 3 L5 0 L5 6 Z' fill='%238b5cf6'/%3E%3C/svg%3E")}.prob-editor .cm-scroller::-webkit-scrollbar-button:horizontal:increment:end{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 6'%3E%3Cpath d='M5 3 L1 0 L1 6 Z' fill='%238b5cf6'/%3E%3C/svg%3E")}.prob-editor ::selection{background-color:#2d3f8f80!important}.prob-editor .cm-layer.cm-selectionLayer{z-index:3!important;pointer-events:none}.prob-editor:focus-within{border-color:#c084fc}.prob-editor-footer{display:flex;justify-content:flex-end;padding-bottom:4px}.prob-submit-btn{font-family:var(--font-pixel);font-size:12px;color:#fff;background:#6c3fd4;border:3px solid #c084fc;box-shadow:4px 4px #3d1fa3;padding:14px 28px;cursor:pointer;letter-spacing:1px;transition:transform .08s,box-shadow .08s,background .1s,border-color .1s,color .1s}.prob-submit-btn:hover{background:#7c4fe4;color:#f0abfc;border-color:#f0abfc;transform:translate(-1px,-1px);box-shadow:5px 5px #3d1fa3}.prob-submit-btn:active{transform:translate(4px,4px);box-shadow:none}.prob-submit-btn:disabled{opacity:.7;cursor:not-allowed}.prob-submit-wrap{position:relative}.prob-submit-wrap--locked:after{content:"Login or sign up to run code";position:absolute;bottom:calc(100% + 8px);right:0;background:#0d0a1a;border:1px solid #6c3fd4;color:#c084fc;font-family:var(--font-body);font-size:12px;padding:6px 10px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s}.prob-submit-wrap--locked:hover:after{opacity:1}.prob-submit-btn--locked:active{transform:none!important;box-shadow:4px 4px #3d1fa3!important}.tc-next-btn{font-family:var(--font-pixel);font-size:14px;color:#fff;background:#10b981;border:3px solid #34d399;padding:14px 32px;cursor:pointer;letter-spacing:1px;width:100%;margin-top:18px;transition:transform .08s,background .1s}.tc-next-btn:hover{background:#059669;transform:translate(-1px,-1px)}.tc-next-btn:active{transform:translate(2px,2px)}.prob-skeleton{background:#0d0d1a;background-image:linear-gradient(90deg,#0d0d1a,#1a0a2e,#0d0d1a 80%);background-size:200% 100%;animation:skeleton-scan 1.4s linear infinite}.prob-skeleton-title{height:40px;width:80%}.prob-skeleton-line{height:16px;width:100%}.prob-skeleton-line-short{height:16px;width:60%}@keyframes skeleton-scan{0%{background-position:200% 0}to{background-position:-200% 0}}.prob-error{color:#ff6b6b;font-family:var(--font-mono);font-size:12px;margin:0}.tc-panel{display:flex;flex-direction:column;gap:14px}.tc-panel-header{display:flex;flex-direction:column;gap:8px}.tc-panel-title{font-family:var(--font-pixel);font-size:13px;color:#c084fc;letter-spacing:1px}.tc-status-badge{display:inline-block;font-family:var(--font-body);font-size:12px;letter-spacing:1px;padding:5px 10px;width:fit-content}.tc-status-pass{color:#10b981;background:#10b98114;border:1px solid #10b981}.tc-status-fail{color:#ef4444;background:#ef444414;border:1px solid #ef4444}.tc-status-timeout{color:#f59e0b;background:#f59e0b14;border:1px solid #f59e0b}.tc-empty{font-family:var(--font-body);font-size:13px;color:#3a2a5a;padding:32px 16px;text-align:center;border:2px dashed #2a1560}.tc-running{font-family:var(--font-body);font-size:13px;color:#7c5cbf;padding:32px 16px;text-align:center;border:2px dashed #2a1560;animation:tc-blink 1s step-end infinite}@keyframes tc-blink{0%,to{opacity:1}50%{opacity:.35}}.tc-violations{border:2px solid #ef4444;padding:12px 14px;font-family:var(--font-body);font-size:13px;color:#ef4444}.tc-violations ul{margin:0;padding-left:18px;line-height:2.1}.tc-compile-error{border:2px solid #ef4444;background:#ef44440a;padding:14px}.tc-compile-title{font-family:var(--font-pixel);font-size:11px;color:#ef4444;letter-spacing:1px}.tc-compile-output{font-family:var(--font-jet);font-size:12px;color:#e2d9f3!important;background:#07070f;white-space:pre-wrap;word-break:break-all;margin:8px 0 0;padding:10px;max-height:320px;overflow-y:auto;line-height:1.6}.tc-simple{font-family:var(--font-body);font-size:13px;padding:14px;border:2px solid;white-space:pre-wrap;word-break:break-all;line-height:1.6}.tc-simple-pass{border-color:#10b981;color:#10b981}.tc-simple-fail{border-color:#ef4444;color:#c4b5d4}.tc-table{width:100%;border-collapse:collapse;font-family:var(--font-body);font-size:13px;border:2px solid #2a1560;table-layout:auto}.tc-table thead tr{background:#0d0a1a}.tc-table th{padding:8px 10px;text-align:left;font-size:12px;font-weight:600;color:#7c5cbf;text-transform:uppercase;letter-spacing:1px;border-bottom:2px solid #2a1560;border-right:1px solid #1e0a3a;overflow:hidden}.tc-strip-th{width:36px!important;padding:0!important;border-right:none!important}.tc-table td{padding:9px 10px;color:#c4b5d4;border-bottom:1px solid #1e0a3a;border-right:1px solid #1e0a3a;white-space:nowrap}.tc-table td:nth-child(1){width:1px}.tc-table td:nth-child(2),.tc-table td:nth-child(3){white-space:normal;word-break:break-word;min-width:160px}.tc-table tbody tr:last-child td{border-bottom:none}.tc-strip-cell{width:36px!important;min-width:36px!important;max-width:36px!important;padding:0!important;border-right:none!important}.tc-strip-pass{background:#10b981}.tc-strip-fail{background:#ef4444}.tc-strip-timeout{background:#f59e0b}.tc-hidden-row td{color:#5a4a7a;font-style:italic;text-align:center;padding:9px 10px}.tc-timeout-text{color:#f59e0b;font-weight:600}.animal-overlay{position:fixed;inset:0;background:#0a0414d9;display:flex;align-items:center;justify-content:center;z-index:100}.animal-modal{position:relative;background:#0d0d1a;border:3px solid #6c3fd4;box-shadow:6px 6px #3d1fa3;padding:36px 40px;max-width:480px;width:90%;display:flex;flex-direction:column;align-items:center;gap:20px}.animal-close{position:absolute;top:12px;right:14px;background:none;border:none;color:#7c5cbf;font-size:16px;cursor:pointer;line-height:1;transition:color .1s}.animal-close:hover{color:#f0abfc}.animal-title{font-family:var(--font-pixel);font-size:18px;color:#f0abfc;margin:0;text-align:center;text-shadow:0 0 10px rgba(240,171,252,.7),3px 3px 0 #3d1fa3}.animal-img{width:100%;max-height:260px;object-fit:cover;border:2px solid #2a1560}.animal-desc{font-family:var(--font-body);font-size:14px;color:#c4b5d4;margin:0;line-height:1.7;text-align:center}.animal-loading,.animal-error{font-family:var(--font-mono);font-size:13px;color:#7c5cbf;margin:0}.animal-error{color:#ff6b6b}.home-container{min-height:calc(100vh - 65px);background:#1a0a2e;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.home-scanlines{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.15) 2px,rgba(0,0,0,.15) 4px);pointer-events:none;z-index:1}.home-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;gap:32px;padding:48px 24px}.home-loggedin{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:48px;margin-bottom:80px}.home-welcome{font-family:var(--font-pixel);font-size:clamp(24px,4.5vw,48px);color:#f0abfc;margin:0;text-shadow:0 0 16px rgba(240,171,252,.8),0 0 32px rgba(192,132,252,.5),4px 4px 0 #3d1fa3}.home-loggedin-buttons{display:flex;justify-content:space-between;width:100%;min-width:480px;gap:24px}.home-username{font-family:var(--font-pixel);font-size:clamp(20px,3vw,36px);color:#f0abfc;margin:0;text-align:center;text-shadow:0 0 16px rgba(240,171,252,.8),0 0 32px rgba(192,132,252,.5),4px 4px 0 #3d1fa3}.home-title{font-family:var(--font-pixel);font-size:clamp(16px,3vw,28px);color:#e2d9f3;line-height:2;margin:0;text-shadow:0 0 10px rgba(192,132,252,.6),0 0 20px rgba(108,63,212,.4)}.home-title-java{color:#f0abfc;text-shadow:0 0 12px rgba(240,171,252,.9),0 0 30px rgba(192,132,252,.6),3px 3px 0 #3d1fa3}.home-subtitle{font-family:var(--font-mono);font-size:clamp(14px,2vw,20px);color:#7c5cbf;margin:0;letter-spacing:1px}.home-buttons{display:flex;gap:24px;flex-wrap:wrap;justify-content:center}.home-btn{font-family:var(--font-pixel);font-size:12px;padding:16px 28px;border:3px solid;cursor:pointer;letter-spacing:1px;transition:transform .08s,box-shadow .08s;position:relative}.home-btn:active{transform:translate(3px,3px);box-shadow:none!important}.home-btn-primary{background:#6c3fd4;color:#fff;border-color:#c084fc;box-shadow:4px 4px #3d1fa3;text-shadow:0 0 8px rgba(240,171,252,.8)}.home-btn-primary:hover{background:#7c4fe4;color:#f0abfc;border-color:#f0abfc;box-shadow:4px 4px #3d1fa3;transform:translate(-1px,-1px)}.home-btn-secondary{background:transparent;color:#c084fc;border-color:#6c3fd4;box-shadow:4px 4px #3d1fa3}.home-btn-secondary:hover{background:#1e0a3a;color:#f0abfc;border-color:#c084fc;box-shadow:4px 4px #6c3fd4;transform:translate(-1px,-1px)}.home-pixels{display:flex;gap:12px}.pixel{display:block;width:8px;height:8px;background:#6c3fd4;animation:pixel-pulse 1.5s ease-in-out infinite}.pixel:nth-child(2){animation-delay:.2s;background:#7c5cbf}.pixel:nth-child(3){animation-delay:.4s;background:#c084fc}.pixel:nth-child(4){animation-delay:.6s;background:#7c5cbf}.pixel:nth-child(5){animation-delay:.8s;background:#6c3fd4}@keyframes pixel-pulse{0%,to{opacity:.3;transform:scaleY(1)}50%{opacity:1;transform:scaleY(2)}}.login-container{min-height:calc(100vh - 65px);background:#1a0a2e;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.login-scanlines{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.15) 2px,rgba(0,0,0,.15) 4px);pointer-events:none;z-index:1}.login-card{position:relative;z-index:2;background:#0d0d1a;border:3px solid #6c3fd4;box-shadow:6px 6px #3d1fa3;padding:48px 40px;width:100%;max-width:420px;display:flex;flex-direction:column;gap:32px}.login-card-header{display:flex;flex-direction:column;align-items:center;gap:12px}.login-llama{font-size:36px;line-height:1;filter:drop-shadow(0 0 8px rgba(192,132,252,.7))}.login-title{font-family:var(--font-pixel);font-size:22px;color:#f0abfc;margin:0;text-shadow:0 0 10px rgba(240,171,252,.8),3px 3px 0 #3d1fa3}.login-subtitle{font-family:var(--font-body);font-size:13px;color:#7c5cbf;margin:0;letter-spacing:2px}.login-form{display:flex;flex-direction:column;gap:24px}.login-field{display:flex;flex-direction:column;gap:8px}.login-label{font-family:var(--font-body);font-size:12px;color:#c084fc;letter-spacing:1px}.login-input{font-family:var(--font-body);font-size:14px;color:#e2d9f3;background:#110820;border:2px solid #6c3fd4;box-shadow:3px 3px #3d1fa3;padding:12px 14px;outline:none;transition:border-color .1s,box-shadow .1s;width:100%;box-sizing:border-box}.login-input::placeholder{color:#6b4d8a}.login-input:focus{border-color:#c084fc;box-shadow:3px 3px #6c3fd4}.login-btn{font-family:var(--font-pixel);font-size:13px;color:#fff;background:#6c3fd4;border:3px solid #c084fc;box-shadow:4px 4px #3d1fa3;padding:16px;cursor:pointer;letter-spacing:1px;transition:transform .08s,box-shadow .08s,background .1s,border-color .1s,color .1s;margin-top:4px;display:flex;align-items:center;justify-content:center;gap:8px;line-height:1}.login-btn span:first-child{position:relative;top:-2px}.login-btn:hover{background:#7c4fe4;color:#f0abfc;border-color:#f0abfc;box-shadow:4px 4px #3d1fa3;transform:translate(-1px,-1px)}.login-btn:active{transform:translate(4px,4px);box-shadow:none}.login-footer{display:flex;align-items:center;justify-content:center;gap:12px;border-top:2px solid #1e0a3a;padding-top:24px}.login-footer-text{font-family:var(--font-mono);font-size:12px;color:#7c5cbf}.login-footer-link{font-family:var(--font-mono);font-size:12px;color:#c084fc;text-decoration:none;border-bottom:2px solid transparent;transition:color .1s,border-color .1s}.login-footer-link:hover{color:#f0abfc;border-bottom-color:#f0abfc}.login-btn:disabled{cursor:not-allowed;opacity:.65;transform:none!important;box-shadow:4px 4px #3d1fa3}.login-field-error{color:#ff6b6b;font-family:var(--font-body);font-size:13px;margin:4px 0 0}.login-input.input-error{border:1px solid #ff6b6b;box-shadow:none}.login-form-error{color:#ff6b6b;font-family:var(--font-body);font-size:13px;margin:0 0 4px}.signup-container{min-height:calc(100vh - 65px);background:#1a0a2e;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.signup-scanlines{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.15) 2px,rgba(0,0,0,.15) 4px);pointer-events:none;z-index:1}.signup-card{position:relative;z-index:2;background:#0d0d1a;border:3px solid #6c3fd4;box-shadow:6px 6px #3d1fa3;padding:48px 40px;width:100%;max-width:420px;display:flex;flex-direction:column;gap:32px;margin:32px 0}.signup-card-header{display:flex;flex-direction:column;align-items:center;gap:12px}.signup-llama{font-size:36px;line-height:1;filter:drop-shadow(0 0 8px rgba(192,132,252,.7))}.signup-title{font-family:var(--font-pixel);font-size:18px;color:#f0abfc;margin:0;text-align:center;text-shadow:0 0 10px rgba(240,171,252,.8),3px 3px 0 #3d1fa3}.signup-subtitle{font-family:var(--font-body);font-size:13px;color:#7c5cbf;margin:0;letter-spacing:2px}.signup-form{display:flex;flex-direction:column;gap:24px}.signup-field{display:flex;flex-direction:column;gap:8px}.signup-label{font-family:var(--font-body);font-size:12px;color:#c084fc;letter-spacing:1px}.signup-label-hint{font-family:var(--font-body);font-size:11px;color:#c084fc;letter-spacing:0;font-weight:400;text-transform:none}.signup-input{font-family:var(--font-body);font-size:14px;color:#e2d9f3;background:#110820;border:2px solid #6c3fd4;box-shadow:3px 3px #3d1fa3;padding:12px 14px;outline:none;transition:border-color .1s,box-shadow .1s;width:100%;box-sizing:border-box}.signup-input::placeholder{color:#6b4d8a}.signup-input:focus{border-color:#c084fc;box-shadow:3px 3px #6c3fd4}.signup-field-note{font-family:var(--font-mono);font-size:10px;color:#3d2a5a;letter-spacing:.5px}.signup-btn{font-family:var(--font-pixel);font-size:12px;color:#fff;background:#6c3fd4;border:3px solid #c084fc;box-shadow:4px 4px #3d1fa3;padding:16px;cursor:pointer;letter-spacing:1px;transition:transform .08s,box-shadow .08s,background .1s,border-color .1s,color .1s;margin-top:4px;display:flex;align-items:center;justify-content:center;gap:8px;line-height:1}.signup-btn span:first-child{position:relative;top:-2px}.signup-btn:hover{background:#7c4fe4;color:#f0abfc;border-color:#f0abfc;box-shadow:4px 4px #3d1fa3;transform:translate(-1px,-1px)}.signup-btn:active{transform:translate(4px,4px);box-shadow:none}.signup-footer{display:flex;align-items:center;justify-content:center;gap:12px;border-top:2px solid #1e0a3a;padding-top:24px;flex-wrap:wrap}.signup-footer-text{font-family:var(--font-mono);font-size:12px;color:#7c5cbf}.signup-footer-link{font-family:var(--font-mono);font-size:12px;color:#c084fc;text-decoration:none;border-bottom:2px solid transparent;transition:color .1s,border-color .1s}.signup-footer-link:hover{color:#f0abfc;border-bottom-color:#f0abfc}.signup-form-error{color:#ff6b6b;font-family:var(--font-body);font-size:13px;margin:0 0 4px}.signup-btn:disabled{cursor:not-allowed;opacity:.65;transform:none!important;box-shadow:4px 4px #3d1fa3}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.btn-cursor{animation:blink .7s step-start infinite}.signup-field-error{color:#ff6b6b;font-family:var(--font-body);font-size:13px;margin:4px 0 0}.signup-input.input-error{border:1px solid #ff6b6b;box-shadow:none}.stats-layout{min-height:calc(100vh - 65px);background:#1a0a2e;position:relative;overflow:hidden}.stats-scanlines{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.1) 2px,rgba(0,0,0,.1) 4px);pointer-events:none;z-index:0}.stats-content{position:relative;z-index:1;max-width:860px;margin:0 auto;padding:36px 32px 64px;display:flex;flex-direction:column;gap:36px}.stats-header{display:flex;align-items:flex-end;justify-content:space-between;border-bottom:2px solid #2a1560;padding-bottom:24px}.stats-header-left{display:flex;flex-direction:column;gap:8px}.stats-player-label{font-family:var(--font-body);font-size:11px;color:#7c5cbf;letter-spacing:3px}.stats-username{font-family:var(--font-pixel);font-size:24px;color:#f0abfc;margin:0;line-height:1.6;text-shadow:0 0 12px rgba(240,171,252,.7),3px 3px 0 #3d1fa3}.stats-member-since{font-family:var(--font-body);font-size:10px;color:#8b6fbf;letter-spacing:1px}.stats-level-box{display:flex;flex-direction:column;align-items:center;border:3px solid #6c3fd4;padding:10px 20px;box-shadow:4px 4px #3d1fa3;background:#0d0a1a}.stats-level-label{font-family:var(--font-body);font-size:10px;color:#7c5cbf;letter-spacing:2px}.stats-level-num{font-family:var(--font-pixel);font-size:32px;color:#c084fc;line-height:1.4;text-shadow:0 0 12px rgba(192,132,252,.8)}.stats-solved-banner{background:#0d0a1a;border:2px solid #2a1560;padding:20px 24px;display:flex;align-items:center;gap:32px;position:relative}.stats-solved-banner:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#10b981,transparent)}.stats-solved-left{display:flex;align-items:center;gap:16px;flex-shrink:0}.stats-solved-num{font-family:var(--font-pixel);font-size:36px;color:#10b981;line-height:1;text-shadow:0 0 12px rgba(16,185,129,.5)}.stats-solved-labels{display:flex;flex-direction:column;gap:4px}.stats-solved-title{font-family:var(--font-body);font-size:14px;color:#7c5cbf;letter-spacing:1.5px}.stats-solved-sub{font-family:var(--font-body);font-size:13px;color:#8b6fbf}.stats-solved-bar-wrap{flex:1;display:flex;align-items:center;gap:12px}.stats-solved-bar{flex:1;height:8px;background:#2e1660}.stats-solved-fill{height:100%;background:#10b981;box-shadow:0 0 8px #10b98180;transition:width .6s ease}.stats-solved-pct{font-family:var(--font-body);font-size:11px;color:#10b981;flex-shrink:0;width:36px;text-align:right}.stats-section{display:flex;flex-direction:column;gap:16px}.stats-section-title{font-family:var(--font-pixel);font-size:11px;color:#c084fc;margin:0;letter-spacing:1px}.stats-categories{display:flex;flex-direction:column;gap:12px}.stats-cat-row{display:flex;align-items:center;gap:16px}.stats-cat-name{font-family:var(--font-body);font-size:11px;color:#a89bc2;width:180px;flex-shrink:0;letter-spacing:.5px}.stats-cat-complete .stats-cat-name{color:#10b981}.stats-cat-bar-wrap{display:flex;align-items:center;gap:12px;flex:1}.stats-cat-bar{flex:1;height:8px;background:#2e1660}.stats-cat-fill{height:100%;background:#6c3fd4;transition:width .6s ease}.stats-cat-complete .stats-cat-fill{background:#10b981;box-shadow:0 0 8px #10b98199}.stats-cat-count{font-family:var(--font-body);font-size:10px;color:#8b6fbf;width:36px;text-align:right;flex-shrink:0}.stats-cat-complete .stats-cat-count{color:#10b981}.stats-cat-done{font-size:14px;color:#10b981;text-shadow:0 0 8px rgba(16,185,129,.8);flex-shrink:0}.stats-activity{display:flex;flex-direction:column;gap:0;border:2px solid #2a1560}.stats-activity-row{display:flex;align-items:center;gap:14px;padding:10px 14px;border-bottom:1px solid #1e0a3a;transition:background .1s}.stats-activity-row:last-child{border-bottom:none}.stats-activity-row:hover{background:#0d0a1a}.stats-act-badge{font-family:var(--font-body);font-size:14px;font-weight:700;width:20px;text-align:center;flex-shrink:0}.stats-badge-pass{color:#10b981}.stats-badge-fail{color:#ef4444}.stats-act-title{font-family:var(--font-body);font-size:13px;color:#c4b5d4;flex:1}.stats-act-diff{font-family:var(--font-body);font-size:12px;letter-spacing:1px;flex-shrink:0}.stats-act-time{font-family:var(--font-body);font-size:11px;color:#8b6fbf;flex-shrink:0;width:60px;text-align:right}.stats-locked{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;min-height:calc(100vh - 65px)}.stats-locked-text{font-family:var(--font-body);font-size:18px;color:#c4b5d4;letter-spacing:2px;margin:0}.stats-login-btn{font-family:var(--font-body);font-size:15px;color:#fff;background:#6c3fd4;border:3px solid #c084fc;box-shadow:4px 4px #3d1fa3;padding:14px 32px;cursor:pointer;letter-spacing:1px;transition:transform .08s,box-shadow .08s}.stats-login-btn:hover{transform:translate(-1px,-1px);box-shadow:5px 5px #3d1fa3}.stats-login-btn:active{transform:translate(4px,4px);box-shadow:none}.stats-skeleton-block{background:#0d0d1a;background-image:linear-gradient(90deg,#0d0d1a,#1a0a2e,#0d0d1a 80%);background-size:200% 100%;animation:stats-scan 1.4s linear infinite}.stats-skeleton-title{height:80px;width:360px;margin:36px 32px 0}.stats-skeleton-row{display:flex;gap:16px;padding:0 32px;margin-top:24px}.stats-skeleton-card{height:120px;flex:1}.stats-skeleton-section{height:200px;margin:0 32px}@keyframes stats-scan{0%{background-position:200% 0}to{background-position:-200% 0}}.stats-error{font-family:var(--font-body);font-size:12px;color:#ef4444;padding:36px 32px}
