@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600&display=swap');
.section-title a.button{color:#fff}.inline-actions{display:flex;gap:10px;margin:18px 0}.inline-actions form{margin:0}.model-panel{max-width:950px}.model-tools{display:grid;grid-template-columns:minmax(250px,1fr) 180px auto;align-items:center;gap:10px;margin:16px 0}.model-tools span{font-size:12px;color:#667466;text-align:right}.model-list{display:grid;gap:9px;margin:15px 0 22px}.model-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;border:1px solid #e1e7de;border-radius:10px;padding:12px 14px;margin:0;background:#fbfcfa}.model-row[hidden]{display:none}.model-row>input,.default-choice input{width:auto}.model-row small{display:block;letter-spacing:0;color:#788477;margin-top:3px}.default-choice{display:flex;align-items:center;gap:7px;margin:0;font-size:12px}
.wp-health{font-size:12px;color:#527044;margin-top:15px}.form h3{font-family:'Playfair Display',serif;margin:8px 0 18px}.form h3:not(:first-child){margin-top:28px;padding-top:23px;border-top:1px solid #e7ece4}.inline-actions a.ghost{color:#315937}
*{box-sizing:border-box}body{margin:0;background:#f7f8f5;color:#20281f;font-family:'DM Sans',sans-serif}aside{position:fixed;width:252px;inset:0 auto 0 0;background:#152b22;color:#eaf0e8;padding:28px 18px;display:flex;flex-direction:column}.brand{display:flex;gap:11px;align-items:center;color:#fff;text-decoration:none;margin:0 8px 43px}.brand span,.mark{background:#b5e36b;color:#183022;border-radius:12px;width:43px;height:43px;display:grid;place-items:center;font-weight:700}.brand strong{line-height:1.05;font-size:15px}nav{display:grid;gap:6px}nav a,.leave{font:inherit;border:0;width:100%;background:transparent;color:#bcc8bc;text-decoration:none;padding:13px 14px;border-radius:10px;text-align:left;cursor:pointer}nav a:hover,nav .on{background:#294537;color:#fff}.leave{margin-top:auto;color:#b5e36b}aside form{margin-top:auto}main{margin-left:252px;padding:32px 45px;max-width:1510px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:37px}small{letter-spacing:.1em;font-size:10px;font-weight:700;color:#667466}h1,h2{margin:5px 0;font-family:'Playfair Display',serif}h1{font-size:33px}h2{font-size:25px}.user{background:#fff;border:1px solid #edf0ea;border-radius:11px;padding:9px 14px;font-weight:600}.user span{display:block;font-size:11px;color:#697567;font-weight:400}.hero{background:#d8f3b5;border-radius:18px;padding:31px 35px;display:flex;align-items:center;justify-content:space-between}.hero h2{font-size:31px;max-width:600px}.hero p,.section-title p,.integration p{color:#657361;margin:7px 0}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0}.cards article,.panel,.integration,.empty{background:#fff;border:1px solid #e6ebe3;border-radius:14px;padding:22px}.cards b{font-family:'Playfair Display';font-size:37px;display:block;margin-top:8px}.section-title{display:flex;justify-content:space-between;align-items:center;margin:7px 0 20px}.section-title a{color:#315937;text-decoration:none}.panel{margin-top:20px}.panel .section-title{margin-top:0}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:13px 8px;border-top:1px solid #edf0ea;font-size:13px}th{color:#71806f;font-size:10px;letter-spacing:.08em}.badge,.state{font-size:10px;font-weight:700;color:#536a45;background:#edf7df;padding:5px 8px;border-radius:99px}.button,button{background:#315937;color:#fff;border:0;border-radius:9px;padding:11px 15px;text-decoration:none;font:600 13px 'DM Sans';cursor:pointer}.ghost{background:#fff;color:#315937;border:1px solid #abc59a}.notice{padding:12px 16px;border-radius:9px;margin-bottom:16px}.ok{background:#e5f5d3}.error,.field-error{background:#fee6e3;color:#932a20}.search{display:flex;gap:8px;margin-bottom:20px}.search input{max-width:430px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.integration-head,.actions{display:flex;align-items:center;justify-content:space-between}.provider{width:36px;height:36px;border-radius:10px;background:#e5f5d3;color:#315937;display:grid;place-items:center;font-weight:700}.state{background:#eef0ed;color:#687168}.state.active{background:#e5f5d3;color:#436e38}.integration h3{margin:20px 0 3px}.integration small{letter-spacing:0;color:#8a9589}.actions{margin-top:20px;justify-content:flex-start;gap:10px}.actions a,.actions button{font:600 12px 'DM Sans';color:#315937;background:none;border:0;padding:0;text-decoration:none}.form{max-width:850px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}label{display:grid;gap:7px;font-size:12px;font-weight:600;margin-bottom:16px}input,textarea,select{font:14px 'DM Sans';width:100%;padding:11px 12px;border-radius:8px;border:1px solid #dce4d9;background:#fcfdfb;color:#20281f}.check{display:flex;align-items:center;gap:8px}.check input{width:auto}.auth{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 70% 20%,#d6f2ad 0,transparent 30%),#f5f7f2}.login-card{width:min(440px,92vw);background:#fff;padding:42px;border:1px solid #e4e9df;border-radius:20px;box-shadow:0 18px 50px #18302218}.login-card .mark{margin-bottom:28px;width:50px;height:50px}.login-card h1{font-size:32px}.login-card p{color:#687567;margin-bottom:28px}.login-card button{width:100%;margin-top:5px}@media(max-width:800px){aside{width:70px;padding:20px 10px}.brand{margin:0 2px 35px}.brand strong,nav span,.leave{display:none}main{margin-left:70px;padding:24px 18px}.cards,.grid{grid-template-columns:1fr 1fr}.hero,.section-title{align-items:flex-start;gap:15px;flex-direction:column}}@media(max-width:520px){.cards,.grid,.form-grid{grid-template-columns:1fr}header{align-items:flex-start}.user{display:none}.hero{padding:25px}.hero h2{font-size:25px}}

/* =========================================================
   PADRÃO VISUAL GLOBAL - Plataforma Editorial
   ========================================================= */

:root{
    --pe-bg:#f7f8f5;
    --pe-surface:#ffffff;
    --pe-border:#dfe6e1;
    --pe-border-soft:#e9eeeb;
    --pe-text:#17231d;
    --pe-muted:#667085;
    --pe-green:#245f3b;
    --pe-green-dark:#19482d;
    --pe-green-soft:#edf6ef;
    --pe-radius:12px;
    --pe-shadow:0 5px 18px rgba(15,23,42,.045);
    --pe-content:1180px;
}

/* Base */
body{
    background:var(--pe-bg);
}

main{
    min-width:0;
}

main > *:not(.app-topbar){
    max-width:var(--pe-content);
    margin-left:auto;
    margin-right:auto;
    box-sizing:border-box;
}

.app-topbar{
    min-height:64px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    max-width:var(--pe-content);
    margin:0 auto 18px;
    padding:0;
    border:0;
    background:transparent;
}

.app-context small{
    color:#587063;
    font-size:10px;
    font-weight:800;
    letter-spacing:.12em;
}

.app-topbar .user{
    flex:0 0 auto;
}

/* Título de cada tela: um único cabeçalho */
.section-title{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:18px;
    margin:0 0 18px;
}

.section-title > div:first-child{
    min-width:0;
}

.section-title small,
.cfg-header small{
    display:block;
    margin:0 0 5px;
    color:#587063;
    font-size:10px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.section-title h1,
.section-title h2,
.cfg-header h1,
.cfg-header h2{
    margin:0;
    color:var(--pe-text);
    font-size:28px;
    line-height:1.12;
    letter-spacing:-.55px;
}

.section-title p,
.cfg-header p{
    margin:6px 0 0;
    max-width:760px;
    color:var(--pe-muted);
    font-size:14px;
    line-height:1.55;
}

/* Cartões e painéis */
.panel,
.integration,
.cfg-card,
.diag-card{
    border:1px solid var(--pe-border);
    border-radius:var(--pe-radius);
    background:var(--pe-surface);
    box-shadow:var(--pe-shadow);
}

.panel{
    padding:18px;
}

.panel > h3:first-child{
    margin-top:0;
}

.panel h3{
    color:var(--pe-text);
    font-size:17px;
}

/* Formulários */
.form label,
.panel label{
    color:#26352d;
    font-size:12px;
    font-weight:650;
}

input,
select,
textarea{
    width:100%;
    box-sizing:border-box;
    border:1px solid #ced9d2;
    border-radius:8px;
    background:#fff;
    color:#17231d;
    font:inherit;
    font-size:13px;
    outline:none;
    transition:border-color .15s ease, box-shadow .15s ease;
}

input,
select{
    min-height:42px;
    padding:0 11px;
}

textarea{
    padding:10px 11px;
    line-height:1.5;
    resize:vertical;
}

input:focus,
select:focus,
textarea:focus{
    border-color:#6ba47f;
    box-shadow:0 0 0 3px rgba(36,95,59,.08);
}

.form-grid{
    gap:14px;
}

.form label,
.panel label{
    gap:6px;
}

/* Botões */
.button,
button.button,
a.button{
    min-height:40px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    box-sizing:border-box;
    border:1px solid var(--pe-green);
    border-radius:8px;
    padding:0 14px;
    background:var(--pe-green);
    color:#fff;
    font-size:12px;
    font-weight:750;
    line-height:1;
    text-decoration:none;
    cursor:pointer;
}

.button:hover,
button.button:hover,
a.button:hover{
    background:var(--pe-green-dark);
    border-color:var(--pe-green-dark);
}

.button.ghost,
button.button.ghost,
a.button.ghost{
    background:#fff;
    color:var(--pe-green);
}

.button.ghost:hover,
button.button.ghost:hover,
a.button.ghost:hover{
    background:var(--pe-green-soft);
}

/* Barra fixa padrão */
.page-action-bar{
    position:sticky !important;
    top:0 !important;
    z-index:950 !important;
    width:100%;
    max-width:var(--pe-content);
    display:flex !important;
    justify-content:flex-end !important;
    align-items:center !important;
    gap:9px !important;
    margin:0 auto 16px !important;
    padding:9px 0 !important;
    background:rgba(247,248,245,.95) !important;
    backdrop-filter:blur(8px);
}

.page-action-bar .action-btn{
    min-width:145px !important;
    height:40px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    border:1px solid var(--pe-green) !important;
    border-radius:8px !important;
    padding:0 14px !important;
    background:var(--pe-green) !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:750 !important;
    line-height:1 !important;
    text-decoration:none !important;
    cursor:pointer !important;
}

.page-action-bar .action-btn.secondary{
    background:#fff !important;
    color:var(--pe-green) !important;
}

.page-action-bar .action-btn.neutral{
    background:#fff !important;
    border-color:#cfd9d3 !important;
    color:#344054 !important;
}

.page-action-bar .action-btn:hover{
    filter:brightness(.97);
}

/* Tabelas */
table{
    width:100%;
    border-collapse:collapse;
}

th{
    padding:10px 11px;
    border-bottom:1px solid var(--pe-border);
    color:#667085;
    font-size:10px;
    font-weight:800;
    letter-spacing:.02em;
    text-align:left;
    white-space:nowrap;
}

td{
    padding:11px;
    border-bottom:1px solid var(--pe-border-soft);
    color:#26352d;
    font-size:12px;
    vertical-align:middle;
}

tbody tr:last-child td{
    border-bottom:0;
}

tbody tr:hover{
    background:#fafcfb;
}

/* Badges e status */
.badge,
.state{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:0 8px;
    border-radius:999px;
    font-size:10px;
    font-weight:800;
}

.state.active{
    background:#eaf6ed;
    color:#23713b;
}

/* Grid de configurações */
.cfg-page{
    max-width:var(--pe-content) !important;
    margin:0 auto 42px !important;
}

.cfg-header{
    margin:0 0 18px !important;
}

.cfg-grid{
    gap:14px !important;
}

.cfg-card{
    min-height:112px !important;
    transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;
}

.cfg-card:hover{
    transform:translateY(-1px);
    box-shadow:0 8px 22px rgba(15,23,42,.07);
}

/* Modais IA */
.ia-modal-box{
    border:1px solid var(--pe-border);
}

.ia-modal-head h3{
    color:var(--pe-text);
}

.recommended-ai{
    border-radius:10px !important;
}

/* Empty states */
.empty{
    padding:18px;
    border:1px dashed #ccd7d0;
    border-radius:10px;
    background:#fafcfb;
    color:#667085;
    font-size:12px;
}

/* Links de ação simples */
.inline-actions{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}

/* Paginação */
nav[role="navigation"]{
    font-size:12px;
}

/* Responsividade */
@media(max-width:1000px){
    main > *:not(.app-topbar){
        max-width:100%;
    }

    .app-topbar{
        max-width:100%;
    }
}

@media(max-width:760px){
    .app-topbar{
        min-height:56px;
        margin-bottom:12px;
    }

    .section-title{
        align-items:flex-start;
        flex-direction:column;
    }

    .section-title h1,
    .section-title h2,
    .cfg-header h1,
    .cfg-header h2{
        font-size:24px;
    }

    .page-action-bar{
        justify-content:flex-start !important;
        overflow-x:auto;
        padding:8px 0 !important;
    }

    .page-action-bar .action-btn{
        min-width:128px !important;
        flex:0 0 auto;
    }

    .panel{
        padding:14px;
    }
}

/* =========================================================
   FIM PADRÃO VISUAL GLOBAL
   ========================================================= */
