@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Manrope:wght@400;500;600;700&display=swap";:root{--bg:#0d1117;--bg-panel:#141b24;--bg-panel-raised:#1a2330;--border:#263241;--text:#e6edf3;--text-dim:#8b97a5;--accent:#5eead4;--accent-dim:#2c8f7f;--win:#4ade80;--loss:#f87171;--breakeven:#fbbf24;--font-ui:"Manrope", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;margin:0}input,select,textarea,button{font-family:inherit}.auth-screen{background:radial-gradient(circle at 30% 20%, #16212c 0%, var(--bg) 60%);justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:14px;width:340px;padding:32px;display:flex}.auth-card h1{font-family:var(--font-mono);letter-spacing:.04em;color:var(--accent);margin:0}.auth-subtitle{color:var(--text-dim);margin:0 0 8px;font-size:14px}.auth-error{color:var(--loss);font-size:13px}.auth-switch{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px}.auth-switch:hover{color:var(--accent)}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-header{background:var(--bg-panel);border-bottom:1px solid var(--border);align-items:center;gap:24px;padding:14px 24px;display:flex}.app-title{font-family:var(--font-mono);color:var(--accent);letter-spacing:.03em;font-weight:600}.app-nav{flex-wrap:wrap;flex:1;gap:4px;display:flex}.app-nav a{color:var(--text-dim);border-radius:6px;padding:6px 10px;font-size:14px;text-decoration:none}.app-nav a:hover{color:var(--text);background:var(--bg-panel-raised)}.app-nav a.active{color:var(--bg);background:var(--accent);font-weight:600}.app-header-right{align-items:center;gap:12px;display:flex}.user-email{color:var(--text-dim);font-size:13px}.app-main{width:100%;max-width:960px;margin:0 auto;padding:24px}button{background:var(--bg-panel-raised);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:6px;padding:8px 14px;font-size:14px}button:hover{border-color:var(--accent-dim)}button.active,.segmented button.active{background:var(--accent);color:#06201b;border-color:var(--accent);font-weight:600}button.danger:hover{border-color:var(--loss);color:var(--loss)}button:disabled{opacity:.6;cursor:not-allowed}.link-btn{color:var(--text-dim);background:0 0;border:none;padding:0 0 0 8px;font-size:12px}.link-btn:hover{color:var(--loss)}input,select,textarea{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:8px 10px;font-size:14px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-dim);border-color:var(--accent)}label{color:var(--text-dim);flex-direction:column;gap:4px;font-size:13px;display:flex}.card{background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;margin-bottom:20px;padding:20px}.grid-2{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;display:grid}.segmented{gap:6px;margin-bottom:16px;display:flex}.rr-preview{font-family:var(--font-mono);color:var(--accent);align-self:center;font-size:13px}.form-error,.page-error{color:var(--loss);margin:8px 0;font-size:13px}.page-loading,.empty-state{color:var(--text-dim);text-align:center;padding:40px 0}.stats-bar{background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;gap:24px;margin-bottom:20px;padding:16px 20px;display:flex}.stats-bar>div{flex-direction:column;gap:2px;display:flex}.stat-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);font-size:11px}.stat-value{font-family:var(--font-mono);font-size:18px}.market-filter-bar{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.trades-list{flex-direction:column;gap:12px;display:flex}.trade-card{margin-bottom:0}.trade-card-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.direction{border-radius:4px;padding:2px 6px;font-size:12px}.direction.long{color:var(--win);background:#4ade8026}.direction.short{color:var(--loss);background:#f8717126}.badge{text-transform:capitalize;background:var(--bg-panel-raised);border-radius:999px;padding:3px 8px;font-size:12px}.badge.outcome-win{color:var(--win);background:#4ade8026}.badge.outcome-loss{color:var(--loss);background:#f8717126}.badge.outcome-breakeven{color:var(--breakeven);background:#fbbf2426}.trade-card-meta{font-family:var(--font-mono);color:var(--text-dim);flex-wrap:wrap;gap:14px;margin-bottom:8px;font-size:13px;display:flex}.trade-reasoning{color:var(--text-dim);margin:0 0 10px;font-size:14px}.trade-updates{color:var(--text-dim);margin:0 0 10px;padding:0;font-size:13px;list-style:none}.trade-updates li{border-top:1px dashed var(--border);padding:4px 0}.trade-card-actions{gap:8px;display:flex}.add-note-row{gap:8px;margin-top:10px;display:flex}.add-note-row input{flex:1}.modal-backdrop{z-index:50;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:12px;width:360px;padding:24px;display:flex}.modal-actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.stub-page{color:var(--text-dim)}.stub-page h2{color:var(--text);font-family:var(--font-mono)}.market-icon{color:#fff;font-family:var(--font-mono);letter-spacing:-.02em;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.icon-picker{flex-wrap:wrap;gap:8px;max-height:160px;margin-bottom:16px;padding:4px;display:flex;overflow-y:auto}.icon-picker-option{background:0 0;border:2px solid #0000;border-radius:8px;padding:4px}.icon-picker-option.selected{border-color:var(--accent)}.market-row{align-items:center;gap:12px;margin-bottom:10px;display:flex}.market-name{flex:1;font-size:15px}
