/* Analytix66 vibe layer (new file). Public pages: dark gradient look that matches the Prismora page.
   Dashboard (.a66-app): light touch only. High contrast; state is shown with icons, labels and underlines, never colour alone. */

/* ---------- Public pages (wrapper + login/register) ---------- */
.a66-vibe{--v-bg:#0b0b1a;--v-card:#151530;--v-line:rgba(255,255,255,.16);--v-text:#f5f5ff;--v-muted:#c9c9e3;--v-link:#9fd8ff;--v-ok:#3ee08f;
  --body-bg:#0b0b1a;--white:#11112a;--gray-50:#0b0b1a;--gray-100:#151530;--gray-200:#232347;--gray-300:#2e2e5a;
  color:var(--v-text);
  background:radial-gradient(1100px 600px at 0% -5%,rgba(124,92,255,.28),transparent 60%),radial-gradient(900px 600px at 100% 10%,rgba(20,210,230,.16),transparent 60%),var(--v-bg) fixed;
  background-color:var(--v-bg)!important;letter-spacing:-.005em}
.a66-vibe h1,.a66-vibe h2,.a66-vibe h3,.a66-vibe h4,.a66-vibe .h1,.a66-vibe .h2,.a66-vibe .h3,.a66-vibe .h4{color:#fff;font-weight:800;letter-spacing:-.02em}
.a66-vibe h5,.a66-vibe h6,.a66-vibe .h5,.a66-vibe .h6{color:#fff;font-weight:700}
.a66-vibe .text-muted{color:var(--v-muted)!important}
.a66-vibe .text-dark,.a66-vibe .text-gray-800,.a66-vibe .text-gray-900{color:#fff!important}
.a66-vibe .text-primary{color:var(--v-link)!important}
.a66-vibe .bg-white,.a66-vibe .bg-gray-50,.a66-vibe .bg-gray-100{background-color:transparent!important}
.a66-vibe main p a:not(.btn),.a66-vibe main li a:not(.btn):not(.dropdown-item),.a66-vibe main .card-body a:not(.btn){color:var(--v-link);text-decoration:underline;text-underline-offset:3px}
.a66-vibe ::selection{background:#6d4dff;color:#fff}
.a66-vibe :focus-visible{outline:3px solid #fff!important;outline-offset:3px}

/* Navbar: glass bar */
.a66-vibe .navbar-main{background:rgba(11,11,26,.72);border-bottom:1px solid var(--v-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.a66-vibe .navbar-main .nav-link{color:#e9e9ff!important;font-weight:600}
.a66-vibe .navbar-main .nav-link:hover,.a66-vibe .navbar-main .nav-link:focus{color:#fff!important;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}
.a66-vibe .navbar-main .nav-link.active,.a66-vibe .navbar-main .active>.nav-link{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:3px}
.a66-vibe .navbar-logo{filter:drop-shadow(0 0 10px rgba(124,92,255,.45))}
.a66-vibe .navbar-custom-toggler{color:#fff;border:2px solid rgba(255,255,255,.5)}
.a66-vibe .dropdown-menu{background:#151530;border:1px solid var(--v-line);box-shadow:0 20px 50px rgba(0,0,0,.5)}
.a66-vibe .dropdown-item{color:#e9e9ff}
.a66-vibe .dropdown-item:hover,.a66-vibe .dropdown-item:focus{background:rgba(255,255,255,.08);color:#fff;text-decoration:underline}
/* Theme switch does nothing on the always-dark public pages, so hide it there */
.a66-vibe #switch_theme_style{display:none!important}

/* Buttons */
.a66-vibe .btn{font-weight:700;transition:transform .15s ease,box-shadow .15s ease}
.a66-vibe .btn:not(.btn-link):not(.btn-sm):hover{transform:translateY(-2px)}
.a66-vibe .btn-primary{color:#fff!important;border:2px solid transparent;background:linear-gradient(90deg,#6d4dff,#1157d5 55%,#0fb7cc);box-shadow:0 10px 30px rgba(17,87,213,.45)}
.a66-vibe .btn-primary:hover,.a66-vibe .btn-primary:focus{box-shadow:0 14px 40px rgba(109,77,255,.6);background:linear-gradient(90deg,#7b5dff,#1a63e6 55%,#14c6dc)}
.a66-vibe .btn-primary.disabled,.a66-vibe .btn-primary:disabled{background:#2e2e5a;box-shadow:none;border:2px dashed rgba(255,255,255,.5)}
.a66-vibe .btn-outline-primary,.a66-vibe .btn-outline-secondary,.a66-vibe .btn-outline-gray-200{color:#fff!important;border:2px solid rgba(255,255,255,.55)!important;background:rgba(255,255,255,.06)}
.a66-vibe .btn-outline-primary:hover,.a66-vibe .btn-outline-secondary:hover,.a66-vibe .btn-outline-gray-200:hover{background:rgba(255,255,255,.14)}
.a66-vibe .btn-light{background:#fff!important;color:#0b0b1a!important;border:2px solid #fff!important}
.a66-vibe .btn-light:hover,.a66-vibe .btn-light:focus{background:#0b0b1a!important;color:#fff!important;text-decoration:underline}
.a66-vibe .btn-light.active{background:#0b0b1a!important;color:#fff!important;border-color:#fff!important;text-decoration:underline}
.a66-vibe .btn-group-custom .btn.active:before{content:"\25CF  "}

/* Cards: glowing glass */
.a66-vibe .card{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.03))!important;border:1px solid var(--v-line)!important;border-radius:18px;color:var(--v-text);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.a66-vibe main .card:hover{transform:translateY(-3px);border-color:rgba(159,216,255,.5)!important;box-shadow:0 0 0 1px rgba(159,216,255,.25),0 24px 60px rgba(109,77,255,.25)}
.a66-vibe .card.border-primary{border:2px solid #8f7bff!important;box-shadow:0 0 0 4px rgba(143,123,255,.2)}
.a66-vibe .card-header,.a66-vibe .card-footer{background:transparent;border-color:var(--v-line)}
.a66-vibe .border,.a66-vibe .border-gray-100,.a66-vibe .border-gray-200,.a66-vibe .border-gray-300,.a66-vibe .border-primary-100{border-color:var(--v-line)!important}
.a66-vibe .index-icon-container{background:linear-gradient(135deg,#6d4dff,#1157d5)!important;color:#fff!important;border-radius:12px;box-shadow:0 8px 24px rgba(109,77,255,.35)}
.a66-vibe .index-icon-container i{color:#fff!important}
.a66-vibe .badge-primary{background:#fff;color:#0b0b1a;border:2px solid #0b0b1a}
.a66-vibe .alert-info{background:rgba(159,216,255,.1);border:2px solid var(--v-link);color:#fff}

/* Images: framed with glow */
.a66-vibe main img.index-highly-rounded,.a66-vibe main img.shadow-lg,.a66-vibe .blog-post-image{border:1px solid rgba(255,255,255,.22)!important;border-radius:18px!important;box-shadow:0 30px 80px rgba(0,0,0,.55),0 0 0 6px rgba(255,255,255,.04)!important}

/* Forms */
.a66-vibe .form-control,.a66-vibe .custom-select{background-color:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.28);color:#fff}
.a66-vibe .form-control::placeholder{color:#a9a9c9}
.a66-vibe .form-control:focus,.a66-vibe .custom-select:focus{border-color:#fff;box-shadow:0 0 0 3px rgba(159,216,255,.35);background-color:rgba(255,255,255,.1);color:#fff}
.a66-vibe label{color:#e9e9ff;font-weight:600}

/* Homepage hero */
.a66-vibe .a66v-hero{position:relative;overflow:hidden;padding:5.5rem 0 4rem;margin-top:-1px;background:radial-gradient(900px 500px at 10% -10%,rgba(124,92,255,.55),transparent 60%),radial-gradient(800px 500px at 100% 0,rgba(20,210,230,.35),transparent 60%),radial-gradient(700px 500px at 50% 120%,rgba(17,87,213,.45),transparent 60%)}
.a66-vibe .a66v-hero:before{content:"";position:absolute;inset:-40%;background:conic-gradient(from 0deg,transparent,rgba(124,92,255,.18),transparent 30%,rgba(20,210,230,.16),transparent 60%);animation:a66v-spin 28s linear infinite;pointer-events:none}
.a66-vibe .a66v-hero>.container{position:relative;z-index:1}
@keyframes a66v-spin{to{transform:rotate(360deg)}}
.a66-vibe .a66v-badge{display:inline-flex!important;align-items:center;gap:.4rem;border:1px solid rgba(255,255,255,.4)!important;background:rgba(255,255,255,.08)!important;color:#fff!important;padding:.45rem 1rem!important;font-weight:700;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}
.a66-vibe .a66v-badge i{color:var(--v-ok)}
.a66-vibe .a66v-title{font-size:clamp(2.4rem,5.6vw,4.4rem)!important;line-height:1.04!important;font-weight:900!important;letter-spacing:-.035em;background:linear-gradient(90deg,#fff 0%,#d9d2ff 30%,#a993ff 55%,#5aa2ff 75%,#3fe6f5 100%);-webkit-background-clip:text;background-clip:text;color:transparent!important;padding-bottom:.08em}
.a66-vibe .a66v-hero .index-subheader{color:var(--v-muted)!important;font-size:1.25rem}
.a66-vibe .a66v-hero .index-button{padding:1rem 2.2rem;font-size:1.1rem;border-radius:14px!important}
.a66-vibe .index-background-wrapper{display:none}
.a66v-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:3rem}
.a66v-stat{background:rgba(255,255,255,.06);border:1px solid var(--v-line,rgba(255,255,255,.16));border-radius:16px;padding:1rem 1.2rem;color:#fff}
.a66v-stat i{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border-radius:10px;background:linear-gradient(135deg,#6d4dff,#1157d5);color:#fff;margin-bottom:.6rem}
.a66v-stat:nth-child(2) i{background:linear-gradient(135deg,#1157d5,#0fb7cc)}.a66v-stat:nth-child(3) i{background:linear-gradient(135deg,#b23cff,#6d4dff)}
.a66v-stat strong{display:block;font-size:1.15rem;font-weight:800}
.a66v-stat span{color:#c9c9e3;font-size:.9rem}
@media (max-width:767px){.a66v-stats{grid-template-columns:repeat(2,1fr)}.a66-vibe .a66v-hero{padding:3.5rem 0 2.5rem}}

/* Section eyebrows (uppercase primary labels) */
.a66-vibe .text-uppercase.font-weight-bold.text-primary{color:var(--v-link)!important;letter-spacing:.08em;font-size:.85rem;font-weight:800!important}

/* Pricing */
.a66-vibe .pricing-plan{background:var(--v-card);border:2px solid var(--v-line)!important;border-radius:22px!important;overflow:visible;transition:transform .2s ease,box-shadow .2s ease}
.a66-vibe .pricing-plan:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(109,77,255,.25)}
.a66-vibe .pricing-header,.a66-vibe .pricing-body{background:transparent!important}
.a66-vibe .pricing-name{color:#fff;font-weight:800;font-size:1.25rem}
.a66-vibe .pricing-price-amount,.a66-vibe .pricing-price-currency-symbol{color:#fff;font-weight:900}
.a66-vibe .pricing-details,.a66-vibe .pricing-price-currency{color:var(--v-muted)}
.a66-vibe .pricing-tag{background:#fff!important;color:#0b0b1a!important;border:2px solid #0b0b1a;font-weight:800;border-radius:999px}
.a66-vibe .a66-plan-popular{border-color:#8f7bff!important;box-shadow:0 0 0 4px rgba(143,123,255,.25),0 30px 70px rgba(109,77,255,.25)}
.a66-vibe .pricing-features .fa-check,.a66-vibe .text-success{color:var(--v-ok)!important}

/* FAQ / accordions */
.a66-vibe .index-faq .card{border-radius:14px}
.a66-vibe .index-faq .btn{color:#fff!important}

/* Blog */
.a66-vibe .custom-breadcrumbs,.a66-vibe .custom-breadcrumbs a{color:var(--v-muted)}
.a66-vibe .blog-post-image-popular{border-radius:10px}

/* Index CTA band */
.a66-vibe .index-cta{background:radial-gradient(700px 400px at 20% 0,rgba(124,92,255,.5),transparent 60%),radial-gradient(700px 400px at 100% 100%,rgba(20,210,230,.35),transparent 60%),#0d0d24!important;border:1px solid var(--v-line);border-radius:26px}
.a66-vibe .index-cta a.btn{background:#fff!important;color:#0b0b1a!important;border:2px solid #fff;font-weight:800}
.a66-vibe .index-cta a.btn:hover{background:#0b0b1a!important;color:#fff!important;text-decoration:underline}

/* Footer */
.a66-vibe .app-footer{border-top:1px solid var(--v-line);color:var(--v-muted);opacity:1}
.a66-vibe .app-footer a:not(.dropdown-item):not(.a66-footer-prismora){color:#e9e9ff!important}
.a66-vibe .app-footer a:not(.dropdown-item):hover{color:#fff!important;text-decoration:underline!important;text-underline-offset:3px}
.a66-vibe .footer-heading{color:#fff;font-weight:800}
.a66-vibe .a66-footer-prismora{color:#fff!important;background:linear-gradient(90deg,rgba(109,77,255,.35),rgba(15,183,204,.25))}

/* Login / register */
.a66-vibe-auth main .card{box-shadow:0 0 0 1px rgba(159,216,255,.18),0 30px 80px rgba(0,0,0,.5)}
.a66-vibe-auth main .card:hover{transform:none}

/* Entrance animation for cards (CSS only, no JS) */
@media (prefers-reduced-motion:no-preference){
  .a66-vibe .a66v-stat{animation:a66v-rise .7s ease both}
  .a66-vibe .a66v-stat:nth-child(2){animation-delay:.08s}.a66-vibe .a66v-stat:nth-child(3){animation-delay:.16s}.a66-vibe .a66v-stat:nth-child(4){animation-delay:.24s}
}
@keyframes a66v-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.a66-vibe .a66v-hero:before,.a66-vibe .a66v-stat{animation:none!important}.a66-vibe .btn:hover,.a66-vibe .card:hover,.a66-vibe .pricing-plan:hover{transform:none!important}}

/* ---------- Dashboard (.a66-app): light touch, works in light and dark themes ---------- */
.a66-app .btn-primary{border:2px solid transparent;background:linear-gradient(90deg,#6d4dff,#1157d5 55%,#0fb7cc);color:#fff!important;box-shadow:0 6px 18px rgba(17,87,213,.3);font-weight:700}
.a66-app .btn-primary:hover,.a66-app .btn-primary:focus{background:linear-gradient(90deg,#7b5dff,#1a63e6 55%,#14c6dc);box-shadow:0 10px 26px rgba(109,77,255,.4)}
.a66-app .btn-primary.disabled,.a66-app .btn-primary:disabled{background:var(--gray-400);box-shadow:none;border-style:dashed;border-color:var(--gray-600)}
.a66-app .card{border-radius:16px;transition:box-shadow .2s ease,border-color .2s ease}
.a66-app .card:hover{box-shadow:0 0 0 1px rgba(109,77,255,.25),0 14px 36px rgba(17,87,213,.12)}
.a66-app :focus-visible{outline:3px solid var(--primary-700,#1157d5);outline-offset:2px}
.a66-app h1,.a66-app .h1,.a66-app h2,.a66-app .h2{letter-spacing:-.02em;font-weight:800}
@media (prefers-reduced-motion:reduce){.a66-app .card{transition:none}}

/* ---------- v2: contrast hardening (all public views) ---------- */
/* Keep text light even if the light stylesheet gets loaded (theme cookie or the CTRL+I shortcut) */
.a66-vibe{--black:#fff;--dark:#e9e9ff;--gray-400:#a9a9c8;--gray-500:#c2c2dc;--gray-600:#d0d0e6;--gray-700:#dcdcef;--gray-800:#ececf8;--gray-900:#fff;--body-color:#f5f5ff}
.a66-vibe main,.a66-vibe .container>.card,.a66-vibe .card,.a66-vibe .card-body{color:var(--v-text)}
.a66-vibe h1,.a66-vibe h2,.a66-vibe h3,.a66-vibe h4,.a66-vibe h5,.a66-vibe h6,
.a66-vibe .h1,.a66-vibe .h2,.a66-vibe .h3,.a66-vibe .h4,.a66-vibe .h5,.a66-vibe .h6,
.a66-vibe .card-title,.a66-vibe .index-header,.a66-vibe .display-4{color:#fff!important}
.a66-vibe .text-muted,.a66-vibe .text-secondary,.a66-vibe .small.text-muted,.a66-vibe .font-size-small.text-muted{color:#d2d2ea!important}
.a66-vibe .text-gray-400,.a66-vibe .text-gray-500,.a66-vibe .text-gray-600,.a66-vibe .text-gray-700{color:#d2d2ea!important}
.a66-vibe .text-dark,.a66-vibe .text-body,.a66-vibe .text-black,.a66-vibe .text-gray-800,.a66-vibe .text-gray-900{color:#fff!important}
.a66-vibe p,.a66-vibe li,.a66-vibe td,.a66-vibe th,.a66-vibe dd,.a66-vibe dt,.a66-vibe label,.a66-vibe blockquote{color:inherit}
.a66-vibe .navbar-brand,.a66-vibe .navbar-brand span,.a66-vibe .footer-heading,.a66-vibe .footer-heading span{color:#fff!important}

/* Footer brand: the footer prints the light-theme logo (dark wordmark). Show the dark-theme logo instead, CSS only */
.a66-vibe .footer-heading{display:inline-block;background:url(/uploads/main/4344b8ee8a0625b933c981281e8f8bf2.png) left center/auto 2.5rem no-repeat;filter:drop-shadow(0 0 10px rgba(124,92,255,.35))}
.a66-vibe .footer-heading img.footer-logo{visibility:hidden}

/* Blog (list, category, post) */
.a66-vibe-blog a h1,.a66-vibe-blog a h2,.a66-vibe-blog a h3,.a66-vibe-blog a .h4,.a66-vibe-blog a .h5,.a66-vibe-blog a .h6{color:#fff!important}
.a66-vibe-blog a:hover h2,.a66-vibe-blog a:hover .h4,.a66-vibe-blog a:hover .h5,.a66-vibe-blog a:hover .h6{text-decoration:underline;text-underline-offset:4px}
.a66-vibe .content-body,.a66-vibe .content-description,.a66-vibe .content-body p,.a66-vibe .content-body li,.a66-vibe .content-body td{color:#ececf8!important}
.a66-vibe .content-body h1,.a66-vibe .content-body h2,.a66-vibe .content-body h3,.a66-vibe .content-body h4,.a66-vibe .content-body strong,.a66-vibe .content-body b{color:#fff!important}
.a66-vibe .content-body a:not([class*="btn"]):not(.a66-footer-prismora){color:var(--v-link)!important;text-decoration:underline;text-underline-offset:3px}
.a66-vibe .breadcrumb,.a66-vibe .breadcrumb a,.a66-vibe .breadcrumb-item+.breadcrumb-item:before{color:#d2d2ea!important}
.a66-vibe .breadcrumb a{text-decoration:underline;text-underline-offset:3px}

/* 404 + generic light buttons: black label on white, underline on hover */
.a66-vibe .btn-light{font-weight:700}
.a66-vibe-not-found .card h1,.a66-vibe-not-found .card .h3{color:#fff!important;font-weight:800}
.a66-vibe-not-found .card p{color:#ececf8!important}

/* Inline code (e.g. Agencies page) */
.a66-vibe code{color:#bfe3ff!important;background:rgba(255,255,255,.10);padding:.1em .35em;border-radius:.3rem}

/* Tables, inputs, placeholders, list groups */
.a66-vibe .table,.a66-vibe .table td,.a66-vibe .table th{color:#f0f0fa}
.a66-vibe .form-control::placeholder{color:#b9b9d6;opacity:1}
.a66-vibe .list-group-item{background:transparent;color:#f0f0fa;border-color:var(--v-line)}
