/* Bubble Toon - Cartoon theme for the user panel */
@import url('https://fonts.googleapis.com/css2?family=Baloo+2:wght@600;700;800&family=Quicksand:wght@500;600;700&display=swap');

body[data-theme="bubble-toon"] {
  --t-bg: #0a0a16;
  --t-bg2: #161632;
  --t-card: #12122a;
  --t-line: #2c2c58;
  --t-ink: #f3f0ff;
  --t-muted: #a5a1cc;
  --t-acc: #4ade80;
  --t-acc2: #f472b6;
  --t-radius: 26px;
  --bs-primary: #4ade80;
  --bs-primary-rgb: 74, 222, 128;
  --bs-link-color: #4ade80;
  --bs-link-hover-color: #f472b6;
  --bs-body-bg: #0a0a16;
  --bs-body-color: #f3f0ff;
  --bs-border-color: #2c2c58;
  --bs-emphasis-color: #f3f0ff;
  --bs-secondary-color: #a5a1cc;
  font-family: 'Quicksand', system-ui, sans-serif;
  color: var(--t-ink);
  background: var(--t-bg);
  background-image: radial-gradient(300px 300px at 12% 18%, rgba(244,114,182,.16), transparent 60%), radial-gradient(360px 360px at 88% 70%, rgba(74,222,128,.14), transparent 60%), radial-gradient(240px 240px at 60% 12%, rgba(96,165,250,.12), transparent 60%);
  background-attachment: scroll;
}

body[data-theme="bubble-toon"] h1,
body[data-theme="bubble-toon"] h2,
body[data-theme="bubble-toon"] h3,
body[data-theme="bubble-toon"] h4,
body[data-theme="bubble-toon"] h5,
body[data-theme="bubble-toon"] h6,
body[data-theme="bubble-toon"] .navbar-brand,
body[data-theme="bubble-toon"] .btn { font-family: 'Baloo 2', cursive; letter-spacing: 0; }

/* surfaces */
body[data-theme="bubble-toon"] .card,
body[data-theme="bubble-toon"] .panel-card,
body[data-theme="bubble-toon"] .stat-card,
body[data-theme="bubble-toon"] .pricing-card,
body[data-theme="bubble-toon"] .feature-card,
body[data-theme="bubble-toon"] .testimonial,
body[data-theme="bubble-toon"] .accordion-item,
body[data-theme="bubble-toon"] .list-group-item,
body[data-theme="bubble-toon"] .table {
  background: var(--t-card);
  color: var(--t-ink);
  border-color: var(--t-line);
  border-radius: var(--t-radius);
}
body[data-theme="bubble-toon"] .card-header,
body[data-theme="bubble-toon"] .card-footer,
body[data-theme="bubble-toon"] .accordion-button { background: var(--t-bg2); color: var(--t-ink); border-color: var(--t-line); }
body[data-theme="bubble-toon"] .accordion-button:not(.collapsed) { background: var(--t-bg2); color: var(--t-acc); box-shadow: none; }
body[data-theme="bubble-toon"] .accordion-button::after { filter: invert(1) grayscale(1) brightness(2); }
body[data-theme="bubble-toon"] .bg-light-soft,
body[data-theme="bubble-toon"] .bg-light,
body[data-theme="bubble-toon"] .bg-white { background: var(--t-bg2) !important; color: var(--t-ink); }
body[data-theme="bubble-toon"] .text-muted,
body[data-theme="bubble-toon"] .text-secondary,
body[data-theme="bubble-toon"] .footer-text { color: var(--t-muted) !important; }
body[data-theme="bubble-toon"] .text-dark,
body[data-theme="bubble-toon"] .text-body { color: var(--t-ink) !important; }
body[data-theme="bubble-toon"] .text-primary { color: var(--t-acc) !important; }
body[data-theme="bubble-toon"] hr,
body[data-theme="bubble-toon"] .footer-rule { border-color: var(--t-line); opacity: 1; }

/* tables */
body[data-theme="bubble-toon"] .table { --bs-table-bg: transparent; --bs-table-color: var(--t-ink); --bs-table-border-color: var(--t-line); --bs-table-striped-color: var(--t-ink); --bs-table-striped-bg: rgba(74,222,128,.07); --bs-table-hover-color: var(--t-ink); --bs-table-hover-bg: rgba(74,222,128,.07); }
body[data-theme="bubble-toon"] .table > thead { color: var(--t-acc); text-transform: uppercase; font-size: .74rem; letter-spacing: .08em; }

/* nav */
body[data-theme="bubble-toon"] .site-nav { background: rgba(10,10,22,.85); border-bottom: 1px solid #2c2c58; backdrop-filter: blur(12px); }
body[data-theme="bubble-toon"] .site-nav .nav-link { color: var(--t-muted); font-weight: 600; }
body[data-theme="bubble-toon"] .site-nav .nav-link:hover,
body[data-theme="bubble-toon"] .site-nav .nav-link.active { color: var(--t-acc); }
body[data-theme="bubble-toon"] .navbar-brand,
body[data-theme="bubble-toon"] .navbar-brand span { color: var(--t-ink) !important; }
body[data-theme="bubble-toon"] .brand-mark { background: linear-gradient(135deg, var(--t-acc), var(--t-acc2)); color: #07130c; border-radius: var(--t-radius); }
body[data-theme="bubble-toon"] .navbar-toggler { border-color: var(--t-line); color: var(--t-ink); }
body[data-theme="bubble-toon"] .navbar-toggler-icon { filter: invert(1) brightness(1.6); }
body[data-theme="bubble-toon"] .nav-balance { background: rgba(74,222,128,.14); color: var(--t-acc); border: 1px solid var(--t-line); border-radius: 999px; padding: .25rem .7rem; font-weight: 700; }

/* buttons + forms */
body[data-theme="bubble-toon"] .btn-primary { --bs-btn-bg: var(--t-acc); --bs-btn-border-color: var(--t-acc); --bs-btn-color: #07130c; --bs-btn-hover-bg: var(--t-acc2); --bs-btn-hover-border-color: var(--t-acc2); --bs-btn-hover-color: #07130c; --bs-btn-active-bg: var(--t-acc2); --bs-btn-active-color: #07130c; }
body[data-theme="bubble-toon"] .btn-outline-primary { --bs-btn-color: var(--t-acc); --bs-btn-border-color: var(--t-acc); --bs-btn-hover-bg: var(--t-acc); --bs-btn-hover-color: #07130c; }
body[data-theme="bubble-toon"] .btn-light,
body[data-theme="bubble-toon"] .btn-outline-secondary { --bs-btn-bg: var(--t-bg2); --bs-btn-color: var(--t-ink); --bs-btn-border-color: var(--t-line); --bs-btn-hover-bg: var(--t-line); --bs-btn-hover-color: var(--t-ink); }
body[data-theme="bubble-toon"] .btn { border-radius: var(--t-radius); font-weight: 700; }
body[data-theme="bubble-toon"] .form-control,
body[data-theme="bubble-toon"] .form-select,
body[data-theme="bubble-toon"] .input-group-text { background: #161632; color: var(--t-ink); border-color: var(--t-line); border-radius: var(--t-radius); }
body[data-theme="bubble-toon"] .form-control::placeholder { color: var(--t-muted); }
body[data-theme="bubble-toon"] .form-control:focus,
body[data-theme="bubble-toon"] .form-select:focus { background: #161632; color: var(--t-ink); border-color: var(--t-acc); box-shadow: 0 0 0 .2rem rgba(74, 222, 128, .25); }
body[data-theme="bubble-toon"] .form-select option { background: var(--t-bg2); color: var(--t-ink); }
body[data-theme="bubble-toon"] .form-label,
body[data-theme="bubble-toon"] label { color: var(--t-ink); }
body[data-theme="bubble-toon"] .badge.bg-light,
body[data-theme="bubble-toon"] .badge.text-bg-light { background: var(--t-bg2) !important; color: var(--t-ink) !important; }
body[data-theme="bubble-toon"] .modal-content,
body[data-theme="bubble-toon"] .offcanvas,
body[data-theme="bubble-toon"] .dropdown-menu { background: var(--t-card); color: var(--t-ink); border-color: var(--t-line); }
body[data-theme="bubble-toon"] .dropdown-item { color: var(--t-ink); }
body[data-theme="bubble-toon"] .dropdown-item:hover { background: var(--t-bg2); color: var(--t-acc); }
body[data-theme="bubble-toon"] .alert { border-radius: var(--t-radius); border-color: var(--t-line); background: var(--t-bg2); color: var(--t-ink); }
body[data-theme="bubble-toon"] .nav-tabs .nav-link { color: var(--t-muted); }
body[data-theme="bubble-toon"] .nav-tabs .nav-link.active { background: var(--t-card); color: var(--t-acc); border-color: var(--t-line) var(--t-line) var(--t-card); }

/* hero + footer */
body[data-theme="bubble-toon"] .hero,
body[data-theme="bubble-toon"] .hero-section { background: linear-gradient(150deg,#131329,#1c1030); color: var(--t-ink); }
body[data-theme="bubble-toon"] .site-footer { background: #090914; color: var(--t-muted); border-top: 1px solid var(--t-line); }
body[data-theme="bubble-toon"] .site-footer a { color: var(--t-muted); }
body[data-theme="bubble-toon"] .site-footer a:hover { color: var(--t-acc); }
body[data-theme="bubble-toon"] .footer-head { color: var(--t-ink); }
body[data-theme="bubble-toon"] .social { border: 1px solid var(--t-line); color: var(--t-ink); }
body[data-theme="bubble-toon"] .to-top { background: var(--t-acc); color: #07130c; }

/* theme signature */

body[data-theme="bubble-toon"] .card { box-shadow: 0 12px 0 rgba(0,0,0,.35), 0 22px 44px rgba(0,0,0,.4); }
body[data-theme="bubble-toon"] .card:hover { transform: translateY(-6px) rotate(-.4deg); transition: .25s cubic-bezier(.34,1.56,.64,1); }
body[data-theme="bubble-toon"] .btn-primary { box-shadow: 0 6px 0 #16a34a; }
body[data-theme="bubble-toon"] .btn-primary:active { transform: translateY(5px); box-shadow: 0 1px 0 #16a34a; }
body[data-theme="bubble-toon"] .brand-mark { animation: bt-bounce 2.6s ease-in-out infinite; }
@keyframes bt-bounce { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-5px) scale(1.04)} }



/* ---- Theme artwork (bubble-toon) ---- */
body[data-theme="bubble-toon"]::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image: url("../../img/themes/bubble-toon.jpg");
  background-size: cover;
  background-position: center bottom;
  background-repeat: no-repeat;
  background-attachment: scroll;
  opacity: .40;
  mix-blend-mode: normal;
  filter: saturate(1);
  -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,.85) 45%, rgba(0,0,0,.35) 80%, rgba(0,0,0,.12) 100%);
  mask-image: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,.85) 45%, rgba(0,0,0,.35) 80%, rgba(0,0,0,.12) 100%);
}
body[data-theme="bubble-toon"] { position: relative; }
body[data-theme="bubble-toon"] .theme-hero-art {
  background-image: url("../../img/themes/bubble-toon.jpg");
  display: block;
}
@media (max-width: 767.98px) {
  body[data-theme="bubble-toon"]::before { opacity: .38; }
}
