.tax-page { min-width: 0; }
.tax-panel { padding: 22px; margin: 18px 0; min-width: 0; }
.tax-panel h2 { font-size: 19px; margin: 0 0 12px; }
.tax-panel p, .tax-scope { color: var(--muted, #6c746b); line-height: 1.55; }
.tax-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 12px; }
.tax-card { display: flex; flex-direction: column; gap: 8px; padding: 17px; border: 1px solid var(--border, #dfe5db); border-radius: 14px; background: var(--surface, #fff); min-width: 0; overflow-wrap: anywhere; }
.tax-card small { color: var(--muted, #6c746b); }
.tax-card strong { font-size: 23px; }
.tax-card p { margin: 0; font-size: 12px; }
.tax-filters { flex-wrap: wrap; align-items: end; }
.tax-filters .field { min-width: 180px; flex: 1; }
.tax-filters .date-range-control { align-self: center; }
.tax-period { padding: 14px 0 20px; border-bottom: 1px solid var(--border, #dfe5db); margin-bottom: 15px; }
.tax-warning { padding: 14px; margin: 12px 0; border-radius: 12px; background: #fff6de; color: #775414; }
.tax-warning ul { margin: 10px 0 0; padding-left: 22px; line-height: 1.65; }
.tax-actions { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; margin: 12px 0; }
.tax-actions .field { max-width: 250px; }
.tax-page table small { display: block; margin-top: 5px; max-width: 330px; white-space: normal; overflow-wrap: anywhere; }
.tax-page table td { vertical-align: top; }
.tax-chart { display: flex; gap: 12px; overflow-x: auto; padding: 14px 0; }
.tax-chart-column { flex: 0 0 85px; text-align: center; }
.tax-bars { height: 135px; display: flex; align-items: flex-end; justify-content: center; gap: 4px; }
.tax-bar { width: 16px; border-radius: 4px 4px 0 0; }
.tax-bar-0 { background: #b5ee64; }.tax-bar-1 { background: #75a63c; }.tax-bar-2 { background: #48642b; }
.tax-bar.negative { background-image: repeating-linear-gradient(45deg, transparent, transparent 4px, #fff8 4px, #fff8 6px); border-bottom: 3px solid #a74040; }
.tax-history { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 12px; }
@media (max-width: 600px) {
  .tax-panel { padding: 14px; }.tax-cards { grid-template-columns: 1fr; }
  .tax-filters .field, .tax-filters .date-range-control { width: 100%; min-width: 0; }
  .tax-filters .date-range-button { width: 100%; }
  .tax-actions > button, .tax-actions > a { flex: 1; white-space: normal; text-align: center; }
  .tax-card strong { font-size: 21px; }
  .tax-page .calendar-pair, .tax-page .calendar-month { min-width: 0; }
  .tax-page .calendar-pair { position: relative; }
  .tax-page .calendar-month:first-child { display: block; position: absolute; top: 14px; left: 18px; }
  .tax-page .calendar-month:first-child .calendar-month-head { display: block; }
  .tax-page .calendar-month:first-child .calendar-month-head > :not(button),
  .tax-page .calendar-month:first-child .calendar-weekdays,
  .tax-page .calendar-month:first-child .calendar-days { display: none; }
  .tax-page .calendar-days, .tax-page .calendar-weekdays { grid-template-columns: repeat(7, minmax(0, 1fr)); }
  .tax-page .date-range-actions { flex-wrap: wrap; padding: 12px; position: sticky; bottom: 0; background: #fff; z-index: 3; }
  .tax-page .date-range-actions > span { flex-basis: 100%; }
  .tax-page .date-range-actions > button { flex: 1; padding-left: 8px; padding-right: 8px; min-width: 0; }
}
