*{box-sizing:border-box}body{margin:0;background:#f5f6f8;color:#202126;font:16px/1.55 "Segoe UI",Arial,sans-serif}main{max-width:480px;margin:6vh auto;padding:36px;background:white;border:1px solid #e5e7ec;border-radius:22px;box-shadow:0 16px 60px #2021260b}main.wide{max-width:1050px}.logo{width:190px;max-height:110px;object-fit:contain;margin-bottom:24px}h1{font-size:28px;line-height:1.2;margin:0 0 12px}h2{font-size:20px}p{color:#5f626b}label{display:block;font-size:14px;font-weight:700;margin-top:18px}input,select,button{font:inherit}input,select{display:block;width:100%;padding:12px;border:1px solid #c9cbd2;border-radius:9px;margin-top:7px}button,.button{display:inline-block;background:#202126;color:white;padding:12px 18px;border:0;border-radius:9px;cursor:pointer;text-decoration:none;margin-top:20px}button.primary{background:#d71f2b;color:#ffffff;font-weight:700}button:disabled{opacity:.6;cursor:wait}a{color:#b91622}.link{color:#b91622;background:none;padding:0;margin:18px 0}.message{color:#8e2028;font-size:14px;white-space:pre-wrap;min-height:24px}.message.ok{color:#14633c}.hidden{display:none}.muted,small{color:#737783;font-size:13px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid #e5e7ec;padding:12px 8px}td select{min-width:135px}td button{margin:0}.notice{background:#f1f2f4;padding:16px;border-radius:10px;color:#454750}@media(max-width:600px){main{margin:16px;padding:25px}.grid{grid-template-columns:1fr}h1{font-size:25px}}

body[data-page="login"] .logo{display:block;max-width:100%;margin:0 auto 24px;}

/* Identidade Casa do Datador: cinza, branco e vermelho. */
body[data-page="login"] main{border-top:4px solid #d71f2b;border-radius:14px;box-shadow:0 16px 55px #2021260d;}
body[data-page="login"] h1{border-left:4px solid #d71f2b;padding-left:14px;letter-spacing:-.5px;}
body[data-page="login"] button.primary{width:100%;}
button.primary:hover{background:#b91622;color:#fff;}
input:focus,select:focus{outline:3px solid #d71f2b1a;border-color:#d71f2b;}
button:focus-visible,a:focus-visible{outline:3px solid #d71f2b55;outline-offset:4px;}
.link:hover,a:hover{color:#d71f2b;}
