/* Painel admin — MERIDIANO CMS */
:root{
  --a-bg:#f6f6f7; --a-card:#fff; --a-ink:#1a1a1e; --a-soft:#6b6b72;
  --a-line:#e4e4e7; --a-accent:#c8102e; --a-sidebar:#141417;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  background:var(--a-bg);color:var(--a-ink);line-height:1.5;font-size:14px}
a{color:inherit;text-decoration:none}
.layout{display:grid;grid-template-columns:230px 1fr;min-height:100vh}

/* sidebar */
.sidebar{background:var(--a-sidebar);color:#e8e8ea;padding:24px 0;position:sticky;top:0;height:100vh;overflow-y:auto}
.sidebar .logo{font-family:'Playfair Display',serif;font-weight:800;font-size:24px;padding:0 24px 24px;color:#fff}
.sidebar nav a{display:block;padding:11px 24px;color:#b4b4b8;font-size:14px;font-weight:500;transition:.15s;border-left:3px solid transparent}
.sidebar nav a:hover{background:#1e1e22;color:#fff}
.sidebar nav a.ativo{background:#1e1e22;color:#fff;border-left-color:var(--a-accent)}
.sidebar .grupo{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#6b6b72;padding:22px 24px 8px}
.sidebar .rodape-side{padding:20px 24px;border-top:1px solid #26262b;margin-top:12px;font-size:13px;color:#8a8a90}

/* conteúdo */
.conteudo{padding:32px 40px}
.topo-pagina{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}
.topo-pagina h1{font-size:24px;font-weight:700}
.btn{display:inline-block;padding:9px 18px;border-radius:7px;font-weight:600;font-size:14px;cursor:pointer;border:none;transition:.15s}
.btn-primario{background:var(--a-accent);color:#fff}
.btn-primario:hover{opacity:.9}
.btn-neutro{background:var(--a-card);border:1px solid var(--a-line);color:var(--a-ink)}
.btn-neutro:hover{background:#f0f0f1}
.btn-perigo{background:#fff;border:1px solid #e0a0a0;color:#c0392b}
.btn-perigo:hover{background:#fdf0f0}

/* card */
.card{background:var(--a-card);border:1px solid var(--a-line);border-radius:10px;padding:24px;margin-bottom:20px}

/* tabela */
table{width:100%;border-collapse:collapse;background:var(--a-card);border:1px solid var(--a-line);border-radius:10px;overflow:hidden}
th{text-align:left;padding:12px 16px;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--a-soft);border-bottom:1px solid var(--a-line);background:#fafafa}
td{padding:13px 16px;border-bottom:1px solid var(--a-line);vertical-align:middle}
tr:last-child td{border-bottom:none}
tr:hover td{background:#fafafa}

/* selos de status/papel */
.selo{display:inline-block;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:600}
.selo-publicado{background:#e3f5e9;color:#0a7d3c}
.selo-rascunho{background:#f0f0f1;color:#6b6b72}
.selo-revisao{background:#fff3e0;color:#b8720a}
.selo-admin{background:#fde8ea;color:var(--a-accent)}
.selo-editor{background:#e8eefd;color:#2a52be}
.selo-autor{background:#f0f0f1;color:#6b6b72}

/* formulário */
.campo{margin-bottom:18px}
.campo label{display:block;font-weight:600;font-size:13px;margin-bottom:6px}
.campo input[type=text],.campo input[type=email],.campo input[type=password],
.campo textarea,.campo select{
  width:100%;padding:10px 12px;border:1px solid var(--a-line);border-radius:7px;
  font-size:14px;font-family:inherit;background:#fff;color:var(--a-ink)}
.campo textarea{min-height:90px;resize:vertical}
.campo .ajuda{font-size:12px;color:var(--a-soft);margin-top:4px}
.linha{display:grid;grid-template-columns:1fr 1fr;gap:16px}

/* aviso */
.aviso{padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px}
.aviso-ok{background:#e3f5e9;color:#0a7d3c}
.aviso-erro{background:#fde8ea;color:var(--a-accent)}

/* login */
.login-tela{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--a-sidebar)}
.login-box{background:#fff;border-radius:14px;padding:40px;width:360px;max-width:92vw}
.login-box .logo{font-family:'Playfair Display',serif;font-weight:800;font-size:32px;text-align:center;margin-bottom:8px}
.login-box .sub{text-align:center;color:var(--a-soft);margin-bottom:28px;font-size:14px}

/* editor rich text */
.editor-toolbar{display:flex;gap:5px;flex-wrap:wrap;padding:8px;background:#f7f7f8;border:1px solid var(--a-line);border-bottom:none;border-radius:8px 8px 0 0;position:sticky;top:0;z-index:2}
.editor-toolbar button{border:1px solid var(--a-line);background:#fff;border-radius:6px;padding:5px 9px;cursor:pointer;font-size:13px;font-weight:600;min-width:32px}
.editor-toolbar button:hover{background:#f0f0f1}
.editor-area{min-height:420px;border:1px solid var(--a-line);border-radius:0 0 8px 8px;padding:16px 18px;font-size:16px;line-height:1.7;outline:none;background:#fff}
.editor-area:empty:before{content:attr(data-placeholder);color:#aaa}
.editor-area h2{font-family:'Playfair Display',serif;font-size:24px;margin:16px 0 8px}
.editor-area h3{font-family:'Playfair Display',serif;font-size:20px;margin:14px 0 6px}
.editor-area p{margin-bottom:12px}
.editor-area ul,.editor-area ol{margin:0 0 12px 22px}
.editor-area img{max-width:100%;border-radius:6px;margin:12px 0}

@media(max-width:800px){
  .layout{grid-template-columns:1fr}
  .sidebar{position:static;height:auto}
  .linha{grid-template-columns:1fr}
  .conteudo{padding:20px}
}
