*{box-sizing:border-box}body{margin:0;background:#f2f4f8;color:#19283e;font-family:system-ui,"Noto Sans TC","Microsoft JhengHei",sans-serif}a{color:#2c5d99;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer;border:1px solid #cad5e3;border-radius:8px;padding:10px 18px;background:white;color:#2c5d99}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible,textarea:focus-visible{outline:3px solid #b43382;outline-offset:3px}[hidden]{display:none!important}header{max-width:1100px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:22px 24px;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:700;color:#19283e}.brand img{width:55px;height:55px;object-fit:contain;border-radius:8px}.brand small{display:block;font-size:9px;letter-spacing:3px;margin-top:5px;color:#65778e}main{max-width:1052px;margin:30px auto 70px;padding:0 24px}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.eyebrow{color:#b43382;letter-spacing:3px;font-size:12px}h1{font-size:30px;margin:8px 0}#welcome,.hint{color:#64738a;line-height:1.6}h2{font-size:20px;margin:0 0 10px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:25px}section{background:white;border:1px solid #dce2eb;border-radius:18px;padding:28px}.hint{font-size:13px;margin-bottom:24px}dl{display:grid;grid-template-columns:95px 1fr;gap:22px 12px;font-size:15px}dt{color:#64738a}dd{margin:0;overflow-wrap:anywhere}label{display:block;font-size:14px;margin-bottom:10px}textarea{width:100%;resize:vertical;min-height:110px;border:1px solid #cad5e3;border-radius:8px;padding:12px;color:inherit;line-height:1.6}.primary{background:#2e5e9b;color:white;border-color:#2e5e9b;margin-top:18px}#status,#save-status{font-size:14px;line-height:1.6}footer{text-align:center;color:#64738a;padding:24px;border-top:3px solid #b43382;font-size:14px}footer small{display:block;font-size:10px;letter-spacing:3px;margin-top:10px}@media(max-width:700px){header{padding:16px}.brand{font-size:18px}.brand img{width:40px;height:40px}header>a:last-child{font-size:13px}main{margin:16px auto 35px;padding:0 16px}h1{font-size:25px}.grid{grid-template-columns:1fr;gap:16px;margin-top:18px}section{padding:22px}dl{gap:18px 8px;grid-template-columns:85px 1fr}.primary{width:100%}}

#password-form input{display:block;width:100%;border:1px solid #cad5e3;border-radius:8px;padding:12px;margin:0 0 18px}#password-status{font-size:14px;line-height:1.6}

#request-form input,#reset-form input{width:100%;max-width:440px;display:block;padding:12px;border:1px solid #cad5e3;border-radius:8px;margin-bottom:18px}
