/* SeeWorkGo visual system refinement shared by all authenticated screens. */
.app { grid-template-columns: 224px minmax(0,1fr); }
aside { position: sticky; top: 0; height: 100vh; overflow: hidden; padding: 20px 14px 16px; }
aside .brand { padding: 4px 6px; font-size: 21px; }
aside form { margin-top: 10px; padding-top: 10px; border-top: 1px solid #233249; }
.workspace { min-width: 0; }
.workspace header { position: sticky; top: 0; z-index: 20; padding-inline: 28px; }
.workspace main { width: 100%; max-width: 1440px; padding: 28px 30px 42px; }
.heading { margin-bottom: 24px; }
.heading h1 { margin: 4px 0 6px; font-size: clamp(28px,3vw,36px); line-height: 1.18; letter-spacing: -.035em; }
.heading p { max-width: 720px; }
.eyebrow { font-size: 11px; font-weight: 850; letter-spacing: .11em; }
.card,.stat,.notice,.create-panel { border-color: #e1e7ef; border-radius: 16px; }
.card { box-shadow: 0 8px 26px rgba(30,48,72,.045); }
.card-title { gap: 16px; padding: 19px 21px; }
.card-title h2 { letter-spacing: -.015em; }
input,select,textarea,button { font: inherit; }
.settings-form input,.settings-form select,.settings-form textarea,.filter-form input,.filter-form select { border-color: #cfd8e5; border-radius: 10px; }
.settings-form,.settings-form label,.settings-form label>span,.filter-form,.filter-form label { min-width: 0; }
.settings-form input,.settings-form select,.settings-form textarea,.filter-form input,.filter-form select { max-width: 100%; }
.settings-form button,.primary { min-height: 42px; padding-inline: 17px; cursor: pointer; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; border: 1px solid #d7dee8; border-radius: 10px; background: #fff; padding: 8px 13px; color: #344054; text-decoration: none; font-weight: 750; }
.button:hover { border-color: #aac5e9; background: #f7faff; color: var(--blue); }

/* Keep high-frequency forms compact and easy to scan. */
.invite-access-card .settings-form { grid-template-columns: minmax(240px,2fr) minmax(210px,1fr) auto; align-items: end; }
.invite-access-card .settings-form button { justify-self: stretch; white-space: nowrap; }

/* Dashboard: actions first, filters second, information ordered by importance. */
.analytics-dashboard { --dash-shadow: 0 9px 28px rgba(30,48,72,.055); }
.analytics-dashboard .dashboard-heading { align-items: center; margin-bottom: 16px; }
.dashboard-refresh-group { display: grid; justify-items: end; gap: 7px; }
.dashboard-refresh-group button { border: 1px solid #d4dfed; background: #fff; border-radius: 10px; padding: 9px 13px; color: var(--blue); font-weight: 800; cursor: pointer; }
.dashboard-refresh-group button:hover { background: #f3f8ff; border-color: #9fc0ec; }
.dashboard-refresh-group .updated { border: 0; background: transparent; padding: 0; font-size: 11px; }
.dashboard-action-bar { display: flex; align-items: center; gap: 9px; margin: 0 0 16px; overflow-x: auto; }
.dashboard-action-bar a { display: inline-flex; align-items: center; gap: 8px; min-height: 42px; border: 1px solid #d7e0eb; border-radius: 11px; background: #fff; padding: 9px 14px; color: #344054; font-weight: 780; text-decoration: none; white-space: nowrap; box-shadow: 0 4px 14px rgba(30,48,72,.035); }
.dashboard-action-bar a:hover { border-color: #aac6eb; background: #f7faff; color: var(--blue); }
.dashboard-action-bar a span { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 7px; background: #eef4fd; color: var(--blue); font-size: 14px; }
.dashboard-action-bar .dashboard-primary-action { border-color: var(--blue); background: var(--blue); color: #fff; }
.dashboard-action-bar .dashboard-primary-action:hover { background: #0f5fcf; color: #fff; }
.dashboard-action-bar .dashboard-primary-action span { background: #ffffff26; color: #fff; }
.analytics-dashboard .dashboard-filter-card { margin-bottom: 16px; border-radius: 14px; padding: 14px 16px; box-shadow: var(--dash-shadow); }
.analytics-dashboard .dashboard-filter-title { margin-bottom: 10px; }
.analytics-dashboard .dashboard-filter-grid { grid-template-columns: repeat(5,minmax(112px,1fr)) auto; gap: 9px; }
.analytics-dashboard .dashboard-filter-grid input,.analytics-dashboard .dashboard-filter-grid select { min-height: 40px; border-color: #d4dce7; }
.analytics-dashboard .dashboard-kpis { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin-bottom: 16px; }
.analytics-dashboard .dashboard-kpis .stat { min-height: 132px; padding: 17px 18px; border-radius: 15px; box-shadow: var(--dash-shadow); }
.analytics-dashboard .dashboard-kpis .stat::before { width: 3px; }
.analytics-dashboard .dashboard-kpis .stat:nth-child(3)::before { background: #20a66a; }
.analytics-dashboard .dashboard-kpis .stat:nth-child(5)::before,.analytics-dashboard .dashboard-kpis .stat:nth-child(6)::before { background: #f59e0b; }
.analytics-dashboard .dashboard-kpis .stat:nth-child(7)::before { background: #7c3aed; }
.analytics-dashboard .dashboard-kpis .stat strong { margin: 5px 0; font-size: 30px; letter-spacing: -.04em; }
.analytics-dashboard .dashboard-kpis .stat span { font-size: 13px; }
.analytics-dashboard .dashboard-chart-grid { grid-template-columns: repeat(12,minmax(0,1fr)); gap: 16px; }
.analytics-dashboard .chart-card { grid-column: span 6; border-radius: 16px; padding: 20px; box-shadow: var(--dash-shadow); }
.analytics-dashboard .chart-card:nth-child(1) { grid-column: span 5; }
.analytics-dashboard .chart-card:nth-child(2) { grid-column: span 7; }
.analytics-dashboard .chart-card:nth-child(3) { grid-column: span 8; }
.analytics-dashboard .chart-card:nth-child(4) { grid-column: span 4; }
.analytics-dashboard .chart-card-full { grid-column: 1/-1; }
.analytics-dashboard .chart-heading { display: flex; justify-content: space-between; gap: 16px; }
.analytics-dashboard .chart-heading h2 { font-size: 18px; letter-spacing: -.015em; }
.analytics-dashboard .chart-heading p { margin-bottom: 16px; }
.analytics-dashboard .donut-layout { min-height: 176px; }
.analytics-dashboard .donut-chart { width: 142px; height: 142px; }
.analytics-dashboard .column-chart { height: 205px; }
.analytics-dashboard .attention-list div { min-height: 45px; border: 1px solid #edf0f5; background: #f8fafc; }
.analytics-dashboard>.notice { margin-top: 16px; background: #f8fbff; }

@media (max-width: 1100px) {
  .analytics-dashboard .dashboard-filter-grid { grid-template-columns: repeat(3,minmax(140px,1fr)); }
  .analytics-dashboard .dashboard-kpis { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .analytics-dashboard .chart-card,.analytics-dashboard .chart-card:nth-child(n) { grid-column: span 6; }
  .analytics-dashboard .chart-card-full { grid-column: 1/-1; }
}
@media (max-width: 760px) {
  .app { grid-template-columns: 1fr; }
  .workspace header { position: static; }
  .workspace main { padding: 20px 16px 34px; }
  .dashboard-refresh-group { justify-items: start; margin-top: 13px; }
  .dashboard-action-bar { margin-inline: -2px; padding: 2px; }
  .analytics-dashboard .dashboard-filter-grid { grid-template-columns: 1fr; }
  .analytics-dashboard .dashboard-kpis { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .analytics-dashboard .dashboard-kpis .stat { min-height: 122px; padding: 15px; }
  .analytics-dashboard .dashboard-chart-grid { grid-template-columns: 1fr; }
  .analytics-dashboard .chart-card,.analytics-dashboard .chart-card:nth-child(n),.analytics-dashboard .chart-card-full { grid-column: auto; }
  .invite-access-card .settings-form { grid-template-columns: 1fr; }
}
@media (max-width: 430px) {
  .analytics-dashboard .dashboard-kpis { grid-template-columns: 1fr; }
}
