@import"https://fonts.googleapis.com/css2?family=Orbitron:wght@400;700&family=Inter:wght@400;600&display=swap";html,body{height:100%;margin:0;font-family:Inter,sans-serif;background:radial-gradient(circle at 30% 30%,#023020,#010d09 60%,#000);background-size:300% 300%;animation:galaxyDrift 25s ease-in-out infinite;color:#d7fbe8;overflow-x:hidden;overflow-y:auto;scroll-behavior:smooth}@keyframes galaxyDrift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(2px 2px at 20% 30%,rgba(0,255,200,.4),transparent),radial-gradient(1px 1px at 70% 80%,rgba(0,255,150,.25),transparent),radial-gradient(2px 2px at 40% 60%,rgba(0,255,100,.3),transparent);background-size:400px 400px;animation:twinkle 8s ease-in-out infinite alternate;pointer-events:none}@keyframes twinkle{0%{opacity:.5}to{opacity:.9}}.app-container{width:95%;max-width:1200px;background:#023020a6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(9,121,105,.5);padding:2rem;border-radius:20px;box-shadow:0 0 40px #00ff961a;display:flex;flex-direction:column;gap:2rem;text-align:center;margin:1rem auto;animation:fadeIn 1s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}h1,h2{font-family:Orbitron,sans-serif;color:#70ffbf;text-shadow:0 0 15px rgba(0,255,150,.7);letter-spacing:2px;margin:0}h1{font-size:clamp(1.5rem,4vw,2rem)}h2{font-size:clamp(1rem,2.5vw,1.2rem)}.control-bar{display:flex;justify-content:center;align-items:normal;gap:1rem;flex-wrap:wrap;width:100%}.upload-button{background:linear-gradient(90deg,#065549,#09b37a);color:#e8fff6;border:none;font-size:clamp(.9rem,1vw,1rem);font-weight:700;border-radius:10px;cursor:pointer;box-shadow:0 0 12px #00ff9633;transition:transform .3s,box-shadow .3s;padding:10px 15px;width:300px;white-space:nowrap}.upload-button:hover{transform:translateY(-2px);box-shadow:0 0 25px #33af67cc}.chart-controls{display:flex;justify-content:center;width:auto}.chart-controls select{width:300px;padding:10px 16px;border-radius:10px;border:none;outline:none;font-size:clamp(.9rem,1vw,1rem);background:linear-gradient(90deg,#022d1f,#065549);color:#bdfcd6;box-shadow:0 0 12px #00ff9633;-webkit-appearance:none;-moz-appearance:none;appearance:none}.chart-controls select option{background-color:#022d1f;color:#bdfcd6}.chart-controls select:hover{background:linear-gradient(90deg,#33af67,#09b37a)}.chart-data-wrapper{display:flex;flex-direction:row;justify-content:space-between;align-items:stretch;gap:1.5rem;flex-wrap:wrap;width:100%}.chart-container{flex:2;min-width:300px;background:#09796926;border-radius:16px;padding:1rem;box-shadow:inset 0 0 20px #00ff6426;animation:pulseBorder 4s infinite;overflow:hidden}@keyframes pulseBorder{0%{box-shadow:inset 0 0 15px #00ff9633}50%{box-shadow:inset 0 0 30px #00ff9666}to{box-shadow:inset 0 0 15px #00ff9633}}.data-preview{flex:1;background:#09796940;border-radius:14px;padding:1rem;overflow:auto;max-height:450px;box-shadow:0 0 20px #00ff961a;transition:transform .4s ease,box-shadow .3s;width:100%}.data-preview table{width:100%;border-collapse:collapse;font-size:clamp(.75rem,1.8vw,.9rem)}.data-preview th{background:linear-gradient(90deg,#065549,#097969);padding:6px;color:#e8fff6}.data-preview td{padding:5px;border:1px solid rgba(2,48,32,.3);color:#caffea}.data-preview tr:nth-child(2n){background-color:#09796933}.numeric-summary{background:#09796940;border-radius:14px;padding:1rem;box-shadow:0 0 15px #00ff641a;text-align:left}@media (max-width: 900px){.chart-data-wrapper{flex-direction:column;align-items:center}.chart-container,.data-preview{width:100%;max-width:100%}}@media (max-width: 600px){html,body{padding:.5rem;overflow-x:hidden}.app-container{width:100%;padding:1rem;border-radius:12px}.chart-container,.data-preview{transform:scale(.95);transform-origin:top center}.upload-button{width:100%;padding:.8rem}.chart-controls select{width:100%}.data-preview{max-height:300px}table,th,td{word-break:break-word}.control-bar{flex-direction:column;gap:.5rem}}
