.acs-tarot-ui *{box-sizing:border-box}
.acs-tarot-ui{--bg1:#1a1336;--bg2:#2d1b69;--accent1:#a855f7;--accent2:#ec4899;--text:#fff;--muted:rgba(255,255,255,.75);color:var(--text)}
.acs-tarot-ui .acs-wrap{background:linear-gradient(135deg,var(--bg1) 0%,var(--bg2) 100%);border-radius:18px;padding:22px;max-width:920px;margin:0 auto}
.acs-tarot-ui h1,.acs-tarot-ui h2,.acs-tarot-ui h3{margin:0 0 10px 0}
.acs-tarot-ui h1{font-size:28px;line-height:1.2}
.acs-tarot-ui .subtitle{opacity:.8;margin:0 0 18px 0}
.acs-tarot-ui .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin:14px 0 18px}
.acs-tarot-ui .card{background:rgba(255,255,255,0.10);border:1px solid rgba(255,255,255,0.20);border-radius:16px;padding:14px 12px;cursor:pointer;transition:.2s}
.acs-tarot-ui .card:hover{transform:translateY(-1px)}
.acs-tarot-ui .card.active{border-color:var(--accent1);background:rgba(168,85,247,0.20)}
.acs-tarot-ui .icon{font-size:20px;margin-bottom:6px}
.acs-tarot-ui .btn{display:inline-block;background:linear-gradient(90deg,var(--accent1) 0%,var(--accent2) 100%);color:#fff;padding:12px 26px;border:none;border-radius:28px;font-size:15px;font-weight:700;cursor:pointer;text-decoration:none}
.acs-tarot-ui .btn.gray{background:#555}
.acs-tarot-ui .row{display:flex;gap:10px;flex-wrap:wrap}
.acs-tarot-ui .panel{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.14);border-radius:16px;padding:16px;margin:12px 0}
.acs-tarot-ui .field{display:flex;flex-direction:column;gap:6px;min-width:220px}
.acs-tarot-ui label{font-size:13px;opacity:.85}
.acs-tarot-ui input{padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,0.18);background:rgba(0,0,0,0.15);color:#fff}
.acs-tarot-ui input::placeholder{color:rgba(255,255,255,0.55)}
.acs-tarot-ui .loader{width:62px;height:62px;border:5px solid rgba(255,255,255,.2);border-top-color:var(--accent1);border-radius:50%;animation:acsSpin 1s linear infinite;margin:10px auto 18px}
@keyframes acsSpin{to{transform:rotate(360deg)}}
.acs-tarot-ui .steps{max-width:380px;margin:0 auto}
.acs-tarot-ui .step{margin:6px 0;opacity:.55;text-align:center}
.acs-tarot-ui .step.active{opacity:1}
.acs-tarot-ui .cards .c{padding:12px 0;border-bottom:1px solid rgba(255,255,255,0.10)}
.acs-tarot-ui .ori{opacity:.9;font-style:italic;color:#f5d0fe;margin:6px 0}
.acs-tarot-ui .crystal{display:flex;align-items:center;gap:12px;margin:10px 0}
.acs-tarot-ui .num{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--accent1);font-weight:800}
.acs-tarot-ui .muted{opacity:.82}
.acs-tarot-ui .error{background:rgba(255,0,0,0.12);border:1px solid rgba(255,0,0,0.25);padding:12px;border-radius:12px;margin:12px 0}

.acs-tarot-ui .topbar{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:12px}
.acs-tarot-ui .rating{display:flex;gap:10px;align-items:center}
.acs-tarot-ui .star{color:#FFD700;font-size:18px;letter-spacing:1px}
.acs-tarot-ui .rating-score{opacity:.9;font-weight:700}
.acs-tarot-ui .counter{opacity:.88;font-size:14px}
.acs-tarot-ui .counter b{color:#fff}
/* Full UI enhancements */
.acs-tarot-ui .btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff;padding:10px 12px;border-radius:12px;cursor:pointer;text-decoration:none}
.acs-tarot-ui .btn:hover{background:rgba(255,255,255,.14)}
.acs-tarot-ui .btn.primary{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.28)}
.acs-tarot-ui .btn-row{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 16px}
.acs-tarot-ui .muted{opacity:.8}
.acs-tarot-ui .section{margin-top:18px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12)}
.acs-tarot-ui .section h3{margin:0 0 10px;font-size:18px}
.acs-tarot-ui .cards-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:12px}
@media (min-width:720px){.acs-tarot-ui .cards-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
.acs-tarot-ui .card-item{border:0;background:transparent;border-radius:16px;padding:0;transform:translateY(8px);opacity:0;transition:transform .45s ease, opacity .45s ease;cursor:pointer}
.acs-tarot-ui .card-item.show{transform:translateY(0);opacity:1}

/* Flip card */
.acs-tarot-ui .flip{perspective:1000px}
.acs-tarot-ui .flip-inner{position:relative;width:100%;min-height:380px;transition:transform .75s cubic-bezier(.2,.8,.2,1);transform-style:preserve-3d}
.acs-tarot-ui .card-item.show .flip-inner{transform:rotateY(180deg)}

.acs-tarot-ui .card-face{position:absolute;inset:0;border-radius:16px;backface-visibility:hidden;overflow:hidden;border:1px solid rgba(255,255,255,.14)}
.acs-tarot-ui .card-face.front{display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 30% 20%, rgba(255,255,255,.10), transparent 55%),radial-gradient(circle at 70% 80%, rgba(255,255,255,.08), transparent 55%),linear-gradient(135deg, rgba(140,70,255,.22), rgba(10,10,18,.85))}
.acs-tarot-ui .card-backmark{font-size:50px;opacity:.92;margin-bottom:10px}
.acs-tarot-ui .card-backtitle{letter-spacing:3px;font-weight:800;opacity:.85}

.acs-tarot-ui .card-face.back{transform:rotateY(180deg);background:rgba(255,255,255,.06);padding:12px;display:flex;flex-direction:column;gap:10px}
.acs-tarot-ui .card-head .pos{font-size:12px;opacity:.8}
.acs-tarot-ui .card-head .name{font-size:16px;font-weight:800;line-height:1.2}
.acs-tarot-ui .card-head .ori{font-style:italic;opacity:.85;margin-top:2px;font-size:12px;color:#f5d0fe}

.acs-tarot-ui .card-img{display:flex;justify-content:center}
.acs-tarot-ui img.card-art{max-width:220px;width:100%;height:auto;border-radius:12px;box-shadow:0 10px 25px rgba(0,0,0,.25)}
.acs-tarot-ui img.card-art.rev{transform:rotate(180deg)}

.acs-tarot-ui .card-text{font-size:13px;line-height:1.35;opacity:.95}
.acs-tarot-ui .pill{display:inline-flex;gap:6px;align-items:center;font-size:12px;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12)}
.acs-tarot-ui .kpi{display:flex;gap:8px;flex-wrap:wrap}
.acs-tarot-ui .kpi .pill b{font-weight:800}
.acs-tarot-ui .progress{height:10px;background:rgba(255,255,255,.10);border-radius:999px;overflow:hidden}
.acs-tarot-ui .progress > div{height:100%;width:0%;background:rgba(255,255,255,.35);transition:width .35s ease}
.acs-tarot-ui .toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);background:rgba(0,0,0,.75);color:#fff;padding:10px 14px;border-radius:14px;z-index:99999;opacity:0;pointer-events:none;transition:opacity .25s ease}
.acs-tarot-ui .toast.show{opacity:1}
.acs-tarot-ui .faq details{border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.16);border-radius:14px;padding:10px 12px;margin-bottom:10px}
.acs-tarot-ui .faq summary{cursor:pointer;font-weight:700}
.acs-tarot-ui .testimonial{border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.16);border-radius:14px;padding:12px}
/* Starry background around the widget (full-page) */
body.acs-tarot-page {
  background:
    radial-gradient(900px 600px at 15% 20%, rgba(120,88,255,.18), transparent 60%),
    radial-gradient(800px 520px at 85% 30%, rgba(70,200,255,.12), transparent 60%),
    radial-gradient(700px 520px at 55% 85%, rgba(255,180,80,.08), transparent 60%),
    linear-gradient(180deg, #05050b 0%, #070716 60%, #05050b 100%);
  background-attachment: fixed;
}
body.acs-tarot-page:before {
  content:'';
  position:fixed; inset:0;
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MjAiIGhlaWdodD0iNDIwIiB2aWV3Qm94PSIwIDAgNDIwIDQyMCI+CjxyZWN0IHdpZHRoPSI0MjAiIGhlaWdodD0iNDIwIiBmaWxsPSJub25lIi8+CjxnIGZpbGw9IndoaXRlIiBvcGFjaXR5PSIwLjkiPgogIDxjaXJjbGUgY3g9IjQwIiBjeT0iNzAiIHI9IjEuMiIvPjxjaXJjbGUgY3g9IjkwIiBjeT0iMzAiIHI9IjEuMCIvPjxjaXJjbGUgY3g9IjE1MCIgY3k9IjkwIiByPSIwLjkiLz4KICA8Y2lyY2xlIGN4PSIyMTAiIGN5PSI0MCIgcj0iMS4xIi8+PGNpcmNsZSBjeD0iMjgwIiBjeT0iMTEwIiByPSIwLjgiLz48Y2lyY2xlIGN4PSIzMzAiIGN5PSI2MCIgcj0iMS4zIi8+CiAgPGNpcmNsZSBjeD0iMzgwIiBjeT0iMTQwIiByPSIwLjkiLz48Y2lyY2xlIGN4PSI2MCIgY3k9IjE2MCIgcj0iMC44Ii8+PGNpcmNsZSBjeD0iMTIwIiBjeT0iMTkwIiByPSIxLjIiLz4KICA8Y2lyY2xlIGN4PSIxODAiIGN5PSIxNzAiIHI9IjAuOSIvPjxjaXJjbGUgY3g9IjI0MCIgY3k9IjIxMCIgcj0iMS4wIi8+PGNpcmNsZSBjeD0iMzEwIiBjeT0iMjAwIiByPSIwLjgiLz4KICA8Y2lyY2xlIGN4PSIzNzAiIGN5PSIyNDAiIHI9IjEuMSIvPjxjaXJjbGUgY3g9IjMwIiBjeT0iMjcwIiByPSIwLjkiLz48Y2lyY2xlIGN4PSIxMDAiIGN5PSIzMDAiIHI9IjEuMCIvPgogIDxjaXJjbGUgY3g9IjE2MCIgY3k9IjI2MCIgcj0iMC44Ii8+PGNpcmNsZSBjeD0iMjIwIiBjeT0iMzIwIiByPSIxLjIiLz48Y2lyY2xlIGN4PSIyOTAiIGN5PSIyOTAiIHI9IjAuOSIvPgogIDxjaXJjbGUgY3g9IjM1MCIgY3k9IjMzMCIgcj0iMS4wIi8+PGNpcmNsZSBjeD0iMzkwIiBjeT0iMzYwIiByPSIwLjgiLz48Y2lyY2xlIGN4PSI3MCIgY3k9IjM4MCIgcj0iMS4xIi8+CiAgPGNpcmNsZSBjeD0iMjAwIiBjeT0iMzgwIiByPSIwLjkiLz48Y2lyY2xlIGN4PSIzMDAiIGN5PSIzODAiIHI9IjEuMCIvPgo8L2c+CjxnIHN0cm9rZT0id2hpdGUiIG9wYWNpdHk9IjAuMzUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSI+CiAgPHBhdGggZD0iTTMzNiA3OCBsMTAgMCBtLTUgLTUgbDAgMTAiLz4KICA8cGF0aCBkPSJNNzggMzMwIGwxMiAwIG0tNiAtNiBsMCAxMiIvPgo8L2c+Cjwvc3ZnPg==');
  background-size: 420px 420px;
  background-repeat: repeat;
  opacity: .35;
  pointer-events:none;
  z-index:0;
  animation:acsTwinkle 6s ease-in-out infinite;
}
body.acs-tarot-page:after {
  content:'';
  position:fixed; inset:-2px;
  background:
    radial-gradient(closest-side at 10% 10%, rgba(255,255,255,.10), transparent 65%),
    radial-gradient(closest-side at 90% 15%, rgba(255,255,255,.08), transparent 70%),
    radial-gradient(closest-side at 15% 85%, rgba(255,255,255,.06), transparent 70%),
    radial-gradient(closest-side at 85% 85%, rgba(255,255,255,.06), transparent 70%);
  opacity:.35;
  pointer-events:none;
  z-index:0;
}
@keyframes acsTwinkle {0%,100%{opacity:.28}50%{opacity:.55}}
body.acs-tarot-page .elementor, 
body.acs-tarot-page .site, 
body.acs-tarot-page #page, 
body.acs-tarot-page #content {
  position:relative;
  z-index:1;
}
/* Add decorative corners inside widget */
.acs-tarot-ui .acs-wrap {
  position:relative;
  overflow:hidden;
}
.acs-tarot-ui .acs-wrap:before,
.acs-tarot-ui .acs-wrap:after {
  content:'';
  position:absolute;
  width:220px; height:220px;
  background:
    radial-gradient(circle at 30% 30%, rgba(255,255,255,.10), transparent 55%),
    radial-gradient(circle at 70% 70%, rgba(255,255,255,.08), transparent 60%);
  border:1px solid rgba(255,255,255,.10);
  border-radius:28px;
  transform:rotate(12deg);
  opacity:.35;
  pointer-events:none;
}
.acs-tarot-ui .acs-wrap:before { top:-120px; left:-120px; }
.acs-tarot-ui .acs-wrap:after  { bottom:-120px; right:-120px; transform:rotate(-14deg); }
.acs-tarot-ui{margin:60px auto 80px; padding:0 16px; max-width:1100px; position:relative; z-index:2}


/* Card image in results */
.acs-tarot-ui .card-img{margin:10px 0; display:flex; justify-content:center;}
.acs-tarot-ui .card-img img{max-width:220px; height:auto; border-radius:12px; box-shadow:0 10px 25px rgba(0,0,0,.25);} 
