/* Aurora Studio shared responsive layer (all screen sizes) */

.aurora-panel-overlay {
 display: none;
 position: fixed;
 inset: 0;
 z-index: 85;
 background: rgba(2, 6, 23,.52);
 backdrop-filter: blur(5px);
 -webkit-backdrop-filter: blur(5px);
 opacity: 0;
 transition: opacity.28s ease;
 pointer-events: none;
}
body.aurora-panel-open.aurora-panel-overlay {
 display: block;
 opacity: 1;
 pointer-events: auto;
}

.aurora-mobile-only { display: none!important; }
.aurora-desktop-only { display: revert; }

/* ── Landing (index.html) ── */
@media (max-width: 639px) {
.hero-scene { height: 300px!important; overflow: hidden; }
.float-card-1,.float-card-2,.float-card-4 { display: none; }
.float-card-3 {
 width: 72px!important;
 height: 72px!important;
 bottom: 8%!important;
 left: 6%!important;
 opacity:.85;
 }
.hero-main-card {
 width: min(78vw, 200px)!important;
 transform: translateZ(60px) rotateX(2deg)!important;
 }
.hero-3d-wrap { animation: none; }
}
@media (max-width: 380px) {
.hero-scene { height: 260px!important; }
.float-card-3 { display: none; }
.hero-main-card { width: 86vw!important; }
}

/* ── NOVA Builder ── */
@media (max-width: 1024px) {
.nova-compact-toolbar.nova-hide-lg { display: none!important; }
}
@media (max-width: 768px) {
.aurora-mobile-only { display: inline-flex!important; }
.aurora-desktop-only.nova-hide-mobile { display: none!important; }

 body.nova-app { overflow: auto; }
 body.nova-app.nova-shell { height: auto; min-height: 100dvh; }

 body.nova-app #libPanel,
 body.nova-app #inspPanel {
 position: fixed;
 z-index: 90;
 top: 4.75rem;
 bottom:.75rem;
 width: min(88vw, 18rem)!important;
 transform: translateX(-112%);
 transition: transform.32s cubic-bezier(.22, 1,.36, 1);
 box-shadow: 0 24px 60px -20px rgba(0, 0, 0,.85);
 }
 body.nova-app #inspPanel {
 right:.75rem;
 left: auto;
 transform: translateX(112%);
 }
 body.nova-app.panel-left-open #libPanel { transform: none; }
 body.nova-app.panel-right-open #inspPanel { transform: none; }
 body.nova-app #canvasWrap { min-height: 58dvh; }

.nova-header-actions { flex-wrap: wrap; gap:.35rem; }
.nova-header-actions.nova-action-secondary { display: none; }
}

@media (max-width: 480px) {
 body.nova-app #deviceGroup { display: none; }
 body.nova-app.nova-header-brand p:last-child { display: none; }
}

/* ── AURORA Studio ── */
@media (max-width: 1023px) {
 body.studio-app { overflow: auto; }
 body.studio-app.studio-shell { height: auto; min-height: 100dvh; }

 body.studio-app #leftPanel,
 body.studio-app #rightPanel {
 position: fixed!important;
 z-index: 90;
 top: 5.25rem;
 bottom:.75rem;
 width: min(88vw, 20rem)!important;
 min-width: 0!important;
 padding: 0!important;
 transition: transform.32s cubic-bezier(.22, 1,.36, 1);
 box-shadow: 0 24px 60px -20px rgba(20, 20, 24, 0.18);
 }
 body.studio-app #leftPanel {
 left:.75rem;
 transform: translateX(-112%);
 }
 body.studio-app #rightPanel {
 right:.75rem;
 left: auto;
 transform: translateX(112%);
 }
 body.studio-app #leftPanel.collapsed,
 body.studio-app #rightPanel.collapsed {
 width: min(88vw, 20rem)!important;
 min-width: 0!important;
 padding: initial!important;
 border: initial!important;
 overflow: hidden!important;
 }
 body.studio-app.studio-panel-left #leftPanel { transform: none!important; }
 body.studio-app.studio-panel-right #rightPanel { transform: none!important; }

 body.studio-app.studio-rail { width: 3rem; }
 body.studio-app.studio-rail.dock-btn { height: 2.25rem; width: 2.25rem; font-size:.85rem; }
 body.studio-app.studio-hide-tablet { display: none!important; }
 body.studio-app header.glass-dark { flex-wrap: wrap; gap:.5rem; margin:.5rem; padding:.5rem.65rem; }
 body.studio-app #zoomRange { width: 4.5rem; }
}

@media (max-width: 640px) {
 body.studio-app.studio-hide-mobile { display: none!important; }
 body.studio-app.studio-rail { display: none; }
 body.studio-app.studio-body { padding:.5rem; gap:.5rem; }
}

/* ── Obsidian Pro ── */
@media (max-width: 1023px) {
 body.obsidian-app { overflow: auto; }
 body.obsidian-app.obsidian-shell { height: auto; min-height: 100dvh; }
 body.obsidian-app #toggleRight { display: inline-flex!important; align-items: center; justify-content: center; }

 body.obsidian-app #leftDrawer {
 position: fixed!important;
 z-index: 90;
 top: 4.75rem;
 bottom:.75rem;
 left:.75rem;
 width: min(88vw, 18rem)!important;
 transform: translateX(-112%);
 transition: transform.32s cubic-bezier(.22, 1,.36, 1);
 box-shadow: 0 24px 60px -20px rgba(0, 0, 0,.9);
 }
 body.obsidian-app #leftDrawer:not(.drawer-collapsed) { transform: none; }
 body.obsidian-app #leftDrawer.drawer-collapsed { transform: translateX(-112%); }

 body.obsidian-app #rightInspector {
 position: fixed!important;
 z-index: 90;
 top: 4.75rem;
 bottom:.75rem;
 right:.75rem;
 width: min(88vw, 18rem)!important;
 transform: translateX(112%);
 transition: transform.32s cubic-bezier(.22, 1,.36, 1);
 box-shadow: 0 24px 60px -20px rgba(0, 0, 0,.9);
 }
 body.obsidian-app.obsidian-panel-right #rightInspector { transform: none; }

 body.obsidian-app.obsidian-rail { width: 3rem; }
 body.obsidian-app.obsidian-rail.railBtn { height: 2.35rem; width: 2.35rem; font-size:.9rem; }
 body.obsidian-app.obsidian-hide-tablet { display: none!important; }
 body.obsidian-app header.glass { flex-wrap: wrap; }
}

@media (max-width: 640px) {
 body.obsidian-app.obsidian-rail { display: none; }
 body.obsidian-app.obsidian-hide-mobile { display: none!important; }
 body.obsidian-app #stagePad { padding: 1rem!important; }
}

@media (max-width: 767px) {
 body.obsidian-app.obsidian-focus-mode {
 overflow: hidden;
 }
 body.obsidian-app.obsidian-focus-mode.obsidian-shell {
 height: 100dvh;
 max-height: 100dvh;
 overflow: hidden;
 }
}

/* ── VOLTA Showcase ── */
@media (max-width: 767px) {
.showcase-mobile-only { display: grid!important; }
.showcase-mobile-menu {
 max-height: 0;
 overflow: hidden;
 transition: max-height.35s ease;
 }
.showcase-mobile-menu.open { max-height: 360px; }
.showcase-hl-wrap { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.showcase-hl-wrap.glass-soft { flex-wrap: nowrap; min-width: max-content; }
.showcase-scroll-hint {
 display: flex;
 align-items: center;
 gap:.35rem;
 padding:.5rem 1rem;
 font-size: 10px;
 color: rgba(147, 161, 196,.9);
 border-bottom: 1px solid rgba(255, 255, 255,.06);
 }
}
@media (min-width: 768px) {
.showcase-scroll-hint { display: none; }
.showcase-mobile-only { display: none!important; }
}
