@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;500;600;700&display=swap";.sidebar{width:var(--sidebar-width);background-color:var(--bg-surface);border-right:1px solid var(--border-color);flex-direction:column;height:100%;display:flex}.sidebar-brand{border-bottom:1px solid var(--border-color);padding:1.5rem 2rem}.sidebar-brand h2{color:var(--color-green);margin-bottom:.25rem;font-weight:700}.brand-tag{color:var(--color-gold);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.sidebar-nav{flex-direction:column;gap:.5rem;padding:1.5rem 1rem;display:flex}.nav-item{color:var(--text-secondary);transition:all var(--transition-fast);border-radius:.5rem;align-items:center;gap:.75rem;padding:.75rem 1rem;font-weight:500;display:flex}.nav-item:hover{background-color:var(--bg-surface-hover);color:var(--text-primary)}.nav-item.active{color:var(--color-green);background-color:#2196531a}@media (width<=768px){.sidebar{width:100%;height:var(--bottom-nav-height);z-index:50;border-right:none;border-top:1px solid var(--border-color);flex-direction:row;position:fixed;bottom:0;left:0}.sidebar-brand{display:none}.sidebar-nav{flex-direction:row;justify-content:space-around;align-items:center;gap:0;width:100%;padding:0}.nav-item{border-radius:0;flex-direction:column;gap:.25rem;padding:.5rem;font-size:.65rem}}.notifications-container{display:inline-block;position:relative}.notifications-bell-btn{cursor:pointer;color:var(--text-secondary);transition:all var(--transition-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:.5rem;display:flex;position:relative}.notifications-bell-btn:hover{background-color:var(--bg-surface-hover);color:var(--text-primary)}.notifications-badge{background-color:var(--status-error);color:#fff;border:2px solid var(--bg-surface);border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:.65rem;font-weight:700;display:flex;position:absolute;top:2px;right:2px}.notifications-dropdown{background-color:var(--bg-surface);border:1px solid var(--border-color);width:320px;box-shadow:var(--shadow-lg);z-index:100;border-radius:.75rem;margin-top:.5rem;position:absolute;top:100%;right:0;overflow:hidden}.notifications-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1rem;display:flex}.notifications-header h4{margin:0;font-size:.95rem}.notifications-list{max-height:360px;overflow-y:auto}.no-notifications{text-align:center;color:var(--text-muted);padding:2rem 1rem;font-size:.875rem}.notification-item{border-bottom:1px solid var(--border-color);transition:background-color var(--transition-fast);gap:.75rem;padding:1rem;display:flex}.notification-item:hover{background-color:var(--bg-surface-hover)}.notification-item:last-child{border-bottom:none}.notification-icon{justify-content:center;align-items:center;margin-top:.15rem;display:flex}.notification-item.overdue .notification-icon{color:var(--status-error)}.notification-item.today .notification-icon{color:var(--status-warning)}.notification-content{flex-direction:column;flex:1;gap:.15rem;display:flex}.notification-title{color:var(--text-primary);font-size:.875rem}.notification-desc{color:var(--text-secondary);font-size:.75rem}.notification-date{color:var(--text-muted);font-size:.75rem}.text-red{color:var(--status-error);font-weight:600}.text-yellow{color:var(--status-warning);font-weight:600}.overdue-tag{text-transform:uppercase;font-size:.7rem;font-weight:600}.notification-item.overdue{background-color:#ef444405}.notification-item.today{background-color:#eab30805}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.stat-card{align-items:flex-start;gap:1rem;display:flex}.stat-icon-wrapper{background-color:var(--bg-surface-hover);border-radius:.75rem;padding:.75rem}.text-blue{color:var(--status-info)}.text-green{color:var(--color-green)}.text-gold{color:var(--color-gold)}.stat-content{flex-direction:column;display:flex}.stat-title{color:var(--text-secondary);font-size:.875rem;font-weight:500}.stat-value{margin-top:.25rem;margin-bottom:.25rem;font-size:1.75rem;font-weight:700}.stat-trend{color:var(--status-success);font-size:.75rem;font-weight:500}.dashboard-content{grid-template-columns:1fr;gap:1.5rem;display:grid}.recent-activity{min-height:300px}.table-controls{justify-content:space-between;margin-bottom:1.5rem;display:flex}.search-bar{width:100%;max-width:400px;position:relative}.search-icon{color:var(--text-muted);position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.search-input{padding-left:2.5rem}.table-responsive{overflow-x:auto}.data-table{border-collapse:collapse;white-space:nowrap;width:100%}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:1rem;font-size:.875rem}.data-table th{color:var(--text-secondary);background-color:var(--bg-surface-hover);font-weight:600}.data-table tr:hover{background-color:#00000003}.font-medium{color:var(--text-primary);font-weight:500}.action-buttons{gap:.5rem;display:flex}.btn-icon{cursor:pointer;transition:background-color var(--transition-fast);background:0 0;border:none;border-radius:.25rem;justify-content:center;align-items:center;padding:.25rem;display:flex}.btn-icon:hover{background-color:var(--bg-surface-hover)}.text-error{color:var(--status-error)}.modal-overlay{z-index:100;background-color:#0f172a80;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--bg-surface);width:100%;max-width:800px;max-height:90vh;box-shadow:var(--shadow-lg);border-radius:1rem;overflow-y:auto}.modal-header{border-bottom:1px solid var(--border-color);background-color:var(--bg-surface);z-index:10;justify-content:space-between;align-items:center;padding:1.5rem;display:flex;position:sticky;top:0}.modal-header h3{margin:0}.modal-body{padding:1.5rem}.form-grid{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.form-group{flex-direction:column;display:flex}.full-width{grid-column:1/-1}.modal-footer{border-top:1px solid var(--border-color);background-color:var(--bg-surface);justify-content:flex-end;gap:1rem;padding:1.5rem;display:flex;position:sticky;bottom:0}@media (width<=768px){.form-grid{grid-template-columns:1fr}}.survey-stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.survey-stat-card{background-color:var(--bg-surface);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:1rem;justify-content:space-between;align-items:center;padding:1.25rem;display:flex}.survey-stat-info h3{color:var(--text-primary);margin-bottom:.25rem;font-size:1.75rem;font-weight:700}.survey-stat-info p{color:var(--text-secondary);font-size:.85rem;font-weight:500}.survey-stat-icon{border-radius:.75rem;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.survey-stat-icon.total{color:var(--status-info);background-color:#3b82f61a}.survey-stat-icon.pending{color:var(--status-warning);background-color:#eab3081a}.survey-stat-icon.completed{color:var(--status-success);background-color:#22c55e1a}.survey-filters{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.survey-cards-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem;display:grid}.survey-item-card{background-color:var(--bg-surface);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);transition:all var(--transition-fast);border-radius:1rem;flex-direction:column;justify-content:space-between;padding:1.25rem;display:flex;position:relative}.survey-item-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.survey-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;display:flex}.survey-id-badge{color:var(--color-green);background-color:#2196531a;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:700}.survey-card-body{color:var(--text-secondary);flex-direction:column;gap:.5rem;margin-bottom:1rem;font-size:.85rem;display:flex}.survey-detail-row{align-items:flex-start;gap:.5rem;display:flex}.survey-detail-row svg{color:var(--text-muted);flex-shrink:0;margin-top:2px}.survey-card-footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-top:.75rem;display:flex}.feasibility-grid{grid-template-columns:1fr 340px;gap:1.5rem;display:grid}@media (width<=1024px){.feasibility-grid{grid-template-columns:1fr}}.panel-calculator-card{background-color:var(--bg-surface);border:1px solid var(--border-color);text-align:center;box-shadow:var(--shadow-sm);border-radius:1rem;flex-direction:column;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:sticky;top:90px}.capacity-output-circle{border:4px solid var(--color-green);background-color:#2196530d;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:130px;height:130px;margin:1rem 0;display:flex}.capacity-value{color:var(--color-green);font-size:2.2rem;font-weight:800;line-height:1}.capacity-unit{color:var(--text-secondary);text-transform:uppercase;font-size:.75rem;font-weight:600}.option-select-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.75rem;margin-top:.5rem;display:grid}.option-select-card{border:1px solid var(--border-color);text-align:center;cursor:pointer;transition:all var(--transition-fast);background-color:var(--bg-surface);border-radius:.5rem;padding:.75rem;font-size:.85rem;font-weight:500}.option-select-card.active{border-color:var(--color-green);color:var(--color-green);background-color:#2196530d;font-weight:600}.option-select-card:hover:not(.active){background-color:var(--bg-surface-hover)}.report-sheet{background-color:#fff;flex-direction:column;justify-content:space-between;min-height:1000px;padding:1rem;display:flex}.report-section-divider{color:#1e3a8a;border-bottom:2px solid #334155;margin:1.5rem 0 .75rem;padding-bottom:.25rem;font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:600}.report-grid-specs{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.report-spec-item{background-color:#f8fafc;border:1px solid #cbd5e1;border-radius:.5rem;padding:.75rem 1rem}.report-spec-label{color:#64748b;text-transform:uppercase;margin-bottom:.25rem;font-size:.75rem;font-weight:600}.report-spec-val{color:#0f172a;font-size:1rem;font-weight:600}.assessment-indicator{text-align:center;border-radius:.5rem;margin-top:.5rem;padding:.75rem;font-size:.9rem;font-weight:600}.assessment-indicator.feasible{color:#15803d;background-color:#dcfce7;border:1px solid #bbf7d0}.assessment-indicator.not-feasible{color:#b91c1c;background-color:#fee2e2;border:1px solid #fecaca}@media print{.survey-stats-grid,.survey-filters,.survey-cards-grid,.feasibility-grid,.preview-controls,.sidebar,.page-header{display:none!important}}.quote-actions{gap:.5rem;display:flex}.quotes-filter-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.quote-editor-grid{grid-template-columns:1fr 320px;gap:1.5rem;display:grid}@media (width<=1024px){.quote-editor-grid{grid-template-columns:1fr}}.editor-main-card{flex-direction:column;gap:1.5rem;display:flex}.editor-section-title{color:var(--text-primary);border-bottom:2px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:600;display:flex}.editor-form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.editor-form-grid.full-width{grid-template-columns:1fr}.quote-summary-panel{flex-direction:column;gap:1.25rem;display:flex;position:sticky;top:90px}.cost-breakdown-card{background-color:var(--bg-surface);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:1rem;padding:1.25rem}.cost-row{border-bottom:1px dashed var(--border-color);justify-content:space-between;padding:.75rem 0;font-size:.9rem;display:flex}.cost-row:last-child{color:var(--color-green);border-bottom:none;padding-top:1rem;font-size:1.1rem;font-weight:700}.milestones-title{text-transform:uppercase;color:var(--text-secondary);letter-spacing:.05em;margin-top:1rem;margin-bottom:.5rem;font-size:.85rem;font-weight:600}.milestone-badge-list{flex-direction:column;gap:.5rem;display:flex}.milestone-badge-item{background-color:var(--bg-main);border-left:3px solid var(--color-green);border-radius:.5rem;justify-content:space-between;padding:.5rem .75rem;font-size:.8rem;display:flex}.specs-edit-table{border-collapse:collapse;width:100%;margin-top:.5rem}.specs-edit-table th,.specs-edit-table td{border:1px solid var(--border-color);text-align:left;padding:.5rem;font-size:.85rem}.specs-edit-table th{background-color:var(--bg-main);font-weight:600}.specs-edit-table input,.specs-edit-table textarea{width:100%;color:var(--text-primary);transition:all var(--transition-fast);resize:vertical;background-color:#0000;border:1px solid #0000;border-radius:.25rem;padding:.25rem;font-family:inherit;font-size:.85rem}.specs-edit-table input:focus,.specs-edit-table textarea:focus{border-color:var(--color-green);background-color:var(--bg-surface);outline:none}.quote-preview-container{max-width:900px;box-shadow:var(--shadow-lg);color:#1a1a1a;background-color:#fff;border:1px solid #e0e0e0;border-radius:.5rem;margin:0 auto;padding:3rem;font-family:Inter,Arial,sans-serif;line-height:1.4}.preview-controls{justify-content:space-between;align-items:center;max-width:900px;margin:0 auto 1.5rem;display:flex}.proposal-sheet{background-color:#fff;flex-direction:column;justify-content:space-between;min-height:1100px;display:flex;position:relative}.proposal-page-1{page-break-after:always;margin-bottom:3rem}.proposal-page-2{padding-top:1rem}.proposal-brand-header{border-bottom:2px solid #2d3748;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;display:flex}.proposal-logo-area{flex-direction:column;display:flex}.proposal-logo-text-large{color:#1e3a8a;letter-spacing:.05em;text-transform:uppercase;font-family:Outfit,sans-serif;font-size:2.2rem;font-weight:700;line-height:1.1}.proposal-logo-subtext{color:#2563eb;letter-spacing:.1em;text-transform:uppercase;margin-top:.25rem;font-family:Outfit,sans-serif;font-size:1.4rem;font-weight:500}.proposal-doc-meta{text-align:right}.proposal-doc-title{color:#1e3a8a;margin-bottom:.5rem;font-family:Outfit,sans-serif;font-size:1.75rem;font-weight:600}.customer-info-box{float:right;background-color:#fff;border:2px solid #2563eb;border-radius:1rem;max-width:450px;margin-bottom:2rem;padding:1.25rem;box-shadow:0 4px 6px -1px #2563eb1a}.customer-info-box h4{color:#1e3a8a;border-bottom:1px solid #bfdbfe;margin-bottom:.5rem;padding-bottom:.25rem;font-size:1.1rem}.customer-info-box p{color:#334155;margin:.25rem 0;font-size:.9rem;line-height:1.4}.clearfix{clear:both}.proposal-specs-table{border-collapse:collapse;width:100%;margin-top:1rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000000d}.proposal-specs-table th{color:#fff;text-align:left;background-color:#2e7d32;border:1px solid #1b5e20;padding:.75rem;font-size:.9rem;font-weight:600}.proposal-specs-table td{color:#1a1a1a;vertical-align:top;white-space:pre-line;border:1px solid #c8e6c9;padding:.6rem .75rem;font-size:.8rem}.proposal-specs-table tr:nth-child(2n) td{background-color:#f1f8e9}.pricing-title{color:#2563eb;margin-bottom:1rem;font-family:Outfit,sans-serif;font-size:2.2rem}.pricing-subtitle{color:#1e293b;margin-bottom:1.5rem;font-size:1.1rem;font-weight:600}.pricing-table{border-collapse:collapse;width:100%;margin-bottom:2rem}.pricing-table th{color:#fff;text-align:left;text-transform:uppercase;background-color:#0284c7;border:1px solid #0369a1;padding:.75rem 1rem;font-size:.85rem;font-weight:600}.pricing-table td{border:1px solid #bae6fd;padding:1rem;font-size:.95rem}.pricing-table tr:first-child td{font-weight:600}.pricing-table tr:last-child td{color:#0369a1;background-color:#f0f9ff;font-size:1.05rem;font-weight:700}.terms-graphics-container{grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem;display:grid}@media (width<=600px){.terms-graphics-container{grid-template-columns:1fr}}.terms-section h3{color:#1e293b;border-bottom:2px solid #e2e8f0;margin-bottom:.75rem;padding-bottom:.25rem;font-family:Outfit,sans-serif;font-size:1.25rem;text-decoration:underline}.terms-list{font-size:.85rem;line-height:1.6;list-style:none}.terms-list li{margin-bottom:.75rem}.terms-list strong{color:#0f172a}.sub-list{margin-top:.25rem;padding-left:1.5rem;list-style-type:disc}.graphics-decorative-box{flex-direction:column;justify-content:flex-end;align-items:center;padding:1rem;display:flex;position:relative}.hexagon-shapes{opacity:.85;gap:10px;margin-bottom:1.5rem;display:flex}.hex-shape{clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);background-color:#1e3a8a;width:50px;height:57px;transition:transform .3s}.hex-shape.offset{background-color:#2563eb;transform:translateY(20px)}.civil-work-pay-box{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;width:100%;padding:1rem}.civil-work-pay-box h4{color:#1e3a8a;margin-bottom:.5rem;font-size:.9rem}.civil-work-pay-box ul{color:#334155;font-size:.8rem;list-style:none}.civil-work-pay-box li{border-bottom:1px solid #f1f5f9;padding:.25rem 0}.civil-work-pay-box li:last-child{border-bottom:none}.proposal-bank-details{background-color:#f8fafc;border:1px solid #cbd5e1;border-radius:.5rem;margin-top:3rem;padding:1.25rem}.proposal-bank-details h4{color:#1e3a8a;border-bottom:1px solid #cbd5e1;margin-bottom:.75rem;padding-bottom:.25rem;font-size:.95rem}.bank-details-grid{grid-template-columns:140px 1fr;gap:.5rem 1rem;font-size:.85rem;display:grid}.bank-label{color:#475569;font-weight:600}.bank-val{color:#0f172a}@media print{.sidebar,.page-header,.main-content{background-color:#fff!important}.sidebar,.page-header,.preview-controls,header,footer,nav{display:none!important}.app-layout{height:auto!important;display:block!important;overflow:visible!important}.main-content{width:100%!important;height:auto!important;margin:0!important;padding:0!important;overflow:visible!important}.page-body{margin:0!important;padding:0!important}.quote-preview-container{box-shadow:none!important;color:#000!important;background:0 0!important;border:none!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important}.proposal-sheet{page-break-inside:avoid;min-height:0!important}.proposal-page-1{page-break-after:always!important;margin-bottom:0!important;padding-bottom:2cm!important}.proposal-page-2{page-break-before:always!important;padding-top:2cm!important}body{color:#000!important;background-color:#fff!important;font-size:11pt!important}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}}.project-filter-bar{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.project-filters{gap:.5rem;display:flex}.project-filters button{border:1px solid var(--border-color);cursor:pointer;background:#fff;border-radius:20px;padding:.5rem 1rem;font-size:.85rem;font-weight:500;transition:all .2s}.project-filters button.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.project-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem;display:grid}.project-card{border:1px solid var(--border-color);cursor:pointer;background:#fff;border-radius:8px;padding:1.25rem;transition:transform .2s,box-shadow .2s;box-shadow:0 1px 3px #0000001a}.project-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.project-header{border-bottom:1px solid var(--border-color);justify-content:space-between;margin-bottom:.75rem;padding-bottom:.75rem;display:flex}.project-customer{color:var(--primary-dark);font-size:1.1rem;font-weight:600}.project-id{color:var(--text-muted);background:var(--bg-color);border-radius:4px;padding:.1rem .4rem;font-size:.75rem}.project-status{border-radius:12px;padding:.2rem .5rem;font-size:.75rem;font-weight:600}.status-completed{color:#166534;background:#dcfce7}.status-active{color:#1e40af;background:#dbeafe}.status-planning{color:#854d0e;background:#fef9c3}.project-details{flex-direction:column;gap:.4rem;font-size:.9rem;display:flex}.project-details p{justify-content:space-between;margin:0;display:flex}.project-detail-view{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 1px 3px #0000001a}.detail-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;display:flex}.detail-section{margin-bottom:2rem}.detail-section h3{color:var(--primary-dark);margin-top:0;margin-bottom:1rem;font-size:1.1rem}.info-grid{background:#f8fafc;border-radius:8px;grid-template-columns:1fr 1fr;gap:1rem;padding:1.5rem;display:grid}.info-item{flex-direction:column;gap:.2rem;display:flex}.info-label{color:var(--text-muted);font-size:.8rem}.info-value{color:#1e293b;font-weight:500}.embedded-bill{border:1px solid #cbd5e1;border-radius:8px;overflow:hidden}.bill-header{background:#f1f5f9;border-bottom:1px solid #cbd5e1;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.bill-body{padding:1.5rem}.bill-summary{justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;display:flex}.bill-items table{border-collapse:collapse;width:100%}.bill-items th,.bill-items td{text-align:left;border-bottom:1px solid #e2e8f0;padding:.75rem;font-size:.9rem}.bill-items th{color:#475569;background:#f8fafc;font-weight:600}.bill-items td.amount{text-align:right;font-weight:500}.bill-totals{justify-content:flex-end;margin-top:1.5rem;display:flex}.totals-box{background:#f8fafc;border-radius:8px;width:300px;padding:1.5rem}.totals-row{justify-content:space-between;margin-bottom:.5rem;font-size:.9rem;display:flex}.totals-row.grand-total{color:var(--primary-dark);border-top:1px solid #cbd5e1;margin-top:.5rem;padding-top:.75rem;font-size:1.1rem;font-weight:700}.login-container{background-color:var(--bg-main);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.login-card{background-color:var(--bg-surface);box-shadow:var(--shadow-lg);border:1px solid var(--border-color);text-align:center;border-radius:1rem;width:100%;max-width:400px;padding:3rem 2rem}.login-brand{margin-bottom:2rem}.login-brand h2{color:var(--color-green);margin-bottom:0;font-size:2rem;font-weight:700}.login-title{margin-bottom:1.5rem;font-weight:600}.login-error{color:var(--status-error);background-color:#ef44441a;border-radius:.5rem;margin-bottom:1.5rem;padding:.75rem;font-size:.875rem}.login-form{text-align:left;flex-direction:column;gap:1.25rem;display:flex}.login-btn{width:100%;margin-top:1rem;padding:.875rem;font-size:1rem}.login-footer{color:var(--text-muted);margin-top:2rem;font-size:.75rem}.invoice-actions{gap:.5rem;display:flex}.invoice-filter-bar{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.invoice-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem;display:grid}.invoice-card{border:1px solid var(--border-color);background:#fff;border-radius:8px;padding:1.25rem;transition:transform .2s,box-shadow .2s;box-shadow:0 1px 3px #0000001a}.invoice-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.invoice-header{border-bottom:1px solid var(--border-color);justify-content:space-between;margin-bottom:1rem;padding-bottom:.5rem;display:flex}.invoice-customer{color:var(--primary-dark);font-size:1.1rem;font-weight:600}.invoice-id{color:var(--text-muted);background:var(--bg-color);border-radius:4px;padding:.1rem .4rem;font-size:.8rem}.invoice-details p{justify-content:space-between;margin:.25rem 0;font-size:.9rem;display:flex}.invoice-total{color:var(--primary-color);font-weight:600}.status-badge{border-radius:12px;padding:.2rem .5rem;font-size:.75rem;font-weight:600}.status-paid{color:#166534;background:#dcfce7}.status-pending{color:#854d0e;background:#fef9c3}.invoice-editor{background:#fff;border-radius:8px;flex-direction:column;gap:1.5rem;padding:1.5rem;display:flex;box-shadow:0 1px 3px #0000001a}.form-row{gap:1.5rem;display:flex}.form-group.flex-1{flex:1}.line-items-editor{border:1px solid var(--border-color);border-radius:6px;margin-top:1rem;overflow:hidden}.line-items-editor table{border-collapse:collapse;width:100%}.line-items-editor th,.line-items-editor td{border-bottom:1px solid var(--border-color);padding:.75rem}.line-items-editor th{text-align:left;color:#475569;background:#f8fafc;font-size:.85rem;font-weight:600}.line-items-editor input{border:1px solid #cbd5e1;border-radius:4px;width:100%;padding:.4rem}.invoice-preview-container{background:#cbd5e1;flex-direction:column;align-items:center;gap:2rem;min-height:calc(100vh - 150px);padding:2rem;display:flex}.invoice-sheet{color:#1e293b;background:#fff;flex-direction:column;width:210mm;min-height:297mm;padding:15mm;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;display:flex;position:relative;box-shadow:0 4px 6px #0003}.tax-invoice-title{text-align:center;text-transform:uppercase;letter-spacing:2px;color:#0f172a;margin-bottom:1rem;font-size:1.25rem;font-weight:700}.invoice-header-grid{grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem;display:grid}.company-details h2{color:#1e3a8a;margin:0 0 .5rem;font-size:1.5rem}.company-details p{color:#475569;margin:.2rem 0;font-size:.85rem}.invoice-meta{text-align:right}.invoice-meta table{border-collapse:collapse;width:100%}.invoice-meta th,.invoice-meta td{text-align:left;border:1px solid #cbd5e1;padding:.4rem;font-size:.85rem}.invoice-meta th{background:#f1f5f9;width:40%;font-weight:600}.bill-to-section{border:1px solid #cbd5e1;border-radius:4px;margin-bottom:2rem;padding:1rem}.bill-to-section h3{color:#0f172a;border-bottom:1px solid #e2e8f0;margin-top:0;margin-bottom:.5rem;padding-bottom:.4rem;font-size:.95rem}.bill-to-section p{margin:.3rem 0;font-size:.9rem}.invoice-items-table{border-collapse:collapse;width:100%;margin-bottom:2rem}.invoice-items-table th,.invoice-items-table td{border:1px solid #cbd5e1;padding:.6rem;font-size:.85rem}.invoice-items-table th{color:#fff;text-align:center;background-color:#1e3a8a}.invoice-items-table td.number{text-align:right}.invoice-summary-box{justify-content:flex-end;margin-bottom:2rem;display:flex}.invoice-summary-table{border-collapse:collapse;width:350px}.invoice-summary-table th,.invoice-summary-table td{border:1px solid #cbd5e1;padding:.5rem;font-size:.9rem}.invoice-summary-table th{text-align:left;background:#f8fafc}.invoice-summary-table td{text-align:right;font-weight:600}.invoice-summary-table tr.grand-total th,.invoice-summary-table tr.grand-total td{color:#fff;background:#1e3a8a;font-size:1.1rem}.amount-in-words{background:#f1f5f9;border-radius:4px;margin-bottom:2rem;padding:.75rem;font-size:.85rem;font-weight:600}.invoice-footer-grid{border-top:1px solid #cbd5e1;grid-template-columns:1fr 1fr;gap:2rem;margin-top:auto;padding-top:1.5rem;display:grid}.bank-details h4,.auth-signatory h4{color:#1e3a8a;margin:0 0 .75rem;font-size:.95rem}.bank-grid{grid-template-columns:120px 1fr;gap:.4rem;font-size:.85rem;display:grid}.bank-label{color:#64748b}.bank-val{font-weight:600}.auth-signatory{flex-direction:column;justify-content:flex-end;align-items:flex-end;display:flex}.signature-box{border-bottom:1px solid #000;width:200px;height:60px;margin-bottom:.5rem}.preview-controls{justify-content:space-between;width:100%;max-width:210mm;margin-bottom:1rem;display:flex}@media print{body *{visibility:hidden}.invoice-sheet,.invoice-sheet *{visibility:visible}.invoice-sheet{width:100%;box-shadow:none;margin:0;padding:0;position:absolute;top:0;left:0}.preview-controls{display:none!important}}:root{--color-gold:#f2c94c;--color-gold-hover:#e3b737;--color-green:#219653;--color-green-hover:#1e824a;--bg-main:#f8fafc;--bg-surface:#fff;--bg-surface-hover:#f1f5f9;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--border-color:#e2e8f0;--border-focus:#94a3b8;--status-success:#22c55e;--status-warning:#eab308;--status-error:#ef4444;--status-info:#3b82f6;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.25s cubic-bezier(.4, 0, .2, 1);--sidebar-width:260px;--bottom-nav-height:64px}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-main);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Inter,sans-serif;line-height:1.5}h1,h2,h3,h4,h5,h6{color:var(--text-primary);margin-bottom:.5rem;font-family:Outfit,sans-serif}a{color:var(--color-green);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-green-hover)}.btn{cursor:pointer;transition:all var(--transition-fast);border:none;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-family:Inter,sans-serif;font-size:.875rem;font-weight:500;display:inline-flex}.btn:active{transform:scale(.98)}.btn-primary{background-color:var(--color-green);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{background-color:var(--color-green-hover);box-shadow:var(--shadow-md)}.btn-accent{background-color:var(--color-gold);color:var(--text-primary);box-shadow:var(--shadow-sm)}.btn-accent:hover{background-color:var(--color-gold-hover)}.btn-outline{color:var(--text-primary);border:1px solid var(--border-color);background-color:#0000}.btn-outline:hover{background-color:var(--bg-surface-hover)}.card{background-color:var(--bg-surface);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);transition:box-shadow var(--transition-fast);border-radius:1rem;padding:1.5rem}.card:hover{box-shadow:var(--shadow-md)}.input-field{border:1px solid var(--border-color);width:100%;color:var(--text-primary);background-color:var(--bg-surface);transition:all var(--transition-fast);border-radius:.5rem;padding:.625rem 1rem;font-family:Inter,sans-serif;font-size:.875rem}.input-field:focus{border-color:var(--color-green);outline:none;box-shadow:0 0 0 3px #2196531a}.label{color:var(--text-secondary);margin-bottom:.375rem;font-size:.875rem;font-weight:500;display:block}.app-layout{height:100vh;display:flex;overflow:hidden}.main-content{background-color:var(--bg-main);flex-direction:column;flex:1;display:flex;overflow-y:auto}.page-header{background-color:var(--bg-surface);border-bottom:1px solid var(--border-color);z-index:10;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex;position:sticky;top:0}.page-body{flex:1;padding:2rem}.badge{text-transform:uppercase;letter-spacing:.05em;border-radius:9999px;align-items:center;padding:.25rem .625rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-success{color:var(--status-success);background-color:#22c55e26}.badge-warning{color:var(--status-warning);background-color:#eab30826}.badge-error{color:var(--status-error);background-color:#ef444426}.badge-info{color:var(--status-info);background-color:#3b82f626}.badge-default{background-color:var(--bg-surface-hover);color:var(--text-secondary)}@media (width<=768px){.app-layout{flex-direction:column}.main-content{margin-bottom:var(--bottom-nav-height)}.page-header,.page-body{padding:1rem}}
