@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--bg-primary: #FFF0E4;--bg-secondary: #FDFBF7;--bg-tertiary: #F3ECE2;--border-color: #E6DDCF;--text-primary: #0A0D14;--text-secondary: #3C3347;--text-muted: #6E627A;--accent: #6D28D9;--accent-hover: #5B21B6;--accent-bg: rgba(109, 40, 217, .08);--success: #16A34A;--success-bg: rgba(22, 163, 74, .08);--danger: #DC2626;--danger-bg: rgba(220, 38, 38, .08);--warning: #D97706;--warning-bg: rgba(217, 119, 6, .08);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px}*{margin:0;padding:0;box-sizing:border-box;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;-webkit-font-smoothing:antialiased}html,body{overflow-x:hidden;width:100%;scroll-behavior:smooth}body{background-color:var(--bg-primary);color:var(--text-primary);line-height:1.5}a{color:inherit;text-decoration:none}.web-header{background-color:#0b0f19;border-bottom:1px solid rgba(234,218,205,.12);position:sticky;top:0;z-index:100}.web-navbar{width:100%;max-width:1200px;margin:0 auto;padding:16px 24px;display:flex;justify-content:space-between;align-items:center}.web-logo{display:flex;align-items:center;gap:8px;font-size:20px;font-weight:800;color:#fff;cursor:pointer}.web-logo-icon{color:#a78bfa}.web-nav-menu{display:contents}.web-nav-links{display:flex;gap:24px;list-style:none}.web-nav-item{font-size:14px;font-weight:500;color:#ffffffb3;transition:color .2s ease;cursor:pointer}.web-nav-item:hover,.web-nav-item.active{color:#a78bfa}.web-nav-actions{display:flex;align-items:center;gap:16px}.web-search-bar{display:flex;align-items:center;gap:8px;background-color:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-sm);padding:8px 12px;width:240px}.web-search-bar input{background:none;border:none;outline:none;color:#fff;font-size:13px;width:100%}.web-search-bar input::placeholder{color:#fff6}.web-profile-btn{background-color:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#ffffffb3;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer}.web-container{width:100%;max-width:1200px;margin:0 auto;padding:32px 24px;min-height:calc(100vh - 180px)}.web-layout-grid{display:grid;grid-template-columns:1fr 340px;gap:32px}.main-column,.sidebar-column{display:flex;flex-direction:column;gap:32px}.card-flat{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:24px}.card-title{font-size:16px;font-weight:700;margin-bottom:16px;color:var(--text-primary)}.ipo-banner-flat{background-color:var(--accent);border-radius:var(--radius-md);padding:24px;display:flex;justify-content:space-between;align-items:center;color:#fff}.ipo-banner-info{display:flex;flex-direction:column;gap:6px}.ipo-banner-badge{background-color:#ffffff26;font-size:10px;font-weight:700;padding:2px 8px;border-radius:100px;align-self:flex-start;text-transform:uppercase}.ipo-banner-title{font-size:20px;font-weight:800}.ipo-banner-subtitle{font-size:13px;opacity:.85}.ipo-banner-btn{background-color:#fff;color:var(--accent);border:none;font-weight:700;font-size:13px;padding:10px 18px;border-radius:var(--radius-sm);cursor:pointer;transition:opacity .2s ease}.ipo-banner-btn:hover{opacity:.9}.index-snapshot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.index-snap-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px;display:flex;flex-direction:column;gap:4px}.index-snap-name{font-size:12px;color:var(--text-secondary);font-weight:600}.index-snap-val{font-size:18px;font-weight:700;color:var(--text-primary)}.index-snap-diff{font-size:11px;font-weight:700}.index-snap-diff.up{color:var(--success)}.index-snap-diff.down{color:var(--danger)}.stocks-table{width:100%;border-collapse:collapse;text-align:left}.stocks-table th{padding:12px 16px;font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;border-bottom:1px solid var(--border-color)}.stocks-table td{padding:14px 16px;font-size:13px;border-bottom:1px solid var(--border-color)}.stocks-table tr{cursor:pointer}.stocks-table tr:hover{background-color:#ffffff03}.stock-company-name{font-weight:600;color:var(--text-primary)}.stock-exchange-badge{font-size:9px;background-color:var(--bg-tertiary);color:var(--text-secondary);padding:2px 6px;border-radius:4px;margin-left:8px;font-weight:700}.stock-change-lbl{font-weight:700}.stock-change-lbl.up{color:var(--success)}.stock-change-lbl.down{color:var(--danger)}.news-feed-list{display:flex;flex-direction:column;gap:16px}.news-feed-item{display:flex;flex-direction:column;gap:6px;cursor:pointer;border-bottom:1px solid var(--border-color);padding-bottom:12px}.news-feed-item:last-child{border-bottom:none;padding-bottom:0}.news-feed-title{font-size:13px;font-weight:600;color:var(--text-primary);line-height:1.4}.news-feed-title:hover{color:var(--accent)}.news-feed-meta{display:flex;gap:8px;font-size:10px;color:var(--text-muted)}.news-feed-tag{color:var(--accent);font-weight:700}.learn-feed-list{display:flex;flex-direction:column;gap:12px}.learn-feed-item{background-color:var(--bg-primary);border:1px solid var(--border-color);padding:12px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:flex-start;gap:12px;cursor:pointer;width:100%;text-align:left}.learn-feed-item:hover{border-color:var(--accent)}.learn-feed-info{display:flex;flex-direction:column}.learn-feed-title{font-size:13px;font-weight:600;color:var(--text-primary)}.learn-feed-duration{font-size:11px;color:var(--text-muted)}.web-footer{background-color:#0b0f19;border-top:1px solid rgba(234,218,205,.12);padding:32px 24px;text-align:center;font-size:12px;color:#ffffff80}.web-footer-links{display:flex;justify-content:center;flex-wrap:wrap;gap:20px;list-style:none;margin-bottom:12px}.web-footer-link{color:#ffffffb3;cursor:pointer}.web-footer-link:hover{color:#a78bfa}.page-title-section{margin-bottom:24px}.page-title{font-size:22px;font-weight:800;color:var(--text-primary)}.page-subtitle{font-size:13px;color:var(--text-secondary);margin-top:4px}.filter-tabs-box{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.filter-tab-pill{background-color:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary);font-size:12px;font-weight:600;padding:6px 14px;border-radius:100px;cursor:pointer;-webkit-user-select:none;user-select:none}.filter-tab-pill.active{background-color:var(--accent);color:#fff;border-color:var(--accent)}.ipo-card-grid,.learn-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.ipo-flat-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:20px;display:flex;flex-direction:column;gap:12px}.ipo-card-header{display:flex;justify-content:space-between;align-items:center}.ipo-card-name{font-size:15px;font-weight:700;color:var(--text-primary)}.ipo-status-pill{font-size:10px;font-weight:700;padding:2px 6px;border-radius:4px;text-transform:uppercase}.ipo-status-pill.open{background-color:var(--success-bg);color:var(--success)}.ipo-status-pill.upcoming{background-color:var(--accent-bg);color:var(--accent)}.ipo-status-pill.closed{background-color:#4a3e5614;color:var(--text-secondary)}.ipo-specifications-box{display:grid;grid-template-columns:1fr 1fr;gap:8px;background-color:var(--bg-primary);padding:10px;border-radius:var(--radius-sm);font-size:11px}.ipo-spec-label{color:var(--text-muted)}.ipo-spec-value{color:var(--text-primary);font-weight:600;text-align:right}.ipo-tracker-container{padding:16px 8px 8px;background:linear-gradient(135deg,#6d28d90a,#16a34a0a);border-radius:var(--radius-sm);border:1px solid var(--border-color)}.ipo-tracker-rail{display:flex;align-items:flex-start;justify-content:center;gap:0;position:relative}.ipo-tracker-connector{flex:1;height:3px;background-color:var(--border-color);margin-top:10px;border-radius:2px;transition:background-color .4s ease;min-width:16px}.ipo-tracker-connector.filled{background:linear-gradient(90deg,var(--accent),var(--success))}.ipo-tracker-node{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:54px;flex-shrink:0}.ipo-tracker-dot{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2.5px solid var(--border-color);background-color:var(--bg-secondary);transition:all .4s ease;position:relative;flex-shrink:0}.ipo-tracker-node.completed .ipo-tracker-dot{background:linear-gradient(135deg,var(--success),#10b981);border-color:var(--success);color:#fff;box-shadow:0 0 0 3px #16a34a26}.ipo-tracker-node.active .ipo-tracker-dot{background:linear-gradient(135deg,var(--accent),#8b5cf6);border-color:var(--accent);color:#fff;box-shadow:0 0 0 4px #6d28d92e}.ipo-tracker-pulse{width:8px;height:8px;border-radius:50%;background-color:#fff;animation:ipo-pulse 1.8s ease-in-out infinite}@keyframes ipo-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.6}}.ipo-tracker-node.pending .ipo-tracker-dot{background-color:var(--bg-tertiary);border-color:var(--border-color)}.ipo-tracker-label{font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;text-align:center;line-height:1.2}.ipo-tracker-node.active .ipo-tracker-label{color:var(--accent)}.ipo-tracker-node.completed .ipo-tracker-label{color:var(--success)}.ipo-tracker-date{font-size:10px;font-weight:500;color:var(--text-muted);text-align:center;opacity:.8}.ipo-tracker-node.active .ipo-tracker-date{color:var(--accent);opacity:1;font-weight:600}.ipo-tracker-node.completed .ipo-tracker-date{color:var(--success);opacity:.85}.admin-login-box{max-width:400px;width:100%;margin:80px auto;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:30px}.form-group-admin{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.form-group-admin label{font-size:12px;font-weight:700;color:var(--text-secondary)}.form-group-admin input,.form-group-admin select,.form-group-admin textarea{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:10px 12px;color:var(--text-primary);outline:none;font-size:13px}.form-group-admin input:focus,.form-group-admin select:focus,.form-group-admin textarea:focus{border-color:var(--accent)}.admin-form-btn{background-color:var(--accent);color:#fff;border:none;width:100%;padding:12px;border-radius:var(--radius-sm);font-size:14px;font-weight:700;cursor:pointer}.admin-dashboard-layout{display:grid;grid-template-columns:200px 1fr;gap:24px}.admin-menu-sidebar{display:flex;flex-direction:column;gap:4px}.admin-menu-link{background:none;border:none;text-align:left;padding:10px 14px;color:var(--text-secondary);font-size:13px;font-weight:600;border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;gap:8px}.admin-menu-link:hover{background-color:var(--accent-bg);color:var(--accent)}.admin-menu-link.active{background-color:var(--accent);color:#fff}.admin-actions-cell{display:flex;gap:8px;justify-content:flex-end}.admin-icon-action{background:none;border:none;cursor:pointer}.admin-icon-action.edit{color:var(--accent)}.admin-icon-action.delete{color:var(--danger)}.market-live-indicator{display:inline-flex;align-items:center;gap:8px;background:#10b98114;border:1px solid rgba(16,185,129,.2);padding:6px 12px;border-radius:50px;margin-bottom:16px;align-self:flex-start}.pulse-dot{width:8px;height:8px;background-color:var(--success);border-radius:50%;box-shadow:0 0 #10b981b3;animation:pulse-live 1.6s infinite}@keyframes pulse-live{0%{transform:scale(.95);box-shadow:0 0 #10b981b3}70%{transform:scale(1);box-shadow:0 0 0 8px #10b98100}to{transform:scale(.95);box-shadow:0 0 #10b98100}}.live-text{font-size:12px;font-weight:700;color:var(--success);text-transform:uppercase;letter-spacing:.05em}.flash-up{background-color:#10b9812e!important;box-shadow:inset 0 0 8px #10b98140;transition:background-color .15s ease,box-shadow .15s ease}.flash-down{background-color:#ef44442e!important;box-shadow:inset 0 0 8px #ef444440;transition:background-color .15s ease,box-shadow .15s ease}.index-snap-card,.stocks-table tr{transition:background-color .8s ease,box-shadow .8s ease}.mobile-menu-toggle{display:none;background:none;border:none;color:#fff;cursor:pointer;padding:4px;align-items:center;justify-content:center;transition:opacity .2s ease}.mobile-menu-toggle:hover{opacity:.8}.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-form-row{display:flex;gap:16px}.page-header-container{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.filter-controls-container{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.page-search-bar{display:flex;align-items:center;gap:8px;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:8px 12px;width:240px;transition:all .2s ease-in-out}.page-search-bar:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-bg)}.page-search-bar input{background:none;border:none;outline:none;color:var(--text-primary);font-size:13px;width:100%}.page-search-bar input::placeholder{color:var(--text-muted)}.detail-back-btn{display:flex;align-items:center;gap:8px;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);padding:8px 16px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:24px;width:fit-content}.detail-back-btn:hover{background-color:var(--bg-tertiary);color:var(--text-primary);border-color:var(--text-muted)}.stock-detail-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px}.stock-detail-name{font-size:28px;font-weight:800;color:var(--text-primary)}.stock-detail-ticker{font-size:14px;font-weight:600;color:var(--text-muted);text-transform:uppercase}.stock-detail-price{font-size:32px;font-weight:800;color:var(--text-primary)}.detail-header-card{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px}.detail-header-price-block{text-align:right}.detail-header-change-row{display:flex;justify-content:flex-end}.detail-chart-wrapper{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px;display:flex;justify-content:center;align-items:center;height:220px}.stats-list{display:flex;flex-direction:column;gap:12px}.stats-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border-color)}.stats-row:last-child{border-bottom:none}.stats-label{font-size:13px;color:var(--text-muted);font-weight:500}.stats-value{font-size:14px;color:var(--text-primary);font-weight:700}.stock-detail-description{font-size:14px;color:var(--text-secondary);line-height:1.6}@media(max-width:1024px){.index-snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.web-layout-grid{grid-template-columns:minmax(0,1fr);gap:24px}.stock-detail-grid{grid-template-columns:minmax(0,1fr);gap:20px}}@media(max-width:768px){.web-container{padding:20px 16px;width:100%}.web-navbar{width:100%}.main-column,.sidebar-column{width:100%;min-width:0}.card-flat{padding:16px}.stocks-table td,.stocks-table th{padding:12px 8px}.page-title{font-size:20px}.page-subtitle{font-size:12px}.web-navbar{position:relative}.mobile-menu-toggle{display:flex}.web-nav-menu{display:none;flex-direction:column;position:absolute;top:100%;left:0;right:0;background-color:#0b0f19;border-top:1px solid rgba(234,218,205,.12);border-bottom:1px solid rgba(234,218,205,.12);padding:16px 24px;gap:16px;z-index:100;box-shadow:0 10px 15px -3px #00000080}.web-nav-menu.open{display:flex}.web-nav-links{flex-direction:column;gap:12px;width:100%}.web-nav-item{font-size:15px;display:block;padding:6px 0}.web-nav-actions,.web-search-bar{width:100%}.ipo-banner-flat{flex-direction:column;align-items:flex-start;gap:16px}.ipo-banner-btn{width:100%;text-align:center}.page-header-container{flex-direction:column;align-items:flex-start;gap:16px}.filter-controls-container{flex-direction:column;align-items:stretch;gap:16px}.page-search-bar{width:100%}.admin-dashboard-layout{grid-template-columns:minmax(0,1fr);gap:20px}.admin-menu-sidebar{flex-direction:row;overflow-x:auto;white-space:nowrap;padding-bottom:8px;border-bottom:1px solid var(--border-color);scrollbar-width:thin;-webkit-overflow-scrolling:touch}.admin-menu-link{padding:8px 12px;font-size:12px;white-space:nowrap}}@media(max-width:576px){.hide-on-mobile{display:none!important}.admin-form-row{flex-direction:column;gap:12px}.ipo-card-grid,.learn-card-grid,.index-snapshot-grid{grid-template-columns:minmax(0,1fr)}.web-footer-links{flex-wrap:wrap;justify-content:center;gap:12px}.admin-login-box{margin:40px auto;padding:20px}}@media(max-width:768px){.stock-detail-name{font-size:20px}.stock-detail-price{font-size:24px}.detail-header-card{flex-direction:column;align-items:flex-start;gap:12px}.detail-header-price-block{text-align:left;width:100%}.detail-header-change-row{justify-content:flex-start}.detail-chart-wrapper{height:180px;padding:8px}.ipo-banner-flat{flex-direction:column;align-items:flex-start;gap:16px;padding:16px}}.ad-container{display:flex;flex-direction:column;align-items:center;margin:24px auto;width:100%;max-width:100%}.ad-label{font-size:9px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px;font-weight:600}.ad-box{width:100%;background-color:var(--bg-secondary);border:1px dashed var(--border-color);border-radius:var(--radius-md);padding:12px;display:flex;justify-content:center;align-items:center;overflow:hidden;transition:border-color .2s ease;min-height:110px}.ad-box:hover{border-color:var(--text-muted)}.hero-section{background:linear-gradient(135deg,#4c1d95,#6d28d9,#7c3aed);border-radius:var(--radius-lg);padding:48px 32px;margin-bottom:32px;color:#fff;box-shadow:0 10px 25px -5px #6d28d94d;position:relative;overflow:hidden}.hero-section:before{content:"";position:absolute;top:-50%;right:-20%;width:300px;height:300px;background:radial-gradient(circle,#a78bfa66,#a78bfa00 70%);border-radius:50%;pointer-events:none}.hero-content{position:relative;z-index:1;max-width:800px;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}.hero-title{font-size:32px;font-weight:800;line-height:1.25;letter-spacing:-.02em;color:#fff}.hero-subtitle{font-size:16px;color:#ffffffd9;font-weight:500;margin-bottom:8px}.hero-search-box{display:flex;align-items:center;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-md);padding:6px 6px 6px 16px;width:100%;max-width:600px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 12px #0000001a;transition:all .3s ease}.hero-search-box:focus-within{background:#fff3;border-color:#fff6;box-shadow:0 0 20px #a78bfa66}.hero-search-icon{color:#ffffffb3;flex-shrink:0}.hero-search-input{background:none;border:none;outline:none;color:#fff;font-size:15px;width:100%;padding:10px 12px}.hero-search-input::placeholder{color:#ffffff8c}.hero-search-btn{background-color:#fff;color:var(--accent);border:none;font-weight:700;font-size:14px;padding:10px 24px;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;flex-shrink:0;box-shadow:0 2px 4px #0000000d}.hero-search-btn:hover{background-color:#f3e8ff;transform:translateY(-1px)}.hero-search-btn:active{transform:translateY(0)}@media(max-width:768px){.hero-section{padding:32px 16px;margin-bottom:24px;border-radius:var(--radius-md)}.hero-title{font-size:24px}.hero-subtitle{font-size:14px}.hero-search-box{padding:4px 4px 4px 12px}.hero-search-input{font-size:14px;padding:8px}.hero-search-btn{padding:8px 16px;font-size:13px}}.skeleton-pulse{background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--border-color) 37%,var(--bg-tertiary) 63%);background-size:400% 100%;animation:skeleton-loading 1.4s ease infinite}@keyframes skeleton-loading{0%{background-position:100% 50%}to{background-position:0% 50%}}.skeleton-text{height:14px;border-radius:var(--radius-sm);margin-bottom:8px;width:100%}.skeleton-title{height:20px;width:50%;border-radius:var(--radius-sm);margin-bottom:16px}.skeleton-banner{height:120px;width:100%;border-radius:var(--radius-md);margin-bottom:24px}.skeleton-card{height:180px;width:100%;border-radius:var(--radius-md);margin-bottom:24px}.skeleton-table-row{height:48px;width:100%;border-radius:var(--radius-sm);margin-bottom:12px}
