/* XJTEC — estilo das telas de conta (login, conta, admin). Mesma paleta do editor. */
:root{--bg-base:#0a0b0e;--bg-panel:#13151b;--bg-card:#1a1d26;--bg-input:#232734;--border:#2c3244;
--border-b:#3d465f;--cyan:#00e5ff;--blue:#1e90ff;--red:#ff3838;--green:#00ff88;--orange:#ff9f43;
--yellow:#feca57;--text:#f1f2f6;--muted:#8b92a8;--fd:'Rajdhani',sans-serif;--fm:'JetBrains Mono',monospace;
--fs:'Inter',system-ui,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg-base);color:var(--text);font-family:var(--fs);min-height:100vh}
a{color:var(--cyan);text-decoration:none}a:hover{text-decoration:underline}
.logo{display:inline-block;background:linear-gradient(135deg,var(--cyan),var(--blue));color:#000;
font-family:var(--fd);font-weight:700;font-size:22px;padding:4px 12px;border-radius:4px;letter-spacing:1px}
.topo{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;
background:linear-gradient(180deg,#181b24,#12141a);border-bottom:2px solid #232736}
.topo .marca{display:flex;align-items:center;gap:12px;font-family:var(--fd);font-weight:600;letter-spacing:1px;color:var(--muted)}
.topo nav{display:flex;gap:18px;align-items:center;font-size:14px}
.pagina{max-width:1100px;margin:28px auto;padding:0 20px}
h1{font-family:var(--fd);font-size:26px;letter-spacing:.5px;margin-bottom:6px}
h2{font-family:var(--fd);font-size:19px;letter-spacing:.5px;margin-bottom:14px;color:var(--cyan)}
.sub{color:var(--muted);font-size:14px;margin-bottom:22px}
.card{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:22px;margin-bottom:20px}
label{display:block;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;margin:12px 0 6px}
input,select{width:100%;background:var(--bg-input);border:1px solid var(--border);color:var(--text);
border-radius:5px;padding:10px 12px;font-size:15px;font-family:var(--fs)}
input:focus,select:focus{outline:none;border-color:var(--cyan)}
input[type=checkbox]{width:auto;margin-right:8px;vertical-align:middle}
.check{display:flex;align-items:center;text-transform:none;letter-spacing:0;font-size:14px;color:var(--text);margin:8px 0}
.btn{background:var(--bg-input);border:1px solid var(--border-b);color:var(--text);padding:9px 16px;border-radius:5px;
cursor:pointer;font-size:14px;font-weight:600;font-family:var(--fs)}
.btn:hover{border-color:var(--cyan)}
.btn.pri{background:linear-gradient(135deg,var(--cyan),var(--blue));color:#000;border:none}
.btn.perigo{border-color:var(--red);color:var(--red)}
.btn.peq{padding:5px 10px;font-size:12px}
.linha{display:flex;gap:14px;flex-wrap:wrap}.linha>div{flex:1;min-width:200px}
.msg{margin-top:14px;padding:10px 12px;border-radius:5px;font-size:14px;display:none}
.msg.ok{display:block;background:rgba(0,255,136,.08);border:1px solid var(--green);color:var(--green)}
.msg.erro{display:block;background:rgba(255,56,56,.08);border:1px solid var(--red);color:var(--red)}
.msg.aviso{display:block;background:rgba(254,202,87,.08);border:1px solid var(--yellow);color:var(--yellow)}
table{width:100%;border-collapse:collapse;font-size:14px}
th{text-align:left;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.6px;
padding:8px;border-bottom:1px solid var(--border)}
td{padding:10px 8px;border-bottom:1px solid #20242f;vertical-align:middle}
.tag{display:inline-block;font-size:11px;padding:2px 8px;border-radius:10px;border:1px solid var(--border-b);color:var(--muted)}
.tag.admin{border-color:var(--orange);color:var(--orange)}.tag.on{border-color:var(--green);color:var(--green)}
.tag.off{border-color:var(--red);color:var(--red)}
.mono{font-family:var(--fm)}
.senha-temp{font-family:var(--fm);font-size:20px;color:var(--yellow);letter-spacing:1px;user-select:all}
.modal-fundo{position:fixed;inset:0;background:rgba(0,0,0,.7);display:none;align-items:center;justify-content:center;z-index:50}
.modal-fundo.aberto{display:flex}
.modal{background:var(--bg-panel);border:1px solid var(--border-b);border-radius:8px;padding:24px;width:min(560px,94vw);max-height:90vh;overflow:auto}
.acoes{display:flex;gap:10px;justify-content:flex-end;margin-top:18px;flex-wrap:wrap}
.login-caixa{max-width:380px;margin:12vh auto 0;padding:0 20px}
.login-caixa .card{padding:30px}
.rodape{color:var(--muted);font-size:12px;text-align:center;margin-top:18px}
