.nagisa-brand{display:inline-flex;align-items:center;gap:8px;color:inherit;text-decoration:none}
.nagisa-brand img{display:block;width:32px;height:32px;object-fit:contain;border-radius:8px;background:#fff}
.nagisa-brand strong{font-size:17px;letter-spacing:.08em;color:#0b4f83}
.nagisa-brand small{display:block;font-size:9px;letter-spacing:.08em;color:var(--muted,#607785);font-weight:500}
.map-brand{gap:7px}.map-brand .nagisa-brand img{width:22px;height:22px;border-radius:50%}.map-brand .nagisa-brand strong{font-size:11px;color:#eef8ff;letter-spacing:.12em}
.auth-brand-logo{display:block;width:min(320px,84vw);height:auto;margin:0 auto 8px}.auth-brand-copy{font-size:12px!important;letter-spacing:.08em;color:var(--muted)!important}
.brand-splash{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;background:#fff;pointer-events:none;animation:nagisaSplash 1.55s ease forwards}
.brand-splash-inner{text-align:center;transform:translateY(6px);animation:nagisaSplashRise 1.1s cubic-bezier(.2,.8,.2,1) both}
.brand-splash-mark{display:block;width:min(178px,42vw);height:auto;margin:0 auto 12px;filter:drop-shadow(0 14px 24px rgba(3,53,89,.12))}
.brand-splash-name{font-size:clamp(32px,8vw,54px);font-weight:760;letter-spacing:.12em;color:#064b7d;line-height:1}
.brand-splash-copy{margin-top:12px;font-family:serif;font-size:clamp(14px,3.8vw,20px);letter-spacing:.08em;color:#153e61}
@keyframes nagisaSplashRise{0%{opacity:0;transform:translateY(22px) scale(.96)}45%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes nagisaSplash{0%,68%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}
@media(prefers-color-scheme:dark){.brand-splash{background:#102737}.brand-splash-name,.brand-splash-copy{color:#eef8ff}.brand-splash-mark{background:#fff;border-radius:24px;padding:6px}}
@media(prefers-reduced-motion:reduce){.brand-splash{animation:nagisaSplash .25s linear forwards}.brand-splash-inner{animation:none}}

.my-legal-links{display:flex;flex-wrap:wrap;gap:6px 13px;margin:18px 0 12px;padding-top:14px;border-top:1px solid var(--ui-border,#d4e0e7);font-size:11px}
.my-legal-links a{color:var(--ui-accent,#177c86);text-underline-offset:3px}
.auth-footer a{color:var(--accent);font-size:10px}
