/* Ghost Blossom - Anime theme for the user panel */
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@600;700&family=Zen+Maru+Gothic:wght@400;500;700&display=swap');

body[data-theme="ghost-blossom"] {
  --t-bg: #0a0710;
  --t-bg2: #150e1c;
  --t-card: #120b18;
  --t-line: #2e2036;
  --t-ink: #fbeef4;
  --t-muted: #b598ac;
  --t-acc: #ff8fb8;
  --t-acc2: #c084fc;
  --t-radius: 22px;
  --bs-primary: #ff8fb8;
  --bs-primary-rgb: 255, 143, 184;
  --bs-link-color: #ff8fb8;
  --bs-link-hover-color: #c084fc;
  --bs-body-bg: #0a0710;
  --bs-body-color: #fbeef4;
  --bs-border-color: #2e2036;
  --bs-emphasis-color: #fbeef4;
  --bs-secondary-color: #b598ac;
  font-family: 'Zen Maru Gothic', system-ui, sans-serif;
  color: var(--t-ink);
  background: var(--t-bg);
  background-image: radial-gradient(800px 500px at 20% 0%, rgba(255,143,184,.16), transparent 62%), radial-gradient(700px 460px at 90% 90%, rgba(192,132,252,.14), transparent 60%);
  background-attachment: fixed;
}

body[data-theme="ghost-blossom"] h1,
body[data-theme="ghost-blossom"] h2,
body[data-theme="ghost-blossom"] h3,
body[data-theme="ghost-blossom"] h4,
body[data-theme="ghost-blossom"] h5,
body[data-theme="ghost-blossom"] h6,
body[data-theme="ghost-blossom"] .navbar-brand,
body[data-theme="ghost-blossom"] .btn { font-family: 'Shippori Mincho', Georgia, serif; letter-spacing: 0; }

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

/* tables */
body[data-theme="ghost-blossom"] .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(255,143,184,.06); --bs-table-hover-color: var(--t-ink); --bs-table-hover-bg: rgba(255,143,184,.06); }
body[data-theme="ghost-blossom"] .table > thead { color: var(--t-acc); text-transform: uppercase; font-size: .74rem; letter-spacing: .08em; }

/* nav */
body[data-theme="ghost-blossom"] .site-nav { background: rgba(10,7,16,.85); border-bottom: 1px solid rgba(255,143,184,.22); backdrop-filter: blur(12px); }
body[data-theme="ghost-blossom"] .site-nav .nav-link { color: var(--t-muted); font-weight: 600; }
body[data-theme="ghost-blossom"] .site-nav .nav-link:hover,
body[data-theme="ghost-blossom"] .site-nav .nav-link.active { color: var(--t-acc); }
body[data-theme="ghost-blossom"] .navbar-brand,
body[data-theme="ghost-blossom"] .navbar-brand span { color: var(--t-ink) !important; }
body[data-theme="ghost-blossom"] .brand-mark { background: linear-gradient(135deg, var(--t-acc), var(--t-acc2)); color: #1a0a12; border-radius: var(--t-radius); }
body[data-theme="ghost-blossom"] .navbar-toggler { border-color: var(--t-line); color: var(--t-ink); }
body[data-theme="ghost-blossom"] .navbar-toggler-icon { filter: invert(1) brightness(1.6); }
body[data-theme="ghost-blossom"] .nav-balance { background: rgba(255,143,184,.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="ghost-blossom"] .btn-primary { --bs-btn-bg: var(--t-acc); --bs-btn-border-color: var(--t-acc); --bs-btn-color: #1a0a12; --bs-btn-hover-bg: var(--t-acc2); --bs-btn-hover-border-color: var(--t-acc2); --bs-btn-hover-color: #1a0a12; --bs-btn-active-bg: var(--t-acc2); --bs-btn-active-color: #1a0a12; }
body[data-theme="ghost-blossom"] .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: #1a0a12; }
body[data-theme="ghost-blossom"] .btn-light,
body[data-theme="ghost-blossom"] .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="ghost-blossom"] .btn { border-radius: var(--t-radius); font-weight: 700; }
body[data-theme="ghost-blossom"] .form-control,
body[data-theme="ghost-blossom"] .form-select,
body[data-theme="ghost-blossom"] .input-group-text { background: #150e1c; color: var(--t-ink); border-color: var(--t-line); border-radius: var(--t-radius); }
body[data-theme="ghost-blossom"] .form-control::placeholder { color: var(--t-muted); }
body[data-theme="ghost-blossom"] .form-control:focus,
body[data-theme="ghost-blossom"] .form-select:focus { background: #150e1c; color: var(--t-ink); border-color: var(--t-acc); box-shadow: 0 0 0 .2rem rgba(255, 143, 184, .25); }
body[data-theme="ghost-blossom"] .form-select option { background: var(--t-bg2); color: var(--t-ink); }
body[data-theme="ghost-blossom"] .form-label,
body[data-theme="ghost-blossom"] label { color: var(--t-ink); }
body[data-theme="ghost-blossom"] .badge.bg-light,
body[data-theme="ghost-blossom"] .badge.text-bg-light { background: var(--t-bg2) !important; color: var(--t-ink) !important; }
body[data-theme="ghost-blossom"] .modal-content,
body[data-theme="ghost-blossom"] .offcanvas,
body[data-theme="ghost-blossom"] .dropdown-menu { background: var(--t-card); color: var(--t-ink); border-color: var(--t-line); }
body[data-theme="ghost-blossom"] .dropdown-item { color: var(--t-ink); }
body[data-theme="ghost-blossom"] .dropdown-item:hover { background: var(--t-bg2); color: var(--t-acc); }
body[data-theme="ghost-blossom"] .alert { border-radius: var(--t-radius); border-color: var(--t-line); background: var(--t-bg2); color: var(--t-ink); }
body[data-theme="ghost-blossom"] .nav-tabs .nav-link { color: var(--t-muted); }
body[data-theme="ghost-blossom"] .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="ghost-blossom"] .hero,
body[data-theme="ghost-blossom"] .hero-section { background: linear-gradient(150deg,#12091a,#1c0f18); color: var(--t-ink); }
body[data-theme="ghost-blossom"] .site-footer { background: #0b0711; color: var(--t-muted); border-top: 1px solid var(--t-line); }
body[data-theme="ghost-blossom"] .site-footer a { color: var(--t-muted); }
body[data-theme="ghost-blossom"] .site-footer a:hover { color: var(--t-acc); }
body[data-theme="ghost-blossom"] .footer-head { color: var(--t-ink); }
body[data-theme="ghost-blossom"] .social { border: 1px solid var(--t-line); color: var(--t-ink); }
body[data-theme="ghost-blossom"] .to-top { background: var(--t-acc); color: #1a0a12; }

/* theme signature */

body[data-theme="ghost-blossom"] .card { box-shadow: 0 20px 50px rgba(0,0,0,.5); }
body[data-theme="ghost-blossom"] .card:hover { transform: translateY(-4px); transition: .3s ease; box-shadow: 0 26px 60px rgba(255,143,184,.16); }
body[data-theme="ghost-blossom"] .btn-primary { background: linear-gradient(120deg,#ff8fb8,#c084fc); border: 0; }
body[data-theme="ghost-blossom"] main::before { content: "\273F  \273F  \273F"; position: fixed; top: 12%; left: 4%; font-size: 1.6rem; color: rgba(255,143,184,.16); letter-spacing: 4rem; pointer-events: none; animation: gb-drift 22s linear infinite; z-index: 0; }
@keyframes gb-drift { from { transform: translateY(-6vh) } to { transform: translateY(90vh) } }



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