/* Aurora Pro Suite extended controls */

#proCtxMenu {
 position: fixed;
 z-index: 90;
 min-width: 11rem;
 padding:.35rem;
 border-radius:.75rem;
 display: none;
 box-shadow: 0 20px 50px -12px rgba(0, 0, 0,.85);
}
#proCtxMenu.open { display: block; }
#proCtxMenu button {
 display: flex;
 width: 100%;
 align-items: center;
 gap:.5rem;
 padding:.45rem.65rem;
 border-radius:.5rem;
 font-size: 11px;
 font-weight: 600;
 color: #e2e8f0;
 text-align: left;
}
#proCtxMenu button:hover { background: rgba(34, 211, 238,.12); color: #a5f3fc; }
#proCtxMenu hr { margin:.25rem 0; border-color: rgba(255, 255, 255,.08); }

#proGapOverlay {
 position: fixed;
 z-index: 25;
 pointer-events: none;
 font-size: 9px;
 font-weight: 700;
 color: #f472b6;
}
.pro-gap-label {
 position: absolute;
 padding: 1px 4px;
 border-radius: 3px;
 background: rgba(15, 23, 42,.85);
 border: 1px solid rgba(244, 114, 182,.45);
 white-space: nowrap;
}

#proMagicModal,
#proAiPanel,
#proBreakpointBar {
 flex-shrink: 0;
}

#proMagicModal {
 position: fixed;
 inset: 0;
 z-index: 85;
 display: none;
 align-items: center;
 justify-content: center;
 padding: 1rem;
 background: rgba(2, 6, 23,.78);
 backdrop-filter: blur(6px);
}
#proMagicModal.open { display: flex; }

.pro-magic-grid {
 display: grid;
 grid-template-columns: repeat(2, 1fr);
 gap:.5rem;
}
@media (min-width: 640px) {.pro-magic-grid { grid-template-columns: repeat(4, 1fr); } }

#proAiPanel {
 position: fixed;
 top: 0;
 right: 0;
 z-index: 70;
 width: min(340px, 92vw);
 height: 100%;
 transform: translateX(105%);
 transition: transform.28s cubic-bezier(.22, 1,.36, 1);
 box-shadow: -20px 0 60px -20px rgba(0, 0, 0,.8);
}
#proAiPanel.open { transform: translateX(0); }

#proBreakpointBar {
 display: flex;
 align-items: center;
 gap:.35rem;
 padding:.3rem.65rem;
 border-radius: 1rem;
}
#proBreakpointBar button.on {
 border-color: rgba(251, 146, 60,.7)!important;
 background: rgba(251, 146, 60,.2)!important;
 color: #fdba74!important;
}

#proLayerSearch {
 width: 100%;
 margin-bottom:.5rem;
 padding:.35rem.5rem;
 border-radius:.5rem;
 font-size: 11px;
 background: rgba(15, 23, 42,.6);
 border: 1px solid rgba(255, 255, 255,.1);
 color: #e2e8f0;
}

.pro-effects-section label { display: block; font-size: 10px; color: #94a3b8; margin-top:.5rem; }

#proSnapBadge {
 position: fixed;
 bottom: 4.5rem;
 left: 50%;
 transform: translateX(-50%);
 z-index: 40;
 padding:.2rem.55rem;
 border-radius: 999px;
 font-size: 9px;
 font-weight: 700;
 letter-spacing:.08em;
 opacity: 0;
 transition: opacity.2s;
 pointer-events: none;
}
#proSnapBadge.show { opacity: 1; }

/* Creative copy review + live editor */
.pro-copy-review {
 position: fixed;
 inset: 0;
 z-index: 92;
 display: none;
 align-items: center;
 justify-content: center;
 padding: 1rem;
 background: rgba(2, 6, 23,.82);
 backdrop-filter: blur(8px);
}
.pro-copy-review.open { display: flex; }

.pro-copy-review-card {
 position: relative;
 width: min(520px, 96vw);
 max-height: min(90vh, 780px);
 display: flex;
 flex-direction: column;
 padding: 1rem 1.1rem;
 border-radius: 1rem;
 overflow: hidden;
}
.pro-copy-review-head {
 display: flex;
 align-items: flex-start;
 justify-content: space-between;
 gap:.75rem;
 margin-bottom:.5rem;
}
.pro-copy-review-body {
 overflow-y: auto;
 padding-right:.25rem;
 flex: 1;
}
.pro-copy-review-foot {
 display: flex;
 justify-content: flex-end;
 gap:.5rem;
 margin-top:.75rem;
 padding-top:.75rem;
 border-top: 1px solid rgba(255,255,255,.08);
}
.pro-copy-field { margin-bottom:.75rem; }
.pro-copy-field-head {
 display: flex;
 align-items: center;
 justify-content: space-between;
 margin-bottom:.35rem;
}
.pro-copy-count {
 font-size: 9px;
 color: #64748b;
 font-weight: 600;
}
.pro-copy-input { font-size: 12px!important; }
.pro-copy-field-actions {
 display: flex;
 gap:.35rem;
 margin-top:.35rem;
 flex-wrap: wrap;
}
.pro-copy-hooks-wrap { margin-top:.25rem; }
.pro-copy-hooks {
 display: flex;
 flex-wrap: wrap;
 gap:.35rem;
 margin-top:.35rem;
}
.pro-copy-hook {
 font-size: 10px!important;
 max-width: 100%;
 white-space: normal;
 text-align: left;
 line-height: 1.3;
}
.pro-copy-busy {
 position: absolute;
 inset: 0;
 display: flex;
 align-items: center;
 justify-content: center;
 background: rgba(2, 6, 23,.55);
}
.pro-copy-busy.hidden { display: none; }
.pro-copy-busy-inner {
 padding:.65rem 1rem;
 border-radius:.75rem;
 font-size: 11px;
 font-weight: 600;
}
#proCopyStudio.pro-copy-field { margin-bottom:.55rem; }
#proCopyStudio.pro-copy-field-actions button { font-size: 9px; padding:.25rem.45rem; }
