:root{--m-accent:#3a4f8f;--m-page:#f6f5f1;--m-card:#fff;--m-ink:#16171c;--m-ink-2:#3c3d45;--m-ink-3:#5a5b65;--m-line-2:#cfcec8;--m-jp:var(--font-noto-sans-jp),system-ui,sans-serif}.m *{box-sizing:border-box}.m{font-family:var(--m-jp);color:var(--m-ink);background:var(--m-page);-webkit-font-smoothing:antialiased;letter-spacing:.01em;flex-direction:column;min-height:100dvh;line-height:1.5;display:flex}.m-login{text-align:center;flex-direction:column;flex:auto;padding:64px 28px 30px;display:flex}.m-lg-brand{color:var(--m-accent);letter-spacing:-.01em;font-size:32px;font-weight:900}.m-lg-head{color:var(--m-ink);text-wrap:balance;margin-top:30px;font-size:27px;font-weight:800;line-height:1.45}.m-lg-sub{color:var(--m-ink-2);margin-top:12px;font-size:15px;font-weight:500;line-height:1.7}.m-lg-spacer{flex:auto;min-height:36px}.m-google{cursor:pointer;background:var(--m-card);border:2px solid var(--m-line-2);width:100%;min-height:60px;color:var(--m-ink);font-family:var(--m-jp);border-radius:16px;justify-content:center;align-items:center;gap:12px;font-size:19px;font-weight:800;display:flex}.m-google:active{background:var(--m-page)}.m-google:disabled{opacity:.55;cursor:not-allowed}.m-line{cursor:pointer;color:#fff;width:100%;min-height:60px;font-family:var(--m-jp);background:#06c755;border:2px solid #06c755;border-radius:16px;justify-content:center;align-items:center;gap:12px;margin-top:12px;font-size:19px;font-weight:800;display:flex}.m-line:active{background:#05b34c;border-color:#05b34c}.m-line:disabled{opacity:.55;cursor:not-allowed}@media (hover:hover){.m-google:hover:not(:disabled){background:var(--m-page)}.m-line:hover:not(:disabled){filter:brightness(.97)}}.m-google:focus-visible,.m-line:focus-visible{outline:2px solid var(--m-accent);outline-offset:2px}.m-lg-error{color:#c2261b;margin-top:14px;font-size:14.5px;font-weight:700}.m-lg-signup{color:var(--m-ink-2);margin-top:22px;font-size:15px;line-height:1.7}.m-lg-signup a{color:var(--m-accent);font-weight:800;text-decoration:none}.m-lg-legal{color:var(--m-ink-3);margin-top:14px;font-size:13px;line-height:1.7}.m-lg-legal a{color:var(--m-ink-2);font-weight:600;text-decoration:none}@media (hover:hover){.m-lg-signup a:hover,.m-lg-legal a:hover{text-decoration:underline}}.m-lg-signup a:focus-visible,.m-lg-legal a:focus-visible{outline:2px solid var(--m-accent);outline-offset:2px;border-radius:4px}
