:root{--bg-primary: #08161f;--bg-secondary: #102532;--bg-card: #0f2130;--accent-green: #26d69a;--accent-red: #ff6b6b;--accent-blue: #3aa9ff;--accent-yellow: #ffcf5b;--text-primary: #e8f3fb;--text-secondary: #9ab2c4;--border-color: #1f3a4b;--glass: rgba(215, 236, 252, .06);--shadow-lg: 0 18px 48px rgba(3, 10, 16, .42)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;background:radial-gradient(circle at 8% 0%,rgba(58,169,255,.16),transparent 40%),radial-gradient(circle at 92% 0%,rgba(255,207,91,.14),transparent 34%),linear-gradient(180deg,#07131b,#091e29,#07151f);color:var(--text-primary);min-height:100vh;letter-spacing:.01em}.dashboard{padding:24px;max-width:1600px;margin:0 auto;animation:fade-up .45s ease-out}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.header{display:flex;justify-content:space-between;align-items:center;padding:16px 0 24px;margin-bottom:24px;border-bottom:1px solid var(--border-color)}.header-left{display:flex;align-items:center;flex-wrap:wrap;gap:20px}.header-left h1{font-family:Sora,sans-serif;font-size:26px;font-weight:700;letter-spacing:.03em;background:linear-gradient(90deg,#82d4ff,#4ec5ff 52%,#ffd380);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.market-status{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--glass);border-radius:999px;font-size:13px;border:1px solid var(--border-color);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ibkr-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;border:1px solid var(--border-color);background:var(--glass);font-size:12px;font-weight:700}.ibkr-badge.connected{color:#9df6da}.ibkr-badge.disconnected{color:#ffb6bd}.ibkr-icon{font-size:13px;line-height:1}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-red)}.status-dot.open{background:var(--accent-green);box-shadow:0 0 10px var(--accent-green);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.header-right{display:flex;align-items:center;gap:16px}.last-updated{color:var(--text-secondary);font-size:13px}.btn-refresh{padding:10px 18px;background:linear-gradient(135deg,#178fe2,#21a5ff);border:none;border-radius:10px;color:#fff;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn-refresh:hover{transform:translateY(-2px);box-shadow:0 8px 22px #3aa9ff4d}.main-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:18px;padding:22px;box-shadow:inset 0 1px #ffffff05;transition:border-color .24s,box-shadow .24s,transform .24s}.card:hover{border-color:#3aa9ff66;box-shadow:var(--shadow-lg);transform:translateY(-1px)}.card h2{font-size:14px;font-weight:700;color:var(--text-primary);margin-bottom:14px;display:flex;align-items:center;gap:8px}.portfolio-card{grid-column:span 1}.portfolio-value{margin-bottom:16px}.portfolio-value .label{display:block;color:var(--text-secondary);font-size:12px;margin-bottom:6px}.portfolio-value .value{font-size:32px;font-weight:700;background:linear-gradient(90deg,var(--accent-green),#00f5c4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.portfolio-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.stat{padding:10px 12px;background:var(--glass);border-radius:10px}.stat .label{display:block;color:var(--text-secondary);font-size:10px;margin-bottom:4px}.stat .value{font-size:14px;font-weight:600}.stat .subvalue{display:block;margin-top:2px;font-size:11px;color:var(--text-secondary)}.positive{color:var(--accent-green)!important}.negative{color:var(--accent-red)!important}.risk-level{display:flex;align-items:center;gap:12px;margin-bottom:20px}.risk-dot{width:10px;height:10px;border-radius:50%}.risk-dot.low{background:var(--accent-green);box-shadow:0 0 15px var(--accent-green)}.risk-dot.medium{background:var(--accent-yellow);box-shadow:0 0 15px var(--accent-yellow)}.risk-dot.high{background:var(--accent-red);box-shadow:0 0 15px var(--accent-red)}.risk-text{font-size:16px;font-weight:700}.risk-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.portfolio-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.risk-market-strip{margin-top:12px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.portfolio-market-strip{margin-top:0;min-width:min(640px,60%)}.risk-market-chip{padding:8px 10px;border:1px solid var(--border-color);border-radius:10px;background:#ffffff08;display:flex;flex-direction:column;gap:2px}.risk-market-label{font-size:10px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.6px}.risk-market-price{font-size:14px;font-weight:700;color:var(--text-primary)}.risk-market-change{font-size:11px;color:var(--text-secondary)}.watchlist-card{grid-column:span 2}.watchlist-table{width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}.watchlist-table thead{position:sticky;top:0;background:var(--bg-card);z-index:2}.watchlist-table th{padding:8px 10px;text-align:right;color:var(--text-secondary);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color);white-space:nowrap}.watchlist-table th:first-child{text-align:left}.watchlist-table td{padding:10px;text-align:right;border-bottom:1px solid rgba(255,255,255,.03);font-size:12px}.watchlist-table td:first-child{text-align:left}.watchlist-table tbody tr{transition:background .15s}.watchlist-table tbody tr:hover{background:#ffffff08}.positions-card{grid-column:span 2}.positions{overflow-x:auto}.positions-table{width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}.positions-table thead{position:sticky;top:0;background:var(--bg-card);z-index:2}.positions-table th{padding:8px 10px;text-align:right;color:var(--text-secondary);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color);white-space:nowrap}.positions-table th:first-child{text-align:left}.positions-table td{padding:10px;text-align:right;border-bottom:1px solid rgba(255,255,255,.03);font-size:12px}.positions-table td:first-child{text-align:left}.positions-table tbody tr{transition:background .15s}.positions-table tbody tr:hover{background:#ffffff08}.empty-state{color:var(--text-secondary);text-align:center;padding:40px}.trades-card{grid-column:span 2}.trades-table{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:8px 10px;text-align:left;border-bottom:1px solid var(--border-color)}th{color:var(--text-secondary);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}td{font-size:12px}.action-buy{color:var(--accent-green);font-weight:600}.action-sell{color:var(--accent-red);font-weight:600}.indicators-card{grid-column:span 2}.indicators-table{overflow-x:auto}.indicators-table table{width:100%}.symbol-cell{font-weight:600}.signal-badge{display:inline-block;font-size:10px;padding:2px 6px;margin-left:6px;border-radius:4px;background:var(--glass);color:var(--text-secondary)}.overall-signal{font-weight:600;padding:4px 10px;border-radius:6px;background:var(--glass)}.overall-signal.positive{background:#00d9a533}.overall-signal.negative{background:#ff475733}.config-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.config-item{display:flex;justify-content:space-between;padding:12px;background:var(--glass);border-radius:8px}.config-item .label{color:var(--text-secondary);font-size:13px}.config-item .value{font-weight:500;font-size:13px}.loading{text-align:center;color:var(--text-secondary);padding:20px}@media(max-width:1200px){.main-grid{grid-template-columns:1fr 1fr}.positions-card{grid-column:span 2}.dash-header-row{flex-direction:column}.dash-status-card{min-width:unset;width:100%}}@media(max-width:768px){.main-grid{grid-template-columns:1fr}.portfolio-card,.positions-card,.trades-card,.watchlist-card{grid-column:span 1!important}.portfolio-stats{grid-template-columns:1fr}.portfolio-header-row{flex-direction:column}.portfolio-market-strip{width:100%;min-width:0}.risk-stats,.risk-market-strip{grid-template-columns:1fr}.header{flex-direction:column;gap:16px}.portfolio-value .value{font-size:24px}.dash-title{font-size:22px}.profile-dropdown{position:fixed;inset:auto 0 0;width:100%;border-radius:16px 16px 0 0;max-height:80vh;overflow-y:auto}}@media(max-width:768px){.positions{margin:0 -8px}}.symbol-highlight{color:var(--accent-blue)!important;font-weight:700!important}.status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.status-badge.filled{background:#00d9a533;color:var(--accent-green)}.status-badge.canceled,.status-badge.cancelled{background:#8b8b9e33;color:var(--text-secondary)}.status-badge.pending,.status-badge.open,.status-badge.new{background:#4da6ff33;color:var(--accent-blue)}.status-badge.rejected,.status-badge.failed{background:#ff475733;color:var(--accent-red)}.login-container{display:flex;justify-content:center;align-items:center;min-height:80vh}.login-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:24px;padding:48px;text-align:center;max-width:400px;width:100%}.login-logo{font-size:64px;margin-bottom:16px}.login-card h1{font-size:28px;font-weight:700;background:linear-gradient(90deg,var(--accent-green),var(--accent-blue));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:8px}.login-card>p{color:var(--text-secondary);margin-bottom:32px;font-size:14px}.btn-google-login{display:inline-flex;align-items:center;gap:12px;padding:14px 32px;background:#fff;color:#333;font-size:16px;font-weight:500;text-decoration:none;border-radius:8px;transition:transform .2s,box-shadow .2s}.btn-google-login:hover{transform:translateY(-2px);box-shadow:0 4px 20px #fff3}.login-note{color:var(--text-secondary);font-size:12px;margin-top:24px}.auth-tabs{display:flex;gap:8px;margin-bottom:24px}.auth-tab{flex:1;padding:12px;background:var(--glass);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.auth-tab:hover{background:#ffffff14}.auth-tab.active{background:linear-gradient(135deg,#1e93e8,#34b4ff);border-color:transparent;color:#fff}.auth-error{background:#ff475726;border:1px solid var(--accent-red);border-radius:8px;padding:12px;margin-bottom:16px;color:var(--accent-red);font-size:14px;text-align:left}.auth-form{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.form-group{text-align:left}.form-group label{display:block;color:var(--text-secondary);font-size:13px;margin-bottom:6px}.form-group input{width:100%;padding:12px 16px;background:var(--glass);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:14px;transition:border-color .2s}.form-group input:focus{outline:none;border-color:var(--accent-blue)}.form-group input::placeholder{color:var(--text-secondary);opacity:.5}.btn-auth-submit{width:100%;padding:14px;background:linear-gradient(135deg,var(--accent-green),#00c896);border:none;border-radius:8px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn-auth-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 20px #00d9a54d}.btn-auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-divider{position:relative;text-align:center;margin:24px 0}.auth-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--border-color)}.auth-divider span{position:relative;background:var(--bg-card);padding:0 16px;color:var(--text-secondary);font-size:12px}.user-profile{position:relative;margin-left:16px;padding-left:16px;border-left:1px solid var(--border-color)}.profile-trigger{display:flex;align-items:center;gap:10px;cursor:pointer;padding:6px 10px;border-radius:10px;transition:background .2s}.profile-trigger:hover{background:var(--glass)}.user-avatar{width:32px;height:32px;border-radius:50%;border:2px solid var(--accent-blue)}.user-name{font-size:14px;color:var(--text-secondary);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-chevron{font-size:14px;color:var(--text-secondary);transition:transform .25s}.profile-chevron.open{transform:rotate(180deg)}.profile-dropdown{position:absolute;top:calc(100% + 12px);right:0;width:420px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 16px 48px #00000080,0 0 0 1px #ffffff08;z-index:100;animation:dropdown-enter .2s ease-out;overflow:hidden}@keyframes dropdown-enter{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.profile-menu{display:flex;flex-direction:column}.profile-submenu-trigger{width:100%;border:0;background:transparent;color:var(--text-primary);display:flex;align-items:center;justify-content:space-between;padding:14px 18px;font-size:13px;font-weight:700;cursor:pointer;transition:background .2s}.profile-submenu-trigger:hover{background:#ffffff08}.profile-submenu-trigger+.profile-submenu-trigger,.profile-submenu-content+.profile-submenu-trigger{border-top:1px solid var(--border-color)}.profile-submenu-trigger .submenu-chevron{font-size:12px;color:var(--text-secondary);transition:transform .2s}.profile-submenu-trigger.open .submenu-chevron{transform:rotate(180deg)}.profile-submenu-signout{color:#ffd5d9}.profile-submenu-content{border-top:1px solid rgba(255,255,255,.05);padding:12px 14px 14px;background:#ffffff03}.profile-broker-panel{display:flex;flex-direction:column;gap:8px}.profile-broker-row{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px;color:var(--text-secondary)}.profile-broker-row strong{color:var(--text-primary);font-weight:700}.profile-broker-note{margin-top:4px;font-size:11px;color:var(--text-secondary)}.profile-dropdown .config-grid{grid-template-columns:repeat(2,1fr);gap:8px}.profile-dropdown .config-item{padding:10px 12px;font-size:12px}.profile-dropdown .config-item .label{font-size:11px}.profile-dropdown .config-item .value{font-size:12px;font-weight:600}.profile-indicators-scroll{max-height:280px;overflow-y:auto;margin:0 -8px;padding:0 8px}.profile-indicators-scroll::-webkit-scrollbar{width:5px}.profile-indicators-scroll::-webkit-scrollbar-track{background:transparent}.profile-indicators-scroll::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.profile-indicators-table{width:100%;border-collapse:collapse;font-size:12px}.profile-indicators-table th{padding:8px 10px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);border-bottom:1px solid var(--border-color);text-align:left;position:sticky;top:0;background:var(--bg-card);z-index:1}.profile-indicators-table td{padding:8px 10px;font-size:12px;border-bottom:1px solid rgba(255,255,255,.03)}.profile-indicators-table .signal-badge{font-size:9px;padding:1px 5px}.profile-indicators-table .overall-signal{font-size:10px;padding:3px 8px}.profile-logout{width:100%;display:block;padding:12px 14px;color:#ffd5d9;border:1px solid rgba(255,71,87,.35);border-radius:10px;background:#ff475714;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s;text-align:center}.profile-logout:hover{background:#ff475729;color:var(--accent-red)}.btn-logout{padding:6px 12px;background:var(--glass);border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);font-size:12px;text-decoration:none;transition:all .2s}.btn-logout:hover{background:#ff475733;border-color:var(--accent-red);color:var(--accent-red)}@media(max-width:768px){.user-name{display:none}.header-right{gap:8px}}.settings-page{margin-top:24px}.settings-header{margin-bottom:20px}.settings-grid{display:grid;gap:16px}.settings-card h3{font-size:22px;margin-bottom:16px}.settings-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.settings-form-grid label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--text-secondary);font-weight:600}.settings-form-grid input{padding:11px 12px;border-radius:10px;border:1px solid var(--border-color);background:var(--glass);color:var(--text-primary);font-size:14px}.settings-form-grid input:focus{outline:none;border-color:var(--accent-blue)}.settings-indicator-list{display:grid;gap:10px}.indicator-toggle{width:100%;border:1px solid var(--border-color);background:#ffffff05;border-radius:12px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;color:var(--text-primary);cursor:pointer;transition:border-color .2s,background .2s}.indicator-toggle.enabled{border-color:#00d9a573;background:#00d9a514}.indicator-toggle.disabled{border-color:#ffffff1a;background:#ffffff05;color:var(--text-secondary)}.indicator-toggle-state{font-size:12px;font-weight:700;letter-spacing:.8px}.settings-actions{display:flex;align-items:center;gap:12px}.settings-error{color:var(--accent-red);font-size:13px}.settings-success{color:var(--accent-green);font-size:13px}@media(max-width:992px){.settings-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.settings-form-grid{grid-template-columns:1fr}.settings-actions{flex-direction:column;align-items:flex-start}}.operations-page{margin-top:24px}.operations-grid{margin-bottom:16px}.operations-actions{display:flex;gap:10px}.operations-run-help{margin:-12px 0 14px;color:var(--text-secondary);font-size:12px}.operations-analyze-result{margin-bottom:12px;padding:10px 12px;border-radius:10px;border:1px solid rgba(77,166,255,.35);background:#4da6ff1a;color:var(--text-primary);font-size:13px}.operations-table-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.operations-inline-error{color:var(--accent-red);font-size:12px;margin-bottom:8px}.operations-stat-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05);color:var(--text-secondary);font-size:13px}.operations-stat-row strong{color:var(--text-primary)}.operations-settings-card{grid-column:span 2}.operations-mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.operations-indicator-groups{display:grid;gap:6px;color:var(--text-secondary);font-size:13px}.operations-table-card{margin-bottom:16px}.plaid-page{margin-top:24px}.plaid-subtabs{margin-bottom:16px}.plaid-holdings-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0 12px}.plaid-filter-input{flex:1;min-width:240px;max-width:440px;background:var(--input-bg);border:1px solid var(--border-light);border-radius:10px;color:var(--text-primary);padding:10px 12px;font-size:14px}.plaid-account-filter{min-width:180px;background:var(--input-bg);border:1px solid var(--border-light);border-radius:10px;color:var(--text-primary);padding:10px 12px;font-size:13px}.plaid-filter-group{display:inline-flex;align-items:center;gap:8px}.plaid-filter-chip{border:1px solid rgba(255,255,255,.18);background:#ffffff0a;color:var(--text-secondary);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700;letter-spacing:.04em;cursor:pointer}.plaid-filter-chip.active{border-color:#4da6ffb3;color:var(--text-primary);background:#4da6ff33}.plaid-actions{display:flex;align-items:center;gap:8px}.plaid-actions .btn-refresh{padding:6px 10px;font-size:12px}.plaid-actions .btn-remove-watchlist{width:auto;height:auto;border:1px solid rgba(255,107,107,.3);border-radius:8px;padding:6px 10px;color:#ff8f8f;background:#ff4d4d14;opacity:1}.plaid-actions .btn-remove-watchlist:hover{color:#ffd5d5;background:#ff4d4d29}.plaid-symbol-cell{display:grid;gap:2px}.plaid-symbol-meta{font-size:11px;color:var(--text-secondary);line-height:1.25;white-space:nowrap}.draggable-th{cursor:grab;-webkit-user-select:none;user-select:none}.draggable-th.dragging{opacity:.55}@media(max-width:1100px){.operations-settings-card{grid-column:span 1}.operations-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.operations-mini-grid{grid-template-columns:1fr}.operations-actions{flex-direction:column;width:100%}.plaid-actions,.plaid-holdings-toolbar{flex-direction:column;align-items:stretch}.plaid-filter-input{max-width:none;min-width:0}.plaid-account-filter{width:100%}}.dash-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px}.dash-label{font-size:12px;font-weight:700;letter-spacing:2px;color:var(--accent-yellow);margin-bottom:8px}.dash-title{font-size:26px;font-weight:800;line-height:1.15;color:var(--text-primary);margin-bottom:8px}.dash-subtitle{color:var(--text-secondary);font-size:13px;line-height:1.5;max-width:480px}.dash-status-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:14px;padding:20px 28px;min-width:260px;flex-shrink:0}.dash-status-label{font-size:10px;font-weight:700;letter-spacing:2px;color:var(--text-secondary);margin-bottom:8px}.dash-status-value{font-size:15px;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:10px;margin-bottom:4px}.dash-status-dot{width:10px;height:10px;border-radius:50%;background:var(--accent-red)}.dash-status-dot.active{background:var(--accent-green);box-shadow:0 0 10px var(--accent-green);animation:pulse 2s infinite}.dash-status-detail{font-size:12px;color:var(--text-secondary);margin-bottom:10px}.dash-agent-line{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--text-secondary);padding-top:6px}.dash-agent-line strong{color:var(--text-primary);font-weight:700}.dash-agent-footnote{margin-top:8px;font-size:11px;color:var(--text-secondary)}.card-label{font-size:9px;font-weight:700;letter-spacing:1.5px;color:var(--accent-yellow);margin-bottom:4px}.nav-tabs{display:flex;gap:8px;margin-bottom:28px;border-bottom:1px solid var(--border-color);padding-bottom:6px}.nav-tab{padding:10px 22px;background:#ffffff03;border:1px solid transparent;border-radius:999px;color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit}.nav-tab:hover{color:#d8ebf8;border-color:#3aa9ff40;background:#3aa9ff14}.nav-tab.active{color:#0a1822;border-color:transparent;background:linear-gradient(135deg,#8edaff,#66c5ff 60%,#ffd68a);box-shadow:0 8px 18px #2ea2eb42}.option-chain-page{max-width:1600px;margin:0 auto}.oc-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px}.oc-label{font-size:12px;font-weight:700;letter-spacing:2px;color:var(--accent-yellow);margin-bottom:8px}.oc-title{font-size:26px;font-weight:800;line-height:1.15;color:var(--text-primary);margin-bottom:10px}.oc-subtitle{color:var(--text-secondary);font-size:13px;line-height:1.5;max-width:480px}.oc-source-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;padding:20px 28px;min-width:260px;flex-shrink:0;box-shadow:inset 0 1px #ffffff08}.oc-source-label{font-size:10px;font-weight:700;letter-spacing:2px;color:var(--text-secondary);margin-bottom:8px}.oc-source-value{font-size:15px;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:10px;margin-bottom:4px}.oc-source-dot{width:10px;height:10px;border-radius:50%;background:var(--text-secondary)}.oc-source-dot.active{background:var(--accent-green);box-shadow:0 0 10px var(--accent-green)}.oc-source-detail{font-size:12px;color:var(--text-secondary)}.oc-form-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:18px;padding:24px 28px;margin-bottom:24px}.oc-form-row{display:grid;grid-template-columns:1.2fr 1fr .8fr auto;gap:16px;align-items:end}.oc-field{display:flex;flex-direction:column;gap:8px}.oc-field label{font-size:12px;font-weight:600;color:var(--text-secondary);letter-spacing:.5px}.oc-field input,.oc-field select{padding:12px 16px;background:#f0f9ff0a;border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-size:15px;font-family:inherit;transition:border-color .2s,box-shadow .2s}.oc-field input:focus,.oc-field select:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 3px #3aa9ff2e}.oc-field select{cursor:pointer;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238b8b9e' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}.oc-btn-fetch{padding:12px 36px;background:linear-gradient(135deg,#ffd93d,#f5a623);border:none;border-radius:10px;color:#0a0a0f;font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;transition:transform .2s,box-shadow .2s;white-space:nowrap;letter-spacing:.3px}.oc-btn-fetch:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 24px #ffd93d59}.oc-btn-fetch:disabled{opacity:.5;cursor:not-allowed}.oc-form-error{margin-top:14px;padding:12px 16px;background:#ff47571a;border:1px solid rgba(255,71,87,.3);border-radius:10px;color:var(--accent-red);font-size:13px}.oc-loading{text-align:center;padding:60px 20px;color:var(--text-secondary);font-size:14px;display:flex;flex-direction:column;align-items:center;gap:16px}.oc-spinner{width:36px;height:36px;border:3px solid var(--border-color);border-top-color:var(--accent-yellow);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.oc-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.oc-grid-vertical{grid-template-columns:1fr}.oc-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:18px;padding:24px;box-shadow:inset 0 1px #ffffff08}.oc-card h3{font-size:14px;font-weight:700;color:var(--text-primary);margin-bottom:18px}.chart-tooltip{background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;padding:12px 16px;font-size:13px;box-shadow:0 8px 24px #0006}.chart-tooltip-title{font-weight:700;margin-bottom:8px;color:var(--text-primary)}.chart-tooltip-row{display:flex;align-items:center;gap:8px;margin-bottom:4px;color:var(--text-primary)}.chart-tooltip-row.dim{color:var(--text-secondary);font-size:11px;margin-top:4px}.chart-tooltip-dot{width:8px;height:8px;border-radius:50%}.oc-table-card{overflow:hidden}.oc-stock-price{font-size:13px;color:var(--text-secondary);margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--border-color)}.oc-price-value{color:var(--accent-green);font-weight:700;font-size:15px}.oc-strike-info{color:var(--text-secondary);font-size:12px}.oc-table-scroll{max-height:360px;overflow-y:auto;overflow-x:auto}.oc-table-scroll::-webkit-scrollbar{width:6px;height:6px}.oc-table-scroll::-webkit-scrollbar-track{background:transparent}.oc-table-scroll::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.oc-table{width:100%;border-collapse:collapse;font-size:13px}.oc-table thead{position:sticky;top:0;background:var(--bg-card);z-index:2}.oc-table th{padding:10px 8px;text-align:right;color:var(--text-secondary);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color);white-space:nowrap}.oc-table th:first-child{text-align:left}.oc-table td{padding:10px 8px;text-align:right;border-bottom:1px solid rgba(255,255,255,.03);font-variant-numeric:tabular-nums}.oc-table td:first-child{text-align:left}.oc-table tbody tr{transition:background .15s}.oc-table tbody tr:hover{background:#ffffff08}.oc-table tbody tr.near-expiry{border-left:2px solid var(--accent-yellow)}.oc-exp-cell{font-weight:600;color:var(--text-primary)}.iv-cell{color:var(--accent-yellow);font-weight:600}.premium-cell{color:#90e6ff;font-weight:600}.annualized-cell{color:#9df6da;font-weight:700}.warn{color:var(--accent-yellow);font-weight:600}.greek{font-family:SF Mono,Fira Code,Courier New,monospace;font-size:12px}.greek.pos{color:var(--accent-green)}.greek.neg{color:var(--accent-red)}.oc-empty-state{text-align:center;padding:80px 20px;color:var(--text-secondary)}.oc-empty-icon{font-size:48px;margin-bottom:16px;opacity:.4}.oc-empty-state p{font-size:15px;max-width:420px;margin:0 auto;line-height:1.6}.oc-empty{text-align:center;padding:60px 20px;color:var(--text-secondary);font-size:14px}.oc-ai-card{background:linear-gradient(160deg,#182c3af2,#0e1f2cf2);border:1px solid rgba(80,173,230,.35);border-radius:18px;padding:18px 22px;margin-bottom:20px;box-shadow:0 14px 34px #040b1152}.oc-ai-header{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:12px}.oc-ai-label{font-size:11px;font-weight:700;letter-spacing:1.5px;color:#80d8ff}.oc-ai-source{font-size:12px;color:var(--text-secondary)}.oc-ai-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.oc-ai-metric{border:1px solid rgba(99,169,210,.3);background:#ebf8ff0a;border-radius:10px;padding:10px 12px}.oc-ai-metric span{display:block;font-size:11px;color:var(--text-secondary);margin-bottom:2px}.oc-ai-metric strong{font-size:14px;color:var(--text-primary)}.oc-ai-empty{padding:10px 12px;border-radius:10px;border:1px dashed rgba(255,207,91,.45);color:#f7d982;background:#ffcf5b14;font-size:13px}.oc-ai-note{margin-top:12px;padding:10px 12px;border-radius:10px;border:1px solid rgba(144,230,255,.35);background:#90e6ff14;color:#cdefff;font-size:13px}.oc-ai-reasoning{margin-top:12px;font-size:13px;line-height:1.55;color:#d3e4f2}@media(max-width:1200px){.oc-grid{grid-template-columns:1fr}.oc-form-row{grid-template-columns:1fr 1fr}.oc-btn-fetch{grid-column:span 2}.oc-header-row{flex-direction:column}.oc-source-card{min-width:unset;width:100%}.oc-ai-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.oc-form-row{grid-template-columns:1fr}.oc-btn-fetch{grid-column:span 1}.oc-ai-grid{grid-template-columns:1fr}.nav-tabs{overflow-x:auto}.nav-tab{padding:10px 20px;font-size:14px}}.collar-strategy-page{max-width:1600px;margin:0 auto}.collar-form-row{grid-template-columns:1.2fr 1fr auto!important}.collar-table-scroll{max-height:600px!important}@media(max-width:960px){.collar-form-row{grid-template-columns:1fr 1fr!important}.collar-form-row .oc-btn-fetch{grid-column:span 2}}@media(max-width:768px){.collar-form-row{grid-template-columns:1fr!important}.collar-form-row .oc-btn-fetch{grid-column:span 1}}.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:color .15s ease}.sortable-th:hover{color:#fff}.sort-arrow{display:inline-block;margin-left:4px;width:0;height:0;vertical-align:middle;opacity:.3;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:4px solid currentColor}.sort-arrow.asc{opacity:1;border-bottom:4px solid #ffd93d;border-top:none}.sort-arrow.desc{opacity:1;border-top:4px solid #ffd93d;border-bottom:none}.watchlist-add-form{display:flex;gap:8px;margin-bottom:12px}.watchlist-add-form input{flex:1;max-width:140px;padding:6px 10px;font-size:12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);color:var(--text-primary)}.watchlist-add-form input::placeholder{color:var(--text-secondary)}.watchlist-add-form input:focus{outline:none;border-color:var(--accent-yellow)}.watchlist-add-form button{padding:6px 14px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;border:none;border-radius:6px;background:var(--accent-yellow);color:#000;cursor:pointer;transition:background .2s ease}.watchlist-add-form button:hover{background:#e6c32f}.btn-remove-watchlist{width:20px;height:20px;padding:0;border:none;border-radius:4px;background:transparent;color:var(--text-secondary);font-size:16px;line-height:1;cursor:pointer;opacity:.5;transition:all .15s ease}.btn-remove-watchlist:hover{opacity:1;color:var(--accent-red);background:#ff4d4d1a}
