.mcare { --mcare-accent: #6b4f2a; --mcare-border: rgba(0,0,0,.14); --mcare-soft: rgba(0,0,0,.03); max-width: 720px; margin: 0 auto 2em; }
.mcare *, .mcare *::before, .mcare *::after { box-sizing: border-box; }
.mcare-title { margin-bottom: .5em; }
.mcare-intro { margin-bottom: 1.25em; }
.mcare-form .mcare-field { margin: 0 0 1.1em; border: 0; padding: 0; }
.mcare-form legend, .mcare-form label { font-weight: 600; display: block; margin-bottom: .35em; }
.mcare-form .mcare-choice { font-weight: 400; display: flex; gap: .5em; align-items: flex-start; margin: .3em 0; line-height: 1.4; }
.mcare-form .mcare-choice input { margin-top: .25em; flex: none; }
.mcare-form input[type=text], .mcare-form input[type=email], .mcare-form input[type=tel], .mcare-form textarea {
	width: 100%; padding: .65em .75em; border: 1px solid var(--mcare-border); border-radius: 6px; font: inherit; background: #fff; color: inherit;
}
.mcare-form textarea { resize: vertical; min-height: 8em; }
.mcare-form input:focus, .mcare-form textarea:focus { outline: 2px solid var(--mcare-accent); outline-offset: 1px; }
.mcare-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1em; }
@media (max-width: 560px) { .mcare-row { grid-template-columns: 1fr; } }
.mcare-optional { font-weight: 400; opacity: .65; }
.mcare-help { display: block; font-size: .875em; opacity: .75; margin-top: .35em; }
.mcare-consent { background: var(--mcare-soft); padding: .9em 1em !important; border-radius: 6px; font-size: .925em; }
.mcare-button { background: var(--mcare-accent); color: #fff; border: 0; border-radius: 6px; padding: .75em 1.6em; font: inherit; font-weight: 600; cursor: pointer; }
.mcare-button:hover { filter: brightness(1.1); }
.mcare-hp { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }
.mcare-notice { padding: .9em 1.1em; border-radius: 6px; margin-bottom: 1.2em; border-left: 4px solid var(--mcare-accent); background: var(--mcare-soft); }
.mcare-notice-success { border-color: #2e7d4f; background: #edf7f1; color: #1d4d31; }
.mcare-notice-error { border-color: #b3261e; background: #fbeeed; color: #6b1a15; }

.mcare-wall { display: grid; gap: 1em; }
.mcare-card { border: 1px solid var(--mcare-border); border-radius: 8px; padding: 1.1em 1.2em; position: relative; }
.mcare-card-text p:last-child { margin-bottom: 0; }
.mcare-card-meta { display: flex; justify-content: space-between; align-items: center; gap: 1em; margin-top: .9em; font-size: .875em; opacity: .9; flex-wrap: wrap; }
.mcare-pray { background: transparent; border: 1px solid var(--mcare-border); border-radius: 999px; padding: .35em .9em; cursor: pointer; font: inherit; color: inherit; }
.mcare-pray.is-done { background: var(--mcare-soft); cursor: default; opacity: .8; }
.mcare-count { font-weight: 700; margin-left: .25em; }
.mcare-answered { border-color: #2e7d4f; }
.mcare-badge { display: inline-block; font-size: .75em; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: #2e7d4f; margin-bottom: .4em; }
.mcare-empty { opacity: .75; }
