/*! Copyright (c) MatchFlow.gg. All rights reserved. Proprietary: see https://matchflow.gg/terms */
.mf-legal-cards { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); margin: 1.5rem 0; }
.mf-legal-card { border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 18px; padding: 1.1rem 1.2rem; background: rgba(255, 255, 255, 0.03); }
.mf-legal-card h3 { margin: 0 0 0.35rem; font-size: 1.05rem; }
.mf-legal-card p { margin: 0 0 0.6rem; opacity: 0.85; }
.mf-legal-card a.mf-button { display: inline-flex; margin-top: 0.25rem; }
.mf-legal-list { padding-left: 1.2rem; }
.mf-legal-list li { margin: 0.35rem 0; }
.mf-legal-callout { border-left: 4px solid #ff5c8a; padding: 0.85rem 1rem; border-radius: 12px; background: rgba(255, 92, 138, 0.08); margin: 1rem 0; }
.mf-legal-callout.is-info { border-left-color: #7c6cff; background: rgba(124, 108, 255, 0.1); }
.mf-legal-form { display: grid; gap: 0.75rem; max-width: 460px; margin-top: 1rem; }
.mf-legal-form label { display: grid; gap: 0.35rem; font-weight: 600; }
.mf-legal-form input[type="text"] { padding: 0.7rem 0.85rem; border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.15); background: rgba(0, 0, 0, 0.25); color: inherit; font: inherit; }
.mf-legal-form .mf-button-danger { background: #d83a5c; border-color: #d83a5c; color: #fff; }
.mf-legal-form .mf-button-danger[disabled] { opacity: 0.5; cursor: not-allowed; }
.mf-legal-form textarea { padding: 0.7rem 0.85rem; border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.15); background: rgba(0, 0, 0, 0.25); color: inherit; font: inherit; width: 100%; box-sizing: border-box; min-height: 5.5rem; resize: vertical; line-height: 1.5; }
.mf-legal-form input:focus-visible,
.mf-legal-form textarea:focus-visible { outline: 2px solid #7c6cff; outline-offset: 1px; border-color: transparent; }
.mf-legal-required { font-weight: 500; opacity: 0.7; }
.mf-legal-choices { display: grid; gap: 0.45rem; margin: 0; padding: 0; border: 0; min-width: 0; }
.mf-legal-choices legend { padding: 0; margin-bottom: 0.5rem; font-weight: 600; }
.mf-legal-form .mf-legal-choice { display: flex; align-items: center; gap: 0.7rem; padding: 0.6rem 0.8rem; border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.12); background: rgba(0, 0, 0, 0.2); font-weight: 500; cursor: pointer; }
.mf-legal-form .mf-legal-choice:hover { border-color: rgba(124, 108, 255, 0.6); }
.mf-legal-form .mf-legal-choice:has(input:checked) { border-color: #ff5c8a; background: rgba(255, 92, 138, 0.12); }
.mf-legal-form .mf-legal-choice input[type="radio"] { width: 18px; height: 18px; margin: 0; flex: 0 0 auto; accent-color: #ff4f7a; cursor: pointer; }
.mf-legal-fineprint { margin: 0; font-size: 0.86rem; opacity: 0.75; }
.mf-legal-status { min-height: 1.4em; font-weight: 600; }
.mf-legal-status[data-tone="error"] { color: #ff8aa8; }
.mf-legal-status[data-tone="success"] { color: #8be9b4; }
.mf-legal-status[data-tone="info"] { color: #b3a9ff; }
.mf-legal-table { width: 100%; border-collapse: collapse; font-size: 0.92rem; margin: 0.75rem 0 1.5rem; }
.mf-legal-table th, .mf-legal-table td { text-align: left; padding: 0.55rem 0.6rem; border-bottom: 1px solid rgba(255, 255, 255, 0.08); vertical-align: top; }
.mf-legal-table tr[data-priority="critical"] td { background: rgba(216, 58, 92, 0.16); }
.mf-legal-table tr[data-priority="high"] td { background: rgba(255, 170, 60, 0.1); }
.mf-legal-badge { display: inline-block; padding: 0.15rem 0.5rem; border-radius: 999px; font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.03em; background: rgba(255, 255, 255, 0.1); }
.mf-legal-badge.is-critical { background: #d83a5c; color: #fff; }
.mf-legal-badge.is-high { background: #d98a2b; color: #fff; }
.mf-legal-actions { display: flex; flex-wrap: wrap; gap: 0.4rem; }
.mf-legal-actions button { padding: 0.35rem 0.6rem; border-radius: 10px; border: 1px solid rgba(255, 255, 255, 0.2); background: rgba(255, 255, 255, 0.06); color: inherit; font: inherit; cursor: pointer; }
.mf-legal-actions button.is-danger { border-color: #d83a5c; }
.mf-legal-scroll { overflow-x: auto; }
.mf-help-qa { display: grid; gap: 6px; }
.mf-help-qa h3 { margin: 10px 0 0; font-family: "Outfit", sans-serif; font-size: 0.92rem; font-weight: 700; line-height: 1.35; color: #f3f4ff; scroll-margin-top: 100px; }
.mf-help-qa h3:first-child { margin-top: 4px; }
.mf-help-qa p strong { color: #e6e3ff; font-weight: 600; }
.mf-support-contact { scroll-margin-top: 96px; }
.mf-support-contact > h2 { display: flex; align-items: center; gap: 0.5rem; }
.mf-support-contact > h2 i { color: #b3a9ff; font-size: 0.85em; }
.mf-support-form { max-width: 640px; }
.mf-support-form[hidden],
.mf-support-done[hidden] { display: none; }
.mf-support-form input[type="email"],
.mf-support-form select,
.mf-support-form textarea { padding: 0.7rem 0.85rem; border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.15); background: rgba(0, 0, 0, 0.25); color: inherit; font: inherit; width: 100%; box-sizing: border-box; }
.mf-support-form input[type="text"] { width: 100%; box-sizing: border-box; }
.mf-support-form select { appearance: none; -webkit-appearance: none; padding-right: 2.4rem; background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23b3a9ff' d='M4.2 6.2a.75.75 0 0 1 1.06 0L8 8.94l2.74-2.74a.75.75 0 1 1 1.06 1.06l-3.27 3.27a.75.75 0 0 1-1.06 0L4.2 7.26a.75.75 0 0 1 0-1.06z'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 0.85rem center; cursor: pointer; }
.mf-support-form select option { color: #1c1637; background: #ffffff; }
.mf-support-form textarea { min-height: 9.5rem; resize: vertical; line-height: 1.5; }
.mf-support-form input:focus-visible,
.mf-support-form select:focus-visible,
.mf-support-form textarea:focus-visible { outline: 2px solid #7c6cff; outline-offset: 1px; border-color: transparent; }
.mf-support-form input::placeholder,
.mf-support-form textarea::placeholder { color: rgba(255, 255, 255, 0.38); font-weight: 400; }
.mf-support-grid { display: grid; gap: 0.75rem; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.mf-support-count { justify-self: end; font-size: 0.78rem; font-weight: 500; opacity: 0.65; }
.mf-support-note { margin: 0; font-size: 0.85rem; opacity: 0.8; }
.mf-support-hint { font-size: 0.82rem; font-weight: 500; opacity: 0.75; }
.mf-support-form .mf-button-primary { justify-self: start; }
.mf-support-form .mf-button-primary[disabled] { opacity: 0.6; cursor: progress; transform: none; }
.mf-support-trap { position: absolute; left: -9999px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.mf-support-identity { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 0.75rem 1.25rem; }
.mf-support-identity-who { display: grid; gap: 0.2rem; min-width: 0; }
.mf-support-identity-name { overflow-wrap: anywhere; }
.mf-support-identity-handle { opacity: 0.75; }
.mf-support-identity-line { font-size: 0.88rem; opacity: 0.85; overflow-wrap: anywhere; }
.mf-support-identity-switch { padding: 0.35rem 0.7rem; border-radius: 10px; border: 1px solid rgba(255, 255, 255, 0.2); background: rgba(255, 255, 255, 0.06); color: inherit; font: inherit; font-size: 0.82rem; font-weight: 600; cursor: pointer; white-space: nowrap; }
.mf-support-identity-switch:hover,
.mf-support-identity-switch:focus-visible { background: rgba(255, 255, 255, 0.12); }
.mf-support-done { max-width: 640px; }
.mf-support-done p { margin: 0.35rem 0 0.85rem; }
.mf-support-done code { padding: 0.1rem 0.4rem; border-radius: 6px; background: rgba(255, 255, 255, 0.1); font-weight: 700; }
.mf-support-done:focus-visible { outline: 2px solid #7c6cff; outline-offset: 2px; }
