*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8fafc;color:#1e293b;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.form-group{margin-bottom:1.5rem}.form-label{color:#374151;display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.form-input{font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-input.error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.form-error{color:#ef4444;font-size:.875rem;margin-top:.25rem}.form-checkbox{align-items:center;display:flex;gap:.5rem;margin-bottom:1rem}.form-checkbox input[type=checkbox]{accent-color:#e91e63;height:1.25rem;width:1.25rem}.form-checkbox label{color:#374151;cursor:pointer;font-size:.875rem}.btn{border-radius:.5rem;transition:all .2s}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background-color:#e91e63}.btn-primary:hover:not(:disabled){background-color:#c2185b;box-shadow:0 4px 12px #e91e634d;transform:translateY(-1px)}.btn-secondary{background-color:#6b7280}.btn-secondary:hover:not(:disabled){background-color:#4b5563}.btn-outline{background-color:initial;border:1px solid #e91e63;color:#e91e63}.btn-outline:hover:not(:disabled){background-color:#e91e63;color:#fff}.btn-danger{background-color:#ef4444}.btn-danger:hover:not(:disabled){background-color:#dc2626}.btn-sm{font-size:.75rem}.btn-lg{font-size:1rem;padding:1rem 2rem}.card{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.card-header{background-color:#f9fafb;border-bottom:1px solid #e5e7eb}.card-body,.card-footer,.card-header{padding:1.5rem}.card-footer{background-color:#f9fafb;border-top:1px solid #e5e7eb}.table{border-collapse:collapse;font-size:.875rem;width:100%}.table td,.table th{border-bottom:1px solid #e5e7eb;padding:.75rem;text-align:left}.table th{color:#374151;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.table tbody tr:hover,.table th{background-color:#f9fafb}.status-badge{padding:.25rem .75rem}.status-draft{background-color:#fef3c7;color:#92400e}.status-submitted{background-color:#dbeafe;color:#1e40af}.status-signed{background-color:#d1fae5;color:#065f46}.status-exported{background-color:#e0e7ff;color:#3730a3}.spinner{animation:spin 1s ease-in-out infinite;border:2px solid #f3f4f6;border-top-color:#e91e63}@media (max-width:768px){.card-body{padding:1rem}.btn{font-size:.8125rem;padding:.625rem 1.25rem}.table{font-size:.75rem}.table td,.table th{padding:.5rem}}@media print{.no-print{display:none!important}.card{border:1px solid #000;box-shadow:none}.btn{display:none}}.logo-container{align-items:center;color:inherit;display:flex;gap:8px;text-decoration:none}.logo-image{height:auto;object-fit:contain;width:auto}.logo-text{display:flex;flex-direction:column;line-height:1}.logo-text-primary{color:#a70b44;font-size:inherit;font-weight:700}.logo-text-secondary{color:#666;font-size:.8em;font-weight:400;letter-spacing:1px}.logo-small .logo-image{height:24px}.logo-small .logo-text-primary{font-size:12px}.logo-small .logo-text-secondary{font-size:10px}.logo-medium .logo-image{height:32px}.logo-medium .logo-text-primary{font-size:16px}.logo-medium .logo-text-secondary{font-size:12px}.logo-large .logo-image{height:48px}.logo-large .logo-text-primary{font-size:24px}.logo-large .logo-text-secondary{font-size:18px}.logo-link{color:inherit;text-decoration:none;transition:opacity .2s ease}.logo-link:hover{opacity:.8}.logo-white .logo-text-primary{color:#fff}.logo-white .logo-text-secondary{color:#fffc}@media (max-width:768px){.logo-container{gap:6px}.logo-medium .logo-image{height:28px}.logo-medium .logo-text-primary{font-size:14px}.logo-medium .logo-text-secondary{font-size:11px}}.home{background:linear-gradient(135deg,#f8fafc,#e2e8f0);min-height:100vh;overflow:hidden;position:relative}.home:before{background-image:radial-gradient(circle at 25% 25%,#e91e630a 0,#0000 50%),radial-gradient(circle at 75% 75%,#c2185b0a 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.hero-container{display:flex;flex-direction:column;margin:0 auto;max-width:1200px;min-height:100vh;position:relative;z-index:1}.header{justify-content:center;padding:2rem 2rem 1rem}.header,.logo-brand{align-items:center;display:flex}.logo-brand{gap:1.5rem}.logo-icon{border-radius:16px;box-shadow:0 8px 32px #e91e634d;font-size:2rem;height:64px;position:relative;width:64px}.logo-icon:after{background:linear-gradient(135deg,#fff3,#0000);border-radius:14px;content:"";inset:2px;pointer-events:none;position:absolute}.brand-text h1{color:#1f2937;font-size:2.5rem;font-weight:800;letter-spacing:-.02em;line-height:1;margin:0}.tagline{color:#6b7280;display:block;font-size:.95rem;font-weight:500;letter-spacing:.1em;margin-top:.25rem;text-transform:uppercase}.main-content{display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:0 2rem;text-align:center}.hero-text{margin-bottom:3rem}.hero-title{color:#1f2937;font-size:3.5rem;font-weight:700;letter-spacing:-.02em;line-height:1.1;margin:0 0 1.5rem}.highlight{color:#e91e63;position:relative}.highlight:after{background:linear-gradient(90deg,#e91e6333,#c2185b33);border-radius:.15em;bottom:.1em;content:"";height:.3em;left:0;position:absolute;right:0;z-index:-1}.hero-description{color:#6b7280;font-size:1.25rem;font-weight:400;line-height:1.6;margin:0 auto;max-width:600px}.features-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:3rem;margin-left:auto;margin-right:auto;max-width:900px}.feature-item{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffb3;border:1px solid #ffffff4d;border-radius:16px;overflow:hidden;padding:2rem 1.5rem;position:relative;text-align:center;transition:all .3s ease}.feature-item:before{background:linear-gradient(90deg,#e91e63,#c2185b);content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.feature-item:hover{background:#ffffffe6;box-shadow:0 20px 40px #0000001a;transform:translateY(-4px)}.feature-item:hover:before{transform:scaleX(1)}.feature-icon-wrapper{align-items:center;background:linear-gradient(135deg,#e91e63,#c2185b);border-radius:12px;box-shadow:0 4px 16px #e91e634d;display:flex;height:56px;justify-content:center;margin:0 auto 1.5rem;width:56px}.feature-icon{color:#fff;height:28px;width:28px}.feature-item h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0 0 .75rem}.feature-item p{color:#6b7280;font-size:.95rem;line-height:1.5;margin:0}.access-section{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffc;border:1px solid #ffffff4d;border-radius:20px;box-shadow:0 8px 32px #0000001a;margin-bottom:2rem;padding:2.5rem}.access-content{align-items:center;display:flex;gap:2rem;justify-content:space-between;margin:0 auto;max-width:600px}.access-text{flex:1 1;text-align:left}.access-text h3{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.access-text p{color:#6b7280;font-size:1rem;line-height:1.5;margin:0}.cta-button{align-items:center;background:linear-gradient(135deg,#e91e63,#c2185b);border-radius:12px;box-shadow:0 4px 16px #e91e634d;color:#fff;display:inline-flex;font-size:1rem;font-weight:600;gap:.75rem;overflow:hidden;padding:1rem 2rem;position:relative;text-decoration:none;transition:all .3s ease}.cta-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.cta-button:hover{box-shadow:0 8px 24px #e91e6366;color:#fff;transform:translateY(-2px)}.cta-button:hover:before{left:100%}.button-icon{height:20px;transition:transform .3s ease;width:20px}.cta-button:hover .button-icon{transform:translateX(4px)}.footer{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff80;border-top:1px solid #fff3;padding:1.5rem 2rem}.footer-content{color:#6b7280;font-size:.875rem;margin:0 auto;max-width:1200px}.footer-links{align-items:center;display:flex;gap:.75rem}.footer-links a{color:#e91e63;font-weight:500;text-decoration:none;transition:color .2s ease}.footer-links a:hover{color:#c2185b;text-decoration:underline}@media (max-width:1024px){.hero-title{font-size:3rem}.features-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}@media (max-width:768px){.header{padding:1.5rem 1rem .5rem}.main-content{padding:0 1rem}.logo-brand{flex-direction:column;gap:1rem;text-align:center}.brand-text h1{font-size:2rem}.hero-title{font-size:2.5rem}.hero-description{font-size:1.1rem}.features-grid{gap:1rem;grid-template-columns:1fr}.feature-item{padding:1.5rem}.access-content{flex-direction:column;gap:1.5rem}.access-content,.access-text,.footer-content{text-align:center}.footer-content{flex-direction:column;gap:1rem}}@media (max-width:480px){.header{padding:1rem}.main-content{padding:0 1rem}.hero-title{font-size:2rem;line-height:1.2}.hero-description{font-size:1rem}.brand-text h1,.logo-icon{font-size:1.75rem}.logo-icon{height:56px;width:56px}.access-section{padding:2rem 1.5rem}.cta-button{font-size:.95rem;padding:.875rem 1.5rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.access-section,.features-grid,.hero-text{animation:fadeInUp .8s ease-out}.features-grid{animation-delay:.2s}.access-section{animation-delay:.4s}.error-state{color:#6b7280;padding:4rem 2rem;text-align:center}.error-icon{font-size:4rem;margin-bottom:1rem}.error-state h2{color:#374151;font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.error-message{color:#6b7280;font-size:1rem;margin-bottom:2rem}.error-actions{align-items:center;display:flex;flex-direction:column;gap:2rem}.browser-tips{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;max-width:500px;padding:1.5rem;text-align:left}.browser-tips h4{color:#374151;font-size:1rem;font-weight:600;margin-bottom:1rem}.browser-tips ul{list-style-type:disc;margin-bottom:1rem;padding-left:1.5rem}.browser-tips li{color:#6b7280;font-size:.875rem;margin-bottom:.5rem}.debug-info{border-top:1px solid #e5e7eb;margin-top:1rem;padding-top:1rem}.debug-info small{color:#9ca3af;font-size:.75rem}.form-container{box-shadow:0 10px 25px #0000001a;margin:2rem auto;max-width:900px}.form-header{padding:3rem 2rem;position:relative}.form-header:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cdefs%3E%3Cpattern id='a' width='100' height='100' patternUnits='userSpaceOnUse'%3E%3Ccircle cx='50' cy='50' r='1' fill='%23fff' opacity='.1'/%3E%3C/pattern%3E%3C/defs%3E%3Cpath fill='url(%23a)' d='M0 0h100v100H0z'/%3E%3C/svg%3E");bottom:0;content:"";left:0;opacity:.3;position:absolute;right:0;top:0}.logo{position:relative;z-index:1}.logo-text{font-size:2rem;font-weight:700;text-shadow:0 2px 4px #0000001a}.logo-subtitle{font-size:.875rem;margin-top:.25rem;opacity:.9}.form-title{font-size:2.5rem;text-shadow:0 2px 4px #0000001a}.form-subtitle,.form-title{position:relative;z-index:1}.form-subtitle{font-size:1.125rem}.form-body{padding:3rem}.form-section{border-bottom:2px solid #f1f5f9}.section-title{font-weight:700;gap:.75rem;margin-bottom:2rem;position:relative}.section-title:before{border-radius:3px;box-shadow:0 2px 4px #e91e634d;height:2rem;width:6px}.section-title:after{background:linear-gradient(90deg,#e91e63,#0000);border-radius:1px;content:"";flex:1 1;height:2px}.service-list{grid-gap:1.5rem;gap:1.5rem}.service-item{background:#fff;border-radius:1rem;overflow:hidden;padding:2rem;position:relative;transition:all .3s ease}.service-item:before{background:linear-gradient(90deg,#e91e63,#c2185b);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.service-item:hover{box-shadow:0 8px 25px #e91e6326}.service-item:hover:before{transform:scaleX(1)}.service-item.selected{background:linear-gradient(135deg,#fdf2f8,#fce7f3);box-shadow:0 8px 25px #e91e6333}.service-item.selected:before{transform:scaleX(1)}.service-header{gap:1.5rem;margin-bottom:1.5rem}.service-checkbox{height:1.5rem;width:1.5rem}.service-name{font-size:1.125rem}.service-charges{grid-gap:1.5rem;background:#ffffffb3;border:1px solid #e91e6333;border-radius:.75rem;gap:1.5rem;padding:1.5rem}.charge-input{border:2px solid #e5e7eb;border-radius:.5rem;font-size:1rem;font-weight:500}.charge-input:focus{box-shadow:0 0 0 4px #e91e631a;transform:translateY(-1px)}.budget-type{background:#fff;border:2px solid #e5e7eb;border-radius:1rem;padding:2rem;transition:all .3s ease}.budget-type:hover{border-color:#e91e63;box-shadow:0 4px 12px #e91e631a}.budget-header{font-size:1.25rem;font-weight:700;gap:.75rem;margin-bottom:1.5rem}.budget-header:before{background:#e91e63;border-radius:2px;content:"";height:1.5rem;width:4px}.budget-options{gap:2rem}.budget-option{background:#fff;border:2px solid #e5e7eb;border-radius:.5rem;cursor:pointer;gap:.75rem;padding:.75rem 1rem;transition:all .2s ease}.budget-option:hover{background:#fdf2f8;border-color:#e91e63}.budget-option input[type=checkbox]{height:1.25rem;width:1.25rem}.budget-option label{font-weight:500}.signature-section{background:#fafafa;border:3px dashed #d1d5db;border-radius:1rem;padding:3rem;transition:all .3s ease}.signature-section:hover{background:#fdf2f8}.signature-canvas{border:2px solid #d1d5db;border-radius:.75rem;box-shadow:0 4px 6px #0000000d;transition:all .2s ease}.signature-canvas:hover{border-color:#e91e63;box-shadow:0 8px 25px #e91e6326}.signature-controls{margin-top:1.5rem}.totals-section{background:linear-gradient(135deg,#f9fafb,#f3f4f6);border:2px solid #e5e7eb;border-radius:1rem}.totals-grid{grid-gap:2rem;gap:2rem}.total-item{border:2px solid #e5e7eb;border-radius:.75rem;transition:all .2s ease}.total-item:hover{border-color:#e91e63;box-shadow:0 4px 12px #e91e631a;transform:translateY(-2px)}.total-label{letter-spacing:.05em;margin-bottom:.75rem}.total-value{text-shadow:0 2px 4px #e91e631a}.form-actions{border-top:2px solid #f1f5f9;gap:1.5rem;margin-top:3rem}@media (max-width:768px){.form-container{border-radius:.75rem;margin:1rem}.form-header{padding:2rem 1.5rem}.form-title{font-size:2rem}.form-body{padding:2rem 1.5rem}.form-section{margin-bottom:2rem}.service-charges,.totals-grid{grid-template-columns:1fr}.budget-options,.form-actions{flex-direction:column}.signature-pad-container{margin:1rem 0;padding:0}.signature-canvas{height:150px;max-width:100%;width:400px}.signature-section{padding:2rem 1rem}}@media (max-width:480px){.form-header{padding:1.5rem 1rem}.form-title{font-size:1.75rem}.form-body{padding:1.5rem 1rem}.budget-type,.service-item{padding:1.5rem}.signature-section{padding:1.5rem .5rem}.signature-pad-container{margin:.5rem 0}.signature-canvas{height:120px;max-width:100%;width:320px}}.admin-notice{background:#e91e631a;border:1px solid #e91e634d;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.admin-notice p{color:#c2185b;font-size:.9rem;font-weight:500;margin:0}.service-list.readonly{opacity:.8}.service-list.readonly .service-item{background:#f9fafb;border-color:#e5e7eb}.service-list.readonly .service-checkbox:disabled{cursor:not-allowed;opacity:.6}.service-list.readonly .charge-input:disabled{background:#f3f4f6;color:#6b7280;cursor:not-allowed}.form-input:disabled,.form-input:read-only{background:#f3f4f6;border-color:#d1d5db;color:#6b7280;cursor:not-allowed}.budget-option input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.budget-option input[type=checkbox]:disabled+label{color:#6b7280;cursor:not-allowed;opacity:.6}.success-container{align-items:center;background:linear-gradient(135deg,#fdf2f8,#fce7f3);display:flex;justify-content:center;min-height:100vh;padding:2rem}.success-card{animation:slideUp .6s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000001a;max-width:500px;overflow:hidden;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.success-header{background:linear-gradient(135deg,#e91e63,#c2185b);color:#fff;padding:2rem 1.5rem 1.5rem;text-align:center}.success-icon{animation:checkmark .8s ease-in-out .3s both;margin-bottom:1rem}@keyframes checkmark{0%{opacity:0;transform:scale(.3) rotate(0deg)}50%{opacity:1;transform:scale(1.1) rotate(180deg)}to{opacity:1;transform:scale(1) rotate(1turn)}}.success-title{font-size:1.75rem;line-height:1.2;margin-bottom:.75rem}.success-message{color:#000;font-size:1rem;font-weight:400;line-height:1.5;margin-bottom:0;opacity:.95}.success-body{padding:1.5rem}.next-steps-title{color:#333;font-size:1.1rem;font-weight:600;margin-bottom:1rem;text-align:center}.steps-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.step-item{background:#fdf2f8;border-left:3px solid #e91e63;border-radius:8px;padding:.75rem}.step-item,.step-number{align-items:center;display:flex}.step-number{background:linear-gradient(135deg,#e91e63,#c2185b);border-radius:50%;color:#fff;flex-shrink:0;font-size:.75rem;font-weight:600;height:24px;justify-content:center;margin-right:.75rem;width:24px}.step-text{flex:1 1}.step-text strong{color:#333;display:block;font-size:.875rem;font-weight:600;line-height:1.2;margin-bottom:.125rem}.step-text span{color:#666;font-size:.75rem;line-height:1.3}.success-footer{background:#fdf2f8;border-top:1px solid #f3e8ff;padding:1.5rem}.footer-content{align-items:center;display:flex;gap:1rem;justify-content:space-between}.contact-info{color:#666;font-size:.875rem}.contact-info a{color:#e91e63;font-weight:500;text-decoration:none}.contact-info a:hover{text-decoration:underline}.btn{font-size:1rem;padding:.75rem 2rem}.btn-primary{box-shadow:0 4px 15px #e91e634d}.btn-primary:hover{box-shadow:0 8px 25px #e91e6366}@media (max-width:768px){.success-container{padding:1rem}.success-header{padding:2rem 1.5rem 1.5rem}.success-title{font-size:1.5rem}.success-message{font-size:1rem}.success-body,.success-footer{padding:1.5rem}.steps-list li{padding:.75rem}.step-icon{font-size:.75rem;height:28px;width:28px}}.admin-dashboard{background:linear-gradient(135deg,#f8fafc,#e2e8f0);min-height:100vh}.dashboard-header{margin-bottom:2rem;text-align:center}.dashboard-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#e91e63,#c2185b);-webkit-background-clip:text;background-clip:text;color:#1f2937;font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.dashboard-header p{color:#6b7280;font-size:1.125rem;margin-bottom:.5rem}.dashboard-date{color:#9ca3af;font-size:.875rem;font-weight:500}.stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:3rem;margin-left:auto;margin-right:auto;max-width:1200px}.stat-card{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff;border:1px solid #fff3;border-radius:1.5rem;box-shadow:0 4px 6px #0000000d,0 0 0 1px #0000000d;display:flex;gap:1.5rem;padding:2rem;transition:all .3s ease}.stat-card:hover{box-shadow:0 12px 40px #0000001a}.clients-card{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#3b82f6}.campaigns-card{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b}.invoices-card{background:linear-gradient(135deg,#fdf2f8,#fce7f3);border-color:#e91e63}.stat-icon{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border-radius:1rem;display:flex;flex-shrink:0;height:60px;justify-content:center;width:60px}.icon-clients{color:#3b82f6}.icon-campaigns{color:#f59e0b}.icon-invoices{color:#e91e63}.stat-content{flex:1 1}.stat-value{font-size:2.5rem;margin-bottom:.25rem}.stat-label{font-weight:600;margin-bottom:.5rem}.stat-change{border-radius:.5rem;display:inline-block;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.stat-change.positive{background:#dcfce7;color:#166534}.stat-breakdown{color:#9ca3af;font-size:.75rem;font-weight:500}.campaign-timeline-section{background:#fff;border:1px solid #e5e7eb;border-radius:1.5rem;box-shadow:0 4px 6px #0000000d;margin-bottom:3rem;padding:2rem}.chart-header{margin-bottom:1.5rem}.chart-header h3{align-items:center;color:#1f2937;display:flex;font-size:1.25rem;font-weight:700;gap:.5rem;margin-bottom:.5rem}.chart-icon{color:#e91e63}.chart-header p{color:#6b7280;font-size:.875rem}.timeline-visualization{min-height:280px;padding:1rem 0}.timeline-container{align-items:end;display:flex;gap:2rem;height:100%;justify-content:center;margin:0 auto;max-width:800px}.timeline-item{align-items:center;cursor:pointer;display:flex;flex-direction:column;height:220px;min-width:80px;position:relative;transition:all .3s ease}.timeline-item:hover{transform:translateY(-5px) scale(1.05)}.timeline-item.highest .timeline-count-badge{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 8px 25px #f59e0b4d;transform:scale(1.1)}.timeline-item.highest .timeline-bar{background:linear-gradient(180deg,#f59e0b,#d97706);box-shadow:0 0 20px #f59e0b66}.timeline-count-badge{align-items:center;background:linear-gradient(135deg,#e91e63,#c2185b);border:3px solid #fff;border-radius:50%;box-shadow:0 6px 20px #e91e634d;color:#fff;display:flex;font-size:1.125rem;font-weight:700;height:50px;justify-content:center;position:absolute;top:-10px;transition:all .3s ease;width:50px;z-index:2}.timeline-bar-container{align-items:end;display:flex;height:140px;margin-top:30px;position:relative;width:40px}.timeline-bar-bg{background:linear-gradient(180deg,#f3f4f6,#e5e7eb);border:2px solid #f8fafc;border-radius:20px;height:100%}.timeline-bar,.timeline-bar-bg{bottom:0;position:absolute;width:100%}.timeline-bar{background:linear-gradient(180deg,#e91e63,#c2185b);border:2px solid #ffffffe6;border-radius:20px;box-shadow:0 4px 15px #e91e6333,inset 0 1px 0 #ffffff4d;min-height:8px;transition:all .4s cubic-bezier(.4,0,.2,1)}.timeline-month-label{display:flex;flex-direction:column;gap:.25rem;margin-top:1rem;text-align:center}.month-name{color:#1f2937;font-size:.875rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.year-name{color:#6b7280;font-size:.75rem;font-weight:500}.timeline-campaigns-label{color:#9ca3af;font-size:.75rem;font-weight:500;margin-top:.5rem;text-align:center}.no-data{align-items:center;border:2px dashed #d1d5db;border-radius:1rem;display:flex;flex-direction:column;gap:1rem;padding:3rem 2rem}.no-data-icon{font-size:3rem;opacity:.6}.service-performance-section{background:#fff;border:1px solid #e5e7eb;border-radius:1.5rem;box-shadow:0 4px 6px #0000000d;margin-bottom:3rem;padding:2rem}.section-header{margin-bottom:1.5rem}.section-header h2{align-items:center;color:#1f2937;display:flex;font-size:1.5rem;font-weight:700;gap:.5rem;margin-bottom:.5rem}.section-icon{color:#e91e63}.section-header p{color:#6b7280;font-size:.875rem}.service-performance-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.service-performance-card{background:#fafafa;border:1px solid #e5e7eb;border-radius:1rem;padding:1.5rem;transition:all .2s ease}.service-performance-card:hover{background:#fdf2f8;border-color:#e91e63;transform:translateY(-2px)}.service-info{margin-bottom:1rem}.service-name{font-size:1rem;margin-bottom:.5rem}.service-metrics{align-items:center;display:flex;gap:1rem;justify-content:space-between}.selection-count{color:#6b7280;font-size:.875rem;font-weight:500}.selection-rate{background:#fdf2f8;border-radius:.5rem;color:#e91e63;font-size:.75rem;font-weight:600;padding:.25rem .5rem}.service-progress{background:#e5e7eb;border-radius:1rem;height:6px;overflow:hidden}.progress-bar{background:linear-gradient(135deg,#e91e63,#c2185b);border-radius:1rem;height:100%;transition:width .3s ease}.upcoming-dates-section{background:#fff;border:1px solid #e5e7eb;border-radius:1.5rem;box-shadow:0 4px 6px #0000000d;margin-bottom:3rem;padding:2rem}.dates-controls{border-bottom:1px solid #e5e7eb;margin-bottom:1.5rem;padding-bottom:1.5rem}.grouping-options{display:flex;flex-wrap:wrap;gap:.5rem}.grouping-btn{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;color:#6b7280;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.grouping-btn:hover{background:#f9fafb;border-color:#d1d5db}.grouping-btn.active{background:#fdf2f8;border-color:#e91e63;color:#e91e63}.dates-collapsible-container{display:flex;flex-direction:column;gap:.75rem}.collapsible-group{background:#fafafa;border:1px solid #e5e7eb;border-radius:1rem;overflow:hidden;transition:all .2s ease}.collapsible-group:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000f}.group-header{align-items:center;background:linear-gradient(135deg,#fafafa,#f5f5f5);border-bottom:1px solid #e5e7eb;cursor:pointer;display:flex;justify-content:space-between;padding:1rem 1.5rem;transition:all .2s ease}.group-header:hover{background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.group-title{gap:.75rem}.expand-icon,.group-title{align-items:center;display:flex}.expand-icon{color:#6b7280;justify-content:center;transition:all .2s ease}.group-label{color:#1f2937;font-size:1rem;font-weight:700}.group-count{background:#e5e7eb;border-radius:1rem;color:#6b7280;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.group-preview{align-items:center;display:flex;gap:.5rem}.preview-dot{background:#d1d5db;border-radius:50%;height:8px;transition:all .2s ease;width:8px}.preview-dot.campaign{background:#f59e0b}.preview-dot.invoice{background:#3b82f6}.preview-dot.debit{background:#22c55e}.preview-dot.urgent{background:#f59e0b;box-shadow:0 0 0 2px #f59e0b4d}.preview-dot.overdue{background:#ef4444;box-shadow:0 0 0 2px #ef44444d}.preview-more{color:#9ca3af;font-size:.75rem;font-weight:500}.group-content{background:#fff}.group-items{display:flex;flex-direction:column;gap:.25rem;padding:.5rem}.date-item-sleek{align-items:center;background:#fafafa;border:1px solid #0000;border-radius:.5rem;cursor:pointer;display:flex;justify-content:space-between;padding:.75rem 1rem;transition:all .2s ease}.date-item-sleek:hover{background:#f8fafc;border-color:#e5e7eb}.date-item-sleek.campaign{border-left:3px solid #f59e0b}.date-item-sleek.invoice{border-left:3px solid #3b82f6}.date-item-sleek.debit{border-left:3px solid #22c55e}.date-item-sleek.overdue{background:#ef44440d;border-left-color:#ef4444}.date-item-sleek.today{background:#8b5cf60d;border-left-color:#8b5cf6}.date-item-sleek.soon{background:#f59e0b0d;border-left-color:#f59e0b}.date-item-main{align-items:center;display:flex;flex:1 1;gap:.75rem}.date-icon-sleek{align-items:center;background:#e91e631a;border-radius:.375rem;color:#e91e63;display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.date-item-sleek.campaign .date-icon-sleek{background:#f59e0b1a;color:#f59e0b}.date-item-sleek.invoice .date-icon-sleek{background:#3b82f61a;color:#3b82f6}.date-item-sleek.debit .date-icon-sleek{background:#22c55e1a;color:#22c55e}.date-content-sleek{display:flex;flex-direction:column;gap:.125rem}.client-name-sleek{color:#374151;font-size:.75rem;font-weight:600}.date-type-sleek{color:#6b7280;font-size:.875rem;font-weight:500}.date-timing{align-items:flex-end;display:flex;flex-direction:column;gap:.125rem}.date-value-sleek{color:#1f2937;font-size:.875rem;font-weight:600}.date-relative-sleek{background:#f3f4f6;border-radius:.375rem;color:#6b7280;font-size:.75rem;font-weight:500;padding:.125rem .5rem}.date-relative-sleek.overdue{background:#fee2e2;color:#dc2626}.date-relative-sleek.today{background:#e0e7ff;color:#6366f1}.date-relative-sleek.soon{background:#fef3c7;color:#d97706}.quick-actions{background:#fff;border:1px solid #e5e7eb;border-radius:1.5rem;box-shadow:0 4px 6px #0000000d;padding:2rem}.actions-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.action-card{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:1.5rem;color:inherit;cursor:pointer;display:flex;flex-direction:column;padding:2rem;text-align:center;text-decoration:none;transition:all .3s ease}.action-card:hover{background:#fdf2f8;border-color:#e91e63;box-shadow:0 8px 25px #e91e6326}.action-icon{color:#e91e63;margin-bottom:1rem}.action-title{color:#1f2937;font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.action-description{color:#6b7280;font-size:.875rem}@media (max-width:768px){.dashboard-header h1{font-size:2rem}.actions-grid,.service-performance-grid,.stats-grid{grid-template-columns:1fr}.timeline-container{gap:1rem;padding:0 1rem}.timeline-item{height:180px;min-width:60px}.timeline-count-badge{font-size:.875rem;height:40px;width:40px}.timeline-bar-container{height:120px;margin-top:20px;width:30px}.month-name{font-size:.75rem}.year-name{font-size:.625rem}}@media (max-width:480px){.stat-card{flex-direction:column;gap:1rem;padding:1.5rem;text-align:center}.stat-value{font-size:2rem}.action-card,.campaign-timeline-section{padding:1.5rem}.timeline-container{gap:.75rem;overflow-x:auto;padding:0 .5rem}.timeline-item{flex-shrink:0;height:160px;min-width:50px}.timeline-count-badge{font-size:.75rem;height:35px;width:35px}.timeline-bar-container{height:100px;margin-top:15px;width:25px}.timeline-campaigns-label{font-size:.625rem}.grouping-options{gap:.25rem}.grouping-btn{font-size:.75rem;padding:.375rem .75rem}.group-header{padding:.75rem 1rem}.group-label{font-size:.875rem}.group-count{font-size:.625rem}.date-item-sleek{align-items:flex-start;flex-direction:column;gap:.5rem;padding:.5rem .75rem}.date-item-main{align-self:stretch;gap:.5rem}.date-icon-sleek{height:20px;width:20px}.client-name-sleek{font-size:.625rem}.date-type-sleek{font-size:.75rem}.date-timing{align-items:flex-start;align-self:stretch}.date-value-sleek{font-size:.75rem}.date-relative-sleek{font-size:.625rem}}.admin-clients{background:linear-gradient(135deg,#f8fafc,#e2e8f0);min-height:100vh}.clients-header-modern{align-items:flex-start;background:#fff;border:1px solid #e5e7eb;border-radius:1rem;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding:1.5rem}.header-title-section h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#e91e63,#c2185b);-webkit-background-clip:text;background-clip:text;color:#1f2937;font-size:2rem;font-weight:700;margin-bottom:.25rem}.header-title-section p{color:#6b7280;font-size:1rem;margin-bottom:1rem}.clients-stats{display:flex;gap:1rem}.stat-item{align-items:center;background:linear-gradient(135deg,#fdf2f8,#fce7f3);border:1px solid #e91e6333;border-radius:.75rem;display:flex;gap:.5rem;padding:.75rem 1rem}.stat-icon{color:#e91e63;font-size:1.5rem}.stat-value{font-size:1.5rem;font-weight:700;line-height:1}.stat-label{color:#6b7280;font-size:.875rem}.header-actions-modern{align-items:center;display:flex;gap:1rem}.action-btn{align-items:center;border:1px solid #0000;border-radius:.75rem;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s ease}.action-btn.primary{background:linear-gradient(135deg,#e91e63,#c2185b);box-shadow:0 4px 15px #e91e634d;color:#fff}.action-btn.primary:hover{box-shadow:0 6px 20px #e91e6366}.action-btn.secondary{background:#fff;border-color:#e5e7eb;color:#6b7280}.action-btn.secondary:hover{background:#f9fafb;border-color:#d1d5db}.search-filters-modern{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;box-shadow:0 2px 4px #0000000d;margin-bottom:1.5rem;padding:1.5rem}.search-section{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.search-input-container{flex:1 1;min-width:300px;position:relative}.search-icon{color:#9ca3af;left:1rem;position:absolute;top:50%;transform:translateY(-50%);z-index:2}.search-input-modern{background:#fafafa;border:2px solid #e5e7eb;border-radius:1rem;font-size:1rem;padding:1rem 1rem 1rem 3rem;transition:all .3s ease;width:100%}.search-input-modern:focus{background:#fff;border-color:#e91e63;box-shadow:0 0 0 4px #e91e631a;outline:none}.clear-search{align-items:center;background:#f3f4f6;border:none;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;height:24px;justify-content:center;position:absolute;right:1rem;top:50%;transform:translateY(-50%);transition:all .2s ease;width:24px}.clear-search:hover{background:#e5e7eb;color:#374151}.filter-actions{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.status-filter-modern{background:#fff;border:2px solid #e5e7eb;border-radius:.75rem;cursor:pointer;font-size:.875rem;font-weight:500;min-width:140px;padding:.75rem 1rem;transition:all .2s ease}.status-filter-modern:focus{border-color:#e91e63;box-shadow:0 0 0 3px #e91e631a;outline:none}.filter-toggle{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:.75rem;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.75rem 1rem;transition:all .2s ease}.filter-toggle:hover{background:#f9fafb;border-color:#d1d5db}.filter-chevron{transition:transform .2s ease}.filter-chevron.rotated{transform:rotate(180deg)}.view-mode-toggle{background:#f3f4f6;border-radius:.75rem;display:flex;gap:.25rem;padding:.25rem}.view-btn{align-items:center;background:#0000;border:none;border-radius:.5rem;color:#6b7280;cursor:pointer;display:flex;justify-content:center;padding:.5rem;transition:all .2s ease}.view-btn.active{background:#fff;box-shadow:0 2px 4px #0000001a;color:#e91e63}.view-btn:hover:not(.active){color:#374151}.active-filters{align-items:center;border-top:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem;padding-top:1rem}.filter-label{color:#374151;font-size:.875rem;font-weight:600}.filter-tag{background:#fdf2f8;border:1px solid #e91e6333;border-radius:.5rem;font-size:.75rem;font-weight:500;gap:.5rem;padding:.375rem .75rem}.filter-tag,.filter-tag button{align-items:center;color:#e91e63;display:flex}.filter-tag button{background:none;border:none;cursor:pointer;justify-content:center;padding:0}.clear-all-filters{background:#f3f4f6;border:none;border-radius:.5rem;color:#6b7280;cursor:pointer;font-size:.75rem;font-weight:500;padding:.375rem .75rem;transition:all .2s ease}.clear-all-filters:hover{background:#e5e7eb;color:#374151}.extended-filters{background:#f9fafb;border:1px solid #e5e7eb;border-radius:1rem;margin-top:1rem;overflow:hidden;padding:1.5rem}.filter-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-input,.filter-select{background:#fff;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;padding:.75rem;transition:border-color .2s,box-shadow .2s}.filter-input:focus,.filter-select:focus{border-color:#e91e63;box-shadow:0 0 0 3px #e91e631a;outline:none}.loading-overlay{background:#fffc;border-radius:1.5rem;position:absolute;z-index:10}.clients-container{min-height:400px;position:relative}.clients-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-bottom:2rem}.client-card{border-radius:1rem;box-shadow:0 2px 4px #0000000d;cursor:pointer;padding:1rem;transition:all .3s ease}.client-card:hover{border-color:#e91e634d;box-shadow:0 12px 40px #0000001a}.card-header{align-items:flex-start;gap:.75rem;margin-bottom:.75rem}.client-avatar{background:linear-gradient(135deg,#fdf2f8,#fce7f3);border-radius:.5rem;color:#e91e63;height:40px;width:40px}.client-info-card{flex:1 1;min-width:0}.client-name-card{color:#1f2937;font-size:1rem;font-weight:700;margin:0 0 .125rem}.client-company-card{color:#6b7280;font-size:.875rem;margin:0}.card-actions{align-items:center;display:flex;gap:.5rem}.action-menu-btn{background:none;border:none;border-radius:.5rem;color:#9ca3af;cursor:pointer;padding:.5rem;transition:all .2s ease}.action-menu-btn:hover{background:#f3f4f6;color:#6b7280}.card-content,.contact-info{margin-bottom:.75rem}.contact-info{display:flex;flex-direction:column;gap:.375rem}.contact-item{align-items:center;color:#6b7280;display:flex;font-size:.875rem;gap:.5rem}.contact-item svg{color:#9ca3af;flex-shrink:0}.client-stats{display:flex;gap:1.5rem}.stat{display:flex;flex-direction:column;gap:.25rem}.stat-label{color:#9ca3af;font-size:.75rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.stat-value{color:#1f2937;font-size:1rem;font-weight:600}.card-footer{align-items:center;border-top:1px solid #f3f4f6;display:flex;justify-content:space-between;padding-top:.75rem}.status-section{display:flex;flex-direction:column;gap:.5rem}.created-date{align-items:center;color:#9ca3af;display:flex;font-size:.75rem;gap:.25rem}.card-actions-footer{display:flex;gap:.5rem}.card-btn{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;color:#6b7280;cursor:pointer;display:flex;font-size:.75rem;font-weight:500;gap:.375rem;padding:.5rem .75rem;transition:all .2s ease}.card-btn:hover{background:#f9fafb;border-color:#d1d5db}.card-btn.view:hover{border-color:#3b82f6;color:#3b82f6}.card-btn.pdf:hover{border-color:#e91e63;color:#e91e63}.status-badge-modern{align-items:center;border:1px solid #0000;border-radius:.75rem;display:inline-flex;font-size:.75rem;font-weight:600;gap:.375rem;padding:.5rem .75rem;text-transform:capitalize}.status-badge-modern.status-draft{background:#fef3c7;border-color:#d9770633;color:#d97706}.status-badge-modern.status-admin-created{background:#fce7f3;border-color:#be185d33;color:#be185d}.status-badge-modern.status-submitted{background:#dbeafe;border-color:#1d4ed833;color:#1d4ed8}.status-badge-modern.status-signed{background:#dcfce7;border-color:#16653433;color:#166534}.status-badge-modern.status-exported{background:#e0e7ff;border-color:#4338ca33;color:#4338ca}.clients-table-modern{background:#fff;border:1px solid #e5e7eb;border-radius:1.5rem;box-shadow:0 4px 6px #0000000d;margin-bottom:2rem;overflow:hidden}.table-modern{border-collapse:collapse;width:100%}.table-modern th{background:#f9fafb;border-bottom:1px solid #e5e7eb;color:#374151;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.75rem 1rem;text-align:left;text-transform:uppercase}.table-modern td{border-bottom:1px solid #f3f4f6;padding:.75rem 1rem;vertical-align:middle}.table-modern tbody tr:last-child td{border-bottom:none}.table-client-info{align-items:center;display:flex;gap:.75rem}.client-avatar-small{align-items:center;background:linear-gradient(135deg,#fdf2f8,#fce7f3);border-radius:.5rem;color:#e91e63;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.table-client-name{color:#1f2937;font-size:.875rem;font-weight:600}.table-client-phone{color:#9ca3af;font-size:.75rem}.table-company{color:#6b7280;font-size:.875rem}.table-contact{display:flex;flex-direction:column;gap:.25rem}.table-email,.table-service-count{color:#6b7280;font-size:.875rem}.table-service-count{background:#f3f4f6;border-radius:.375rem;display:inline-block;padding:.25rem .5rem}.table-value{color:#1f2937;font-size:.875rem;font-weight:600}.table-date{color:#9ca3af;font-size:.75rem}.table-actions{gap:.5rem}.table-actions,.table-btn{align-items:center;display:flex}.table-btn{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;color:#6b7280;cursor:pointer;height:32px;justify-content:center;transition:all .2s ease;width:32px}.table-btn:hover{background:#f9fafb;border-color:#d1d5db}.table-btn.view:hover{border-color:#3b82f6;color:#3b82f6}.table-btn.pdf:hover{border-color:#e91e63;color:#e91e63}.table-status-select{background:#fff;border:1px solid #d1d5db;border-radius:.375rem;cursor:pointer;font-size:.75rem;min-width:120px;padding:.375rem .5rem}.table-status-select:focus{border-color:#e91e63;box-shadow:0 0 0 3px #e91e631a;outline:none}.empty-state{background:#fff;border:2px dashed #d1d5db;border-radius:1.5rem;padding:4rem 2rem}.empty-icon{color:#d1d5db;margin-bottom:1.5rem}.empty-state h3{color:#374151;font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.empty-state p{font-size:.875rem;margin-bottom:1.5rem}.clear-filters-btn{background:linear-gradient(135deg,#e91e63,#c2185b);border:none;border-radius:.75rem;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.clear-filters-btn:hover{box-shadow:0 4px 15px #e91e634d}.pagination-modern{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:1rem;box-shadow:0 4px 6px #0000000d;display:flex;justify-content:space-between;padding:1.5rem 2rem}.pagination-info{color:#6b7280;font-size:.875rem;font-weight:500}.pagination-controls{align-items:center;display:flex;gap:1rem}.pagination-btn{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;color:#6b7280;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.pagination-btn:disabled{cursor:not-allowed;opacity:.5}.page-numbers{display:flex;gap:.25rem}.page-btn{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;color:#6b7280;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;height:36px;justify-content:center;transition:all .2s ease;width:36px}.page-btn:hover:not(.active){background:#f9fafb;border-color:#d1d5db}.page-btn.active{background:linear-gradient(135deg,#e91e63,#c2185b);border-color:#e91e63;color:#fff}@media (max-width:1024px){.clients-grid{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.clients-header-modern{align-items:stretch;flex-direction:column;gap:1.5rem}.clients-stats,.header-actions-modern{justify-content:center}}@media (max-width:768px){.clients-header-modern{padding:1.5rem}.header-title-section h1{font-size:2rem}.search-section{align-items:stretch;flex-direction:column}.search-input-container{min-width:auto}.filter-actions{gap:.5rem;justify-content:stretch}.status-filter-modern{flex:1 1;min-width:auto}.clients-grid{grid-template-columns:1fr}.clients-table-modern{overflow-x:auto}.table-modern{min-width:800px}.pagination-modern{flex-direction:column;gap:1rem;text-align:center}.page-numbers,.pagination-controls{justify-content:center}.page-numbers{flex-wrap:wrap}}@media (max-width:480px){.search-filters-modern{padding:1.5rem}.filter-actions{flex-direction:column}.view-mode-toggle{align-self:center}.client-card{padding:1rem}.card-header{align-items:center;flex-direction:column;gap:.75rem;text-align:center}.client-stats{justify-content:center}.card-footer{align-items:center;flex-direction:column;gap:1rem}.card-actions-footer{justify-content:center}.pagination-btn{font-size:.75rem;padding:.5rem .75rem}.page-btn{font-size:.75rem;height:32px;width:32px}}.admin-client-detail{background:linear-gradient(135deg,#f8fafc,#e2e8f0);min-height:100vh}.security-notice{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;margin:8px 0;padding:8px 12px}.header-content{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 2fr 1fr}.nav-center{gap:2rem;justify-content:center}.header-actions,.nav-center{align-items:center;display:flex}.header-actions{justify-content:flex-end}.nav-link:hover{background:#e91e631a}.main-content{max-width:1400px}.client-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:16px;box-shadow:0 8px 32px #0000001a;padding:2rem}.client-title h1{color:#2c3e50;font-size:2rem;margin:0 0 1rem}.client-meta{flex-wrap:wrap}.client-id{background:#f8f9fa;border:1px solid #e9ecef;border-radius:20px;color:#6c757d;padding:.5rem 1rem}.status-select{border:2px solid #e9ecef;border-radius:8px;color:#2c3e50;font-weight:500;padding:.75rem 1rem;transition:all .2s ease}.btn-primary:hover{box-shadow:0 8px 25px #e91e634d;transform:translateY(-2px)}.detail-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.detail-card:hover{box-shadow:0 12px 40px #00000026;transform:translateY(-4px)}.detail-card h2{border-bottom:2px solid #e91e63;color:#2c3e50;font-size:1.25rem;font-weight:600;margin:0 0 1.5rem;padding-bottom:.5rem}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.detail-item label{color:#6c757d;letter-spacing:.5px}.detail-item span{color:#2c3e50;word-break:break-word}.client-id-full{background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;font-family:Monaco,Menlo,monospace;font-size:.875rem;padding:.5rem}.status-badge{border-radius:20px;font-size:.875rem;font-weight:500;padding:.5rem 1rem;text-transform:capitalize}.status-draft{background:#ffeaa7;color:#d63031}.status-admin-created{background:#fd79a8;color:#e84393}.status-submitted{background:#74b9ff;color:#0984e3}.status-signed{background:#00b894;color:#fff}.status-exported{background:#a29bfe;color:#fff}.card-type{border-radius:4px;font-size:.875rem;font-weight:600;padding:.25rem .75rem;text-transform:uppercase}.card-visa{background:#1a237e;color:#fff}.card-mastercard{background:#ff5722;color:#fff}.card-amex{background:#2e7d32;color:#fff}.budgets-list,.services-list{display:flex;flex-direction:column;gap:1rem}.budget-item,.service-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:1.5rem;transition:all .2s ease}.budget-item:hover,.service-item:hover{border-color:#e91e63;box-shadow:0 4px 12px #e91e631a}.budget-item h3,.service-header h3{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0}.service-type{border-radius:12px;padding:.25rem .75rem}.budget-details,.service-charges{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.budget-detail,.charge-item{display:flex;flex-direction:column;gap:.25rem}.budget-detail label,.charge-item label{color:#6c757d;font-size:.75rem;font-weight:600;text-transform:uppercase}.budget-detail span,.charge-item span{color:#2c3e50;font-weight:600}.signature-info{grid-gap:2rem;align-items:start;display:grid;gap:2rem;grid-template-columns:1fr auto}.signature-meta{flex-direction:column}.signature-detail label{color:#6c757d}.signature-detail span{color:#2c3e50}.signature-image{max-width:300px}.signature-preview{background:#fff;border:2px solid #e9ecef;border-radius:8px;height:auto;padding:1rem}.signature-error{border:2px dashed #e9ecef;padding:2rem;text-align:center}.no-data,.signature-error{background:#f8f9fa;border-radius:8px;color:#6c757d}.no-data{border:1px dashed #e9ecef}.audit-log{background:#f8f9fa;border-left:4px solid #e91e63;border-radius:0 8px 8px 0}.audit-action{color:#2c3e50}.audit-date,.audit-user{color:#6c757d}.error-page{align-items:center;color:#fff;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:60vh}.error-page h1{margin:0}.error-page p{font-size:1.1rem;margin:0;opacity:.9}@media (max-width:768px){.client-header{flex-direction:column;gap:1.5rem}.client-actions{justify-content:flex-start;width:100%}.client-details-grid,.signature-info{grid-template-columns:1fr}.signature-info{gap:1rem}.main-content{padding:1rem}.header-content{flex-direction:column;gap:1rem;padding:1rem}.nav{gap:1rem}}.compact-grid{display:flex;flex-direction:column;gap:.75rem}.compact-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.compact-row.single{grid-template-columns:1fr}.compact-item{display:flex;flex-direction:column;gap:.25rem;min-width:0}.compact-item label{color:#6b7280;font-size:.8rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-item span{color:#1f2937;font-size:.95rem;font-weight:500;word-break:break-word}.card-header{align-items:center;border-bottom:2px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:.75rem}.header-badges{display:flex;gap:.5rem}.services-list.compact{display:flex;flex-direction:column;gap:1rem}.service-item.compact{background:#f8f9fa;border:1px solid #e9ecef;border-radius:.75rem;padding:1rem}.service-header.compact{margin-bottom:.75rem}.service-title{display:flex;flex-direction:column;gap:.25rem}.service-title h3{color:#1f2937;font-size:1rem;font-weight:600;margin:0}.service-charges.compact{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,1fr)}.service-charges.compact .charge-item{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:.75rem;text-align:center}.budgets-list.compact{display:flex;flex-direction:column;gap:1rem}.budget-item.compact{background:#f8f9fa;border:1px solid #e9ecef;border-radius:.75rem;padding:1rem}.budget-item.compact h3{color:#1f2937;font-size:1rem;font-weight:600;margin:0 0 .75rem}.signature-info.compact{display:flex;flex-direction:column;gap:1.5rem}.signature-image.compact{background:#f9fafb;border:2px dashed #d1d5db;border-radius:.75rem;display:flex;justify-content:center;padding:1rem}.audit-logs.compact{display:flex;flex-direction:column;gap:.75rem}.audit-log.compact{background:#f8f9fa;border-left:4px solid #e91e63;border-radius:0 .5rem .5rem 0;padding:.75rem}@media (max-width:768px){.compact-row{gap:.75rem;grid-template-columns:1fr}.service-charges.compact{gap:.5rem;grid-template-columns:1fr}}.client-header{align-items:flex-start;gap:2rem}.client-title h1{color:#1f2937;font-size:2.5rem;font-weight:700;margin-bottom:1rem}.client-meta{align-items:center;display:flex;gap:1rem}.client-id{border-radius:.375rem;color:#6b7280;font-size:.875rem;padding:.25rem .75rem}.client-actions{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.status-select{background:#fff;border:1px solid #d1d5db;border-radius:.5rem;cursor:pointer;font-size:.875rem;min-width:150px;padding:.75rem}.status-select:focus{border-color:#e91e63;box-shadow:0 0 0 3px #e91e631a;outline:none}.client-details-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.detail-card{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;box-shadow:0 4px 6px #0000000d;padding:2rem}.detail-card h2{border-bottom:2px solid #f1f5f9;color:#1f2937;font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;padding-bottom:.75rem}.detail-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.detail-item{display:flex;flex-direction:column;gap:.5rem}.detail-item label{color:#6b7280;font-size:.875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.detail-item span{color:#1f2937;font-size:1rem;font-weight:500}.services-list{display:flex;flex-direction:column;gap:1.5rem}.service-header{justify-content:space-between}.service-header h3{color:#1f2937;font-size:1.125rem;font-weight:600;margin:0}.service-type{background:#e5e7eb;border-radius:.375rem;color:#6b7280;letter-spacing:.05em}.charge-item{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:.75rem;text-align:center}.charge-item label{color:#6b7280;display:block;font-size:.75rem;font-weight:600;letter-spacing:.05em;margin-bottom:.25rem;text-transform:uppercase}.charge-item span{color:#e91e63;font-size:1.125rem;font-weight:700}.budgets-list{display:flex;flex-direction:column;gap:1.5rem}.budget-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem}.budget-item h3{color:#1f2937;font-size:1.125rem;font-weight:600;margin-bottom:1rem}.budget-details{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.budget-detail{display:flex;flex-direction:column;gap:.25rem}.budget-detail label{color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.budget-detail span{color:#1f2937;font-size:1rem;font-weight:500}.signature-info{display:flex;flex-direction:column;gap:1.5rem}.signature-meta{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.signature-detail{display:flex;flex-direction:column;gap:.25rem}.signature-detail label{color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.signature-detail span{color:#1f2937;font-size:1rem;font-weight:500}.signature-image{background:#f9fafb;border:2px dashed #d1d5db;border-radius:.75rem;display:flex;justify-content:center;padding:1rem}.signature-preview{border-radius:.5rem;box-shadow:0 4px 6px #0000001a;max-height:200px}.audit-logs{display:flex;flex-direction:column;gap:1rem}.audit-log{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem}.audit-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.audit-action{color:#1f2937;font-size:.875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.audit-date,.audit-user{color:#6b7280;font-size:.875rem}.no-data{margin:0}.error-page{padding:4rem 2rem;text-align:center}.error-page h1{color:#1f2937;font-size:2rem;font-weight:700;margin-bottom:1rem}.error-page p{color:#6b7280;font-size:1.125rem;margin-bottom:2rem}@media (max-width:1024px){.budget-details,.client-details-grid,.detail-grid,.service-charges{grid-template-columns:1fr}}@media (max-width:768px){.client-header{align-items:flex-start;flex-direction:column}.client-actions{justify-content:flex-start;width:100%}.client-title h1{font-size:2rem}.detail-card{padding:1.5rem}.service-charges{grid-template-columns:repeat(3,1fr)}.signature-meta{grid-template-columns:1fr}}@media (max-width:480px){.client-actions{align-items:stretch;flex-direction:column}.service-charges{grid-template-columns:1fr}.charge-item{padding:.5rem}.detail-card{padding:1rem}}.url-generation-section{background:#e91e630d;border:2px solid #e91e63;border-radius:16px;margin-bottom:2rem;padding:2rem}.url-generation-section .section-header{margin-bottom:1.5rem}.url-generation-section .section-header h3{color:#e91e63;font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.url-generation-section .section-header p{color:#6b7280;margin:0}.url-actions{display:flex;justify-content:center}.url-container,.url-display{gap:1rem}.url-input{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;font-family:Monaco,Menlo,monospace}.url-input:focus{border-color:#e91e63;box-shadow:0 0 0 3px #e91e631a}.url-note{font-style:italic}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:modalAppear .2s ease-out forwards;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;transform:scale(.95);width:100%}@keyframes modalAppear{to{transform:scale(1)}}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;gap:1rem;padding:2rem 2rem 1rem}.modal-header h3{color:#1f2937;font-size:1.5rem;font-weight:700;margin:0}.modal-header .text-red-500{color:#ef4444;flex-shrink:0}.modal-body{padding:1.5rem 2rem}.modal-body p{color:#374151;line-height:1.6;margin:0 0 1rem}.modal-body p:last-child{margin-bottom:0}.modal-body .text-sm{font-size:.875rem}.modal-body .text-gray-600{color:#6b7280}.modal-body .mt-2{margin-top:.5rem}.modal-actions{background:#fff;border-top:1px solid #e5e7eb;display:flex;flex-shrink:0;gap:1rem;justify-content:flex-end;margin-top:auto;padding:1rem 2rem 2rem}.btn-secondary{background:#6b7280;color:#fff}.btn-secondary:hover{background:#4b5563;transform:translateY(-1px)}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626;transform:translateY(-1px)}.btn-danger:disabled,.btn-secondary:disabled{cursor:not-allowed;opacity:.6;transform:none}.modern-header{background:#fff;border:1px solid #f1f5f9;border-radius:16px;box-shadow:0 2px 12px #00000014;margin-bottom:1.5rem}.header-main{justify-content:space-between;padding:1.5rem 2rem}.header-left,.header-main{align-items:center;display:flex}.header-left{gap:1rem}.client-avatar{align-items:center;background:linear-gradient(135deg,#e91e63,#c2185b);border-radius:12px;color:#fff;display:flex;flex-shrink:0;font-size:1.5rem;font-weight:700;height:56px;justify-content:center;width:56px}.client-info{min-width:0}.client-name{color:#1f2937;font-size:1.5rem;font-weight:700;line-height:1.2;margin:0 0 .25rem}.client-meta-modern{align-items:center;color:#6b7280;display:flex;font-size:.875rem;gap:.5rem}.client-id{background:#f3f4f6;border-radius:6px;font-family:Monaco,Menlo,monospace;font-size:.75rem;font-weight:600;padding:.125rem .5rem}.separator{color:#d1d5db}.client-email{font-weight:500}.header-right{align-items:center;display:flex;gap:1rem}.status-container{align-items:center;display:flex;gap:.75rem}.action-buttons{align-items:center;gap:.5rem}.btn-ghost{background:#0000;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.btn-ghost:hover{background:#f9fafb;border-color:#d1d5db;color:#374151;text-decoration:none}.modern-info-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr;margin-bottom:2rem}.info-panel{background:#fff;border:1px solid #f1f5f9;border-radius:16px;box-shadow:0 2px 12px #00000014;padding:1.5rem}.info-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-label{color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.info-value{color:#1f2937;font-size:.875rem;font-weight:500}.address-section{border-top:1px solid #f1f5f9;display:flex;flex-direction:column;gap:.25rem;padding-top:1rem}.modern-card{background:#fff;border:1px solid #f1f5f9;border-radius:16px;box-shadow:0 2px 12px #00000014;margin-bottom:1.5rem;padding:1.5rem}.card-header-modern{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem}.card-header-modern h3{color:#1f2937;font-size:1.125rem;font-weight:600;margin:0}.totals-preview{align-items:center;display:flex;font-size:.875rem;gap:.5rem}.total-value{font-size:1rem}.services-modern{display:flex;flex-direction:column;gap:.75rem}.service-row{align-items:center;background:#f9fafb;border:1px solid #f1f5f9;border-radius:8px;display:flex;justify-content:space-between;padding:.75rem}.service-info{display:flex;flex-direction:column;gap:.25rem}.service-name{font-size:.875rem}.service-type-tag{background:#e5e7eb;color:#6b7280;padding:.125rem .5rem;width:-webkit-fit-content;width:fit-content}.price-tag,.service-type-tag{border-radius:4px;font-size:.75rem}.price-tag{font-weight:600;padding:.25rem .5rem;white-space:nowrap}.price-tag.once-off{background:#fef3c7;color:#92400e}.price-tag.monthly{background:#dcfce7;color:#166534}.price-tag.yearly{background:#dbeafe;color:#1e40af}.empty-state{background:#f9fafb;border-radius:8px;color:#6b7280;font-style:italic;padding:2rem;text-align:center}.budget-modern{display:flex;flex-direction:column;gap:.75rem}.budget-row{align-items:center;background:#f9fafb;border:1px solid #f1f5f9;border-radius:8px;display:flex;justify-content:space-between;padding:.75rem}.budget-type{display:flex;flex-direction:column;gap:.25rem}.budget-name{color:#1f2937;font-size:.875rem;font-weight:600}.budget-amount{color:#6b7280}.budget-amount,.charge-tag{font-size:.75rem;font-weight:500}.charge-tag{border-radius:4px;padding:.25rem .5rem;white-space:nowrap}.charge-tag.tinster{background:#e0f2fe;color:#0277bd}.charge-tag.platform{background:#f3e8ff;color:#7c3aed}.security-notice-modern{background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;color:#92400e;font-size:.875rem;margin-bottom:1rem;padding:.75rem}.payment-method-display{align-items:center;background:#f9fafb;border:1px solid #f1f5f9;border-radius:8px;display:flex;gap:1rem;padding:.75rem}.payment-type{color:#1f2937;font-size:.875rem;font-weight:600}.account-name{color:#6b7280;font-size:.875rem}.signature-meta{align-items:center;display:flex;gap:.5rem}.signature-date{color:#6b7280;font-size:.875rem;font-weight:500}.signature-display{align-items:flex-start;display:flex;gap:1.5rem}.signature-image-modern{align-items:center;background:#f9fafb;border:2px solid #f1f5f9;border-radius:8px;display:flex;flex:1 1;justify-content:center;max-width:300px;min-height:120px;padding:1rem}.signature-preview{border-radius:4px;max-height:100px;max-width:100%}.signature-details{display:flex;flex-direction:column;gap:.5rem}.detail-row{align-items:center;display:flex;gap:.5rem}.detail-label{color:#6b7280;min-width:60px}.detail-label,.detail-value{font-size:.875rem;font-weight:500}.detail-value{color:#1f2937}@media (max-width:768px){.header-main{align-items:flex-start;flex-direction:column;gap:1rem}.header-right{justify-content:space-between;width:100%}.action-buttons{flex-wrap:wrap}.info-grid{grid-template-columns:1fr}.budget-row,.service-row{align-items:flex-start;flex-direction:column;gap:.5rem}.budget-charges,.service-pricing{align-self:stretch;justify-content:flex-start}.signature-display{flex-direction:column}.signature-image-modern{max-width:100%}.payment-method-display{align-items:flex-start;flex-direction:column;gap:.5rem}}.text-red-500{color:#ef4444}.text-blue-500{color:#3b82f6}.text-sm{font-size:.875rem}.text-gray-600{color:#6b7280}.mt-2{margin-top:.5rem}.w-4{width:1rem}.h-4{height:1rem}.modal-large{display:flex;flex-direction:column;max-height:95vh;overflow:hidden;width:95vw}.modal-close-btn{background:none;border:none;border-radius:.375rem;color:#6b7280;cursor:pointer;padding:.5rem;position:absolute;right:1.5rem;top:1.5rem;transition:all .2s ease;z-index:10}.modal-close-btn:hover{background:#f3f4f6;color:#374151}.modal-close-btn:disabled{cursor:not-allowed;opacity:.5}.modal-large .modal-header{padding-right:4rem;position:relative}.modal-form{flex:1 1;min-height:0;overflow-y:auto;padding:1.5rem 2rem}.form-section{margin-bottom:2rem;padding-bottom:1.5rem}.form-section h4{color:#1f2937;font-size:1.125rem;font-weight:600;margin:0 0 1rem}.form-section h5{color:#374151;font-size:1rem;margin:0 0 .75rem}.form-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.form-group{display:flex;flex-direction:column;gap:.5rem;min-width:0}.form-group.full-width{grid-column:1/-1}.bank-account-fields{gap:1.5rem;grid-template-columns:1fr 1fr}.bank-account-fields .form-group.full-width{grid-column:1/-1}.form-group label{color:#374151;font-size:.875rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-input{background:#fff;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;min-width:0;padding:.75rem;transition:all .2s ease;width:100%}.form-input:focus{border-color:#e91e63;box-shadow:0 0 0 3px #e91e631a;outline:none}.form-input:required{border-left:3px solid #e91e63}.service-list{display:flex;flex-direction:column;max-height:400px;overflow-y:auto;padding-right:.5rem}.service-charges{border-top:1px solid #e5e7eb;margin-top:1rem;padding-top:1rem}.charge-label{font-weight:600;letter-spacing:.5px}.charge-input{background:#fff;border-radius:8px;transition:all .2s ease}.budgets-edit{display:flex;flex-direction:column;gap:1.5rem}.budget-edit-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;min-width:0;padding:1rem}.budget-inputs{display:flex;flex-direction:column;gap:1rem}.budget-checkboxes{display:flex;flex-wrap:wrap;gap:1.5rem}.checkbox-label{align-items:center;color:#374151;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;min-width:0;white-space:nowrap}.checkbox-label input[type=checkbox]{accent-color:#e91e63;flex-shrink:0;height:1rem;width:1rem}.loading-services{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;color:#6b7280;font-style:italic;padding:2rem;text-align:center}@media (max-width:768px){.url-container{flex-direction:column}.url-input{width:100%}.modal-content{margin:1rem;max-width:calc(100vw - 2rem)}.modal-actions,.modal-body,.modal-header{padding-left:1.5rem;padding-right:1.5rem}.modal-actions{flex-direction:column}.modal-large{max-height:98vh;max-width:calc(100vw - 1rem);width:calc(100vw - 1rem)}.modal-form{flex:1 1;min-height:0;padding:1rem}.modal-actions{flex-shrink:0;padding:1rem}.form-grid{gap:1rem;grid-template-columns:1fr}.bank-account-fields{display:flex!important;flex-direction:column!important;gap:1rem!important}.bank-account-fields .form-group{flex:1 1;min-width:0;width:100%!important}.bank-account-fields .form-input{box-sizing:border-box;min-width:0;width:100%!important}.service-pricing{gap:.75rem;grid-template-columns:1fr}.budget-checkboxes{flex-direction:column;gap:.75rem}.services-edit{max-height:200px}.modal-close-btn{right:1rem;top:1rem}.modal-large .modal-header{padding:1.5rem 3rem 1rem 1.5rem}.signature-pad-container{margin:1rem 0;padding:0}.signature-canvas{height:150px;max-width:100%;width:400px}.step-indicator{flex-direction:column;gap:.5rem}.step-indicator .step{font-size:.75rem;text-align:center}}.in-person-modal{flex:1 1;min-height:0;overflow-y:auto}.step-indicator{display:flex;gap:1rem;margin-left:1rem}.step-indicator .step{background:#f3f4f6;border-radius:1rem;color:#6b7280;font-size:.875rem;padding:.25rem .75rem;transition:all .2s ease}.step-indicator .step.active{background:#e91e63;color:#fff}.step-indicator .step.completed{background:#10b981;color:#fff}.in-person-step{padding:1rem 0}.step-header{border-bottom:1px solid #e5e7eb;margin-bottom:2rem;padding-bottom:1rem;text-align:center}.step-header h4{color:#1f2937;font-size:1.25rem;margin:0 0 .5rem}.step-header p{color:#6b7280;font-size:.875rem;margin:0}.summary-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1.5rem}.summary-item{display:flex;flex-direction:column;gap:.25rem}.summary-item.full-width{grid-column:span 2}.summary-item label{color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.025em;text-transform:uppercase}.summary-item span{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.375rem;color:#1f2937;font-size:.875rem;padding:.5rem}.services-summary{display:flex;flex-direction:column;gap:1rem}.service-summary-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem}.service-summary-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.service-summary-header h6{color:#1f2937;font-size:1rem;margin:0}.service-type{background:#e91e63;border-radius:.25rem;color:#fff}.service-charges-summary{grid-gap:.75rem;display:grid;font-size:.875rem;gap:.75rem;grid-template-columns:1fr 1fr 1fr}.service-charges-summary span{background:#fff;border:1px solid #d1d5db;border-radius:.25rem;padding:.5rem;text-align:center}.totals-summary{border-top:2px solid #e91e63;margin-top:1rem;padding-top:1rem}.totals-summary h6{color:#e91e63;font-size:1rem;font-weight:600;margin:0 0 .75rem}.totals-row{grid-gap:.75rem;display:grid;font-weight:600;gap:.75rem;grid-template-columns:1fr 1fr 1fr}.totals-row span{background:#e91e63;border-radius:.375rem;color:#fff;padding:.75rem;text-align:center}.budgets-summary{display:flex;flex-direction:column;gap:1rem}.budget-summary-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem}.budget-summary-item h6{color:#1f2937;font-size:1rem;font-weight:600;margin:0 0 .75rem}.budget-details{display:flex;flex-direction:column;gap:.5rem}.budget-options{font-size:.875rem}.signature-pad-container{align-items:center;display:flex;justify-content:center;margin:1rem 0;overflow:hidden;position:relative;width:100%}.signature-canvas{-webkit-touch-callout:none;border:2px solid #e5e7eb;display:block;height:200px;max-width:100%;touch-action:none;-webkit-user-select:none;user-select:none;width:500px}.modal-large{max-width:900px;width:90vw}.form-section h5{border-bottom:1px solid #e5e7eb;color:#1f2937;font-size:1.125rem;font-weight:600;margin:0 0 1rem;padding-bottom:.5rem}.no-data{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;color:#6b7280;font-style:italic;padding:2rem;text-align:center}.client-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:2rem;padding:1.5rem 0}.client-header .header-left{align-items:center;display:flex;gap:1rem}.client-header h1{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0}.client-header .client-id{color:#6b7280;font-family:monospace;font-size:.875rem}.client-header .header-right{display:flex;flex-wrap:wrap;gap:.75rem}.url-generation-card{background:#fefefe;border:1px solid #f3e8ff;border-radius:12px;box-shadow:0 2px 4px #0000000d;margin-bottom:2rem;overflow:hidden}.url-generation-card .card-header{background:#fafafa;border-bottom:1px solid #f3f4f6;padding:1.5rem 1.5rem .5rem;text-align:left}.url-generation-card .card-header h3{align-items:center;color:#ec4899;display:flex;font-size:1.125rem;font-weight:600;gap:.5rem;margin:0}.url-generation-card .card-content{background:#0000;padding:1.5rem;text-align:left}.url-actions,.url-actions p{text-align:left}.url-actions p{color:#6b7280;font-size:.875rem;line-height:1.6;margin:0 0 1.5rem}.url-actions .btn{background:#ec4899;border:none;border-radius:8px;box-shadow:none;color:#fff;display:block;font-size:.875rem;font-weight:600;margin:0 auto;padding:.75rem 1.5rem;text-align:center;transition:all .2s ease}.url-actions .btn:hover{background:#db2777;box-shadow:none;transform:none}.url-actions .btn:disabled{background:#9ca3af;box-shadow:none;transform:none}.url-display{display:flex;flex-direction:column;gap:1.5rem}.url-container{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:.75rem;padding:1rem;transition:all .2s ease}.url-container:hover{border-color:#ec4899;box-shadow:none}.url-input{background:#f9fafb;border:none;border-radius:6px;box-shadow:none;color:#1f2937;flex:1 1;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:.875rem;font-weight:500;padding:.75rem 1rem}.url-input:focus{background:#fff;box-shadow:none;outline:none}.url-container .btn{background:#ec4899;border:none;border-radius:6px;box-shadow:none;color:#fff;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.url-container .btn:hover{background:#db2777;box-shadow:none;transform:none}.url-note{background:#0000;border:none;border-radius:0;color:#6b7280;font-size:.875rem;line-height:1.5;margin:0;padding:1rem;text-align:center}.spinner{display:inline-block;margin-right:.5rem}.cards-container{display:flex;flex-direction:column;gap:1.5rem}.card-row{grid-gap:1.5rem;align-items:start;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.client-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;height:-webkit-fit-content;height:fit-content;padding:0}.client-card.full-width{grid-column:1/-1}.client-card .card-header{align-items:center;background:#f9fafb;border-bottom:1px solid #f3f4f6;display:flex;justify-content:flex-start;padding:.75rem 1rem}.client-card .card-header h3{align-items:center;color:#374151;display:flex;flex:1 1;font-size:.875rem;font-weight:600;gap:.5rem;margin:0}.client-card .card-icon{font-size:1rem}.client-card .card-header-with-button{justify-content:space-between}.client-card .card-header-with-button .header-left{align-items:center;display:flex;gap:.5rem}.client-card .card-header-with-button .header-left h3{color:#374151;font-size:.875rem;font-weight:600;margin:0}.client-card .card-content{padding:1rem}.info-row{align-items:flex-start;border-bottom:1px solid #f9fafb;display:flex;justify-content:space-between;padding:.375rem 0}.info-row:last-child{border-bottom:none}.info-row .label{color:#6b7280;min-width:100px}.info-row .label,.info-row .value{font-size:.8125rem;font-weight:500}.info-row .value{color:#1f2937;flex:1 1;text-align:right}.service-item{border-bottom:1px solid #f3f4f6;padding:.75rem 0}.service-item:last-child{border-bottom:none}.service-header{justify-content:flex-start;margin-bottom:.5rem}.service-type{background:#e0f2fe;border-radius:4px;color:#0277bd;font-size:.75rem;font-weight:500;padding:.25rem .5rem;text-transform:uppercase}.service-pricing{display:flex;flex-wrap:wrap;gap:.5rem}.price-tag{align-items:center;border:1px solid #e5e7eb;border-radius:6px;display:flex;flex-direction:column;min-width:80px;padding:.5rem}.price-label{color:#6b7280;font-size:.75rem;font-weight:500;margin-bottom:.25rem}.price-value{color:#dc2626;font-size:1rem;font-weight:700}.budget-item{border-bottom:1px solid #f3f4f6;padding:.5rem 0}.budget-item:last-child{border-bottom:none}.budget-type{color:#1f2937;margin-bottom:.125rem}.budget-amount,.budget-type{font-size:.875rem;font-weight:600}.budget-amount{color:#059669;margin-bottom:.25rem}.budget-charges{display:flex;gap:.5rem}.charge-by{background:#f3e8ff;border-radius:4px;color:#7c3aed;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.show-full-btn{background:none;border:1px solid #d1d5db;border-radius:4px;color:#6b7280;cursor:pointer;font-size:.75rem;padding:.375rem .75rem;transition:all .2s}.show-full-btn:hover{background:#f9fafb;border-color:#9ca3af}.security-notice{background:#f0f9ff;border:1px solid #0ea5e9;border-radius:6px;color:#0369a1;font-size:.875rem;margin-bottom:1rem;padding:.75rem}.signature-preview{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;display:flex;justify-content:center;margin-top:1rem;min-height:120px;padding:1.5rem;text-align:center}.signature-image{background:#fff;border:1px solid #e5e7eb;border-radius:4px;display:block;max-height:100px;max-width:250px;object-fit:contain}.system-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.system-info-compact{margin-top:1rem}.system-info-compact .card-content{padding:.5rem 1rem}.system-compact-grid{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem}.system-compact-item{color:#6b7280;font-size:.75rem}.system-compact-item strong{color:#374151;font-weight:600}.status-badge{align-items:center;border-radius:9999px;display:inline-flex;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.375rem .75rem;text-transform:uppercase}.status-badge.signed{background-color:#d1fae5;color:#065f46}.status-badge.admin-created{background-color:#fef3c7;color:#92400e}.status-badge.submitted{background-color:#dbeafe;color:#1e40af}.status-badge.draft{background-color:#f3f4f6;color:#374151}.status-badge.exported{background-color:#e0e7ff;color:#3730a3}@media (max-width:768px){.header-content{gap:1rem;grid-template-columns:1fr;text-align:center}.nav-center{flex-wrap:wrap;gap:1rem}.header-actions{justify-content:center}.card-row{grid-template-columns:1fr}.client-header{align-items:flex-start;flex-direction:column;gap:1rem}.client-header .header-right{flex-wrap:wrap;justify-content:flex-start;width:100%}.client-header .header-right .btn{font-size:.875rem;padding:.5rem .75rem}.system-grid{grid-template-columns:1fr}.info-row{align-items:flex-start;flex-direction:column;gap:.25rem}.info-row .value{text-align:left}.url-container{align-items:stretch;flex-direction:column;gap:1rem}.url-input{margin-bottom:0}.url-generation-card .card-header{padding:1.25rem 1.25rem .75rem}.url-generation-card .card-content{padding:1.25rem}.url-actions .btn{padding:1rem 2rem;width:100%}}@media (max-width:768px) and (max-height:1024px){.bank-account-fields{display:flex!important;flex-direction:column!important;gap:1rem!important;width:100%!important}.bank-account-fields .form-group{flex:1 1;margin:0;min-width:0;width:100%!important}.bank-account-fields .form-input{box-sizing:border-box;display:block;margin:0;min-width:0;padding:.75rem;width:100%!important}}@media (max-width:480px){.bank-account-fields{display:flex!important;flex-direction:column!important;gap:1rem!important;width:100%!important}.bank-account-fields .form-group{flex:1 1;margin:0;min-width:0;width:100%!important}.bank-account-fields .form-input{box-sizing:border-box;display:block;margin:0;min-width:0;padding:.75rem;width:100%!important}}.upload-section{padding:1rem 0}.upload-description{color:#666;font-size:.9rem;margin-bottom:1.5rem}.file-input-section{margin-bottom:1rem}.file-input-label{align-items:center;background:#f8f9fa;border:2px dashed #dee2e6;border-radius:8px;color:#6c757d;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:.75rem 1rem;transition:all .2s ease}.file-input-label:hover{background:#e9ecef;border-color:#a70b44;color:#a70b44}.file-input-hidden{display:none}.file-info{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;margin-top:1rem;padding:1rem}.file-details{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.file-name{color:#333;font-weight:500}.file-size{color:#6c757d;font-size:.875rem}.file-error{color:#dc3545;font-size:.875rem;font-weight:500;margin-top:.5rem}.upload-note{background:#e3f2fd;border:1px solid #90caf9;border-radius:6px;color:#1565c0;font-size:.875rem;margin-top:1.5rem;padding:1rem}.admin-create-client{background:linear-gradient(135deg,#f8fafc,#e2e8f0);min-height:100vh}.header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-bottom:1px solid #fff3;box-shadow:0 4px 20px #0000001a}.header-content{max-width:1400px;padding:1rem 2rem}.logo{color:#2c3e50;gap:.75rem;transition:transform .2s ease}.logo:hover{transform:scale(1.05)}.logo-icon{background:linear-gradient(135deg,#e91e63,#c2185b);border-radius:8px;height:40px;width:40px}.nav{gap:2rem}.nav-link{border-radius:6px;color:#2c3e50;transition:all .2s ease}.nav-link.active,.nav-link:hover{background:#e91e631a;color:#e91e63}.main-content{padding:2rem}.page-header{align-items:flex-start;display:flex;gap:2rem;justify-content:space-between;margin-bottom:2rem}.page-header h1{color:#1f2937;font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.page-header p{color:#6b7280;font-size:1.1rem;margin:0}.form-body{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px #0000001a}.section-description{color:#6b7280;font-size:.95rem;font-style:italic;margin-bottom:1.5rem}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s ease}.btn-primary{background:linear-gradient(135deg,#e91e63,#c2185b);color:#fff}.btn-primary:hover:not(:disabled){box-shadow:0 8px 25px #e91e634d;transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-secondary{background:#0000;border:2px solid #e9ecef;color:#6c757d}.btn-secondary:hover{background:#f8f9fa;border-color:#6c757d}.btn-outline{background:#0000;border:2px solid #e9ecef;color:#6c757d}.btn-outline:hover{background:#f8f9fa;border-color:#6c757d}.btn-sm{font-size:.8rem;padding:.5rem 1rem}.spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:currentcolor;height:1rem;width:1rem}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.form-section{border-bottom:1px solid #e2e8f0;margin-bottom:3rem}.form-section:last-of-type{border-bottom:none;margin-bottom:2rem}.section-title{color:#1f2937;font-size:1.5rem;margin-bottom:1rem}.section-title:before{background:linear-gradient(135deg,#e91e63,#c2185b)}.service-item{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;margin-bottom:1rem;transition:all .2s ease}.service-item.selected{background:#e91e630d;box-shadow:0 4px 12px #e91e6326}.service-item:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.service-checkbox{cursor:pointer}.service-name{color:#1f2937;font-size:1.1rem}.service-charges{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding-left:2.25rem}.charge-field{gap:.5rem}.charge-label{color:#374151;font-size:.875rem}.charge-input{border-radius:6px;padding:.75rem;transition:border-color .2s ease}.budget-section{grid-gap:2rem;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.budget-type{background:#f9fafb;border-radius:12px}.budget-header{border-bottom:2px solid #e91e63;color:#1f2937;font-size:1.2rem;padding-bottom:.5rem}.budget-options{flex-direction:column;gap:.75rem;margin-top:1rem}.budget-option label{color:#374151;cursor:pointer;font-size:.875rem}.totals-section{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:2px solid #e91e63;border-radius:16px;margin:2rem 0;padding:2rem}.totals-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.total-item{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;padding:1.5rem}.total-label{font-weight:600;letter-spacing:.5px;text-transform:uppercase}.total-value{font-size:2rem}input[type=date]{cursor:pointer;position:relative;width:100%}input[type=date]::-webkit-calendar-picker-indicator{background:#0000;cursor:pointer;height:100%;left:0;position:absolute;top:0;width:100%}input[type=date]::-moz-focus-inner{border:0}.form-actions{border-top:1px solid #e2e8f0}@media (max-width:768px){.main-content{padding:1rem}.page-header{align-items:flex-start;flex-direction:column}.page-header h1{font-size:2rem}.form-body{padding:1.5rem}.form-grid,.service-charges{grid-template-columns:1fr}.service-charges{padding-left:0}.budget-section,.totals-grid{grid-template-columns:1fr}.form-actions,.header-content{flex-direction:column}.header-content{gap:1rem;padding:1rem}.nav{gap:1rem}}.login-container{align-items:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);display:flex;justify-content:center;min-height:100vh;padding:2rem}.login-card{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;box-shadow:0 20px 25px #0000001a;max-width:400px;overflow:hidden;width:100%}.login-header{background:linear-gradient(135deg,#e91e63,#c2185b);color:#fff;padding:3rem 2rem;text-align:center}.logo{gap:1rem;justify-content:center;margin-bottom:2rem}.logo-icon{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:.75rem;font-size:1.5rem;height:3rem;width:3rem}.logo div{font-size:1.5rem;font-weight:700;text-shadow:0 2px 4px #0000001a}.logo div:last-child{font-size:.875rem;margin-top:.25rem;opacity:.9}.login-header h1{font-size:2rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 2px 4px #0000001a}.login-header p{font-size:1rem;opacity:.9}.login-form{padding:2rem}.login-footer{background:#f9fafb;border-top:1px solid #e5e7eb;padding:1.5rem 2rem;text-align:center}.login-footer p{color:#6b7280;font-size:.875rem;margin:0}.login-footer a{color:#e91e63;font-weight:500;text-decoration:none}.login-footer a:hover{text-decoration:underline}@media (max-width:480px){.login-container{padding:1rem}.login-header{padding:2rem 1.5rem}.login-form{padding:1.5rem}.login-footer{padding:1rem 1.5rem}}.unauthorized-page{align-items:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);display:flex;justify-content:center;min-height:100vh;padding:2rem}.unauthorized-container{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;box-shadow:0 20px 25px #0000001a;max-width:500px;padding:4rem 3rem;text-align:center;width:100%}.icon-circle{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 8px 25px #ef44444d}.icon-circle span{font-size:2.5rem}.unauthorized-container h1{color:#1f2937;font-size:2.5rem;font-weight:700;margin-bottom:1rem}.unauthorized-container p{color:#6b7280;font-size:1.125rem;line-height:1.6;margin-bottom:1rem}.unauthorized-container p:last-of-type{margin-bottom:2rem}@media (max-width:480px){.unauthorized-container{padding:3rem 2rem}.unauthorized-container h1{font-size:2rem}.action-buttons{flex-direction:column}}.not-found-page{align-items:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);display:flex;justify-content:center;min-height:100vh;padding:2rem}.not-found-container{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;box-shadow:0 20px 25px #0000001a;max-width:500px;padding:4rem 3rem;text-align:center;width:100%}.error-icon{margin-bottom:2rem}.icon-circle{align-items:center;background:linear-gradient(135deg,#e91e63,#c2185b);border-radius:50%;box-shadow:0 8px 25px #e91e634d;display:flex;height:5rem;justify-content:center;margin:0 auto;width:5rem}.icon-circle span{color:#fff;font-size:1.5rem;font-weight:700}.not-found-container h1{color:#1f2937;font-size:2.5rem;font-weight:700;margin-bottom:1rem}.not-found-container p{color:#6b7280;font-size:1.125rem;line-height:1.6;margin-bottom:1rem}.not-found-container p:last-of-type{margin-bottom:2rem}.action-buttons{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}@media (max-width:480px){.not-found-container{padding:3rem 2rem}.not-found-container h1{font-size:2rem}.action-buttons{flex-direction:column}}.App{background:linear-gradient(135deg,#f8fafc,#e2e8f0);min-height:100vh}.header{background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a;position:-webkit-sticky;position:sticky;top:0;z-index:50}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:1rem 1.5rem}.logo{color:#e91e63;font-size:1.5rem;gap:.5rem;text-decoration:none}.logo,.logo-icon{align-items:center;display:flex;font-weight:700}.logo-icon{background:#e91e63;border-radius:.375rem;color:#fff;height:2rem;justify-content:center;width:2rem}.nav{align-items:center;display:flex;gap:1rem}.nav-link{border-radius:.375rem;color:#6b7280;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:all .2s}.nav-link.active,.nav-link:hover{background-color:#fdf2f8;color:#e91e63}.main-content{margin:0 auto;max-width:1200px;padding:2rem 1.5rem}.form-container{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;box-shadow:0 4px 6px #0000000d;margin:0 auto;max-width:800px;overflow:hidden}.form-header{background:linear-gradient(135deg,#e91e63,#c2185b);color:#fff;padding:2rem;text-align:center}.form-title{font-size:2rem;font-weight:700;margin-bottom:.5rem}.form-subtitle{font-size:1rem;opacity:.9}.form-body{padding:2rem}.form-section{border-bottom:1px solid #e5e7eb;margin-bottom:2.5rem;padding-bottom:2rem}.form-section:last-child{border-bottom:none;margin-bottom:0}.section-title{align-items:center;color:#e91e63;display:flex;font-size:1.25rem;font-weight:600;gap:.5rem;margin-bottom:1.5rem}.section-title:before{background:#e91e63;border-radius:2px;content:"";height:1.5rem;width:4px}.form-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.form-grid-2{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.form-grid-3{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.form-grid-3,.service-list{grid-gap:1rem;display:grid;gap:1rem}.service-item{border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;transition:all .2s}.service-item:hover{border-color:#e91e63;box-shadow:0 2px 8px #e91e631a}.service-item.selected{background-color:#fdf2f8;border-color:#e91e63}.service-header{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.service-checkbox{accent-color:#e91e63;height:1.25rem;width:1.25rem}.service-name{color:#374151;flex:1 1;font-weight:600}.service-charges{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr)}.charge-field{display:flex;flex-direction:column;gap:.25rem}.charge-label{color:#6b7280;font-size:.75rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.charge-input{border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;padding:.5rem;text-align:right}.charge-input:focus{border-color:#e91e63;box-shadow:0 0 0 3px #e91e631a;outline:none}.budget-section{grid-gap:1.5rem;display:grid;gap:1.5rem}.budget-type{border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem}.budget-header{align-items:center;color:#e91e63;font-weight:600;gap:.5rem}.budget-header,.budget-options{display:flex;margin-bottom:1rem}.budget-options{gap:1rem}.budget-option{align-items:center;display:flex;gap:.5rem}.budget-option input[type=checkbox]{accent-color:#e91e63;height:1rem;width:1rem}.signature-section{border:2px dashed #d1d5db;border-radius:.75rem;padding:2rem;text-align:center;transition:all .2s}.signature-section:hover{background-color:#fdf2f8;border-color:#e91e63}.signature-canvas{background:#fff;border:1px solid #d1d5db;border-radius:.5rem;cursor:crosshair}.signature-controls{display:flex;gap:1rem;justify-content:center;margin-top:1rem}.totals-section{background:#f9fafb;border-radius:.75rem;margin-top:2rem;padding:1.5rem}.totals-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr)}.total-item{text-align:center}.total-label{color:#6b7280;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.total-value{color:#e91e63;font-size:1.5rem;font-weight:700}.form-actions{border-top:1px solid #e5e7eb;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:2rem}.loading-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.loading-content{background:#fff;border-radius:.75rem;box-shadow:0 10px 25px #0003;padding:2rem;text-align:center}.success-page{padding:4rem 2rem;text-align:center}.success-icon{align-items:center;background:#10b981;border-radius:50%;color:#fff;display:flex;font-size:2rem;height:4rem;justify-content:center;margin:0 auto 2rem;width:4rem}.success-title{color:#1f2937;font-size:2rem;font-weight:700;margin-bottom:1rem}.success-message{color:#6b7280;font-size:1.125rem;margin-bottom:2rem}@media (max-width:768px){.header-content,.main-content{padding:1rem}.form-body{padding:1.5rem}.form-grid,.form-grid-2,.form-grid-3,.service-charges,.totals-grid{grid-template-columns:1fr}.budget-options,.form-actions{flex-direction:column}}@media print{.form-actions,.signature-controls{display:none}.form-container{border:1px solid #000;box-shadow:none}.service-item{break-inside:avoid;page-break-inside:avoid}}