/* Small non-Tailwind helpers for interactive states (kept minimal; theme provides Tailwind). */
.mpc-tab{background:transparent;border:0;border-bottom:2px solid transparent;color:rgba(255,255,255,.55);padding:12px 16px;font-weight:600;cursor:pointer;font-size:14px}
.mpc-tab:hover{color:#fff}
.mpc-tab.is-active{color:#fff;border-bottom-color:#e879f9}
.mpc-fav.is-fav{color:#fb7185}
.mpc-msg{min-height:1.2em}
.mpc-msg.is-error{color:#fda4af}
.mpc-msg.is-ok{color:#6ee7b7}
.mpc-busy{opacity:.6;pointer-events:none}

/* Tier badges (work without Tailwind) */
.mpc-tier-badge{display:inline-flex;align-items:center;gap:5px;border-radius:999px;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.04em;box-shadow:0 4px 14px -4px rgba(0,0,0,.5)}
.mpc-tier-badge .mpc-badge-ic{width:13px;height:13px;flex:0 0 auto}
.mpc-tier-badge[data-tier="vip"]{color:#111}

/* Locked-image blur (fallback if Tailwind blur utilities are purged) */
.mpc-blur{filter:blur(14px);transform:scale(1.08)}

/* Guarantee card media has height even if an arbitrary aspect class fails */
.mpc-card-media{aspect-ratio:3/4;display:block;position:relative;min-height:260px}
.mpc-card-media>img{width:100%;height:100%;object-fit:cover}

/* Read-only star display */
.mpc-stars{display:inline-flex;letter-spacing:1px;vertical-align:middle}
.mpc-star{color:rgba(255,255,255,.22);font-size:1em;line-height:1}
.mpc-star--full{color:#fbbf24}
.mpc-star--half{position:relative;color:rgba(255,255,255,.22)}
.mpc-star--half::before{content:"★";position:absolute;left:0;top:0;width:50%;overflow:hidden;color:#fbbf24}
.mpc-stars-count{font-size:.8em;color:rgba(255,255,255,.6);vertical-align:middle;margin-left:4px}

/* Interactive star picker */
.mpc-star-input{display:inline-flex;gap:4px}
.mpc-star-input .mpc-star-pick{background:none;border:0;cursor:pointer;font-size:28px;line-height:1;color:rgba(255,255,255,.25);padding:0;transition:color .12s}
.mpc-star-input .mpc-star-pick.is-on{color:#fbbf24}

/* ---- Filter / search bar ---- */
.mpc-filterbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:12px}
.mpc-filterbar__search{flex:1 1 220px;display:flex;align-items:center;gap:8px;background:#12101f;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:0 12px}
.mpc-filterbar__search svg{width:18px;height:18px;color:rgba(255,255,255,.4);flex:0 0 auto}
.mpc-filterbar__search input{flex:1;background:transparent;border:0;color:#fff;padding:11px 0;outline:none;font-size:14px}
.mpc-filterbar select{background:#12101f;border:1px solid rgba(255,255,255,.1);color:#fff;border-radius:12px;padding:11px 12px;font-size:13px;max-width:170px}
.mpc-filterbar__go{background:linear-gradient(120deg,#e879f9,#8b5cf6);color:#fff;border:0;border-radius:12px;padding:11px 20px;font-weight:700;cursor:pointer;font-size:14px}
.mpc-filterbar__go:hover{opacity:.92}
@media (max-width:640px){
	.mpc-filterbar{gap:8px}
	.mpc-filterbar select{flex:1 1 44%;max-width:none}
	.mpc-filterbar__go{flex:1 1 100%}
}

/* ---- Report modal ---- */
.mpc-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(0,0,0,.7)}
.mpc-modal[hidden]{display:none}
.mpc-modal__card{width:100%;max-width:440px;background:#14121f;border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:22px}
.mpc-modal__card h3{margin:0 0 4px;color:#fff;font-size:18px;font-weight:700}
.mpc-modal__card p.sub{margin:0 0 14px;color:rgba(255,255,255,.5);font-size:13px}
.mpc-modal__card label{display:block;color:rgba(255,255,255,.7);font-size:13px;margin-bottom:6px}
.mpc-modal__card select,.mpc-modal__card textarea{width:100%;background:#0f0e1a;border:1px solid rgba(255,255,255,.12);color:#fff;border-radius:10px;padding:10px 12px;margin-bottom:14px;font-size:14px}
.mpc-modal__actions{display:flex;gap:10px;justify-content:flex-end}
.mpc-report-btn{display:inline-flex;align-items:center;gap:6px;color:rgba(255,255,255,.5);font-size:13px;background:none;border:0;cursor:pointer}
.mpc-report-btn:hover{color:#fda4af}

/* Online availability dot */
.mpc-online-dot{width:7px;height:7px;border-radius:50%;background:#fff;box-shadow:0 0 0 0 rgba(255,255,255,.7);animation:mpc-pulse 1.6s infinite}
@keyframes mpc-pulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.6)}70%{box-shadow:0 0 0 6px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
.mpc-online-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(16,185,129,.15);color:#6ee7b7;border:1px solid rgba(16,185,129,.3);border-radius:999px;padding:4px 12px;font-size:13px;font-weight:700}
.mpc-online-badge .mpc-online-dot{background:#34d399}

/* Support contact buttons */
.mpc-contact-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.mpc-contact-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;font-weight:700;font-size:14px;color:#fff;text-decoration:none;flex:1;justify-content:center;min-width:120px}
.mpc-contact-btn--wa{background:#25D366;color:#053}
.mpc-contact-btn--tg{background:#229ED9}
.mpc-contact-btn:hover{opacity:.92}
.mpc-contact-btn--call{background:#6366f1}

/* ---- Toast notifications ---- */
#mpc-toasts{position:fixed;top:18px;right:18px;z-index:100000;display:flex;flex-direction:column;gap:12px;max-width:min(92vw,380px)}
@media (max-width:520px){#mpc-toasts{left:12px;right:12px;top:12px;max-width:none}}
.mpc-toast{position:relative;display:flex;align-items:flex-start;gap:12px;padding:14px 40px 14px 14px;border-radius:16px;color:#fff;overflow:hidden;
	background:rgba(20,18,31,.86);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.12);
	box-shadow:0 18px 40px -12px rgba(0,0,0,.6);
	opacity:0;transform:translateX(20px) scale(.98);transition:opacity .3s ease,transform .3s cubic-bezier(.2,.8,.2,1)}
.mpc-toast.is-in{opacity:1;transform:none}
.mpc-toast.is-out{opacity:0;transform:translateX(20px) scale(.98)}
.mpc-toast__ic{flex:0 0 auto;width:30px;height:30px;border-radius:50%;display:grid;place-items:center}
.mpc-toast__ic svg{width:18px;height:18px}
.mpc-toast__body{display:flex;flex-direction:column;gap:2px;font-size:14px;line-height:1.35;padding-top:3px}
.mpc-toast__body strong{font-size:13px;font-weight:800}
.mpc-toast__x{position:absolute;top:8px;right:10px;background:none;border:0;color:rgba(255,255,255,.5);font-size:20px;line-height:1;cursor:pointer}
.mpc-toast__x:hover{color:#fff}
.mpc-toast__bar{position:absolute;left:0;bottom:0;height:3px;width:100%;transform-origin:left;animation:mpc-toast-bar linear forwards}
@keyframes mpc-toast-bar{from{transform:scaleX(1)}to{transform:scaleX(0)}}
.mpc-toast--success{border-color:rgba(16,185,129,.4)}
.mpc-toast--success .mpc-toast__ic{background:rgba(16,185,129,.2);color:#6ee7b7}
.mpc-toast--success .mpc-toast__bar{background:linear-gradient(90deg,#10b981,#34d399)}
.mpc-toast--error{border-color:rgba(244,63,94,.4)}
.mpc-toast--error .mpc-toast__ic{background:rgba(244,63,94,.2);color:#fda4af}
.mpc-toast--error .mpc-toast__bar{background:linear-gradient(90deg,#f43f5e,#fb7185)}
.mpc-toast--info .mpc-toast__ic{background:rgba(139,92,246,.2);color:#c4b5fd}
.mpc-toast--info .mpc-toast__bar{background:linear-gradient(90deg,#8b5cf6,#a78bfa)}

/* Post-payment pending spinner */
.mpc-pending-ring{width:64px;height:64px;margin:0 auto;border-radius:50%;border:5px solid rgba(255,255,255,.12);border-top-color:#e879f9;border-right-color:#a78bfa;animation:mpc-spin 1s linear infinite}
@keyframes mpc-spin{to{transform:rotate(360deg)}}

/* Model rate card */
.mpc-rates{width:100%;border-collapse:collapse;font-size:14px;color:#e5e7eb}
.mpc-rates th,.mpc-rates td{padding:9px 12px;text-align:center;border-bottom:1px solid rgba(255,255,255,.08)}
.mpc-rates thead th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:rgba(255,255,255,.5);font-weight:700}
.mpc-rates tbody th{text-align:left;color:#fff;font-weight:600}
.mpc-rates td{color:#f5d0fe;font-weight:700}
.mpc-rate-x{color:rgba(255,255,255,.25);font-weight:400}

/* Password show/hide toggle */
.mpc-pass-wrap{position:relative;display:block;width:100%}
.mpc-pass-wrap > input{padding-right:44px!important;width:100%}
.mpc-pass-toggle{position:absolute;top:50%;right:8px;transform:translateY(-50%);background:none;border:0;padding:6px;cursor:pointer;color:rgba(255,255,255,.5);display:grid;place-items:center;line-height:0}
.mpc-pass-toggle:hover{color:#fff}
.mpc-pass-toggle svg{width:20px;height:20px}
