:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color:#f3f4f6;background:#09090b;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--primary: #2dd4bf;--primary-glow: rgba(45, 212, 191, .4);--positive: #4ade80;--negative: #f87171;--warning: #fbbf24;--glass-bg: rgba(24, 24, 27, .65);--glass-border: rgba(255, 255, 255, .08);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .3);--text-main: #f8fafc;--text-muted: #94a3b8}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background-color:#09090b;background-image:linear-gradient(180deg,#0f172a6b,#09090beb);background-attachment:fixed}button{font:inherit}a{color:inherit;text-decoration:none}.landing-shell,.auth-stage{min-height:100vh;color:var(--text-main)}.landing-shell{display:flex;flex-direction:column;position:relative;overflow-x:hidden;background:linear-gradient(90deg,#09090bf0,#09090bc7),url(/k-logo.png) right 12vw center / min(42vw,520px) no-repeat,#09090b}.landing-bg-glow{position:absolute;top:-100px;right:-100px;width:600px;height:600px;background:radial-gradient(circle,rgba(45,212,191,.15) 0%,transparent 70%);filter:blur(60px);z-index:0;pointer-events:none}.landing-bg-grid{position:absolute;inset:0;background-image:linear-gradient(to right,rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.02) 1px,transparent 1px);background-size:40px 40px;z-index:0;pointer-events:none;mask-image:radial-gradient(circle at center,black,transparent 80%);-webkit-mask-image:radial-gradient(circle at center,black,transparent 80%)}.landing-nav,.landing-hero{position:relative;z-index:1}.landing-nav,.landing-hero{width:min(1180px,calc(100% - 40px));margin:0 auto}.landing-nav{display:flex;align-items:center;justify-content:space-between;min-height:76px}.landing-brand,.auth-brand{display:inline-flex;align-items:center;gap:10px;font-weight:800}.landing-brand img,.auth-brand img{width:34px;height:34px;object-fit:contain}.landing-actions,.hero-actions{display:flex;align-items:center;gap:12px}.primary-link,.secondary-link,.ghost-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;border-radius:8px;padding:0 15px;font-weight:800}.primary-link{color:#042f2e;background:var(--primary)}.secondary-link,.ghost-link{color:var(--text-main);border:1px solid var(--glass-border);background:#ffffff0f}.ghost-link{background:transparent}.landing-hero{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(420px,1fr);align-items:center;gap:44px;flex:1;padding:46px 0 72px}.hero-copy h1{font-size:clamp(36px,5vw,76px);line-height:1.05;letter-spacing:-.01em;word-break:normal;overflow-wrap:normal}.hero-copy p{width:min(600px,100%);margin:24px 0 30px;color:#cbd5e1;font-size:20px;line-height:1.55}.hero-badge{display:inline-block;padding:6px 14px;border-radius:20px;background:#2dd4bf1a;border:1px solid rgba(45,212,191,.2);color:var(--primary);font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin-bottom:20px;box-shadow:0 0 15px #2dd4bf1a}.hero-stats{display:flex;gap:32px;margin-top:48px;padding-top:32px;border-top:1px solid var(--glass-border)}.stat-item{display:flex;flex-direction:column;gap:4px}.stat-item strong{font-size:28px;font-weight:800;color:#fff}.stat-item span{font-size:13px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.product-preview.immersive{min-height:520px;border:1px solid rgba(45,212,191,.15);border-radius:16px;padding:24px;background:#0f172a99;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 30px 60px #0006,inset 0 0 0 1px #ffffff0d;display:flex;flex-direction:column}.preview-header{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--glass-border)}.pulse-indicator{width:10px;height:10px;border-radius:50%;background-color:var(--positive);box-shadow:0 0 #4ade80b3;animation:pulse-ring 2s infinite cubic-bezier(.66,0,0,1)}@keyframes pulse-ring{to{box-shadow:0 0 0 12px #4ade8000}}.preview-header strong{font-size:16px;color:#fff;flex:1}.scan-time{color:var(--text-main);font-family:monospace;font-size:13px;font-weight:600}.signals-container{flex:1;display:flex;flex-direction:column}.signals-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.signal-card{background:#ffffff08;border:1px solid var(--glass-border);border-radius:12px;padding:16px;transition:all .3s ease}.signal-card:hover{transform:translateY(-4px);background:#ffffff0f;border-color:#2dd4bf4d;box-shadow:0 10px 20px #0003}.signal-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.signal-card-header strong{font-size:18px;color:#fff}.signal-direction{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;padding:4px 8px;border-radius:6px}.signal-direction.long{color:var(--positive);background:#4ade801a}.signal-direction.short{color:var(--negative);background:#f871711a}.signal-card-body{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.signal-metric{display:flex;flex-direction:column;gap:4px}.signal-metric small{font-size:11px;color:var(--text-muted)}.signal-metric span{font-size:13px;font-weight:600;color:var(--text-main)}.signals-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;min-height:300px;gap:16px;color:var(--text-main);font-weight:500;font-size:15px}.loading-spinner{width:40px;height:40px;border:3px solid rgba(45,212,191,.2);border-top-color:var(--primary);border-radius:50%;animation:spinner 1s linear infinite}@keyframes spinner{to{transform:rotate(360deg)}}.auth-stage{display:grid;place-items:center;padding:28px;background:linear-gradient(90deg,#09090bf5,#0f172ae6),url(/k-logo.png) left 8vw bottom 10vh / min(34vw,400px) no-repeat}.auth-brand{position:fixed;top:26px;left:28px}.auth-panel{width:min(460px,100%);border:1px solid var(--glass-border);border-radius:8px;padding:28px;background:#18181be0;box-shadow:var(--glass-shadow)}.auth-panel h1{font-size:30px}.auth-panel p{margin-top:8px;color:var(--text-muted);line-height:1.5}.auth-form{display:grid;gap:14px;margin-top:22px}.auth-form label{display:grid;gap:8px;color:var(--text-muted);font-size:13px;font-weight:700}.auth-form input,.auth-form select{width:100%;min-height:44px;border:1px solid var(--glass-border);border-radius:8px;padding:0 12px;color:var(--text-main);background:#09090bc7}.auth-form select option{background-color:#09090b;color:var(--text-main)}.auth-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border:0;border-radius:8px;color:#042f2e;background:var(--primary);font-weight:900;cursor:pointer}.auth-submit:disabled{opacity:.62;cursor:not-allowed}.auth-error{padding:10px 12px;border:1px solid rgba(248,113,113,.32);border-radius:8px;color:var(--negative);background:#f8717114}.auth-switch{text-align:center}.auth-switch a{color:var(--primary);font-weight:800}.auth-loading{display:inline-flex;align-items:center;gap:12px;color:var(--text-muted)}.auth-loading img{width:42px;height:42px}.app-shell{display:grid;grid-template-columns:80px 1fr;height:100vh;overflow:hidden}.nav-rail{display:flex;flex-direction:column;align-items:center;gap:20px;padding:24px 12px;background:#09090bcc;border-right:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10}.brand-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#2dd4bf33,#2dd4bf0d);border:1px solid rgba(45,212,191,.3);color:var(--primary);font-weight:800;font-size:18px;box-shadow:0 0 20px var(--primary-glow)}.nav-button{display:grid;place-items:center;width:48px;height:48px;border:1px solid transparent;border-radius:12px;color:var(--text-muted);background:transparent;cursor:pointer;transition:all .2s ease}.nav-button.active,.nav-button:hover{color:var(--primary);background:#2dd4bf1a;border-color:#2dd4bf33}.workspace{display:flex;flex-direction:column;padding:24px 32px;height:100vh;overflow:auto}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:16px 24px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-shrink:0}.topbar-left{display:flex;align-items:center;gap:16px}.topbar-right{display:flex;align-items:center;gap:20px}h1,h2,p{margin:0}.topbar-titles h1{font-size:24px;line-height:1.2;font-weight:700;background:linear-gradient(to right,#fff,#94a3b8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:0;margin-bottom:6px}.topbar-meta{display:flex;align-items:center;gap:12px}.topbar p,.panel-header span{color:var(--text-muted);font-size:13px;font-weight:500}.status-pill{padding:4px 10px;border-radius:8px;text-align:center;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;background:#ffffff0d;border:1px solid var(--glass-border)}.status-pill.running{color:var(--positive);border-color:#4ade804d;background:#4ade801a}.status-pill.paused{color:var(--warning);border-color:#fbbf244d;background:#fbbf241a}.status-pill.stopping,.status-pill.stopped{color:var(--negative);border-color:#f871714d;background:#f871711a}.account-menu{display:flex;align-items:center;gap:10px;min-height:42px;padding:6px 8px 6px 14px;border:1px solid var(--glass-border);border-radius:8px;background:#ffffff0b}.account-info{display:flex;flex-direction:column}.account-info span{max-width:150px;overflow:hidden;color:var(--text-main);font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.account-info strong{color:var(--primary);font-size:11px}.account-menu button{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--glass-border);border-radius:8px;color:var(--text-muted);background:transparent;cursor:pointer}.account-menu button:hover{color:var(--primary);border-color:#2dd4bf47}.controls{display:flex;align-items:center;gap:12px}.control-group{display:flex;align-items:center;background:#00000040;border-radius:10px;padding:4px;border:1px solid var(--glass-border);gap:2px}.control{display:inline-flex;align-items:center;gap:6px;min-height:32px;border:0;border-radius:6px;padding:0 12px;font-weight:600;font-size:13px;cursor:pointer;transition:all .2s ease;background:transparent}.control:disabled{opacity:.4;cursor:not-allowed}.control:not(:disabled):hover{background:#ffffff14}.control.start{color:var(--positive)}.control.start:not(:disabled):hover{background:#4ade8026;color:var(--positive)}.control.pause{color:var(--warning)}.control.pause:not(:disabled):hover{background:#fbbf2426;color:var(--warning)}.control.stop{color:var(--negative)}.control.stop:not(:disabled):hover{background:#f8717126;color:var(--negative)}.control.export{color:var(--text-muted)}.control.export:hover{color:var(--text-main);background:#ffffff14}.access-panel{min-height:180px;justify-content:center;padding:22px}.access-panel p{color:var(--text-muted)}.backtest-top-note{padding:10px 16px;border-radius:10px;color:var(--primary);background:#2dd4bf1a;border:1px solid rgba(45,212,191,.2);font-size:13px;font-weight:600}.dashboard-connection-note{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding:12px 14px;border:1px solid rgba(251,191,36,.24);border-radius:10px;color:#fde68a;background:#fbbf2414;font-size:13px;font-weight:650}.dashboard-connection-note svg{flex:0 0 auto}.dashboard-connection-note span{flex:1}.dashboard-connection-link{color:#042f2e;background:var(--primary);border-radius:8px;padding:6px 10px;font-size:12px;font-weight:800}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;margin-bottom:24px;flex-shrink:0}.metric-grid.dashboard-metrics{grid-template-columns:1.7fr 1fr 1fr}.metric{display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto auto;column-gap:16px;row-gap:3px;align-items:center;padding:20px;border-radius:16px;background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--glass-shadow);transition:transform .3s ease,border-color .3s ease}.metric:hover{transform:translateY(-4px);border-color:#ffffff26}.metric-icon{grid-row:span 2;display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:#ffffff0d;color:var(--text-main)}.metric.positive .metric-icon{color:var(--positive);background:#4ade801a}.metric.negative .metric-icon{color:var(--negative);background:#f871711a}.metric.warning .metric-icon{color:var(--warning);background:#fbbf241a}.metric .metric-label{color:var(--text-muted);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:8px}.toggle-ksh-btn{background:transparent;border:1px solid var(--glass-border);color:var(--text-muted);border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700;cursor:pointer;transition:all .2s ease}.toggle-ksh-btn:hover{background:#ffffff1a;color:var(--text-main)}.metric strong{font-size:24px;line-height:1.2;font-weight:700;color:var(--text-main)}.metric-detail{grid-column:2;min-width:0;color:var(--text-muted);font-size:11px;font-weight:650;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.metric.positive strong,.positive-text{color:var(--positive)}.metric.negative strong,.negative-text{color:var(--negative)}.metric.warning strong,.warning-text{color:var(--warning)}.stat-card{display:flex;flex-direction:column;gap:16px;padding:22px 24px;border-radius:16px;background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--glass-shadow);transition:transform .3s ease,border-color .3s ease}.stat-card:hover{transform:translateY(-2px);border-color:#ffffff24}.stat-card-label{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.stat-card-value{font-size:30px;font-weight:700;color:var(--text-main);line-height:1;letter-spacing:-.02em}.stat-card-value em{font-style:normal;font-size:13px;font-weight:600;color:var(--text-muted);letter-spacing:0;margin-left:4px}.stat-card-value small{font-size:15px;font-weight:500;color:var(--text-muted);letter-spacing:0}.stat-sub-row{display:flex;padding-top:16px;border-top:1px solid var(--glass-border);margin-top:auto}.stat-sub{flex:1;display:flex;flex-direction:column;gap:4px;padding:0 14px;border-right:1px solid var(--glass-border)}.stat-sub:first-child{padding-left:0}.stat-sub:last-child{border-right:none}.stat-sub span{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;font-weight:700}.stat-sub strong{font-size:13px;font-weight:700;color:var(--text-main)}.stat-sub.pos strong{color:var(--positive)}.stat-sub.neg strong{color:var(--negative)}.perf-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;flex:1}.perf-cell{display:flex;flex-direction:column;justify-content:center;gap:6px;padding:14px 16px;border-radius:12px;background:#ffffff06;border:1px solid var(--glass-border);transition:background .2s ease}.perf-cell:hover{background:#ffffff0d}.perf-cell span{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;font-weight:700}.perf-cell strong{font-size:22px;font-weight:700;line-height:1;letter-spacing:-.02em;color:var(--text-main)}.perf-cell.pos strong{color:var(--positive)}.perf-cell.neg strong{color:var(--negative)}.perf-cell.warn strong{color:var(--warning)}.perf-cell.muted strong{color:var(--primary)}.risk-section-divider{margin:12px 0 4px;padding:6px 0;border-top:1px solid var(--glass-border);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.content-grid{display:grid;grid-template-columns:minmax(0,1.8fr) 340px;grid-template-rows:minmax(450px,1fr) minmax(450px,1fr);gap:20px;flex:1;min-height:0;margin-bottom:32px}.panel{display:flex;flex-direction:column;min-width:0;min-height:0;border-radius:16px;background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--glass-shadow);overflow:hidden}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid var(--glass-border);background:#ffffff05;flex-shrink:0}.panel-header h2{font-size:16px;font-weight:600;color:var(--text-main)}.with-tabs{gap:16px}.tabs{display:inline-flex;gap:4px;padding:4px;border-radius:10px;background:#0000004d;border:1px solid var(--glass-border)}.tabs button{min-height:32px;border:0;border-radius:6px;padding:0 16px;color:var(--text-muted);background:transparent;font-size:13px;font-weight:600;text-transform:capitalize;cursor:pointer;transition:all .2s ease}.tabs button.active{color:#fff;background:#ffffff1a;box-shadow:0 2px 8px #0003}.tabs button:not(.active):hover{color:#fff;background:#ffffff0d}.table-wrap{flex:1;width:100%;overflow:auto}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff40}table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;white-space:nowrap}th{position:sticky;top:0;z-index:1;padding:14px 20px;color:var(--text-muted);background:#18181bf2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--glass-border)}td{padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.04);color:var(--text-main);transition:background .2s ease}tr:hover td{background:#ffffff08}.symbol{font-weight:700;color:#fff}.signal{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:80px;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:700;text-transform:uppercase}.signal.long{color:var(--positive);background:#4ade801a;border:1px solid rgba(74,222,128,.2)}.signal.short{color:var(--negative);background:#f871711a;border:1px solid rgba(248,113,113,.2)}.signal.neutral{color:var(--text-muted);background:#ffffff0d;border:1px solid rgba(255,255,255,.1)}.risk-content{flex:1;overflow-y:auto}.risk-line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.04);color:var(--text-muted);font-size:13px;transition:background .2s ease}.risk-line:hover{background:#ffffff05}.risk-line strong{color:var(--text-main);font-weight:600}.logs{flex:1;overflow:auto;padding:12px 20px;display:flex;flex-direction:column}.log-line{display:grid;grid-template-columns:75px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.04);font-size:12px;line-height:1.5}.log-line time{color:var(--text-muted);font-variant-numeric:tabular-nums}.log-line span{color:#e2e8f0}.log-line.error span{color:var(--negative)}.log-line.trade span{color:var(--primary)}.log-line.risk span{color:var(--warning)}.empty-row{display:grid;place-items:center;min-height:200px;color:var(--text-muted);font-size:14px}.page-switch{display:inline-flex;gap:4px;padding:4px;border-radius:10px;background:#0006;border:1px solid var(--glass-border)}.page-switch button{min-height:36px;border:0;border-radius:6px;padding:0 16px;color:var(--text-muted);background:transparent;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.page-switch button.active{color:#000;background:var(--primary);box-shadow:0 2px 8px var(--primary-glow)}.backtest-grid{display:grid;grid-template-columns:380px minmax(0,1fr);gap:20px;align-items:start;margin-bottom:32px}.backtest-form{position:sticky;top:0;max-height:100%;overflow-y:auto}.form-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px}.field{display:grid;gap:8px;min-width:0}.field.wide,.wide{grid-column:1 / -1}.field span{color:var(--text-muted);font-size:12px;font-weight:600}.field input,.field textarea{width:100%;min-height:42px;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:10px 12px;color:var(--text-main);background:#0003;outline:none;font-family:inherit;font-size:14px;transition:all .2s ease}.field input:focus,.field textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.auto-selection-note{display:grid;gap:8px;padding:16px;border-radius:8px;color:var(--text-main);background:#2dd4bf1a;border:1px solid rgba(45,212,191,.2)}.auto-selection-note strong{font-size:13px;color:var(--primary)}.auto-selection-note span{color:var(--text-muted);font-size:12px;line-height:1.5}.run-button{justify-content:center;min-height:48px;font-size:15px;margin-top:8px}.form-error{padding:12px 16px;border-radius:8px;color:#ffd6d6;background:#ef444426;border:1px solid rgba(239,68,68,.3);font-size:13px}.segmented{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;border-radius:8px;background:#0003;border:1px solid rgba(255,255,255,.1)}.segmented button{min-height:36px;border:0;border-radius:6px;color:var(--text-muted);background:transparent;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.segmented button.active{color:#000;background:var(--primary)}.toggle{display:inline-flex;align-items:center;width:52px;height:28px;border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:2px;background:#0003;cursor:pointer;transition:all .2s ease}.toggle span{width:22px;height:22px;border-radius:999px;background:var(--text-muted);transition:transform .2s ease,background .2s ease}.toggle.active{border-color:#2dd4bf80;background:#2dd4bf26}.toggle.active span{transform:translate(24px);background:var(--primary)}.toggle-field{align-content:end}.backtest-results{display:grid;gap:20px;min-width:0}.backtest-metrics{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:0}.backtest-data-panel{min-height:360px}.backtest-report-panel{min-height:520px}.report-subtable{border-top:1px solid var(--glass-border)}.report-subtable .panel-header{background:transparent}.report-chunks-wrap{max-height:360px}.compact-table-wrap{max-height:420px}.data-table th,.data-table td{padding:12px 16px}.data-table .muted-cell{color:var(--text-muted);white-space:normal;min-width:220px}.equity-panel{min-height:320px}.chart-shell{position:relative;height:240px;margin:20px;padding:10px 0 24px}.chart-shell path{fill:none;stroke:var(--primary);stroke-width:2;vector-effect:non-scaling-stroke;filter:drop-shadow(0 4px 6px var(--primary-glow))}.chart-shell svg{width:100%;height:100%;overflow:visible;border-bottom:1px solid var(--glass-border);border-left:1px solid var(--glass-border)}.chart-axis{display:flex;justify-content:space-between;margin-top:12px;color:var(--text-muted);font-size:12px;font-weight:600}.coverage-list,.warning-list{display:grid;gap:12px;padding:20px}.coverage-item{display:grid;grid-template-columns:110px 1fr 1fr 1fr;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.04);color:var(--text-muted);font-size:13px}.coverage-item strong{color:var(--text-main)}.warning-panel{background:#fbbf240d;border-color:#fbbf2433}.warning-list span{color:var(--warning);font-size:13px}.backtest-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;min-height:400px;padding:40px;background:var(--glass-bg);border-radius:16px;border:1px solid var(--glass-border)}.compact-empty{min-height:220px}.backtest-empty svg{color:var(--primary);filter:drop-shadow(0 0 12px var(--primary-glow))}.backtest-empty p{max-width:480px;color:var(--text-muted);line-height:1.6}.backtest-trades-panel{min-height:320px}.research-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-bottom:32px}.research-detail-panel,.research-reports-panel{grid-column:1 / -1}.research-actions{display:flex;gap:10px;padding:14px 18px;border-bottom:1px solid var(--glass-border)}.research-actions input{min-width:0;flex:1;height:40px;border:1px solid var(--glass-border);border-radius:8px;padding:0 12px;color:var(--text-main);background:#09090b80}.research-actions select{height:40px;border:1px solid var(--glass-border);border-radius:8px;padding:0 10px;color:var(--text-main);background:#09090be6}.link-button{border:0;padding:0;color:var(--primary);background:transparent;font-weight:700;cursor:pointer}.export-links{display:flex;gap:10px}.permission-toggles{display:flex;flex-wrap:wrap;gap:8px}.permission-toggles label{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 10px;border:1px solid var(--glass-border);border-radius:8px;color:var(--text-muted);background:#ffffff0a;font-size:12px;font-weight:800}.export-links a{color:var(--primary);font-weight:700}.success-note{margin:12px 18px 0;color:var(--positive);background:#4ade8014;border-color:#4ade8040}.safety-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-bottom:32px}.safety-metrics,.safety-controls-panel,.safety-wide-panel{grid-column:1 / -1}.safety-controls-panel .research-actions{flex-wrap:wrap}.saas-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-bottom:32px}.saas-metrics,.saas-wide-panel{grid-column:1 / -1}.subscription-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-bottom:32px}.subscription-metrics,.subscription-plans-panel,.subscription-history-panel{grid-column:1 / -1}.subscription-current-panel{min-height:320px}.subscription-actions{display:flex;gap:10px;padding:0 18px 18px}.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:14px;padding:18px}.plan-option{display:grid;gap:14px;min-height:260px;border:1px solid var(--glass-border);border-radius:8px;padding:16px;background:#ffffff0b}.plan-option.active{border-color:#2dd4bf6b;background:#2dd4bf14}.plan-option h3{margin:0;font-size:18px}.plan-option span,.plan-option li{color:var(--text-muted);font-size:13px}.plan-option strong{color:var(--primary);font-size:28px}.plan-option ul{display:grid;gap:6px;min-height:86px;margin:0;padding-left:18px}.api-key-reveal{margin:14px 18px 0;padding:12px;border:1px solid rgba(251,191,36,.35);border-radius:8px;color:var(--warning);background:#fbbf2414;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}@media(max-width:1200px){.landing-hero{grid-template-columns:1fr}.product-preview{min-height:auto}.content-grid{grid-template-columns:1fr;grid-template-rows:auto;height:auto}.workspace{height:auto;overflow:visible}.panel{min-height:400px}}@media(max-width:768px){.landing-shell{background:linear-gradient(180deg,#09090bf0,#09090bd6),url(/k-logo.png) right -70px bottom 40px / 280px no-repeat,#09090b}.landing-nav{min-height:68px}.landing-actions{gap:8px}.ghost-link,.primary-link,.secondary-link{min-height:38px;padding:0 11px;font-size:13px}.hero-copy h1{font-size:56px}.hero-copy p{font-size:17px}.preview-grid,.preview-row{grid-template-columns:1fr}.auth-brand{position:static;justify-self:start;margin-bottom:18px}.auth-stage{align-content:start;place-items:stretch}.app-shell{grid-template-columns:1fr}.nav-rail{display:none}.metric-grid,.backtest-metrics{grid-template-columns:repeat(2,1fr)}.topbar,.backtest-grid,.research-grid,.safety-grid,.subscription-grid,.saas-grid{grid-template-columns:1fr}.research-detail-panel,.research-reports-panel,.safety-metrics,.safety-controls-panel,.safety-wide-panel,.subscription-metrics,.subscription-plans-panel,.subscription-history-panel,.saas-metrics,.saas-wide-panel{grid-column:auto}.plan-grid{grid-template-columns:1fr}.controls{flex-wrap:wrap}.page-switch{width:100%}.page-switch button{flex:1}.backtest-form{position:static}.form-body,.coverage-item{grid-template-columns:1fr}}.settings-shell{display:flex;flex-direction:column;gap:0;height:100%}.settings-tab-bar{display:flex;gap:4px;padding:0 0 24px;border-bottom:1px solid var(--glass-border);margin-bottom:28px;flex-shrink:0}.settings-tab{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 16px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--text-muted);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.settings-tab:hover{color:var(--text-main);background:#ffffff0f;border-color:var(--glass-border)}.settings-tab.active{color:var(--primary);background:#2dd4bf1a;border-color:#2dd4bf40}.settings-content{flex:1;overflow-y:auto}.settings-section{max-width:720px}.settings-section-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:28px}.settings-section-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#ffffff0f;border:1px solid var(--glass-border);color:var(--text-muted);flex-shrink:0}.settings-section-icon.exchange-icon{color:var(--primary);background:#2dd4bf1a;border-color:#2dd4bf33}.settings-section-header h2{font-size:20px;font-weight:700;color:var(--text-main);margin-bottom:4px}.settings-section-header p{font-size:14px;color:var(--text-muted);line-height:1.5}.settings-form{display:flex;flex-direction:column;gap:28px}.settings-field-group{display:flex;flex-direction:column;gap:16px;padding:20px 22px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.settings-group-title{font-size:13px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px;display:flex;align-items:center;gap:8px}.optional-label{font-size:11px;font-weight:600;color:#94a3b899;text-transform:none;letter-spacing:0}.credentials-connected-badge{font-size:12px;font-weight:700;color:var(--positive);text-transform:none;letter-spacing:0;background:#4ade801a;padding:2px 8px;border-radius:6px}.settings-field{display:flex;flex-direction:column;gap:7px}.settings-field label{font-size:13px;font-weight:600;color:var(--text-muted)}.settings-input{width:100%;min-height:42px;padding:0 12px;background:#09090bb3;border:1px solid var(--glass-border);border-radius:10px;color:var(--text-main);font-size:14px;font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease}.settings-input:focus{outline:none;border-color:#2dd4bf66;box-shadow:0 0 0 3px #2dd4bf14}.settings-input.disabled-input{opacity:.5;cursor:not-allowed}.settings-input.monospace{font-family:Courier New,Courier,monospace;font-size:13px;letter-spacing:.02em}.settings-input-wrap{position:relative;display:flex;align-items:center}.settings-input-wrap .settings-input{padding-right:44px}.reveal-btn{position:absolute;right:10px;display:grid;place-items:center;width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;transition:color .15s}.reveal-btn:hover{color:var(--text-main)}.settings-field-hint{font-size:12px;color:#94a3b8b3;line-height:1.4}.settings-role-badge{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;background:#2dd4bf1a;border:1px solid rgba(45,212,191,.2);border-radius:8px;color:var(--primary);font-size:13px;font-weight:700;width:fit-content}.settings-org-name{font-size:14px;color:var(--text-main);padding:8px 0}.env-toggle-group{display:grid;grid-template-columns:1fr 1fr;gap:12px}.env-toggle-btn{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border:1px solid var(--glass-border);border-radius:12px;background:#09090b80;cursor:pointer;text-align:left;transition:all .2s ease}.env-toggle-btn:hover{border-color:#ffffff26;background:#ffffff0a}.env-toggle-btn.active.testnet{border-color:#2dd4bf59;background:#2dd4bf0f}.env-toggle-btn.active.mainnet{border-color:#fbbf2459;background:#fbbf240d}.env-btn-content{display:flex;flex-direction:column;gap:4px}.env-btn-content strong{font-size:14px;font-weight:700;color:var(--text-main)}.env-btn-content span{font-size:12px;color:var(--text-muted)}.env-selected-dot{width:10px;height:10px;border-radius:50%;background:var(--primary);box-shadow:0 0 8px var(--primary-glow);flex-shrink:0}.env-selected-dot.mainnet{background:var(--warning);box-shadow:0 0 8px #fbbf2466}.dry-run-toggle{display:flex;flex-direction:column;gap:10px}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;padding:14px 16px;border:1px solid var(--glass-border);border-radius:12px;background:#09090b80}.toggle-info{display:flex;flex-direction:column;gap:4px}.toggle-info strong{font-size:14px;font-weight:700;color:var(--text-main)}.toggle-info span{font-size:12px;color:var(--text-muted);line-height:1.4}.toggle-switch{position:relative;width:46px;height:26px;border-radius:13px;cursor:pointer;flex-shrink:0;transition:background .25s ease}.toggle-switch.on{background:var(--primary)}.toggle-switch.off{background:#ffffff1f}.toggle-thumb{position:absolute;top:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #0000004d;transition:left .25s cubic-bezier(.34,1.56,.64,1)}.toggle-switch.on .toggle-thumb{left:23px}.toggle-switch.off .toggle-thumb{left:3px}.connection-test-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.test-connection-btn{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 18px;border:1px solid rgba(45,212,191,.3);border-radius:10px;background:#2dd4bf14;color:var(--primary);font-size:13px;font-weight:700;cursor:pointer;transition:all .2s ease}.test-connection-btn:hover:not(:disabled){background:#2dd4bf24;border-color:#2dd4bf80}.test-connection-btn:disabled{opacity:.4;cursor:not-allowed}.test-result{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;padding:8px 14px;border-radius:8px}.test-result.success{color:var(--positive);background:#4ade801a;border:1px solid rgba(74,222,128,.2)}.test-result.fail{color:var(--negative);background:#f8717114;border:1px solid rgba(248,113,113,.2)}.test-balance{color:var(--text-muted);font-weight:500}.exchange-status-cards{display:grid;grid-template-columns:repeat(2,minmax(150px,.75fr)) minmax(210px,1fr) minmax(210px,1fr);gap:12px;margin-bottom:24px}.exchange-status-card{display:flex;flex-direction:column;gap:6px;min-width:0;padding:14px 16px;background:#09090b99;border:1px solid var(--glass-border);border-radius:12px;overflow:hidden}.exc-label{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.exc-env-badge{font-size:13px;font-weight:700}.exc-env-badge.testnet{color:var(--primary)}.exc-env-badge.mainnet{color:var(--warning)}.exc-mode-badge{font-size:13px;font-weight:700}.exc-mode-badge.dry{color:var(--text-muted)}.exc-mode-badge.live{color:var(--positive)}.exc-conn-status{width:fit-content;max-width:100%;padding:3px 8px;border-radius:999px;font-size:13px;font-weight:800}.exc-conn-status.connected{color:var(--positive);background:#4ade801a}.exc-conn-status.missing{color:var(--warning);background:#fbbf241a}.exc-detail{display:block;min-width:0;max-width:100%;color:var(--text-muted);font-size:12px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exc-url{display:block;min-width:0;max-width:100%;font-size:11px;font-family:monospace;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:980px){.exchange-status-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.exchange-status-cards{grid-template-columns:1fr}}.settings-notice{padding:12px 16px;border-radius:10px;font-size:13px;font-weight:500;line-height:1.5}.settings-notice.success{color:var(--positive);background:#4ade8014;border:1px solid rgba(74,222,128,.2)}.settings-notice.error{color:var(--negative);background:#f8717114;border:1px solid rgba(248,113,113,.2)}.settings-actions{display:flex;justify-content:flex-start}.settings-save-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 28px;border:none;border-radius:10px;background:var(--primary);color:#042f2e;font-size:14px;font-weight:800;cursor:pointer;transition:opacity .2s ease,transform .15s ease}.settings-save-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.settings-save-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.settings-loading{display:flex;align-items:center;gap:12px;padding:40px 20px;color:var(--text-muted);font-size:14px}@media(max-width:560px){.metric-grid,.backtest-metrics{grid-template-columns:1fr}}
