/* MRL Tools — shared styling for next-moon, calendar, matcher, intention-setter */
.mrl-tool{
    max-width:720px;margin:2rem auto;padding:28px 24px;
    background:linear-gradient(135deg,#1a0533 0%,#2d1b4e 100%);
    color:#f5e6d3;border-radius:18px;
    box-shadow:0 16px 50px -20px rgba(26,5,51,0.55);
    font-family:Lora,Georgia,serif;
}
.mrl-tool-empty{text-align:center;padding:2rem;color:#f5e6d3;opacity:0.8;background:rgba(26,5,51,0.08);border-radius:14px;margin:2rem auto;max-width:640px}

/* Countdown */
.mrl-countdown{text-align:center;padding:40px 24px}
.mrl-countdown-emoji{font-size:4.5rem;line-height:1;margin-bottom:0.5rem}
.mrl-countdown-label{font-family:Lora,serif;font-size:0.85rem;letter-spacing:0.22em;text-transform:uppercase;color:#c9a84c;margin-bottom:0.5rem}
.mrl-countdown-when{font-family:Cinzel,serif;font-size:2.2rem;font-weight:400;color:#f5e6d3;margin:0.5rem 0}
.mrl-countdown-sign{font-size:1rem;color:#f5e6d3;margin:0.3rem 0}
.mrl-countdown-iso{font-size:0.9rem;color:#c9a84c;margin-top:0.8rem;font-style:italic}

/* Calendar grid */
.mrl-calendar-grid{
    max-width:1080px;
    display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;
    padding:28px 24px;
}
.mrl-calendar-cell{
    background:rgba(245,230,211,0.06);border:1px solid rgba(201,168,76,0.25);
    border-radius:12px;padding:16px;text-align:center;
}
.mrl-calendar-cell.is-full{border-color:#c9a84c;background:rgba(201,168,76,0.08)}
.mrl-cal-date{font-family:Cinzel,serif;font-size:0.9rem;color:#c9a84c;letter-spacing:0.08em}
.mrl-cal-month{text-transform:uppercase}
.mrl-cal-day{font-size:1.6rem;font-weight:600;color:#f5e6d3;display:inline-block;margin:0 0.3rem}
.mrl-cal-year{font-size:0.8rem;opacity:0.7}
.mrl-cal-emoji{font-size:2rem;line-height:1;margin:0.4rem 0}
.mrl-cal-label{font-size:0.98rem;color:#f5e6d3;margin:0.3rem 0}
.mrl-cal-meta{font-size:0.85rem;color:#c9a84c;opacity:0.9}

/* Matcher + intention setter forms */
.mrl-rm-form,.mrl-is-form{display:flex;flex-direction:column;gap:1rem}
.mrl-rm-row{display:flex;flex-direction:column;gap:0.4rem}
.mrl-rm-row label, .mrl-is-q{color:#c9a84c;font-weight:600;font-size:0.95rem;letter-spacing:0.04em}
.mrl-rm-form select,
.mrl-is-form input[type=text]{
    padding:12px 16px;border:1px solid rgba(201,168,76,0.3);border-radius:10px;
    background:rgba(245,230,211,0.08);color:#f5e6d3;font-family:Lora,serif;font-size:1rem;
}
.mrl-is-form label{display:block;margin:0.3rem 0;font-size:1rem;color:#f5e6d3;font-weight:400;letter-spacing:0}
.mrl-is-form label input{margin-right:0.5rem}
.mrl-rm-submit,.mrl-is-submit{
    margin-top:0.5rem;padding:14px 28px;border:none;
    background:#c9a84c;color:#1a0533;border-radius:999px;
    font-family:Cinzel,serif;font-weight:600;font-size:1.05rem;cursor:pointer;
    letter-spacing:0.03em;transition:transform 0.15s,box-shadow 0.15s;
}
.mrl-rm-submit:hover,.mrl-is-submit:hover{transform:translateY(-1px);box-shadow:0 8px 24px -8px rgba(201,168,76,0.5)}
