:root{--bg-body: #020617;--bg-elevated: #02081b;--bg-chat: #020b24;--bg-bubble-user: #020617;--bg-bubble-qosmos: #0ea5e9;--accent: #0ea5e9;--accent-soft: rgba(14, 165, 233, .5);--accent-soft-border: rgba(148, 163, 184, .6);--text-main: #e5e7eb;--text-muted: #9ca3af;--text-soft: #6b7280;--border-subtle: rgba(148, 163, 184, .28);--shadow-soft: 0 20px 60px rgba(15, 23, 42, .9);--radius-lg: 18px;--radius-md: 12px;--radius-pill: 999px;--header-height: 72px;--sidebar-width: 340px;--transition-fast: .2s ease-out;--transition-med: .35s cubic-bezier(.22, .61, .36, 1);--transition-sidebar: .4s cubic-bezier(.2, .8, .2, 1)}*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:var(--bg-body);color:var(--text-main);-webkit-font-smoothing:antialiased;overflow:hidden}#qosmos-background{position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at center,#020b24,#020617 70%);z-index:-2;pointer-events:none}button,input,textarea{font-family:inherit}.qosmos-app{height:100vh;width:100vw;position:relative;z-index:1;color:var(--text-main);overflow-x:hidden}.hero-light-trails{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;overflow:hidden;opacity:0;transition:opacity 1.5s ease-in-out;display:flex;justify-content:center}.hero-light-trails.visible{opacity:1}.hero-light-trails-inner{position:relative;width:100%;height:100%;margin:0 auto}.hero-streak{position:absolute;height:2px;border-radius:999px;background:linear-gradient(90deg,#38bdf800,#90e0ff59 12%,#bef2ffe6 40%,#3bd8ffe6 65%,#38bdf800);filter:blur(1.1px);opacity:.65;mix-blend-mode:screen;will-change:transform,opacity;animation-name:heroStreakDrift;animation-timing-function:linear;animation-iteration-count:infinite}.hero-streak--small{position:absolute;height:1px;border-radius:999px;background:linear-gradient(90deg,#38bdf800,#90e0ff59 12%,#bef2ffe6 40%,#3bd8ffe6 65%,#38bdf800);filter:blur(.9px);opacity:.45;mix-blend-mode:screen;will-change:transform,opacity;animation-name:heroStreakDrift;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes heroStreakDrift{0%{transform:translate3d(-140%,0,0);opacity:0}8%{opacity:.75}50%{opacity:.9}92%{opacity:.4}to{transform:translate3d(140%,0,0);opacity:0}}.app-header{position:fixed;top:0;left:0;right:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;z-index:40;display:flex;flex-direction:column;align-items:center;padding-inline:1.5rem;transition:height .55s cubic-bezier(.16,1,.3,1),padding .55s cubic-bezier(.16,1,.3,1)}.app-header--hero{height:100vh;padding-inline:1.5rem;justify-content:center;background-image:url(/image.png);background-size:cover;background-position:center;background-repeat:no-repeat;-webkit-backdrop-filter:none;backdrop-filter:none;overflow:hidden}.app-header--compact{height:var(--header-height);padding-inline:1.75rem;justify-content:center;overflow:visible}.app-header-inner{width:100%;max-width:1120px;display:flex;align-items:center;gap:.75rem;transition:transform .5s cubic-bezier(.16,1,.3,1),justify-content .5s cubic-bezier(.16,1,.3,1)}.app-header--hero .app-header-inner{justify-content:center;flex-direction:column;align-items:center;transform:none}.app-header--compact .app-header-inner{justify-content:space-between;flex-direction:row;align-items:center;transform:translateY(0)}.header-left{display:flex;align-items:center;gap:.75rem;flex:1}.header-right{display:flex;align-items:center;justify-content:flex-end;flex:0 0 auto;z-index:50}.header-spacer{flex:0 1 auto}.hero-user-profile{position:absolute;top:1.5rem;right:1.5rem;z-index:100}.sidebar-toggle{width:38px;height:38px;border-radius:999px;border:1px solid rgba(148,163,184,.4);background:radial-gradient(circle at top,#0f172ae6,#0f172afa);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;outline:none;box-shadow:0 10px 30px #0f172acc;z-index:60;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),opacity .25s ease-out;flex-shrink:0}.sidebar-toggle-icon{width:18px;height:18px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px}.sidebar-toggle-line{width:14px;height:2px;border-radius:999px;background:linear-gradient(90deg,var(--accent),#38bdf8)}.sidebar-toggle:hover{transform:translateY(-1px) scale(1.02);border-color:var(--accent-soft-border);box-shadow:0 18px 45px #0f172af2}.sidebar-toggle:active{transform:translateY(0) scale(.98);box-shadow:0 10px 25px #0f172ae6}.app-header--hero .sidebar-toggle{display:none;opacity:0;pointer-events:none}.brand-title-wrapper{display:flex;align-items:center;gap:.4rem;position:relative;transition:margin-left var(--transition-sidebar)}.qosmos-app.sidebar-open .brand-title-wrapper{margin-left:280px}.brand-title{font-size:clamp(2.2rem,2.5vw + 1.2rem,3rem);font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(120deg,#38bdf8,#0ea5e9,#6366f1);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 20px rgba(56,189,248,.45);line-height:1;transition:font-size .5s cubic-bezier(.16,1,.3,1),letter-spacing .5s cubic-bezier(.16,1,.3,1),text-shadow .5s ease-out}.app-header--compact .brand-title{font-size:1.15rem;letter-spacing:.22em;text-shadow:0 0 10px rgba(56,189,248,.55)}.qvantia-logo{display:inline-flex;align-items:baseline;gap:.35rem;padding:.4rem .9rem;border-radius:999px;border:1px solid rgba(148,163,184,.25);background:radial-gradient(circle at top left,#0f172a99,#0f172ad9);box-shadow:0 10px 30px #0f172a99;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),padding .4s ease-out}.q-logo-by{font-size:.75rem;color:var(--text-soft);font-weight:400;letter-spacing:.02em;font-family:Inter,sans-serif}.q-logo-text-brand{font-weight:700;color:#38bdf8;letter-spacing:.05em;font-size:.9rem;font-family:Inter,sans-serif;transition:font-size .4s ease-out}.qvantia-logo:hover{border-color:#38bdf866;background:radial-gradient(circle at top left,#0f172acc,#0f172af2);box-shadow:0 10px 30px #0f172acc}.app-header--hero .qvantia-logo{margin-bottom:.75rem;padding:.5rem 1.1rem}.app-header--hero .q-logo-text-brand{font-size:1rem}.app-header--hero .q-logo-by{font-size:.85rem}.app-header--compact .qvantia-logo{padding:.3rem .8rem}.app-header--compact .q-logo-text-brand{font-size:.85rem}.hero-start-box{margin-top:1.5rem;width:100%;max-width:540px;display:flex;align-items:center;gap:.6rem;border-radius:var(--radius-lg);background:radial-gradient(circle at top left,#0f172afa,#0f172afa);border:1px solid rgba(148,163,184,.5);box-shadow:var(--shadow-soft);padding:.55rem .55rem .55rem .9rem;transition:opacity .4s ease-out,transform .4s ease-out,max-height .45s ease-out,margin .45s ease-out}.hero-input{flex:1 1 auto;border:none;outline:none;background:transparent;color:var(--text-main);font-size:.95rem;padding:.5rem 0}.hero-input::-moz-placeholder{color:var(--text-soft)}.hero-input::placeholder{color:var(--text-soft)}.btn-primary{border-radius:var(--radius-pill);border:none;outline:none;cursor:pointer;padding:.5rem 1.25rem;background:linear-gradient(120deg,#0ea5e9,#22d3ee,#6366f1);color:#fff;font-weight:600;font-size:.9rem;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;box-shadow:0 0 0 1px #0f172ae6,0 14px 35px #38bdf899;transition:transform var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast),background-position .4s ease-out;background-size:180% 180%;background-position:0% 50%;white-space:nowrap}.btn-primary:hover{transform:translateY(-1px) scale(1.02);box-shadow:0 0 0 1px #0f172ae6,0 18px 45px #38bdf8d9;filter:brightness(1.05);background-position:100% 50%}.btn-primary:active{transform:translateY(0) scale(.97);box-shadow:0 0 0 1px #0f172ae6,0 10px 28px #38bdf8a6}.btn-icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center}.btn-icon svg{width:100%;height:100%}.qosmos-app.has-started-chat .hero-start-box{opacity:0;transform:translateY(-12px) scale(.98);margin-top:0;max-height:0;pointer-events:none}.chat-shell{position:fixed;top:100vh;left:0;right:0;bottom:0;opacity:0;pointer-events:none;transition:top .55s cubic-bezier(.16,1,.3,1),opacity .45s ease-out,padding-left var(--transition-sidebar);display:flex;justify-content:center;padding-inline:1.5rem;box-sizing:border-box}.qosmos-app.has-started-chat .chat-shell{top:var(--header-height);opacity:1;pointer-events:auto}.qosmos-app.sidebar-open .chat-shell{padding-left:var(--sidebar-width)}.chat-inner{position:relative;width:100%;max-width:1120px;background:transparent;border-radius:26px;border:none;box-shadow:none;overflow:visible;display:flex;flex-direction:column}.chat-messages{flex:1 1 auto;overflow-y:auto;background:transparent;padding:1.25rem 1.5rem 1.5rem;scroll-behavior:smooth}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:#94a3b873;border-radius:999px}.chat-input-area{flex:0 0 auto;border-top:none;background:#0206178c;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:.75rem 1rem .9rem;display:flex;flex-direction:column;gap:.55rem}.chat-input-row{display:flex;align-items:flex-end;gap:.75rem;padding-inline:.5rem}.chat-input{flex:1 1 auto;border-radius:var(--radius-lg);border:1px solid rgba(148,163,184,.55);background:radial-gradient(circle at top left,#0f172afa,#0f172afa);color:var(--text-main);font-size:.9rem;min-height:44px;max-height:120px;resize:none;padding:.65rem .9rem;outline:none;box-shadow:inset 0 0 0 1px #0f172ae6;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),background var(--transition-fast)}.chat-input::-moz-placeholder{color:var(--text-soft)}.chat-input::placeholder{color:var(--text-soft)}.chat-input:focus{border-color:var(--accent-soft-border);box-shadow:inset 0 0 0 1px #0f172ae6,0 0 0 1px #38bdf866,0 12px 30px #0f172ae6;transform:translateY(-1px);background:radial-gradient(circle at top left,#0f172a,#0f172a)}.btn-send{padding-inline:1.15rem;height:40px}.message-row{display:flex;margin-bottom:.75rem;opacity:0;transform:translateY(4px);animation:messageIn .35s ease-out forwards}.message-row--qosmos{justify-content:flex-start;align-items:flex-start;gap:.45rem}.message-row--user{justify-content:flex-end;align-items:flex-end}.message-avatar{flex:0 0 auto;width:28px;height:28px;border-radius:999px;background:radial-gradient(circle at top left,#22d3ee,#0ea5e9,#6366f1);display:inline-flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:#020617;box-shadow:0 0 0 2px #020617,0 0 0 3px #0ea5e999,0 0 15px #38bdf8d9}.message-col{display:flex;flex-direction:column;width:auto;max-width:min(75%,640px)}.message-col--wide{width:100%;max-width:100%}.message-col:has(table){max-width:min(95%,960px)}.message-bubble{max-width:100%;padding:.75rem 1rem;font-size:.92rem;line-height:1.5;border-radius:var(--radius-md);position:relative;box-shadow:0 10px 24px #0f172ad9;overflow-wrap:break-word;word-break:normal}.message-bubble--qosmos{background:radial-gradient(circle at top,#0f172afa,#0f172a);color:var(--text-main);border:1px solid rgba(148,163,184,.45);border-radius:18px 18px 18px 6px}.message-bubble--user{background:var(--bg-bubble-qosmos);color:#e5f9ff;border-radius:18px 18px 6px;white-space:pre-wrap}.message-meta{margin-top:.2rem;font-size:.7rem;color:var(--text-soft)}.message-row--user .message-meta{margin-right:.2rem}.message-row--qosmos .message-meta{padding-left:.2rem}@keyframes messageIn{0%{opacity:0;transform:translateY(6px) translate(4px)}to{opacity:1;transform:translateY(0) translate(0)}}.sidebar{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width);background:linear-gradient(135deg,#0f172af5,#0f172afa);border-right:1px solid rgba(148,163,184,.45);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transform:translate(-100%);transition:transform var(--transition-sidebar);z-index:30;display:flex;flex-direction:column;padding:calc(var(--header-height) + .5rem) .85rem .75rem .85rem}.qosmos-app.sidebar-open .sidebar{transform:translate(0)}.sidebar-header-row{margin-bottom:.7rem;padding-inline:.1rem}.sidebar-new-chat{width:100%;display:flex;justify-content:center;font-size:.85rem;padding:.5rem .75rem;border-radius:var(--radius-pill);background:linear-gradient(120deg,#22d3ee,#38bdf8,#0ea5e9);box-shadow:0 4px 15px #38bdf866;filter:brightness(1.05);font-weight:600;transition:all .2s ease-out}.sidebar-new-chat:hover{transform:translateY(-1px) scale(1.02);filter:brightness(1.15);box-shadow:0 6px 20px #38bdf899}.sidebar-new-chat:active{transform:scale(.98);filter:brightness(1)}.sidebar-scroller{flex:1 1 auto;overflow-y:auto;padding-right:.25rem;padding-left:.1rem;padding-bottom:.25rem}.sidebar-scroller::-webkit-scrollbar{width:6px}.sidebar-scroller::-webkit-scrollbar-track{background:transparent}.sidebar-scroller::-webkit-scrollbar-thumb{background:#94a3b873;border-radius:999px}.sidebar-conversation{border-radius:16px;padding:.55rem .6rem .5rem;border:1px solid rgba(148,163,184,.35);background:radial-gradient(circle at top left,#0f172af2,#0f172afa);margin-bottom:.45rem;font-size:.78rem;cursor:pointer;display:flex;flex-direction:column;gap:.25rem;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.sidebar-conversation:hover{transform:translateY(-1px);border-color:var(--accent-soft-border);box-shadow:0 14px 30px #0f172ae6;background:linear-gradient(to top,rgba(56,189,248,.22),transparent 45%),radial-gradient(circle at top left,#0f172a,#0f172a)}.sidebar-conversation-title{font-weight:600;color:#e5e7eb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-conversation-tags{display:flex;flex-wrap:wrap;gap:.25rem}.sidebar-tag-pill{border-radius:999px;border:1px solid rgba(148,163,184,.5);padding:.08rem .45rem;font-size:.68rem;color:var(--text-soft);text-transform:lowercase}.sidebar-conversation-meta{font-size:.66rem;color:var(--text-muted)}.sidebar-footer{flex:0 0 auto;padding:.75rem .1rem 0;border-top:1px solid rgba(148,163,184,.3);margin-top:.5rem}.btn-delete-all{width:100%;display:flex;justify-content:center;font-size:.8rem;padding:.5rem .75rem;border-radius:var(--radius-pill);background:linear-gradient(120deg,#dc2626,#ef4444);border:1px solid rgba(239,68,68,.6);box-shadow:0 4px 15px #dc26264d;color:#fff;font-weight:600;cursor:pointer;transition:all .2s ease-out}.btn-delete-all:hover:not(:disabled){transform:translateY(-1px) scale(1.02);filter:brightness(1.15);box-shadow:0 6px 20px #dc262680;background:linear-gradient(120deg,#ef4444,#f87171)}.btn-delete-all:active:not(:disabled){transform:scale(.98);filter:brightness(1)}.btn-delete-all:disabled{opacity:.4;cursor:not-allowed;filter:grayscale(.5)}@media (max-width: 768px){.app-header{padding-inline:1rem}.chat-shell{padding-inline:.75rem}.chat-inner{border-radius:20px}.chat-messages{padding:.9rem .85rem 1rem}.chat-input-area{padding-inline:.65rem}.sidebar{width:82vw}.brand-title{font-size:clamp(1.8rem,6vw,2.2rem)}.app-header--compact .brand-title{font-size:1.02rem}.qosmos-app.sidebar-open .chat-shell{padding-left:0}.qosmos-app.sidebar-open .brand-title-wrapper{margin-left:0}}@media (max-width: 480px){.hero-start-box{flex-direction:column;align-items:stretch;padding-inline:.75rem}.btn-primary{width:100%;justify-content:center}.sidebar-header-row{padding-inline:0}}.loading-dots{display:inline-flex;align-items:center;gap:4px}.loading-dot{width:6px;height:6px;border-radius:50%;background:linear-gradient(120deg,#00f0ff,#0ea5e9);animation:loadingDotPulse 1.4s ease-in-out infinite}.loading-dot:nth-child(1){animation-delay:0s}.loading-dot:nth-child(2){animation-delay:.2s}.loading-dot:nth-child(3){animation-delay:.4s}@keyframes loadingDotPulse{0%,60%,to{transform:scale(1);opacity:.6}30%{transform:scale(1.3);opacity:1}}.reasoning-steps{margin-bottom:6px;font-size:.82rem;color:#ffffffa6}.reasoning-steps-toggle{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:#ffffff8c;cursor:pointer;padding:2px 0;font-size:.78rem;font-family:inherit;transition:color .15s}.reasoning-steps-toggle:hover{color:#ffffffd9}.reasoning-steps-chevron{display:inline-flex;transition:transform .2s}.reasoning-steps-chevron.expanded{transform:rotate(90deg)}.reasoning-steps-title{font-weight:500}.reasoning-steps-count{background:#00f0ff1f;color:#00f0ff;border-radius:8px;padding:0 6px;font-size:.7rem;font-weight:600;line-height:1.6}.reasoning-steps-list{list-style:none;margin:4px 0 0;padding:0 0 0 4px;border-left:2px solid rgba(0,240,255,.15)}.reasoning-step{display:flex;align-items:center;gap:6px;padding:2px 0 2px 8px;animation:reasoningStepIn .25s ease-out}.reasoning-step--done{color:#ffffff73}.reasoning-step--running{color:#00f0ff}.reasoning-step-icon{display:inline-flex;flex-shrink:0}.reasoning-spinner{animation:reasoningSpin .8s linear infinite}.reasoning-step-label{font-size:.8rem}@keyframes reasoningSpin{to{transform:rotate(360deg)}}@keyframes reasoningStepIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.markdown-content{line-height:1.65}.markdown-h1,.markdown-h2,.markdown-h3{background:none;-webkit-background-clip:initial;background-clip:initial;color:#fff;text-shadow:none;margin:.75rem 0 .35rem}.markdown-h1{font-size:1.5rem}.markdown-h2{font-size:1.2rem}.markdown-h3{font-size:1.05rem}.markdown-p{margin:.5rem 0;color:#fff}.markdown-ul,.markdown-ol{margin:.5rem 0;padding-left:1.2rem;list-style-position:outside;color:#fff}.markdown-li{margin:.35rem 0;padding-left:.1rem;color:#fff}.markdown-li::marker{color:#fff}.markdown-li>.markdown-p,.markdown-li p{margin:0}.markdown-li>p:first-child,.markdown-li>.markdown-p:first-child{display:inline}.markdown-li>p:first-child+.markdown-ul,.markdown-li>p:first-child+.markdown-ol,.markdown-li>.markdown-p:first-child+.markdown-ul,.markdown-li>.markdown-p:first-child+.markdown-ol{margin-top:.35rem}.markdown-strong{color:#fff;font-weight:700}.markdown-em{color:#fff;font-style:italic}.markdown-content{overflow-x:auto}.markdown-content table{width:-moz-max-content;width:max-content;min-width:100%;border-collapse:collapse;margin:.75rem 0;font-size:.9rem;border:1px solid rgba(56,189,248,.25);border-radius:8px;overflow:hidden}.markdown-content thead{background:#38bdf81a}.markdown-content th{color:#e2e8f0;font-weight:600;text-align:left;padding:.5rem .75rem;border-bottom:1px solid rgba(56,189,248,.3);white-space:nowrap}.markdown-content td{color:#cbd5e1;padding:.4rem .75rem;border-bottom:1px solid rgba(56,189,248,.1)}.markdown-content tbody tr:last-child td{border-bottom:none}.markdown-content tbody tr:hover{background:#38bdf80d}.table-export-wrapper{position:relative}.table-export-bar{display:flex;justify-content:flex-end;gap:.4rem;margin-bottom:.25rem}.table-export-btn{display:inline-flex;align-items:center;gap:.3rem;background:#38bdf81a;color:#94a3b8;border:1px solid rgba(56,189,248,.2);border-radius:6px;padding:.2rem .5rem;font-size:.7rem;font-weight:500;cursor:pointer;transition:all .15s ease}.table-export-btn:hover{background:#38bdf833;color:#e2e8f0;border-color:#38bdf866}.message-dashboard{margin-top:.75rem;width:100%;max-width:100%}.dashboard-chart-container{background:linear-gradient(135deg,#0f172af2,#0f172afa);border:1px solid rgba(56,189,248,.4);border-radius:20px;padding:1.5rem;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 0 0 1px #38bdf81a,0 20px 60px #0f172ae6,inset 0 1px #38bdf833;transition:all .3s ease-out}.dashboard-chart-container:hover{border-color:#38bdf899;box-shadow:0 0 0 1px #38bdf833,0 25px 70px #0f172af2,inset 0 1px #38bdf84d,0 0 30px #38bdf826;transform:translateY(-2px)}.dashboard-chart-header{margin-bottom:1.2rem;padding-bottom:.8rem;border-bottom:1px solid rgba(56,189,248,.25);display:flex;justify-content:space-between;align-items:center;gap:1rem}.dashboard-chart-title{font-size:1.3rem;font-weight:700;margin:0;background:linear-gradient(120deg,#00f0ff,#0ea5e9,#6366f1);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 20px rgba(56,189,248,.3);flex:1}.dashboard-download-wrapper{position:relative}.dashboard-download-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:linear-gradient(120deg,#0ea5e9,#22d3ee);border:1px solid rgba(56,189,248,.6);border-radius:999px;color:#fff;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .2s ease-out;box-shadow:0 4px 12px #38bdf84d}.dashboard-download-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #38bdf880;background:linear-gradient(120deg,#22d3ee,#38bdf8)}.dashboard-download-btn:active{transform:translateY(0)}.dashboard-download-menu{position:absolute;top:calc(100% + 8px);right:0;background:linear-gradient(135deg,#0f172afa,#0f172a);border:1px solid rgba(56,189,248,.5);border-radius:12px;padding:.5rem;min-width:180px;box-shadow:0 20px 40px #0f172af2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:100;animation:menuFadeIn .2s ease-out}@keyframes menuFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dashboard-download-menu button{display:block;width:100%;padding:.6rem 1rem;background:transparent;border:none;border-radius:8px;color:#e5e7eb;font-weight:500;font-size:.9rem;text-align:left;cursor:pointer;transition:all .2s ease-out}.dashboard-download-menu button:hover{background:#38bdf826;color:#00f0ff;transform:translate(4px)}.dashboard-chart-body{position:relative;min-height:450px}button:disabled{opacity:.5;cursor:not-allowed}input:disabled,textarea:disabled{opacity:.6;cursor:not-allowed}.auth-container{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:100}.auth-box{width:100%;max-width:420px;background:linear-gradient(135deg,#0f172afa,#0f172a);border:1px solid rgba(56,189,248,.4);border-radius:24px;padding:2.5rem 2rem;box-shadow:0 0 0 1px #38bdf81a,0 30px 80px #0f172af2,inset 0 1px #38bdf833}.auth-header{text-align:center;margin-bottom:2rem}.auth-title{font-size:2.5rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(120deg,#38bdf8,#0ea5e9,#6366f1);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 20px rgba(56,189,248,.45);margin:0 0 .5rem}.auth-subtitle{color:var(--text-muted);font-size:.95rem;margin:0}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.auth-error{padding:.75rem 1rem;background:#dc262626;border:1px solid rgba(239,68,68,.5);border-radius:12px;color:#fca5a5;font-size:.875rem;line-height:1.5}.auth-field{display:flex;flex-direction:column;gap:.5rem}.auth-label{color:var(--text-main);font-size:.875rem;font-weight:600;margin:0}.auth-input{width:100%;padding:.75rem 1rem;background:radial-gradient(circle at top left,#0f172afa,#0f172afa);border:1px solid rgba(148,163,184,.55);border-radius:12px;color:var(--text-main);font-size:.95rem;outline:none;transition:all .2s ease-out}.auth-input::-moz-placeholder{color:var(--text-soft)}.auth-input::placeholder{color:var(--text-soft)}.auth-input:focus{border-color:var(--accent-soft-border);box-shadow:0 0 0 1px #38bdf866;background:radial-gradient(circle at top left,#0f172a,#0f172a)}.auth-button{width:100%;padding:.875rem 1.5rem;background:linear-gradient(120deg,#0ea5e9,#22d3ee,#6366f1);border:none;border-radius:12px;color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease-out;box-shadow:0 14px 35px #38bdf866;margin-top:.5rem}.auth-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 18px 45px #38bdf899;filter:brightness(1.05)}.auth-button:active:not(:disabled){transform:translateY(0)}.auth-button:disabled{opacity:.6;cursor:not-allowed}.auth-footer{margin-top:1.5rem;text-align:center;padding-top:1.5rem;border-top:1px solid rgba(148,163,184,.25)}.auth-toggle{background:none;border:none;color:var(--accent);font-size:.9rem;font-weight:500;cursor:pointer;padding:0;transition:color .2s ease-out}.auth-toggle:hover:not(:disabled){color:#38bdf8;text-decoration:underline}.auth-toggle:disabled{opacity:.5;cursor:not-allowed}.user-profile{position:relative;margin-left:.75rem;z-index:9999}.user-profile-avatar{width:38px;height:38px;border-radius:999px;border:1px solid rgba(148,163,184,.4);background:linear-gradient(135deg,#0ea5e9,#22d3ee,#6366f1);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;outline:none;box-shadow:0 10px 30px #0f172acc;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast);font-size:.875rem;font-weight:700;color:#fff;letter-spacing:.02em}.user-profile-avatar:hover{transform:translateY(-1px) scale(1.02);border-color:var(--accent-soft-border);box-shadow:0 18px 45px #0f172af2}.user-profile-avatar:active{transform:translateY(0) scale(.98);box-shadow:0 10px 25px #0f172ae6}.user-profile-menu{position:absolute;top:calc(100% + 12px);right:0;background:linear-gradient(135deg,#0f172afa,#0f172a);border:1px solid rgba(56,189,248,.5);border-radius:16px;padding:.75rem;min-width:240px;box-shadow:0 20px 40px #0f172af2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:10000;animation:menuFadeIn .2s ease-out}.user-profile-email{padding:.75rem 1rem;color:var(--text-main);font-size:.875rem;border-bottom:1px solid rgba(148,163,184,.25);margin-bottom:.5rem;word-break:break-all}.user-profile-logout{width:100%;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:transparent;border:none;border-radius:10px;color:#f87171;font-weight:500;font-size:.9rem;cursor:pointer;transition:all .2s ease-out}.user-profile-logout:hover{background:#ef444426;transform:translate(4px)}.user-profile-logout:active{transform:translate(2px)}
