/* MakkiPlay authentication surfaces. Typography remains owned by tokens.css. */
.mp-auth-form__row>a:focus-visible,.mp-auth-card__footer a:focus-visible{color:var(--mp-text)}.mp-auth-check a:hover,.mp-auth-check a:focus-visible{color:var(--mp-accent-hover)}
body.mp-auth-open,body.mp-modal-open{overflow:hidden}
.mp-auth-modal{position:fixed;inset:0;z-index:1800;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left))}
.mp-auth-modal[hidden]{display:none}.mp-auth-modal__backdrop{position:absolute;inset:0;background:color-mix(in srgb,var(--mp-dark-bg) 76%,transparent);backdrop-filter:blur(6px)}
.mp-auth-modal__dialog{position:relative;z-index:1;width:min(100%,450px);max-height:min(92dvh,780px);overflow:auto;border:1px solid var(--mp-line);border-radius:var(--mp-radius-dialog);background:var(--mp-bg);box-shadow:var(--mp-shadow-lg);outline:0}
.mp-auth-modal__close{position:absolute;z-index:3;top:12px;right:12px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--mp-line);border-radius:var(--mp-radius-control);background:var(--mp-surface);color:var(--mp-text);cursor:pointer;transition:border-color var(--mp-motion-fast) var(--mp-ease),background-color var(--mp-motion-fast) var(--mp-ease),color var(--mp-motion-fast) var(--mp-ease)}
.mp-auth-modal__close:hover,.mp-auth-modal__close:focus-visible{border-color:var(--mp-accent);background:var(--mp-accent-soft);color:var(--mp-accent-text);outline:0;box-shadow:var(--mp-focus-ring)}.mp-auth-modal__close svg{width:18px;height:18px}
.mp-account-page{min-height:calc(100vh - 64px);margin:0;padding:0;background:radial-gradient(circle at 50% -10%,var(--mp-accent-soft),transparent 36%),var(--mp-bg)}
.mp-account-page__inner{width:min(calc(100% - 36px),1180px);margin-inline:auto;padding:48px 0 68px}.mp-account-route--login .mp-account-page__inner,.mp-account-route--signup .mp-account-page__inner,.mp-account-route--forgot .mp-account-page__inner,.mp-account-route--reset .mp-account-page__inner,.mp-account-route--verify .mp-account-page__inner{display:grid;place-items:start center;width:min(calc(100% - 28px),1180px)}
.mp-auth-card{width:min(100%,450px);box-sizing:border-box;padding:24px;border:1px solid color-mix(in srgb,var(--mp-line) 82%,var(--mp-accent));border-radius:var(--mp-radius-dialog);background:color-mix(in srgb,var(--mp-bg) 96%,var(--mp-surface));box-shadow:var(--mp-shadow)}.mp-auth-card--signup{width:min(100%,520px)}.mp-auth-card--modal{width:100%;padding:24px;border:0;border-radius:var(--mp-radius-dialog);box-shadow:none;background:var(--mp-bg)}
.mp-auth-card__brand{display:flex;justify-content:center;align-items:center;min-height:44px;margin-bottom:8px}.mp-auth-card__logo{display:block;width:auto;max-width:180px;max-height:44px;object-fit:contain}.mp-auth-card__mark{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--mp-radius-card);background:var(--mp-accent);color:var(--mp-accent-ink);font-size:var(--mp-fs-22);font-weight:var(--mp-weight-extrabold);box-shadow:var(--mp-shadow-sm)}
.mp-auth-card__header{text-align:center}.mp-auth-eyebrow{display:inline-block;margin-bottom:7px;color:var(--mp-accent-text);font-size:var(--mp-fs-11);font-weight:var(--mp-weight-extrabold);letter-spacing:var(--mp-track-pos-075);text-transform:uppercase}.mp-auth-card__header h1,.mp-auth-card__header h2{margin:0;color:var(--mp-text);font-size:var(--mp-fs-fluid-auth-title);font-weight:var(--mp-weight-bold);line-height:var(--mp-lh-108);letter-spacing:var(--mp-track-neg-035)}.mp-auth-status-card h1{margin:0;color:var(--mp-text);font-size:var(--mp-fs-fluid-auth-title);font-weight:var(--mp-weight-extrabold);line-height:var(--mp-lh-108);letter-spacing:var(--mp-track-neg-035)}.mp-auth-card__header p{max-width:430px;margin:8px auto 0;color:var(--mp-muted);font-size:var(--mp-fs-14);line-height:var(--mp-lh-155)}
.mp-auth-form{display:grid;gap:12px;margin-top:20px}.mp-auth-form>label,.mp-auth-form__split>label{display:grid;gap:7px;align-content:start}.mp-auth-form__split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.mp-auth-form label>span:first-child{font-size:var(--mp-fs-12);font-weight:var(--mp-weight-bold);letter-spacing:var(--mp-track-pos-012)}.mp-auth-form label small{color:var(--mp-muted);font-size:var(--mp-fs-11);line-height:var(--mp-lh-145);text-transform:none}
.mp-auth-form input:not([type="checkbox"]){width:100%;height:44px;box-sizing:border-box;border:1px solid var(--mp-line);border-radius:var(--mp-radius-control);padding:0 14px;background:var(--mp-surface);color:var(--mp-text);font-size:var(--mp-fs-15);line-height:var(--mp-lh-12);outline:0;transition:border-color var(--mp-motion-fast) var(--mp-ease),background-color var(--mp-motion-fast) var(--mp-ease),box-shadow var(--mp-motion-fast) var(--mp-ease)}.mp-auth-form input:not([type="checkbox"]):hover{border-color:color-mix(in srgb,var(--mp-text) 22%,var(--mp-line))}.mp-auth-form input:focus-visible{border-color:var(--mp-accent);background:var(--mp-bg);box-shadow:var(--mp-focus-ring)}.mp-auth-form input[aria-invalid="true"]{border-color:var(--mp-danger)}.mp-auth-form input:disabled{opacity:.7;cursor:not-allowed}
.mp-password-field{position:relative;display:block}.mp-password-field input{padding-right:72px}.mp-password-field button{position:absolute;top:50%;right:3px;transform:translateY(-50%);min-width:58px;height:44px;padding:0 8px;border:0;border-radius:var(--mp-radius-control);background:transparent;color:var(--mp-muted);font-size:var(--mp-fs-11);font-weight:var(--mp-weight-bold);cursor:pointer}.mp-password-field button:hover,.mp-password-field button:focus-visible{background:var(--mp-surface-2);color:var(--mp-text);outline:0}
.mp-auth-form__row{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:44px}.mp-auth-form__row>a,.mp-auth-card__footer a{display:inline-flex;align-items:center;min-height:44px;color:var(--mp-accent-text);font-size:var(--mp-fs-12);font-weight:var(--mp-weight-bold)}.mp-auth-form__row>a:hover,.mp-auth-card__footer a:hover{color:var(--mp-text)}.mp-auth-form__row>a:focus-visible,.mp-auth-card__footer a:focus-visible{outline:2px solid var(--mp-accent);outline-offset:3px;border-radius:var(--mp-radius-control)}
.mp-auth-form>label.mp-auth-check{display:flex;align-items:center;align-content:normal;gap:9px}.mp-auth-check{min-height:44px}.mp-auth-check input{flex:0 0 auto;width:20px;height:20px;margin:0;accent-color:var(--mp-selected)}.mp-auth-check span{font-size:var(--mp-fs-12);line-height:var(--mp-lh-145)}.mp-auth-check a{display:inline-flex;align-items:center;min-height:24px;color:var(--mp-accent-text);text-decoration:underline;text-underline-offset:2px}
.mp-auth-submit{width:100%;min-height:44px;margin-top:2px;border-radius:var(--mp-radius-control);font-size:var(--mp-fs-13);font-weight:var(--mp-weight-extrabold);letter-spacing:var(--mp-track-pos-01)}.mp-auth-submit[disabled],.mp-auth-form button[disabled]{opacity:.58;cursor:wait;transform:none;box-shadow:none}
.mp-auth-message{min-height:0;border-radius:var(--mp-radius-control);color:var(--mp-muted);font-size:var(--mp-fs-12);line-height:var(--mp-lh-15)}.mp-auth-message:not(:empty){padding:10px 12px;border:1px solid var(--mp-line);background:var(--mp-surface)}.mp-auth-message.is-error{border-color:color-mix(in srgb,var(--mp-danger) 42%,var(--mp-line));background:color-mix(in srgb,var(--mp-danger) 5%,var(--mp-surface));color:var(--mp-text)}.mp-auth-message.is-success{border-color:color-mix(in srgb,var(--mp-success) 48%,var(--mp-line));background:color-mix(in srgb,var(--mp-success) 5%,var(--mp-surface));color:var(--mp-text)}
.mp-auth-link-button{justify-self:center;min-height:44px;padding:0 8px;border:0;border-radius:var(--mp-radius-control);background:transparent;color:var(--mp-accent-text);font-size:var(--mp-fs-12);font-weight:var(--mp-weight-bold);cursor:pointer}.mp-auth-link-button:hover{color:var(--mp-text)}.mp-auth-link-button:focus-visible{outline:2px solid var(--mp-accent);outline-offset:3px}.mp-auth-link-button[hidden]{display:none}
.mp-auth-card__footer{margin-top:20px;padding-top:16px;border-top:1px solid var(--mp-line);text-align:center;color:var(--mp-muted);font-size:var(--mp-fs-12);line-height:var(--mp-lh-145)}.mp-auth-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.mp-auth-status-card{width:min(100%,520px);box-sizing:border-box;padding:32px 24px;border:1px solid var(--mp-line);border-radius:var(--mp-radius-dialog);background:var(--mp-bg);box-shadow:var(--mp-shadow);text-align:center}.mp-auth-status-card p{margin:12px 0 22px;color:var(--mp-muted);font-size:var(--mp-fs-14);line-height:var(--mp-lh-155)}.mp-auth-status-card__icon{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 15px;border-radius:50%;background:var(--mp-accent-soft);color:var(--mp-accent-text);font-size:var(--mp-fs-24);font-weight:var(--mp-weight-extrabold)}
@media(max-width:760px){.mp-account-page{min-height:calc(100vh - 58px)}.mp-account-page__inner{width:min(calc(100% - 20px),1180px);padding:26px 0 50px}.mp-auth-card,.mp-auth-card--signup,.mp-auth-card--modal{padding:20px}.mp-auth-card__header p{font-size:var(--mp-fs-13)}.mp-auth-form input:not([type="checkbox"]){font-size:var(--mp-fs-16)}.mp-auth-modal{align-items:end;padding:env(safe-area-inset-top) 0 0}.mp-auth-modal__dialog{width:100%;max-height:calc(94dvh - env(safe-area-inset-top));padding-bottom:env(safe-area-inset-bottom);border-radius:var(--mp-radius-dialog) var(--mp-radius-dialog) 0 0;border-bottom:0}.mp-auth-modal__close{top:10px;right:max(10px,env(safe-area-inset-right))}}
@media(max-width:480px){.mp-auth-form__split{grid-template-columns:1fr}.mp-auth-form__row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.mp-auth-form__row>a{white-space:nowrap}}
@media(prefers-reduced-motion:reduce){.mp-auth-modal__close,.mp-auth-form input:not([type="checkbox"]){transition:none}}
.mp-contact-card{width:min(100%,720px)}.mp-contact-form{gap:18px}.mp-contact-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.mp-contact-field{min-width:0}.mp-contact-field--full{grid-column:1/-1}.mp-contact-field textarea{box-sizing:border-box;width:100%;min-height:170px;padding:12px 14px;border:1px solid var(--mp-line);border-radius:var(--mp-radius-control);background:var(--mp-surface);color:var(--mp-text);font:inherit;font-size:var(--mp-fs-15);line-height:var(--mp-lh-15);resize:vertical;outline:0}.mp-contact-field textarea:focus-visible{border-color:var(--mp-accent);background:var(--mp-bg);box-shadow:var(--mp-focus-ring)}
@media(max-width:600px){.mp-contact-form__grid{grid-template-columns:1fr}.mp-contact-field--full{grid-column:auto}.mp-contact-card{width:100%}}
