/*
 * Minha Central · Polimento desktop
 * Responsividade preservada nos tamanhos de celular.
 * 780–1023px = tablet / notebook estreito
 * 1024px+ = layout amplo com navegação no topo e sem barra fixa inferior
 */

/* Marca fiel ao favicon: a antiga estrela, agora no preto e laranja */
.brand .mark{
  background:transparent!important;
  color:transparent!important;
  border-radius:12px;
  overflow:hidden;
  padding:0;
  box-shadow:none!important;
  flex:0 0 42px;
  width:42px;
  min-width:42px;
  height:42px;
}
.brand .mark img{display:block;width:100%;height:100%;object-fit:contain}
.desktop-nav{display:none}

/* Desktop não permite cards maiores que a coluna pai ou textos cortados */
#workspace > .view,.home-overview,.week-panel,.finance-overview,.routine-calendar,
.routine-activities-section,.settings-stack,.module-card,.finance-item,
.routine-task,.routine-sport-entry,.routine-grid,.routine-tile{min-width:0}
.module-info,.finance-item-main,.routine-task-content,.routine-sport-content,
.week-result-info{min-width:0;overflow-wrap:anywhere}

@media(min-width:780px) and (max-width:1023px){
  #workspace{width:min(100%,980px);padding-inline:clamp(20px,3vw,32px)}
  #view-home .modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;gap:13px}
  #view-home .module-card{min-height:100px}
  #view-more .more-modules{max-width:none;width:100%}
  #view-more .more-modules>.modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  #view-more .more-modules>.modules>.module-card{min-height:100px}
  .routine-week-days{gap:6px}
  .routine-week-day{min-height:92px}
}

/* Navegação desktop e largura condizente com um painel */
@media(min-width:1024px){
  #app{min-width:0}
  .top{
    min-height:76px;
    padding:12px max(24px,calc((100vw - 1190px)/2));
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
  }
  .brand{flex:0 0 auto}
  .brand small{max-width:180px}
  .desktop-nav{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:5px;
    margin-left:auto;
    flex-wrap:nowrap;
    min-width:0;
  }
  .desktop-nav-link{
    color:var(--muted);
    background:transparent;
    border:1px solid transparent;
    padding:11px 12px;
    border-radius:11px;
    min-height:42px;
    line-height:1.2;
    font-weight:650;
    font-size:.85rem;
    white-space:nowrap;
    transition:background-color .16s,border-color .16s,color .16s;
  }
  .desktop-nav-link:hover{color:var(--text);background:var(--surface-2)}
  .desktop-nav-link.on{
    color:var(--blue-soft);
    background:var(--surface-2);
    border-color:var(--line);
    font-weight:780;
  }
  .desktop-nav-link:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}
  #signout{margin-left:4px;min-width:66px}
  #bottom-nav.bottom-nav{display:none!important}
  #workspace{
    width:min(100%,1190px);
    max-width:1190px;
    margin-inline:auto;
    padding:36px 28px 86px;
  }
  #auth-screen.auth{max-width:1134px;padding:66px 28px 80px;gap:48px}
  .greet{padding:10px 1px 24px}
  .home-overview{margin:18px 0 28px}
  .home-overview-grid{gap:14px}
  .home-overview-card{min-height:160px}
  .home-focus{padding:20px 22px}
  .home-heading{margin:32px 0 15px}
  /* O problema do print: remover max-width:720px da lista "Minhas áreas". */
  #view-home #modules-home.modules{
    display:grid;
    width:100%;
    max-width:none;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:15px;
    align-items:stretch;
  }
  #view-home #modules-home .module-card{
    display:grid;
    grid-template-columns:48px minmax(0,1fr) 18px;
    grid-template-rows:auto;
    align-items:center;
    gap:12px;
    width:100%;
    min-height:125px;
    padding:19px 16px;
    border-radius:16px;
  }
  #view-home #modules-home .module-icon{height:46px;width:46px;min-width:46px}
  #view-home #modules-home .module-info strong{font-size:.97rem}
  #view-home #modules-home .module-info small{line-height:1.45;font-size:.78rem}
  #view-home .home-footnote{margin:16px 2px 0}
  /* Academia */
  #view-training .section-header{align-items:center;gap:20px}
  #view-training .section-actions{display:flex;flex:0 0 auto;width:auto;min-width:0}
  #view-training .section-actions button{min-width:160px;width:auto}
  #view-training .week-panel{padding:23px 25px}
  #view-training .week-days{gap:12px}
  #view-training .week-result{min-height:78px;padding:14px 18px}
  #view-training .routine-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  #view-training .routine-tile{padding:22px;min-height:205px}
  #view-training .active-panel{padding:24px 26px}
  #view-training .routine-controls{gap:12px}
  /* Financeiro: valor em uma coluna estável, ações agrupadas abaixo dele */
  #view-finance .finance-overview{padding:23px 25px}
  #view-finance .finance-stats{gap:13px}
  #view-finance .finance-item{
    grid-template-columns:46px minmax(0,1fr) minmax(138px,max-content);
    align-items:center;
    column-gap:18px;
    row-gap:9px;
    padding:17px 21px;
  }
  #view-finance .finance-item-main{grid-column:2;grid-row:1;min-width:0}
  #view-finance .finance-item-amount{
    grid-column:3;
    grid-row:1;
    min-width:138px;
    width:auto;
    justify-self:end;
    align-items:flex-end;
    text-align:right;
  }
  #view-finance .finance-item-actions{
    grid-column:2/-1;
    grid-row:2;
    min-width:0;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:wrap;
  }
  #view-finance .finance-item-amount strong{white-space:nowrap;font-variant-numeric:tabular-nums}
  #view-finance .finance-dialog{width:min(96vw,590px);max-width:590px}
  /* Rotina: mais espaço para tarefas e atividades físicas */
  #view-routine .routine-header{gap:20px}
  #view-routine .routine-calendar{padding:22px 24px}
  #view-routine .routine-week-days{grid-template-columns:repeat(7,minmax(0,1fr));width:100%;gap:11px}
  #view-routine .routine-week-day{min-height:100px}
  #view-routine .routine-list{gap:12px}
  #view-routine .routine-task{grid-template-columns:48px minmax(0,1fr) auto;padding:18px 21px}
  #view-routine .routine-task-actions{grid-column:3;justify-content:flex-end;flex-wrap:nowrap}
  #view-routine .routine-activities-section{padding:22px 24px}
  #view-routine .routine-sport-actions{margin-left:auto}
  /* Histórico */
  #view-history #history-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:13px;
  }
  #view-history .history-card{margin:0;min-height:94px}
  /* Mais e Configurações */
  #view-more .more-modules{width:100%;max-width:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
  #view-more .more-modules>.modules{
    grid-column:1/-1;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:15px;
    max-width:none;
    width:100%;
  }
  #view-more .more-modules>.modules>.module-card{min-height:112px}
  #view-more .more-modules>.settings-link{margin:0;min-height:98px;align-self:stretch}
  #view-settings .settings-stack{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:17px}
  #view-settings .settings-section{min-width:0;padding:22px 24px}
  #view-settings .settings-danger{grid-column:span 1}
  #view-settings .appearance-section .appearance-choices{grid-template-columns:repeat(3,minmax(0,1fr))}
  /* Botões de destruição sem sobrepor a navegação */
  .dialog{width:min(96vw,620px);max-width:620px}
}

@media(min-width:1024px) and (max-width:1170px){
  .top{gap:11px;padding-inline:26px}
  .desktop-nav{gap:0}
  .desktop-nav-link{padding:10px 8px;font-size:.79rem}
  #workspace{padding-inline:28px}
  #view-home #modules-home .module-card{padding:16px 12px;gap:9px}
  #view-home #modules-home .module-info strong{font-size:.9rem}
  #view-home #modules-home .module-info small{font-size:.72rem}
}

/* Modo claro e escuro preservam contraste em ambas as barras */
html[data-theme="light"] .desktop-nav-link.on{color:#A64C00}
html[data-theme="dark"] .desktop-nav-link.on{color:#FFBE67}
