/* ============================================================
   RESPONSIVE.CSS — Media queries & dark mode
   ============================================================ */

@media (max-width: 1400px) {
  .container { grid-template-columns: 460px 1fr; }
}

@media (max-width: 1200px) {
  .container { grid-template-columns: 1fr; }
  .form-panel { position:static; max-height:none; }
  .rt-kpi-grid { grid-template-columns: repeat(3, 1fr); }
  .quick-stats-grid { grid-template-columns: repeat(2, 1fr); }
  .admin-grid { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
  body { padding: 12px; }
  .page-nav { flex-wrap: wrap; gap: 8px; padding: 10px 14px; }
  .nav-tabs { gap: 4px; }
  .nav-tab  { padding: 6px 10px; font-size: 11px; }
  .template-grid { grid-template-columns: repeat(4, 1fr); }
  .rt-charts-grid { grid-template-columns: 1fr; }
  .rt-month-grid  { grid-template-columns: repeat(4, 1fr); }
  .cat-stats-bar  { grid-template-columns: repeat(2, 1fr); }
  .rt-kpi-grid    { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 640px) {
  .quick-stats-grid { grid-template-columns: repeat(2, 1fr); }
  .feature-grid     { grid-template-columns: repeat(2, 1fr); }
  .template-grid    { grid-template-columns: repeat(3, 1fr); }
  .color-palette    { grid-template-columns: repeat(6, 1fr); }
  .action-buttons   { grid-template-columns: repeat(2, 1fr); }
  .wb-quick-actions { flex-wrap: wrap; }
  .rt-banner        { flex-direction: column; gap: 12px; }
  .rt-toolbar       { flex-direction: column; }
  .rt-month-grid    { grid-template-columns: repeat(3, 1fr); }
  .rt-kpi-grid      { grid-template-columns: repeat(2, 1fr); }
  .inv-parties      { grid-template-columns: 1fr; }
  .inv-header       { grid-template-columns: 1fr; }
  .a4-preview-shell { width: 100%; }
  .add-user-form    { grid-template-columns: 1fr 1fr; }
  .billing-kpi-grid { grid-template-columns: 1fr; }
}

/* ── Dark mode ── */
[data-theme="dark"] body {
  background: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #312e81 100%);
  color: #e2e8f0;
}
[data-theme="dark"] .form-panel,
[data-theme="dark"] .preview-panel,
[data-theme="dark"] .card,
[data-theme="dark"] .admin-card {
  background: #1e2433;
  border-color: #334155;
  color: #e2e8f0;
}
[data-theme="dark"] input,
[data-theme="dark"] textarea,
[data-theme="dark"] select {
  background: #252d3d;
  border-color: #334155;
  color: #e2e8f0;
}
[data-theme="dark"] .form-section       { background: #252d3d; border-color: #334155; }
[data-theme="dark"] .item-row           { background: #252d3d; border-color: #334155; }
[data-theme="dark"] label               { color: #cbd5e1; }
[data-theme="dark"] .qs-card            { background: #1e2433; }
[data-theme="dark"] .catalog-item       { background: #252d3d; border-color: #334155; }
[data-theme="dark"] .client-card        { background: #252d3d; border-color: #334155; }
[data-theme="dark"] .history-item       { background: #252d3d; border-color: #334155; }
[data-theme="dark"] .rt-chart-card,
[data-theme="dark"] .rt-kpi             { background: #1e2433; border-color: #334155; }
[data-theme="dark"] .rt-excel td        { border-color: #334155; color: #cbd5e1; }
[data-theme="dark"] .rt-excel tr:hover td { background: #252d3d; }
[data-theme="dark"] .rt-table-wrap      { background: #1e2433; }
[data-theme="dark"] .rt-table-header    { background: #252d3d; border-color: #334155; }
[data-theme="dark"] .cat-stat-card,
[data-theme="dark"] .exp-stat-card      { background: #1e2433; }
[data-theme="dark"] .expense-row        { background: #252d3d; border-color: #334155; }
[data-theme="dark"] .modal-box          { background: #1e2433; color: #e2e8f0; }
[data-theme="dark"] .modal-input        { background: #252d3d; border-color: #334155; color: #e2e8f0; }

/* ── Print utilities ── */
.print-hide { }
@media print { .print-hide { display: none !important; } }
