/*
 * ACM Auth Forms — v4.9.0
 * PlugSend Auth design adapted for API Connect Manager
 * Uses --acm-accent, --acm-accent-r/g/b set by template
 * All selectors scoped to #acm-auth-wrap
 * ──────────────────────────────────────────────────────
 */

/* ── Scoped reset ── */
#acm-auth-wrap,
#acm-auth-wrap *,
#acm-auth-wrap *::before,
#acm-auth-wrap *::after {
    box-sizing: border-box !important;
    font-family: 'Plus Jakarta Sans', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
    line-height: 1.5 !important;
}

#acm-auth-wrap h1,
#acm-auth-wrap h2,
#acm-auth-wrap h3,
#acm-auth-wrap p,
#acm-auth-wrap span,
#acm-auth-wrap div,
#acm-auth-wrap form,
#acm-auth-wrap label,
#acm-auth-wrap a,
#acm-auth-wrap button,
#acm-auth-wrap input {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    outline: none !important;
    background: none !important;
    box-shadow: none !important;
    text-decoration: none !important;
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
}

/* ── SVG icon base ── */
#acm-auth-wrap .acm-a-icon {
    width: 1em !important;
    height: 1em !important;
    display: inline-block !important;
    vertical-align: -0.125em !important;
    fill: currentColor !important;
    flex-shrink: 0 !important;
}

@keyframes acm-a-spin {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}
#acm-auth-wrap .acm-a-spin {
    animation: acm-a-spin 1s linear infinite !important;
}

/* ══════════════════════════════════════
   WRAPPER
   ══════════════════════════════════════ */
#acm-auth-wrap.acm-a-wrapper {
    position: relative !important;
    width: 100% !important;
    min-height: 100vh !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 40px 16px !important;
    overflow: hidden !important;
    background:
        radial-gradient(ellipse 80% 60% at 10% 20%, rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.18) 0%, transparent 60%),
        radial-gradient(ellipse 60% 80% at 90% 80%, rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.12) 0%, transparent 60%),
        radial-gradient(ellipse 50% 50% at 50% 50%, rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.08) 0%, transparent 70%),
        linear-gradient(135deg, #060a12 0%, #0a0f1a 40%, #080c16 100%) !important;
    background-size: 200% 200% !important;
    animation: acm-a-meshShift 20s ease-in-out infinite !important;
}

@keyframes acm-a-meshShift {
    0%, 100% { background-position: 0% 50%; }
    50%      { background-position: 100% 50%; }
}

#acm-auth-wrap.acm-a-wrapper::after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    opacity: 0.025 !important;
    background: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E") !important;
    pointer-events: none !important;
    z-index: 0 !important;
}

/* ══════════════════════════════════════
   PARTICLES
   ══════════════════════════════════════ */
#acm-auth-wrap .acm-a-particles {
    position: absolute !important;
    inset: 0 !important;
    pointer-events: none !important;
    overflow: hidden !important;
    z-index: 0 !important;
}
#acm-auth-wrap .acm-a-particle {
    position: absolute !important;
    border-radius: 50% !important;
    display: block !important;
}
#acm-auth-wrap .acm-a-particle-1 {
    top: -128px !important;
    left: -128px !important;
    width: 420px !important;
    height: 420px !important;
    background: rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.07) !important;
    filter: blur(100px) !important;
    animation: acm-a-floatSlow 7s ease-in-out infinite !important;
}
#acm-auth-wrap .acm-a-particle-2 {
    top: 33% !important;
    right: 0 !important;
    width: 300px !important;
    height: 300px !important;
    background: rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.05) !important;
    filter: blur(80px) !important;
    animation: acm-a-floatMid 5s ease-in-out infinite 1.5s !important;
}
#acm-auth-wrap .acm-a-particle-3 {
    bottom: 0 !important;
    left: 25% !important;
    width: 250px !important;
    height: 250px !important;
    background: rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.06) !important;
    filter: blur(90px) !important;
    animation: acm-a-floatFast 3s ease-in-out infinite 0.8s !important;
}
#acm-auth-wrap .acm-a-grid-overlay {
    position: absolute !important;
    inset: 0 !important;
    opacity: 0.02 !important;
    background-image:
        linear-gradient(rgba(255,255,255,0.05) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.05) 1px, transparent 1px) !important;
    background-size: 60px 60px !important;
}

@keyframes acm-a-floatSlow  { 0%,100%{ transform: translateY(0) rotate(0deg); } 50%{ transform: translateY(-30px) rotate(3deg); } }
@keyframes acm-a-floatMid   { 0%,100%{ transform: translateY(0) rotate(0deg); } 50%{ transform: translateY(-18px) rotate(-2deg); } }
@keyframes acm-a-floatFast  { 0%,100%{ transform: translateY(0); } 50%{ transform: translateY(-12px); } }

/* ══════════════════════════════════════
   CONTAINER
   ══════════════════════════════════════ */
#acm-auth-wrap .acm-a-container {
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
    max-width: 420px !important;
    animation: acm-a-fadeUp 0.7s ease-out both !important;
}

@keyframes acm-a-fadeUp {
    from { opacity: 0; transform: translateY(24px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ══════════════════════════════════════
   HEADLINE
   ══════════════════════════════════════ */
#acm-auth-wrap .acm-a-headline {
    text-align: center !important;
    margin-bottom: 32px !important;
}
#acm-auth-wrap .acm-a-headline h1 {
    font-size: 26px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    letter-spacing: -0.02em !important;
    margin-bottom: 8px !important;
    line-height: 1.3 !important;
}
#acm-auth-wrap .acm-a-headline .acm-a-highlight {
    background: linear-gradient(to right, var(--acm-accent), color-mix(in srgb, var(--acm-accent) 70%, #fff)) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
}
#acm-auth-wrap .acm-a-headline p {
    color: #9ca3af !important;
    font-size: 15px !important;
    font-weight: 400 !important;
}

/* ══════════════════════════════════════
   GLASS CARD
   ══════════════════════════════════════ */
#acm-auth-wrap .acm-a-card {
    position: relative !important;
    border-radius: 16px !important;
    padding: 4px !important;
    background-color: rgba(15, 20, 35, 0.65) !important;
    background-image: none !important;
    -webkit-backdrop-filter: blur(24px) saturate(1.4) !important;
    backdrop-filter: blur(24px) saturate(1.4) !important;
    border: 1px solid rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.12) !important;
    box-shadow:
        0 0 0 1px rgba(255,255,255,0.03),
        0 8px 40px rgba(0,0,0,0.45),
        inset 0 1px 0 rgba(255,255,255,0.04) !important;
    overflow: visible !important;
}
#acm-auth-wrap .acm-a-card::before {
    content: '' !important;
    position: absolute !important;
    inset: -1px !important;
    border-radius: inherit !important;
    padding: 1px !important;
    background: linear-gradient(160deg, rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.35), transparent 40%, transparent 60%, rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.2)) !important;
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0) !important;
    -webkit-mask-composite: xor !important;
    mask-composite: exclude !important;
    pointer-events: none !important;
    z-index: 0 !important;
}

/* ══════════════════════════════════════
   TABS
   ══════════════════════════════════════ */
#acm-auth-wrap .acm-a-tabs {
    position: relative !important;
    z-index: 1 !important;
    display: flex !important;
    border-radius: 12px !important;
    background-color: rgba(255,255,255,0.03) !important;
    background-image: none !important;
    padding: 4px !important;
    margin-bottom: 4px !important;
}
#acm-auth-wrap .acm-a-tab-indicator {
    position: absolute !important;
    top: 4px !important;
    bottom: 4px !important;
    left: 4px !important;
    width: calc(50% - 4px) !important;
    border-radius: 8px !important;
    background: linear-gradient(135deg, rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.9), color-mix(in srgb, var(--acm-accent) 75%, #000)) !important;
    box-shadow: 0 4px 12px rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.2) !important;
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
    z-index: 0 !important;
}
#acm-auth-wrap .acm-a-tab-indicator.acm-a-tab-register {
    transform: translateX(calc(100% + 4px)) !important;
}
#acm-auth-wrap .acm-a-tab-btn {
    position: relative !important;
    z-index: 1 !important;
    flex: 1 !important;
    padding: 12px 0 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-align: center !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    background: none !important;
    border: none !important;
    color: #9ca3af !important;
    transition: color 0.3s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
}
#acm-auth-wrap .acm-a-tab-btn .acm-a-icon {
    width: 14px !important;
    height: 14px !important;
    fill: currentColor !important;
}
#acm-auth-wrap .acm-a-tab-btn.active {
    color: #ffffff !important;
}
#acm-auth-wrap .acm-a-tab-btn:not(.active):hover {
    color: #d1d5db !important;
}

/* ══════════════════════════════════════
   PANELS
   ══════════════════════════════════════ */
#acm-auth-wrap .acm-a-panels {
    position: relative !important;
    z-index: 2 !important;
    overflow: visible !important;
    border-radius: 12px !important;
}
#acm-auth-wrap .acm-a-panel {
    padding: 28px !important;
    display: none !important;
    animation: acm-a-panelIn 0.35s ease-out both !important;
}
#acm-auth-wrap .acm-a-panel.acm-a-panel-active {
    display: block !important;
}
@keyframes acm-a-panelIn {
    from { opacity: 0; transform: translateX(30px); }
    to   { opacity: 1; transform: translateX(0); }
}

/* ══════════════════════════════════════
   FORM FIELDS
   ══════════════════════════════════════ */
#acm-auth-wrap .acm-a-field-group {
    margin-bottom: 16px !important;
}
#acm-auth-wrap .acm-a-field-group label {
    display: block !important;
    margin-bottom: 6px !important;
    font-weight: 500 !important;
    color: #d1d5db !important;
    font-size: 13px !important;
    letter-spacing: 0.01em !important;
}
#acm-auth-wrap .acm-a-input-wrap {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
}
/* Icon inside input (left) */
#acm-auth-wrap .acm-a-input-wrap > .acm-a-icon:first-child {
    position: absolute !important;
    left: 14px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 16px !important;
    height: 16px !important;
    color: #6b7280 !important;
    fill: #6b7280 !important;
    pointer-events: none !important;
    z-index: 2 !important;
}

/* INPUTS */
body #acm-auth-wrap .acm-a-input-wrap input[type="text"],
body #acm-auth-wrap .acm-a-input-wrap input[type="email"],
body #acm-auth-wrap .acm-a-input-wrap input[type="password"],
body #acm-auth-wrap .acm-a-input-wrap input[type="tel"],
#acm-auth-wrap .acm-a-input-wrap input[type="text"],
#acm-auth-wrap .acm-a-input-wrap input[type="email"],
#acm-auth-wrap .acm-a-input-wrap input[type="password"],
#acm-auth-wrap .acm-a-input-wrap input[type="tel"] {
    width: 100% !important;
    height: auto !important;
    padding: 12px 14px 12px 42px !important;
    border-radius: 10px !important;
    border: 1px solid rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.15) !important;
    background-color: rgba(10, 15, 26, 0.6) !important;
    background-image: none !important;
    color: #e5e7eb !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    transition: border-color 0.25s, box-shadow 0.25s !important;
    line-height: 1.5 !important;
    box-shadow: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    margin: 0 !important;
}
#acm-auth-wrap .acm-a-input-wrap input::placeholder {
    color: #4b5563 !important;
    opacity: 1 !important;
}
body #acm-auth-wrap .acm-a-input-wrap input:focus,
#acm-auth-wrap .acm-a-input-wrap input:focus {
    border-color: var(--acm-accent) !important;
    box-shadow: 0 0 0 3px rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.18) !important;
    background-color: rgba(10, 15, 26, 0.8) !important;
    background-image: none !important;
    outline: none !important;
}

/* Field rows (side by side) */
#acm-auth-wrap .acm-a-field-row {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
}

/* ── Toggle password ── */
#acm-auth-wrap .acm-a-toggle-pass {
    position: absolute !important;
    right: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    background: none !important;
    border: none !important;
    cursor: pointer !important;
    color: #6b7280 !important;
    padding: 4px !important;
    z-index: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
#acm-auth-wrap .acm-a-toggle-pass .acm-a-icon {
    width: 16px !important;
    height: 16px !important;
    fill: #6b7280 !important;
}
#acm-auth-wrap .acm-a-toggle-pass:hover .acm-a-icon {
    fill: #9ca3af !important;
}

/* ── Remember me + Forgot ── */
#acm-auth-wrap .acm-a-row-between {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 20px !important;
}
#acm-auth-wrap .acm-a-checkbox {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    cursor: pointer !important;
    font-size: 13px !important;
    color: #9ca3af !important;
}
#acm-auth-wrap .acm-a-checkbox span {
    color: #9ca3af !important;
    font-size: 13px !important;
}
#acm-auth-wrap .acm-a-checkbox input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    accent-color: var(--acm-accent) !important;
    cursor: pointer !important;
    -webkit-appearance: auto !important;
    appearance: auto !important;
}
#acm-auth-wrap a.acm-a-link,
#acm-auth-wrap .acm-a-link {
    color: var(--acm-accent) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    background: none !important;
}
#acm-auth-wrap a.acm-a-link:hover,
#acm-auth-wrap .acm-a-link:hover {
    color: color-mix(in srgb, var(--acm-accent) 70%, #fff) !important;
    text-decoration: underline !important;
}

/* ══════════════════════════════════════
   SUBMIT BUTTON
   ══════════════════════════════════════ */
body #acm-auth-wrap button.acm-a-btn,
#acm-auth-wrap button.acm-a-btn,
#acm-auth-wrap .acm-a-btn {
    width: 100% !important;
    padding: 14px 24px !important;
    border-radius: 10px !important;
    background: linear-gradient(135deg, var(--acm-accent), color-mix(in srgb, var(--acm-accent) 75%, #000)) !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    cursor: pointer !important;
    transition: transform 0.2s, box-shadow 0.2s !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    letter-spacing: 0.01em !important;
    line-height: 1 !important;
    border: none !important;
    box-shadow: none !important;
}
body #acm-auth-wrap button.acm-a-btn:hover,
#acm-auth-wrap button.acm-a-btn:hover,
#acm-auth-wrap .acm-a-btn:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 24px rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.35) !important;
    background: linear-gradient(135deg, var(--acm-accent), color-mix(in srgb, var(--acm-accent) 75%, #000)) !important;
}
#acm-auth-wrap .acm-a-btn:active {
    transform: translateY(0) !important;
}
#acm-auth-wrap .acm-a-btn:disabled {
    opacity: 0.6 !important;
    cursor: not-allowed !important;
    transform: none !important;
}
#acm-auth-wrap .acm-a-btn-text {
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}
#acm-auth-wrap .acm-a-btn-text .acm-a-icon {
    width: 14px !important;
    height: 14px !important;
    fill: #fff !important;
}
#acm-auth-wrap .acm-a-btn-loader {
    display: inline-flex !important;
    align-items: center !important;
}
#acm-auth-wrap .acm-a-btn-loader .acm-a-icon {
    width: 18px !important;
    height: 18px !important;
    fill: #fff !important;
}

/* ══════════════════════════════════════
   MESSAGES
   ══════════════════════════════════════ */
#acm-auth-wrap .acm-a-msg {
    border-radius: 10px !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    font-weight: 500 !important;
    display: none !important;
}
#acm-auth-wrap .acm-a-msg.acm-a-msg-visible {
    display: block !important;
    padding: 12px 16px !important;
    margin-bottom: 16px !important;
}
#acm-auth-wrap .acm-a-msg.acm-a-msg-error {
    background: rgba(239,68,68,0.12) !important;
    border: 1px solid rgba(239,68,68,0.3) !important;
    color: #fca5a5 !important;
}
#acm-auth-wrap .acm-a-msg.acm-a-msg-success {
    background: rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.12) !important;
    border: 1px solid rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.3) !important;
    color: color-mix(in srgb, var(--acm-accent) 60%, #fff) !important;
}

/* ══════════════════════════════════════
   PASSWORD STRENGTH
   ══════════════════════════════════════ */
#acm-auth-wrap .acm-a-password-strength {
    height: 4px !important;
    border-radius: 2px !important;
    margin-top: 8px !important;
    background: rgba(255,255,255,0.06) !important;
    overflow: hidden !important;
}
#acm-auth-wrap .acm-a-password-strength .acm-a-str-bar {
    height: 100% !important;
    border-radius: 2px !important;
    transition: width 0.3s, background 0.3s !important;
}

/* ══════════════════════════════════════
   FORGOT PASSWORD
   ══════════════════════════════════════ */
#acm-auth-wrap .acm-a-forgot-header {
    text-align: center !important;
    margin-bottom: 24px !important;
}
#acm-auth-wrap .acm-a-forgot-icon {
    width: 56px !important;
    height: 56px !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.15), rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.08)) !important;
    border: 1px solid rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.2) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 16px !important;
}
#acm-auth-wrap .acm-a-forgot-icon .acm-a-icon {
    width: 24px !important;
    height: 24px !important;
    fill: var(--acm-accent) !important;
}
#acm-auth-wrap .acm-a-forgot-header h2 {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    margin-bottom: 8px !important;
    line-height: 1.3 !important;
}
#acm-auth-wrap .acm-a-forgot-header p {
    color: #9ca3af !important;
    font-size: 14px !important;
}
body #acm-auth-wrap button.acm-a-back-link,
#acm-auth-wrap button.acm-a-back-link,
#acm-auth-wrap .acm-a-back-link {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    margin-top: 16px !important;
    background: none !important;
    border: none !important;
    color: var(--acm-accent) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    width: 100% !important;
}
#acm-auth-wrap .acm-a-back-link:hover {
    color: color-mix(in srgb, var(--acm-accent) 70%, #fff) !important;
}
#acm-auth-wrap .acm-a-back-link .acm-a-icon {
    width: 12px !important;
    height: 12px !important;
    fill: currentColor !important;
}

/* ══════════════════════════════════════
   TRUST BADGES
   ══════════════════════════════════════ */
#acm-auth-wrap .acm-a-badges {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 20px !important;
    margin-top: 24px !important;
}
#acm-auth-wrap .acm-a-badges > span {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 12px !important;
    color: #6b7280 !important;
    font-weight: 400 !important;
}
#acm-auth-wrap .acm-a-badges > span > .acm-a-icon {
    width: 12px !important;
    height: 12px !important;
    fill: rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.6) !important;
}

/* ══════════════════════════════════════
   PHONE TOOLTIP
   ══════════════════════════════════════ */
#acm-auth-wrap .acm-a-field-phone-wrap {
    position: relative !important;
    z-index: 60 !important;
}
#acm-auth-wrap .acm-a-phone-tip {
    position: absolute !important;
    bottom: 0 !important;
    left: calc(100% + 14px) !important;
    top: auto !important;
    right: auto !important;
    width: 280px !important;
    z-index: 100 !important;
    background-color: rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.08) !important;
    background-image: none !important;
    -webkit-backdrop-filter: blur(16px) !important;
    backdrop-filter: blur(16px) !important;
    border: 1px solid rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.22) !important;
    border-left: 3px solid rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.6) !important;
    border-radius: 10px !important;
    padding: 14px 16px !important;
    box-shadow:
        0 8px 24px rgba(0,0,0,0.25),
        inset 0 1px 0 rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.06) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateX(6px) !important;
    transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s !important;
    pointer-events: none !important;
}
#acm-auth-wrap .acm-a-phone-tip.acm-a-tip-visible {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateX(0) !important;
    pointer-events: auto !important;
}
/* Arrow pointing left */
#acm-auth-wrap .acm-a-phone-tip-arrow {
    position: absolute !important;
    left: -6px !important;
    bottom: 18px !important;
    top: auto !important;
    width: 12px !important;
    height: 12px !important;
    background-color: rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.08) !important;
    border-bottom: 1px solid rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.22) !important;
    border-left: 1px solid rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.22) !important;
    transform: rotate(45deg) !important;
    border-radius: 0 0 0 2px !important;
}
#acm-auth-wrap .acm-a-phone-tip-icon {
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    background: rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.12) !important;
    border: 1px solid rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.2) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 10px !important;
}
#acm-auth-wrap .acm-a-phone-tip-icon .acm-a-icon {
    width: 16px !important;
    height: 16px !important;
    fill: var(--acm-accent) !important;
}
#acm-auth-wrap .acm-a-phone-tip p {
    color: #c4c9d6 !important;
    font-size: 11.5px !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
    margin-bottom: 8px !important;
}
#acm-auth-wrap .acm-a-phone-tip p:last-child {
    margin-bottom: 0 !important;
    color: #9ca3b4 !important;
    font-style: italic !important;
}

/* Mobile: tooltip above the input */
@media (max-width: 768px) {
    #acm-auth-wrap .acm-a-phone-tip {
        left: 0 !important;
        right: 0 !important;
        bottom: calc(100% + 10px) !important;
        top: auto !important;
        width: auto !important;
        transform: translateY(-6px) !important;
        background-color: #0f1223 !important;
        background-image: none !important;
        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;
        border: 1px solid rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.25) !important;
        border-left: 3px solid rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.6) !important;
        box-shadow: 0 12px 40px rgba(0,0,0,0.55) !important;
    }
    #acm-auth-wrap .acm-a-phone-tip.acm-a-tip-visible {
        transform: translateY(0) !important;
    }
    #acm-auth-wrap .acm-a-phone-tip-arrow {
        left: 24px !important;
        bottom: -6px !important;
        top: auto !important;
        border-top: none !important;
        border-right: none !important;
        border-bottom: 1px solid rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.25) !important;
        border-left: 1px solid rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.25) !important;
        background-color: #0f1223 !important;
        transform: rotate(-45deg) !important;
        border-radius: 0 0 0 2px !important;
    }
}

/* ══════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════ */
@media (max-width: 520px) {
    #acm-auth-wrap .acm-a-field-row {
        grid-template-columns: 1fr !important;
        gap: 0 !important;
    }
}
@media (max-width: 480px) {
    #acm-auth-wrap .acm-a-panel {
        padding: 20px !important;
    }
    #acm-auth-wrap .acm-a-headline h1 {
        font-size: 22px !important;
    }
    #acm-auth-wrap .acm-a-badges {
        gap: 12px !important;
    }
}

/* ══════════════════════════════════════
   WP / THEME OVERRIDES
   ══════════════════════════════════════ */
.entry-content #acm-auth-wrap,
.page-content #acm-auth-wrap,
.post-content #acm-auth-wrap,
article #acm-auth-wrap,
.site-content #acm-auth-wrap,
.elementor-widget-container #acm-auth-wrap {
    max-width: none !important;
    width: 100% !important;
    float: none !important;
}

body .entry-content #acm-auth-wrap .acm-a-card,
body .page-content #acm-auth-wrap .acm-a-card,
body #acm-auth-wrap .acm-a-card {
    background-color: rgba(15, 20, 35, 0.65) !important;
    background-image: none !important;
    border: 1px solid rgba(var(--acm-accent-r), var(--acm-accent-g), var(--acm-accent-b), 0.12) !important;
    box-shadow:
        0 0 0 1px rgba(255,255,255,0.03),
        0 8px 40px rgba(0,0,0,0.45),
        inset 0 1px 0 rgba(255,255,255,0.04) !important;
}
