.daily-summary {
  grid-template-columns: repeat(3, 1fr);
  margin-top: 14px;
}

.category-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:8px;margin-top:8px}
.category-choice{min-height:44px;border:1px solid #d9e3f2;border-radius:12px;background:#f7f9fd;color:#34445d;font-weight:700;padding:8px;cursor:pointer}
.category-choice.on{background:#2563eb;border-color:#2563eb;color:#fff;box-shadow:0 6px 16px #2563eb28}
.category-choice:disabled{cursor:not-allowed;opacity:.65}
.choice-item{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
.choice-label{grid-column:1/-1!important}
.choice-item .del{align-self:end}
.choice-item.direct-amount .price-field{display:none}
.five-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.inventory-entry span{background:#f3e8ff!important;color:#7c3aed!important}.attendance-entry span{background:#e6faff!important;color:#0891b2!important}
.tool-title{align-items:center}.tool-title input{width:auto}
.inventory-row,.attendance-row{display:grid;grid-template-columns:1.2fr repeat(4,minmax(86px,1fr));gap:10px;align-items:end;padding:14px 0;border-bottom:1px solid #e8edf4}
.inventory-row small{color:#708097}.inventory-row label,.attendance-row label{margin:0}.inventory-row strong{display:block;padding:11px;border-radius:10px;background:#edf3ff;color:#2563eb}
.attendance-row{grid-template-columns:1.4fr 1fr 1fr 1fr}.attendance-check{display:grid!important;grid-template-columns:auto 1fr;gap:3px 8px;align-items:center}.attendance-check input{grid-row:1/3;width:20px}.attendance-check small{color:#708097}.attendance-row.off{opacity:.5}.attendance-summary,.workforce-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:14px}.attendance-summary b{padding:14px;border-radius:12px;background:#edf7fb;color:#087c96}.workforce-metrics{grid-template-columns:repeat(3,1fr);margin:12px 0}
@media(max-width:700px){.category-choices{grid-template-columns:repeat(3,minmax(0,1fr))}.five-entry-grid{grid-template-columns:1fr}.inventory-row,.attendance-row{grid-template-columns:1fr 1fr}.inventory-row>b,.inventory-row>small,.attendance-check{grid-column:1/-1}.workforce-metrics{grid-template-columns:1fr}.reimburse-choices{grid-template-columns:repeat(2,minmax(0,1fr))}}
.item { grid-template-columns: 1.3fr .55fr .55fr .7fr 1fr 1fr auto; }
.income-item { grid-template-columns: 1.3fr .8fr 2fr auto; }
button:disabled, input:disabled, select:disabled { cursor: not-allowed; opacity: .62; }
.manager-shell { padding-bottom: 24px; }
.manager-welcome { padding-top: 28px; }
.manager-welcome > h2 { margin: 6px 0 20px; font-size: 24px; }
.manager-entry-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.manager-entry { border: 1px solid #e2e8f2; padding: 24px; text-align: left; cursor: pointer; color: #172033; min-height: 190px; }
.manager-entry span { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; margin-bottom: 28px; background: #edf3ff; color: #2563eb; font-weight: 800; }
.manager-entry b, .manager-entry small { display: block; }
.manager-entry b { font-size: 19px; margin-bottom: 7px; }
.manager-entry small { color: #708097; }
.expense-entry span { background: #fff4e7; color: #c56500; }
.reimburse-entry span { background: #eaf8ef; color: #187842; }
.monthly-entry span { background: #f3edff; color: #7047bd; }
.salary-entry span { background: #fff0f3; color: #bd3654; }
.base-entry span { background: #eef1f5; color: #4d5b70; }
.role-entry-grid .manager-entry { min-height: 180px; }
.manager-page-head { display: flex; justify-content: space-between; align-items: center; margin: 4px 0 10px; }
.manager-context { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 0; }
.manager-context.manager-identity { grid-template-columns: repeat(2, 1fr); margin-bottom: 18px; }
.manager-context label { margin: 0; }
.section-heading { margin: 22px 0 0; font-size: 20px; }
.supplementary { border-color: #9dc2ff; background: #f7faff; }
.submit-confirm, .credential-result { width: min(480px, 100%) !important; }
.submit-confirm p { color: #506078; line-height: 1.7; }
.dashboard-period { display: flex; gap: 10px; }
.dashboard-period select,.dashboard-period input { width: auto; min-width: 135px; }
.monthly-metrics { grid-template-columns: repeat(4,1fr); }
.monthly-metrics .metric small { display: block; margin-top: 5px; color: #708097; }
.chart-legend { display: flex; gap: 12px; font-size: 12px; color: #607087; }
.chart-legend span::before { content: ""; display: inline-block; width: 9px; height: 9px; border-radius: 3px; margin-right: 5px; }
.income-dot::before,.income-bar { background: #3b82f6; }
.expense-dot::before,.expense-bar { background: #f59e0b; }
.salary-dot::before,.salary-bar { background: #8b5cf6; }
.store-chart { display: grid; gap: 18px; }
.store-chart-row { border-bottom: 1px solid #edf0f5; padding-bottom: 16px; }
.store-chart-row:last-child { border-bottom: 0; padding-bottom: 0; }
.store-chart-row > b { display: block; margin-bottom: 9px; }
.bar-line { display: grid; grid-template-columns: 36px minmax(20px,1fr) 105px; gap: 8px; align-items: center; min-height: 25px; font-size: 12px; }
.bar-line span { color: #708097; }
.bar-line em { font-style: normal; text-align: right; color: #40516a; }
.chart-bar { display: block; min-width: 2px; max-width: 100%; height: 12px; border-radius: 999px; }
.monthly-dashboard-table { min-width: 900px; }
.monthly-dashboard-table tfoot { background: #f6f9fe; font-weight: 700; }
.grouped-chart { display: grid; grid-template-columns: repeat(6,1fr); gap: 14px; min-height: 285px; padding-top: 28px; border-bottom: 1px solid #dfe5ee; background: repeating-linear-gradient(to bottom,transparent 0,transparent calc(25% - 1px),#edf0f5 25%); }
.grouped-store { display: grid; grid-template-rows: 225px 32px; min-width: 0; }
.grouped-store > b { text-align: center; align-self: end; white-space: nowrap; font-size: 13px; }
.grouped-columns { display: flex; align-items: end; justify-content: center; gap: 5px; }
.grouped-column { width: 25%; height: 100%; display: flex; flex-direction: column; justify-content: end; align-items: center; position: relative; }
.grouped-column i { display: block; width: 100%; border-radius: 5px 5px 0 0; min-height: 0; }
.grouped-column em { position: absolute; top: 4px; writing-mode: vertical-rl; font-style: normal; font-size: 10px; color: #607087; }
.heat-table { min-width: 520px; }
.heat-table th,.heat-table td { text-align: center; }
.heat-table th:first-child { text-align: left; }
.heat-table td { font-weight: 700; border-left: 3px solid #fff; }
.heat-1 { background: #edf5ff; }.heat-2 { background: #dbeafe; }.heat-3 { background: #bfdbfe; }.heat-4 { background: #93c5fd; }.heat-5 { background: #60a5fa; color: #082f66; }
.heat-negative { background: #fecaca; color: #991b1b; }
@media (max-width: 700px) { .daily-summary,.monthly-metrics { grid-template-columns: 1fr 1fr; } .dashboard-title { align-items: end; } .dashboard-title > div:first-child p { display: none; } .dashboard-period { display: grid; gap: 6px; } .dashboard-period select,.dashboard-period input { min-width: 125px; } .manager-welcome { padding-top: 18px; } .manager-welcome > h2 { font-size: 21px; margin-bottom: 16px; } .manager-entry-grid { grid-template-columns: 1fr; gap: 12px; } .manager-entry,.role-entry-grid .manager-entry { min-height: 0; padding: 18px; } .manager-entry span { margin-bottom: 14px; } .manager-context,.manager-context.manager-identity { grid-template-columns: 1fr; } .bar-line { grid-template-columns: 32px minmax(16px,1fr) 88px; gap: 6px; } .grouped-chart { grid-template-columns: repeat(3,1fr); row-gap: 18px; background: none; border-bottom: 0; padding-top: 20px; } .grouped-store { grid-template-rows: 185px 28px; border-bottom: 1px solid #e5eaf2; } .grouped-column em { display: none; } }
