/* APPLEGREEN V6 — PREMIUM MOTION ENGINE */
:root{--ag-ease:cubic-bezier(.22,1,.36,1);--ag-spring:cubic-bezier(.16,1.08,.3,1);--ag-fast:.28s;--ag-med:.62s}
*{scroll-behavior:smooth}
.glass,.sidebar,.main,.composer-box,.hero,.chat-item,.msg,.mode,.tool,.modal,.panel,.row-card{will-change:transform}
.hero{animation:agHeroIn .9s var(--ag-ease) both}
.hero-logo{animation:agLogo .9s var(--ag-spring) both}
.hero h1{animation:agTitle .95s .08s var(--ag-ease) both}
.hero p{animation:agTitle .95s .16s var(--ag-ease) both}
.hero-actions{animation:agTitle .95s .24s var(--ag-ease) both}
.hero-note{animation:agTitle .95s .32s var(--ag-ease) both}
@keyframes agHeroIn{from{opacity:0;transform:translateY(28px) scale(.985);filter:blur(10px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes agTitle{from{opacity:0;transform:translateY(20px);filter:blur(7px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes agLogo{from{opacity:0;transform:scale(.82) rotate(-8deg);filter:blur(8px)}70%{transform:scale(1.06) rotate(2deg)}to{opacity:1;transform:none;filter:none}}
.hero h1 span{background-size:220% 220%;animation:agGradient 5s ease-in-out infinite}
@keyframes agGradient{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.newchat,.send,.composer-action,.iconbtn,.pill,.langbtn,.mode,.tool,.btn,.mini,.sidebtn{transition:transform .45s var(--ag-spring),box-shadow .45s ease,background .35s ease,border-color .35s ease,filter .35s ease}
.newchat:hover,.send:hover,.composer-action:hover,.iconbtn:hover,.pill:hover,.langbtn:hover,.mode:hover,.tool:hover,.btn:hover,.mini:hover,.sidebtn:hover{transform:translateY(-2px) scale(1.015)}
.newchat:active,.send:active,.composer-action:active,.mode:active,.tool:active,.btn:active{transform:scale(.95)}
.sidebar{transition:transform .45s var(--ag-spring),box-shadow .45s ease}
.shell.side-open .sidebar{box-shadow:0 35px 100px rgba(0,0,0,.28)}
.close-side{transition:transform .45s var(--ag-spring),background .3s ease,box-shadow .3s ease;position:relative;overflow:hidden}
.close-side:hover{transform:rotate(90deg) scale(1.08);box-shadow:0 10px 24px rgba(0,0,0,.18)}
.drawer-backdrop{transition:opacity .35s ease;opacity:0}.drawer-backdrop.show{opacity:1}
.chat-item{animation:agItem .6s var(--ag-spring) both}
.chat-item:nth-child(2){animation-delay:.03s}.chat-item:nth-child(3){animation-delay:.06s}.chat-item:nth-child(4){animation-delay:.09s}
@keyframes agItem{from{opacity:0;transform:translateX(16px) scale(.985)}to{opacity:1;transform:none}}
.msg{animation:agMsg .65s var(--ag-spring) both}
.msg.user{transform-origin:100% 100%}.msg.assistant{transform-origin:0 100%}
@keyframes agMsg{from{opacity:0;transform:translateY(16px) scale(.97);filter:blur(5px)}65%{transform:translateY(-2px) scale(1.01)}to{opacity:1;transform:none;filter:none}}
.composer-box{box-shadow:0 24px 70px rgba(0,0,0,.16),0 0 0 1px rgba(255,255,255,.035) inset;transition:box-shadow .5s ease,transform .5s var(--ag-spring)}
.composer-box:focus-within{transform:translateY(-2px);box-shadow:0 30px 90px rgba(0,0,0,.22),0 0 0 1px rgba(166,236,112,.16) inset}
.modal-backdrop{transition:opacity .35s ease}.modal-backdrop.show .modal{animation:agModal .55s var(--ag-spring) both}
@keyframes agModal{from{opacity:0;transform:translateY(28px) scale(.96);filter:blur(9px)}to{opacity:1;transform:none;filter:none}}
.toast{transition:transform .45s var(--ag-spring),opacity .3s ease}.toast.show{animation:agToast .5s var(--ag-spring) both}
@keyframes agToast{from{opacity:0;transform:translateY(16px) scale(.9);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}
.splash.hide{opacity:0;transform:scale(1.02);filter:blur(12px);pointer-events:none;transition:opacity .55s ease,transform .7s var(--ag-ease),filter .55s ease}
@media(max-width:980px){.sidebar{backdrop-filter:blur(28px) saturate(145%)}.close-side{display:grid;place-items:center}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

.privacy-badge{margin-top:7px;font-size:10px;color:var(--muted);opacity:.84;text-align:center;letter-spacing:.01em}

/* ===== v7.0 page / live voice / menu layer ===== */
body.focus-mode .sidebar,body.focus-mode .composer-wrap,body.focus-mode .top-actions .optional{opacity:0;pointer-events:none;transform:scale(.985)}
body.focus-mode .main{max-width:980px;margin-inline:auto}
.shell{transition:grid-template-columns .45s cubic-bezier(.22,1,.36,1)}
.shell.menu-collapsed{grid-template-columns:0 1fr!important}
.shell.menu-collapsed .sidebar{opacity:0;pointer-events:none;transform:translateX(32px);overflow:hidden}
.page-action,.messenger-action{position:relative;overflow:hidden}
.messenger-action{background:linear-gradient(135deg,rgba(110,199,73,.24),rgba(74,150,52,.12));border-color:rgba(120,210,84,.28)}
.command-backdrop{position:fixed;inset:0;z-index:500;display:grid;place-items:start center;padding-top:10vh;background:rgba(5,10,7,.40);backdrop-filter:blur(18px);opacity:0;pointer-events:none;transition:opacity .25s ease}
.command-backdrop.show{opacity:1;pointer-events:auto}
.command-palette{width:min(680px,calc(100vw - 30px));border:1px solid rgba(255,255,255,.12);background:rgba(16,20,17,.88);border-radius:24px;box-shadow:0 30px 100px rgba(0,0,0,.38);padding:14px;transform:translateY(-14px) scale(.985);transition:transform .3s cubic-bezier(.22,1,.36,1)}
.command-backdrop.show .command-palette{transform:none}
.command-head{display:flex;align-items:center;justify-content:space-between;padding:5px 5px 12px}.command-head small{display:block;opacity:.56;margin-top:3px;font-size:11px}.command-input{width:100%;height:48px;border-radius:15px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.045);color:inherit;padding:0 15px;outline:none;font-size:15px}.command-list{display:grid;gap:7px;margin-top:10px;max-height:45vh;overflow:auto}.command-item{display:flex;justify-content:space-between;align-items:center;padding:13px 14px;border-radius:15px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.035);color:inherit;cursor:pointer;transition:.2s ease}.command-item:hover{transform:translateY(-1px);background:rgba(255,255,255,.08);border-color:rgba(160,235,112,.28)}.command-item kbd{font-size:10px;opacity:.48}
.live-voice-panel{position:fixed;left:18px;right:18px;bottom:18px;z-index:450;width:min(560px,calc(100vw - 36px));margin-inline:auto;padding:16px;border-radius:24px;border:1px solid rgba(150,232,111,.22);background:rgba(10,16,12,.84);backdrop-filter:blur(25px);box-shadow:0 30px 100px rgba(0,0,0,.35);transform:translateY(18px) scale(.97);opacity:0;pointer-events:none;transition:.35s cubic-bezier(.22,1,.36,1)}
.live-voice-panel.show{transform:none;opacity:1;pointer-events:auto}.live-voice-head{display:flex;justify-content:space-between;align-items:center}.live-voice-head strong{display:block;font-size:15px}.live-voice-head span{display:block;margin-top:3px;font-size:11px;opacity:.58}.live-wave{height:55px;display:flex;align-items:center;justify-content:center;gap:5px;margin:13px 0}.live-wave span{width:5px;height:16px;border-radius:99px;background:#91dc65;opacity:.4;animation:livePulse 1.1s ease-in-out infinite}.live-wave span:nth-child(2){animation-delay:.09s}.live-wave span:nth-child(3){animation-delay:.18s}.live-wave span:nth-child(4){animation-delay:.27s}.live-wave span:nth-child(5){animation-delay:.36s}.live-wave:not(.active) span{animation-play-state:paused}.live-transcript{max-height:180px;overflow:auto;display:grid;gap:7px}.live-line{padding:9px 11px;border-radius:13px;font-size:12px;line-height:1.75}.live-line.user{background:rgba(145,220,101,.09);border:1px solid rgba(145,220,101,.13)}.live-line.assistant{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.06)}.live-voice-foot{display:flex;justify-content:flex-end;margin-top:10px}.live-voice{color:#b7ef93;border-color:rgba(150,232,111,.25);background:rgba(145,220,101,.07)}.live-voice:hover{box-shadow:0 8px 28px rgba(130,220,96,.18)}
@keyframes livePulse{0%,100%{height:12px;opacity:.35}50%{height:42px;opacity:.95}}
@media(max-width:980px){.shell{grid-template-columns:1fr!important}.shell.menu-collapsed{grid-template-columns:1fr!important}.shell.menu-collapsed .sidebar{opacity:1;pointer-events:auto;transform:none}.focus-mode .topbar{opacity:.75}}
/* ===== v7.0.0 release motion hardening ===== */
.hamb{display:grid!important;place-items:center;position:relative;overflow:hidden}
.hamb::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(145,220,101,.18),transparent 68%);opacity:0;transform:scale(.7);transition:opacity .3s ease,transform .45s var(--ag-spring);pointer-events:none}
.hamb:hover::after{opacity:1;transform:scale(1)}
.shell.menu-collapsed .hamb{box-shadow:0 8px 30px rgba(145,220,101,.12)}
.menu-collapsed .sidebar{transition:opacity .28s ease,transform .4s var(--ag-spring),width .4s var(--ag-spring)}
.messenger-action{animation:agMessengerGlow 3.2s ease-in-out infinite}
@keyframes agMessengerGlow{0%,100%{box-shadow:0 0 0 rgba(120,210,84,0)}50%{box-shadow:0 8px 30px rgba(120,210,84,.14)}}
.live-voice{animation:agLiveReady 2.8s ease-in-out infinite}
@keyframes agLiveReady{0%,100%{box-shadow:0 0 0 rgba(145,220,101,0)}50%{box-shadow:0 8px 28px rgba(145,220,101,.16)}}
@media(max-width:980px){.hamb{display:grid!important}.shell.menu-collapsed .sidebar{opacity:0;pointer-events:none;transform:translateX(calc(100% + 18px));}.shell.side-open .sidebar{opacity:1;pointer-events:auto;transform:translateX(0)}}

/* Monochrome action overrides */
.messenger-action{background:var(--surface2)!important;border-color:var(--line2)!important;color:var(--text)!important}
