:root{
  --mc-card:#fff; --mc-border:#e5e7eb; --mc-soft:#f8fafc; --mc-chip:#f1f5f9;
  --mc-text:#0f172a; --mc-muted:#475569; --mc-primary:#06b6d4; --mc-primary-600:#0891b2; --mc-focus:rgba(6,182,212,.25);
}
.mc-form-wrap{max-width:640px;margin:28px auto;padding:0 16px}
.mc-card{border:1px solid var(--mc-border);border-radius:12px;background:var(--mc-card);padding:18px}
.mc-title{margin:0 0 12px;text-align:center;font-size:24px;font-weight:800}
.mc-note{color:var(--mc-muted);text-align:center;margin-bottom:12px}
.mc-row{display:grid;gap:10px;margin-bottom:12px}
.mc-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:760px){.mc-grid{grid-template-columns:1fr}}
input[type="text"],input[type="email"],input[type="password"],select,textarea{
  width:100%;padding:11px 12px;border:1px solid var(--mc-border);border-radius:10px;background:#fff;color:var(--mc-text);
  box-shadow: inset 0 0 0 1px #e2e8f0;
}
input:focus,select:focus,textarea:focus{
  outline:2px solid var(--mc-primary);outline-offset:2px;border-color:var(--mc-primary);box-shadow:0 0 0 3px var(--mc-focus);
}
button, .button, .wpum-button{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 14px;border:1px solid var(--mc-border);
  border-radius:10px;background:var(--mc-chip);color:var(--mc-text);font-weight:600;text-decoration:none;line-height:1.2;
}
button:hover, .button:hover, .wpum-button:hover{background:#e6f7fb;border-color:var(--mc-primary);color:var(--mc-primary-600)}
.mc-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:6px}
.wpum-message, .wpum-error, .notice, .error{
  border-radius:10px;padding:10px 12px;margin:10px 0
}
.wpum-message{background:#ecfeff;border:1px solid #bae6fd}
.wpum-error, .error{background:#fff1f2;border:1px solid #fecdd3}
.wpum-form label{font-weight:600;margin-bottom:4px;display:block}
.wpum-form .wpum-submit input[type="submit"]{border-radius:10px;padding:10px 14px;border:1px solid var(--mc-border);background:var(--mc-primary);color:#fff}
.wpum-form .wpum-submit input[type="submit"]:hover{background:var(--mc-primary-600);border-color:var(--mc-primary-600)}
/* Nextend social buttons (light harmonization) */
.nsl-container .nsl-button{border-radius:10px !important;border:1px solid var(--mc-border) !important}
.nsl-container .nsl-button:hover{filter:brightness(0.98)}

/* Auth refinements (login / register / reset) */
.mc-login-form .mc-pass-wrap { position: relative; }
.mc-login-form .mc-toggle-pass {
  position:absolute; right:10px; top:50%; transform:translateY(-50%);
  border:0; background:transparent; cursor:pointer;
}
.mc-row-inline { display:flex; align-items:center; gap:10px; }
.mc-check { display:flex; align-items:center; gap:8px; }

/* Auth refinements */
.mc-login-form .mc-pass-wrap,
.mc-register-form .mc-pass-wrap { position: relative; }
.mc-toggle-pass { position:absolute; right:10px; top:50%; transform:translateY(-50%); border:0; background:transparent; cursor:pointer; }
.mc-row-inline { display:flex; align-items:center; gap:10px; }
.mc-check { display:flex; align-items:center; gap:8px; }

/* ---- Accessible link colors in content/cards/forms ---- */
:root{
  --mc-link: var(--mc-primary-600);
  --mc-link-hover: var(--mc-primary);
}

/* Generic content areas */
.entry-content a:not(.button):not(.wpum-button),
.mc-form-wrap a:not(.button):not(.wpum-button),
.mc-card a:not(.button):not(.wpum-button),
.mhub-board a:not(.button):not(.wpum-button),
.mhub-table a:not(.button):not(.wpum-button) {
  color: var(--mc-link);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.entry-content a:hover:not(.button):not(.wpum-button),
.mc-form-wrap a:hover:not(.button):not(.wpum-button),
.mc-card a:hover:not(.button):not(.wpum-button),
.mhub-board a:hover:not(.button):not(.wpum-button),
.mhub-table a:hover:not(.button):not(.wpum-button) {
  color: var(--mc-link-hover);
}

/* Ensure focus is visible for keyboard users */
.entry-content a:focus-visible,
.mc-form-wrap a:focus-visible,
.mc-card a:focus-visible,
.mhub-board a:focus-visible,
.mhub-table a:focus-visible {
  outline: 2px solid var(--mc-primary);
  outline-offset: 2px;
}

/* Buttons (anchors with .button already styled above) */
a.button, .wpum-button {
  text-decoration: none !important;
}


/* Mobile: stack actions full-width for easier tapping */
@media (max-width: 600px){
  .mc-actions { flex-direction: column; align-items: stretch; }
  .mc-actions .button,
  .mc-actions .wpum-button,
  .mc-actions button { width: 100%; }
}

/* Ensure visible unfocused boundary is obvious against white */
input[type="text"],input[type="email"],input[type="password"],select,textarea{
  box-shadow: inset 0 0 0 1px #e2e8f0;
}

/* (Optional) Recaptcha badge scale on tiny screens */
@media (max-width: 420px){
  .grecaptcha-badge { transform: scale(.9); transform-origin: bottom right; }
}
