:root{color-scheme:light;--auth-ink:#17333d;--auth-muted:#52676d;--auth-accent:#176d69;--auth-line:#d9e4e4}
.auth-page{margin:0;background:#f0f5f4;color:var(--auth-ink);font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif;line-height:1.8;padding:40px 20px}
.auth-card,.admin-card{box-sizing:border-box;margin:24px auto;padding:36px;background:white;border:1px solid var(--auth-line);border-radius:18px;box-shadow:0 12px 40px #17333d0a}
.auth-card{max-width:560px}.admin-card{max-width:1080px}
.auth-card h1{font-size:clamp(1.8rem,6vw,2.7rem);line-height:1.4;margin:20px 0}.auth-card h2{font-size:1.15rem;margin-top:36px}
.auth-eyebrow,.auth-note{font-size:.86rem;color:var(--auth-muted)}.auth-note{margin-top:30px}
.auth-page a,.account-bar a{color:var(--auth-accent);text-underline-offset:3px}
.auth-page button,.account-bar button{font:inherit;color:var(--auth-ink);background:white;border:1px solid #a8bcbe;border-radius:8px;padding:7px 14px;cursor:pointer}
.auth-page button:disabled{opacity:.45;cursor:default}
.auth-page :focus-visible,.account-bar :focus-visible{outline:3px solid #279a91;outline-offset:4px}
.account-bar{display:flex;justify-content:flex-end;align-items:center;gap:14px;flex-wrap:wrap;padding:10px 4%;background:#edf5f3;color:var(--auth-ink);font-size:.88rem;border-bottom:1px solid var(--auth-line)}
.admin-table-wrap{overflow-x:auto}.admin-card table{width:100%;border-collapse:collapse;text-align:left}.admin-card th,.admin-card td{padding:12px;border-bottom:1px solid var(--auth-line);overflow-wrap:anywhere}.admin-card th{background:#f1f7f6}.admin-pagination{display:flex;gap:18px;align-items:center;justify-content:center;margin:24px 0}
@media(max-width:600px){.auth-page{padding:16px 12px}.auth-card,.admin-card{padding:24px 18px;margin:12px auto}.admin-card table{min-width:580px}.account-bar{justify-content:flex-start}}
@media print{.account-bar{display:none}}
