.lg-body{--lg-primary:#00489d;--lg-primary-dark:#003576;--lg-primary-light:#e6f0fa;--lg-text:#1f2937;--lg-text-muted:#6b7280;--lg-bg:#fff;--lg-bg-soft:#f6f9fc;--lg-border:#e5e7eb;color:var(--lg-text);background:var(--lg-bg-soft);box-sizing:border-box;justify-content:center;align-items:center;min-height:100vh;padding:24px;font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.7;display:flex}.lg-body *{box-sizing:border-box}.lg-card{background:var(--lg-bg);border-radius:16px;width:100%;max-width:420px;padding:40px 36px;box-shadow:0 4px 24px #00489d14}.lg-brand{text-align:center;margin-bottom:28px}.lg-brand-name{color:var(--lg-primary);letter-spacing:.05em;margin:0 0 4px;font-size:22px;font-weight:900}.lg-brand-sub{color:var(--lg-text-muted);font-size:13px}.lg-title{text-align:center;margin:0 0 22px;font-size:17px;font-weight:700}.lg-row{margin-bottom:16px}.lg-row label{margin-bottom:6px;font-size:13px;font-weight:700;display:block}.lg-row input{border:1px solid var(--lg-border);background:#fff;border-radius:8px;width:100%;padding:11px 14px;font-family:inherit;font-size:15px}.lg-row input:focus{outline:2px solid var(--lg-primary);outline-offset:-1px}.lg-form{gap:16px;display:grid}.lg-label{font-size:13px;font-weight:700;display:block}.lg-label input,.lg-label select{border:1px solid var(--lg-border);width:100%;color:var(--lg-text);background:#fff;border-radius:8px;margin-top:6px;padding:11px 14px;font-family:inherit;font-size:15px;font-weight:400;display:block}.lg-label input:focus,.lg-label select:focus{outline:2px solid var(--lg-primary);outline-offset:-1px}.lg-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:13px}.lg-submit{background:var(--lg-primary);color:#fff;cursor:pointer;border:0;border-radius:999px;width:100%;margin-top:6px;padding:12px 24px;font-size:15px;font-weight:700;transition:background .15s,transform .15s}.lg-submit:hover:not(:disabled){background:var(--lg-primary-dark)}.lg-submit:disabled{opacity:.6;cursor:progress}.lg-back{text-align:center;margin-top:18px}.lg-back a{color:var(--lg-text-muted);font-size:13px;text-decoration:underline}.lg-back a:hover{color:var(--lg-primary)}
