*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;color:#1f2937}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--brand-dark: #292c2f;--brand-white: #ffffff;--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-light: #dbeafe;--color-primary-focus: rgba(37, 99, 235, .1);--color-secondary: #6b7280;--color-secondary-hover: #4b5563;--color-danger: #dc2626;--color-danger-hover: #b91c1c;--color-danger-light: #fee2e2;--color-success: #10b981;--color-success-hover: #059669;--color-success-light: #d1fae5;--color-warning: #f59e0b;--color-warning-light: #fef3c7;--color-text-primary: #1f2937;--color-text-secondary: #374151;--color-text-muted: #6b7280;--color-text-light: #9ca3af;--color-bg-primary: #ffffff;--color-bg-secondary: #f9fafb;--color-bg-tertiary: #f3f4f6;--color-bg-page: #f5f5f5;--color-border: #e5e7eb;--color-border-light: #d1d5db;--color-border-dark: #e0e0e0;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 1px 3px rgba(0, 0, 0, .08);--shadow-lg: 0 4px 6px rgba(0, 0, 0, .1);--shadow-xl: 0 10px 15px rgba(0, 0, 0, .1);--transition-fast: .15s;--transition-base: .2s;--transition-slow: .3s}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.skip-link{position:absolute;top:-40px;left:0;background:#000;color:#fff;padding:8px;text-decoration:none;z-index:100}.skip-link:focus{top:0}*:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}#root{max-width:100%;margin:0 auto;min-height:100vh}nav{background-color:var(--brand-white);border-bottom:1px solid var(--color-border);padding:0 1rem;box-shadow:var(--shadow-sm);display:flex;align-items:center;justify-content:space-between}nav .nav-tabs{list-style:none;display:flex;gap:0;align-items:center;margin:0;padding:0;flex:1}nav .nav-tabs li{margin:0}.nav-tab{text-decoration:none;color:var(--color-text-muted);font-weight:500;padding:1rem 1.5rem;display:block;border-bottom:3px solid transparent;transition:all var(--transition-base);position:relative}.nav-tab:hover{color:var(--color-primary);background-color:var(--color-bg-secondary)}.nav-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);background-color:transparent}.nav-tab.active:hover{background-color:var(--color-bg-secondary)}.nav-dropdown{position:relative}.nav-tab-dropdown{display:flex;align-items:center;gap:.5rem;cursor:pointer;background:none;border:none;font-family:inherit;font-size:inherit;font-weight:500;color:var(--color-text-muted);padding:1rem 1.5rem;border-bottom:3px solid transparent;transition:all var(--transition-base);position:relative;width:100%;text-align:left}.nav-tab-dropdown:hover{color:var(--color-primary);background-color:var(--color-bg-secondary)}.nav-tab-dropdown.active{color:var(--color-primary);border-bottom-color:var(--color-primary);background-color:transparent}.nav-tab-dropdown.active:hover{background-color:var(--color-bg-secondary)}.dropdown-arrow{font-size:.75rem;transition:transform .2s;display:inline-block}.nav-dropdown.open .dropdown-arrow{transform:rotate(180deg)}.nav-dropdown-menu{position:absolute;top:100%;left:0;background-color:var(--brand-white);border:1px solid var(--color-border-dark);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);list-style:none;margin:4px 0 0;padding:.5rem 0;min-width:200px;z-index:1000}.nav-dropdown-item{display:block;padding:.75rem 1.5rem;color:var(--color-text-muted);text-decoration:none;font-weight:500;transition:all var(--transition-base);border-left:3px solid transparent}.nav-dropdown-item:hover{background-color:var(--color-bg-secondary);color:var(--color-primary);border-left-color:var(--color-primary)}.nav-dropdown-item.active{color:var(--color-primary);background-color:var(--color-primary-light);border-left-color:var(--color-primary)}@media(max-width:768px){nav{padding:0 1rem;flex-wrap:wrap}nav .nav-tabs{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}nav .nav-tabs::-webkit-scrollbar{display:none}.nav-tab{padding:.75rem 1rem;font-size:.875rem;white-space:nowrap}.user-info{flex-wrap:wrap;gap:.5rem;padding:.5rem;font-size:.875rem}.user-email{font-size:.875rem}.user-role{font-size:.75rem}.logout-button{padding:.5rem .75rem;font-size:.75rem}.nav-dropdown-menu{min-width:180px;left:0;right:auto}.nav-dropdown-item{padding:.625rem 1.25rem;font-size:.875rem}}.user-info{display:flex;align-items:center;gap:1rem;margin-left:auto;padding:.5rem 1rem;background-color:var(--color-bg-secondary);border-radius:var(--radius-md)}.user-email{font-weight:500;color:var(--color-text-primary)}.user-role{font-size:.875rem;color:var(--color-text-muted);text-transform:capitalize}.logout-button{background-color:var(--color-danger);color:var(--brand-white);padding:.5rem 1rem;font-size:.875rem;border:none;border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-base);font-weight:500}.logout-button:hover{background-color:var(--color-danger-hover)}button{font-family:inherit;cursor:pointer;border:none;border-radius:var(--radius-md);padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;transition:all var(--transition-base);display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn-primary{background-color:var(--color-primary);color:var(--brand-white)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background-color:var(--color-secondary);color:var(--brand-white)}.btn-secondary:hover:not(:disabled){background-color:var(--color-secondary-hover)}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-danger{background-color:var(--color-danger);color:var(--brand-white)}.btn-danger:hover:not(:disabled){background-color:var(--color-danger-hover)}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.btn-outline{background-color:transparent;border:1px solid var(--color-border-light);color:var(--color-text-secondary)}.btn-outline:hover:not(:disabled){background-color:var(--color-bg-secondary);border-color:var(--color-border)}.btn-outline:disabled{opacity:.6;cursor:not-allowed}.btn-ghost{background-color:transparent;border:none;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background-color:var(--color-bg-secondary)}.btn-sm{padding:.5rem 1rem;font-size:.8125rem}.btn-lg{padding:.75rem 1.5rem;font-size:1rem}.card{background-color:var(--brand-white);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-md);border:1px solid var(--color-border)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--color-text-secondary)}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.625rem .75rem;border:1px solid var(--color-border-light);border-radius:var(--radius-md);font-size:.875rem;font-family:inherit;background-color:var(--brand-white);color:var(--color-text-primary);transition:all var(--transition-base)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-focus)}.form-group input:disabled,.form-group textarea:disabled,.form-group select:disabled{background-color:var(--color-bg-tertiary);cursor:not-allowed;opacity:.6}.form-group textarea{resize:vertical;min-height:100px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}table{width:100%;border-collapse:collapse;background-color:var(--brand-white);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}table thead{background-color:var(--color-bg-secondary)}table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border)}table td{padding:.75rem 1rem;border-bottom:1px solid var(--color-border);color:var(--color-text-primary)}table tbody tr:hover{background-color:var(--color-bg-secondary)}.badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.badge-draft{background-color:#f3f4f6;color:#374151}.badge-sent{background-color:#dbeafe;color:#1e40af}.badge-viewed{background-color:#fef3c7;color:#92400e}.badge-accepted{background-color:#d1fae5;color:#065f46}.badge-declined{background-color:#fee2e2;color:#991b1b}.badge-unpaid{background-color:#fef3c7;color:#92400e}.badge-paid{background-color:#d1fae5;color:#065f46}.badge-partially_paid{background-color:#dbeafe;color:#1e40af}.badge-refunded{background-color:#e0e7ff;color:#3730a3}.badge-failed{background-color:#fee2e2;color:#991b1b}.badge-voided{background-color:#f3f4f6;color:#6b7280}.badge-uncollectible{background-color:#fee2e2;color:#991b1b}.container{max-width:100%;margin:0 auto;padding:1rem}.flex{display:flex}.flex-between{display:flex;justify-content:space-between;align-items:center}.gap-2{gap:1rem}.gap-4{gap:2rem}.mt-4{margin-top:2rem}.mb-4{margin-bottom:2rem}.p-3{padding:1rem}.text-right{text-align:right}.text-center{text-align:center}.text-muted{color:var(--color-text-muted)}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-success{color:var(--color-success)}.text-danger{color:var(--color-danger)}.text-warning{color:var(--color-warning)}.typeform-container{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#667eea,#764ba2);padding:0;margin:0}.typeform-progress{position:fixed;top:0;left:0;right:0;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100;padding:1rem 2rem}.typeform-progress-bar{width:100%;height:4px;background:#fff3;border-radius:2px;overflow:hidden;margin-bottom:.5rem}.typeform-progress-fill{height:100%;background:#fff;border-radius:2px;transition:width .3s ease}.typeform-progress-text{text-align:center;color:#fff;font-size:.875rem;font-weight:500;opacity:.9}.typeform-content{flex:1;display:flex;align-items:center;justify-content:center;padding:4rem 2rem;min-height:calc(100vh - 80px)}.typeform-question{width:100%;max-width:700px;background:var(--brand-white);border-radius:var(--radius-xl);padding:3rem;box-shadow:var(--shadow-xl)}.typeform-question .form-group{margin-bottom:2rem}.typeform-question label{font-size:1.5rem;font-weight:600;color:var(--color-text-primary);margin-bottom:1rem;display:block;line-height:1.4}.typeform-question .form-group p{font-size:1rem;color:var(--color-text-muted);margin:.5rem 0 1.5rem;line-height:1.6}.typeform-question input[type=text],.typeform-question input[type=email],.typeform-question input[type=number],.typeform-question input[type=tel],.typeform-question input[type=url],.typeform-question input[type=date],.typeform-question input[type=time],.typeform-question input[type=datetime-local],.typeform-question textarea,.typeform-question select{width:100%;padding:1rem 1.25rem;font-size:1.125rem;border:2px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-base);font-family:inherit;background-color:var(--brand-white);color:var(--color-text-primary)}.typeform-question input:focus,.typeform-question textarea:focus,.typeform-question select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-focus)}.typeform-question textarea{min-height:120px;resize:vertical}.typeform-navigation{display:flex;align-items:center;gap:1rem;margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--color-border)}.typeform-btn{padding:.875rem 2rem;font-size:1rem;font-weight:600;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);font-family:inherit}.typeform-btn:disabled{opacity:.5;cursor:not-allowed}.typeform-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.typeform-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px #667eea4d}.typeform-btn-secondary{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.typeform-btn-secondary:hover:not(:disabled){background:var(--color-border)}.typeform-error{margin-top:1.5rem;padding:1rem;background:var(--color-danger-light);border:1px solid var(--color-danger);border-radius:var(--radius-md);color:var(--color-danger)}.typeform-error p{margin:0;font-size:.875rem}.typeform-options{margin-top:1rem}.typeform-option{display:flex;align-items:center;padding:1rem 1.25rem;border:2px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);background:var(--brand-white);position:relative}.typeform-option:hover{border-color:var(--color-primary);background:var(--color-primary-light);transform:translate(4px)}.typeform-option-selected{border-color:var(--color-primary);background:var(--color-primary-light);box-shadow:var(--shadow-md)}.typeform-option input[type=radio],.typeform-option input[type=checkbox]{width:20px;height:20px;margin-right:1rem;cursor:pointer;flex-shrink:0}.typeform-option-label{font-size:1.125rem;font-weight:500;color:var(--color-text-primary);flex:1}.typeform-yesno{margin-top:1.5rem}.typeform-yesno-option{display:flex;align-items:center;justify-content:center;padding:1rem 2.5rem;border:2px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);background:var(--brand-white);font-size:1.125rem;font-weight:600;min-width:120px}.typeform-yesno-option:hover{border-color:var(--color-primary);background:var(--color-primary-light);transform:translateY(-2px);box-shadow:var(--shadow-md)}.typeform-yesno-selected{border-color:var(--color-primary);background:var(--color-primary);color:var(--brand-white);box-shadow:var(--shadow-lg)}.typeform-yesno-option input[type=radio]{display:none}.typeform-question button[type=button][name*=field]{font-size:2.5rem;padding:.5rem;transition:transform .2s}.typeform-question button[type=button][name*=field]:hover{transform:scale(1.2)}.typeform-question input[type=radio][id*="-"]{width:24px;height:24px}@media(max-width:768px){.typeform-content{padding:2rem 1rem;min-height:calc(100vh - 60px)}.typeform-question{padding:2rem 1.5rem;border-radius:var(--radius-lg)}.typeform-question label{font-size:1.25rem}.typeform-question input[type=text],.typeform-question input[type=email],.typeform-question input[type=number],.typeform-question input[type=tel],.typeform-question input[type=url],.typeform-question input[type=date],.typeform-question input[type=time],.typeform-question input[type=datetime-local],.typeform-question textarea,.typeform-question select{font-size:1rem;padding:.875rem 1rem}.typeform-btn{padding:.75rem 1.5rem;font-size:.9375rem;min-height:44px}.typeform-progress{padding:.75rem 1rem}.typeform-option{padding:1rem;min-height:56px}.typeform-yesno-option{padding:1rem 1.5rem;min-width:100px;min-height:56px}.typeform-navigation{flex-direction:column;gap:.75rem}.typeform-navigation button{width:100%}}@media(hover:none)and (pointer:coarse){.typeform-option:hover,.typeform-yesno-option:hover{transform:none}.typeform-btn-primary:hover:not(:disabled){transform:none}}
