:root{color-scheme:light}
*{box-sizing:border-box}
body{margin:0;font-family:"Meiryo UI","Hiragino Sans","Yu Gothic UI",sans-serif;background:#f0f3f7;color:#1d2733;font-size:14px}
.top{background:#1F3A5F;color:#fff;padding:10px 16px;display:flex;align-items:center;gap:12px}
.top h1{font-size:16px;margin:0}.top a{color:#fff;margin-left:auto;font-size:13px}
.card{max-width:420px;margin:40px auto;background:#fff;border-radius:10px;box-shadow:0 4px 18px rgba(0,0,0,.08);padding:24px}
.card.wide{max-width:640px}
h2{font-size:16px;color:#1F3A5F;margin:0 0 14px}
label{display:block;margin:12px 0 4px;color:#5f6b7a;font-size:13px}
input{width:100%;font:inherit;padding:9px;border:1px solid #c9d1db;border-radius:6px;color:#1d2733;background:#fff}
button{font:inherit;padding:10px 14px;border-radius:6px;border:1px solid #1F3A5F;background:#1F3A5F;color:#fff;cursor:pointer}
button.sec{background:#fff;color:#1F3A5F}
button.danger{background:#fff;color:#d00000;border-color:#d00000;padding:4px 10px;font-size:12px}
.full{width:100%;margin-top:16px}
.or{text-align:center;color:#8a95a3;margin:16px 0 0;font-size:12px}
.msg{margin-top:12px;font-size:13px;min-height:1em}
.msg.err{color:#d00000}.msg.ok{color:#1b7f3b}
table{width:100%;border-collapse:collapse;font-size:13px}
td,th{border-bottom:1px solid #e3e8ee;padding:8px 6px;text-align:left}
.note{font-size:12px;color:#5f6b7a}
section+section{margin-top:28px}
