:root{
  --night: #12172A;
  --night-2: #1B2140;
  --panel: #212a4c;
  --cream: #F4EFE3;
  --gold: #D9A653;
  --gold-deep: #B9822E;
  --mist: #A9B0C6;
  --line: rgba(244,239,227,0.14);
}
*{box-sizing:border-box; margin:0; padding:0;}
body{
  background:var(--night);
  color:var(--cream);
  font-family:'Work Sans', sans-serif;
  -webkit-font-smoothing:antialiased;
}
body.tela-login{
  min-height:100vh; display:flex; align-items:center; justify-content:center; padding:24px;
}
a{color:var(--gold);}
.wrap{max-width:1040px; margin:0 auto; padding:32px;}

/* Tela de login */
.auth-card{width:100%; max-width:380px; background:var(--panel); border:1px solid var(--line); padding:34px 30px;}
.eyebrow{font-family:'IBM Plex Mono', monospace; font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--gold); margin-bottom:12px; text-align:center;}
.auth-card h1{font-family:'Fraunces', serif; font-weight:600; font-style:italic; font-size:22px; text-align:center; margin-bottom:22px;}
.field{margin-bottom:12px;}
.field label{display:block; font-family:'IBM Plex Mono', monospace; font-size:10.5px; letter-spacing:.06em; text-transform:uppercase; color:var(--mist); margin-bottom:6px;}
.field input, .field textarea, .field select{
  width:100%; background:var(--night); border:1px solid var(--line); color:var(--cream);
  padding:11px 13px; font-size:14px; border-radius:2px; font-family:'Work Sans', sans-serif;
}
.field input:focus, .field textarea:focus, .field select:focus{outline:none; border-color:var(--gold);}
button, .btn{
  background:var(--gold); color:var(--night); border:none; font-weight:600; font-size:14px;
  padding:11px 20px; border-radius:2px; cursor:pointer; text-decoration:none; display:inline-block;
}
button:hover, .btn:hover{background:#e8b968;}
.btn-secondary{background:transparent; color:var(--cream); border:1px solid var(--line);}
.btn-secondary:hover{border-color:var(--gold); color:var(--gold); background:transparent;}
.btn-perigo{background:transparent; color:#e08a6f; border:1px solid #e08a6f;}
.btn-perigo:hover{background:rgba(224,138,111,0.1);}
.msg{padding:11px 14px; margin-bottom:16px; font-size:13.5px; border-radius:2px;}
.msg.erro{background:rgba(224,138,111,0.1); border:1px solid #e08a6f; color:#e08a6f;}
.msg.sucesso{background:rgba(217,166,83,0.1); border:1px solid var(--gold-deep); color:var(--gold);}

/* Topo do painel */
.admin-top{display:flex; justify-content:space-between; align-items:center; padding:22px 0; border-bottom:1px solid var(--line); margin-bottom:32px;}
.admin-top .brand{font-family:'Fraunces', serif; font-weight:600; font-style:italic; font-size:19px;}
.admin-top nav{display:flex; gap:20px; align-items:center;}
.admin-top nav a{font-family:'IBM Plex Mono', monospace; font-size:12.5px; color:var(--mist); text-decoration:none;}
.admin-top nav a:hover{color:var(--gold);}

/* Tabela de posts/comentários */
table{width:100%; border-collapse:collapse; margin-bottom:12px;}
th{
  text-align:left; font-family:'IBM Plex Mono', monospace; font-size:10.5px;
  letter-spacing:.06em; text-transform:uppercase; color:var(--mist);
  padding:10px 12px; border-bottom:1px solid var(--line);
}
td{padding:14px 12px; border-bottom:1px solid var(--line); font-size:14px; vertical-align:top;}
td .status{
  font-family:'IBM Plex Mono', monospace; font-size:10.5px; text-transform:uppercase;
  padding:3px 8px; border-radius:2px; display:inline-block;
}
.status.publicado{background:rgba(217,166,83,0.15); color:var(--gold);}
.status.rascunho{background:rgba(169,176,198,0.15); color:var(--mist);}
.acoes{display:flex; gap:10px;}
.acoes a, .acoes button{font-size:12.5px; padding:6px 12px;}

.section-head{display:flex; justify-content:space-between; align-items:center; margin-bottom:20px;}
.section-head h2{font-family:'Fraunces', serif; font-weight:600; font-size:22px;}

.comentario-texto{max-width:360px; color:var(--mist); font-size:13.5px;}

/* Editor */
.editor-grid{display:grid; grid-template-columns:2fr 1fr; gap:32px; align-items:start;}
@media (max-width:820px){.editor-grid{grid-template-columns:1fr;}}
#editor-conteudo{background:var(--night); border:1px solid var(--line); min-height:360px; color:var(--cream); font-size:15px;}
.ql-toolbar.ql-snow{background:var(--panel); border-color:var(--line) !important;}
.ql-container.ql-snow{border-color:var(--line) !important;}
.ql-snow .ql-stroke{stroke:var(--mist);}
.ql-snow .ql-fill{fill:var(--mist);}
.ql-snow .ql-picker{color:var(--mist);}
.painel-lateral{background:var(--panel); border:1px solid var(--line); padding:20px;}
.painel-lateral .field{margin-bottom:14px;}
.imagem-preview{max-width:100%; margin-top:10px; border-radius:2px; display:none;}
