*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f3f4f6;color:#111827;font-size:1.05rem}.app-root{min-height:100vh;display:flex;flex-direction:column}.topbar{position:relative;z-index:40;background:#111827;color:#fff;padding:.75rem 1.5rem}.top-notification{position:fixed;top:76px;right:0;z-index:9998;padding:.75rem 1.5rem;display:flex;align-items:center;gap:.5rem;font-weight:500;box-shadow:0 2px 8px #00000026;transform:translate(100%);transition:transform .3s ease;max-width:400px;min-width:300px;margin-top:8px;margin-right:8px}.top-notification.show{transform:translate(0)}.top-notification-success{background:#10b981;color:#fff}.top-notification-error{background:#ef4444;color:#fff}.top-notification .material-icons{font-size:1.25rem}.topbar h1{margin:0;font-size:1.4rem}.app-logo-link{text-decoration:none;color:inherit;display:flex;align-items:center}.app-logo-link:hover{opacity:.8}.app-logo .material-icons{font-size:1.9rem}.topbar-left{display:flex;align-items:center;gap:.75rem}.layout{display:flex;min-height:calc(100vh - 56px)}.sidebar{width:220px;background:#1f2937;color:#fff;padding:1rem}.sidebar ul{list-style:none;padding:0;margin:0}.sidebar li{margin-bottom:.75rem}.sidebar a{color:#e5e7eb;text-decoration:none}.sidebar a:hover{color:#fff}.sidebar-link{display:flex;align-items:center;gap:.75rem;padding:.5rem .7rem;border-radius:.375rem;color:#e5e7eb;font-size:1rem}.sidebar-link.active{background:#111827;color:#fff}.sidebar-link .material-icons{font-size:1.35rem;width:1.35rem;height:1.35rem;display:inline-flex;align-items:center;justify-content:center}.content{flex:1;padding:2rem 1.5rem;overflow-x:auto;position:relative}.page-loader{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffc;display:flex;align-items:center;justify-content:center;z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top:4px solid #111827;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.page-container{max-width:1200px;margin:0 auto;width:100%}.page-header{margin-bottom:1.5rem}.page-header h2{margin:0 0 1rem;font-size:2.25rem;font-weight:600;color:#111827}.add-customer-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:1.05rem;font-weight:500;margin-top:.5rem}.add-customer-btn .material-icons{font-size:1.3rem}.page-header p{margin:0;color:#6b7280;font-size:1.05rem}.form-container,.table-container{max-width:1200px;margin:0 auto 1.5rem;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-container .card{overflow:visible;min-width:0}@media(max-width:1200px){.page-container{max-width:95%}.form-container,.table-container{max-width:100%;padding:0 .5rem}.form-container{margin:0 auto 1rem}}.topbar{display:flex;align-items:center;justify-content:space-between}.sidebar-toggle{display:none;width:2.25rem;height:2.25rem;border-radius:999px;border:none;background:transparent;color:#e5e7eb;cursor:pointer;align-items:center;justify-content:center;padding:0}.sidebar-toggle .material-icons{font-size:1.6rem}.sidebar-backdrop{display:none}.logout-button{background:#ef4444;padding-inline:.9rem}.logout-button:hover{background:#dc2626}:root{--primary-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--primary-color: #667eea;--primary-hover: #5568d3;--success-color: #10b981;--success-gradient: linear-gradient(135deg, #10b981 0%, #059669 100%);--card-shadow: 0 2px 8px rgba(0, 0, 0, .08);--card-shadow-hover: 0 4px 12px rgba(0, 0, 0, .12)}.card{background:#fff;border-radius:.75rem;padding:1.5rem 1.75rem;margin-bottom:1.5rem;box-shadow:var(--card-shadow);font-size:1rem;transition:box-shadow .2s ease;overflow:hidden}.card:hover{box-shadow:var(--card-shadow-hover)}.card h3{font-size:1.5rem;font-weight:600;margin:0 0 1rem;color:#111827}.card-header{display:flex;align-items:center;gap:.75rem;padding:1.25rem 1.5rem;background:var(--primary-gradient);color:#fff;margin:-1.5rem -1.75rem 1.5rem}.card-header h3{margin:0;font-size:1.25rem;font-weight:600;flex:1;color:#fff}.card-header .material-icons{font-size:1.5rem}.customer-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1.25rem;padding-bottom:1.25rem;border-bottom:2px solid #f3f4f6}.search-filter-wrapper{display:flex;gap:.75rem;align-items:center;flex:1;max-width:450px}.customer-list-header h3{margin:0;font-size:1.75rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.search-container{display:flex;align-items:center;gap:0;flex:1;max-width:100%;min-width:200px;position:relative;background:#fff;border:2px solid #e5e7eb;border-radius:.75rem;padding:.5rem 1rem;transition:all .3s ease;box-shadow:0 1px 3px #0000000d}.search-container:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 4px #667eea1a,0 4px 12px #0000001a;transform:translateY(-1px)}.search-icon{color:#9ca3af;font-size:1.4rem;margin-right:.5rem;transition:color .2s ease;flex-shrink:0}.search-container:focus-within .search-icon{color:var(--primary-color)}.search-input{flex:1;padding:.5rem 0;border:none;background:transparent;border-radius:0;font-size:1rem;color:#111827;transition:all .2s ease}.search-input::placeholder{color:#9ca3af;font-weight:400}.search-input:focus{outline:none}.loading-text,.empty-message{font-size:1.05rem;color:#6b7280;padding:1rem 0}.pagination-info{margin-bottom:.75rem;color:#6b7280;font-size:1rem;font-weight:500}.card h4{font-size:1.15rem;font-weight:600;margin:0 0 .5rem}.form-row{display:flex;flex-direction:column;margin-bottom:.75rem}.form-row label{font-size:1rem;margin-bottom:.35rem;font-weight:500;color:#374151}input,select,textarea,button{font:inherit}input,select,textarea{padding:.65rem .75rem;border-radius:.375rem;border:1px solid #d1d5db;font-size:1rem;color:#111827}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea1a}button{padding:.65rem 1rem;border-radius:.5rem;border:none;background:var(--primary-gradient);color:#fff;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s ease;box-shadow:0 2px 4px #667eea4d}button:hover{background:var(--primary-hover);box-shadow:0 4px 8px #667eea66;transform:translateY(-1px)}button:active{transform:translateY(0)}.icon-button{background:transparent;border:none;padding:.15rem;border-radius:999px;color:#6b7280;display:inline-flex;align-items:center;justify-content:center}.icon-button:hover{background:transparent}.icon-button.icon-view{color:#0ea5e9}.icon-button.icon-edit{color:#f59e0b}.icon-button.icon-delete{color:#ef4444}.action-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem .75rem;border:1.5px solid;border-radius:.5rem;cursor:pointer;transition:all .2s ease;min-width:2.5rem;height:2.5rem;font-size:.875rem;font-weight:500}.action-btn svg{width:18px;height:18px;flex-shrink:0}.action-btn:hover{transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.action-btn:active{transform:translateY(0);box-shadow:0 1px 3px #0000001a}.edit-btn{color:#f59e0b;border-color:#fbbf24;background-color:#fffbeb}.edit-btn:hover{background-color:#fef3c7;border-color:#f59e0b;color:#d97706;box-shadow:0 2px 6px #f59e0b40}.delete-btn{color:#ef4444;border-color:#f87171;background-color:#fef2f2}.delete-btn:hover{background-color:#fee2e2;border-color:#ef4444;color:#dc2626;box-shadow:0 2px 6px #ef444440}.action-buttons{display:flex;align-items:center;gap:.5rem;justify-content:flex-end;flex-wrap:nowrap}table{width:100%;border-collapse:collapse;font-size:1rem;margin-top:1rem;min-width:600px}.table-container table{margin-top:0}.table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%;margin:0;padding:0;position:relative;scrollbar-width:none;-ms-overflow-style:none}.table-wrapper::-webkit-scrollbar{display:none}@media(max-width:768px){.table-wrapper:before{content:"← Scroll →";position:sticky;right:0;top:0;background:linear-gradient(90deg,transparent 0%,rgba(102,126,234,.1) 100%);color:#667eea;font-size:.75rem;padding:.25rem .5rem;pointer-events:none;opacity:.7;z-index:1}.table-wrapper:after{content:"← Scroll →";position:sticky;right:0;bottom:0;background:linear-gradient(90deg,transparent 0%,rgba(102,126,234,.1) 100%);color:#667eea;font-size:.75rem;padding:.25rem .5rem;pointer-events:none;opacity:.7}}th,td{border-bottom:1px solid #e5e7eb;padding:.75rem .65rem;text-align:left}thead th{font-weight:600;font-size:1.05rem;color:#111827;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-bottom:2px solid #e5e7eb}thead th:last-child{text-align:right;padding-right:1rem}tbody td{font-size:1rem;color:#374151}tbody td:last-child{text-align:right;padding-right:1rem;white-space:nowrap}tbody td .action-buttons{display:flex;align-items:center;gap:.5rem;justify-content:flex-end;flex-wrap:nowrap;min-width:fit-content}.action-btn-modern{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;padding:0;border:none;border-radius:.625rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 2px 4px #0000001a}.action-btn-modern:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease}.action-btn-modern:hover:before{width:300px;height:300px}.action-btn-modern .material-icons{font-size:1.25rem;position:relative;z-index:1;transition:transform .3s ease}.action-btn-modern:hover .material-icons{transform:scale(1.1)}.action-btn-modern:active{transform:scale(.95)}.edit-btn-modern{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff}.edit-btn-modern:hover{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 12px #f59e0b66;transform:translateY(-2px)}.delete-btn-modern{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.delete-btn-modern:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 12px #ef444466;transform:translateY(-2px)}.view-btn-modern{background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff}.view-btn-modern:hover{background:linear-gradient(135deg,#0284c7,#0369a1);box-shadow:0 4px 12px #0ea5e966;transform:translateY(-2px)}.error{background:#fee2e2;color:#b91c1c;padding:.75rem 1rem;border-radius:.375rem;margin-bottom:.75rem;font-size:1rem;font-weight:500}.success{background:#dcfce7;color:#166534;padding:.65rem .9rem;border-radius:.375rem;margin-bottom:.75rem;font-size:1rem}.invoices-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:1rem}.lines-table input{width:100%}.totals{margin-top:.75rem}.login-page{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 56px)}.login-card{max-width:380px;width:100%}.login-subtitle{margin-top:.25rem;font-size:1rem;color:#4b5563}.login-hint{margin-top:.75rem;font-size:.95rem;color:#6b7280}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}.dashboard-grid .card{background:#fff;border-radius:.75rem;padding:1.5rem;box-shadow:var(--card-shadow);transition:all .2s ease;border-top:3px solid var(--primary-color)}.dashboard-grid .card:hover{box-shadow:var(--card-shadow-hover);transform:translateY(-2px)}.dashboard-number{font-size:2.25rem;font-weight:600;margin:.5rem 0 0;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dashboard-charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:1.5rem;margin-top:1.5rem}.chart-card{min-height:400px;border-top:3px solid var(--primary-color)}.chart-card h3{margin-bottom:1.5rem;font-size:1.25rem;font-weight:600;color:#111827;display:flex;align-items:center;gap:.5rem}.chart-card h3:before{content:"";width:4px;height:1.5rem;background:var(--primary-gradient);border-radius:2px}@media(max-width:768px){.dashboard-charts-grid{grid-template-columns:1fr}.page-container{padding:0;margin:0;max-width:100%;width:100%}.table-container{margin:0 0 1rem;padding:0;width:100%}.table-container .card{margin:0;border-radius:.5rem;padding:.5rem .35rem;box-shadow:0 2px 8px #0000001a}.table-wrapper{margin:0;padding:0;width:100%}table{font-size:.875rem;min-width:700px;border-spacing:0}th,td{padding:.6rem .5rem;white-space:nowrap;font-size:.8rem}th{font-size:.75rem;font-weight:600;background:linear-gradient(135deg,#f9fafb,#f3f4f6)}th:first-child,td:first-child{padding-left:.5rem}th:last-child,td:last-child{padding-right:.5rem}.action-btn-modern{width:2.5rem;height:2.5rem}.action-btn-modern .material-icons{font-size:1.1rem}.customer-list-header{flex-direction:column;align-items:stretch;gap:.75rem;margin-bottom:1rem;padding-bottom:1rem}.customer-list-header h3{font-size:1.5rem;margin-bottom:0}.search-filter-wrapper{flex-direction:column;max-width:100%;width:100%;gap:.75rem}.filter-toggle-btn{display:flex!important;padding:.75rem 1rem;border-radius:.5rem;font-size:.9rem;gap:.5rem;width:100%;justify-content:center;margin:0}.search-container{width:100%;margin:0}.filter-toggle-btn .material-icons{font-size:1.2rem}.filter-toggle-btn span:not(.material-icons):not(.filter-badge){display:inline}.search-container{max-width:100%;min-width:100%;margin:0;padding:.6rem .875rem;border-radius:.625rem}.search-icon{font-size:1.3rem;margin-right:.4rem}.search-input{font-size:.95rem;padding:.4rem 0}.filters-section{margin-bottom:1rem;padding:1rem;border-radius:.625rem}.filters-section.filters-hidden{max-height:0;margin-bottom:0;padding:0 1rem}.filters-section.filters-visible{max-height:600px}.filters-container{flex-direction:column;align-items:stretch;gap:.75rem;margin-bottom:0}.filters-container .filter-icon{display:inline-flex;font-size:1.3rem;margin-right:.5rem}.filters-container .filter-label{display:flex;align-items:center;font-size:.9rem;margin-bottom:.5rem;color:#374151}.filters-container .filter-select{width:100%;min-width:100%;padding:.75rem 1rem;font-size:.95rem;border-radius:.5rem}.filters-container>div{width:100%;display:flex;flex-direction:column;gap:.5rem}.date-filter-wrapper{display:flex!important;flex-direction:row!important;align-items:center!important;gap:.5rem!important;width:100%}.date-filter-wrapper label{font-size:.85rem;color:#374151;font-weight:600;margin-bottom:0;white-space:nowrap;min-width:fit-content}.date-filter-wrapper input[type=date]{flex:1;min-width:0;padding:.75rem 1rem;font-size:.95rem;border:2px solid #e5e7eb;border-radius:.5rem;transition:all .2s ease}.filters-container>div:not(.date-filter-wrapper) label{font-size:.85rem;color:#374151;font-weight:600;margin-bottom:.25rem}.filters-container>div:not(.date-filter-wrapper) input[type=date]{width:100%;padding:.75rem 1rem;font-size:.95rem;border:2px solid #e5e7eb;border-radius:.5rem;transition:all .2s ease}.filters-container>div input[type=date]:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 4px #667eea1a}.clear-filters-btn{width:100%;justify-content:center;padding:.75rem 1rem;font-size:.95rem;margin-top:.5rem;border-radius:.5rem}.pagination{flex-wrap:wrap;gap:.25rem}.pagination-button,.pagination-page{padding:.5rem .75rem;font-size:.875rem}}.secondary-button{background:#fff;color:#374151;border:1.5px solid #d1d5db;padding:.65rem 1.5rem;border-radius:.5rem;cursor:pointer;margin-right:.5rem;font-size:1rem;font-weight:500;transition:all .2s ease;display:inline-flex;align-items:center}.secondary-button:hover{background:#f9fafb;border-color:var(--primary-color);color:var(--primary-color)}.icon-only-button{display:inline-flex;align-items:center;justify-content:center;padding:.25rem;width:2rem;height:2rem}.icon-only-button .material-icons{font-size:1.2rem}.user-menu{display:flex;align-items:center;gap:.5rem}.user-name{font-weight:500;margin-right:.5rem}.profile-section{margin-top:1.5rem;padding-top:.5rem;border-top:1px solid #ecf0f1}.profile-section-card{background:#fff;border-radius:.75rem;padding:1.5rem 1.75rem;box-shadow:0 2px 8px #00000014;transition:all .2s ease;border:1px solid #e5e7eb}.profile-section-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.profile-section-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:2px solid #e5e7eb}.profile-section-header .material-icons{font-size:1.5rem;color:var(--primary-color);background:linear-gradient(135deg,#667eea1a,#764ba21a);padding:.5rem;border-radius:.5rem}.profile-section-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#111827;flex:1}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 2rem;margin-top:.5rem}.input-with-icon{position:relative;display:flex;align-items:center}.input-with-icon .input-icon{position:absolute;left:.75rem;color:#6b7280;font-size:1.2rem;pointer-events:none;z-index:1}.input-with-icon input,.input-with-icon textarea{padding-left:2.75rem;width:100%}.input-with-icon textarea{padding-top:.65rem}.file-upload-wrapper{margin-top:.5rem}.file-upload-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#f9fafb,#fff);border:2px dashed #d1d5db;border-radius:.5rem;cursor:pointer;transition:all .2s ease;color:#374151;font-weight:500;font-size:1rem}.file-upload-button:hover{border-color:var(--primary-color);background:linear-gradient(135deg,#667eea0d,#764ba20d);color:var(--primary-color)}.file-upload-button .material-icons{font-size:1.3rem;color:var(--primary-color)}.image-preview{margin-top:1rem;padding:1rem;background:#f9fafb;border-radius:.5rem;border:1px solid #e5e7eb;display:flex;align-items:center;justify-content:center;max-width:100%;overflow:hidden}.image-preview img{display:block;max-width:300px;max-height:300px;width:auto;height:auto;object-fit:contain;border-radius:.375rem;box-shadow:0 2px 4px #0000001a}.error-inline{color:#dc2626;font-size:.875rem;margin-top:.25rem;font-weight:500}.input-error{border-color:#ef4444!important;box-shadow:0 0 0 3px #ef44441a!important}.input-valid{border-color:#10b981!important;box-shadow:0 0 0 3px #10b9811a!important}.input-check-icon,.input-error-icon{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);font-size:1.25rem;pointer-events:none}input[type=tel].invoice-input,input[type=tel]{padding-right:2.5rem}.form-actions{margin-top:1.5rem;display:flex;gap:.75rem}.warning{background:#fff8e5;border:1px solid #f1c40f;color:#8a6d1c;padding:.85rem 1.1rem;border-radius:4px;margin-bottom:1rem;font-size:1rem}.link-button{background:none;border:none;color:#2980b9;cursor:pointer;text-decoration:underline;padding:0;margin-left:.25rem;font-size:1rem}@media(max-width:900px){.topbar{position:fixed;top:0;left:0;right:0;width:100%;z-index:1000;box-shadow:0 2px 8px #00000026}.app-root{padding-top:56px}.layout{flex-direction:column;min-height:calc(100vh - 56px)}.content{padding-top:0rem}.profile-grid{grid-template-columns:minmax(0,1fr);gap:1rem;margin-top:.5rem}.profile-section-card{padding:1rem;border-radius:.5rem}.profile-section-header{margin-bottom:.875rem;padding-bottom:.5rem}.profile-section-header h3{font-size:1.1rem}.profile-section-header .material-icons{font-size:1.25rem!important}.form-row{margin-bottom:.875rem}.form-row label{font-size:.9rem;margin-bottom:.4rem}.form-row input,.form-row select,.form-row textarea{font-size:.95rem;padding:.65rem .75rem}.file-upload-wrapper{width:100%;margin-top:.4rem}.file-upload-button{width:100%;justify-content:center;padding:.75rem 1rem;font-size:.9rem}.file-upload-button .material-icons{font-size:1.1rem!important}.input-with-icon{width:100%}.input-with-icon .input-icon{left:.6rem;font-size:1.1rem}.input-with-icon input,.input-with-icon textarea{padding-left:2.5rem;font-size:.95rem}.input-with-icon textarea{min-height:80px}.image-preview{padding:.5rem;margin-top:.5rem}.image-preview img{max-width:100%;max-height:200px;width:auto;height:auto}.form-actions{margin-top:1.25rem;flex-direction:column;gap:.75rem;width:100%}.form-actions button{width:100%;padding:.875rem 1rem;font-size:.95rem;justify-content:center}.form-actions button .material-icons{font-size:1.1rem!important}.page-header h2{font-size:1.5rem}.page-header .material-icons{font-size:2rem!important}.page-header p{font-size:.9rem;margin-top:.5rem}.success,.error{padding:.75rem 1rem;font-size:.9rem;margin-bottom:1rem}.success .material-icons,.error .material-icons{font-size:1.2rem!important}.sidebar{position:fixed;top:56px;left:0;bottom:0;width:240px;max-width:80%;transform:translate(-100%);transition:transform .25s ease;z-index:30}.sidebar.sidebar-open{transform:translate(0)}.sidebar-backdrop{position:fixed;top:56px;left:0;right:0;bottom:0;background:#0f172a73;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:20}.sidebar-backdrop.visible{opacity:1;pointer-events:auto}.sidebar-toggle{display:inline-flex}.invoices-layout{grid-template-columns:minmax(0,1fr)}.topbar h1{font-size:1.15rem}.app-logo .material-icons{font-size:1.65rem}.topbar .user-name{font-size:.95rem;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.topbar .secondary-button,.topbar .logout-button{font-size:.95rem}.topbar .secondary-button,.topbar .logout-button{padding:.25rem .55rem}.sidebar-toggle .material-icons{font-size:1.4rem}.top-notification{top:76px;margin-top:8px;margin-right:8px;max-width:calc(100% - 16px);min-width:250px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:.75rem;padding:0;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;overflow-x:hidden;box-shadow:0 10px 25px #0003;border-top:3px solid var(--primary-color)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 1.75rem;border-bottom:1px solid #e5e7eb;background:var(--primary-gradient);color:#fff;margin:0}.modal-header h3{margin:0;font-size:1.5rem;font-weight:600;color:#fff}.modal-close{background:transparent;border:none;color:#fff;cursor:pointer;padding:.25rem;display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;width:2rem;height:2rem}.modal-close:hover{background:#fff3;color:#fff}.modal-close .material-icons{font-size:1.5rem}.modal-content form{padding:1.5rem 1.75rem}.modal-content .form-actions{margin-top:1.5rem;display:flex;gap:.75rem;justify-content:flex-end}.modal-content .form-actions button{min-width:100px}.pagination{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e7eb;flex-wrap:wrap}.pagination-button{padding:.6rem 1.1rem;background:#fff;border:1px solid #d1d5db;color:#374151;cursor:pointer;border-radius:.375rem;font-size:1rem;font-weight:500;transition:background-color .2s ease,border-color .2s ease}.pagination-button:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-pages{display:flex;align-items:center;gap:.25rem}.pagination-page{min-width:2.75rem;height:2.75rem;padding:.5rem;background:#fff;border:1px solid #d1d5db;color:#374151;cursor:pointer;border-radius:.375rem;font-size:1rem;font-weight:500;display:inline-flex;align-items:center;justify-content:center;transition:background-color .2s ease,border-color .2s ease}.pagination-page:hover{background:#f9fafb;border-color:#9ca3af}.pagination-page.active{background:var(--primary-gradient);color:#fff;border-color:var(--primary-color)}.pagination-page.active:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.pagination-ellipsis{padding:0 .5rem;color:#6b7280;font-size:1rem}.filter-toggle-btn{display:none;align-items:center;justify-content:center;gap:.5rem;padding:.7rem 1.25rem;border:2px solid #e5e7eb;border-radius:.625rem;background:#fff;color:#6b7280;cursor:pointer;transition:all .2s ease;position:relative;box-shadow:0 1px 3px #0000000d;flex-shrink:0;font-size:.95rem;font-weight:600;white-space:nowrap}@media(max-width:768px){.filter-toggle-btn{display:flex}}.filter-toggle-btn:hover{border-color:var(--primary-color);color:var(--primary-color);box-shadow:0 2px 8px #667eea26;transform:translateY(-1px)}.filter-toggle-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:var(--primary-color);color:#fff;box-shadow:0 2px 8px #667eea4d}.filter-toggle-btn.active:hover{background:linear-gradient(135deg,#5568d3,#6a3d91);box-shadow:0 4px 12px #667eea66}.filter-toggle-btn .material-icons{font-size:1.3rem}.filter-badge{position:absolute;top:.25rem;right:.25rem;width:.5rem;height:.5rem;background:#ef4444;border-radius:50%;border:2px solid white}.filters-section{margin-bottom:1.5rem;padding:1.25rem;background:linear-gradient(135deg,#f9fafb,#fff);border-radius:.75rem;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000d;overflow:hidden;transition:all .3s ease}.filters-section.filters-hidden{max-height:0;margin-bottom:0;padding:0 1.25rem;opacity:0;border:none;box-shadow:none}.filters-section.filters-visible{max-height:500px;opacity:1}@media(min-width:769px){.filters-section{max-height:none!important;opacity:1!important;margin-bottom:1.5rem!important;padding:1.25rem!important;border:1px solid #e5e7eb!important;box-shadow:0 1px 3px #0000000d!important}}.filters-container{display:flex;align-items:center;gap:.875rem;margin-bottom:0;flex-wrap:wrap}.filter-icon{color:var(--primary-color);font-size:1.4rem;margin-right:.25rem}.filter-label{color:#374151;font-size:.95rem;font-weight:600;margin-right:.5rem;display:flex;align-items:center;gap:.5rem}.filter-select{padding:.7rem 1rem;border:2px solid #e5e7eb;border-radius:.625rem;font-size:.95rem;background-color:#fff;cursor:pointer;transition:all .2s ease;color:#374151;font-weight:500;min-width:140px;box-shadow:0 1px 2px #0000000d}.filter-select:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #667eea26;transform:translateY(-1px)}.filter-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 4px #667eea1a,0 4px 12px #667eea26}.filter-select-state{min-width:160px}.filters-container input[type=date]{padding:.7rem 1rem;border:2px solid #e5e7eb;border-radius:.625rem;font-size:.95rem;background-color:#fff;cursor:pointer;transition:all .2s ease;color:#374151;font-weight:500;min-width:160px;box-shadow:0 1px 2px #0000000d}.filters-container input[type=date]:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #667eea26;transform:translateY(-1px)}.filters-container input[type=date]:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 4px #667eea1a,0 4px 12px #667eea26}.filters-container>div{display:flex;align-items:center;gap:.5rem}.date-filter-wrapper{display:flex;align-items:center;gap:.5rem}.date-filter-wrapper label{font-size:.9rem;color:#6b7280;font-weight:500;white-space:nowrap;min-width:fit-content}.filters-container>div:not(.date-filter-wrapper) label{font-size:.9rem;color:#6b7280;font-weight:500;white-space:nowrap;min-width:fit-content}.clear-filters-btn{padding:.7rem 1.25rem;border:2px solid #ef4444;border-radius:.625rem;font-size:.95rem;font-weight:600;background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s ease;box-shadow:0 1px 3px #ef444433;margin-left:auto}.clear-filters-btn:hover{background:linear-gradient(135deg,#fecaca,#fca5a5);border-color:#dc2626;box-shadow:0 4px 12px #ef44444d;transform:translateY(-1px)}.clear-filters-btn:active{transform:translateY(0)}.clear-filters-btn .material-icons{font-size:1.1rem}.invoice-single-column{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem;max-width:1200px;margin-left:auto;margin-right:auto}.invoice-bill-type-toggle{margin-bottom:1.5rem;padding-bottom:1.25rem;border-bottom:2px solid #e5e7eb}.toggle-container{display:flex;gap:.5rem;background:#f3f4f6;padding:.25rem;border-radius:.75rem;width:100%;max-width:400px;margin:0 auto}.toggle-option{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;border:none;background:transparent;color:#6b7280;font-size:1rem;font-weight:600;border-radius:.5rem;cursor:pointer;transition:all .3s ease;position:relative}.toggle-option .material-icons{font-size:1.25rem;transition:color .3s ease}.toggle-option:hover{color:#374151;background:#ffffff80}.toggle-option.active{background:#fff;color:#667eea;box-shadow:0 2px 8px #667eea33;transform:translateY(-1px)}.toggle-option.active .material-icons{color:#667eea}.toggle-option:not(.active){color:#9ca3af}.toggle-option:not(.active):hover{color:#6b7280;background:#ffffff4d}.invoice-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.invoice-section{margin-bottom:1.5rem}.invoice-section:last-of-type{margin-bottom:0}.invoice-section-title{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:2px solid #e5e7eb}.invoice-section-title h4{margin:0;font-size:1.15rem;font-weight:600;color:#111827;flex:1}.invoice-section-title .material-icons{font-size:1.4rem;color:#667eea}.invoice-section-title .icon-button-add{background:#667eea;border:none;color:#fff;padding:.5rem .75rem;border-radius:.375rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;margin-left:auto;font-size:.9rem;font-weight:500;gap:.25rem;box-shadow:0 2px 4px #667eea4d}.invoice-section-title .icon-button-add:hover{background:#5568d3;box-shadow:0 4px 8px #667eea66;transform:translateY(-1px)}.invoice-section-title .icon-button-add .material-icons{font-size:1.2rem}.invoice-section-divider{height:1px;background:#e5e7eb;margin:1.5rem 0}.invoice-summary-section{background:linear-gradient(135deg,#f9fafb,#fff);padding:1.25rem;border-radius:.5rem;border:1px solid #e5e7eb}.invoice-summary-section .invoice-section-title{border-bottom-color:#d1d5db}.invoice-summary-section .invoice-section-title .material-icons{color:#10b981}.invoice-card{background:#fff;border-radius:.75rem;box-shadow:0 2px 8px #00000014;overflow:hidden;transition:box-shadow .2s ease}.invoice-card:hover{box-shadow:0 4px 12px #0000001f}.invoice-card-header{display:flex;align-items:center;gap:.75rem;padding:1.25rem 1.5rem;background:var(--primary-gradient);color:#fff}.invoice-card-header h3{margin:0;font-size:1.25rem;font-weight:600;flex:1}.invoice-card-header .material-icons{font-size:1.5rem}.invoice-card-header .icon-button-add{background:#fff3;border:none;color:#fff;padding:.5rem;border-radius:.375rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .2s ease}.invoice-card-header .icon-button-add:hover{background:#ffffff4d}.invoice-card-body{padding:1.5rem}.invoice-select,.invoice-input{width:100%;padding:.75rem;border:1.5px solid #e5e7eb;border-radius:.5rem;font-size:1rem;transition:all .2s ease;background:#fff}.invoice-select:focus,.invoice-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.customer-info-box{margin-top:1rem;padding:1rem;background:#f9fafb;border-radius:.5rem;border-left:3px solid #667eea}.customer-info-row{display:flex;margin-bottom:.5rem;font-size:.95rem}.customer-info-row:last-child{margin-bottom:0}.customer-info-label{font-weight:600;color:#6b7280;min-width:80px}.customer-info-value{color:#111827;flex:1}.invoice-items-table-wrapper{overflow-x:auto;overflow-y:visible;margin:0;padding:0}.invoice-items-table{width:100%;border-collapse:separate;border-spacing:0;overflow:visible}.invoice-items-table thead th{background:#f9fafb;color:#374151;font-weight:600;font-size:.9rem;padding:.75rem .5rem;text-align:left;border-bottom:2px solid #e5e7eb;white-space:nowrap}.invoice-items-table tbody td{padding:.75rem .5rem;border-bottom:1px solid #f3f4f6;vertical-align:middle;position:relative;overflow:visible}.invoice-items-table tbody tr{position:relative;overflow:visible}.invoice-items-table tbody tr:hover{background:#f9fafb}.invoice-input-small{width:100%;padding:.5rem;border:1.5px solid #e5e7eb;border-radius:.375rem;font-size:.9rem;transition:all .2s ease}.invoice-input-small:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea1a}.item-select-wrapper{position:relative;z-index:1}.item-search-input{width:100%;padding:.5rem;border:1.5px solid #e5e7eb;border-radius:.375rem;font-size:.9rem;transition:all .2s ease}.item-search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea1a}.item-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1.5px solid #e5e7eb;border-radius:.5rem;box-shadow:0 4px 12px #00000026;z-index:1000;max-height:200px;overflow-y:auto;margin-top:.25rem}.item-dropdown-item{padding:.75rem 1rem;cursor:pointer;transition:background .2s ease;border-bottom:1px solid #f3f4f6}.item-dropdown-item:last-child{border-bottom:none}.item-dropdown-item:hover{background:#f9fafb}.item-dropdown-name{font-weight:500;color:#111827;margin-bottom:.25rem}.item-dropdown-details{font-size:.85rem;color:#6b7280}.invoice-line-total{font-weight:600;color:#111827;font-size:.95rem}.icon-button-remove{background:transparent;border:none;color:#ef4444;cursor:pointer;padding:.25rem;border-radius:.375rem;display:inline-flex;align-items:center;justify-content:center;transition:background .2s ease}.icon-button-remove:hover{background:#fee2e2}.icon-button-remove .material-icons{font-size:1.2rem}.invoice-summary-card{background:linear-gradient(135deg,#f9fafb,#fff);border:2px solid #e5e7eb}.invoice-summary-card .invoice-card-header{background:var(--success-gradient)}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;font-size:1rem}.summary-label{color:#6b7280;font-weight:500}.summary-value{color:#111827;font-weight:600}.summary-divider{height:1px;background:#e5e7eb;margin:.75rem 0}.summary-total{margin-top:.5rem;padding-top:1rem;border-top:2px solid #e5e7eb}.summary-total .summary-label{font-size:1.15rem;color:#111827;font-weight:700}.summary-total .summary-value{font-size:1.5rem;color:#059669;font-weight:700}.invoice-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem;margin-top:.5rem}.primary-button{background:var(--primary-gradient);color:#fff;border:none;padding:.875rem 2rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;transition:all .2s ease;box-shadow:0 2px 8px #667eea4d}.primary-button:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.primary-button:active{transform:translateY(0)}.section{margin-bottom:1.5rem}.section:last-of-type{margin-bottom:0}.section-title{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:2px solid #e5e7eb}.section-title h4{margin:0;font-size:1.15rem;font-weight:600;color:#111827;flex:1}.section-title .material-icons{font-size:1.4rem;color:var(--primary-color)}.section-divider{height:1px;background:#e5e7eb;margin:1.5rem 0}.secondary-button{background:#fff;color:#374151;border:1.5px solid #d1d5db;padding:.875rem 1.5rem;border-radius:.5rem;font-size:1rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;transition:all .2s ease}.secondary-button:hover{background:#f9fafb;border-color:#9ca3af}@media(max-width:768px){.invoice-details-grid{grid-template-columns:1fr}}@media(max-width:768px){.invoice-single-column{gap:1rem;margin-bottom:1rem;padding:0 .5rem}.invoice-card{border-radius:.5rem}.invoice-card-header{padding:.875rem 1rem}.invoice-card-header h3{font-size:1.05rem}.invoice-card-header .material-icons{font-size:1.3rem!important}.invoice-card-body{padding:1rem .875rem}.invoice-section{margin-bottom:1.25rem}.invoice-section-title{margin-bottom:1rem;padding-bottom:.5rem}.invoice-section-title h4{font-size:1.05rem}.invoice-section-title .material-icons{font-size:1.25rem!important}.invoice-section-title .icon-button-add{padding:.4rem .6rem;font-size:.85rem}.invoice-section-title .icon-button-add .material-icons{font-size:1.1rem!important}.invoice-section-divider{margin:1rem 0}.invoice-details-grid{grid-template-columns:1fr;gap:.875rem}.form-row{margin-bottom:.875rem}.form-row label{font-size:.9rem;margin-bottom:.4rem}.form-row label .material-icons{font-size:1rem!important}.invoice-select,.invoice-input{font-size:.95rem;padding:.65rem .75rem}.invoice-input-small{font-size:.85rem;padding:.5rem .4rem}.invoice-items-table-wrapper{margin:0;padding:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.invoice-items-table{font-size:.8rem;min-width:600px}.invoice-items-table thead th{padding:.5rem .3rem;font-size:.8rem}.invoice-items-table tbody td{padding:.5rem .3rem}.icon-button-remove{padding:.35rem!important}.icon-button-remove .material-icons{font-size:1.1rem!important}.invoice-line-total{font-size:.85rem;font-weight:600}.summary-row{padding:.6rem 0;font-size:.9rem}.summary-label{font-size:.9rem}.summary-value{font-size:.95rem}.summary-total{font-size:1rem}.summary-total .summary-label,.summary-total .summary-value{font-size:1.05rem}.summary-divider{margin:.5rem 0}.invoice-actions{flex-direction:column;gap:.75rem;padding-top:.75rem;margin-top:.5rem}.primary-button,.secondary-button{width:100%;justify-content:center;padding:.875rem 1rem;font-size:.95rem}.primary-button .material-icons,.secondary-button .material-icons{font-size:1.1rem!important;margin-right:.4rem!important}.item-dropdown{max-width:calc(100vw - 2rem);max-height:300px}.item-dropdown-item{padding:.75rem;font-size:.9rem}.item-dropdown-name{font-size:.9rem}.item-dropdown-details{font-size:.8rem}.invoice-bill-type-toggle{margin-bottom:1.25rem;padding-bottom:1rem}.toggle-container{max-width:100%;padding:.2rem}.toggle-option{padding:.65rem 1rem;font-size:.9rem;gap:.4rem}.toggle-option .material-icons{font-size:1.1rem}.modal-content{max-width:95vw;margin:.5rem;overflow-x:hidden}.modal-content .table-wrapper{margin:0 -1rem;padding:0 1rem;width:calc(100% + 2rem);-webkit-overflow-scrolling:touch}.modal-content table{min-width:700px}}.invoice-view-container{padding:1rem;background:#e5e7eb;min-height:100vh;display:flex;flex-direction:column;align-items:center}.invoice-actions{width:100%;max-width:210mm;display:flex;justify-content:space-between;margin-bottom:1rem;gap:1rem}.btn-back,.btn-print,.btn-download{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#111827;color:#fff;border:none;border-radius:.5rem;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-back:hover,.btn-print:hover,.btn-download:hover{background:#374151}.btn-back .material-icons,.btn-print .material-icons,.btn-download .material-icons{font-size:1.25rem}.invoice-a4-wrapper{width:100%;display:flex;justify-content:center;overflow-x:visible}.invoice-a4{width:210mm;min-height:297mm;background:#fff;padding:8mm 10mm;margin:0 auto;box-shadow:0 0 10px #0000001a;font-family:Arial,sans-serif;font-size:9pt;line-height:1.4;color:#000;page-break-after:always;max-width:210mm;min-width:210mm;overflow:visible;box-sizing:border-box;display:flex;flex-direction:column}.invoice-a4 *{box-sizing:border-box}.invoice-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px;border-bottom:2px solid #000;padding-bottom:8px}.invoice-logo{flex:0 0 auto;margin-right:15px}.invoice-logo img{max-width:60px;max-height:60px;object-fit:contain}.invoice-header-text{flex:1}.business-name{font-size:16pt;font-weight:700;margin:0 0 4px;color:#000}.business-details{font-size:9pt;line-height:1.4}.business-details p{margin:2px 0}.business-info-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px;font-size:9pt}.business-info-row span{white-space:nowrap}.invoice-title{text-align:center;margin:8px 0;padding:6px 0;border-top:2px solid #000;border-bottom:2px solid #000}.invoice-title h2{font-size:14pt;font-weight:700;margin:0;letter-spacing:1px;color:#000}.invoice-details-section{margin-bottom:10px}.invoice-details-table{width:100%;max-width:100%;border-collapse:collapse;border:1px solid #000;font-size:8pt;margin-bottom:8px;table-layout:fixed;box-sizing:border-box;word-wrap:break-word}.invoice-details-table thead{background:#f3f4f6;border-bottom:2px solid #000}.invoice-details-table th{padding:6px 5px;text-align:left;font-weight:700;border:1px solid #000;font-size:9pt}.invoice-details-table td{padding:6px 5px;vertical-align:top;border:1px solid #000}.seller-cell,.buyer-cell,.invoice-meta-cell{width:33.33%;word-wrap:break-word;overflow-wrap:break-word;overflow:visible;vertical-align:top}.detail-cell-content{font-size:8pt}.detail-cell-content p{margin:2px 0;line-height:1.3}.detail-cell-content p:first-child{font-weight:700;font-size:9pt;margin-bottom:3px}.info-subtable{width:100%;max-width:100%;border-collapse:collapse;margin-top:4px;font-size:8pt;table-layout:fixed;box-sizing:border-box}.info-subtable td{padding:1px 3px;border:none;vertical-align:top}.info-subtable td:first-child{width:40%;font-weight:400;white-space:nowrap}.info-subtable td:last-child{width:60%}.invoice-items-section{margin:10px 0;overflow-x:auto;overflow-y:visible;flex:1;min-height:0}.invoice-items-table{width:100%;max-width:100%;border-collapse:collapse;font-size:7.5pt;margin-bottom:8px;table-layout:fixed;box-sizing:border-box}.invoice-items-table thead{background:#f3f4f6;border-top:2px solid #000;border-bottom:2px solid #000}.invoice-items-table th{padding:6px 4px;text-align:center;font-weight:700;border:1px solid #000;font-size:8pt;vertical-align:middle;white-space:nowrap}.invoice-items-table td{padding:5px 4px;text-align:center;border:1px solid #000;font-size:7.5pt;vertical-align:top;line-height:1.4}.invoice-items-table tbody tr:nth-child(2n){background:#f9fafb}.invoice-items-table .col-sno{width:4%}.invoice-items-table .col-desc{width:28%;text-align:left}.invoice-items-table .col-qty{width:5%}.invoice-items-table .col-rate{width:7%}.invoice-items-table .col-taxable{width:8%}.invoice-items-table .col-tax-rate{width:5%}.invoice-items-table .col-tax-amt{width:6%}.invoice-items-table .col-empty{width:5%}.invoice-items-table .col-total{width:8%}.invoice-items-table td.col-desc,.invoice-items-table .col-desc{text-align:left;padding-left:5px;word-wrap:break-word;overflow-wrap:break-word;overflow:hidden}.invoice-items-table td.col-rate,.invoice-items-table td.col-taxable,.invoice-items-table td.col-tax-amt,.invoice-items-table td.col-total{text-align:right;padding-right:5px}.invoice-totals-section{margin-top:10px;flex-shrink:0}.invoice-totals-main-table{width:100%;max-width:100%;border-collapse:collapse;border:1px solid #000;font-size:8pt;table-layout:fixed;box-sizing:border-box}.invoice-totals-main-table thead{background:#f3f4f6;border-bottom:2px solid #000}.invoice-totals-main-table th{padding:6px 5px;text-align:left;font-weight:700;border:1px solid #000;font-size:9pt}.invoice-totals-main-table td{padding:6px 5px;vertical-align:top;border:1px solid #000}.invoice-totals-left{width:60%;font-size:8pt}.invoice-totals-right{width:40%}.invoice-terms,.invoice-bank-details{margin-bottom:8px}.invoice-terms h4,.invoice-bank-details h4{font-size:9pt;font-weight:700;margin:0 0 3px;color:#000}.invoice-terms p,.invoice-bank-details p{font-size:8pt;margin:0;line-height:1.3;white-space:pre-line}.invoice-totals-table{width:100%;max-width:100%;border-collapse:collapse;font-size:8pt;border:1px solid #000;table-layout:fixed;box-sizing:border-box}.invoice-totals-table td{padding:4px 6px;border:1px solid #000}.invoice-totals-table td:first-child{text-align:left;width:60%}.invoice-totals-table td:last-child{text-align:right;width:40%}.invoice-grand-total{background:#f3f4f6;font-weight:700;font-size:9pt}.invoice-signature-section{margin-top:15px;flex-shrink:0}.invoice-signature-table{width:100%;max-width:100%;border-collapse:collapse;border:1px solid #000;font-size:8pt;table-layout:fixed;box-sizing:border-box}.invoice-signature-table thead{background:#f3f4f6;border-bottom:2px solid #000}.invoice-signature-table th{padding:6px 5px;text-align:center;font-weight:700;border:1px solid #000;font-size:9pt}.invoice-signature-table td{padding:15px 5px;vertical-align:middle;border:1px solid #000;text-align:center}.signature-left,.signature-right{width:50%}.signature-image{margin-bottom:10px}.signature-image img{max-width:100px;max-height:50px;object-fit:contain}.signature-left p,.signature-right p{margin:3px 0;font-size:8pt}.invoice-header-new{margin-bottom:10px;background:#fff;padding:0}.invoice-title-top-center{text-align:center;margin-bottom:8px;width:100%}.invoice-title-top-center h2{font-size:16pt;font-weight:700!important;margin:0;color:#000;text-transform:uppercase;letter-spacing:1px;line-height:1.1}.invoice-title-top-center .invoice-original{font-size:7pt;margin-top:1px;color:#666}.business-info-table{width:100%;border-collapse:collapse;border:none;font-size:9pt}.business-info-table td{border:none;padding:6px 10px;vertical-align:top}.business-info-left{width:70%}.business-info-right{width:30%;text-align:right;background:transparent!important;background-color:transparent!important}.business-info-content{font-size:9pt;padding:0}.company-name{font-size:14pt;font-weight:700!important;color:#000;margin:0 0 4px;text-transform:uppercase;letter-spacing:.5px;line-height:1.1}.company-address{display:flex;align-items:flex-start;gap:4px;font-size:8pt;margin:0 0 3px;line-height:1.3;color:#000}.company-address .contact-icon{margin-top:2px;flex-shrink:0}.company-contact-row{display:flex;align-items:center;gap:4px;margin:0 0 2px;font-size:8pt;color:#000;line-height:1.3}.contact-icon{font-size:14px;color:#666;vertical-align:middle}.contact-label{display:none}.contact-value{color:#000}.company-ids-wrapper{margin-top:4px}.company-id-row{display:inline-block;margin:0 8px 0 0;font-size:8pt}.company-id-row:last-child{margin-right:0}.id-label{font-size:8pt;font-weight:600;text-transform:uppercase;letter-spacing:.5px;min-width:50px;margin-right:4px}.id-label{font-size:8pt;font-weight:600;text-transform:uppercase;letter-spacing:.5px;min-width:50px}.id-value{font-weight:600;letter-spacing:.5px;color:#000}.business-info-right-content{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;gap:8px;width:100%;height:100%;background:transparent!important;background-color:transparent!important}.id-label{font-size:7.5pt;font-weight:600;text-transform:uppercase;letter-spacing:.5px;opacity:.9}.id-value{font-weight:600;letter-spacing:.5px}.pan-box{background:#f3f4f6;border:1px solid #000;padding:4px 8px;margin-top:6px;display:inline-block;font-size:9pt}.header-right{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.invoice-logo-new{margin-bottom:0;width:auto;display:flex;justify-content:flex-end;align-items:flex-start;background:transparent!important;background-color:transparent!important}.invoice-logo-new img{max-width:120px;max-height:120px;width:auto;height:auto;object-fit:contain;display:block;background:transparent!important;background-color:transparent!important;mix-blend-mode:normal;-webkit-print-color-adjust:exact;print-color-adjust:exact;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;filter:none!important;-webkit-filter:none!important}.invoice-title-new{text-align:right}.invoice-title-new h2{font-size:18pt;font-weight:700;margin:0;color:#000;text-transform:uppercase;letter-spacing:2px}.invoice-original{font-size:8pt;margin-top:2px;color:#666}.invoice-details-section-new{margin:6px 0}.invoice-details-wrapper-new{width:100%;display:flex;border:1px solid #000;font-size:8pt}.customer-detail-cell{width:50%;padding:4px 6px;border-right:1px solid #000}.customer-label{font-weight:700;margin-bottom:2px;font-size:8pt}.customer-name{font-weight:700;font-size:9pt;margin-bottom:2px;line-height:1.2}.customer-address,.customer-phone,.customer-gstin,.customer-pos{font-size:7.5pt;margin:1px 0;line-height:1.2}.invoice-detail-cell{width:50%;padding:4px 6px}.invoice-detail-row{display:flex;justify-content:space-between;margin:2px 0;font-size:7.5pt;line-height:1.2}.invoice-label{font-weight:700;min-width:100px}.invoice-value{text-align:right}.invoice-items-section-new{margin:6px 0}.invoice-items-table-new{width:100%;border-collapse:collapse;font-size:7.5pt;border:2px solid #000}.invoice-items-table-new thead{background:#f3f4f6}.invoice-items-table-new th{padding:4px 3px;text-align:center;font-weight:700;border:1px solid #000;font-size:7.5pt;vertical-align:middle;line-height:1.2}.invoice-items-table-new .sub-header th{font-size:6.5pt;padding:2px 3px;font-weight:400;background:#f9fafb}.invoice-items-table-new td{padding:3px;border:1px solid #000;font-size:7.5pt;vertical-align:top;line-height:1.2;min-height:20px;height:20px}.invoice-items-table-new tbody tr{height:24px;min-height:24px}.invoice-items-table-new tbody tr:nth-child(2n){background:#f9fafb}.items-total-row{background:#e5e7eb!important;font-weight:700}.items-total-row td{font-weight:700}.col-srno{width:5%;text-align:center}.col-product{width:30%;text-align:left;padding-left:6px;font-weight:700}.col-hsn{width:8%;text-align:center}.col-qty,.col-rate{width:8%;text-align:right;padding-right:6px}.col-taxable{width:10%;text-align:right;padding-right:6px}.col-tax-header{width:6%;text-align:center}.col-tax-rate{width:5%;text-align:center}.col-tax-amt{width:7%;text-align:right;padding-right:6px}.col-total{width:10%;text-align:right;padding-right:6px;font-weight:700}.total-label{text-align:left;padding-left:6px}.invoice-totals-section-new{display:flex;justify-content:space-between;margin:6px 0;gap:15px}.totals-left{flex:1}.total-in-words{font-size:8pt}.total-in-words strong{display:block;margin-bottom:2px;font-size:8pt}.words-value{font-weight:700;text-transform:uppercase;line-height:1.2;font-size:7.5pt}.invoice-bank-section-small{margin-top:8px;display:flex;gap:10px;align-items:flex-start;font-size:8pt}.bank-details-small{flex:1}.bank-section-title-small{font-size:9pt;font-weight:700;margin-bottom:4px;padding-bottom:2px;border-bottom:1px solid #000}.bank-detail-row-small{display:flex;gap:4px;margin:2px 0;line-height:1.3;font-size:8pt}.bank-label-small{font-weight:700;min-width:90px;font-size:8pt}.bank-value-small{color:#000;font-size:8pt}.bank-qr-small{flex-shrink:0;text-align:center}.bank-qr-title-small{font-size:8pt;font-weight:700;margin-bottom:4px}.qr-code-image-small{width:80px;height:80px;object-fit:contain}.totals-right{flex:0 0 200px}.invoice-totals-wrapper-new{width:100%;font-size:8pt}.totals-row{display:flex;justify-content:space-between;padding:2px 6px;border-bottom:1px solid #e5e7eb}.totals-row:last-child{border-bottom:none}.totals-label{text-align:left;flex:1}.totals-amount{text-align:right;font-weight:400;min-width:80px}.grand-total-row{border-top:1px solid #000;border-bottom:2px solid #000;padding-top:3px;padding-bottom:3px;margin-top:2px}.grand-total-row .totals-label,.grand-total-row .totals-amount{font-weight:700}.grand-total{font-size:10pt}.eoe-row{justify-content:center;padding-top:2px;border-bottom:none}.eoe{text-align:center;font-size:8pt;font-style:italic}.invoice-bank-section-new{margin:6px 0}.bank-details-table{width:100%;border-collapse:collapse;border:1px solid #000;font-size:8pt}.bank-details-table td{border:none;border-right:1px solid #000;padding:10px;vertical-align:top}.bank-details-table td:last-child{border-right:none}.bank-details-left{width:60%}.bank-details-right{width:40%;text-align:center;height:100%}.bank-details-content{font-size:9pt;width:100%}.bank-section-header{font-weight:700;font-size:9pt;margin-bottom:4px;color:#000;text-transform:uppercase;border-bottom:1px solid #000000;padding-bottom:4px;display:block;width:100%}.bank-detail-row{display:flex;align-items:flex-start;gap:6px;margin:1px 0;font-size:8pt;line-height:1.1}.bank-label{font-weight:600;min-width:100px;color:#000}.bank-value{color:#000;flex:1}.bank-qr-content{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;padding-top:0}.qr-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;flex:1;margin-top:0;min-height:0}.qr-code-placeholder{width:100%;max-width:120px;aspect-ratio:1;border:2px dashed #ccc;display:flex;align-items:center;justify-content:center;background:#f9fafb;font-size:8pt;color:#666;margin-top:10px}.qr-code-image{width:100%;max-width:120px;height:auto;max-height:100%;object-fit:contain;margin-top:10px;border:1px solid #ccc}.qr-label{font-size:8pt;color:#666}.invoice-terms-section-new{margin:6px 0;font-size:7.5pt;line-height:1.3}.terms-content{margin-bottom:4px}.terms-content div{margin:1px 0;line-height:1.2}.customer-signature-line{margin-top:4px;padding-top:4px;border-top:1px solid #ccc;font-size:7.5pt}.invoice-certification-section{display:flex;justify-content:space-between;margin-top:8px;margin-bottom:6px}.certification-left{flex:1}.certification-right{flex:1;text-align:right;font-size:7.5pt}.certification-text{margin-bottom:4px;line-height:1.2}.invoice-certification-section-compact{display:flex;justify-content:space-between;margin-top:6px;margin-bottom:4px;font-size:7pt;line-height:1.3}.certification-left-compact{flex:1;padding-right:20px}.customer-signature-compact{font-size:7pt;margin-top:8px}.certification-right-compact{flex:1;text-align:right;font-size:7pt}.certification-text-compact{margin-bottom:3px;line-height:1.2}.company-name-signature-compact{margin-bottom:3px;font-size:7pt;line-height:1.2}.signatory-image-container-compact{margin:3px 0;text-align:right;display:flex;justify-content:flex-end;align-items:center}.signatory-image-compact{max-width:150px;max-height:75px;object-fit:contain;display:block}.authorized-signatory-compact{margin-top:2px;font-size:7pt;line-height:1.2;text-align:right}.company-name-signature{margin:8px 0;font-size:9pt}.signature-computer-generated{background:#e5e7eb;padding:6px 10px;margin:8px 0;display:inline-block;font-size:7pt;border:1px solid #ccc}.signatory-image-container{margin:8px 0;text-align:center}.signatory-image{max-width:120px;max-height:60px;object-fit:contain;display:inline-block}.authorized-signatory{margin-top:12px;font-weight:700;padding-top:8px;border-top:1px solid #ccc}.invoice-footer-new{text-align:center;margin-top:8px;padding-top:6px;border-top:1px solid #ccc;font-size:8pt;color:#666;font-style:italic}@media print{body{background:#fff}.invoice-view-container{padding:0;background:#fff}.invoice-actions{display:none}.invoice-a4{box-shadow:none;margin:0;padding:8mm 10mm;page-break-after:always;page-break-inside:avoid;min-height:277mm;overflow:visible}.invoice-header-new{page-break-after:avoid}.invoice-items-section-new{page-break-inside:auto}.invoice-items-table-new tbody tr{page-break-inside:avoid;page-break-after:auto}.invoice-items-table-new thead{display:table-header-group}.invoice-items-table-new tfoot{display:table-footer-group}.invoice-totals-section-new{page-break-inside:avoid}.invoice-header,.invoice-title,.invoice-details-section{page-break-after:avoid}.invoice-items-section,.invoice-totals-section,.invoice-signature-section{page-break-inside:avoid}.bank-details-table{border-width:.5px!important}.bank-details-table td{border-right-width:.5px!important}.invoice-items-table-new,.invoice-items-table-new th,.invoice-items-table-new td,.invoice-details-wrapper-new{border:.5px solid #666!important}.invoice-details-wrapper-new .customer-detail-cell{border-right:.5px solid #666!important}@page{size:A4;margin:0}}@media screen and (max-width:768px){.invoice-view-container{padding:.5rem;padding-top:80px;background:#f3f4f6;align-items:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch}.invoice-view-container .invoice-actions{width:100%;max-width:100%;flex-direction:row;flex-wrap:wrap;gap:.5rem;margin-bottom:0;position:fixed;top:56px;left:0;right:0;z-index:999;background:#f3f4f6;padding:.5rem;overflow-x:visible;box-shadow:0 2px 8px #00000026}.btn-back,.btn-print,.btn-download{flex:1;min-width:calc(33.333% - .35rem);justify-content:center;padding:.75rem .5rem;font-size:.85rem}.invoice-a4-wrapper{width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;display:block;position:relative;max-width:100vw}.invoice-a4{width:210mm!important;min-width:210mm!important;max-width:210mm!important;padding:8mm 10mm!important;margin:0;box-shadow:0 2px 8px #0000001a;font-size:9pt!important;flex-shrink:0;display:block}.invoice-header-new{flex-direction:column;gap:12px;align-items:flex-start}.header-left{width:100%}.header-right{width:100%;align-items:flex-start;text-align:left}.invoice-title-new{text-align:left}.invoice-title-top-center{margin-bottom:12px}.invoice-title-top-center h2,.company-name{font-size:16pt}.invoice-logo-new img{max-width:100px;max-height:100px}.invoice-details-section-new{margin:8px 0}.invoice-details-wrapper-new{flex-direction:column;font-size:8pt}.customer-detail-cell,.invoice-detail-cell{width:100%!important;border-right:none;border-bottom:1px solid #000}.customer-detail-cell:last-child,.invoice-detail-cell:last-child{border-bottom:none}.invoice-detail-row{flex-direction:column;gap:2px}.invoice-label{min-width:auto;font-size:7.5pt}.invoice-value{text-align:left;font-weight:600}.invoice-items-section-new{margin:8px 0;overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%}.invoice-items-table-new{min-width:600px;font-size:7pt;width:100%}.business-info-table{min-width:600px;width:100%}.bank-details-table{min-width:500px;width:100%}.invoice-details-wrapper-new{min-width:500px;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.invoice-items-table-new th,.invoice-items-table-new td{padding:4px 3px;font-size:7pt}.col-srno{width:6%}.col-product{width:25%;font-size:6.5pt}.col-hsn,.col-qty,.col-rate,.col-taxable{width:7%}.col-tax-header,.col-tax-rate,.col-tax-amt{width:6%}.col-total{width:8%}.invoice-totals-section-new{flex-direction:column;gap:12px;margin:10px 0}.totals-left,.totals-right{width:100%;flex:1}.total-in-words{font-size:8pt;margin-bottom:12px}.words-value{font-size:7.5pt;line-height:1.5}.invoice-totals-wrapper-new{width:100%;font-size:8pt}.totals-row{padding:6px 4px}.grand-total{font-size:10pt}.invoice-bank-section-new{margin:10px 0}.bank-details-wrapper-new{flex-direction:column;font-size:8pt}.bank-details-left,.bank-details-right{width:100%!important;border-right:none;border-bottom:1px solid #000}.bank-details-right{text-align:left;padding-top:12px;border-bottom:none}.qr-code-image,.qr-code-placeholder{width:80px;height:80px}.invoice-terms-section-new{font-size:7.5pt;margin:10px 0}.terms-content{margin-bottom:10px}.invoice-certification-section{flex-direction:column;gap:12px;margin-top:16px}.certification-left{display:none}.certification-right{text-align:left;font-size:7.5pt}.invoice-certification-section-compact{flex-direction:column;gap:8px;margin-top:8px}.certification-left-compact{padding-right:0;margin-bottom:4px}.certification-right-compact{text-align:left}.signatory-image{max-width:100px;max-height:50px}.invoice-footer-new{font-size:8pt;margin-top:12px;padding-top:10px}.company-contact{flex-direction:column;gap:4px}.company-contact span{display:block}}@media screen and (max-width:480px){.invoice-a4{padding:.75rem;font-size:9pt}.company-name,.invoice-title-new h2{font-size:14pt}.invoice-items-table-new{min-width:550px;font-size:6.5pt}.invoice-items-table-new th,.invoice-items-table-new td{padding:3px 2px;font-size:6.5pt}.col-product{font-size:6pt}.total-in-words,.words-value{font-size:7pt}.invoice-totals-wrapper-new{font-size:7.5pt}.grand-total{font-size:9pt}}.admin-dashboard{min-height:100vh;background:#f3f4f6;padding:2rem}.admin-header{background:#fffffff2;border-radius:1rem;padding:2rem;margin-bottom:2rem;box-shadow:0 1px 3px #00000014}.admin-header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem}.admin-header h1{margin:0;font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:flex;align-items:center;gap:1rem}.admin-header h1 .material-icons{font-size:2.5rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.admin-header p{margin:.5rem 0 0;color:#6b7280;font-size:1.1rem}.admin-user-info{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:.75rem;color:#fff}.admin-user-info .material-icons{font-size:2.5rem}.admin-user-info div{display:flex;flex-direction:column}.admin-user-info strong{font-size:1.1rem}.admin-user-info span{font-size:.9rem;opacity:.9}.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.admin-stat-card{background:#fff;border-radius:1rem;padding:2rem;display:flex;align-items:center;gap:1.5rem;box-shadow:0 1px 3px #00000014;transition:transform .3s ease,box-shadow .3s ease;border-left:5px solid}.admin-stat-card:hover{transform:translateY(-2px);box-shadow:0 2px 6px #0000001a}.admin-stat-primary{border-left-color:#667eea}.admin-stat-success{border-left-color:#10b981}.admin-stat-warning{border-left-color:#f59e0b}.admin-stat-info{border-left-color:#3b82f6}.admin-stat-icon{width:60px;height:60px;border-radius:.75rem;display:flex;align-items:center;justify-content:center;font-size:2rem}.admin-stat-primary .admin-stat-icon{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.admin-stat-success .admin-stat-icon{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.admin-stat-warning .admin-stat-icon{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.admin-stat-info .admin-stat-icon{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.admin-stat-content h3{margin:0;font-size:2.5rem;font-weight:700;color:#111827}.admin-stat-content p{margin:.5rem 0 0;color:#6b7280;font-size:1rem;font-weight:500}.admin-card{background:#fff;border-radius:1rem;padding:2rem;margin-bottom:2rem;box-shadow:0 1px 3px #00000014}.admin-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb}.admin-card-header h2{margin:0;font-size:1.75rem;font-weight:700;color:#111827;display:flex;align-items:center;gap:.75rem}.admin-card-header h2 .material-icons{color:#667eea;font-size:2rem}.admin-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.admin-action-btn{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem;background:linear-gradient(135deg,#f9fafb,#fff);border:2px solid #e5e7eb;border-radius:.75rem;cursor:pointer;transition:all .3s ease;font-size:1rem;font-weight:600;color:#374151}.admin-action-btn:hover{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea;transform:translateY(-2px);box-shadow:0 2px 6px #667eea26}.admin-action-btn .material-icons{font-size:2.5rem}.admin-btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 1px 3px #667eea33}.admin-btn-primary:hover{transform:translateY(-1px);box-shadow:0 2px 6px #667eea40}.admin-btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#f3f4f6;color:#374151;border:2px solid #e5e7eb;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.admin-btn-secondary:hover{background:#e5e7eb;border-color:#d1d5db}.admin-btn-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:#f3f4f6;color:#374151;border:none;border-radius:.5rem;cursor:pointer;transition:all .3s ease}.admin-btn-icon:hover{background:#667eea;color:#fff}.admin-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-table{width:100%;border-collapse:collapse;font-size:.95rem}.admin-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.admin-table th{padding:1rem;text-align:left;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.admin-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background .2s ease}.admin-table tbody tr:hover{background:#f9fafb}.admin-table td{padding:1rem;color:#374151}.admin-table-empty{text-align:center;padding:3rem!important;color:#9ca3af;font-style:italic}.admin-user-cell{display:flex;align-items:center;gap:.5rem}.admin-user-cell .material-icons{font-size:1.25rem;color:#667eea}.admin-role-badge{display:inline-block;padding:.35rem .75rem;border-radius:.375rem;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.admin-role-admin{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.admin-role-owner{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.admin-action-buttons{display:flex;gap:.5rem}.admin-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.admin-modal{background:#fff;border-radius:1rem;width:100%;max-width:500px;box-shadow:0 2px 8px #0000001a;max-height:90vh;overflow-y:auto}.admin-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:2px solid #e5e7eb}.admin-modal-header h3{margin:0;font-size:1.5rem;font-weight:700;color:#111827;display:flex;align-items:center;gap:.75rem}.admin-modal-header h3 .material-icons{color:#667eea}.admin-modal-body{padding:1.5rem}.admin-form-group{margin-bottom:1.5rem}.admin-form-group label{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-weight:600;color:#374151;font-size:.95rem}.admin-form-group label .material-icons{font-size:1.25rem;color:#667eea}.admin-form-group input{width:100%;padding:.75rem;border:2px solid #e5e7eb;border-radius:.5rem;font-size:1rem;transition:border-color .3s ease}.admin-form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.admin-modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem;border-top:2px solid #e5e7eb}@media(max-width:768px){.admin-dashboard{padding:1rem}.admin-header{padding:1.5rem}.admin-header h1{font-size:1.75rem}.admin-header-content{flex-direction:column;align-items:flex-start}.admin-stats-grid{grid-template-columns:1fr;gap:1rem}.admin-stat-card,.admin-card{padding:1.5rem}.admin-actions-grid{grid-template-columns:1fr}.admin-table-wrapper{margin:0 -1rem;padding:0 1rem}.admin-table{font-size:.85rem;min-width:700px}.admin-table th,.admin-table td{padding:.75rem .5rem}.admin-modal{margin:1rem;max-width:calc(100% - 2rem)}}.role-badge{display:inline-block;padding:.35rem .75rem;border-radius:.375rem;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.role-admin{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.role-owner{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.bill-type-badge{display:inline-block;padding:.35rem .75rem;border-radius:.375rem;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.bill-type-gst{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 2px 4px #10b9814d}.bill-type-non-gst{background:linear-gradient(135deg,#6b7280,#4b5563);color:#fff;box-shadow:0 2px 4px #6b72804d}.plan-banner{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;border-radius:.5rem;box-shadow:0 2px 8px #667eea33}.plan-banner-warning{background:linear-gradient(135deg,#f59e0b,#d97706)}.plan-banner-info{background:linear-gradient(135deg,#667eea,#764ba2)}.plan-banner-expired{background:linear-gradient(135deg,#ef4444,#dc2626)}.plan-banner-content{display:flex;align-items:center;gap:.75rem;flex:1}.plan-banner-content .material-icons{font-size:1.5rem}.plan-banner-text{font-size:.95rem}.plan-banner-close{background:#fff3;border:none;color:#fff;cursor:pointer;padding:.25rem;border-radius:.25rem;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.plan-banner-close:hover{background:#ffffff4d}.plan-banner-close .material-icons{font-size:1.25rem}@media(max-width:768px){.plan-banner{padding:.625rem .875rem;margin-bottom:.75rem}.plan-banner-text{font-size:.85rem}.plan-banner-content .material-icons{font-size:1.25rem}}
