:root{color-scheme:dark;font-family:system-ui,sans-serif;background:#0b1827;color:#e5edf3}*{box-sizing:border-box}body{margin:0;padding:clamp(16px,5vw,60px)}main{max-width:600px;margin:auto;padding:clamp(22px,5vw,42px);background:#102336;border:1px solid #385064;border-top:5px solid #e8c77b;border-radius:16px}.brand{font-size:32px;letter-spacing:5px;font-weight:900;text-decoration:none}.brand span{display:block;font-size:12px;letter-spacing:2px;margin-top:5px}a,.eyebrow{color:#e8c77b}.eyebrow{font-size:11px;letter-spacing:1px}h1{font-size:clamp(28px,5vw,38px);line-height:1.15}h2{font-size:22px}p{line-height:1.65;color:#b9c8d6}nav{display:flex;flex-wrap:wrap;gap:16px;margin:28px 0}label{display:block;font-size:14px;font-weight:600;margin:16px 0}input{display:block;width:100%;padding:12px;margin-top:7px;border:1px solid #7690a4;border-radius:6px;background:#0b1827;color:#fff;font:inherit}button{min-height:44px;width:100%;padding:12px 16px;margin:8px 0;background:#e8c77b;color:#102336;border:1px solid #e8c77b;border-radius:6px;font:700 15px system-ui;cursor:pointer}.secondary{background:transparent;color:#e8c77b}.status{padding:14px;border:1px solid #e8c77b;border-radius:6px;color:#fff}details{margin-top:24px}summary{cursor:pointer}footer{margin-top:32px;font-size:13px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #79c6ff;outline-offset:3px}
:root .checkbox-label{display:flex;align-items:center;gap:12px}.checkbox-label input{width:auto;margin:0;flex-shrink:0}.profile-details{overflow-wrap:anywhere}.profile-details dt{font-weight:700;margin-top:12px}.profile-details dd{margin:4px 0 0}
body.ippon-login{background:#090909;color:#f5f5f5;min-height:100vh}.ippon-login main{background:#151515;border-color:#444;border-top-color:#ef4444}.ippon-login a,.ippon-login .eyebrow{color:#ff6868}.ippon-login p{color:#ccc}.ippon-login input{background:#090909;border-color:#777}.ippon-login button{background:#dc2626;border-color:#dc2626;color:#fff}.ippon-login .secondary{background:transparent;color:#ff6868}.ippon-login .status{border-color:#ef4444}

.ippon-login :focus-visible{outline-color:#ff6868}.ippon-login .checkbox-label input{accent-color:#dc2626}
.account-administration{margin:24px 0;padding:18px;border:1px solid #7690a4;border-radius:8px}.account-administration .admin-navigation-title{display:block;font-size:20px;font-weight:700}.account-administration nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:8px;margin:12px 0}.account-administration a{display:inline-block;padding:8px 0;margin-right:12px;font-size:14px;line-height:1.5}
