/* ===== MOON PHASE CALENDAR — DARK SPACE THEME ===== */
.mp-wrapper{display:flex;flex-direction:column;gap:20px;margin-bottom:28px}

/* Controls */
.mp-controls{background:#fff;border:2px solid #ddd6fe;border-radius:16px;padding:14px 20px;display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end}
.mp-ctrl-group{display:flex;flex-direction:column;gap:6px}
.mp-label{font-size:11px;font-weight:800;color:#4f46e5;letter-spacing:.3px}
.mp-input{border:1.5px solid #ddd6fe;border-radius:8px;padding:8px 12px;font-size:13px;outline:none;color:#1f2937;cursor:pointer;font-family:inherit}
.mp-input:focus{border-color:#6366f1}
.mp-lang-btns{display:flex;gap:6px}
.mp-lang-btn{background:#f5f3ff;border:1.5px solid #ddd6fe;border-radius:7px;padding:7px 14px;font-size:12px;font-weight:700;color:#6366f1;cursor:pointer;transition:all .2s}
.mp-lang-btn.active{background:linear-gradient(135deg,#6366f1,#4f46e5);border-color:#6366f1;color:#fff}
.mp-refresh-btn{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border:none;border-radius:9px;padding:9px 20px;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s;margin-left:auto;align-self:flex-end}
.mp-refresh-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(99,102,241,.35)}

/* Loading */
.mp-loading{background:linear-gradient(135deg,#0a0a1a,#0d1040,#0a0a1a);border-radius:20px;padding:50px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px;min-height:260px;justify-content:center}
.mp-loading-icon{font-size:48px;animation:mp-orbit 4s linear infinite}
@keyframes mp-orbit{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
.mp-loading-text{font-size:16px;font-weight:700;color:#c4b5fd}
.mp-dots{display:flex;gap:7px}
.mp-dots span{width:9px;height:9px;background:#818cf8;border-radius:50%;animation:mp-dot 1s ease-in-out infinite}
.mp-dots span:nth-child(2){animation-delay:.2s}
.mp-dots span:nth-child(3){animation-delay:.4s}
@keyframes mp-dot{0%,100%{transform:scale(.6);opacity:.4}50%{transform:scale(1.2);opacity:1}}

/* Error */
.mp-error{display:flex;align-items:center;gap:10px;padding:16px;background:#fef2f2;border:2px solid #fecaca;border-radius:12px;color:#dc2626;font-size:14px}

/* ===== MAIN MOON CARD ===== */
.mp-main-card{
    background:linear-gradient(160deg,#050510 0%,#0a0a2e 40%,#050510 100%);
    border-radius:24px;
    border:1px solid rgba(255,255,255,.08);
    overflow:hidden;
    position:relative;
    box-shadow:0 20px 60px rgba(0,0,0,.7);
}

/* Stars */
.mp-stars{
    position:absolute;inset:0;pointer-events:none;
    background-image:
        radial-gradient(1px 1px at 10% 20%, rgba(255,255,255,.9) 0%, transparent 100%),
        radial-gradient(1px 1px at 25% 60%, rgba(255,255,255,.7) 0%, transparent 100%),
        radial-gradient(1.5px 1.5px at 40% 10%, rgba(255,255,255,.8) 0%, transparent 100%),
        radial-gradient(1px 1px at 55% 75%, rgba(255,255,255,.6) 0%, transparent 100%),
        radial-gradient(1px 1px at 70% 30%, rgba(255,255,255,.9) 0%, transparent 100%),
        radial-gradient(1.5px 1.5px at 80% 55%, rgba(255,255,255,.7) 0%, transparent 100%),
        radial-gradient(1px 1px at 90% 15%, rgba(255,255,255,.8) 0%, transparent 100%),
        radial-gradient(1px 1px at 15% 85%, rgba(255,255,255,.6) 0%, transparent 100%),
        radial-gradient(1px 1px at 60% 45%, rgba(255,255,255,.5) 0%, transparent 100%),
        radial-gradient(1.5px 1.5px at 35% 90%, rgba(255,255,255,.7) 0%, transparent 100%),
        radial-gradient(1px 1px at 75% 80%, rgba(255,255,255,.8) 0%, transparent 100%),
        radial-gradient(1px 1px at 48% 25%, rgba(200,200,255,.6) 0%, transparent 100%),
        radial-gradient(1px 1px at 85% 70%, rgba(255,255,255,.5) 0%, transparent 100%),
        radial-gradient(1.5px 1.5px at 5% 50%, rgba(255,255,255,.7) 0%, transparent 100%),
        radial-gradient(1px 1px at 95% 40%, rgba(255,255,255,.9) 0%, transparent 100%);
    animation:mp-twinkle 4s ease-in-out infinite alternate;
}
@keyframes mp-twinkle{from{opacity:.7}to{opacity:1}}

/* Moon section */
.mp-moon-section{display:flex;align-items:center;gap:32px;padding:40px 40px 28px;position:relative}

/* Moon wrap */
.mp-moon-wrap{position:relative;flex-shrink:0}
.mp-moon-svg{width:160px;height:160px;filter:drop-shadow(0 0 30px rgba(200,200,200,.3));position:relative;z-index:2}
.mp-moon-svg svg{width:160px!important;height:160px!important;border-radius:50%}
.mp-moon-glow{
    position:absolute;top:50%;left:50%;
    transform:translate(-50%,-50%);
    width:180px;height:180px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(220,220,200,.15) 0%,transparent 70%);
    animation:mp-glow-pulse 3s ease-in-out infinite;
    z-index:1;
}
@keyframes mp-glow-pulse{0%,100%{transform:translate(-50%,-50%) scale(1);opacity:.6}50%{transform:translate(-50%,-50%) scale(1.15);opacity:1}}

/* Moon info */
.mp-moon-info{flex:1;position:relative;z-index:2}
.mp-date-label{font-size:13px;color:rgba(255,255,255,.5);margin-bottom:8px}
.mp-phase-name{font-size:30px;font-weight:900;color:#fff;margin-bottom:8px;line-height:1.2;text-shadow:0 2px 10px rgba(200,200,255,.3)}
.mp-paksha{font-size:14px;color:#a5b4fc;font-weight:600;margin-bottom:12px}
.mp-badges{display:flex;flex-wrap:wrap;gap:8px}
.mp-badge{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:20px;padding:5px 14px;font-size:12px;font-weight:600;color:#c4b5fd}
.mp-badge.special{background:rgba(251,191,36,.15);border-color:rgba(251,191,36,.4);color:#fbbf24}

/* Stats Row */
.mp-stats-row{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.06)}
.mp-stat-box{padding:20px;text-align:center;border-right:1px solid rgba(255,255,255,.06);position:relative;z-index:2}
.mp-stat-box:last-child{border-right:none}
.mp-stat-icon{font-size:20px;margin-bottom:6px}
.mp-stat-val{font-size:20px;font-weight:900;color:#fff;margin-bottom:4px}
.mp-stat-lbl{font-size:10px;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.5px;font-weight:600}
.mp-illum-bar{width:100%;height:5px;background:rgba(255,255,255,.1);border-radius:5px;overflow:hidden;margin-top:8px}
.mp-illum-fill{height:100%;background:linear-gradient(90deg,#fbbf24,#fef3c7);border-radius:5px;transition:width .6s ease}

/* Next Phases */
.mp-next-section{background:#fff;border:2px solid #ede9fe;border-radius:18px;padding:20px 22px}
.mp-section-title{font-size:14px;font-weight:800;color:#4f46e5;margin-bottom:14px}
.mp-next-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.mp-next-item{background:linear-gradient(135deg,#050510,#0d0d30);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px 12px;text-align:center}
.mp-next-emoji{font-size:32px;margin-bottom:8px}
.mp-next-name{font-size:12px;font-weight:700;color:#c4b5fd;margin-bottom:5px}
.mp-next-date{font-size:11px;color:rgba(255,255,255,.5)}

/* Eclipse */
.mp-eclipse-bar{display:flex;align-items:center;gap:10px;padding:14px 18px;background:linear-gradient(135deg,#1a0a00,#2d1500);border:2px solid rgba(251,146,60,.3);border-radius:12px;font-size:14px;color:#fb923c;font-weight:600}

/* Share */
.mp-share-bar{display:flex;gap:10px;flex-wrap:wrap}
.mp-share-btn{flex:1;border:none;border-radius:10px;padding:11px;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s;min-width:140px;text-align:center}
.mp-share-btn.wa{background:linear-gradient(135deg,#25d366,#128c3e);color:#fff}
.mp-share-btn.wa:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(37,211,102,.3)}
.mp-share-btn.copy{background:#fff;border:1.5px solid #e5e7eb;color:#374151}
.mp-share-btn.copy:hover{border-color:#6366f1;color:#6366f1}

/* SEO */
.mp-seo{background:#fff;border:2px solid #ede9fe;border-radius:14px;padding:22px}
.mp-seo h2{color:#4c1d95;font-size:18px;font-weight:800;margin-bottom:10px;margin-top:18px}
.mp-seo h2:first-child{margin-top:0}
.mp-seo p{color:#4b5563;font-size:14px;line-height:1.8;margin:0}

@media(max-width:800px){
    .mp-moon-section{flex-direction:column;align-items:center;text-align:center;padding:28px 20px}
    .mp-moon-svg{width:140px;height:140px}
    .mp-moon-svg svg{width:140px!important;height:140px!important}
    .mp-moon-glow{width:160px;height:160px}
    .mp-stats-row{grid-template-columns:repeat(2,1fr)}
    .mp-next-grid{grid-template-columns:repeat(2,1fr)}
    .mp-badges{justify-content:center}
}
@media(max-width:480px){
    .mp-controls{flex-direction:column;align-items:stretch}
    .mp-refresh-btn{margin-left:0}
    .mp-stats-row{grid-template-columns:repeat(2,1fr)}
    .mp-phase-name{font-size:24px}
    .mp-share-bar{flex-direction:column}
}