| | :root{ |
| | --bg1:#0b1020; |
| | --bg2:#111735; |
| | --glass:rgba(255,255,255,0.06); |
| | --border:rgba(255,255,255,0.12); |
| | --text:#eaf2ff; |
| | --muted:#b9c4e4; |
| | --accent:#6ae3ff; |
| | --accent2:#9b8cff; |
| | --pos:#2ecc71; |
| | --neg:#ff5c7a; |
| | --neu:#ffd166; |
| | } |
| |
|
| | *{box-sizing:border-box} |
| | html,body{height:100%} |
| | body{ |
| | margin:0; |
| | color:var(--text); |
| | background: radial-gradient(1200px 800px at 70% -10%, #1a2255 0%, transparent 70%), |
| | radial-gradient(800px 600px at -10% 110%, #2a1e5c 0%, transparent 70%), |
| | linear-gradient(180deg, var(--bg1), var(--bg2)); |
| | font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Inter, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji","Segoe UI Emoji"; |
| | overflow-x:hidden; |
| | animation: fadeInBody 1s ease; |
| | } |
| | @keyframes fadeInBody { |
| | from { opacity:0; } |
| | to { opacity:1; } |
| | } |
| |
|
| | |
| | .bg-gradient{ |
| | position:fixed; inset:0; pointer-events:none; |
| | background: |
| | radial-gradient(1000px 600px at 20% -10%, rgba(155,140,255,.25),transparent 60%), |
| | radial-gradient(900px 500px at 110% 120%, rgba(106,227,255,.18),transparent 60%); |
| | filter: blur(30px); |
| | animation: pulseGlow 8s ease-in-out infinite alternate; |
| | } |
| | @keyframes pulseGlow { |
| | from { opacity:.6; } |
| | to { opacity:1; } |
| | } |
| |
|
| | .stars, .shooting-stars{ |
| | position:fixed; inset:0; pointer-events:none; overflow:hidden; z-index:0; |
| | } |
| | .stars::before, .stars::after{ |
| | content:""; |
| | position:absolute; inset:-200px; |
| | background: |
| | radial-gradient(2px 2px at 20% 30%, rgba(255,255,255,.8), transparent 70%), |
| | radial-gradient(1.5px 1.5px at 70% 60%, rgba(255,255,255,.6), transparent 70%), |
| | radial-gradient(1.5px 1.5px at 40% 80%, rgba(255,255,255,.6), transparent 70%), |
| | radial-gradient(2px 2px at 85% 20%, rgba(255,255,255,.8), transparent 70%); |
| | animation: twinkle 8s linear infinite alternate; |
| | } |
| | @keyframes twinkle{ |
| | from{opacity:.6; transform:scale(1)} |
| | to{opacity:1; transform:scale(1.06)} |
| | } |
| | .shooting-stars::before{ |
| | content:""; |
| | position:absolute; |
| | top:-20vh; left:10vw; width:2px; height:2px; background:white; |
| | box-shadow: 0 0 12px 3px rgba(255,255,255,.8); |
| | transform: rotate(45deg); |
| | animation: shoot 6s linear infinite; |
| | opacity:.8; |
| | } |
| | @keyframes shoot{ |
| | 0%{transform:translate(0,0) rotate(45deg); opacity:0} |
| | 5%{opacity:1} |
| | 70%{transform:translate(90vw,80vh) rotate(45deg); opacity:0} |
| | 100%{opacity:0} |
| | } |
| |
|
| | |
| | .planets{ position:fixed; inset:0; pointer-events:none; z-index:1;} |
| | .planet{ |
| | position:absolute; border-radius:50%; filter: blur(0.2px); |
| | opacity:.8; animation: float 12s ease-in-out infinite; |
| | background: radial-gradient(120px 120px at 40% 40%, rgba(255,255,255,.35), transparent 60%), |
| | radial-gradient(circle at 60% 60%, rgba(255,255,255,.08), rgba(255,255,255,.02)); |
| | border:1px solid rgba(255,255,255,.1); |
| | } |
| | .p1{ width:140px; height:140px; top:12vh; left:8vw; background-color:#5b6cff;} |
| | .p2{ width:90px; height:90px; bottom:14vh; right:10vw; background-color:#35c0ff; animation-duration: 14s;} |
| | .p3{ width:65px; height:65px; top:60vh; left:20vw; background-color:#ff7ad6; animation-duration: 11s;} |
| | @keyframes float{ |
| | 0%,100%{ transform: translateY(-8px)} |
| | 50%{ transform: translateY(8px)} |
| | } |
| |
|
| | |
| | #parallax-cursor{ position:fixed; width:14px; height:14px; border-radius:50%; |
| | background: radial-gradient(circle, rgba(255,255,255,.9), transparent 60%); |
| | pointer-events:none; z-index:5; mix-blend-mode:screen; transform:translate(-50%,-50%); |
| | opacity:.0; transition: opacity .25s ease; |
| | } |
| |
|
| | |
| | .container{ width:min(1100px, 92%); margin: 0 auto; position:relative; z-index:2;} |
| | header{ padding: 60px 0 20px; animation: slideDown 1s ease;} |
| | @keyframes slideDown { |
| | from { opacity:0; transform: translateY(-30px);} |
| | to { opacity:1; transform: translateY(0);} |
| | } |
| | .logo{ font-size: clamp(28px, 6vw, 56px); font-weight:900; letter-spacing:.6px; } |
| | .logo span{ |
| | background: linear-gradient(90deg, var(--accent), var(--accent2)); |
| | -webkit-background-clip:text; background-clip:text; color:transparent; |
| | text-shadow: 0 0 28px rgba(106,227,255,.35); |
| | animation: glowText 3s ease-in-out infinite alternate; |
| | } |
| | @keyframes glowText { |
| | from { text-shadow: 0 0 10px rgba(106,227,255,.25);} |
| | to { text-shadow: 0 0 26px rgba(155,140,255,.65);} |
| | } |
| | .subtitle{ color:var(--muted); margin-top:10px; max-width: 780px; line-height:1.5; animation: fadeIn 1.4s ease;} |
| | @keyframes fadeIn { from {opacity:0} to {opacity:1} } |
| |
|
| | .card{ |
| | background: var(--glass); |
| | border: 1px solid var(--border); |
| | border-radius: 20px; |
| | padding: 22px; |
| | backdrop-filter: blur(10px); |
| | box-shadow: 0 15px 60px rgba(0,0,0,.35); |
| | transform: translateY(6px); |
| | animation: card-in .8s ease forwards; |
| | } |
| | @keyframes card-in{ to{ transform: translateY(0)} } |
| |
|
| | .card-head{ display:flex; align-items:center; gap:12px; margin-bottom:12px;} |
| | .card-head .icon{ |
| | width:40px; height:40px; display:grid;place-items:center; |
| | border-radius:12px; background:linear-gradient(135deg, var(--accent2), var(--accent)); |
| | box-shadow: 0 8px 26px rgba(155,140,255,.35); |
| | font-weight:800; |
| | animation: rotateIcon 5s linear infinite; |
| | } |
| | @keyframes rotateIcon { |
| | 0% { transform: rotate(0);} |
| | 100% { transform: rotate(360deg);} |
| | } |
| |
|
| | .grid{ display:grid; grid-template-columns: 1fr auto; gap:12px; margin-top:16px;} |
| | .form-group{ display:flex; flex-direction:column; gap:8px} |
| | .form-group.col-span{ grid-column: 1 / -1} |
| | label{ color:var(--muted); font-size:14px} |
| | input{ |
| | background: rgba(255,255,255,.05); border:1px solid var(--border); color:var(--text); |
| | padding:12px 14px; border-radius:12px; outline:none; transition:.2s; |
| | } |
| | input:focus{ border-color: var(--accent); box-shadow: 0 0 0 4px rgba(106,227,255,.18)} |
| |
|
| | .btn{ |
| | position:relative; overflow:hidden; border:0; cursor:pointer; |
| | padding: 12px 16px; border-radius:14px; color:#0b1020; font-weight:800; |
| | background:linear-gradient(135deg, var(--accent), var(--accent2)); |
| | box-shadow: 0 10px 30px rgba(106,227,255,.35); |
| | transition: transform .25s ease, box-shadow .25s ease; |
| | } |
| | .btn:hover{ transform: translateY(-3px) scale(1.02); box-shadow: 0 15px 40px rgba(106,227,255,.45);} |
| | .btn:active{ transform: scale(.96);} |
| | .btn .btn-glow{ |
| | position:absolute; inset:-80% -40%; background: radial-gradient(circle, rgba(255,255,255,.6), transparent 60%); |
| | transform: translateX(-60%); animation: sweep 2.2s ease-in-out infinite; |
| | opacity:.5; |
| | } |
| | @keyframes sweep{ 50%{ transform: translateX(60%)} } |
| |
|
| | .status{ display:flex; gap:12px; align-items:center; margin-top:14px; animation: fadeIn .6s ease;} |
| | .hidden{ display:none} |
| | .spinner{ |
| | width:20px; height:20px; border:2.5px solid rgba(255,255,255,.2); border-top-color:white; border-radius:50%; |
| | animation: spin .9s linear infinite; |
| | } |
| | @keyframes spin{to{ transform:rotate(360deg)}} |
| | .dots::after{ |
| | content:""; animation: dots 1.2s steps(3,end) infinite; |
| | } |
| | @keyframes dots{ 0%{content:"."} 33%{content:".."} 66%{content:"..."} } |
| |
|
| | .meta{ margin-top:14px; display:grid; grid-template-columns: repeat(3,1fr); gap:10px; animation: fadeIn .8s ease;} |
| | .meta-item{ background: rgba(255,255,255,.04); border:1px solid var(--border); border-radius:12px; padding:12px; transition: transform .3s ease;} |
| | .meta-item:hover{ transform: scale(1.05);} |
| | .meta-label{ color:var(--muted); font-size:12px} |
| | .meta-value{ margin-top:4px; display:flex; gap:8px; flex-wrap:wrap} |
| |
|
| | .chip{ |
| | display:inline-flex; align-items:center; gap:6px; |
| | border-radius:999px; padding:6px 10px; font-weight:700; font-size:12px; letter-spacing:.2px; |
| | background: rgba(255,255,255,.07); border:1px solid var(--border); |
| | animation: fadeIn .8s ease; |
| | } |
| | .chip-gemini{ color:#00E5FF; border-color: rgba(0,229,255,.4)} |
| | .chip-fallback{ color:#ff9ff3; border-color: rgba(255,159,243,.4)} |
| |
|
| | .charts{ display:grid; grid-template-columns: 1fr 1fr; gap:12px; margin-top:14px; animation: fadeIn 1s ease;} |
| | .chart-card{ background: rgba(255,255,255,.04); border:1px solid var(--border); border-radius:12px; padding:10px; transition: transform .3s ease;} |
| | .chart-card:hover{ transform: translateY(-4px) scale(1.01);} |
| | .chart-card h3{ margin:6px 6px 8px; font-size:14px; color:var(--muted)} |
| |
|
| | .table-card{ margin-top:14px; background: rgba(255,255,255,.04); border:1px solid var(--border); border-radius:12px; overflow:hidden; animation: fadeIn 1.2s ease;} |
| | .table-head{ |
| | display:flex; align-items:center; justify-content:space-between; padding:10px 12px; border-bottom:1px solid var(--border) |
| | } |
| | .table{ max-height: 360px; overflow:auto; animation: fadeIn .8s ease;} |
| | .row{ |
| | display:grid; grid-template-columns: 1fr 110px 90px; gap:10px; padding:10px 12px; |
| | border-bottom:1px dashed rgba(255,255,255,.08); |
| | transition: background .2s ease, transform .12s ease; |
| | animation: fadeInRow .6s ease; |
| | } |
| | @keyframes fadeInRow { |
| | from { opacity:0; transform: translateY(8px);} |
| | to { opacity:1; transform: translateY(0);} |
| | } |
| | .row:hover{ background: rgba(255,255,255,.03); transform: translateX(2px)} |
| | .cell{ font-size:14px; color:var(--text)} |
| | .badge{ padding:4px 10px; border-radius:999px; font-weight:800; font-size:12px} |
| | .badge.pos{ background: rgba(46,204,113,.15); color: var(--pos); border:1px solid rgba(46,204,113,.35); animation: pulseBadge 2s infinite;} |
| | .badge.neg{ background: rgba(255,92,122,.12); color: var(--neg); border:1px solid rgba(255,92,122,.35); animation: pulseBadge 2s infinite;} |
| | .badge.neu{ background: rgba(255,209,102,.12); color: var(--neu); border:1px solid rgba(255,209,102,.35); animation: pulseBadge 2s infinite;} |
| | @keyframes pulseBadge { |
| | 0%,100% { transform: scale(1); opacity:1;} |
| | 50% { transform: scale(1.08); opacity:.85;} |
| | } |
| |
|
| | .footer{ text-align:center; padding:26px 12px 60px; color:var(--muted); animation: fadeIn 2s ease;} |
| | .signature{ letter-spacing:.4px} |
| | .kavya{ |
| | background: linear-gradient(90deg, #fff, var(--accent), var(--accent2)); |
| | -webkit-background-clip:text; background-clip:text; color:transparent; |
| | text-shadow: 0 0 24px rgba(155,140,255,.45); |
| | animation: glowText 4s ease-in-out infinite alternate; |
| | } |
| | .heart{ filter: drop-shadow(0 0 10px rgba(255,150,200,.6)) } |
| |
|
| | |
| | @media (max-width: 900px){ |
| | .grid{ grid-template-columns: 1fr} |
| | .charts{ grid-template-columns: 1fr} |
| | .row{ grid-template-columns: 1fr 90px 80px} |
| | } |
| |
|