/* Nutrição Integrativa — autoridade científica, acolhimento natural e clareza cognitiva */
:root{
  --color-primary:#4A7C59;
  --color-primary-dark:#2C5F2D;
  --color-primary-soft:#E7EFE9;
  --color-secondary:#E07A5F;
  --color-secondary-dark:#D46443;
  --color-secondary-soft:#F8E9E4;
  --color-background:#F9F7F2;
  --color-surface:#FFFFFF;
  --color-surface-muted:#F4F6F5;
  --color-text:#2D3748;
  --color-text-muted:#5C6B50;
  --color-border:#DDE5DF;
  --color-not-started:rgba(92,107,80,.16);
  --color-success:#4A7C59;
  --color-danger:#B85F52;
  --shadow-card:0 8px 24px rgba(44,95,45,.08);
  --shadow-card-hover:0 14px 34px rgba(44,95,45,.13);
  --radius-card:12px;
  --focus-ring:0 0 0 3px rgba(224,122,95,.24);

  /* Compatibilidade com variáveis existentes */
  --nutrition-petrol:var(--color-primary);
  --nutrition-petrol-dark:var(--color-primary-dark);
  --nutrition-sage:var(--color-primary);
  --nutrition-sage-dark:var(--color-text-muted);
  --nutrition-teal:var(--color-primary);
  --nutrition-ice:var(--color-background);
  --nutrition-mist:var(--color-surface-muted);
  --nutrition-line:var(--color-border);
  --nutrition-text:var(--color-text);
  --nutrition-muted:var(--color-text-muted);
  --nutrition-white:var(--color-surface);
  --nutrition-gold:var(--color-secondary);
  --nutrition-danger:var(--color-danger);
  --primary:var(--color-primary);
  --primary-dark:var(--color-primary-dark);
  --line:var(--color-border);
  --shadow:var(--shadow-card);
}

html,body{background:var(--color-background)!important;color:var(--color-text)!important}
body{accent-color:var(--color-primary)}
a{color:var(--color-primary-dark)}
:focus-visible{outline:0;box-shadow:var(--focus-ring)}

/* Header */
.topbar{
  background:rgba(249,247,242,.96)!important;
  border-bottom:1px solid var(--color-border)!important;
  box-shadow:0 4px 18px rgba(44,95,45,.04)!important;
}
.search-box{
  background:var(--color-surface-muted)!important;
  border-color:var(--color-border)!important;
  color:var(--color-primary)!important;
}
.search-box input{color:var(--color-text)!important}
.search-box input::placeholder,.profile small{color:var(--color-text-muted)!important}
.search-box kbd{background:var(--color-surface)!important;border-color:var(--color-border)!important;color:var(--color-text-muted)!important}
.icon-button,.logout-link{color:var(--color-text)!important}
.icon-button:hover,.logout-link:hover{background:var(--color-secondary-soft)!important;color:var(--color-secondary-dark)!important}
.icon-button.notification span{background:var(--color-secondary)!important}

/* Menu lateral */
.sidebar{
  background:var(--color-surface)!important;
  border-right:1px solid var(--color-border)!important;
  box-shadow:10px 0 32px rgba(44,95,45,.05)!important;
}
.brand,.brand strong{color:var(--color-primary-dark)!important}
.brand small{color:var(--color-text-muted)!important}
.brand-mark{
  color:var(--color-primary-dark)!important;
  border-color:#BFD0C3!important;
  background:linear-gradient(145deg,#F6FAF7,#E5EEE7)!important;
}
.main-nav a{color:var(--color-text-muted)!important;border-radius:9px}
.main-nav a svg{color:var(--color-primary)!important}
.main-nav a.active{
  color:var(--color-primary-dark)!important;
  background:var(--color-primary-soft)!important;
  font-weight:600;
}
.main-nav a.active::before{background:var(--color-primary-dark)!important;transform:scaleY(1)!important}
.main-nav a:not(.active):hover{
  color:var(--color-secondary-dark)!important;
  background:var(--color-secondary-soft)!important;
  transform:translateX(3px);
}
.main-nav a:not(.active):hover::before{background:var(--color-secondary)!important;transform:scaleY(1)}
.main-nav a:not(.active):hover svg{color:var(--color-secondary-dark)!important}

/* Tipografia e títulos */
.welcome h1,.section-heading h2,.panel-heading h2{color:var(--color-primary-dark)!important}
.welcome p,.category-card p,.featured-card p,.panel-card p{color:var(--color-text-muted)!important}
.section-heading a,.panel-heading a,.featured-card a{color:var(--color-primary-dark)!important}

/* Cards gerais */
.stat-card,.category-card,.featured-card,.panel-card,.quick-grid a{
  background:var(--color-surface)!important;
  border-color:var(--color-border)!important;
  box-shadow:var(--shadow-card)!important;
}
.category-card,.featured-card,.panel-card,.stat-card{border-radius:var(--radius-card)!important}
.category-card,.featured-card,.quick-grid a{
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.category-card:hover,.featured-card:hover,.quick-grid a:hover{
  transform:translateY(-3px);
  box-shadow:var(--shadow-card-hover)!important;
  border-color:#BDD0C1!important;
}

/* Cards de categoria */
.category-icon,.stat-icon{
  background:var(--color-primary-soft)!important;
  color:var(--color-primary-dark)!important;
}
.category-icon.gold,.category-icon.rose,.category-icon.pink{
  background:var(--color-secondary-soft)!important;
  color:var(--color-secondary-dark)!important;
}
.category-icon.taupe{background:var(--color-surface-muted)!important;color:var(--color-text-muted)!important}
.category-card h3{color:var(--color-text)!important}
.category-card small{color:var(--color-text-muted)!important}
.category-card small svg{color:var(--color-primary)!important}

/* Estados de aprendizagem */
.is-complete,.completed,.status-complete,.status-concluido,[data-status="completed"],[data-status="concluido"]{
  border-color:#AFC8B5!important;
}
.is-complete .category-icon,.completed .category-icon,.status-complete .category-icon,.status-concluido .category-icon,
[data-status="completed"] .category-icon,[data-status="concluido"] .category-icon{
  background:var(--color-primary)!important;
  color:#fff!important;
}
.is-progress,.in-progress,.status-progress,[data-status="progress"],[data-status="em-progresso"]{
  border-color:#E9B1A1!important;
}
.not-started,.status-not-started,[data-status="not-started"],[data-status="nao-iniciado"]{
  background:rgba(255,255,255,.72)!important;
  border-color:var(--color-not-started)!important;
}
.not-started .category-icon,.status-not-started .category-icon,[data-status="not-started"] .category-icon{
  background:var(--color-not-started)!important;
  color:var(--color-text-muted)!important;
}

/* Progresso */
.bar,.progress-bar,.progress-track{background:var(--color-not-started)!important}
.bar span,.progress-bar>span,.progress-fill{
  background:linear-gradient(90deg,var(--color-secondary),var(--color-secondary-dark))!important;
}
.mini-ring,.large-ring{
  background:conic-gradient(var(--color-secondary) var(--p),var(--color-not-started) 0)!important;
}
.mini-ring:before,.large-ring:before{background:var(--color-surface)!important}
.progress-overview strong{color:var(--color-primary-dark)!important}
.progress-list svg,.filled-heart,.quick-grid svg{color:var(--color-primary)!important}
.filled-heart{fill:var(--color-primary)!important}

/* Destaques e ações */
.featured-card span,.favorite-item span{background:var(--color-secondary-soft)!important;color:var(--color-secondary-dark)!important}
button.primary,.btn-primary,.button-primary,.cta,.submit-button,input[type="submit"]{
  background:var(--color-secondary)!important;
  border-color:var(--color-secondary)!important;
  color:#fff!important;
  box-shadow:0 6px 16px rgba(224,122,95,.22)!important;
}
button.primary:hover,.btn-primary:hover,.button-primary:hover,.cta:hover,.submit-button:hover,input[type="submit"]:hover{
  background:var(--color-secondary-dark)!important;
  border-color:var(--color-secondary-dark)!important;
}

.footer{background:transparent!important;border-top-color:var(--color-border)!important;color:var(--color-text-muted)!important}
.footer strong{color:var(--color-primary-dark)!important}

@media(max-width:680px){
  .sidebar{background:var(--color-surface)!important;border-top:1px solid var(--color-border)!important}
  .main-nav a:not(.active):hover{transform:none}
}

/* ========================================================================== 
   Revisão global v3 — remoção definitiva da paleta antiga
   ========================================================================== */

/* Superfícies, títulos e textos auxiliares */
.main-content,.content,.page-content,.categories-content,.reading-content,.editor-content,.settings-content{
  background:var(--color-background)!important;
}
.categories-title h1,.editor-title h1,.settings-heading h1,.reading-card h1,
.library-copy h2,.protocol-card h2,.reading-item-copy h2,.empty-state h2,
.empty-panel h3,.panel-heading h2{
  color:var(--color-text)!important;
}
.eyebrow,.categories-title>div>span,.settings-heading .eyebrow{
  color:var(--color-primary)!important;
}
.categories-title p,.editor-title p,.settings-heading p,.panel-heading p,
.empty-state p,.empty-panel,.reading-toolbar>span,.library-copy p,.protocol-card p,
.reading-item-copy p,.reading-item-copy small{
  color:var(--color-text-muted)!important;
}

/* Botões e links de ação */
.primary-button,.submit-button,.continue-button,
.settings-heading .primary-button,.empty-state .primary-button,
.empty-state a.primary-button,.reading-filters button.active{
  background:var(--color-secondary)!important;
  border-color:var(--color-secondary)!important;
  color:#fff!important;
  box-shadow:0 8px 20px rgba(224,122,95,.22)!important;
}
.primary-button:hover,.submit-button:hover,.continue-button:hover,
.reading-filters button.active:hover{
  background:var(--color-secondary-dark)!important;
  border-color:var(--color-secondary-dark)!important;
}
.secondary-button,.read-button,.protocol-actions a:first-child,.pdf-actions a:first-child{
  background:var(--color-primary-soft)!important;
  color:var(--color-primary-dark)!important;
  border-color:#C7D8CB!important;
}
.secondary-button:hover,.read-button:hover,.protocol-actions a:first-child:hover,.pdf-actions a:first-child:hover{
  background:#DCEADF!important;
}

/* Campos, selects e foco */
input,select,textarea,.field,.search-box,.category-filter-card select,.protocol-tools select,
.pdf-upload-form input[type=text],.pdf-upload-form input:not([type]),.status-form select,
.settings-modal input,.settings-modal select{
  border-color:var(--color-border)!important;
  background:var(--color-surface)!important;
  color:var(--color-text)!important;
}
input:focus,select:focus,textarea:focus,.field:focus-within,
.settings-modal input:focus,.settings-modal select:focus{
  border-color:var(--color-primary)!important;
  box-shadow:0 0 0 3px rgba(74,124,89,.16)!important;
  outline:none!important;
}
.field svg,.file-field>div svg{color:var(--color-primary)!important}

/* Login e cadastro */
.login-page,body.login-page,body:has(.login-card){
  background:radial-gradient(circle at 50% 10%,#FFFFFF 0,#F9F7F2 48%,#F3F1EA 100%)!important;
}
.login-card{
  background:var(--color-surface)!important;
  border-color:var(--color-border)!important;
  box-shadow:0 22px 55px rgba(44,95,45,.12)!important;
}
.login-brand,.login-copy h1{color:var(--color-primary-dark)!important}
.login-copy p{color:var(--color-text-muted)!important}
.login-card .field{background:#FCFBF8!important;border-color:var(--color-border)!important}
.login-card button{
  background:var(--color-secondary)!important;
  box-shadow:0 10px 24px rgba(224,122,95,.24)!important;
}
.login-card button:hover{background:var(--color-secondary-dark)!important;filter:none!important}
.login-secondary{color:var(--color-primary-dark)!important}
.login-secondary:hover{color:var(--color-secondary-dark)!important}
.login-card footer{color:var(--color-text-muted)!important;border-top-color:var(--color-border)!important}
.login-card footer strong{color:var(--color-primary-dark)!important}
.login-error{border-color:#E8B8AD!important;background:#FFF4F1!important;color:#974B3E!important}
.login-success{background:var(--color-primary-soft)!important;color:var(--color-primary-dark)!important}

/* Cards de listagem e estados vazios */
.library-card,.protocol-card,.pdf-card,.reading-item,.reading-summary article,
.settings-summary article,.tab-panel,.upload-card,.protocol-tools,.category-filter-card{
  background:var(--color-surface)!important;
  border-color:var(--color-border)!important;
  box-shadow:var(--shadow-card)!important;
}
.library-card:hover,.protocol-card:hover,.pdf-card:hover,.reading-item:hover{
  border-color:#BFD0C3!important;
  box-shadow:var(--shadow-card-hover)!important;
}
.empty-state{
  background:#FCFBF8!important;
  border-color:#C9D7CC!important;
  box-shadow:inset 0 0 0 1px rgba(74,124,89,.02)!important;
}
.empty-state>span,.reading-item-icon,.library-icon,.modal-category-icon,.reading-icon,.protocol-icon{
  background:var(--color-primary-soft)!important;
  color:var(--color-primary-dark)!important;
}
.library-copy>span,.modal-dialog header>div:nth-child(2)>span,
.reading-card header>div:nth-child(2)>span,.protocol-card>div:nth-child(2)>span,
.library-heading h2 small,.reading-meta>span{
  background:var(--color-secondary-soft)!important;
  color:var(--color-secondary-dark)!important;
}
.square-action,.protocol-actions a,.pdf-actions a,.pdf-actions button,
.reading-item-actions a,.reading-item-actions button{
  border-color:var(--color-border)!important;
  color:var(--color-primary-dark)!important;
  background:var(--color-surface)!important;
}
.square-action:hover,.protocol-actions a:hover,.pdf-actions a:hover,.pdf-actions button:hover,
.reading-item-actions a:hover,.reading-item-actions button:hover{
  background:var(--color-primary-soft)!important;
  border-color:#BFD0C3!important;
}

/* Minha leitura */
.reading-summary article>span{background:var(--color-primary-soft)!important;color:var(--color-primary-dark)!important}
.reading-summary strong{color:var(--color-text)!important}
.reading-summary small{color:var(--color-text-muted)!important}
.reading-toolbar{border-bottom-color:var(--color-border)!important}
.reading-filters button{
  background:var(--color-surface)!important;
  border-color:var(--color-border)!important;
  color:var(--color-text-muted)!important;
}
.status{color:var(--color-secondary-dark)!important}.status.done{color:var(--color-primary)!important}

/* Configurações */
.settings-summary article>span{
  background:var(--color-primary-soft)!important;
  color:var(--color-primary-dark)!important;
}
.settings-summary strong,.account-main strong{color:var(--color-text)!important}
.settings-summary small,.account-main span,.account-main small{color:var(--color-text-muted)!important}
.settings-tabs{background:#EAF0EB!important}
.settings-tabs button{color:var(--color-text-muted)!important}
.settings-tabs button.active{
  background:var(--color-surface)!important;
  color:var(--color-primary-dark)!important;
  box-shadow:0 4px 14px rgba(44,95,45,.10)!important;
}
.settings-tabs small{background:#D9E6DC!important;color:var(--color-primary-dark)!important}
.panel-heading,.account-row,.audit-list article,.settings-modal header{
  border-color:var(--color-border)!important;
}
.account-avatar,.account-avatar.staff,.audit-list article>span{
  background:var(--color-primary-soft)!important;
  color:var(--color-primary-dark)!important;
}
.empty-panel,.empty-panel>svg{color:var(--color-text-muted)!important}
.icon-action,.status-form button,.settings-modal header button{
  background:var(--color-primary-soft)!important;
  color:var(--color-primary-dark)!important;
}
.permission-grid label{border-color:var(--color-border)!important;background:#FCFBF8!important}
.permission-grid label span{border-color:#BFD0C3!important}
.permission-grid input:checked+span{
  background:var(--color-primary)!important;
  border-color:var(--color-primary)!important;
  color:#fff!important;
}
.settings-modal>article{
  border:1px solid var(--color-border)!important;
  box-shadow:0 25px 80px rgba(44,95,45,.18)!important;
}
.modal-backdrop{background:rgba(31,48,36,.58)!important}

/* Casos clínicos, avisos e métricas */
.clinical-summary article,.case-summary article,.case-card,.notice-card,.protected-notice{
  background:var(--color-surface)!important;
  border-color:var(--color-border)!important;
  box-shadow:var(--shadow-card)!important;
}
.clinical-summary article>span,.case-summary article>span,.notice-card>span{
  background:var(--color-primary-soft)!important;
  color:var(--color-primary-dark)!important;
}

/* PDF e destaques */
.pdf-symbol{background:linear-gradient(145deg,var(--color-primary),var(--color-primary-dark))!important}
.file-field>div{
  background:#FCFBF8!important;
  border-color:#BFD0C3!important;
  color:var(--color-primary-dark)!important;
}
.protocol-tools>div{color:var(--color-primary-dark)!important}

/* Footer global */
footer,.footer{color:var(--color-text-muted)!important;border-color:var(--color-border)!important}
footer strong,.footer strong{color:var(--color-primary-dark)!important}
