:root{--login-bg:#0f1115;--login-surface:#181b21;--login-border:#ffffff14;--login-primary:#d4f23c;--login-primary-hover:#c5e62e;--login-primary-text:#0f1115;--login-text:#f0f0f0;--login-muted:#8a8f9a;--login-error-bg:#ef44441f;--login-error-text:#fca5a5;--login-radius:16px;--login-transition:.18s ease}.login-shell{background:radial-gradient(circle at 50% 30%, #d4f23c0f 0%, transparent 60%), var(--login-bg);min-height:100dvh;color:var(--login-text);justify-content:center;align-items:center;padding:24px 20px;display:flex}.login-card{flex-direction:column;gap:28px;width:100%;max-width:400px;display:flex}.login-header{text-align:center}.login-logo{justify-content:center;align-items:center;gap:10px;margin-bottom:24px;display:flex}.logo-dot{background:var(--login-primary);border-radius:50%;width:12px;height:12px;box-shadow:0 0 16px #d4f23c66}.logo-name{letter-spacing:-.3px;color:var(--login-text);font-size:18px;font-weight:700}.login-header h1{letter-spacing:-.5px;margin-bottom:6px;font-family:Georgia,Times New Roman,serif;font-size:32px;font-weight:400}.login-header p{color:var(--login-muted);font-size:14px;line-height:1.5}.login-error{background:var(--login-error-bg);color:var(--login-error-text);border-left:3px solid #ef4444;border-radius:10px;padding:12px 16px;font-size:13px;line-height:1.5}.login-fields{flex-direction:column;gap:6px;display:flex}.login-label{letter-spacing:1.5px;text-transform:uppercase;color:var(--login-muted);cursor:pointer;margin-top:10px;margin-bottom:4px;font-size:11px;font-weight:600}.login-input-wrap{align-items:center;display:flex;position:relative}.login-icon{color:var(--login-muted);pointer-events:none;transition:color var(--login-transition);position:absolute;left:16px}.login-input-wrap input{border-radius:var(--login-radius);border:1px solid var(--login-border);background:var(--login-surface);width:100%;color:var(--login-text);min-height:54px;transition:border-color var(--login-transition), box-shadow var(--login-transition);padding:16px 16px 16px 48px;font-size:16px}.login-input-wrap input::placeholder{color:#8a8f9a99}.login-input-wrap input:focus{border-color:var(--login-primary);outline:none;box-shadow:0 0 0 3px #d4f23c26}.login-input-wrap:focus-within .login-icon{color:var(--login-primary)}.login-password-wrap input{padding-right:52px}.login-toggle{color:var(--login-muted);cursor:pointer;width:auto;min-height:auto;transition:color var(--login-transition), background var(--login-transition);background:0 0;border:none;border-radius:8px;padding:6px;position:absolute;right:12px}.login-toggle:hover{color:var(--login-text);background:#ffffff0f}.login-options{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.login-checkbox{cursor:pointer;color:var(--login-muted);-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:13px;display:flex}.login-checkbox input[type=checkbox]{width:18px;height:18px;min-height:18px;accent-color:var(--login-primary);cursor:pointer;border-radius:4px;padding:0}.login-submit{border-radius:var(--login-radius);background:var(--login-primary);color:var(--login-primary-text);cursor:pointer;width:100%;min-height:54px;transition:background var(--login-transition), transform var(--login-transition), opacity var(--login-transition);border:none;justify-content:center;align-items:center;gap:10px;margin-top:16px;padding:16px 24px;font-size:16px;font-weight:700;display:flex}.login-submit:hover:not(:disabled){background:var(--login-primary-hover);transform:translateY(-1px)}.login-submit:active:not(:disabled){transform:translateY(0)}.login-submit:focus-visible{outline:2px solid var(--login-primary);outline-offset:3px}.login-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.login-footer{color:var(--login-muted);text-align:center;border-top:1px solid var(--login-border);padding-top:20px;font-size:13px}.login-footer a{color:var(--login-primary);transition:color var(--login-transition);font-weight:600;text-decoration:none}.login-footer a:hover{color:var(--login-primary-hover);text-decoration:underline}.login-footer a:focus-visible{outline:2px solid var(--login-primary);outline-offset:2px;border-radius:2px}:root{--color-bg:#f5f5f5;--color-surface:#fff;--color-surface-2:#f0f0f0;--color-primary:#d4f23c;--color-primary-hover:#c5e62e;--color-primary-text:#1a1a1a;--color-accent:#f97316;--color-text:#1a1a1a;--color-text-muted:#6b6b6b;--color-border:#e0e0e0;--color-focus:#d4f23c;--safe-top:env(safe-area-inset-top);--safe-bottom:env(safe-area-inset-bottom)}*{box-sizing:border-box;touch-action:manipulation;margin:0;padding:0}html,body{overscroll-behavior:none;-webkit-text-size-adjust:100%}body{background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;min-height:100dvh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}#root{min-height:100dvh;padding-top:var(--safe-top);padding-bottom:calc(var(--safe-bottom) + 64px);flex-direction:column;display:flex}a{color:var(--color-primary);text-decoration:none}button{background:var(--color-primary);color:var(--color-primary-text);cursor:pointer;touch-action:manipulation;border:none;border-radius:14px;width:100%;min-height:52px;padding:16px 24px;font-size:16px;font-weight:700}button:hover{background:var(--color-primary-hover)}input,select{border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);border-radius:12px;min-height:52px;padding:16px;font-size:16px}input::placeholder{color:#6b6b6b}input:focus,select:focus{outline:2px solid var(--color-focus);border-color:#0000}.page{flex-direction:column;flex:1;gap:14px;width:100%;max-width:480px;margin:0 auto;padding:24px 20px;display:flex}.page h1{letter-spacing:-.5px;font-size:32px;font-weight:800}.page p{color:var(--color-text-muted);line-height:1.5}.field-label{letter-spacing:1.2px;color:var(--color-text-muted);text-transform:uppercase;cursor:pointer;margin-top:6px;font-size:12px;font-weight:700}.input-icon-wrap:focus-within .input-icon-left,.password-wrap:focus-within .input-icon-left{color:var(--color-primary)}.card{background:var(--color-surface);border-radius:16px;flex-direction:column;gap:12px;width:100%;padding:20px;display:flex}.checkbox-row{align-items:center;gap:12px;padding:8px 0;display:flex}.checkbox-row input[type=checkbox]{width:20px;height:20px;min-height:20px;accent-color:var(--color-primary);border-radius:4px;flex-shrink:0;padding:0}.checkbox-row label{letter-spacing:1px;text-transform:uppercase;color:var(--color-text-muted);font-size:12px;font-weight:700;line-height:1.4}.input-icon-wrap{position:relative}.input-icon-wrap input{padding-left:44px}.input-icon-left{color:var(--color-text-muted);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.password-wrap{position:relative}.password-wrap .input-icon-left{left:14px}.password-wrap input{padding-left:44px;padding-right:48px}.password-toggle{color:var(--color-text-muted);background:0 0;border:none;width:auto;min-height:auto;padding:4px;font-size:18px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.password-toggle:hover{color:var(--color-primary);background:0 0}.checkbox-row label{cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}button:disabled:hover{background:var(--color-primary)}.auth-footer-note{color:var(--color-text-muted);border-top:1px solid var(--color-border);margin-top:8px;padding-top:16px;font-size:13px;line-height:1.5}.bottom-nav{background:var(--color-surface);padding:8px 0 calc(8px + var(--safe-bottom));border-top:1px solid var(--color-border);z-index:100;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav a{color:var(--color-text-muted);flex-direction:column;align-items:center;gap:2px;padding:4px 8px;font-size:10px;display:flex}.bottom-nav a.active{color:var(--color-primary)}.bottom-nav-icon{font-size:20px;line-height:1}.bottom-nav-label{white-space:nowrap}.tabs-row{-webkit-overflow-scrolling:touch;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.tab-pill{background:var(--color-surface);border:1px solid var(--color-border);white-space:nowrap;color:var(--color-text-muted);border-radius:20px;flex:none;width:auto;min-height:36px;padding:8px 16px;font-size:14px;font-weight:600}.tab-pill.active{background:var(--color-primary);color:var(--color-primary-text);border-color:var(--color-primary)}.list-item{border-bottom:1px solid var(--color-border);align-items:center;gap:12px;padding:16px 0;display:flex}.list-item:last-child{border-bottom:none}.avatar{background:var(--color-surface-2);border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:20px;display:flex}.balance-card{color:#fff;text-align:center;background:linear-gradient(135deg,#f97316,#fb923c);border-radius:16px;padding:24px}.balance-card .amount{font-size:32px;font-weight:700}.balance-card .label{opacity:.9;margin-top:4px}.menu-option{border-bottom:1px solid var(--color-border);color:var(--color-text);justify-content:space-between;align-items:center;padding:16px 0;font-size:15px;display:flex}.menu-option:last-child{border-bottom:none}.menu-option span:first-child{align-items:center;gap:12px;display:flex}.empty-state{color:var(--color-text-muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:48px 0;display:flex}.empty-state .icon{opacity:.5;font-size:48px}@media (width>=768px){.page{padding:32px 24px}.page h1{font-size:36px}}
