/* ============================================================
   AERIS by PIXORA V2.8.3 — IMMERSIVE AGENT EXPERIENCE
   Additive experience layer over V2.7 Voice-Native Director.
   No Director DOM, routes, IDs, handlers or project logic replaced.
   ============================================================ */
:root{
  --v28-cyan:#35e8ff;--v28-cyan2:#7ff7ff;--v28-ice:#dffcff;
  --v28-violet:#778cff;--v28-green:#55e0b1;--v28-gold:#e5c891;
  --v28-deep:#05080d;--v28-panel:rgba(8,14,21,.78);--v28-glass:rgba(14,24,34,.62);
  --v28-line:rgba(111,222,245,.13);--v28-line2:rgba(111,222,245,.28);
  --v28-glow:rgba(53,232,255,.18);--v28-accent:53,232,255;--v28-accent2:119,140,255;
  --v28-px:0;--v28-py:0;--v28-shell-left:228px;--v28-ease:cubic-bezier(.2,.75,.25,1);
}
html{background:#05080d!important}
body[data-aeris-experience="v2.8.3"]{overflow-x:hidden;background:#05080d!important;isolation:isolate}
body[data-aeris-experience="v2.8.3"]:before,body[data-aeris-experience="v2.8.3"]:after{display:none!important}

/* Director atmosphere palette */
body[data-aeris-view="dashboard"],body[data-aeris-view="home"]{--v28-accent:53,232,255;--v28-accent2:119,140,255}
body[data-aeris-view="brief"]{--v28-accent:74,214,255;--v28-accent2:82,183,255}
body[data-aeris-view="theme"],body[data-aeris-view="direction"]{--v28-accent:136,142,255;--v28-accent2:53,232,255}
body[data-aeris-view="scope"]{--v28-accent:82,225,177;--v28-accent2:53,232,255}
body[data-aeris-view="experience"],body[data-aeris-view="campaignDirector"],body[data-aeris-view="create"]{--v28-accent:79,215,255;--v28-accent2:116,113,255}
body[data-aeris-view="stage"]{--v28-accent:72,220,255;--v28-accent2:108,143,255}
body[data-aeris-view="visuals"],body[data-aeris-view="generator"]{--v28-accent:117,142,255;--v28-accent2:53,232,255}
body[data-aeris-view="ledStudio"]{--v28-accent:53,232,255;--v28-accent2:65,187,255}
body[data-aeris-view="pitchStudio"],body[data-aeris-view="pitch"]{--v28-accent:229,200,145;--v28-accent2:53,232,255}
body[data-aeris-view="production"],body[data-aeris-view="commercialOS"]{--v28-accent:86,224,177;--v28-accent2:229,200,145}

/* Ambient digital environment */
#aerisV28Environment{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:
  radial-gradient(1000px 520px at 74% -8%,rgba(var(--v28-accent),.115),transparent 64%),
  radial-gradient(760px 580px at 12% 103%,rgba(var(--v28-accent2),.065),transparent 70%),
  linear-gradient(180deg,#060a10,#060910 50%,#04070b)}
#aerisV28Environment .v28-grid{position:absolute;inset:-10%;opacity:.34;transform:perspective(800px) rotateX(67deg) translateY(40%);transform-origin:center bottom;background-image:linear-gradient(rgba(var(--v28-accent),.055) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--v28-accent),.045) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(to top,#000,transparent 80%);animation:v28GridDrift 28s linear infinite}
#aerisV28Environment .v28-aurora{position:absolute;width:80vw;height:55vh;right:-18vw;top:-24vh;border-radius:50%;filter:blur(55px);opacity:.35;background:conic-gradient(from 180deg,rgba(var(--v28-accent),.0),rgba(var(--v28-accent),.16),rgba(var(--v28-accent2),.10),transparent 70%);animation:v28Aurora 18s ease-in-out infinite alternate}
#aerisV28Environment .v28-arc{position:absolute;width:720px;height:720px;border:1px solid rgba(var(--v28-accent),.08);border-radius:50%;right:-360px;top:-365px;box-shadow:0 0 0 72px rgba(var(--v28-accent),.012),0 0 0 144px rgba(var(--v28-accent),.008),0 0 120px rgba(var(--v28-accent),.04);animation:v28ArcSpin 44s linear infinite}
#aerisV28Environment .v28-line{position:absolute;height:1px;width:54vw;right:-8vw;top:24vh;background:linear-gradient(90deg,transparent,rgba(var(--v28-accent),.18),transparent);transform:rotate(-13deg);filter:blur(.2px);opacity:.45;animation:v28LightSweep 9s ease-in-out infinite}
#aerisV28Environment .v28-particle{position:absolute;width:2px;height:2px;border-radius:50%;left:var(--x);top:var(--y);background:rgba(var(--v28-accent),var(--o));box-shadow:0 0 9px rgba(var(--v28-accent),.5);animation:v28Particle var(--d) ease-in-out var(--delay) infinite alternate}
@keyframes v28GridDrift{to{background-position:0 70px,70px 0}}
@keyframes v28Aurora{0%{transform:translate3d(-2%,0,0) scale(.95) rotate(-4deg)}100%{transform:translate3d(5%,9%,0) scale(1.07) rotate(6deg)}}
@keyframes v28ArcSpin{to{transform:rotate(360deg)}}
@keyframes v28LightSweep{0%,100%{opacity:.15;transform:translateX(-12%) rotate(-13deg)}50%{opacity:.62;transform:translateX(12%) rotate(-13deg)}}
@keyframes v28Particle{0%{transform:translate3d(0,0,0);opacity:.15}100%{transform:translate3d(var(--dx),var(--dy),0);opacity:var(--o)}}

/* Shell depth + premium glass */
body[data-aeris-experience="v2.8.3"] .sidebar,body[data-aeris-experience="v2.8.3"] .rail{background:linear-gradient(180deg,rgba(5,10,16,.95),rgba(5,8,13,.985))!important;border-right:1px solid rgba(var(--v28-accent),.10)!important;box-shadow:28px 0 90px rgba(0,0,0,.36),inset -1px 0 rgba(255,255,255,.02)!important;backdrop-filter:blur(28px) saturate(135%)!important}
body[data-aeris-experience="v2.8.3"] .topbar{background:linear-gradient(180deg,rgba(7,11,16,.89),rgba(6,10,15,.68))!important;border-bottom:1px solid rgba(var(--v28-accent),.10)!important;box-shadow:0 18px 60px rgba(0,0,0,.18)!important;backdrop-filter:blur(34px) saturate(140%)!important}
body[data-aeris-experience="v2.8.3"] .topbar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(var(--v28-accent),.42),transparent);opacity:.34;pointer-events:none;animation:v28HeaderLine 7s ease-in-out infinite}
@keyframes v28HeaderLine{0%,100%{transform:scaleX(.4);opacity:.12}50%{transform:scaleX(1);opacity:.42}}
body[data-aeris-experience="v2.8.3"] .nav,body[data-aeris-experience="v2.8.3"] .steps button{position:relative;overflow:hidden;transition:transform .26s var(--v28-ease),background .26s ease,border-color .26s ease,color .26s ease,box-shadow .26s ease!important}
body[data-aeris-experience="v2.8.3"] .nav:after,body[data-aeris-experience="v2.8.3"] .steps button:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,rgba(var(--v28-accent),.10),transparent 78%);transform:translateX(-120%);transition:transform .55s var(--v28-ease);pointer-events:none}
body[data-aeris-experience="v2.8.3"] .nav:hover:after,body[data-aeris-experience="v2.8.3"] .steps button:hover:after{transform:translateX(120%)}
body[data-aeris-experience="v2.8.3"] .nav.active,body[data-aeris-experience="v2.8.3"] .steps button.active{background:linear-gradient(90deg,rgba(var(--v28-accent),.14),rgba(var(--v28-accent),.025))!important;border-color:rgba(var(--v28-accent),.23)!important;box-shadow:inset 2px 0 rgba(var(--v28-accent),.95),0 0 30px rgba(var(--v28-accent),.045)!important;color:#f3fdff!important}
body[data-aeris-experience="v2.8.3"] .nav.active:before{background:rgb(var(--v28-accent))!important;box-shadow:0 0 0 4px rgba(var(--v28-accent),.08),0 0 12px rgba(var(--v28-accent),.42)!important}body[data-aeris-experience="v2.8.3"] .steps button.active:before{content:"";position:absolute;width:5px;height:5px;border-radius:50%;right:9px;top:50%;margin-top:-2.5px;background:rgb(var(--v28-accent));box-shadow:0 0 12px rgba(var(--v28-accent),.55);animation:v28NavPulse 2.2s ease-in-out infinite}
@keyframes v28NavPulse{50%{box-shadow:0 0 0 6px rgba(var(--v28-accent),0),0 0 14px rgba(var(--v28-accent),.75)}}

/* Cinematic view entry */
body[data-aeris-experience="v2.8.3"] .view.active,body[data-aeris-experience="v2.8.3"] .screen.active{animation:v28ViewIn .46s var(--v28-ease) both;transform-origin:50% 12%}
@keyframes v28ViewIn{0%{opacity:.2;transform:translateY(9px) scale(.994);filter:blur(3px)}55%{filter:blur(0)}100%{opacity:1;transform:none;filter:none}}
body[data-aeris-experience="v2.8.3"].v28-switching main:after{content:"";position:fixed;z-index:89;left:var(--v28-shell-left);right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,rgba(var(--v28-accent),.85),transparent);animation:v28SwitchLine .52s var(--v28-ease) both;pointer-events:none}
@keyframes v28SwitchLine{0%{transform:translateX(-90%);opacity:0}35%{opacity:1}100%{transform:translateX(90%);opacity:0}}

/* Card material and spatial hover */
body[data-aeris-experience="v2.8.3"] .card,body[data-aeris-experience="v2.8.3"] .panel,body[data-aeris-experience="v2.8.3"] .project-card,body[data-aeris-experience="v2.8.3"] .direction-card,body[data-aeris-experience="v2.8.3"] .stage-card,body[data-aeris-experience="v2.8.3"] .experience-card,body[data-aeris-experience="v2.8.3"] .brief-main,body[data-aeris-experience="v2.8.3"] .simple-note{border-color:rgba(var(--v28-accent),.10)!important;box-shadow:0 14px 40px rgba(0,0,0,.14),inset 0 1px rgba(255,255,255,.02)!important}
body[data-aeris-experience="v2.8.3"] .project-card,body[data-aeris-experience="v2.8.3"] .direction-card,body[data-aeris-experience="v2.8.3"] .stage-card,body[data-aeris-experience="v2.8.3"] .experience-card{transition:transform .32s var(--v28-ease),box-shadow .32s ease,border-color .32s ease!important;transform:translateZ(0)}
body[data-aeris-experience="v2.8.3"] .project-card:hover,body[data-aeris-experience="v2.8.3"] .direction-card:hover,body[data-aeris-experience="v2.8.3"] .stage-card:hover,body[data-aeris-experience="v2.8.3"] .experience-card:hover{transform:translateY(-2px);border-color:rgba(var(--v28-accent),.25)!important;box-shadow:0 26px 68px rgba(0,0,0,.28),0 0 38px rgba(var(--v28-accent),.04)!important}

/* Living dashboard world */
body[data-aeris-experience="v2.8.3"] .immersive-world{overflow:hidden!important;border-color:rgba(var(--v28-accent),.16)!important;box-shadow:inset 0 0 70px rgba(var(--v28-accent),.045),0 30px 80px rgba(0,0,0,.28)!important}
body[data-aeris-experience="v2.8.3"] .world-core{animation:v28CoreFloat 5.5s ease-in-out infinite!important;box-shadow:0 0 45px rgba(var(--v28-accent),.08)!important}
body[data-aeris-experience="v2.8.3"] .world-halo{animation-duration:18s!important;filter:drop-shadow(0 0 9px rgba(var(--v28-accent),.11))}
@keyframes v28CoreFloat{0%,100%{transform:translate(-50%,-50%) translateY(0)}50%{transform:translate(-50%,-50%) translateY(-5px)}}

/* Interactive buttons */
body[data-aeris-experience="v2.8.3"] button{position:relative}
body[data-aeris-experience="v2.8.3"] .primary{box-shadow:0 12px 34px rgba(var(--v28-accent),.13),inset 0 1px rgba(255,255,255,.32)!important}
body[data-aeris-experience="v2.8.3"] .primary:hover{box-shadow:0 18px 44px rgba(var(--v28-accent),.21),0 0 24px rgba(var(--v28-accent),.07)!important}
body[data-aeris-experience="v2.8.3"] button.v28-ripple:after{display:none!important}
@keyframes v28Ripple{to{transform:translate(-50%,-50%) scale(18);opacity:0}}

/* Agent activity rail */
#aerisV28Activity{position:fixed;z-index:95;top:92px;left:50%;transform:translate(-50%,-14px);min-width:300px;max-width:min(640px,72vw);padding:9px 14px;border-radius:999px;border:1px solid rgba(var(--v28-accent),.18);background:rgba(5,11,17,.77);backdrop-filter:blur(22px);box-shadow:0 16px 46px rgba(0,0,0,.28),0 0 35px rgba(var(--v28-accent),.045);display:flex;align-items:center;gap:10px;opacity:0;pointer-events:none;transition:.28s var(--v28-ease)}
#aerisV28Activity.active{opacity:1;transform:translate(-50%,0)}
#aerisV28Activity i{width:7px;height:7px;border-radius:50%;background:rgb(var(--v28-accent));box-shadow:0 0 13px rgba(var(--v28-accent),.8);animation:v28ActPulse 1.2s ease-in-out infinite}
#aerisV28Activity b{font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#d9f9fd}
#aerisV28Activity span{font-size:8px;color:#76929f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@keyframes v28ActPulse{50%{opacity:.35;transform:scale(.72)}}
body.v28-creating #aerisV28Environment .v28-aurora{opacity:.52;animation-duration:7s}
body.v28-creating #aerisV28Environment .v28-grid{opacity:.5;animation-duration:9s}
body.v28-creating main{transition:filter .35s ease}body.v28-creating main>.view.active,body.v28-creating main>.screen.active{filter:saturate(1.04)}

/* ================= AERIS Agent Dock ================= */
#aerisV28Dock{position:fixed;z-index:110;right:18px;bottom:16px;width:280px;color:#e9fbff;font-family:Inter,"Segoe UI",sans-serif;filter:drop-shadow(0 20px 55px rgba(0,0,0,.45));transition:width .36s var(--v28-ease),transform .36s var(--v28-ease)}
#aerisV28Dock .v28-dock-shell{position:relative;overflow:hidden;border:1px solid rgba(var(--v28-accent),.19);border-radius:20px;background:linear-gradient(145deg,rgba(10,18,26,.88),rgba(4,9,15,.94));backdrop-filter:blur(28px) saturate(145%);box-shadow:inset 0 1px rgba(255,255,255,.045),0 0 50px rgba(var(--v28-accent),.045)}
#aerisV28Dock .v28-dock-shell:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 20%,rgba(var(--v28-accent),.045),transparent 68%);transform:translateX(-80%);animation:v28DockSheen 9s ease-in-out infinite;pointer-events:none}
@keyframes v28DockSheen{0%,70%{transform:translateX(-100%)}100%{transform:translateX(100%)}}
.v28-dock-head{height:68px;display:flex;align-items:center;gap:12px;padding:10px 13px;cursor:pointer;position:relative;z-index:2}
.v28-core{position:relative;width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center}
.v28-core .v28-core-orb{width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 34% 28%,#efffff 0 8%,rgb(var(--v28-accent)) 34%,rgba(var(--v28-accent),.18) 70%);box-shadow:0 0 14px rgba(var(--v28-accent),.75),0 0 34px rgba(var(--v28-accent),.26);animation:v28OrbBreathe 3.3s ease-in-out infinite}
.v28-core .v28-ring{position:absolute;inset:7px;border:1px solid rgba(var(--v28-accent),.43);border-radius:50% 42% 50% 44%;animation:v28Ring 7s linear infinite;transform:rotateX(64deg) rotateZ(0deg)}
.v28-core .v28-ring.r2{inset:12px;animation-duration:4.8s;animation-direction:reverse;border-color:rgba(var(--v28-accent2),.35);transform:rotateY(62deg) rotateZ(20deg)}
.v28-core .v28-ring.r3{inset:2px;border-style:dashed;border-color:rgba(var(--v28-accent),.15);animation-duration:16s}
@keyframes v28Ring{to{transform:rotateX(64deg) rotateZ(360deg)}}
@keyframes v28OrbBreathe{50%{transform:scale(1.13);box-shadow:0 0 18px rgba(var(--v28-accent),.9),0 0 44px rgba(var(--v28-accent),.33)}}
.v28-dock-copy{min-width:0;flex:1}.v28-dock-copy small{display:block;color:#5f7b89;font-size:8px;letter-spacing:.17em;text-transform:uppercase;margin-bottom:4px}.v28-dock-copy b{display:block;font-size:12px;color:#e8f8fb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v28-dock-copy span{display:block;margin-top:4px;color:#76919d;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v28-dock-chevron{width:25px;height:25px;border-radius:8px;border:1px solid rgba(var(--v28-accent),.13);display:grid;place-items:center;color:#71909d;font-size:9px;transition:transform .3s ease}
.v28-dock-body{max-height:0;opacity:0;overflow:hidden;border-top:1px solid transparent;transition:max-height .42s var(--v28-ease),opacity .26s ease,border-color .26s ease}
#aerisV28Dock.open{width:360px}#aerisV28Dock.open .v28-dock-body{max-height:min(430px,calc(100vh - 110px));opacity:1;border-color:rgba(var(--v28-accent),.10)}#aerisV28Dock.open .v28-dock-chevron{transform:rotate(180deg)}
.v28-dock-body{overflow-y:auto;overscroll-behavior:contain}.v28-dock-inner{padding:13px 14px 14px}.v28-context{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:11px}.v28-context>div{padding:8px 9px;border-radius:10px;border:1px solid rgba(var(--v28-accent),.08);background:rgba(255,255,255,.015);min-width:0}.v28-context small{display:block;font-size:8px;letter-spacing:.14em;color:#55717f;text-transform:uppercase}.v28-context b{display:block;margin-top:4px;font-size:10px;color:#a7c1cc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v28-agent-trail{display:flex;gap:5px;margin:9px 0 11px}.v28-agent-trail span{flex:1;height:4px;border-radius:99px;background:rgba(255,255,255,.05);position:relative;overflow:hidden}.v28-agent-trail span.on{background:rgba(var(--v28-accent),.17)}.v28-agent-trail span.on:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(var(--v28-accent),.85),transparent);animation:v28Trail 1.2s linear infinite}@keyframes v28Trail{to{transform:translateX(100%)}}
.v28-agent-status{display:flex;align-items:center;gap:8px;min-height:28px;margin-bottom:8px}.v28-agent-status i{width:6px;height:6px;border-radius:50%;background:#4f6c78}.v28-agent-status b{font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:#7794a0}.v28-agent-status span{margin-left:auto;font-size:8px;color:#4f6d7a}
.v28-agent-input{display:grid;grid-template-columns:minmax(0,1fr) 36px 36px;gap:6px}.v28-agent-input input{height:39px;border-radius:11px!important;padding:0 11px!important;font-size:11px!important;background:rgba(2,7,12,.72)!important}.v28-agent-input button{height:39px;border-radius:11px!important;border:1px solid rgba(var(--v28-accent),.14)!important;background:rgba(var(--v28-accent),.055)!important;color:#b9f6ff!important;padding:0!important}.v28-agent-input button:hover{background:rgba(var(--v28-accent),.11)!important;border-color:rgba(var(--v28-accent),.3)!important}
.v28-quick-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.v28-quick-actions button{border:1px solid rgba(var(--v28-accent),.09)!important;background:rgba(255,255,255,.016)!important;color:#6f8c98!important;padding:6px 8px!important;border-radius:999px!important;font-size:9px!important}.v28-quick-actions button:hover{color:#d4f8fc!important;border-color:rgba(var(--v28-accent),.23)!important;background:rgba(var(--v28-accent),.05)!important}

/* Agent state reactions */
#aerisV28Dock[data-state="listening"] .v28-core-orb{animation:v28Listen .7s ease-in-out infinite alternate;background:radial-gradient(circle,#fff 0 7%,rgb(var(--v28-accent)) 33%,rgba(var(--v28-accent),.2) 70%)}
#aerisV28Dock[data-state="listening"] .v28-ring{animation-duration:1.8s;border-color:rgba(var(--v28-accent),.72)}
#aerisV28Dock[data-state="understanding"] .v28-ring{animation-duration:2.2s;box-shadow:0 0 12px rgba(var(--v28-accent),.14)}
#aerisV28Dock[data-state="executing"] .v28-ring{animation-duration:1.25s}#aerisV28Dock[data-state="executing"] .v28-core-orb{box-shadow:0 0 24px rgba(var(--v28-accent),.95),0 0 65px rgba(var(--v28-accent),.34)}
#aerisV28Dock[data-state="complete"] .v28-core-orb{background:radial-gradient(circle at 35% 30%,#fff 0 8%,#65edbd 35%,rgba(85,224,177,.18) 70%);box-shadow:0 0 20px rgba(85,224,177,.7)}
#aerisV28Dock[data-state="error"] .v28-core-orb{background:#ff748a;box-shadow:0 0 18px rgba(255,80,110,.6)}
@keyframes v28Listen{to{transform:scale(1.28);filter:brightness(1.18)}}

/* Creation mode aperture */
#aerisV28CreationField{position:fixed;z-index:88;inset:0;pointer-events:none;opacity:0;transition:opacity .35s ease;background:radial-gradient(ellipse at center,transparent 35%,rgba(1,5,9,.12) 72%,rgba(1,5,9,.36) 100%)}
#aerisV28CreationField:before{content:"";position:absolute;left:var(--v28-shell-left);right:0;top:86px;height:1px;background:linear-gradient(90deg,transparent,rgba(var(--v28-accent),.44),transparent);transform:translateY(-40px);opacity:0}
body.v28-creating #aerisV28CreationField{opacity:1}body.v28-creating #aerisV28CreationField:before{animation:v28Scan 2.8s ease-in-out infinite}
@keyframes v28Scan{0%{transform:translateY(0);opacity:0}20%{opacity:.7}80%{opacity:.5}100%{transform:translateY(calc(100vh - 120px));opacity:0}}

/* Typography / hierarchy refinement */
body[data-aeris-experience="v2.8.3"] h1,body[data-aeris-experience="v2.8.3"] h2,body[data-aeris-experience="v2.8.3"] h3{letter-spacing:-.015em}
body[data-aeris-experience="v2.8.3"] .eyebrow,body[data-aeris-experience="v2.8.3"] .step-kicker{color:rgb(var(--v28-accent))!important;text-shadow:0 0 18px rgba(var(--v28-accent),.11)}
body[data-aeris-experience="v2.8.3"] .aeris-v25-brand-status{border-color:rgba(var(--v28-accent),.18)!important;color:#9ceef8!important;background:rgba(var(--v28-accent),.045)!important;box-shadow:0 0 22px rgba(var(--v28-accent),.035)}
body[data-aeris-experience="v2.8.3"] .aeris-v25-badge{color:#9eb3bd!important;border-color:rgba(var(--v28-accent),.12)!important;background:rgba(255,255,255,.018)!important}

/* Responsive dock and reduced motion */
@media(max-width:900px){#aerisV28Dock{right:12px;bottom:12px;width:270px}#aerisV28Dock.open{width:min(390px,calc(100vw - 24px))}#aerisV28Activity{top:auto;bottom:96px;max-width:calc(100vw - 24px)}body[data-aeris-experience="v2.8.3"].v28-switching main:after{left:0}}
@media(max-width:620px){#aerisV28Dock{width:235px}.v28-dock-head{height:66px}.v28-core{width:44px;height:44px;flex-basis:44px}#aerisV28Dock.open{width:calc(100vw - 20px);right:10px}.v28-context{grid-template-columns:1fr}#aerisV28Environment .v28-grid{opacity:.18}}
@media(prefers-reduced-motion:reduce){#aerisV28Environment *,#aerisV28Dock *,#aerisV28Activity,body[data-aeris-experience="v2.8.3"] .view.active,body[data-aeris-experience="v2.8.3"] .screen.active{animation:none!important;transition-duration:.01ms!important}body[data-aeris-experience="v2.8.3"] .project-card:hover,body[data-aeris-experience="v2.8.3"] .direction-card:hover,body[data-aeris-experience="v2.8.3"] .stage-card:hover,body[data-aeris-experience="v2.8.3"] .experience-card:hover{transform:none!important}}


/* ============================================================
   V2.8.3 UI RELIABILITY + COMPOSITION PASS
   Fixes shell offsets, topbar overflow, dock obstruction and visual hierarchy.
   ============================================================ */
body[data-aeris-experience="v2.8.3"].v28-advanced{--v28-shell-left:228px}
body[data-aeris-experience="v2.8.3"].v28-guided{--v28-shell-left:260px}
body[data-aeris-experience="v2.8.3"]>.shell,
body[data-aeris-experience="v2.8.3"]>.app-shell{position:relative;z-index:1}
#aerisV28Environment{contain:strict}
#aerisV28Environment .v28-grid{opacity:.22}
#aerisV28Environment .v28-aurora{opacity:.26}
#aerisV28Environment .v28-line{opacity:.28}

/* Avoid animation-on-animation conflict with the existing V2.5/V2.7 view motion. */
body[data-aeris-experience="v2.8.3"] .view.active,
body[data-aeris-experience="v2.8.3"] .screen.active{animation:v281ViewIn .30s var(--v28-ease) both!important}
@keyframes v281ViewIn{from{opacity:.35;transform:translateY(5px)}to{opacity:1;transform:none}}

/* Agent dock should assist, never dominate the working canvas. */
#aerisV28Dock{max-width:calc(100vw - var(--v28-shell-left) - 28px)}
#aerisV28Dock .v28-dock-shell{border-radius:16px;box-shadow:inset 0 1px rgba(255,255,255,.035),0 14px 44px rgba(0,0,0,.34),0 0 32px rgba(var(--v28-accent),.035)}
#aerisV28Dock:not(.open) .v28-dock-chevron{opacity:.72}
#aerisV28Dock.v281-auto-collapsed{transform:translateY(2px)}
.v281-pin{width:25px;height:25px;padding:0!important;border-radius:8px!important;border:1px solid rgba(var(--v28-accent),.10)!important;background:rgba(255,255,255,.015)!important;color:#688794!important;font-size:10px!important;display:grid;place-items:center;flex:0 0 25px}
.v281-pin.active{color:#c9f9ff!important;border-color:rgba(var(--v28-accent),.28)!important;background:rgba(var(--v28-accent),.07)!important}

/* Real DOM ripple: never consumes ::before / ::after owned by existing controls. */
.v281-ripple-dot{position:absolute;z-index:5;width:12px;height:12px;border-radius:50%;pointer-events:none;background:rgba(255,255,255,.24);transform:translate(-50%,-50%) scale(0);animation:v281Ripple .48s ease-out forwards}
@keyframes v281Ripple{to{transform:translate(-50%,-50%) scale(18);opacity:0}}

/* Topbar overflow system preserves every original control while keeping the header clean. */
body[data-aeris-experience="v2.8.3"] .top-actions{position:relative;min-width:0}
#aerisV281MoreBtn{min-width:34px!important;padding:8px 10px!important;white-space:nowrap}
#aerisV281MoreMenu{position:absolute;z-index:260;right:0;top:calc(100% + 10px);width:250px;max-height:min(520px,calc(100vh - 120px));overflow:auto;padding:9px;border:1px solid rgba(var(--v28-accent),.15);border-radius:14px;background:rgba(5,11,17,.97);backdrop-filter:blur(24px) saturate(130%);box-shadow:0 22px 70px rgba(0,0,0,.48);display:none;gap:6px}
#aerisV281MoreMenu.open{display:grid}
#aerisV281MoreMenu>*{width:100%!important;max-width:none!important;margin:0!important;justify-content:flex-start!important}
#aerisV281MoreMenu select{min-height:34px}
#aerisV281MoreMenu .workflow-status,#aerisV281MoreMenu .backend-status,#aerisV281MoreMenu .save-state,#aerisV281MoreMenu .aeris-v25-brand-status,#aerisV281MoreMenu .aeris-v25-badge{display:flex!important;min-height:32px;align-items:center;padding:0 10px}

/* Desktop composition: prevent the command bar from crushing the title or actions. */
body.v28-advanced[data-aeris-experience="v2.8.3"] .topbar{grid-template-columns:minmax(155px,auto) minmax(180px,1fr) auto!important;gap:14px!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] .top-actions{gap:5px!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] .top-actions .icon-action{padding-inline:8px!important}
body.v28-guided[data-aeris-experience="v2.8.3"] .topbar{gap:16px}
body.v28-guided[data-aeris-experience="v2.8.3"] .top-actions{gap:6px;flex-wrap:nowrap}

@media(max-width:1500px){
 body.v28-advanced[data-aeris-experience="v2.8.3"] .top-command-search{max-width:280px!important}
 #aerisV28Dock{width:250px;right:14px;bottom:14px}
 #aerisV28Dock.open{width:340px}
}
@media(max-width:1180px){
 body.v28-advanced[data-aeris-experience="v2.8.3"]{--v28-shell-left:84px}
 body.v28-advanced[data-aeris-experience="v2.8.3"] .topbar{grid-template-columns:minmax(145px,1fr) auto!important}
 #aerisV28Activity{max-width:calc(100vw - var(--v28-shell-left) - 30px)}
}
@media(max-width:900px){
 body.v28-guided[data-aeris-experience="v2.8.3"]{--v28-shell-left:210px}
 #aerisV28Dock{width:236px;right:10px;bottom:10px;max-width:calc(100vw - 20px)}
 #aerisV28Dock.open{width:min(340px,calc(100vw - 20px))}
 #aerisV28Activity{left:calc((100vw + var(--v28-shell-left))/2);max-width:calc(100vw - var(--v28-shell-left) - 24px)}
}
@media(max-width:760px){
 body.v28-advanced[data-aeris-experience="v2.8.3"],body.v28-guided[data-aeris-experience="v2.8.3"]{--v28-shell-left:0px}
 #aerisV28Dock{width:220px;max-width:calc(100vw - 16px);right:8px;bottom:8px}
 #aerisV28Dock.open{width:calc(100vw - 16px)}
 #aerisV28Activity{left:50%;max-width:calc(100vw - 16px);bottom:84px}
 .v28-dock-copy small{display:none}
}
@media(max-height:720px){
 #aerisV28Dock .v28-dock-head{height:60px}
 #aerisV28Dock.open .v28-dock-body{max-height:calc(100vh - 82px)}
}

/* ============================================================
   V2.8.3 COMMAND CENTRE COMPOSITION FIX
   Screenshot-led correction: one-line system ribbon, integrated
   quick actions, stronger hero balance, cleaner header and dock.
   ============================================================ */

/* Desktop shell: reclaim usable canvas without making navigation cramped. */
body.v28-advanced[data-aeris-experience="v2.8.3"]{--v28-shell-left:252px}
body.v28-advanced[data-aeris-experience="v2.8.3"] .shell{grid-template-columns:252px minmax(0,1fr)!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] .sidebar{width:252px!important;padding-inline:14px!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] main{padding-left:30px!important;padding-right:30px!important;padding-bottom:108px!important}

/* Header: fewer competing pills; utilities move into More at common desktop widths. */
body.v28-advanced[data-aeris-experience="v2.8.3"] .topbar{height:78px!important;grid-template-columns:minmax(245px,auto) minmax(260px,1fr) auto!important;gap:16px!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] .topbar h1{font-size:20px!important;line-height:1.05}
body.v28-advanced[data-aeris-experience="v2.8.3"] .top-command-search{width:min(360px,100%)!important;max-width:360px!important;justify-self:center}
body.v28-advanced[data-aeris-experience="v2.8.3"] .top-actions{gap:7px!important;white-space:nowrap}
body.v28-advanced[data-aeris-experience="v2.8.3"] .aeris-v25-brand-status{min-height:34px;padding-inline:12px!important}

/* FIX: V2.8.1 had 9 ribbon children but only 7 grid columns, which wrapped
   Project Health / Living Pitch and pushed the orbital indicator below. */
body.v28-advanced[data-aeris-experience="v2.8.3"] .command-ribbon{
  display:grid!important;
  grid-template-columns:minmax(150px,1.35fr) 1px repeat(6,minmax(70px,.62fr)) 48px!important;
  grid-auto-flow:column!important;
  grid-auto-rows:1fr!important;
  align-items:center!important;
  column-gap:11px!important;
  min-height:60px!important;
  height:60px!important;
  margin:4px 0 18px!important;
  padding:0 14px!important;
  overflow:hidden!important;
}
body.v28-advanced[data-aeris-experience="v2.8.3"] .command-ribbon>*{grid-row:1!important;min-width:0}
body.v28-advanced[data-aeris-experience="v2.8.3"] .pulse-cell span{font-size:6px!important;letter-spacing:1.25px!important;margin-bottom:4px!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] .pulse-cell b{font-size:8.5px!important;line-height:1.2!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] .pulse-orb{width:36px!important;height:36px!important;margin:0 auto!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] .pulse-orb i:nth-child(2){inset:6px!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] .pulse-orb i:nth-child(3){inset:14px!important}

/* Command Centre hero: premium scale, less dead space, stronger AERIS visual. */
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .hero{
  min-height:438px!important;
  padding:42px 46px!important;
  grid-template-columns:minmax(0,.92fr) minmax(430px,1.08fr)!important;
  gap:34px!important;
  border-radius:22px!important;
  margin-top:0!important;
  background:
    radial-gradient(560px 320px at 76% 46%,rgba(var(--v28-accent),.095),transparent 70%),
    linear-gradient(128deg,rgba(10,19,27,.95),rgba(4,10,15,.985))!important;
}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .hero h2{
  font-size:clamp(44px,3.35vw,52px)!important;
  line-height:.98!important;
  letter-spacing:-2.3px!important;
  max-width:600px!important;
  margin:14px 0 20px!important;
}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .hero p{font-size:12.5px!important;line-height:1.65!important;max-width:570px!important;color:#91a7b5!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .hero-copy .actions{margin-top:24px!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .hero-graphic{height:340px!important;min-width:0!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .immersive-world{
  transform:none!important;
  opacity:1!important;
  filter:saturate(1.08) brightness(1.12)!important;
  border:1px solid rgba(var(--v28-accent),.055)!important;
  border-radius:18px!important;
  background:radial-gradient(circle at 50% 48%,rgba(var(--v28-accent),.075),rgba(3,9,14,.20) 48%,rgba(3,8,13,.62) 100%)!important;
}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-core{transform:scale(1.04);box-shadow:0 0 70px rgba(var(--v28-accent),.14)!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-node{background:rgba(4,12,22,.90)!important;border-color:rgba(var(--v28-accent),.16)!important;box-shadow:0 12px 32px rgba(0,0,0,.30),0 0 24px rgba(var(--v28-accent),.04)!important}

/* Quick actions are now a real action rail, not a card floating over the hero. */
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .dashboard-quickdock-v23{
  width:100%!important;
  max-width:none!important;
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:7px!important;
  margin:12px 0 26px!important;
  padding:8px!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,rgba(9,15,21,.72),rgba(5,10,15,.72))!important;
  border:1px solid rgba(var(--v28-accent),.085)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.018),0 12px 34px rgba(0,0,0,.14)!important;
  backdrop-filter:blur(20px)!important;
}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .dashboard-quickdock-v23 button{
  width:auto!important;
  min-width:0!important;
  min-height:48px!important;
  display:flex!important;
  flex-direction:row!important;
  justify-content:center!important;
  align-items:center!important;
  gap:8px!important;
  padding:8px 10px!important;
  border-radius:10px!important;
  font-size:8.5px!important;
  color:#78929f!important;
}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .dashboard-quickdock-v23 button:hover{background:rgba(var(--v28-accent),.045)!important;color:#dffbff!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .dashboard-quickdock-v23 i{width:27px!important;height:27px!important;flex:0 0 27px!important;border-radius:8px!important;background:rgba(var(--v28-accent),.055)!important;border-color:rgba(var(--v28-accent),.12)!important;color:#8deef8!important}

/* Recent workspaces begins as its own section, no floating controls on top of it. */
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard>.section-head{margin-top:0!important;padding-top:0!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard>.section-head:before{height:24px!important;top:4px!important}

/* Agent Dock: keep AERIS present without permanently masking project content. */
#aerisV28Dock{right:18px!important;bottom:16px!important}
#aerisV28Dock:not(.open){width:236px!important}
#aerisV28Dock:not(.open) .v28-dock-head{height:58px!important;padding:0 10px!important}
#aerisV28Dock:not(.open) .v28-core{width:40px!important;height:40px!important;flex-basis:40px!important}
#aerisV28Dock:not(.open) .v28-dock-copy small,#aerisV28Dock:not(.open) .v28-dock-copy span{display:none!important}
#aerisV28Dock:not(.open) .v28-dock-copy b{font-size:11px!important}
#aerisV28Dock.open{width:350px!important;max-width:min(350px,calc(100vw - var(--v28-shell-left) - 28px))!important}

/* Make panel boundaries quieter on dashboard; immersion should come from depth,
   not from every surface having the same visible outline. */
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .project-card{border-color:rgba(var(--v28-accent),.075)!important}

@media(max-width:1540px){
  body.v28-advanced[data-aeris-experience="v2.8.3"] .command-ribbon{grid-template-columns:minmax(130px,1.2fr) 1px repeat(6,minmax(62px,.56fr)) 40px!important;column-gap:8px!important}
  body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .hero{grid-template-columns:minmax(0,.95fr) minmax(390px,1.05fr)!important;padding:38px 40px!important;gap:26px!important}
  body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .hero h2{font-size:46px!important}
}
@media(max-width:1250px){
  body.v28-advanced[data-aeris-experience="v2.8.3"]{--v28-shell-left:84px}
  body.v28-advanced[data-aeris-experience="v2.8.3"] .shell{grid-template-columns:84px minmax(0,1fr)!important}
  body.v28-advanced[data-aeris-experience="v2.8.3"] .sidebar{width:84px!important}
  body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .dashboard-quickdock-v23{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:1050px){
  body.v28-advanced[data-aeris-experience="v2.8.3"] .command-ribbon{display:none!important}
  body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .hero{grid-template-columns:1fr!important;min-height:auto!important}
  body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .hero-graphic{height:300px!important;display:block!important;margin-top:6px!important}
}
@media(max-width:760px){
  body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .dashboard-quickdock-v23{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .hero{padding:28px 22px!important}
  body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .hero h2{font-size:38px!important}
}

/* =====================================================================
   V2.8.3 HERO DIAGRAM TRUE-CENTER ALIGNMENT FIX
   Scope: Command Centre AERIS world only. No Director/workflow changes.
   ===================================================================== */
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .hero-graphic.immersive-world{
  position:relative!important;
  display:block!important;
  overflow:hidden!important;
  --v283-world-cx:50%;
  --v283-world-cy:50%;
}

/* Every orbital layer is locked to the same exact centre point. */
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-halo{
  left:var(--v283-world-cx)!important;
  top:var(--v283-world-cy)!important;
  margin:0!important;
  animation:v283HaloBreathe 18s ease-in-out infinite!important;
}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-halo.h2{animation-delay:-2s!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-halo.h3{animation-delay:-4s!important}
@keyframes v283HaloBreathe{
  0%,100%{transform:translate(-50%,-50%) scale(1);opacity:1}
  50%{transform:translate(-50%,-50%) scale(1.025);opacity:.68}
}

body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-axis{
  left:var(--v283-world-cx)!important;
  top:var(--v283-world-cy)!important;
  transform-origin:50% 50%!important;
}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-axis.ax1{transform:translate(-50%,-50%) rotate(28deg)!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-axis.ax2{transform:translate(-50%,-50%) rotate(-28deg)!important}

body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-grid{
  left:var(--v283-world-cx)!important;
  top:var(--v283-world-cy)!important;
  transform:translate(-50%,-50%) rotateX(64deg) rotateZ(-2deg) translateY(92px)!important;
  transform-origin:50% 50%!important;
}

/* The V2.8 float animation previously translated a flex-centred relative
   element by -50%/-50%, which visibly shifted the orb up-left. Make the orb
   absolute and animate around the same fixed centre instead. */
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-core{
  position:absolute!important;
  left:var(--v283-world-cx)!important;
  top:var(--v283-world-cy)!important;
  margin:0!important;
  animation:v283CoreFloat 5.5s ease-in-out infinite!important;
  transform-origin:50% 50%!important;
  box-shadow:0 0 70px rgba(var(--v28-accent),.14)!important;
}
@keyframes v283CoreFloat{
  0%,100%{transform:translate(-50%,-50%) scale(1.04)}
  50%{transform:translate(-50%,calc(-50% - 4px)) scale(1.04)}
}

/* Rebalance the five labels symmetrically around the same centre. */
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-node.n1{left:3%!important;top:18%!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-node.n2{right:3%!important;top:18%!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-node.n3{right:1.5%!important;bottom:17%!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-node.n4{left:1.5%!important;bottom:17%!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-node.n5{left:50%!important;bottom:0!important;transform:translateX(-50%)!important}
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-node.n5:hover{transform:translateX(-50%) translateY(-3px) scale(1.02)!important}

/* Keep the system status visually balanced against the bottom-centre node. */
body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-status{right:3%!important;bottom:1.5%!important}

/* On narrower desktop layouts preserve the true centre; only reduce scale. */
@media(max-width:1280px) and (min-width:821px){
  body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-core{animation:v283CoreFloatCompact 5.5s ease-in-out infinite!important}
  @keyframes v283CoreFloatCompact{
    0%,100%{transform:translate(-50%,-50%) scale(.94)}
    50%{transform:translate(-50%,calc(-50% - 3px)) scale(.94)}
  }
  body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-halo.h1{width:300px!important;height:300px!important}
  body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-halo.h2{width:222px!important;height:222px!important}
  body.v28-advanced[data-aeris-experience="v2.8.3"] #dashboard .world-halo.h3{width:154px!important;height:154px!important}
}
