@import "tailwindcss"; /* Card Layout Optimizations for All Screen Sizes */ .item-card { border: 1px solid #e5e7eb; margin-bottom: 1rem; position: relative; overflow: hidden; } .item-card input, .item-card textarea { font-size: 16px; /* Prevent zoom on iOS */ } /* Enhanced spacing for larger screens */ @media (width >= 768px) { .item-card { margin-bottom: 1rem; } .item-card input, .item-card textarea { font-size: 16px; } } @media (width >= 768px) { .item-card .grid-cols-1 { grid-template-columns: repeat(2, 1fr); } } /* Enhanced amount display */ .item-amount { text-shadow: 0 1px 2px rgb(0 0 0 / 10%); } /* Removed scroll enhancement and focus ring */ .quotation-print { max-width: 800px; margin: auto; border: 1px solid #000; padding: 15px; font-size: 12px; line-height: 1.3; } .quotation-print h2 { text-align: center; margin-bottom: 10px; font-size: 18px; } .quotation-print .section { margin-bottom: 8px; } .totals table { float: right; border: none; width: 100%; border-collapse: collapse; } .totals td { border: 1px solid #000; padding: 8px; } .disclaimer { color: #555; margin-top: 10px; font-size: 8px; text-align: justify; border-top: 1px solid #000; padding-top: 5px; } .quote-meta { text-align: right; } .header { display: flex; justify-content: space-between; margin-bottom: 20px; } .company-details h1 { margin: 0; font-size: 18px; color: #036; font-family: Arial, Helvetica, sans-serif; } .quotation-title h1 { margin: 0; font-size: 18px; color: #036; text-align: right; } .quote-meta table { border-collapse: collapse; width: 100%; } .quote-meta td { border: 1px solid #000; padding: 5px; } .customer-info { border: 1px solid #000; padding: 8px; margin-bottom: 10px; font-size: 11px; } .items-table-print { width: 100%; border-collapse: collapse; margin-bottom: 10px; font-size: 10px; } .items-table-print th, .items-table-print td { border: 1px solid #000; padding: 4px; text-align: left; } .items-table-print thead th { background-color: #e0f2f7; } .footer { margin-top: 10px; } .notes-and-total { display: flex; justify-content: space-between; margin-bottom: 5px; } .notes { width: 60%; font-size: 10px; line-height: 1.2; } .totals { width: 35%; } .totals td:first-child { text-align: right; } .thank-you { text-align: center; margin-top: 10px; font-weight: bold; font-size: 12px; } @media print { html, body { height: 100%; margin: 0; padding: 0; } @page { size: a4; margin: 8mm; } body { font-size: 10pt; line-height: 1.2; } .quotation-print { max-width: 100%; padding: 10px; margin: auto; border: 1px solid #000; font-size: 10px; line-height: 1.2; } .items-table-print, .items-table-print tr, .items-table-print td { page-break-inside: avoid !important; } .header, .customer-info, .footer, .notes-and-total, .disclaimer, .thank-you { page-break-inside: avoid !important; } button { display: none; } /* Hide all content except the print modal during printing */ body > *:not(.print-modal) { display: none !important; } /* Show only the print modal content */ .print-modal { display: block !important; position: static !important; z-index: auto !important; background: white !important; margin: 0 !important; padding: 0 !important; } .print-modal > div { max-width: 100% !important; margin: 0 !important; padding: 0 !important; box-shadow: none !important; background: white !important; } /* Ensure single page printing */ .print-modal .quotation-print { page-break-after: avoid !important; page-break-before: avoid !important; margin: 0 !important; padding: 8px !important; } }