:root{--bg-color: #ffffff;--text-color: #000000;--grey-color: #666666;--border-color: #000000;--error-color: #dc2626;--success-color: #16a34a;--warning-color: #f59e0b;--info-color: #2563eb;--standard-spacing: 16px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background-color:var(--bg-color);color:var(--text-color);line-height:1.5}.app{max-width:1100px;margin:0 auto;padding:16px 16px 32px;min-height:100vh;display:flex;flex-direction:column}main{flex:1}h1{font-size:24px;font-weight:600;text-transform:lowercase}h2{font-size:18px;font-weight:600;text-transform:lowercase;margin-bottom:16px}h3{font-size:14px;font-weight:600;text-transform:lowercase}a{color:var(--text-color)}.text-grey{color:var(--grey-color)}.text-error{color:var(--error-color)}.text-success{color:var(--success-color)}.text-small{font-size:12px}.text-right{text-align:right}.text-muted{color:var(--grey-color)}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.justify-between{justify-content:space-between}.items-center{align-items:center}.gap-1{gap:8px}.gap-2{gap:16px}.unauthenticated{text-align:center;padding:60px 20px}.unauthenticated h2{margin-bottom:8px}.unauthenticated p{color:var(--grey-color);margin-bottom:24px}.sign-in-btn{display:inline-block;padding:10px 24px;border:1px solid var(--border-color);background:var(--text-color);color:var(--bg-color);text-decoration:none;font-size:14px}.sign-in-btn:hover{background:var(--bg-color);color:var(--text-color)}.nav-tabs{display:flex;gap:16px;border-bottom:1px solid var(--border-color);margin-bottom:24px;overflow-x:auto}.nav-tabs a{padding:8px 0;font-size:14px;color:var(--grey-color);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}.nav-tabs a:hover{color:var(--text-color)}.nav-tabs a.active{color:var(--text-color);border-bottom-color:var(--text-color)}footer{margin-top:32px;padding-top:16px;border-top:1px solid var(--border-color);color:var(--grey-color);font-size:12px}footer a{color:var(--grey-color);text-decoration:none}footer a:hover{color:var(--text-color)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:24px}.stat-card{border:1px solid var(--border-color);padding:16px}.stat-value{font-size:24px;font-weight:600}.stat-value.success{color:var(--success-color)}.stat-value.warning{color:var(--warning-color)}.stat-value.error{color:var(--error-color)}.stat-label{font-size:12px;color:var(--grey-color);text-transform:lowercase}.expense-bar{display:flex;height:32px;border:1px solid var(--border-color);margin-bottom:16px;overflow:hidden}.expense-bar-segment{height:100%;display:flex;align-items:center;justify-content:center;font-size:10px;color:#fff;overflow:hidden;min-width:0}.expense-bar-segment:nth-child(1){background:#3b82f6}.expense-bar-segment:nth-child(2){background:#10b981}.expense-bar-segment:nth-child(3){background:#f59e0b}.expense-bar-segment:nth-child(4){background:#ef4444}.expense-bar-segment:nth-child(5){background:#8b5cf6}.expense-bar-segment:nth-child(n+6){background:#6b7280}.revenue-bar{display:flex;height:24px;border:1px solid var(--border-color);margin-bottom:16px}.revenue-bar-segment{height:100%}.revenue-bar-paid{background:#dcfce7}.revenue-bar-outstanding{background:#fef3c7}.revenue-bar-draft{background:#f3f4f6}table{width:100%;border-collapse:collapse}th{text-align:left;padding:8px;border-bottom:2px solid var(--border-color);font-size:12px;text-transform:lowercase;font-weight:600;cursor:pointer;white-space:nowrap}th:hover{background:#f5f5f5}td{padding:8px;border-bottom:1px solid #eee;font-size:14px}tr:hover td{background:#fafafa}th:last-child,td:last-child{text-align:right}th.sorted{color:var(--text-color)}th.sorted:after{content:" ↓"}th.sorted.asc:after{content:" ↑"}.status-badge{display:inline-block;padding:2px 8px;font-size:11px;text-transform:uppercase;border:1px solid}.status-badge.draft{color:var(--grey-color);border-color:var(--grey-color)}.status-badge.sent{color:var(--info-color);border-color:var(--info-color)}.status-badge.paid{color:var(--success-color);border-color:var(--success-color);background:#dcfce7}.status-badge.overdue{color:var(--error-color);border-color:var(--error-color)}.status-badge.cancelled{color:var(--grey-color);border-color:var(--grey-color);background:#f3f4f6}.status-badge.viewed{color:var(--warning-color);border-color:var(--warning-color)}.status-badge.accepted{color:var(--success-color);border-color:var(--success-color);background:#dcfce7}.status-badge.declined{color:var(--error-color);border-color:var(--error-color)}.status-badge.expired{color:var(--grey-color);border-color:var(--grey-color);background:#f3f4f6}.card-item{border:1px solid var(--border-color);padding:16px;margin-bottom:8px}.card-item:hover{background-color:#fafafa}.btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-color);font-family:inherit;font-size:14px;cursor:pointer;text-decoration:none}.btn:hover,.btn-primary{background:var(--text-color);color:var(--bg-color)}.btn-primary:hover{background:var(--bg-color);color:var(--text-color)}.view-toggle{display:flex;border:1px solid var(--border-color)}.view-toggle button{padding:6px 12px;border:none;background:var(--bg-color);color:var(--text-color);font-family:inherit;font-size:14px;cursor:pointer}.view-toggle button:not(:last-child){border-right:1px solid var(--border-color)}.view-toggle button.active{background:var(--text-color);color:var(--bg-color)}.filters{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap;align-items:center}.filters select,.filters input{padding:6px 10px;border:1px solid var(--border-color);font-family:inherit;font-size:14px;background:#fff}.filters input[type=date]{min-width:140px}.filters input[type=search]{min-width:200px}.form-section{margin-bottom:16px}.form-section label{display:block;font-size:12px;margin-bottom:4px;color:var(--grey-color)}.form-row{display:flex;gap:16px}.form-row>*{flex:1}input[type=text],input[type=email],input[type=number],input[type=tel],input[type=url],input[type=date]{font-family:Inter,sans-serif;width:100%;padding:8px;border:1px solid var(--border-color);border-radius:0;font-size:14px}input:focus{outline:none;border-color:var(--text-color)}textarea{font-family:Inter,sans-serif;width:100%;padding:8px;border:1px solid var(--border-color);border-radius:0;font-size:14px;resize:vertical}textarea:focus{outline:none;border-color:var(--text-color)}select{font-family:Inter,sans-serif;padding:8px;border:1px solid var(--border-color);border-radius:0;font-size:14px;background:#fff}select:focus{outline:none;border-color:var(--text-color)}.line-items-table{margin-bottom:16px}.line-items-table input{width:100%}.line-items-table .description-col{width:40%}.line-items-table .qty-col{width:15%}.line-items-table .price-col,.line-items-table .amount-col{width:20%}.line-items-table .remove-col{width:5%}.totals-section{margin-left:auto;width:250px}.totals-row{display:flex;justify-content:space-between;padding:8px 0;font-size:14px}.totals-row.total{border-top:2px solid var(--border-color);font-weight:600;font-size:18px;padding-top:12px}.help-text{font-size:12px;color:var(--grey-color)}.link-button{background:none;border:none;color:var(--text-color);text-decoration:underline;cursor:pointer;font-size:12px;padding:0}.link-button:hover{color:var(--grey-color)}.link-button.danger{color:var(--error-color)}.tabs{display:flex;gap:16px;border-bottom:1px solid var(--border-color);margin-bottom:16px}.tab{padding:8px 0;font-size:14px;color:var(--grey-color);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;background:none;border-left:none;border-right:none;border-top:none;font-family:inherit}.tab.active{color:var(--text-color);border-bottom-color:var(--text-color)}.actions-bar{display:flex;gap:8px;padding:16px 0;border-top:1px solid var(--border-color);margin-top:24px}.document-preview{border:1px solid var(--border-color);padding:40px;background:#fff}.document-preview .header{display:flex;justify-content:space-between;margin-bottom:40px}.document-preview .business-info h2{margin-bottom:8px}.document-preview .doc-meta{text-align:right}.document-preview .doc-meta h1{font-size:32px;font-weight:400}.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}.modal{background:#fff;padding:24px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal h2{margin-bottom:16px}.modal-footer{display:flex;gap:8px;justify-content:flex-end;margin-top:24px;padding-top:16px;border-top:1px solid var(--border-color)}.signature-canvas{border:1px solid var(--border-color);background:#fff;touch-action:none}.signature-type-input{font-family:Brush Script MT,cursive;font-size:32px;padding:16px;text-align:center}.verification-status{padding:24px;text-align:center;border:2px solid;margin-bottom:24px}.verification-status.verified{border-color:var(--success-color);background:#dcfce7}.verification-status.failed{border-color:var(--error-color);background:#fef2f2}.verification-icon{font-size:48px;margin-bottom:8px}.public-actions{display:flex;gap:16px;justify-content:center;margin-top:32px}.public-actions button{min-width:150px}.terms-section{margin-top:24px;padding-top:24px;border-top:1px solid var(--border-color)}.terms-section h3{cursor:pointer;display:flex;align-items:center;gap:8px}.terms-content{margin-top:8px;padding:16px;background:#f9f9f9;font-size:12px;color:var(--grey-color);white-space:pre-wrap}.empty-state,.loading{text-align:center;padding:40px;color:var(--grey-color)}.section{margin-bottom:32px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.details-row td{background:#f9f9f9;border-bottom:1px solid #ddd}.details-row:hover td{background:#f5f5f5}.receipt-details{padding:8px 0}.detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px 24px}.detail-item{display:flex;flex-direction:column;gap:2px}.detail-label{font-size:11px;text-transform:uppercase;color:var(--grey-color);letter-spacing:.5px}.detail-value{font-size:14px;font-weight:500}.table-container{overflow-x:auto;margin:0 -16px;padding:0 16px}@media (max-width: 768px){.nav-tabs{gap:12px}.nav-tabs a{font-size:13px}.stats-grid{grid-template-columns:repeat(2,1fr)}.filters{flex-direction:column;align-items:stretch}.filters select,.filters input{width:100%}.page-header{flex-direction:column;align-items:flex-start;gap:12px}.detail-grid{grid-template-columns:repeat(2,1fr)}.form-row{flex-direction:column;gap:0}.totals-section{width:100%}.public-actions{flex-direction:column}.document-preview{padding:20px}}
