@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;color:#333;line-height:1.6}.app{position:relative;min-height:100vh;overflow-x:hidden}.orb{position:fixed;border-radius:50%;filter:blur(40px);opacity:.15;z-index:0;animation:float 6s ease-in-out infinite}.orb:nth-child(1){animation-delay:0s}.orb:nth-child(2){animation-delay:2s}.orb:nth-child(3){animation-delay:4s}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(180deg)}}header{text-align:center;padding:2rem 1rem;position:relative;z-index:1}.relative{position:relative;display:inline-block}h1{font-size:3rem;font-weight:800;background:linear-gradient(135deg,#fff,#e0e7ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.header-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:200px;height:100px;background:linear-gradient(135deg,#0ff,#f0f);filter:blur(60px);opacity:.3;z-index:-1}.subtitle{color:#fffc;font-size:1.1rem;font-weight:300}.main-content{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:0 1rem 3rem}.card{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;padding:2rem;margin-bottom:2rem;box-shadow:0 20px 40px #0000001a;border:1px solid rgba(255,255,255,.2)}.card h2{font-size:1.8rem;font-weight:700;color:#1f2937;margin-bottom:.5rem}.description{color:#6b7280;margin-bottom:2rem}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.section-title{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#374151;margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:2px solid #e5e7eb}.form-group{margin-bottom:1.5rem}.form-label{display:block;font-weight:500;color:#374151;margin-bottom:.5rem}.optional-badge{background:#d1fae5;color:#065f46;padding:.2rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500}.form-input{width:100%;padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;transition:all .3s ease;background:#fff}.form-input:focus{outline:none;border-color:#0072ff;box-shadow:0 0 0 3px #0072ff1a}.form-input[readonly]{background-color:#f9fafb;cursor:not-allowed}.logo-preview{margin-top:.5rem}.logo-preview img{max-width:100px;max-height:60px;border-radius:8px;border:2px solid #e5e7eb}.invoice-number-input{position:relative;display:flex;align-items:center}.edit-invoice-number{position:absolute;right:.5rem;background:none;border:none;color:#6b7280;cursor:pointer;padding:.5rem;border-radius:6px;transition:all .3s ease}.edit-invoice-number:hover{background:#f3f4f6;color:#374151}.invoice-number-hint{display:block;margin-top:.5rem;color:#6b7280;font-size:.875rem}.date-range{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.discount-input-group{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.discount-type,.discount-value{min-width:0}.gst-type-selector{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2rem}.gst-type-btn{display:flex;align-items:center;justify-content:center;padding:1rem;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .3s ease;text-align:center;font-weight:500}.gst-type-btn:hover{border-color:#0072ff}.gst-type-btn.active{border-color:#0072ff;background:#0072ff0d;color:#0072ff}.items-container{margin-bottom:2rem}.item-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr auto;gap:1rem;align-items:start;padding:1rem;background:#f8fafc;border-radius:12px;margin-bottom:1rem;position:relative}.item-field{min-width:0}.remove-item{background:#ef4444;color:#fff;border:none;border-radius:8px;padding:.75rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.remove-item:hover:not(.disabled){background:#dc2626}.remove-item.disabled{background:#9ca3af;cursor:not-allowed;opacity:.5}.action-buttons{display:flex;gap:1rem;flex-wrap:wrap}.btn-secondary,.btn-action{display:flex;align-items:center;padding:.75rem 1.5rem;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none}.btn-secondary{background:#f3f4f6;color:#374151;border:2px solid #e5e7eb}.btn-secondary:hover{background:#e5e7eb}.btn-action{background:linear-gradient(135deg,#0072ff,#00c6ff);color:#fff}.btn-action:hover{transform:translateY(-2px);box-shadow:0 10px 20px #0072ff4d}.preview-section{margin-top:2rem}.preview-header{display:flex;justify-content:between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.preview-actions-top{display:flex;gap:1rem;flex-wrap:wrap}.invoice-preview{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 4px 6px #0000000d;border:1px solid #e5e7eb}.premium-company-name{font-size:1.5rem;font-weight:800;color:#1f2937;background:linear-gradient(135deg,#0072ff,#00c6ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.premium-invoice-title{font-size:1.8rem;font-weight:800;background:linear-gradient(135deg,#1f2937,#374151);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.invoice-header-section{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:3px solid #1f2937}.company-info{display:flex;align-items:flex-start;gap:1rem;flex:1}.company-logo{max-width:80px;max-height:50px;border-radius:8px}.company-details h1{margin-bottom:.5rem}.company-address,.company-gst,.company-state{color:#6b7280;font-size:.9rem;margin-bottom:.25rem}.invoice-title-section{text-align:right}.invoice-main-title{font-size:2rem;font-weight:700;color:#1f2937;margin-bottom:1rem}.invoice-meta{background:#f8fafc;padding:1rem;border-radius:8px;border-left:4px solid #0072ff}.meta-row{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.9rem}.meta-label{font-weight:600;color:#374151}.meta-value{color:#1f2937;font-weight:500}.billing-section{margin-bottom:2rem}.billing-parties{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.billing-party{background:#f8fafc;padding:1.5rem;border-radius:12px;border-left:4px solid #0072ff}.party-title{font-weight:700;color:#1f2937;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #e5e7eb}.party-details p{margin-bottom:.5rem;color:#4b5563}.party-name{font-weight:600;color:#1f2937;font-size:1.1rem}.supply-details{display:flex;gap:2rem;background:#e5e7eb;padding:1rem;border-radius:8px;font-size:.9rem}.supply-info{display:flex;gap:.5rem}.supply-label{font-weight:600;color:#374151}.supply-value{color:#1f2937}.invoice-items-table{width:100%;border-collapse:collapse;margin:2rem 0;font-size:.9rem}.invoice-items-table th{background:#1f2937;color:#fff;font-weight:600;padding:1rem;text-align:center;border:none}.invoice-items-table td{padding:1rem;border-bottom:1px solid #e5e7eb;text-align:center}.text-center{text-align:center}.text-right{text-align:right}.item-description{text-align:left;font-weight:500}.item-total{font-weight:600;color:#1f2937}.totals-section{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin:2rem 0}.amount-in-words{background:#f0f9ff;padding:1.5rem;border-radius:12px;border-left:4px solid #0072ff;font-style:italic;color:#374151}.totals-grid{background:#f8fafc;padding:1.5rem;border-radius:12px}.total-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #e5e7eb}.discount-row{color:#ef4444;font-weight:500}.grand-total-row{display:flex;justify-content:space-between;padding:1rem 0;border-top:3px double #1f2937;font-size:1.2rem;font-weight:700;color:#1f2937}.notes-section{background:#fff3cd;border:1px solid #ffeaa7;padding:1.5rem;border-radius:12px;margin:1.5rem 0}.notes-content{color:#856404;line-height:1.6}.invoice-footer-section{margin-top:3rem;padding-top:2rem;border-top:3px solid #e5e7eb}.footer-content{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:2rem}.signature-section{flex:1}.signature-box{text-align:center}.signature-line{width:200px;height:1px;background:#374151;margin:0 auto .5rem}.footer-text{text-align:center;flex:1}.thankyou-note{font-size:1.1rem;font-weight:600;color:#1f2937;margin-bottom:.5rem}.generated-note{color:#6b7280;font-style:italic}.floating-action{position:fixed;bottom:2rem;right:2rem;width:60px;height:60px;background:linear-gradient(135deg,#0072ff,#00c6ff);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;box-shadow:0 10px 25px #0072ff4d;transition:all .3s ease;z-index:1000}.floating-action:hover{transform:translateY(-5px);box-shadow:0 15px 30px #0072ff66}footer{text-align:center;padding:2rem;color:#ffffffb3;position:relative;z-index:1}@media(max-width:1024px){.grid-2{grid-template-columns:1fr;gap:1.5rem}.item-row{grid-template-columns:1fr 1fr 1fr;gap:.75rem}.totals-section{grid-template-columns:1fr;gap:1.5rem}}@media(max-width:768px){h1{font-size:2.5rem}.card{padding:1.5rem;border-radius:16px}.invoice-header-section{flex-direction:column;gap:1.5rem}.company-info{flex-direction:column;text-align:center}.invoice-title-section{text-align:center}.billing-parties{grid-template-columns:1fr}.supply-details{flex-direction:column;gap:.75rem}.item-row{grid-template-columns:1fr;gap:.5rem}.gst-type-selector{grid-template-columns:1fr}.action-buttons{flex-direction:column}.preview-header{flex-direction:column;align-items:stretch}.preview-actions-top{justify-content:center}.footer-content{flex-direction:column;text-align:center;gap:1.5rem}.invoice-preview{padding:1rem;overflow-x:auto}.invoice-items-table{font-size:.8rem}.invoice-items-table th,.invoice-items-table td{padding:.5rem}}@media(max-width:480px){h1{font-size:2rem}.card{padding:1rem;border-radius:12px}.main-content{padding:0 .5rem 2rem}header{padding:1.5rem .5rem}.discount-input-group,.date-range{grid-template-columns:1fr}.floating-action{bottom:1rem;right:1rem;width:50px;height:50px}.invoice-main-title{font-size:1.5rem}.meta-row{flex-direction:column;gap:.25rem}}@media print{body{background:#fff!important}.app>*:not(.invoice-preview){display:none!important}.invoice-preview{box-shadow:none!important;border:none!important;padding:0!important;margin:0!important}.floating-action,footer{display:none!important}}.mt-6{margin-top:1.5rem}.mr-2{margin-right:.5rem}.gst-validation{margin-top:.25rem;font-size:.75rem}.gst-validation.valid{color:#059669}.gst-validation.invalid{color:#dc2626}.form-input.error{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.error-message{color:#dc2626;font-size:.875rem;margin-top:.25rem;display:flex;align-items:center}.input-hint{color:#6b7280;font-size:.75rem;margin-top:.25rem;display:block}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}
