@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#080b13;--panel:#101520;--panel2:#141b2a;--line:rgba(179,201,246,.11);--text:#edf2ff;--muted:#8a96b0;--accent:#87a6ff;--accent2:#a78cff;--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--text);font:14px/1.65 Manrope,system-ui,sans-serif;overflow:hidden}button,textarea,input{font:inherit}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,textarea:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.45}
.ambient{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 80% 10%,#5264a51a,transparent 40%),radial-gradient(ellipse at 30% 95%,#643c9816,transparent 50%);z-index:0}
.shell{height:100%;height:100dvh;display:flex;position:relative;z-index:1}.sidebar{width:264px;flex:0 0 264px;padding:27px 16px 18px;display:flex;flex-direction:column;border-right:1px solid var(--line);background:#0b101bc9;backdrop-filter:blur(22px)}.brand{display:flex;align-items:center;gap:13px;padding:0 12px 32px}.brand-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;font-size:25px;font-weight:800;position:relative;background:linear-gradient(135deg,#29396e,#6552a2);box-shadow:0 6px 26px #7890ff27}.brand-dot{position:absolute;width:6px;height:6px;border-radius:50%;background:#bee7ff;right:7px;top:8px}.brand strong{display:block;letter-spacing:.3px;font-size:16px}.brand strong span{color:#a8b9ff}.brand small{color:var(--muted);font-size:9px;letter-spacing:2px}.new-chat{display:flex;align-items:center;gap:12px;width:100%;padding:13px 16px;background:#667ffe20;border:1px solid #8aabff36;border-radius:13px;text-align:left;font-weight:700;transition:.25s}.new-chat:hover{background:#7a96ff32;transform:translateY(-2px)}.new-chat span{font-size:21px;line-height:1}.side-label{font-size:10px;letter-spacing:2px;color:#65738e;padding:25px 14px 10px}.side-item{padding:13px 15px;display:flex;gap:13px;align-items:center;border:0;background:transparent;border-radius:12px;color:#9faac5;text-align:left}.side-item:hover{background:#ffffff0a;color:white}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding:22px 11px 0;color:#a5b4cd;font-size:11px}.status-dot{width:7px;height:7px;display:inline-block;background:#7bd3b3;border-radius:50%;box-shadow:0 0 12px #6ac9a488;margin-right:7px}.sidebar-bottom small,.sidebar-bottom a,.sidebar-bottom .credit{display:block;margin-top:9px;color:#7e8aa6}.sidebar-bottom a{color:#afc6ff;margin-top:17px}.credit{font-size:10px}
.main{display:flex;flex-direction:column;min-width:0;flex:1;position:relative}.topbar{height:72px;min-height:72px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 28px;background:#0b1016a3;backdrop-filter:blur(18px)}.top-title{display:flex;align-items:center;gap:11px}.top-title strong{font-size:14px}.top-title small{display:block;color:#8290a9;font-size:11px}.header-logo{width:34px;height:34px;display:grid;place-items:center;border:1px solid #86a4ff40;border-radius:11px;background:#8a9fff19;color:#aac9ff;font-size:18px}.top-actions{display:flex;gap:9px}.icon-button,.menu-button{width:37px;height:37px;border:1px solid var(--line);border-radius:11px;background:#ffffff05;color:#b0bbd1;font-size:19px}.icon-button:hover,.menu-button:hover{background:#ffffff12}.menu-button{display:none}
.chat-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-color:#56617a55 transparent}.conversation{width:min(860px,100%);margin:auto;padding:35px 32px 55px}.welcome{max-width:720px;margin:6vh auto 0;text-align:center;animation:rise .6s var(--ease) both}.hero-mark{height:126px;width:126px;margin:0 auto 26px;display:grid;place-items:center;position:relative}.hero-mark span{position:relative;z-index:2;width:92px;height:92px;display:grid;place-items:center;border-radius:29px;background:linear-gradient(150deg,#233457,#3d3973);border:1px solid #a1b5ff55;box-shadow:0 0 60px #7786ff2e;font-size:62px;font-weight:800;text-shadow:0 0 20px #9cbdff66;animation:float 6s ease-in-out infinite}.hero-mark i{position:absolute;width:123px;height:66px;border:1px solid #a6b5ff50;border-radius:50%;transform:rotate(-30deg);animation:orbit 14s linear infinite}.hero-mark i:last-child{width:112px;height:119px;border-color:#b18bff4a;animation-direction:reverse;animation-duration:21s}.eyebrow{font-size:10px;font-weight:800;letter-spacing:3px;color:#9daee3}.welcome h1{font-size:clamp(29px,4vw,48px);line-height:1.18;letter-spacing:-1.6px;margin:13px 0 16px}.welcome h1 span{background:linear-gradient(90deg,#a8caff,#ba9cff);background-clip:text;-webkit-background-clip:text;color:transparent}.welcome>p{max-width:580px;margin:0 auto 31px;color:#99a5bc;font-size:14px}.starter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;text-align:left}.starter-grid button{padding:17px 19px;text-align:left;background:linear-gradient(140deg,#151d2cdb,#101522db);border:1px solid var(--line);border-radius:16px;transition:.25s}.starter-grid button:hover{background:#202942;transform:translateY(-3px);border-color:#91acff66;box-shadow:0 10px 35px #0003}.starter-grid button>span{font-size:20px;color:#a0baff;display:block}.starter-grid strong{display:block;margin:4px 0 2px}.starter-grid small{color:var(--muted)}
.message{display:flex;margin:16px 0;gap:12px;animation:rise .3s var(--ease) both}.message.user{justify-content:flex-end}.avatar{width:31px;height:31px;display:grid;place-items:center;border-radius:10px;flex-shrink:0;background:#6b86ff25;border:1px solid #a3bcff36;color:#afc3ff;font-weight:800}.message-body{max-width:min(680px,85%);min-width:0}.message.user .message-body{max-width:min(620px,85%)}.message-meta{font-size:11px;color:#8091b2;margin:0 0 6px 2px}.message-bubble{white-space:pre-wrap;overflow-wrap:anywhere;padding:15px 18px;border-radius:17px;background:#151d2cde;border:1px solid #ffffff13;line-height:1.8}.message.user .message-bubble{background:#6483e929;border-color:#7e9bf13f;border-top-right-radius:5px}.message.ai .message-bubble{border-top-left-radius:5px}.message-link{color:#b0cbff;text-decoration:underline;text-decoration-color:#7e9df177;text-underline-offset:3px}.message-actions{display:flex;margin-top:7px;gap:7px}.tiny-button{padding:4px 10px;border:1px solid transparent;color:#8594b3;border-radius:7px;background:transparent;font-size:11px}.tiny-button:hover{border-color:#ffffff1a;color:white}.typing{display:flex;align-items:center;gap:6px;padding:8px 0}.typing i{width:6px;height:6px;border-radius:50%;background:#a6b9ff;animation:pulse 1s infinite alternate}.typing i:nth-child(2){animation-delay:.17s}.typing i:nth-child(3){animation-delay:.34s}
.composer-zone{width:min(870px,100%);margin:auto;padding:0 22px max(17px,env(safe-area-inset-bottom))}.composer{display:flex;align-items:end;gap:10px;padding:10px 10px 10px 19px;background:#151c2adf;border:1px solid #9aafff30;border-radius:19px;box-shadow:0 10px 38px #0004;transition:border-color .2s}.composer:focus-within{border-color:#9fb4ff80}.composer textarea{flex:1;border:0;outline:none;resize:none;min-height:29px;max-height:155px;padding:5px 0;background:transparent;color:white;font-size:14px;line-height:1.6;overflow:auto}.composer textarea::placeholder{color:#7e8ba3}.send-button{width:38px;height:38px;border:0;border-radius:12px;background:linear-gradient(135deg,#96b7ff,#a393ff);color:#131c32;font-size:23px;font-weight:800;transition:.2s}.send-button:hover:not(:disabled){transform:scale(1.06)}.composer-note{text-align:center;font-size:10px;color:#74819c;margin:11px 0 0}.suggestions{display:flex;gap:8px;overflow-x:auto;padding:0 0 9px;scrollbar-width:none}.suggestions:empty{display:none}.suggestions button{background:#171e30;border:1px solid #9bb8ff24;border-radius:99px;padding:7px 12px;font-size:11px;color:#b6c6e3;white-space:nowrap}.suggestions button:hover{background:#263455}
.mobile-overlay{position:fixed;inset:0;background:#0009;z-index:40}.topics-dialog{width:min(480px,calc(100vw - 32px));max-height:min(650px,85dvh);background:#101725;border:1px solid #99b6ff30;border-radius:23px;color:var(--text);padding:0;box-shadow:0 25px 90px #000b}.topics-dialog::backdrop{background:#010409b8;backdrop-filter:blur(5px)}.dialog-head{padding:22px 24px 15px;display:flex;justify-content:space-between;align-items:center}.dialog-head small{color:#889ed1;letter-spacing:2px;font-size:10px}.dialog-head h2{font-size:22px;margin:0}.dialog-head button{background:#ffffff0b;border:0;border-radius:9px;color:#adbcd8;font-size:24px;width:35px;height:35px}.topics-dialog input{display:block;width:calc(100% - 48px);margin:0 24px 15px;padding:12px 14px;border-radius:11px;background:#080e1b;border:1px solid #ffffff19;color:var(--text);outline:none}.topics-list{max-height:55dvh;overflow:auto;padding:0 16px 16px}.topics-list button{width:100%;display:block;padding:13px 12px;border-radius:10px;text-align:left;border:0;background:transparent;color:#c1cde4}.topics-list button:hover{background:#ffffff0b}
@keyframes pulse{to{opacity:.35;transform:translateY(-3px)}}@keyframes rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes float{50%{transform:translateY(-9px)}}@keyframes orbit{to{transform:rotate(330deg)}}
@media(max-width:800px){.sidebar{position:fixed;z-index:50;inset:0 auto 0 0;transform:translateX(-105%);transition:transform .25s;width:266px}.sidebar.open{transform:translateX(0)}.menu-button{display:block}.topbar{padding:0 16px}.conversation{padding:24px 18px}.welcome{margin-top:3vh}.composer-zone{padding:0 13px max(13px,env(safe-area-inset-bottom))}.message-body{max-width:90%}}@media(max-width:450px){.starter-grid{gap:9px}.starter-grid button{padding:13px}.welcome>p{font-size:12px}.hero-mark{margin-bottom:12px;height:115px}.conversation{padding:18px 14px}.topbar{height:62px;min-height:62px}.composer-note{font-size:9px}.message-bubble{padding:12px 13px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* NEXORA AI 2.1 / motion & visual system */
:root{--glass:rgba(17,24,42,.62);--edge:rgba(177,198,255,.17);--glow:rgba(116,142,255,.27)}
body{background:#070a12}.ambient{overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 53% 42%,#10152a,#080b13 70%)}.ambient-grid{position:absolute;inset:-50%;background-image:linear-gradient(#8bafff0c 1px,transparent 1px),linear-gradient(90deg,#8bafff0c 1px,transparent 1px);background-size:65px 65px;transform:perspective(600px) rotateX(26deg) scale(1.2);mask-image:radial-gradient(ellipse at center,#0008,transparent 60%);animation:grid-drift 35s linear infinite}.aurora{position:absolute;width:min(55vw,750px);height:min(55vw,750px);border-radius:50%;filter:blur(88px);opacity:.3;will-change:transform;animation:aurora-drift 20s ease-in-out infinite alternate}.aurora-one{top:-40%;right:-12%;background:#5365ce}.aurora-two{bottom:-54%;left:9%;background:#6335a3;animation-delay:-7s;animation-duration:24s}.aurora-three{top:30%;left:33%;width:260px;height:260px;background:#267fbd;opacity:.13;animation-delay:-12s}.noise-layer{position:absolute;inset:0;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.15'/%3E%3C/svg%3E");mix-blend-mode:screen}.stars{position:absolute;inset:0}.star{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:50%;background:#dbeaff;box-shadow:0 0 9px #b2c7ffb0;opacity:var(--opacity);animation:star-twinkle var(--duration) ease-in-out infinite alternate;animation-delay:var(--delay)}
.shell{animation:page-enter .8s cubic-bezier(.2,.8,.2,1) both}.sidebar{background:linear-gradient(160deg,#0d1423e8,#0b0f1ae0);border-right:1px solid #a4b6ff24;box-shadow:15px 0 50px #0002}.brand-icon{overflow:hidden}.brand-icon:after{content:"";position:absolute;inset:-120%;background:linear-gradient(115deg,transparent 42%,#ffffff40 50%,transparent 58%);transform:translateX(-90%);animation:shimmer 6s ease-in-out infinite}.new-chat{position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff1b,0 0 35px #667dff0a}.new-chat:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 15%,#ffffff0c,transparent 80%);transform:translateX(-100%);transition:transform .6s}.new-chat:hover:after{transform:translateX(100%)}.side-item{transition:transform .25s,background .25s,color .25s}.side-item:hover{transform:translateX(4px)}
.topbar{background:#0c1321b5;box-shadow:0 10px 35px #0002}.header-logo{box-shadow:inset 0 1px #ffffff29,0 0 24px #87a6ff18;animation:logo-breathe 5s ease-in-out infinite}.top-title strong{letter-spacing:.3px}.icon-button{transition:transform .25s,background .25s,border-color .25s}.icon-button:hover{transform:translateY(-2px);border-color:#91aaff55}
.hero-mark{height:150px;width:150px;margin-bottom:15px}.hero-mark:before{content:"";position:absolute;inset:6px;border-radius:50%;background:radial-gradient(circle,#8e9fff23,transparent 65%);filter:blur(9px);animation:halo-pulse 4s ease-in-out infinite}.hero-mark span{width:105px;height:105px;border-radius:32px;background:linear-gradient(145deg,#2a416b,#39346c 85%);border:1px solid #b3caff75;box-shadow:inset 0 1px #ffffff3d,0 15px 60px #536dfb43,0 0 100px #879fff20;font-size:68px;transform-style:preserve-3d;animation:hero-levitate 6s ease-in-out infinite}.hero-mark i{width:149px;height:77px;border-color:#afc9ff80;box-shadow:0 0 12px #718efb18}.hero-mark i:last-child{width:134px;height:142px;border-color:#b18bff65}.eyebrow{display:flex;align-items:center;justify-content:center;gap:11px;letter-spacing:2px}.live-spark{width:7px;height:7px;background:#a2e8d4;border-radius:50%;box-shadow:0 0 0 4px #a2e8d419,0 0 14px #8fffe1;animation:live-pulse 2s infinite}.eyebrow-line{height:1px;width:24px;background:linear-gradient(90deg,#a3baff70,transparent)}.welcome h1{font-weight:800;text-shadow:0 4px 25px #0005}.gradient-title{background:linear-gradient(110deg,#c5e8ff 0%,#9aabff 35%,#ce9cff 70%,#c5e8ff 100%)!important;background-size:250% 100%!important;background-clip:text!important;-webkit-background-clip:text!important;animation:gradient-flow 7s ease-in-out infinite}.welcome>p{line-height:1.9}
.starter-grid{perspective:1000px}.starter-grid button{position:relative;overflow:hidden;min-height:110px;background:linear-gradient(135deg,#1c2638b3,#101626a3);backdrop-filter:blur(18px);border:1px solid #b7caff25;box-shadow:inset 0 1px #ffffff0d,0 14px 30px #0002;transform-style:preserve-3d;transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s,border-color .28s}.starter-grid button:before{content:"";position:absolute;inset:0;background:radial-gradient(250px circle at var(--mx,50%) var(--my,50%),#a6b8ff23,transparent 70%);opacity:0;transition:opacity .3s;pointer-events:none}.starter-grid button:hover:before{opacity:1}.starter-grid button:hover{transform:translateY(-5px);box-shadow:0 18px 48px #0006,0 0 30px #758dff1b;border-color:#afc5ff6b}.starter-grid button>span{font-size:24px;filter:drop-shadow(0 0 8px #94baff60)}.starter-grid button strong,.starter-grid button small{position:relative}
.message{animation:message-arrive .42s cubic-bezier(.16,1,.3,1) both}.message-bubble{background:linear-gradient(135deg,#182337de,#111827e8);backdrop-filter:blur(14px);box-shadow:inset 0 1px #ffffff10,0 8px 30px #0002}.message.ai .message-bubble{border-color:#a1b7ff21}.message.user .message-bubble{background:linear-gradient(135deg,#5877d449,#7565ca3d);border-color:#a2b7ff52;box-shadow:0 7px 25px #647bff12,inset 0 1px #ffffff16}.avatar{box-shadow:0 0 22px #879cff24;animation:avatar-enter .45s ease-out both}.message-actions{opacity:.7;transition:opacity .2s}.message:hover .message-actions{opacity:1}
.composer{position:relative;background:linear-gradient(135deg,#1b2638ee,#141a2be8);backdrop-filter:blur(22px);box-shadow:0 10px 40px #0005,inset 0 1px #ffffff10}.composer:before{content:"";position:absolute;inset:-1px;border-radius:20px;padding:1px;background:linear-gradient(110deg,#b7caff3d,transparent 45%,#b58fff2e);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;pointer-events:none}.composer:focus-within{box-shadow:0 10px 45px #0006,0 0 35px #879cff1a}.send-button:not(:disabled){box-shadow:0 0 23px #a5b1ff3c}.send-button:not(:disabled):hover{box-shadow:0 0 30px #a5b1ff80}.suggestions button{transition:transform .2s,background .2s,border-color .2s}.suggestions button:hover{transform:translateY(-2px);border-color:#a5bbff50}
.topics-dialog{background:linear-gradient(155deg,#18243aee,#0d1220f5);backdrop-filter:blur(24px);box-shadow:0 30px 100px #000b,0 0 70px #7189ff13;animation:dialog-pop .25s ease-out}.topics-list button{transition:background .2s,transform .2s}.topics-list button:hover{transform:translateX(3px)}
body.motion-off .ambient-grid,body.motion-off .aurora,body.motion-off .star,body.motion-off .hero-mark *,body.motion-off .hero-mark:before,body.motion-off .header-logo,body.motion-off .live-spark,body.motion-off .gradient-title,body.motion-off .brand-icon:after{animation:none!important}body.motion-off .starter-grid button:hover,body.motion-off .side-item:hover{transform:none}
@keyframes grid-drift{to{background-position:130px 130px}}@keyframes aurora-drift{0%{transform:translate3d(-7%,0,0) scale(.9)}100%{transform:translate3d(14%,10%,0) scale(1.15)}}@keyframes star-twinkle{from{opacity:.12;transform:scale(.65)}to{opacity:var(--opacity);transform:scale(1.4)}}@keyframes page-enter{from{opacity:0;filter:blur(5px)}to{opacity:1;filter:blur(0)}}@keyframes shimmer{50%,100%{transform:translateX(90%)}}@keyframes logo-breathe{50%{box-shadow:inset 0 1px #ffffff29,0 0 36px #87a6ff55}}@keyframes hero-levitate{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-12px) rotate(2deg)}}@keyframes halo-pulse{50%{transform:scale(1.15);opacity:.6}}@keyframes live-pulse{50%{box-shadow:0 0 0 8px #a2e8d400,0 0 20px #8fffe1}}@keyframes gradient-flow{50%{background-position:100% 50%}}@keyframes message-arrive{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes avatar-enter{from{transform:scale(.7);opacity:0}to{transform:scale(1);opacity:1}}@keyframes dialog-pop{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:800px){.aurora{filter:blur(70px);opacity:.22}.ambient-grid{background-size:90px 90px}.starter-grid button{min-height:100px}}@media(max-width:450px){.hero-mark{height:124px;width:124px}.hero-mark span{width:88px;height:88px;font-size:55px}.hero-mark i{width:125px;height:67px}.hero-mark i:last-child{width:115px;height:124px}.eyebrow{font-size:8px;gap:6px}.starter-grid button{min-height:94px}.welcome h1{font-size:30px}}@media(prefers-reduced-motion:reduce){.ambient-grid,.aurora,.star,.hero-mark *,.hero-mark:before,.header-logo,.live-spark,.gradient-title,.brand-icon:after{animation:none!important}}

/* NEXORA AI 2.2 — quick-reply interaction & expressive motion */
.quick-panel{position:relative;padding:13px 16px 16px;border:1px solid #a5baff38;border-radius:22px;background:linear-gradient(130deg,#17223cdd,#10192be8);backdrop-filter:blur(24px);box-shadow:0 0 50px #6689ff16,0 14px 50px #0006,inset 0 1px #ffffff16;overflow:hidden;animation:panel-appear .6s cubic-bezier(.2,.8,.2,1) both}
.quick-panel:before{content:"";position:absolute;inset:-2px;pointer-events:none;border-radius:inherit;background:linear-gradient(110deg,transparent 20%,#c1caff13 45%,transparent 65%);transform:translateX(-100%);animation:panel-shine 8s ease-in-out infinite}
.quick-heading{display:flex;align-items:center;gap:9px;color:#a6b7d9;font-size:10px;font-weight:800;letter-spacing:1.3px;margin:0 0 12px;position:relative;z-index:1}
.quick-heading button{margin-left:auto;border:0;background:transparent;color:#b6c9ff;font-size:11px;letter-spacing:0;font-weight:700;padding:5px 8px;border-radius:8px;transition:background .2s,color .2s}.quick-heading button:hover{background:#ffffff13;color:white}
.quick-pulse{width:8px;height:8px;flex-shrink:0;border-radius:50%;background:#8cc6ff;box-shadow:0 0 12px #8cc6ff;animation:quick-pulse 2s ease-in-out infinite}
.quick-panel .suggestions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0;overflow:visible}
.quick-panel .suggestions button{white-space:normal;min-height:49px;text-align:left;padding:12px 15px;background:linear-gradient(125deg,#ffffff0d,#8da4ff0b);border:1px solid #a5baff24;border-radius:13px;font-size:12px;color:#d7e3ff;font-weight:700;position:relative;overflow:hidden;animation:quick-item-enter .42s cubic-bezier(.16,1,.3,1) both;transition:transform .25s,border-color .25s,box-shadow .25s,background .25s}
.quick-panel .suggestions button:nth-child(2){animation-delay:.07s}.quick-panel .suggestions button:nth-child(3){animation-delay:.14s}.quick-panel .suggestions button:nth-child(4){animation-delay:.21s}
.quick-panel .suggestions button:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 10% 50%,#91baff26,transparent 70%);opacity:0;transition:opacity .25s}
.quick-panel .suggestions button:after{content:"↗";position:absolute;right:14px;top:50%;transform:translateY(-50%) translateX(-5px);opacity:.35;font-size:15px;transition:transform .25s,opacity .25s}
.quick-panel .suggestions button:hover{transform:translateY(-3px);border-color:#a4baff75;box-shadow:0 8px 25px #6179ef24;background:#7087c51e}.quick-panel .suggestions button:hover:before{opacity:1}.quick-panel .suggestions button:hover:after{transform:translateY(-50%) translateX(2px);opacity:1}.quick-panel .suggestions button:active{transform:scale(.97)}
.starter-grid button{animation:starter-appear .65s cubic-bezier(.16,1,.3,1) both}.starter-grid button:nth-child(1){animation-delay:.15s}.starter-grid button:nth-child(2){animation-delay:.24s}.starter-grid button:nth-child(3){animation-delay:.33s}.starter-grid button:nth-child(4){animation-delay:.42s}
.welcome .eyebrow{animation:eyebrow-reveal .7s ease both}.welcome h1{animation:headline-reveal .85s cubic-bezier(.16,1,.3,1) both .12s}.welcome>p{animation:headline-reveal .9s cubic-bezier(.16,1,.3,1) both .22s}
.typing-message .message-bubble{min-width:92px;box-shadow:0 0 30px #718eff1c;animation:typing-glow 1.4s ease-in-out infinite}
.typing-message .typing i{width:7px;height:7px;background:#a3c7ff}
.sidebar .brand{animation:slide-from-left .7s ease both}.sidebar .new-chat{animation:slide-from-left .7s ease both .12s}.sidebar .side-item:nth-of-type(1){animation:slide-from-left .7s ease both .2s}.sidebar .side-item:nth-of-type(2){animation:slide-from-left .7s ease both .3s}
.topbar:after{content:"";position:absolute;bottom:-1px;left:15%;height:1px;width:30%;background:linear-gradient(90deg,transparent,#8da9ff65,transparent);animation:header-sweep 10s ease-in-out infinite;pointer-events:none}
@keyframes panel-appear{from{opacity:0;transform:translateY(25px);filter:blur(6px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes panel-shine{0%,35%{transform:translateX(-100%)}60%,100%{transform:translateX(100%)}}
@keyframes quick-pulse{50%{box-shadow:0 0 0 6px #8cc6ff00,0 0 20px #8cc6ff}}
@keyframes quick-item-enter{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes starter-appear{from{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes eyebrow-reveal{from{opacity:0;letter-spacing:5px}to{opacity:1;letter-spacing:2px}}
@keyframes headline-reveal{from{opacity:0;transform:translateY(22px);filter:blur(8px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes typing-glow{50%{box-shadow:0 0 40px #718eff45}}
@keyframes slide-from-left{from{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:translateX(0)}}
@keyframes header-sweep{50%{left:65%}}
body.motion-off .quick-panel:before,body.motion-off .quick-panel,body.motion-off .quick-panel .suggestions button,body.motion-off .starter-grid button,body.motion-off .welcome h1,body.motion-off .welcome>p,body.motion-off .welcome .eyebrow,body.motion-off .typing-message .message-bubble,body.motion-off .sidebar .brand,body.motion-off .sidebar .new-chat,body.motion-off .sidebar .side-item,body.motion-off .topbar:after{animation:none!important}
@media(max-width:540px){.quick-panel{padding:12px}.quick-heading{font-size:9px;letter-spacing:.5px}.quick-panel .suggestions{grid-template-columns:1fr}.quick-panel .suggestions button{min-height:43px;padding:10px 13px}.composer-zone{padding-bottom:max(12px,env(safe-area-inset-bottom))}.welcome{margin-top:1vh}}
@media(prefers-reduced-motion:reduce){.quick-panel:before,.quick-panel,.quick-panel .suggestions button,.starter-grid button,.welcome h1,.welcome>p,.welcome .eyebrow,.typing-message .message-bubble,.topbar:after{animation:none!important}}

.light-beam{position:absolute;pointer-events:none;width:55vw;height:130vh;top:-20vh;opacity:.15;filter:blur(28px);transform:rotate(32deg);background:linear-gradient(90deg,transparent,#9aa9ff22,#c6ddff66,#8f9dff1a,transparent);animation:beam-shift 18s ease-in-out infinite alternate}.beam-one{left:8%;animation-delay:-4s}.beam-two{right:-30%;transform:rotate(-30deg);animation-delay:-11s;animation-duration:25s}
.writing-message .message-bubble{position:relative;box-shadow:0 8px 30px #0003,0 0 25px #819aff18;border-color:#9fb6ff45;min-height:58px}.typewriter-text{white-space:pre-wrap;overflow-wrap:anywhere}.typing-caret{display:inline-block;vertical-align:-2px;width:2px;height:1.1em;margin-left:2px;background:#a7c9ff;box-shadow:0 0 9px #8db7ff;animation:caret-blink .7s step-end infinite}.skip-typing{margin-top:10px;background:#7c96ff17;border:1px solid #a5bbff35;color:#bcd0ff;padding:7px 12px;border-radius:9px;font-size:11px;transition:transform .2s,background .2s}.skip-typing:hover{background:#879fff2e;transform:translateY(-2px)}
.message.ai .avatar{position:relative;overflow:hidden}.message.ai .avatar:after{content:"";position:absolute;inset:-50%;border:1px solid #bbd3ff50;border-radius:50%;animation:avatar-orbit 7s linear infinite}.topbar .top-title{animation:header-enter .7s cubic-bezier(.2,.8,.2,1) both}.starter-grid button:active{transform:translateY(1px) scale(.97)}
@keyframes caret-blink{50%{opacity:0}}@keyframes beam-shift{from{translate:-14% 0;opacity:.08}to{translate:19% 0;opacity:.22}}@keyframes avatar-orbit{to{transform:rotate(360deg)}}@keyframes header-enter{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
body.motion-off .light-beam,body.motion-off .typing-caret,body.motion-off .message.ai .avatar:after,body.motion-off .topbar .top-title{animation:none!important}@media(prefers-reduced-motion:reduce){.light-beam,.typing-caret,.message.ai .avatar:after,.topbar .top-title{animation:none!important}}
