*{margin:0;padding:0;box-sizing:border-box}:root{--primary: hsl(45, 95%, 50%);--primary-dark: hsl(45, 95%, 40%);--primary-light: hsl(45, 95%, 60%);--secondary: hsl(270, 70%, 55%);--secondary-dark: hsl(270, 70%, 45%);--background: hsl(220, 20%, 10%);--surface: hsl(220, 15%, 15%);--surface-elevated: hsl(220, 15%, 18%);--text-primary: hsl(0, 0%, 95%);--text-secondary: hsl(0, 0%, 70%);--text-tertiary: hsl(0, 0%, 50%);--success: hsl(142, 76%, 36%);--error: hsl(0, 84%, 60%);--border: hsl(220, 15%, 25%);--border-focus: var(--primary);--glass-bg: rgba(255, 255, 255, .05);--glass-border: rgba(255, 255, 255, .1);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .2);--shadow-md: 0 4px 12px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .4);--shadow-glow: 0 0 20px rgba(255, 204, 0, .3);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .4s cubic-bezier(.4, 0, .2, 1)}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;color:var(--text-primary);background:var(--background);background-image:radial-gradient(ellipse at 20% 20%,hsla(45,95%,50%,.1) 0%,transparent 50%),radial-gradient(ellipse at 80% 80%,hsla(270,70%,55%,.1) 0%,transparent 50%);background-attachment:fixed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;overflow:hidden}.auth-page:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:600px;background:radial-gradient(circle,hsla(45,95%,50%,.15),transparent 70%);border-radius:50%;filter:blur(60px);pointer-events:none;animation:pulse 4s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.5;transform:translate(-50%,-50%) scale(1)}50%{opacity:.8;transform:translate(-50%,-50%) scale(1.1)}}.auth-container{width:100%;max-width:440px;background:var(--glass-bg);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:24px;padding:2.5rem;box-shadow:var(--shadow-lg);position:relative;z-index:1;animation:slideIn .6s cubic-bezier(.16,1,.3,1)}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-header{text-align:center;margin-bottom:2rem}.auth-logo h1{font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,var(--primary),var(--secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.auth-logo p{color:var(--text-secondary);font-size:.95rem}.auth-tabs{display:flex;gap:.5rem;background:var(--surface);padding:.375rem;border-radius:12px;margin-bottom:2rem}.auth-tabs .tab{flex:1;padding:.75rem 1rem;border:none;background:transparent;color:var(--text-secondary);font-weight:500;border-radius:8px;cursor:pointer;transition:all var(--transition-base)}.auth-tabs .tab.active{background:var(--primary);color:var(--background);box-shadow:var(--shadow-sm)}.auth-tabs .tab:not(.active):hover{color:var(--text-primary);background:#ffffff0d}.auth-content{animation:fadeIn .4s ease-in-out}.auth-form h2{font-size:1.75rem;margin-bottom:.5rem;font-weight:600}.auth-subtitle{color:var(--text-secondary);margin-bottom:2rem;font-size:.95rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;font-size:.9rem;color:var(--text-primary)}.form-group input{width:100%;padding:.875rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--text-primary);font-size:.95rem;font-family:inherit;transition:all var(--transition-base)}.form-group input::placeholder{color:var(--text-tertiary)}.form-group input:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px #ffcc001a}.form-group input:disabled{opacity:.5;cursor:not-allowed}.password-strength{margin-top:.75rem;font-size:.85rem}.strength-valid{color:var(--success);display:flex;align-items:center;gap:.5rem}.strength-invalid{color:var(--error)}.strength-invalid p{margin-bottom:.375rem;font-weight:500}.strength-invalid ul{list-style:none;padding-left:0}.strength-invalid li{padding:.25rem 0 .25rem 1.25rem;position:relative}.strength-invalid li:before{content:"×";position:absolute;left:0;font-weight:700}.btn{padding:.875rem 1.5rem;border:none;border-radius:10px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all var(--transition-base);font-family:inherit;width:100%;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#fff3;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn:active:before{width:300px;height:300px}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:var(--background);box-shadow:var(--shadow-md)}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-lg),var(--shadow-glow)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn-passkey{background:linear-gradient(135deg,#3c71dd,#8c3cdd);color:var(--text-primary);display:flex;align-items:center;justify-content:center;gap:.75rem;box-shadow:var(--shadow-md)}.btn-passkey:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #3c3cdd66}.btn-passkey .passkey-icon{font-size:1.2rem;animation:shimmer 2s ease-in-out infinite}@keyframes shimmer{0%,to{opacity:1}50%{opacity:.7}}.btn-passkey:disabled{opacity:.6;cursor:not-allowed}.auth-divider{position:relative;text-align:center;margin:1.5rem 0}.auth-divider:before,.auth-divider:after{content:"";position:absolute;top:50%;width:45%;height:1px;background:var(--border)}.auth-divider:before{left:0}.auth-divider:after{right:0}.auth-divider span{background:var(--surface-elevated);padding:0 1rem;color:var(--text-tertiary);font-size:.85rem;font-weight:500;position:relative}.btn-secondary{background:var(--surface);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--surface-elevated);border-color:var(--text-secondary)}.error-message{background:#ef43431a;border:1px solid hsla(0,84%,60%,.3);color:var(--error);padding:.875rem 1rem;border-radius:10px;margin-bottom:1.25rem;font-size:.9rem;display:flex;align-items:center;gap:.625rem;animation:shake .4s}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}.error-message:before{content:"⚠";font-size:1.25rem}.auth-footer{margin-top:1.75rem;text-align:center;font-size:.9rem;color:var(--text-secondary)}.link-button{background:none;border:none;color:var(--primary);font-weight:600;cursor:pointer;font-family:inherit;font-size:inherit;text-decoration:underline;text-underline-offset:2px;transition:color var(--transition-fast)}.link-button:hover{color:var(--primary-light)}.dashboard{min-height:100vh;display:flex;flex-direction:column}.dashboard-header{background:var(--glass-bg);backdrop-filter:blur(20px);border-bottom:1px solid var(--glass-border);padding:1rem 0;position:sticky;top:0;z-index:10}.header-content{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between}.logo h1{font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,var(--primary),var(--secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.user-menu{display:flex;align-items:center;gap:1rem}.nav-link-btn{border-radius:20px;padding:.5rem 1rem}.username{color:var(--text-secondary);font-weight:500;text-decoration:none;cursor:pointer;padding:.5rem 1rem;border-radius:20px}.user-menu .btn{width:auto;padding:.5rem 1rem}.dashboard-main{flex:1;padding:3rem 2rem}.content-container{max-width:1200px;margin:0 auto}.content-container h1{font-size:2.5rem;margin-bottom:.5rem}.subtitle{color:var(--text-secondary);font-size:1.1rem;margin-bottom:3rem}.card{background:var(--glass-bg);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:16px;padding:2rem;margin-bottom:2rem;box-shadow:var(--shadow-md);transition:transform var(--transition-base),box-shadow var(--transition-base)}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.card h2{font-size:1.5rem;margin-bottom:1rem}.code-block{background:var(--surface);padding:1rem;border-radius:8px;overflow-x:auto;font-family:Monaco,Menlo,monospace;font-size:.85rem;line-height:1.4;color:var(--text-secondary)}.note{color:var(--text-tertiary);font-size:.9rem;font-style:italic}.loading-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem}.spinner{width:48px;height:48px;border:4px solid var(--surface);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-screen p{color:var(--text-secondary);font-size:.95rem}@media(max-width:768px){.auth-page{padding:1rem}.auth-container{padding:2rem 1.5rem}.dashboard-main{padding:2rem 1rem}.content-container h1{font-size:2rem}}.modal-overlay{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--surface);border:1px solid var(--border);border-radius:20px;width:100%;max-width:480px;box-shadow:var(--shadow-lg),0 0 40px #00000080;animation:slideUp .3s cubic-bezier(.16,1,.3,1);overflow:hidden}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{padding:1.5rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:#ffffff05}.modal-header h2{font-size:1.25rem;margin:0}.modal-close{background:none;border:none;font-size:1.5rem;color:var(--text-tertiary);cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all var(--transition-fast)}.modal-close:hover{background:#ffffff1a;color:var(--text-primary)}.modal-body{padding:2rem;text-align:center}.modal-body p{color:var(--text-secondary);margin-bottom:2rem}.success-state{display:flex;flex-direction:column;align-items:center;animation:scaleIn .4s cubic-bezier(.175,.885,.32,1.275)}@keyframes scaleIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.success-icon{width:80px;height:80px;background:var(--success);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:#fff;margin-bottom:1.5rem;box-shadow:0 10px 30px #16a24966}.benefits-list{text-align:left;background:var(--surface-elevated);padding:1.5rem;border-radius:12px;margin-bottom:2rem}.benefit-item{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;color:var(--text-primary);font-weight:500}.benefit-item:last-child{margin-bottom:0}.benefit-icon{font-size:1.5rem}.modal-actions{display:flex;gap:1rem}.modal-actions .btn{flex:1}.card-actions{display:flex;gap:1rem;margin-top:1.5rem}.status-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:600;background:#ffffff1a}.status-badge.active{background:#16a24933;color:var(--success)}.responsive-list-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background-color:#111827;border-radius:8px;gap:1rem}.responsive-edit-form{display:flex;gap:1rem;width:100%;align-items:center}.responsive-form-inputs{display:flex;flex-wrap:wrap;gap:.5rem;flex:1}.responsive-form-inputs>*{flex:1 1 120px}.responsive-actions{display:flex;gap:.5rem;align-items:center}.responsive-nav{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:center}.responsive-nav-links{display:flex;gap:1rem;flex:1;justify-content:center}.responsive-upload-buttons{display:flex;gap:1rem;justify-content:center}.mobile-value-row{display:flex;justify-content:space-between;align-items:center;width:100%;gap:1rem}@media(max-width:640px){.responsive-list-item{flex-direction:column;align-items:stretch;gap:1rem}.responsive-list-item>div{width:100%}.responsive-edit-form{flex-direction:column;align-items:stretch}.responsive-form-inputs>*{flex:1 1 100%;width:100%!important}.responsive-actions{justify-content:flex-end;width:100%}.dashboard-header{padding:.5rem 0}.header-content{padding:0 1rem}.logo h1{font-size:1.25rem}.responsive-nav{flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;gap:1rem;padding-bottom:.5rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.responsive-nav::-webkit-scrollbar{display:none}.responsive-nav>.logo{order:1;flex-shrink:0}.user-menu{order:3;margin:0;gap:.5rem;flex-shrink:0}.username{padding:.4rem .6rem;font-size:.85rem;white-space:nowrap}.user-menu .btn{padding:.4rem .6rem;font-size:.85rem;white-space:nowrap;width:auto}.responsive-nav-links{order:2;width:auto;flex-wrap:nowrap;justify-content:flex-start;gap:.5rem;flex-shrink:0}.responsive-nav-links .nav-link-btn{padding:.4rem .6rem;font-size:.85rem;white-space:nowrap;width:auto}.responsive-upload-buttons{flex-direction:column;align-items:stretch}.mobile-value-row{flex-wrap:wrap}}.recharts-wrapper *{outline:none!important}.recharts-bar-rectangle:focus,.recharts-bar-rect:focus,path.recharts-sector:focus,.recharts-pie-sector:focus,.recharts-active-dot:focus,.recharts-dot:focus{outline:none!important}svg.recharts-surface *{outline:none!important}
