.jms-wrap { max-width: 860px; margin: 28px auto; padding: 0 16px; font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }
.jms-card { border-radius: 18px; overflow: hidden; box-shadow: 0 10px 30px rgba(0,0,0,.08); background: #fff; }
.jms-header { padding: 18px 22px; background: linear-gradient(90deg,#0A3D62,#3C9DD0); color: #fff; display: flex; gap: 14px; align-items: center; }
.jms-logo img { border-radius: 14px; background: #fff; padding: 6px; display: block; }
.jms-title { font-size: 18px; font-weight: 800; line-height: 1.2; }
.jms-subtitle { font-size: 13px; opacity: .95; margin-top: 2px; }
.jms-content { padding: 22px 22px 26px; font-size: 15px; line-height: 1.55; color: #111827; }
.jms-footer { text-align: center; margin-top: 14px; }
.jms-footer a { color: #6b7280; text-decoration: none; font-size: 13px; }

.jms-text { margin: 0 0 12px 0; }
.jms-muted { margin: 0 0 12px 0; color: #4b5563; }
.jms-error { margin: 10px 0 0 0; color: #b91c1c; }
.jms-success { margin: 10px 0 0 0; color: #065f46; }

.jms-form { max-width: 520px; margin-top: 10px; display: grid; gap: 10px; }
.jms-form label { font-weight: 700; font-size: 13px; color: #111827; }
.jms-form input { width: 100%; padding: 12px 12px; border: 1px solid #e5e7eb; border-radius: 12px; outline: none; }
.jms-form input:focus { border-color: #3C9DD0; box-shadow: 0 0 0 3px rgba(60,157,208,.18); }

.jms-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 10px; }

.jms-btn { display: inline-block; text-decoration: none; padding: 11px 14px; border-radius: 12px; font-weight: 800; border: 0; cursor: pointer; }
.jms-btn-primary { background: #0A3D62; color: #fff; }
.jms-btn-primary:hover { filter: brightness(1.05); }
.jms-btn-secondary { background: #fff; color: #0A3D62; border: 1px solid #0A3D62; }
.jms-btn-secondary:hover { background: rgba(10,61,98,.06); }
.jms-btn-link { background: transparent; color: #6b7280; padding: 11px 8px; font-weight: 700; }

.jms-spacer { height: 16px; }
