.app{max-width:1400px;margin:0 auto}.header{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:24px 32px;border-radius:16px;margin-bottom:24px;box-shadow:0 8px 32px #0000001a;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.header-top{display:flex;justify-content:space-between;align-items:center;width:100%;flex-wrap:wrap;gap:16px}.header h1{color:#2d3748;font-size:28px;font-weight:700;margin:0}.auth-section,.user-info{display:flex;align-items:center;gap:12px}.user-email{font-size:14px;color:#4a5568;font-weight:500}.auth-badge{padding:4px 12px;background:#d1fae5;color:#065f46;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-developer{background:#dbeafe;color:#1e40af}.badge-trader{background:#fef3c7;color:#92400e}.btn-signin,.btn-signout{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-signin{background:#4285f4;color:#fff}.btn-signin:hover{background:#357ae8;transform:translateY(-1px);box-shadow:0 2px 8px #4285f44d}.btn-signin-container{display:inline-block}.btn-signout{background:#f7fafc;color:#4a5568;border:1px solid #e2e8f0}.btn-signout:hover{background:#edf2f7;border-color:#cbd5e0}.unauthorized-message{font-size:12px;color:#718096;font-style:italic}.market-price{display:flex;gap:32px;flex-wrap:wrap}.price-item{display:flex;flex-direction:column;gap:4px}.price-item .label{font-size:12px;color:#718096;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.price-item .value{font-size:20px;font-weight:700;color:#2d3748}.dashboard{display:grid;grid-template-columns:1fr;gap:24px}.notification{padding:16px 24px;border-radius:8px;margin-bottom:16px;font-weight:500;animation:slideIn .3s ease-out}.notification-success{background:#d1fae5;color:#065f46;border:1px solid #10b981}.notification-error{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.notification-info{background:#dbeafe;color:#1e40af;border:1px solid #3b82f6}.access-denied-card{background:#fff;padding:48px 32px;border-radius:16px;box-shadow:0 8px 32px #0000001a;text-align:center;margin:48px auto;max-width:600px}.access-denied-card h2{color:#e53e3e;font-size:24px;margin-bottom:16px}.access-denied-card p{color:#4a5568;font-size:16px;line-height:1.6;margin-bottom:12px}.access-denied-card strong{color:#2d3748;font-weight:600}@keyframes slideIn{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.trading-panel{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:32px;border-radius:16px;box-shadow:0 8px 32px #0000001a}.trading-panel h2{color:#4a5568;font-size:18px;font-weight:600;margin-bottom:24px;text-transform:uppercase;letter-spacing:.5px}.trading-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:600;color:#4a5568;display:flex;flex-direction:column;gap:4px}.label-hint{font-size:12px;font-weight:400;color:#718096;font-style:italic}.form-group input{padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:16px;transition:border-color .2s;font-family:inherit}.form-group input:focus{outline:none;border-color:#667eea}.form-group input:disabled{background:#f7fafc;cursor:not-allowed}.price-input-group{display:flex;gap:8px}.price-input-group input{flex:1}.market-price-btn{padding:12px 20px;background:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:600;color:#4a5568;cursor:pointer;transition:all .2s;white-space:nowrap}.market-price-btn:hover:not(:disabled){background:#edf2f7;border-color:#cbd5e0}.market-price-btn:disabled{opacity:.5;cursor:not-allowed}.form-actions{display:flex;gap:12px;margin-top:8px}.btn{flex:1;padding:14px 24px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-buy{background:#10b981;color:#fff}.btn-buy:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.btn-sell{background:#ef4444;color:#fff}.btn-sell:hover:not(:disabled){background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.api-status{padding:12px 16px;border-radius:8px;font-size:13px;font-weight:500;text-align:center}.api-status-connected{background:#d1fae5;color:#065f46;border:1px solid #10b981}.api-status-disconnected{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.summary-card{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:32px;border-radius:16px;box-shadow:0 8px 32px #0000001a}.summary-card h2{color:#4a5568;font-size:18px;font-weight:600;margin-bottom:16px;text-transform:uppercase;letter-spacing:.5px}.pnl-total{font-size:48px;font-weight:700;margin-bottom:24px;display:flex;align-items:baseline;gap:16px;flex-wrap:wrap}.pnl-total.positive{color:#10b981}.pnl-total.negative{color:#ef4444}.pnl-percent{font-size:24px;font-weight:500}.summary-stats{display:flex;gap:32px;flex-wrap:wrap}.stat{display:flex;flex-direction:column;gap:4px}.stat-label{font-size:12px;color:#718096;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.stat-value{font-size:20px;font-weight:600;color:#2d3748}.positions-container{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:32px;border-radius:16px;box-shadow:0 8px 32px #0000001a}.positions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.positions-container h2{color:#4a5568;font-size:18px;font-weight:600;margin:0;text-transform:uppercase;letter-spacing:.5px}.api-status-inline{display:flex;align-items:center}.api-status-connected-inline{font-size:13px;font-weight:500;color:#065f46;padding:6px 12px;background:#d1fae5;border:1px solid #10b981;border-radius:6px}.api-status-disconnected-inline{font-size:13px;font-weight:500;color:#991b1b;padding:6px 12px;background:#fee2e2;border:1px solid #ef4444;border-radius:6px}.positions-table{overflow-x:auto}table{width:100%;border-collapse:collapse}thead{background:#f7fafc}th{padding:16px;text-align:left;font-size:12px;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}td{padding:16px;border-bottom:1px solid #e2e8f0;color:#2d3748;font-size:14px}tbody tr:hover{background:#f7fafc}.side-badge{display:inline-block;padding:4px 12px;border-radius:4px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.side-badge.long{background:#d1fae5;color:#065f46}.side-badge.short{background:#fee2e2;color:#991b1b}.pair-cell{font-weight:600;color:#4a5568}.price-cell{font-weight:500}.positive{color:#10b981;font-weight:600}.negative{color:#ef4444;font-weight:600}.btn-close{padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.btn-close:disabled{opacity:.5;cursor:not-allowed}.btn-close-long{background:#ef4444;color:#fff}.btn-close-long:hover:not(:disabled){background:#dc2626;transform:translateY(-1px);box-shadow:0 2px 8px #ef44444d}.btn-close-short{background:#10b981;color:#fff}.btn-close-short:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 2px 8px #10b9814d}@media (max-width: 768px){.header,.header-top{flex-direction:column;align-items:flex-start}.auth-section{width:100%}.user-info{flex-wrap:wrap}.market-price{width:100%}.summary-stats{flex-direction:column;gap:16px}.positions-header{flex-direction:column;align-items:flex-start}.positions-table{font-size:12px}th,td{padding:12px 8px}.btn-close{padding:6px 12px;font-size:11px}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-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:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:20px}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
