/* ==========================================================================
   MADRAS ENGINEERING ENTERPRISES - QUOTATION MAKER STYLES
   ========================================================================== */

:root {
  --primary: #1e3a8a;          /* Deep industrial navy */
  --primary-light: #2563eb;
  --primary-dark: #1e293b;
  --accent: #dc2626;           /* Professional red accent matching MEE logo */
  --bg-page: #f1f5f9;
  --bg-card: #ffffff;
  --border-color: #cbd5e1;
  --border-dark: #334155;
  --text-main: #0f172a;
  --text-muted: #64748b;
  --success: #16a34a;
  --warning: #d97706;
  --font-family: 'Segoe UI', system-ui, -apple-system, BlinkMacSystemFont, Roboto, sans-serif;
  --font-mono: 'Consolas', 'Courier New', monospace;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  font-family: var(--font-family);
  background-color: var(--bg-page);
  color: var(--text-main);
  line-height: 1.45;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

/* --------------------------------------------------------------------------
   Top Navigation Bar
   -------------------------------------------------------------------------- */
.top-navbar {
  background: #ffffff;
  border-bottom: 2px solid #e2e8f0;
  padding: 0.6rem 1.25rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06);
  position: sticky;
  top: 0;
  z-index: 100;
}

.brand-section {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.brand-logo-small {
  height: 38px;
  width: auto;
  object-fit: contain;
}

.brand-title h1 {
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--primary);
  letter-spacing: -0.3px;
  line-height: 1.1;
}

.brand-title p {
  font-size: 0.75rem;
  color: var(--text-muted);
  font-weight: 500;
}



.nav-actions {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

/* Button Styles */
.btn {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.45rem 0.85rem;
  font-size: 0.85rem;
  font-weight: 600;
  border-radius: 6px;
  border: 1px solid transparent;
  cursor: pointer;
  transition: all 0.15s ease-in-out;
  text-decoration: none;
  font-family: inherit;
}

.btn:active {
  transform: translateY(1px);
}

/* Disabled & Greyed Out Button State */
.btn:disabled,
.btn.btn-disabled {
  opacity: 0.45 !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
  box-shadow: none !important;
  transform: none !important;
  filter: grayscale(0.6);
}

.btn-primary {
  background-color: var(--primary);
  color: #ffffff;
}
.btn-primary:hover {
  background-color: var(--primary-light);
}

.btn-accent {
  background-color: var(--accent);
  color: #ffffff;
}
.btn-accent:hover {
  background-color: #b91c1c;
}

.btn-success {
  background-color: var(--success);
  color: #ffffff;
}
.btn-success:hover {
  background-color: #15803d;
}

.btn-whatsapp {
  background-color: #25D366;
  color: #ffffff;
  border-color: #25D366;
  font-weight: 700;
}
.btn-whatsapp:hover {
  background-color: #1da851;
  border-color: #1da851;
}

.btn-email {
  background-color: #0284c7;
  color: #ffffff;
  border-color: #0284c7;
  font-weight: 700;
}
.btn-email:hover {
  background-color: #0369a1;
  border-color: #0369a1;
}

.btn-outline {
  background-color: #ffffff;
  color: var(--text-main);
  border-color: var(--border-color);
}
.btn-outline:hover {
  background-color: #f8fafc;
  border-color: #94a3b8;
}

.btn-sm {
  padding: 0.3rem 0.6rem;
  font-size: 0.78rem;
}

.btn-icon {
  padding: 0.35rem;
  line-height: 1;
}

/* --------------------------------------------------------------------------
   App Layout & View Modes (Default: Wide Editor, Secondary: Split View, Preview Full)
   -------------------------------------------------------------------------- */
.app-container {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 1.25rem;
  padding: 1rem 1.25rem;
  flex: 1;
  max-width: 1920px;
  margin: 0 auto;
  width: 100%;
  transition: all 0.2s ease-in-out;
}

/* Screen-only View Mode Rules (NEVER affects @media print) */
@media screen {
  /* Default: Full Width Editor Mode */
  body.mode-editor-only .app-container {
    grid-template-columns: 1fr;
  }
  body.mode-editor-only .preview-panel {
    display: none !important;
  }

  /* Full Width Preview Mode */
  body.mode-preview-only .app-container {
    grid-template-columns: 1fr;
  }
  body.mode-preview-only .editor-panel {
    display: none !important;
  }
}

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

/* View Mode Switcher in Navbar */
.view-mode-toggle {
  display: inline-flex;
  background: #f1f5f9;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  padding: 2px;
  gap: 2px;
}

.view-btn {
  padding: 0.25rem 0.65rem;
  font-size: 0.78rem;
  font-weight: 600;
  border: none;
  background: transparent;
  color: #475569;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.15s ease;
}

.view-btn.active {
  background: #ffffff;
  color: var(--primary);
  box-shadow: 0 1px 2px rgba(0,0,0,0.08);
}

/* Panels */
.editor-panel {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  min-width: 0;
}

.preview-panel {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 0;
}

.preview-header-bar {
  width: 100%;
  max-width: 210mm;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.75rem;
  padding: 0 0.5rem;
}

.preview-title {
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* Card Container in Editor */
.card {
  background: var(--bg-card);
  border-radius: 8px;
  border: 1px solid var(--border-color);
  box-shadow: 0 1px 3px rgba(0,0,0,0.04);
  padding: 1.15rem;
}

.card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 0.75rem;
  margin-bottom: 0.85rem;
  border-bottom: 1px solid #f1f5f9;
  flex-wrap: wrap;
  gap: 8px;
}

.card-title {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--primary);
  display: flex;
  align-items: center;
  gap: 0.45rem;
}

/* Form Controls */
.form-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 0.85rem;
}

.form-group {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.form-group label {
  font-size: 0.78rem;
  font-weight: 600;
  color: var(--text-muted);
}

.form-control {
  padding: 0.45rem 0.65rem;
  font-size: 0.85rem;
  border: 1px solid var(--border-color);
  border-radius: 5px;
  background-color: #ffffff;
  color: var(--text-main);
  outline: none;
  font-family: inherit;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.form-control:focus {
  border-color: var(--primary-light);
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.15);
}

.form-control-readonly {
  background-color: #f8fafc;
  color: #334155;
  font-weight: 600;
}

/* --------------------------------------------------------------------------
   Interactive Line Items Table in Editor (Spacious & Highly Legible)
   -------------------------------------------------------------------------- */
.table-wrapper {
  overflow-x: auto;
  border: 1px solid var(--border-color);
  border-radius: 8px;
  margin-bottom: 0.85rem;
  background: #ffffff;
  box-shadow: inset 0 1px 2px rgba(0,0,0,0.03);
}

.items-editor-table {
  width: 100%;
  min-width: 960px; /* Guarantees columns will NEVER squish or cut off numbers! */
  border-collapse: collapse;
  font-size: 0.95rem;
}

.items-editor-table th {
  background-color: #f8fafc;
  padding: 0.7rem 0.65rem;
  font-weight: 700;
  font-size: 0.86rem;
  color: #334155;
  text-align: left;
  border-bottom: 2px solid #cbd5e1;
  border-right: 1px solid #e2e8f0;
  white-space: nowrap;
}

.items-editor-table td {
  padding: 0.5rem 0.55rem;
  border-bottom: 1px solid #f1f5f9;
  border-right: 1px solid #f1f5f9;
  vertical-align: middle;
}

.items-editor-table td:last-child,
.items-editor-table th:last-child {
  border-right: none;
}

.items-editor-table input,
.items-editor-table select {
  width: 100%;
  padding: 0.5rem 0.65rem;
  font-size: 1rem;
  font-weight: 500;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  background: #ffffff;
  color: var(--text-main);
  box-sizing: border-box;
  font-family: inherit;
}

.items-editor-table input:focus,
.items-editor-table select:focus {
  outline: none;
  border-color: var(--primary-light);
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.2);
}

/* Explicit spacious column minimum widths */
.col-sno { width: 44px; min-width: 44px; text-align: center; font-size: 0.95rem; }
.col-desc { min-width: 280px; }
.col-qty { width: 100px; min-width: 100px; }
.col-uom { width: 105px; min-width: 105px; }
.col-rate { width: 130px; min-width: 130px; }
.col-disc { width: 90px; min-width: 90px; }
.col-gst { width: 105px; min-width: 105px; }
.col-amount { width: 135px; min-width: 135px; text-align: right; }
.col-actions { width: 85px; min-width: 85px; text-align: center; }

/* Multi-line auto-expanding textarea in table */
.item-desc-textarea {
  width: 100%;
  min-height: 42px;
  resize: vertical;
  font-family: inherit;
  font-size: 0.95rem;
  padding: 0.5rem 0.65rem;
  line-height: 1.4;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  box-sizing: border-box;
}

.item-desc-textarea:focus {
  outline: none;
  border-color: var(--primary-light);
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.2);
}

/* Spacious, highly readable numeric inputs with fixed min-widths */
.items-editor-table input.item-qty {
  min-width: 80px;
  font-size: 1.05rem;
  font-weight: 700;
  text-align: center;
  color: #0f172a;
}

.items-editor-table input.item-uom {
  min-width: 90px;
  font-size: 1rem;
  font-weight: 600;
  text-align: center;
  color: #334155;
}

.items-editor-table input.item-rate {
  min-width: 115px;
  font-size: 1.05rem;
  font-weight: 700;
  text-align: right;
  color: #0f172a;
}

.items-editor-table input.item-disc {
  min-width: 75px;
  font-size: 1rem;
  font-weight: 600;
  text-align: center;
}

.items-editor-table select.item-gst {
  min-width: 95px;
  font-size: 1rem;
  font-weight: 700;
  text-align: center;
  color: #1e3a8a;
  cursor: pointer;
  padding: 0.5rem 1.6rem 0.5rem 0.6rem;
}

.items-editor-table .item-row-amount {
  min-width: 125px;
  font-size: 1.05rem;
  font-weight: 800;
  color: #1e3a8a;
  white-space: nowrap;
}

/* Toggle Switch for Discount Column */
.discount-toggle-wrapper {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.8rem;
  color: var(--text-muted);
  cursor: pointer;
  user-select: none;
  background: #f1f5f9;
  padding: 0.25rem 0.6rem;
  border-radius: 4px;
  border: 1px solid #e2e8f0;
}

.discount-toggle-wrapper input[type="checkbox"] {
  cursor: pointer;
  accent-color: var(--primary);
}

/* Hide Discount elements when discount column is toggled off */
.hide-discount .col-disc {
  display: none !important;
}

/* Totals Box in Editor */
.totals-summary-card {
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  padding: 0.85rem;
  margin-top: 0.75rem;
}

.totals-row {
  display: flex;
  justify-content: space-between;
  font-size: 0.85rem;
  padding: 0.25rem 0;
}

.totals-row.grand-total {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--primary);
  border-top: 2px solid #cbd5e1;
  padding-top: 0.5rem;
  margin-top: 0.4rem;
}

.amount-words-text {
  font-size: 0.8rem;
  font-style: italic;
  color: #475569;
  margin-top: 0.35rem;
}

/* --------------------------------------------------------------------------
   STRICT A4 PRINT & LIVE PREVIEW CONTAINER
   -------------------------------------------------------------------------- */
.a4-preview-scroll-wrapper {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  overflow-y: auto;
  max-height: calc(100vh - 100px);
  padding: 0.5rem;
}

/* Individual A4 Page representation on screen - Balanced, Professional Commercial Layout */
.a4-sheet {
  width: 210mm;
  min-height: 297mm;
  padding: 8mm 12mm 0 12mm;
  background: #ffffff;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  position: relative;
  overflow: hidden;
  font-family: 'Segoe UI', -apple-system, BlinkMacSystemFont, Roboto, Helvetica, Arial, sans-serif;
  color: #1e293b;
  page-break-after: always;
}

/* Top Right Geometric Corner Accent */
.top-right-accent {
  position: absolute;
  top: 0;
  right: 0;
  width: 220px;
  height: 72px;
  pointer-events: none;
  z-index: 1;
}

/* Letterhead Top Banner with Triple-Color Accent Underline */
.letterhead-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 2;
  padding-bottom: 8px;
  margin-bottom: 10px;
  border-bottom: 3.5px solid transparent;
  border-image: linear-gradient(to right, #063967 0%, #063967 55%, #1d79b9 55%, #1d79b9 78%, #ff850b 78%, #ff850b 100%) 1;
}

.lh-left-logo {
  display: flex;
  align-items: center;
  gap: 15px;
  max-width: 62%;
}

.lh-logo-box {
  width: 68px;
  height: 68px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #ffffff;
  border-radius: 8px;
}

.lh-logo-img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.lh-company-text h2 {
  font-size: 21px;
  font-weight: 900;
  letter-spacing: 0.5px;
  color: #0b2545;
  text-transform: uppercase;
  margin: 0;
  line-height: 1.15;
}

.lh-company-text .lh-tagline {
  font-size: 11px;
  font-weight: 800;
  color: #ea580c; /* Vibrant Orange/Amber */
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-top: 3px;
}

.lh-company-text .lh-address {
  font-size: 10.5px;
  color: #64748b;
  margin-top: 3px;
  line-height: 1.35;
}

.lh-right-contact {
  text-align: right;
  padding-right: 48px; /* space from corner graphic */
  font-size: 10.5px;
  line-height: 1.45;
}

.gstin-pill {
  display: inline-block;
  background: #fef2f2;
  border: 1px solid #fca5a5;
  color: #b91c1c;
  font-weight: 800;
  font-size: 11px;
  padding: 3px 10px;
  border-radius: 4px;
  margin-bottom: 5px;
  letter-spacing: 0.5px;
}

.contact-list {
  display: flex;
  flex-direction: column;
  gap: 3.5px;
}

.contact-item {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  color: #334155;
  font-size: 10.5px;
}

.contact-icon-circle {
  width: 16px;
  height: 16px;
  background: #0b2545;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 8.5px;
  flex-shrink: 0;
}

/* Quotation Meta & Client Box - Balanced 3-Column Grid */
.meta-grid {
  display: grid;
  grid-template-columns: 1.3fr 1fr 200px;
  gap: 16px;
  align-items: center;
  margin-top: 2px;
  margin-bottom: 12px;
}

.to-box {
  border-left: 3px solid #0b2545;
  padding-left: 10px;
  font-size: 11.5px;
  line-height: 1.45;
}

.to-header {
  font-size: 11.5px;
  font-weight: 800;
  color: #0b2545;
  text-transform: uppercase;
  margin-bottom: 2px;
}

.client-name-row {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 13px;
  font-weight: 800;
  color: #0b2545;
}

.client-detail-row {
  display: flex;
  align-items: center;
  gap: 5px;
  color: #475569;
  margin-top: 1px;
}

.quotation-center-heading {
  text-align: center;
}

.quotation-center-heading h2 {
  font-size: 27px;
  font-weight: 900;
  color: #0b2545;
  letter-spacing: 1.5px;
  margin: 0;
}

.quotation-center-heading .underline-bar {
  width: 65px;
  height: 3.5px;
  background: #f59e0b;
  margin: 4px auto 0 auto;
  border-radius: 2px;
}

.quote-meta-card {
  background: #f0f7ff;
  border: 1px solid #dbeafe;
  border-radius: 7px;
  padding: 8px 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.meta-badge-row {
  display: flex;
  align-items: center;
  gap: 8px;
}

.meta-icon-box {
  width: 27px;
  height: 27px;
  background: #ffffff;
  border: 1px solid #bfdbfe;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  color: #0284c7;
}

.meta-text-group {
  display: flex;
  flex-direction: column;
}

.meta-label {
  font-size: 9.5px;
  color: #64748b;
  line-height: 1;
}

.meta-val {
  font-size: 12.5px;
  font-weight: 800;
  color: #0b2545;
  line-height: 1.2;
}

/* Subject Bar - Gradient Pill */
.subject-bar {
  background: linear-gradient(90deg, #eef6fd, #f8fbfe);
  border: 1px solid #dbeafe;
  border-radius: 6px;
  padding: 7px 12px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 11.5px;
  font-weight: 700;
  color: #0b2545;
  margin-bottom: 12px;
}

/* Printed Line Items Table - Solid Deep Navy Header with Spacious Padding */
.preview-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 10.5px;
  margin-bottom: 12px;
  border-radius: 4px;
  overflow: hidden;
}

.preview-table th {
  background-color: #0b2545 !important;
  color: #ffffff !important;
  border: 1px solid #0b2545 !important;
  padding: 7px 7px;
  font-weight: 800;
  text-transform: uppercase;
  font-size: 10.5px;
  letter-spacing: 0.3px;
  text-align: center;
}

.preview-table td {
  border: 1px solid #e2e8f0;
  padding: 6.5px 7px;
  vertical-align: middle;
  color: #1e293b;
}

.preview-table tr:nth-child(even) td {
  background-color: #f8fafc;
}

.preview-table td.text-left {
  text-align: left;
  white-space: pre-line;
  word-break: break-word;
  line-height: 1.35;
}

.preview-table .text-center { text-align: center; }
.preview-table .text-right { text-align: right; }
.preview-table .text-left { text-align: left; }
.preview-table .font-bold { font-weight: 700; }
.preview-table td strong { color: #0b2545; }

/* Totals & Commercial Terms Layout - Spacious & Comfortable */
.preview-bottom-block {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 18px;
  margin-top: 6px;
  page-break-inside: avoid;
}

.terms-header {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11.5px;
  font-weight: 800;
  color: #0b2545;
  margin-bottom: 7px;
}

.terms-list {
  display: flex;
  flex-direction: column;
  gap: 5.5px;
  font-size: 10.5px;
  color: #334155;
}

.term-item {
  display: flex;
  align-items: flex-start;
  gap: 7px;
  line-height: 1.4;
}

.term-num {
  width: 17px;
  height: 17px;
  background: #cfe3f5;
  color: #0b2545;
  border-radius: 50%;
  font-size: 9px;
  font-weight: 800;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 1px;
}

.term-text strong {
  color: #0b2545;
}

.totals-wrapper {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.preview-totals-box {
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  background-color: #f8fafc;
  overflow: hidden;
}

.preview-totals-box .p-row {
  display: flex;
  justify-content: space-between;
  padding: 6px 12px;
  font-size: 11px;
  color: #334155;
  border-bottom: 1px solid #e2e8f0;
}

.preview-totals-box .p-row:last-child {
  border-bottom: none;
}

.preview-totals-box .p-grand {
  background-color: #0b2545 !important;
  color: #ffffff !important;
  font-size: 13.5px;
  font-weight: 900;
  padding: 8px 12px;
  letter-spacing: 0.3px;
  border-top: none;
}

.preview-words-row {
  font-size: 10px;
  font-weight: 700;
  background: #f8fafc;
  padding: 4px 8px;
  border: 1px dashed #cbd5e1;
  border-radius: 4px;
  margin-top: 6px;
  color: #334155;
}

/* Signatory & Official Original Signature Image */
.signatory-container {
  text-align: right;
  padding-top: 2px;
}

.sign-company {
  font-size: 11px;
  font-weight: 800;
  color: #0b2545;
}

.original-signature-img {
  height: 40px;
  width: auto;
  max-width: 140px;
  margin: 3px 0 2px auto;
  display: block;
  object-fit: contain;
}

.sign-name {
  font-size: 13px;
  font-weight: 900;
  color: #0b2545;
  line-height: 1.1;
}

.sign-title {
  font-size: 9.5px;
  color: #64748b;
  margin-top: 1px;
}

/* Full Width Dual Tone Footer Bar */
.sheet-footer-strip {
  display: flex;
  align-items: stretch;
  height: 44px;
  background: #f1f5f9;
  border-top: 1px solid #e2e8f0;
  margin-top: auto;
  position: relative;
  overflow: hidden;
  margin-left: -12mm;
  margin-right: -12mm;
  margin-bottom: 0;
}

.footer-left {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 0 16px;
  font-size: 9.5px;
  color: #334155;
  flex-grow: 1;
  z-index: 2;
}

.footer-contact-item {
  display: flex;
  align-items: center;
  gap: 4px;
}

.footer-icon {
  width: 15px;
  height: 15px;
  background: #0b2545;
  color: #ffffff;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 8px;
}

.footer-right-skew {
  display: flex;
  align-items: center;
  background: #0b2545;
  color: #ffffff;
  padding: 0 22px 0 28px;
  clip-path: polygon(18% 0, 100% 0, 100% 100%, 0% 100%);
  position: relative;
  z-index: 2;
  margin-left: -10px;
}

.footer-orange-bar {
  width: 7px;
  background: #f59e0b;
  transform: skewX(-20deg);
  margin-right: 12px;
  height: 100%;
}

.footer-tagline-block {
  text-align: right;
  line-height: 1.25;
}

.footer-tagline-sub {
  font-size: 8px;
  color: #cbd5e1;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.footer-tagline-main {
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

/* Running Continuation Header for Page 2+ */
.continuation-header {
  display: flex;
  justify-content: space-between;
  border-bottom: 2px solid #0b2545;
  padding-bottom: 4px;
  margin-bottom: 8px;
  font-size: 11px;
  font-weight: 700;
  color: #0b2545;
}

.page-number-footer {
  text-align: center;
  font-size: 8.5px;
  color: #64748b;
  margin-top: 6px;
  margin-bottom: 4px;
}

/* --------------------------------------------------------------------------
   Modal Windows (Settings, Product Master, History, Backup)
   -------------------------------------------------------------------------- */
.modal-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(15, 23, 42, 0.6);
  z-index: 1000;
  align-items: center;
  justify-content: center;
  backdrop-filter: blur(2px);
}

.modal-overlay.active {
  display: flex !important;
  display: flex;
}

.modal-card {
  background: #ffffff;
  border-radius: 8px;
  width: 90%;
  max-width: 650px;
  max-height: 85vh;
  display: flex;
  flex-direction: column;
  box-shadow: 0 10px 25px rgba(0,0,0,0.2);
  overflow: hidden;
}

.modal-card.modal-lg {
  max-width: 900px;
}

.modal-header {
  padding: 0.85rem 1.25rem;
  background-color: #f8fafc;
  border-bottom: 1px solid #e2e8f0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.modal-header h3 {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--primary);
}

.modal-body {
  padding: 1.25rem;
  overflow-y: auto;
  flex: 1;
}

.modal-footer {
  padding: 0.75rem 1.25rem;
  background-color: #f8fafc;
  border-top: 1px solid #e2e8f0;
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
}

/* Toast Notification */
.toast-container {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 2000;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.toast {
  background: #1e293b;
  color: #ffffff;
  padding: 0.65rem 1rem;
  border-radius: 6px;
  font-size: 0.85rem;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  display: flex;
  align-items: center;
  gap: 8px;
  animation: slideIn 0.2s ease-out;
}

@keyframes slideIn {
  from { transform: translateX(100%); opacity: 0; }
  to { transform: translateX(0); opacity: 1; }
}

/* --------------------------------------------------------------------------
   STRICT A4 PRINT STYLESHEET (NO BROWSER URL / FILE HEADERS OR FOOTERS)
   -------------------------------------------------------------------------- */
@media print {
  @page {
    size: A4 portrait;
    margin: 0mm; /* Completely removes browser URL (file://), date, time, and title */
  }

  * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  html, body {
    margin: 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
    color: #000000 !important;
    width: 210mm !important;
  }

  .top-navbar,
  .editor-panel,
  .preview-header-bar,
  .modal-overlay,
  .toast-container,
  .no-print {
    display: none !important;
  }

  .app-container {
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
    max-width: none !important;
    width: 210mm !important;
  }

  .preview-panel,
  body.mode-editor-only .preview-panel,
  body.mode-preview-only .preview-panel {
    display: block !important;
    width: 210mm !important;
    margin: 0 auto !important;
  }

  .a4-preview-scroll-wrapper {
    overflow: visible !important;
    max-height: none !important;
    gap: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 210mm !important;
  }

  .a4-sheet {
    box-shadow: none !important;
    margin: 0 auto !important;
    padding: 8mm 12mm 0 12mm !important;
    width: 210mm !important;
    min-height: 297mm !important;
    height: auto !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    box-sizing: border-box !important;
    page-break-after: always !important;
    page-break-inside: avoid !important;
    background: #ffffff !important;
    position: relative !important;
    overflow: hidden !important;
  }

  .a4-sheet:last-child {
    page-break-after: auto !important;
  }

  .preview-table {
    page-break-inside: auto;
  }

  .preview-table thead {
    display: table-header-group !important;
  }

  .preview-table th {
    background-color: #0b2545 !important;
    color: #ffffff !important;
  }

  .preview-table tr {
    page-break-inside: avoid !important;
  }

  .preview-bottom-block {
    page-break-inside: avoid !important;
  }

  .sheet-footer-strip {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* ==========================================================================
   AUTHENTICATION & SECURITY MODAL STYLES
   ========================================================================== */
.auth-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10000;
  background: linear-gradient(135deg, #052e54 0%, #0a3d6e 50%, #021e38 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  backdrop-filter: blur(6px);
}
.auth-card {
  background: #ffffff;
  border-radius: 12px;
  padding: 36px 32px 30px 32px;
  width: 440px;
  max-width: 95%;
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.35);
  border: 1px solid rgba(255, 255, 255, 0.2);
  text-align: center;
  animation: authSlideDown 0.3s ease-out;
}
@keyframes authSlideDown {
  from { opacity: 0; transform: translateY(-20px) scale(0.97); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
.auth-logo-box {
  width: 80px;
  height: 80px;
  margin: 0 auto 12px auto;
  background: #ffffff;
  border: 1.5px solid #d0dbe7;
  border-radius: 10px;
  padding: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(5, 46, 84, 0.12);
}
.auth-logo-box img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.auth-header-text h2 {
  font-family: 'UPBOLTERS', Impact, sans-serif;
  font-style: italic;
  font-weight: 900;
  font-size: 20px;
  color: #052e54;
  letter-spacing: 0.6px;
  margin-bottom: 4px;
  text-transform: uppercase;
  line-height: 1.15;
}
.auth-header-text p {
  font-size: 11px;
  color: #e66a00;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  margin-bottom: 18px;
}
.auth-divider {
  height: 2px;
  background: linear-gradient(to right, #052e54, #0284c7, #ff850b);
  margin-bottom: 20px;
  border-radius: 1px;
}
.auth-alert {
  padding: 10px 14px;
  border-radius: 6px;
  font-size: 0.82rem;
  font-weight: 600;
  margin-bottom: 16px;
  text-align: left;
}
.auth-alert.error {
  background: #fef2f2;
  color: #991b1b;
  border: 1px solid #fecaca;
}
.auth-alert.success {
  background: #f0fdf4;
  color: #166534;
  border: 1px solid #bbf7d0;
}
.input-icon-wrap {
  position: relative;
  display: flex;
  align-items: center;
}
.input-icon {
  position: absolute;
  left: 12px;
  font-size: 1rem;
  pointer-events: none;
  opacity: 0.7;
}
.input-icon-wrap .form-control {
  padding-left: 38px;
}
.user-nav-badge {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 800;
  color: #052e54;
  background: #f1f5f9;
  padding: 5px 10px;
  border-radius: 6px;
  border: 1px solid #cbd5e1;
}
.user-avatar-icon {
  font-size: 12px;
}

/* BULK EXCEL IMPORT STYLES */
.bulk-paste-area {
  width: 100%;
  height: 130px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.8rem;
  padding: 10px;
  border: 1.5px dashed #0284c7;
  background: #f8fafc;
  border-radius: 6px;
  resize: vertical;
  line-height: 1.4;
  box-sizing: border-box;
}
.bulk-paste-area:focus {
  outline: none;
  border-color: #0369a1;
  background: #ffffff;
  box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.15);
}


/* ===== CLIENT APPROVED OPTION 1 LAYOUT STYLES ===== */
@font-face {
    font-family: 'UPBOLTERS';
    font-style: italic;
    font-weight: 900;
    src: url('data:font/woff;base64,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') format('woff');
  }

  * { box-sizing: border-box; margin: 0; padding: 0; }
  body {
    background: #e6edf4;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    color: #0f2744;
    padding: 20px 16px;
    display: flex;
    justify-content: center;
    -webkit-font-smoothing: antialiased;
  }
  .sheet {
    width: 980px;
    background: #ffffff;
    box-shadow: 0 14px 40px rgba(15, 45, 75, 0.14);
    border-radius: 8px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
  }

  /* HEADER */
  .header-wrap {
    position: relative;
    padding: 18px 28px 14px 28px;
    background: #ffffff;
    border-bottom: 3.5px solid transparent;
    border-image: linear-gradient(to right, #063967 52%, #0284c7 74%, #ff850b 100%) 1;
    overflow: hidden;
  }
  .header-chevron-bg {
    position: absolute;
    top: 0;
    right: 0;
    width: 80px;
    height: 100%;
    pointer-events: none;
    z-index: 1;
  }
  .header-content {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding-right: 68px;
  }
  .brand-block {
    display: flex;
    align-items: center;
    gap: 15px;
    flex: 1 1 auto;
    min-width: 0;
  }
  .logo-box {
    width: 72px;
    height: 72px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    border: 1.5px solid #d0dbe7;
    border-radius: 8px;
    padding: 3px;
    box-shadow: 0 3px 10px rgba(6, 57, 103, 0.1);
  }
  .logo-box img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
  }
  .brand-text {
    min-width: 0;
  }
  /* BOLD COMPANY NAME IN UPBOLTERS ITALIC ON ONE SINGLE LINE */
  .brand-text h1 {
    font-family: 'UPBOLTERS', 'Impact', sans-serif;
    font-style: italic;
    font-weight: 900;
    font-size: 23.5px;
    color: #052e54;
    letter-spacing: 0.8px;
    line-height: 1.1;
    text-transform: uppercase;
    white-space: nowrap;
    -webkit-text-stroke: 0.5px #052e54;
    text-shadow: 0 0.5px 1px rgba(5, 46, 84, 0.25);
  }
  .brand-text .sub-line {
    font-size: 10.5px;
    font-weight: 800;
    color: #e66a00;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    margin-top: 3px;
    white-space: nowrap;
  }
  .brand-text .address-line {
    font-size: 10px;
    font-weight: 600;
    color: #475569;
    margin-top: 2px;
    white-space: nowrap;
  }

  /* CONTACTS BLOCK: CIRCULAR MOBILE ICONS, NO LANDLINE, NO NAMES */
  .contacts-block {
    flex-shrink: 0;
    text-align: right;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4.5px;
    background: #f1f6fb;
    border: 1.5px solid #cbdced;
    border-radius: 6px;
    padding: 7px 14px;
  }
  .gstin-pill {
    display: inline-block;
    background: #fee2e2;
    border: 1.5px solid #ef4444;
    color: #991b1b;
    font-weight: 900;
    font-size: 10px;
    padding: 2.5px 8px;
    border-radius: 4px;
    letter-spacing: 0.6px;
  }
  .contact-numbers-grid {
    display: flex;
    flex-direction: column;
    gap: 3.5px;
    font-size: 11px;
    color: #0f2744;
    text-align: right;
    white-space: nowrap;
  }
  .contact-numbers-grid .phone-line {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 7px;
  }
  .phone-circle-icon {
    width: 17px;
    height: 17px;
    border-radius: 50%;
    background: #0284c7;
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 1px 3px rgba(2, 132, 199, 0.25);
  }
  .phone-circle-icon svg {
    width: 9.5px;
    height: 9.5px;
  }
  .contact-numbers-grid strong {
    color: #052e54;
    font-weight: 800;
    letter-spacing: 0.4px;
  }

  /* MAIN BODY CANVAS */
  .main-canvas {
    padding: 14px 28px 10px 28px;
    flex-grow: 1;
    display: block;
  }

  .recipient-meta-row {
    display: grid;
    grid-template-columns: 1.35fr 1fr 215px;
    gap: 16px;
    align-items: center;
    margin-bottom: 10px;
  }
  .recipient-card {
    border-left: 3.5px solid #063967;
    background: #f8fafc;
    border-radius: 0 4px 4px 0;
    padding: 8px 12px;
    font-size: 11px;
    line-height: 1.45;
    border-top: 1px solid #e2e8f0;
    border-right: 1px solid #e2e8f0;
    border-bottom: 1px solid #e2e8f0;
  }
  .recipient-tag {
    font-size: 9.5px;
    font-weight: 800;
    color: #e66a00;
    text-transform: uppercase;
    letter-spacing: 0.4px;
  }
  .recipient-name {
    font-size: 14px;
    font-weight: 900;
    color: #052e54;
    margin: 2px 0;
    letter-spacing: 0.2px;
  }
  .recipient-detail {
    color: #334155;
    font-weight: 600;
  }
  .recipient-detail strong {
    color: #052e54;
    font-weight: 800;
  }

  /* QUOTATION TITLE IN TIMES NEW ROMAN BOLD */
  .quotation-title-wrap {
    text-align: center;
  }
  .quotation-title-wrap h2 {
    font-family: 'Times New Roman', Times, serif;
    font-size: 29px;
    font-weight: 900;
    color: #052e54;
    letter-spacing: 2.5px;
    line-height: 1;
    text-transform: uppercase;
  }
  .title-underline {
    width: 68px;
    height: 4px;
    background: #ff850b;
    margin: 5px auto 0;
    border-radius: 2px;
  }

  .meta-pills-card {
    background: #f1f6fb;
    border: 1.5px solid #cbdced;
    border-radius: 6px;
    padding: 8px 12px;
    display: flex;
    flex-direction: column;
    gap: 6px;
  }
  .meta-pill-item {
    display: flex;
    align-items: center;
    gap: 9px;
  }
  .meta-icon-bubble {
    width: 26px;
    height: 26px;
    background: #ffffff;
    border: 1.5px solid #93c5fd;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    color: #0284c7;
    flex-shrink: 0;
  }
  .meta-lbl {
    font-size: 9px;
    color: #475569;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.3px;
  }
  .meta-val {
    font-size: 13px;
    font-weight: 900;
    color: #052e54;
    letter-spacing: 0.3px;
  }

  .subject-strip {
    background: linear-gradient(90deg, #eef6fd 0%, #f8fbfe 100%);
    border: 1.5px solid #cbdced;
    border-radius: 5px;
    padding: 8px 12px;
    font-size: 11.5px;
    font-weight: 700;
    color: #052e54;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 7px;
  }
  .subject-strip strong {
    color: #063967;
    font-weight: 900;
  }

  /* TABLE */
  .table-container {
    margin-bottom: 10px;
    border: 1.5px solid #cbdced;
    border-radius: 5px;
    overflow: hidden;
  }
  .q-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 11.5px;
  }
  .q-table th {
    background: #063967;
    color: #ffffff;
    font-weight: 800;
    padding: 9px 10px;
    font-size: 10.5px;
    letter-spacing: 0.5px;
    border-right: 1px solid rgba(255,255,255,0.25);
    text-transform: uppercase;
  }
  .q-table th:last-child {
    border-right: none;
  }
  .q-table td {
    padding: 8.5px 10px;
    border-right: 1px solid #d3e1ee;
    border-top: 1px solid #d3e1ee;
    vertical-align: middle;
    color: #1e293b;
  }
  .q-table tr:nth-child(even) td {
    background: #f7fafd;
  }
  .q-table td:last-child {
    border-right: none;
  }
  .td-bold {
    font-weight: 800;
    color: #052e54;
  }

  /* BOTTOM SECTION: SITS DIRECTLY UNDER TABLE */
  .bottom-split {
    display: grid;
    grid-template-columns: 1.35fr 1fr;
    gap: 16px;
    align-items: start;
    margin-bottom: 8px;
  }
  .terms-card {
    background: linear-gradient(135deg, #f0f6fc 0%, #f8fbfe 100%);
    border: 1.5px solid #cbdced;
    border-radius: 6px;
    padding: 10px 14px;
  }
  .terms-title {
    font-size: 11.5px;
    font-weight: 900;
    color: #052e54;
    margin-bottom: 7px;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 6px;
    letter-spacing: 0.3px;
  }
  .terms-list {
    display: flex;
    flex-direction: column;
    gap: 5.5px;
    font-size: 10.5px;
    color: #1e293b;
    line-height: 1.4;
  }
  .term-item {
    display: flex;
    align-items: flex-start;
    gap: 7px;
  }
  .term-badge {
    width: 17px;
    height: 17px;
    background: #cfe3f5;
    color: #063967;
    border-radius: 50%;
    font-size: 9px;
    font-weight: 900;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 1px;
  }
  .term-item strong {
    color: #052e54;
    font-weight: 800;
  }

  .right-financial-block {
    display: flex;
    flex-direction: column;
    gap: 6px;
  }
  .totals-box {
    background: #ffffff;
    border: 1.5px solid #cbdced;
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 2px 6px rgba(15, 45, 75, 0.05);
  }
  .t-row {
    display: flex;
    justify-content: space-between;
    padding: 6.5px 11px;
    font-size: 11.5px;
    border-bottom: 1px solid #d5e2ef;
    color: #334155;
    font-weight: 600;
  }
  .t-row strong {
    color: #052e54;
    font-weight: 800;
    font-size: 12px;
  }
  .t-row.even {
    background: #f8fafc;
  }
  .t-row.grand-total {
    background: #063967;
    color: #ffffff;
    font-size: 14px;
    font-weight: 900;
    padding: 8px 11px;
    border-bottom: none;
    letter-spacing: 0.4px;
  }
  .t-row.grand-total span:last-child {
    color: #ffedd5;
    font-size: 15px;
  }

  /* SIGNATURE BLOCK: A BIT RIGHT SIDE & SLIGHT BIG, NATURAL ROYAL BLUE INK */
  .signature-block {
    text-align: right;
    padding-right: 4px;
    margin-top: 2px;
  }
  .sig-company-label {
    font-size: 10.5px;
    font-weight: 900;
    color: #052e54;
    text-transform: uppercase;
    letter-spacing: 0.4px;
  }
  .sig-image-wrap {
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin: 0;
  }
  .sig-image-wrap img {
    height: 78px;
    max-width: 195px;
    object-fit: contain;
    filter: drop-shadow(0 1px 2px rgba(12, 45, 155, 0.22));
  }
  .sig-name {
    font-size: 13px;
    font-weight: 900;
    color: #052e54;
    line-height: 1.1;
    letter-spacing: 0.5px;
  }
  .sig-designation {
    font-size: 9.5px;
    color: #475569;
    font-weight: 700;
    margin-top: 2px;
  }

  /* FOOTER */
  .footer-bar {
    background: #f1f5f9;
    border-top: 1.5px solid #bfd4e8;
    display: flex;
    align-items: stretch;
    min-height: 44px;
    margin-top: 4px;
  }
  .footer-contacts-strip {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px 20px;
    padding: 8px 24px;
    font-size: 10.5px;
    color: #1e293b;
    font-weight: 600;
    flex-grow: 1;
  }
  .footer-item {
    display: flex;
    align-items: center;
    gap: 6px;
  }
  .footer-item strong {
    color: #052e54;
    font-weight: 800;
  }
  .footer-motto-tag {
    background: linear-gradient(115deg, #0284c7 0%, #063967 100%);
    color: #ffffff;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.6px;
    padding: 10px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-transform: uppercase;
    position: relative;
    white-space: nowrap;
  }
  .footer-motto-tag::before {
    content: "";
    position: absolute;
    left: -14px;
    top: 0;
    bottom: 0;
    width: 15px;
    background: #ff850b;
    transform: skewX(-24deg);
  }
/* Ensure .a4-sheet inherits exact approved layout styles */
.a4-sheet {
  width: 210mm !important;
  min-height: 297mm !important;
  height: auto !important;
  padding: 0 !important;
  background: #ffffff !important;
  box-shadow: 0 10px 30px rgba(0,0,0,0.15) !important;
  margin: 0 auto 30px auto !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  position: relative !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  font-family: 'Segoe UI', -apple-system, BlinkMacSystemFont, Roboto, sans-serif !important;
  color: #1e293b !important;
  page-break-after: always;
}

@media print {
  body {
    background: #ffffff !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .app-container, .navbar, .editor-panel, .floating-actions, .auth-overlay, .modal-backdrop {
    display: none !important;
  }
  .preview-panel {
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
  }
  .preview-sheets-container {
    padding: 0 !important;
    gap: 0 !important;
  }
  .a4-sheet {
    box-shadow: none !important;
    margin: 0 !important;
    width: 210mm !important;
    height: 297mm !important;
    page-break-after: always !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
}


/* ===== COMPREHENSIVE MULTI-SCREEN RESPONSIVE ARCHITECTURE ===== */

/* ==============================================================================
   COMPREHENSIVE MULTI-SCREEN RESPONSIVE ARCHITECTURE
   ============================================================================== */

/* Mobile Hamburger Toggle */
.mobile-menu-toggle {
  display: none;
  background: transparent;
  border: 1.5px solid #cbd5e1;
  border-radius: 6px;
  color: #063967;
  font-size: 20px;
  width: 40px;
  height: 40px;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  flex-shrink: 0;
  transition: all 0.2s ease;
}
.mobile-menu-toggle:hover {
  background: #f1f5f9;
  border-color: #063967;
}

/* Mobile Slide-Over Drawer */
.mobile-drawer-backdrop {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(15, 23, 42, 0.65);
  backdrop-filter: blur(4px);
  z-index: 2500;
  opacity: 0;
  transition: opacity 0.25s ease;
}
.mobile-drawer-backdrop.active {
  display: block;
  opacity: 1;
}
.mobile-drawer-content {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 86%;
  max-width: 340px;
  background: #0b2545;
  color: #ffffff;
  display: flex;
  flex-direction: column;
  box-shadow: -6px 0 25px rgba(0,0,0,0.4);
  transform: translateX(100%);
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  overflow-y: auto;
}
.mobile-drawer-backdrop.active .mobile-drawer-content {
  transform: translateX(0);
}
.drawer-header {
  padding: 18px 20px;
  background: #061c33;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(255,255,255,0.1);
}
.drawer-user-info {
  display: flex;
  align-items: center;
  gap: 12px;
}
.drawer-user-info .user-avatar-icon {
  width: 36px;
  height: 36px;
  background: #0284c7;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
}
.btn-close-drawer {
  background: rgba(255,255,255,0.1);
  border: none;
  color: #ffffff;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  font-size: 16px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.drawer-body {
  padding: 16px 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.drawer-section-title {
  font-size: 10px;
  font-weight: 800;
  color: #94a3b8;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  margin: 12px 6px 4px 6px;
}
.drawer-btn {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 8px;
  color: #f8fafc;
  font-size: 13.5px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
  transition: all 0.15s ease;
  width: 100%;
}
.drawer-btn:hover {
  background: rgba(255,255,255,0.14);
  color: #ffffff;
}
.drawer-btn-logout {
  background: rgba(239, 68, 68, 0.15);
  border-color: rgba(239, 68, 68, 0.3);
  color: #fca5a5;
  margin-top: 8px;
}

/* Sticky Bottom Action Bar for Mobile Screens */
.mobile-bottom-bar {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: #ffffff;
  border-top: 1.5px solid #e2e8f0;
  box-shadow: 0 -4px 15px rgba(0,0,0,0.08);
  padding: 6px 12px;
  z-index: 1500;
  justify-content: space-around;
  align-items: center;
}
.m-bottom-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  color: #0f2744;
  font-size: 16px;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 6px;
  min-width: 54px;
  gap: 2px;
}
.m-bottom-btn small {
  font-size: 10px;
  font-weight: 700;
  color: #475569;
}
.m-bottom-btn.m-btn-primary {
  background: #063967;
  color: #ffffff;
  padding: 6px 14px;
  box-shadow: 0 2px 8px rgba(6, 57, 103, 0.3);
}
.m-bottom-btn.m-btn-primary small {
  color: #ffffff;
}

/* ------------------------------------------------------------------------------
   TABLET RESPONSIVE RULES (max-width: 1024px)
   ------------------------------------------------------------------------------ */
@media screen and (max-width: 1024px) {
  .app-container {
    grid-template-columns: 1fr !important;
    gap: 1rem;
    padding: 0.75rem;
  }
  
  /* On tablets and phones, default view mode switch: hide split view, show either Editor or Preview */
  body:not(.mode-preview-only) .preview-panel {
    display: none !important;
  }
  body.mode-preview-only .editor-panel {
    display: none !important;
  }
  body.mode-preview-only .preview-panel {
    display: flex !important;
    width: 100% !important;
  }

  .preview-sheets-container {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    overflow-x: hidden;
  }
}

/* ------------------------------------------------------------------------------
   MOBILE SMARTPHONE RULES (max-width: 768px)
   ------------------------------------------------------------------------------ */
@media screen and (max-width: 768px) {
  body {
    padding-bottom: 64px !important; /* Space for sticky mobile bottom bar */
  }

  .mobile-menu-toggle {
    display: inline-flex !important;
  }
  .mobile-bottom-bar {
    display: flex !important;
  }

  /* Top Navbar layout */
  .top-navbar {
    padding: 8px 12px;
    flex-wrap: nowrap;
    justify-content: space-between;
  }
  .brand-section {
    gap: 8px;
  }
  .brand-logo-small {
    width: 32px;
    height: 32px;
  }
  .brand-title h1 {
    font-size: 13px !important;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 220px;
  }
  .brand-title p {
    font-size: 10px !important;
  }

  /* Hide bloated button row on mobile; accessible via Mobile Drawer and Bottom Bar */
  .nav-actions {
    display: none !important;
  }

  .card-header {
    flex-wrap: wrap;
    gap: 6px;
    align-items: flex-start !important;
  }

  /* Form Grids on Mobile: Clean single-column stacking */
  .form-grid-4, .form-grid-3, .form-grid-2 {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  .form-group label {
    font-size: 12px !important;
    font-weight: 700;
  }
  .form-group input, .form-group select, .form-group textarea {
    font-size: 16px !important; /* Prevents auto-zoom in Safari iOS */
    min-height: 44px !important;
    padding: 8px 12px !important;
  }

  /* Material Items Table: Smooth horizontal touch scroll */
  .items-table-container {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    border: 1px solid #cbd5e1;
    border-radius: 6px;
  }
  .items-table {
    min-width: 650px !important;
  }

  /* Full-Screen Mobile Modals */
  .modal-overlay {
    padding: 10px !important;
    align-items: flex-end !important; /* Bottom-sheet style on mobile */
  }
  .modal-card {
    width: 100% !important;
    max-width: 100% !important;
    max-height: 92vh !important;
    border-radius: 14px 14px 0 0 !important;
  }
  .modal-header {
    padding: 14px 16px;
  }
  .modal-body {
    padding: 14px 16px;
    max-height: calc(92vh - 120px) !important;
  }

  /* Auth Screen on Mobile */
  .auth-card {
    width: 95% !important;
    padding: 24px 18px !important;
    margin: 10px !important;
  }

  /* A4 Preview Scaling on Mobile */
  .a4-preview-scroll-wrapper {
    align-items: flex-start !important;
    padding: 8px 12px 70px 12px !important;
    overflow-x: hidden !important;
    width: 100% !important;
  }
  .a4-sheet {
    box-shadow: 0 4px 15px rgba(0,0,0,0.1) !important;
  }
}

/* ------------------------------------------------------------------------------
   SMALL SMARTPHONES (max-width: 480px)
   ------------------------------------------------------------------------------ */
@media screen and (max-width: 480px) {
  .card-header {
    flex-direction: column;
    align-items: flex-start !important;
    gap: 8px;
  }
  .card-header > div {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 6px;
  }
  #btnOpenBulkImport {
    width: 100%;
    justify-content: center;
  }
}
