
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{--bg:#f3f7fb;--panel:#fff;--text:#0e1728;--muted:#64748b;--line:#e4ebf3;--green:#00a86b;--green2:#00d890;--red:#e5484d;--shadow:0 3px 12px rgba(15,35,65,.045)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--text);font-size:13px}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #64d9b0;outline-offset:2px}a{color:inherit;text-decoration:none}.app{min-height:100vh}.sidebar{position:fixed;left:0;top:0;bottom:0;width:180px;background:#fff;border-right:1px solid var(--line);padding:18px 10px;display:flex;flex-direction:column;z-index:20}.brand{height:44px;display:flex;align-items:center;gap:10px;font-size:21px;font-weight:800;margin:0 7px 18px}.brand-mark{width:34px;height:34px;border-radius:9px;display:inline-grid;place-items:center;background:linear-gradient(135deg,#00d890,#00a86b);color:white;font-weight:800;font-size:19px;box-shadow:0 5px 12px #00a86b24}.sidebar nav{display:grid;gap:4px}.nav-item{border:0;background:transparent;color:#334155;display:flex;align-items:center;gap:12px;text-align:left;padding:11px 12px;border-radius:9px;font-weight:550}.nav-item span{width:18px;text-align:center;font-size:18px;color:#526176}.nav-item:hover{background:#f2fbf7;color:#008d5d}.nav-item.active{background:linear-gradient(100deg,#00c781,#009d66);color:#fff;box-shadow:0 4px 12px #00a86b25}.nav-item.active span{color:white}.sidebar-promo{margin-top:auto;background:linear-gradient(135deg,#062b28,#00694c);border-radius:12px;padding:14px;color:#fff}.sidebar-promo .crown{color:#b5f7d8;font-size:22px}.sidebar-promo b{display:block;margin:5px 0}.sidebar-promo p{color:#c5e8dd;font-size:11px;line-height:1.5}.promo-button{background:#00d890;border:0;color:#06382b;border-radius:7px;padding:8px 10px;font-weight:800}.sidebar-foot{font-size:9px;letter-spacing:.8px;color:#64748b;padding:15px 4px 0;display:flex;align-items:center;gap:7px}.dot{width:7px;height:7px;background:#00a86b;border-radius:50%}.main{margin-left:180px;min-width:0}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:19px;padding:0 22px;position:sticky;top:0;z-index:15}.searchbox{height:42px;max-width:410px;min-width:190px;flex:1;display:flex;align-items:center;gap:10px;padding:0 12px;border:1px solid #e3eaf2;border-radius:24px;background:#f7f9fc;color:#475569}.searchbox>span{font-size:22px}.searchbox input{min-width:0;flex:1;border:0;background:transparent;outline:0;color:#111827}.searchbox kbd{font-size:10px;white-space:nowrap;padding:4px 6px;border-radius:5px;background:#e8eef5;color:#64748b}.ticker{display:flex;align-items:center;gap:10px;white-space:nowrap}.ticker b,.ticker strong{display:block;font-size:10px}.ticker strong{font-size:11px;margin-top:4px}.ticker em{font-style:normal;color:#00a86b;font-weight:600}.ticker svg,.market-list svg{width:57px;height:25px;overflow:visible}.ticker polyline,.market-list polyline{fill:none;stroke:#00c781;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.ticker-icon{color:#00a86b;font-size:22px}.top-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.icon-button{width:34px;height:34px;border:1px solid #e8edf4;border-radius:10px;background:#fff;color:#172033;position:relative;font-size:16px}.icon-button i{position:absolute;right:-4px;top:-5px;background:#e5484d;color:#fff;border-radius:20px;font-size:9px;padding:2px 5px;font-style:normal}.avatar{width:34px;height:34px;display:grid;place-items:center;background:#e0f8ed;border:1px solid #b8eed6;color:#008c5d;border-radius:50%;font-weight:800}.mobile-brand{display:none}.page-area{padding:15px 14px 30px;max-width:1900px;margin:auto}.page{display:none}.page.active{display:block}.hero{height:244px;display:flex;align-items:center;position:relative;overflow:hidden;border-radius:14px;margin-bottom:14px;padding:26px 32px;color:#fff;background:radial-gradient(ellipse at 72% 55%,#007c65 0%,#064d42 24%,transparent 58%),linear-gradient(108deg,#041b24,#053c36 63%,#087356);box-shadow:0 8px 24px #064e3b15}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#041b24 0%,#041b24dd 34%,transparent 75%);z-index:1}.hero-copy{position:relative;z-index:3}.hero-kicker{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:800;letter-spacing:.4px}.hero-kicker .brand-mark{width:40px;height:40px;font-size:23px}.hero h1{font-size:30px;letter-spacing:-.8px;margin:12px 0 7px}.hero p{color:#d5f6e9;font-size:14px;margin:0 0 19px}.hero-cta{background:#00e19a;color:#042e24;border:0;border-radius:24px;padding:12px 20px;font-weight:800;display:inline-flex;align-items:center;gap:12px}.bull-art{position:absolute;inset:0 0 0 42%;overflow:hidden}.bull-halo{position:absolute;width:370px;height:270px;right:18%;top:-15px;border-radius:50%;background:radial-gradient(ellipse,#00dba377 0%,#00b58b27 42%,transparent 70%);filter:blur(8px)}.bull{position:absolute;right:29%;top:18px;font-size:145px;line-height:1;color:#5affc8;text-shadow:0 0 28px #00e1a2,0 0 60px #00e1a288;transform:rotate(-8deg);opacity:.9}.chart-bars{position:absolute;right:0;bottom:0;height:100%;width:72%;display:flex;align-items:flex-end;gap:7px;opacity:.72;transform:skewY(-10deg)}.chart-bars i{display:block;width:13px;background:linear-gradient(#19e8a8,#08795d);height:25%}.chart-bars i:nth-child(2){height:42%}.chart-bars i:nth-child(3){height:34%}.chart-bars i:nth-child(4){height:51%}.chart-bars i:nth-child(5){height:39%}.chart-bars i:nth-child(6){height:62%}.chart-bars i:nth-child(7){height:55%}.chart-bars i:nth-child(8){height:73%}.chart-bars i:nth-child(9){height:65%}.chart-bars i:nth-child(10){height:82%}.chart-bars i:nth-child(11){height:76%}.chart-bars i:nth-child(12){height:100%}.dashboard-grid{display:grid;grid-template-columns:minmax(280px,1.05fr) minmax(360px,1.65fr) minmax(245px,.82fr);gap:13px;align-items:stretch}.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px;box-shadow:var(--shadow);min-width:0}.card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}.card h2{font-size:15px;margin:0;font-weight:800;letter-spacing:-.3px}.text-button{background:transparent;border:0;color:#008f61;font-size:11px;font-weight:700;white-space:nowrap}.tabs{display:flex;align-items:center;gap:4px}.tab{border:1px solid #e5ebf2;background:#f8fafc;border-radius:7px;padding:6px 9px;color:#526176;font-size:10px;font-weight:600}.tab.active{background:#e4f8ef;border-color:#c1efd9;color:#008e5d}.small-tabs{margin-bottom:10px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:9px;letter-spacing:.4px;text-transform:uppercase;color:#6b7b91;font-weight:700;background:#f8fafc;padding:9px 6px}td{padding:9px 6px;border-bottom:1px solid #edf1f6;font-size:10px}tbody tr:last-child td{border-bottom:0}.stock-name{display:flex;align-items:center;gap:7px;font-weight:750}.stock-badge{width:22px;height:22px;display:inline-grid;place-items:center;border-radius:50%;background:#f2e9d9;color:#9a641b;font-size:9px;font-weight:800}.buy-mini{border:0;background:#dff8ed;color:#008b5a;padding:5px 9px;border-radius:6px;font-size:10px;font-weight:800}.positive{color:#00a86b!important}.negative{color:#e5484d!important}.chart-title{margin-bottom:10px}.chart-title small{display:block;color:#8491a5;font-size:9px;margin:4px 0 0}.stock-title{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.stock-title h2{font-size:16px}.stock-title strong{color:#008f61;font-size:14px}.stock-title em{font-style:normal;color:#00a86b;font-size:11px;font-weight:700}.symbol-icon{width:23px;height:23px;display:grid;place-items:center;border-radius:50%;background:#f5e8c9;color:#95651b}.chart-actions{display:flex;gap:6px}.chart-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:7px}.outline-button{border:1px solid #e0e8f0;background:#fff;border-radius:7px;padding:6px 9px;font-size:10px;color:#334155}.chart-wrap{height:218px;position:relative;width:100%}.chart-wrap canvas{display:block;width:100%;height:100%}.chart-bottom{display:flex;justify-content:space-around;color:#8290a4;font-size:9px;padding:4px 0 0}.trade-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:11px;background:#f4f7fa;padding:4px;border-radius:9px}.trade-side{border:0;border-radius:7px;padding:9px;background:transparent;font-weight:800;color:#536176}.trade-side.active[data-side="BUY"]{background:#00b976;color:#fff}.trade-side.active[data-side="SELL"]{background:#e5484d;color:#fff}.segment-tabs{justify-content:space-between;background:#f8fafc;border-radius:8px;margin-bottom:15px;padding:4px}.segment-tabs .tab{border:0;background:transparent}.segment-tabs .tab.active{background:#e2f8ee}.trade-card form>label{display:block;color:#526176;font-size:11px;font-weight:600;margin:0 0 12px}.trade-card select,.trade-card input[type=number],.simulator-inline input,.simulator-inline select{width:100%;height:36px;border:1px solid #dce5ef;border-radius:8px;background:#fff;padding:0 10px;color:#111827;margin-top:6px}.quantity{display:flex;border:1px solid #dce5ef;border-radius:8px;height:36px;margin-top:6px;overflow:hidden}.quantity button{width:38px;border:0;background:#f8fafc;font-size:17px;color:#008f61}.quantity input{width:100%;min-width:0;border:0!important;text-align:center;margin:0!important}.check-row{display:flex;justify-content:space-between;gap:5px;margin:3px 0 10px}.check-row label{font-size:9px;color:#526176}.check-row input{accent-color:#00a86b}.risk-inputs{display:grid;grid-template-columns:1fr 1fr;gap:7px}.hidden{display:none!important}.estimate{display:flex;justify-content:space-between;gap:5px;border-top:1px solid #edf1f6;padding:12px 0;font-size:10px;color:#64748b}.estimate b{font-size:12px;color:#172033}.buy-submit{width:100%;border:0;border-radius:8px;background:#00a86b;color:white;font-weight:800;padding:11px}.buy-submit.sell-mode{background:#e5484d}.safety-note{font-size:9px;line-height:1.5;color:#7c8b9f;margin:9px 0 0}.lower-grid{display:grid;grid-template-columns:1.1fr 1.05fr .9fr 1fr;gap:13px;margin-top:13px}.lower-grid .card{min-height:180px}.ai-banner{border-radius:12px;background:linear-gradient(125deg,#e5fbf2,#f3faff);border:1px solid #ccefe0;padding:19px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;min-width:0}.ai-banner h2{font-size:19px;margin:8px 0}.ai-banner p{font-size:11px;color:#526b64;line-height:1.5}.ai-banner button{background:#00a86b;color:#fff;border:0;border-radius:7px;padding:9px 11px;font-size:10px;font-weight:800}.ai-label{font-size:9px;color:#008f61;font-weight:800;letter-spacing:1px}.robot{font-size:58px;color:#00a86b;text-shadow:0 4px 20px #00a86b44}.market-list>div{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:6px;padding:9px 0;border-bottom:1px solid #edf1f6}.market-list>div:last-child{border:0}.market-list b{font-size:10px}.market-list strong{font-size:10px}.market-list em{font-size:9px;color:#00a86b;font-style:normal;grid-column:2}.market-list svg{grid-column:3;grid-row:1/3}.market-badge{width:21px;height:21px;display:grid;place-items:center;border-radius:50%;background:#e3f8ed;color:#008e5d;font-size:10px;font-weight:800}.market-badge.red{background:#fff0f0;color:#e5484d}.market-badge.blue{background:#eaf2ff;color:#2463d4}.gainer-row{display:flex;align-items:center;gap:7px;padding:8px 0;border-bottom:1px solid #edf1f6}.gainer-row:last-child{border:0}.gainer-row .stock-badge{flex-shrink:0}.gainer-row b{font-size:10px;flex:1}.gainer-row strong{font-size:10px}.gainer-row em{font-style:normal;color:#008f61;background:#e8faf2;border-radius:5px;padding:4px;font-size:9px}.news-list>div{display:flex;align-items:center;gap:9px;padding:8px 0;border-bottom:1px solid #edf1f6}.news-list>div:last-child{border:0}.news-thumb{width:34px;height:34px;border-radius:8px;background:#e4f8ef;color:#008f61;display:grid;place-items:center;font-size:18px;font-weight:800;flex-shrink:0}.news-thumb.blue{background:#eaf2ff;color:#2563eb}.news-thumb.gold{background:#fff5d9;color:#a66a00}.news-list p{margin:0;min-width:0}.news-list b{font-size:10px;line-height:1.4;display:block}.news-list small{display:block;color:#94a3b8;font-size:9px;margin-top:4px}.bottom-grid{display:grid;grid-template-columns:1.15fr 1.1fr 1fr 1fr;gap:13px;margin-top:13px}.bottom-grid .card{min-height:135px}.option-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:3px;background:#f8fafc;padding:9px 4px;font-size:9px;color:#64748b;text-align:center}.option-summary.values{background:#fff;font-size:10px}.option-summary em{font-style:normal;color:#00a86b}.option-summary strong{color:#e5484d}.simulator-inline{display:grid;grid-template-columns:1fr .7fr;gap:7px}.simulator-inline label{font-size:10px;color:#64748b}.simulator-inline button{grid-column:1/-1;background:#00a86b;color:#fff;border:0;border-radius:7px;padding:8px;font-weight:800}.option-result{font-size:10px;color:#008f61;margin-top:8px}.recent-orders .order-row,.holding-row{display:flex;justify-content:space-between;gap:6px;padding:8px 0;border-bottom:1px solid #edf1f6;font-size:10px}.order-row:last-child,.holding-row:last-child{border:0}.order-row b,.holding-row b{display:block}.order-row small,.holding-row small{display:block;color:#94a3b8;margin-top:3px}.status{font-size:9px;color:#008f61;background:#e8faf2;padding:4px 6px;border-radius:5px;align-self:center}.page-heading{display:flex;align-items:center;justify-content:space-between;margin:8px 3px 18px}.page-heading h1{font-size:28px;margin:6px 0}.page-heading p{color:#64748b;margin:0}.eyebrow{font-size:10px;color:#008f61;letter-spacing:1px;font-weight:800}.paper-chip{background:#fff4dc;color:#9a5b00;border:1px solid #f4d79c;padding:7px 10px;border-radius:8px;font-size:10px;font-weight:800}.generic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.generic-grid .card{min-height:150px}.generic-table{width:100%;margin-top:10px}.generic-table th,.generic-table td{padding:12px 9px}.generic-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.generic-toolbar input,.generic-toolbar select{border:1px solid #dce5ef;background:#fff;border-radius:8px;padding:9px 11px}.generic-action{border:0;background:#00a86b;color:#fff;border-radius:8px;padding:9px 12px;font-weight:800}.toast{position:fixed;right:24px;bottom:24px;z-index:60;max-width:360px;background:#0e1728;color:#fff;border-radius:10px;padding:13px 17px;box-shadow:0 10px 40px #0f172a35;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translateY(0)}.generic-empty{padding:20px;border:1px dashed #d7e2ec;border-radius:10px;color:#64748b;text-align:center}.compact-mode .card{padding:10px}.compact-mode .hero{height:205px}.compact-mode .sidebar{width:165px}.compact-mode .main{margin-left:165px}
@media(max-width:1450px){.ticker.bank{display:none}.dashboard-grid{grid-template-columns:minmax(260px,1fr) minmax(340px,1.45fr)}.trade-card{grid-column:1/-1}.trade-card form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px}.trade-card form>label{margin-bottom:3px}.trade-card .check-row,.trade-card .risk-inputs,.trade-card .estimate,.trade-card .buy-submit,.trade-card .safety-note{grid-column:1/-1}.lower-grid,.bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1050px){.sidebar{width:68px;padding:15px 7px}.brand{margin:0 auto 20px}.brand>span:last-child,.nav-item:not(.active){font-size:0}.nav-item{justify-content:center;padding:12px 0}.nav-item span{font-size:18px}.sidebar-promo,.sidebar-foot{display:none}.main{margin-left:68px}.ticker{display:none}.dashboard-grid{grid-template-columns:1fr 1.2fr}.trade-card{grid-column:1/-1}.trade-card form{grid-template-columns:repeat(2,minmax(0,1fr))}.generic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.sidebar{top:auto;right:0;bottom:0;width:auto;height:65px;left:0;flex-direction:row;align-items:center;overflow-x:auto;padding:5px;background:#fff;border-top:1px solid var(--line);border-right:0}.brand,.sidebar-promo,.sidebar-foot{display:none}.sidebar nav{display:flex;gap:4px;min-width:max-content}.nav-item,.nav-item:not(.active){display:flex;flex-direction:column;gap:2px;font-size:9px;padding:5px 10px}.nav-item span{font-size:17px}.main{margin-left:0;padding-bottom:65px}.topbar{height:60px;padding:0 12px;gap:9px}.mobile-brand{display:flex;align-items:center;gap:6px;font-weight:800;white-space:nowrap}.mobile-brand .brand-mark{width:28px;height:28px}.searchbox{min-width:0;padding:0 8px;height:36px}.searchbox kbd,.top-actions .icon-button:first-child{display:none}.top-actions{gap:5px}.avatar{width:30px;height:30px}.page-area{padding:10px}.hero{height:205px;padding:20px}.hero h1{font-size:24px}.hero p{font-size:11px}.bull-art{left:45%;opacity:.65}.bull{font-size:90px;right:15%;top:48px}.dashboard-grid,.lower-grid,.bottom-grid,.generic-grid{grid-template-columns:1fr}.trade-card{grid-column:auto}.trade-card form{display:block}.trade-card form>label{margin-bottom:12px}.chart-wrap{height:210px}.chart-title{align-items:flex-start}.stock-title{gap:5px}.stock-title h2{font-size:13px}.stock-title strong{font-size:12px}.ai-banner{min-height:150px}.page-heading h1{font-size:23px}.ticker{display:none}}

/* FYERS connection controls */
.fyers-button,.fyers-refresh{border:1px solid #d5e5dc;background:#eaf8f0;color:#16834a;border-radius:9px;padding:9px 12px;font-weight:700;cursor:pointer;white-space:nowrap}
.fyers-button.connected{background:#16834a;color:#fff;border-color:#16834a}
.fyers-refresh{font-size:18px;padding:6px 10px;background:#fff;color:#25364b;border-color:#e0e6ed}
@media(max-width:900px){.fyers-button{padding:7px 8px;font-size:12px}.fyers-refresh{padding:5px 7px}}

.auth-gate{position:fixed;inset:0;z-index:1000;background:#f3f7fb;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);min-height:100vh;overflow:auto}.auth-gate[hidden]{display:none}.auth-hero{padding:clamp(28px,5vw,76px);display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(ellipse at 80% 20%,#c6f7e4 0,transparent 42%),linear-gradient(145deg,#f7fffb,#e7f8f1)}.auth-brand{display:flex;align-items:center;gap:11px;font-size:24px;font-weight:800}.auth-copy{max-width:560px;margin:50px 0}.auth-copy h1{font-size:clamp(42px,5vw,68px);line-height:1.04;letter-spacing:-2.8px;margin:15px 0}.auth-copy h1 em{font-style:normal;color:#009d66}.auth-copy p{font-size:16px;line-height:1.8;color:#607166;max-width:440px}.auth-points{display:grid;gap:12px;margin-top:28px;font-weight:600;color:#1c5a43}.auth-market-card{max-width:420px;padding:20px 22px;border:1px solid #d8eee4;border-radius:18px;background:#ffffffb8;display:flex;flex-direction:column;gap:8px}.auth-market-card small{letter-spacing:1.1px;color:#718579}.auth-market-card b{font-size:15px}.auth-spark{font-size:38px;color:#00a86b}.auth-panel{align-self:center;justify-self:center;width:min(440px,calc(100% - 42px));padding:34px 0}.auth-panel-top{display:flex;justify-content:space-between;align-items:center;font-weight:700;margin-bottom:25px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;background:#e8f0ec;border-radius:10px;padding:4px;margin-bottom:26px}.auth-tabs button{border:0;border-radius:8px;padding:11px;background:transparent;color:#607166;font-weight:700}.auth-tabs button.selected{background:white;color:#008d5d;box-shadow:0 2px 7px #183a2a12}.auth-panel h2{font-size:28px;margin:0 0 7px;letter-spacing:-.8px}.auth-panel form>p{color:#718078;margin:0 0 22px}.auth-panel form label{display:grid;gap:8px;margin:15px 0;font-weight:600;color:#34463c}.auth-panel input{border:1px solid #d8e4dd;border-radius:9px;padding:13px 14px;background:white;min-width:0}.auth-panel input:focus{border-color:#00a86b;outline:3px solid #00a86b1a}.auth-submit{width:100%;border:0;border-radius:9px;background:#00a86b;color:white;font-weight:800;padding:14px;margin:10px 0 12px}.auth-panel small{display:block;line-height:1.6;color:#7a8a81}.auth-panel #authError{color:#d9363e;min-height:18px;margin:0 0 8px}.user-chip{border:1px solid var(--line);border-radius:9px;background:white;padding:8px 11px;color:#425347;font-weight:600}.user-chip button{border:0;background:transparent;color:#008d5d;font-weight:700;margin-left:8px}@media(max-width:850px){.auth-gate{grid-template-columns:1fr}.auth-hero{padding:25px 24px 20px}.auth-copy{margin:30px 0 18px}.auth-copy h1{font-size:44px}.auth-copy p{font-size:14px}.auth-points{grid-template-columns:1fr 1fr;font-size:12px}.auth-market-card{display:none}.auth-panel{padding:26px 0 35px}.auth-panel-top{margin-bottom:18px}}
