@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap";.pwa-install-banner{position:fixed;top:0;left:0;right:0;z-index:1000;background:linear-gradient(135deg,#6a52ee,#9575ff);color:#fff;box-shadow:0 4px 12px #00000026;animation:slideInFromTop .5s cubic-bezier(.68,-.55,.265,1.55)}.banner-content{display:flex;align-items:center;gap:15px;padding:16px 24px;max-width:1400px;margin:0 auto}.banner-icon{font-size:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.banner-text{flex:1}.banner-text strong{display:block;font-size:18px;font-weight:600;margin-bottom:4px}.banner-text p{margin:0;font-size:14px;opacity:.95;line-height:1.4}.banner-button{background:#fff;color:#6a52ee;border:none;border-radius:25px;padding:12px 32px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease;flex-shrink:0;white-space:nowrap}.banner-button:hover{transform:scale(1.05);box-shadow:0 4px 12px #0003}.banner-button:active{transform:scale(.98)}.banner-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.banner-close{background:#fff3;border:none;color:#fff;font-size:32px;font-weight:300;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;flex-shrink:0;line-height:1}.banner-close:hover{background:#ffffff4d;transform:rotate(90deg)}.pwa-install-sidebar-btn{width:100%;background:linear-gradient(135deg,#6a52ee,#9575ff);color:#fff;border:none;border-radius:12px;padding:14px 16px;font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:12px;transition:all .3s ease;margin:12px 0;box-shadow:0 2px 8px #6a52ee4d}.pwa-install-sidebar-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #6a52ee66;background:linear-gradient(135deg,#7b63f5,#a686ff)}.pwa-install-sidebar-btn:active{transform:translateY(0)}.pwa-install-sidebar-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.sidebar-icon{font-size:24px;line-height:1;display:flex;align-items:center;justify-content:center}.sidebar-text{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pwa-install-success{position:fixed;z-index:1001;animation:slideInFromTop .5s ease,fadeOut .5s ease 2.5s}.pwa-install-success.banner{top:0;left:0;right:0;background:#10b981;color:#fff;padding:16px 24px;box-shadow:0 4px 12px #10b9814d}.pwa-install-success.sidebar{top:20px;right:20px;background:#10b981;color:#fff;padding:16px 24px;border-radius:12px;box-shadow:0 4px 12px #10b9814d}.success-content{display:flex;align-items:center;gap:12px;max-width:1400px;margin:0 auto}.success-icon{font-size:28px;font-weight:700;line-height:1}.success-text{font-size:16px;font-weight:600}@keyframes slideInFromTop{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0;transform:translateY(-20px)}}@media (max-width: 768px){.banner-content{padding:12px 16px;gap:12px}.banner-icon{font-size:32px}.banner-text strong{font-size:16px}.banner-text p{font-size:13px}.banner-button{padding:10px 24px;font-size:14px}.banner-close{width:32px;height:32px;font-size:28px}.pwa-install-sidebar-btn{padding:12px 14px;font-size:14px}.sidebar-icon{font-size:20px}}@media (max-width: 480px){.banner-content{flex-wrap:wrap}.banner-text{width:100%;order:1}.banner-icon{order:2}.banner-button{order:3;flex:1}.banner-close{order:4}.banner-text p{display:none}}@media (prefers-color-scheme: dark){.banner-button{background:#fffffff2}.banner-button:hover{background:#fff}}.pwa-install-banner *:focus,.pwa-install-sidebar-btn:focus{outline:2px solid white;outline-offset:2px}.pwa-install-banner,.pwa-install-sidebar-btn,.pwa-install-success{user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.ios-install-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;z-index:2000;display:flex;align-items:flex-end;justify-content:center;animation:fadeIn .3s ease}.ios-install-modal{background:#fff;width:100%;max-width:500px;border-radius:20px 20px 0 0;padding:24px;position:relative;animation:slideUp .3s cubic-bezier(.16,1,.3,1);color:#333}@media (min-width: 768px){.ios-install-modal-overlay{align-items:center}.ios-install-modal{border-radius:20px;width:90%}}.ios-modal-close{position:absolute;top:16px;right:16px;background:#f0f0f0;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:20px;color:#666;cursor:pointer}.ios-modal-header{text-align:center;margin-bottom:24px}.ios-modal-icon{color:#6a52ee;margin-bottom:12px}.ios-modal-header h3{margin:0 0 8px;font-size:20px;font-weight:600}.ios-modal-header p{margin:0;font-size:14px;color:#666;line-height:1.4}.ios-modal-steps{display:flex;flex-direction:column;gap:16px}.ios-step{display:flex;align-items:flex-start;gap:12px;padding:12px;background:#f8f9fa;border-radius:12px}.step-number{background:#6a52ee;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;margin-top:2px}.ios-step p{margin:0;font-size:15px;line-height:1.4;color:#444}.inline-icon{vertical-align:middle;margin:0 4px;color:#007aff;font-size:18px}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}body{margin:0;padding:0!important;box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#6a52ee!important}.contract-html{max-height:350px;overflow-y:auto;width:100%;display:block;background:#fff;border:1px solid #e9ecef;border-radius:8px;margin:0;padding:0}.contract-html-full{width:100%;height:100vh;overflow:auto;display:block;background:#fff;margin:0;padding:0}.contract-signing-page{min-height:100vh;background-color:#6a52ee!important;padding:0;display:flex;flex-direction:column;font-family:Poppins,sans-serif}.contract-signing-page .contract-header,.contract-header{color:#fff!important;padding:16px;background:#6a52ee!important;background-color:#6a52ee!important;background-image:none!important;display:flex;flex-direction:column;position:relative}.header-content{display:flex;flex-direction:column;align-items:center;justify-content:center}.contract-header .logo img{max-width:100px;margin-bottom:10px;margin-top:10px}.header-text,.header-text h1{text-align:center;color:#fff}.contract-header h1{font-size:1.8rem;margin:0 0 5px;font-weight:700}.contract-header .subtitle{font-size:1rem;opacity:.9}.contract-content{flex:1;background:#fff;border-top-left-radius:20px;border-top-right-radius:20px;padding:0;overflow-y:auto;width:100%}.crop-instructions{background:#fff;padding:10px 16px;border-radius:8px;text-align:center;box-shadow:0 2px 8px #0000001a;border-left:4px solid #6a52ee;margin-bottom:10px}.crop-instructions p{margin:0;color:#555;font-size:.9rem;line-height:1.3}.loading-container,.error-container,.success-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;color:#fff;text-align:center;padding:env(safe-area-inset-top,20px) env(safe-area-inset-right,20px) env(safe-area-inset-bottom,20px) env(safe-area-inset-left,20px);padding-top:max(env(safe-area-inset-top),40px);padding-bottom:max(env(safe-area-inset-bottom),40px);padding-left:max(env(safe-area-inset-left),24px);padding-right:max(env(safe-area-inset-right),24px);box-sizing:border-box}.spinner{width:60px;height:60px;border:5px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.spinner-small{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin-right:8px;vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}.status-icon{width:100px;height:100px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:30px;animation:scaleIn .5s ease-out}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.success-icon{background:linear-gradient(135deg,#fff3,#ffffff1a);box-shadow:0 8px 32px #0003}.success-icon svg,.error-icon svg{font-size:3.5rem;color:#fff}.error-icon{background:linear-gradient(135deg,#dc35454d,#dc354533);box-shadow:0 8px 32px #dc35454d}.error-container h2,.success-container h2{font-size:1.8rem;color:#fff;margin:0 0 16px;font-weight:700;line-height:1.3;animation:fadeInUp .5s ease-out .2s backwards}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.error-container p,.success-container p{font-size:1.05rem;margin:8px 0;opacity:.95;line-height:1.5;animation:fadeInUp .5s ease-out .3s backwards}.success-detail{opacity:.85!important;font-size:.95rem!important;margin-top:12px!important;animation:fadeInUp .5s ease-out .4s backwards!important}.success-actions{display:flex;flex-direction:column;gap:16px;margin-top:40px;width:100%;max-width:400px;animation:fadeInUp .5s ease-out .5s backwards}.success-actions .btn-primary,.success-actions .btn-download,.btn-download{display:flex;align-items:center;justify-content:center;gap:12px;padding:18px 32px;font-size:1.1rem;background:#fff;color:#6a52ee;border:none;border-radius:12px;cursor:pointer;font-weight:600;transition:all .3s ease;box-shadow:0 4px 16px #00000026;width:100%}.success-actions .btn-primary:hover,.success-actions .btn-download:hover,.btn-download:hover{transform:translateY(-2px);box-shadow:0 6px 24px #0003;background:#f8f9fa}.success-actions .btn-secondary{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.5);padding:16px 32px;font-size:1rem;font-weight:600;border-radius:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:all .3s ease;width:100%}.success-actions .btn-secondary:hover{background:#ffffff1a;border-color:#fffc;transform:translateY(-2px)}.error-container .btn-primary,.error-container button{display:flex;align-items:center;justify-content:center;gap:10px;padding:18px 40px;font-size:1.1rem;background:#fff;color:#6a52ee;border:none;border-radius:12px;cursor:pointer;font-weight:600;transition:all .3s ease;box-shadow:0 4px 16px #00000026}.error-container .btn-primary:hover,.error-container button:hover{transform:translateY(-2px);box-shadow:0 6px 24px #0003;background:#f8f9fa}.contract-info{margin-bottom:24px;background:#fff;border-radius:0;box-shadow:none;overflow:hidden;border-bottom:1px solid #f1f2f6}.contract-content>.contract-info:first-child{border-top-left-radius:20px;border-top-right-radius:20px;margin-top:-8px}.contract-content>.contract-info .info-header,.contract-content>.signature-section .section-header{padding:0;background-color:#f5f6fa!important;background:#f5f6fa!important;background-image:none!important;border-bottom:1px solid #e8e9ed}.contract-content>.contract-info .info-header h2,.contract-content>.signature-section .section-header h2{margin:0;color:#6a52ee;font-size:1.2rem;font-weight:600}.contract-info h2{color:#6a52ee;margin:0 0 16px;font-size:1.3rem;font-weight:600}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;padding:20px}.info-item{display:flex;flex-direction:column}.info-item .label{font-size:.8rem;color:#a4b0be;font-weight:600;margin-bottom:4px;text-transform:uppercase}.info-item .value{font-size:.95rem;color:#2d3436;font-weight:500}.contract-preview{margin-bottom:24px;background:#fff;border-radius:0;box-shadow:none;overflow:hidden;border-bottom:1px solid #f1f2f6}.preview-header{padding:16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f1f2f6;background:#fff!important;background-image:none!important}.contract-preview h3{color:#6a52ee;margin:0}.btn-view-full{background:transparent;border:1px solid #6a52ee;color:#6a52ee;border-radius:20px;padding:8px 16px;display:flex;align-items:center;gap:8px;cursor:pointer;transition:all .2s;font-size:.9rem}.btn-view-full:hover{background-color:#6a52ee1a}.view-full-contract{background:transparent;border:none;color:#6a52ee;font-weight:500;font-size:.9rem;cursor:pointer;display:flex;align-items:center;gap:5px}.full-contract-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#fff;z-index:1000;display:flex;flex-direction:column}.full-contract-modal .modal-content{flex:1;overflow-y:auto;padding:20px}.full-contract-modal .modal-footer{padding:16px;display:flex;justify-content:center;border-top:1px solid #eee;background-color:#f5f6fa}.full-contract-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #eee;background-color:#f5f6fa}.full-contract-modal .modal-header h3{margin:0;color:#333}.close-button{background:transparent;border:none;color:#666;font-size:1.2rem;cursor:pointer;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s}.close-button:hover{background-color:#0000001a;color:#333}.full-contract-header{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#6a52ee;color:#fff}.full-contract-title{font-size:1.1rem;font-weight:600;margin:0}.close-contract-btn{background:transparent;border:none;color:#fff;font-size:1.2rem;cursor:pointer;padding:5px}.full-contract-content{flex:1;padding:20px;overflow-y:auto;background:#f5f6fa}.signature-section{margin-bottom:24px;background:#fff;border-radius:0;padding:20px;box-shadow:none;border-bottom:1px solid #f1f2f6}.signed-contract-section{margin-bottom:24px;background:#fff;border-radius:0;padding:30px 20px;box-shadow:none;border-bottom:1px solid #f1f2f6;text-align:center}.signed-status{margin-bottom:30px}.signed-status .status-icon{width:80px;height:80px;margin:0 auto 20px;background:linear-gradient(135deg,#6a52ee,#8b78ff);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:2.5rem;box-shadow:0 4px 20px #6a52ee4d}.signed-status h2{color:#2d3436;margin:0 0 12px;font-size:1.8rem;font-weight:700}.signed-info{color:#636e72;font-size:.95rem;line-height:1.6;margin:0}.download-section{margin-top:30px}.download-instruction{color:#636e72;margin-bottom:20px;font-size:.95rem;line-height:1.4}.btn-download-signed{display:inline-flex;align-items:center;gap:10px;padding:16px 32px;background:linear-gradient(135deg,#6a52ee,#8b78ff);color:#fff;border:none;border-radius:50px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #6a52ee4d}.btn-download-signed:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6a52ee66}.btn-download-signed:active{transform:translateY(0);box-shadow:0 2px 10px #6a52ee4d}.signature-section h2{color:#6a52ee;margin:0 0 10px;font-size:1.3rem;font-weight:600}.signature-instruction{color:#a4b0be;margin-bottom:20px;font-size:.9rem;line-height:1.4}.signature-options{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px}.signature-option-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 16px;background:#f5f6fa;color:#2d3436;border:2px solid #f1f2f6;border-radius:12px;cursor:pointer;transition:all .2s ease;font-size:.9rem;font-weight:500}.signature-option-btn.active{background:#6a52ee0d;border-color:#6a52ee;color:#6a52ee}.signature-option-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.signature-option-btn .icon{font-size:2rem;margin-bottom:10px;color:#6a52ee}.signature-option-btn .text{font-size:.9rem}.signature-canvas-container{display:flex;flex-direction:column;align-items:center;margin:20px 0}.canvas-label{font-size:.9rem;color:#666;margin-bottom:15px;text-align:center;font-weight:500}.signature-canvas{border:2px solid #667eea;border-radius:10px;cursor:crosshair;touch-action:none}.canvas-controls{display:flex;gap:15px;margin-top:15px}.signature-preview{margin-top:20px;padding:20px;background:#f8f9fa;border-radius:12px}.signature-preview h3{color:#667eea;margin:0 0 15px;font-size:1.3rem}.signature-image-container{display:flex;justify-content:center;padding:20px;background:#fff;border:2px dashed #667eea;border-radius:10px;margin-bottom:20px}.signature-image-container img{max-width:100%;max-height:200px;object-fit:contain}.background-removal{text-align:center;padding:20px;background:#fff3cd;border:1px solid #ffc107;border-radius:8px;margin-bottom:20px}.background-removal p{margin:0 0 15px;color:#856404;font-weight:600}.removal-buttons{display:flex;gap:15px;justify-content:center}.btn-primary,.btn-secondary,.btn-sign{padding:14px 20px;border:none;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.contract-signing-page .btn-primary{background:#6a52ee!important;color:#fff!important}.contract-signing-page .btn-primary:hover:not(:disabled){background:#5b45d6!important;transform:translateY(-2px);box-shadow:0 4px 12px #6a52ee40}.contract-signing-page .btn-primary:disabled{opacity:.7;cursor:not-allowed}.contract-signing-page .btn-secondary{background:#f1f2f6!important;color:#6a52ee!important}.contract-signing-page .btn-secondary:hover{background:#e5e9f2!important;transform:translateY(-2px)}.btn-icon{font-size:1.2rem}.signature-actions{display:flex;justify-content:center;gap:12px;margin-top:16px}.sign-button-container{margin-top:24px;padding:20px;background:#fff;border-radius:0;box-shadow:none}.sign-instruction{text-align:center;margin-bottom:16px;color:#a4b0be;font-size:.9rem}.btn-sign{background-color:#6a52ee!important;color:#fff!important;padding:16px 24px;font-size:1.2rem;font-weight:600;border-radius:30px;border:none;width:100%;max-width:500px;margin-top:20px;cursor:pointer;transition:background-color .3s;box-shadow:0 4px 12px #6a52ee4d;display:flex;align-items:center;justify-content:center;gap:10px}.loading-dots{position:relative;width:16px;height:4px}.loading-dots:after{content:"...";font-size:20px;animation:loading 1.5s infinite;position:absolute;left:0}@keyframes loading{0%{content:"."}25%{content:".."}50%{content:"..."}75%{content:"...."}}@keyframes loading{0%{content:"."}33%{content:".."}66%{content:"..."}}.btn-sign:hover:not(:disabled){background:#5b45d6!important;transform:translateY(-2px);box-shadow:0 4px 12px #6a52ee40}.btn-sign:disabled{opacity:.7;cursor:not-allowed}.camera-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:9999}.camera-container{display:flex;flex-direction:column;align-items:center;gap:20px;max-width:90vw;max-height:90vh}.camera-container video{max-width:100%;max-height:70vh;border-radius:10px}.camera-controls{display:flex;gap:20px}.camera-btn{padding:15px 40px;border:none;border-radius:10px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.camera-btn.capture{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.camera-btn.cancel{background:#dc3545;color:#fff}.camera-btn:hover{transform:translateY(-2px);box-shadow:0 5px 20px #0000004d}@media (max-width: 768px){.contract-header{padding:16px}.contract-header h1{font-size:1.5rem}.contract-header .subtitle{font-size:.9rem}.contract-content{padding:16px 12px;border-top-left-radius:25px;border-top-right-radius:25px}.contract-info h2{font-size:1.1rem}.info-grid,.signature-options{grid-template-columns:1fr}.signature-canvas{width:100%!important;max-width:100%}.removal-buttons{flex-direction:column}.btn-sign{font-size:1rem;padding:14px 20px}.signature-option-btn{padding:16px}.signature-actions{flex-direction:column}.signature-actions button{width:100%}.full-contract-html{padding:20px}}.crop-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;background:#000;display:flex;align-items:stretch;justify-content:stretch;z-index:999999;padding:0;margin:0;overflow:hidden;-webkit-overflow-scrolling:touch;pointer-events:all;touch-action:none;transform:translateZ(0);-webkit-transform:translateZ(0)}.crop-modal{background:#000;color:#fff;border-radius:0;padding:0;width:100%;height:100%;max-width:none;max-height:none;display:flex;flex-direction:column;gap:0;overflow:hidden}.crop-modal h2{margin:0;padding:8px 12px 4px;color:#8b7cf6;font-size:1rem;text-align:center;background:#000}.crop-modal p{margin:0;padding:0 12px 6px;color:#c7c7c7;text-align:center;font-size:.85rem;background:#000}.crop-container{flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#000;border-radius:0;padding:0;margin:0;min-height:0;width:100%;height:100%}.crop-container-inner{width:100%;height:100%;display:flex;justify-content:center;align-items:center;position:relative}.simple-cropper{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:0;margin:0}.crop-canvas-simple{box-shadow:none;border-radius:0;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;max-width:100%;max-height:calc(100% - 60px)}.crop-instructions{background:#ffffff0d;padding:6px 12px;border-radius:6px;text-align:center;box-shadow:none;border-left:3px solid #6a52ee;margin:0 8px 8px}.crop-instructions p{margin:0;color:#ddd;font-size:.85rem;line-height:1.2}.crop-canvas{box-shadow:0 4px 20px #0003;border-radius:8px;touch-action:none;-webkit-user-select:none;user-select:none;max-width:100%;max-height:100%}.crop-modal-buttons{display:flex;gap:12px;justify-content:center;padding:12px 16px;background:#000;border-top:1px solid rgba(255,255,255,.1)}.crop-modal-buttons .btn-primary,.crop-modal-buttons .btn-secondary{padding:14px 30px;font-size:1.1rem;min-width:120px}@media (max-width: 768px){.crop-modal{padding:0}.crop-modal h2{font-size:1rem;padding:10px 12px 6px}.crop-modal p{font-size:.8rem;padding:0 12px 6px}.crop-container{padding:0}.crop-modal-buttons{flex-direction:row;padding:10px 12px}.crop-modal-buttons .btn-primary,.crop-modal-buttons .btn-secondary{flex:1;padding:14px 20px}.crop-instructions{padding:5px 10px;font-size:.8rem;margin:0 6px 6px}}.camera-instructions-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:999999;padding:20px;animation:fadeIn .2s ease-out}.camera-instructions-modal{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;padding:32px;max-width:480px;width:100%;box-shadow:0 20px 60px #0006;animation:slideUp .3s ease-out;position:relative;overflow:hidden}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.camera-instructions-modal:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#ffd89b,#19547b)}.instructions-icon{width:80px;height:80px;background:#ffffff26;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;font-size:36px;color:#fff;box-shadow:0 8px 20px #0003}.camera-instructions-modal h2{color:#fff;font-size:1.8rem;font-weight:700;text-align:center;margin:0 0 28px;text-shadow:0 2px 8px rgba(0,0,0,.2)}.instructions-content{background:#ffffff1f;border-radius:16px;padding:20px;margin-bottom:28px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.instruction-step{display:flex;align-items:flex-start;gap:16px;margin-bottom:20px;animation:slideInLeft .4s ease-out backwards}.instruction-step:nth-child(1){animation-delay:.1s}.instruction-step:nth-child(2){animation-delay:.2s}.instruction-step:nth-child(3){animation-delay:.3s}.instruction-step:last-child{margin-bottom:0}@keyframes slideInLeft{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}.step-number{min-width:36px;height:36px;background:#6a52ee;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;color:#fff;box-shadow:0 4px 12px #6a52ee59;flex-shrink:0}.step-number svg{font-size:1.05rem}.step-text{flex:1;color:#fff}.step-text strong{display:block;font-size:1.05rem;margin-bottom:4px;font-weight:600}.step-text p{margin:0;font-size:.9rem;opacity:.9;line-height:1.4}.instructions-buttons{display:flex;gap:12px;animation:fadeIn .5s ease-out .4s backwards}.instructions-buttons .btn-secondary,.instructions-buttons .btn-primary{flex:1;padding:16px 24px;font-size:1.05rem;font-weight:600;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s ease;border:none;cursor:pointer;box-shadow:0 4px 12px #0003}.instructions-buttons .btn-secondary{background:#fff3;color:#fff}.instructions-buttons .btn-secondary:hover{background:#ffffff40;transform:translateY(-2px);box-shadow:0 6px 16px #00000040}.instructions-buttons .btn-primary{background:#fff;color:#667eea}.instructions-buttons .btn-primary:hover{background:#f8f9fa;transform:translateY(-2px);box-shadow:0 6px 20px #ffffff4d}.crop-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;height:100dvh;background:linear-gradient(135deg,#6a52ee,#8b7cf6);display:flex;align-items:stretch;justify-content:stretch;z-index:999999;padding:0;margin:0;overflow:hidden}.crop-modal{background:transparent;width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0)}.crop-modal-header{background:linear-gradient(135deg,#6a52ee,#8b7cf6);padding:max(env(safe-area-inset-top),16px) 20px 16px 20px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 2px 10px #00000026;position:relative;z-index:10;flex-shrink:0}.crop-header-content{display:flex;align-items:center;gap:14px;flex:1;min-width:0}.crop-icon{width:44px;height:44px;background:#ffffff40;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;color:#fff;flex-shrink:0;box-shadow:0 2px 8px #0000001a}.crop-title{flex:1;min-width:0}.crop-title h2{margin:0;padding:0;color:#fff;font-size:1.25rem;font-weight:700;text-align:left;background:transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crop-title p{margin:2px 0 0;padding:0;color:#ffffffe6;font-size:.85rem;text-align:left;background:transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crop-close-button{width:42px;height:42px;border-radius:10px;background:#fff3;border:none;color:#fff;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.crop-close-button:hover{background:#ffffff4d;transform:scale(1.05)}.crop-instructions-banner{background:#ffffff26;padding:12px 16px;display:flex;gap:16px;justify-content:center;flex-wrap:wrap;border-bottom:1px solid rgba(255,255,255,.15);flex-shrink:0}.instruction-item{display:flex;align-items:center;gap:8px;color:#fff;font-size:.85rem;font-weight:500}.instruction-icon{font-size:1.2rem;opacity:.9;flex-shrink:0}.crop-container{flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#0003;padding:16px;min-height:0}.crop-modal-actions{background:linear-gradient(135deg,#6a52ee,#8b7cf6);padding:16px 20px max(env(safe-area-inset-bottom),16px) 20px;display:flex;gap:12px;box-shadow:0 -2px 10px #00000026;position:relative;z-index:10;flex-shrink:0;min-height:70px}.crop-btn-cancel,.crop-btn-confirm{flex:1;min-width:0;padding:15px 16px;border-radius:12px;border:none;font-size:1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s ease;box-shadow:0 2px 8px #00000026;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crop-btn-cancel{background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.4)}.crop-btn-cancel:hover{background:#ffffff4d;border-color:#fff9;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.crop-btn-confirm{background:#fff;color:#6a52ee;font-weight:700}.crop-btn-confirm:hover{background:#f8f9fa;transform:translateY(-2px);box-shadow:0 4px 16px #fff6}.crop-btn-cancel svg,.crop-btn-confirm svg{font-size:1.1rem;flex-shrink:0}@media (max-width: 768px){.crop-modal-header{padding:max(env(safe-area-inset-top),12px) 12px 12px 12px}.crop-header-content{gap:8px}.crop-icon{width:36px;height:36px;font-size:17px}.crop-title h2{font-size:1rem}.crop-title p{font-size:.7rem}.crop-close-button{width:36px;height:36px;font-size:17px}.crop-instructions-banner{padding:8px 12px;gap:8px}.instruction-item{font-size:.7rem;gap:5px}.instruction-icon{font-size:.95rem}.crop-container{padding:8px}.crop-modal-actions{padding:10px 12px max(env(safe-area-inset-bottom),10px) 12px;gap:8px;min-height:64px}.crop-btn-cancel,.crop-btn-confirm{padding:12px;font-size:.9rem;gap:5px}.crop-btn-cancel svg,.crop-btn-confirm svg{font-size:.95rem}}@media (max-width: 400px){.crop-modal-header{padding:max(env(safe-area-inset-top),10px) 10px 10px 10px}.crop-icon{width:32px;height:32px;font-size:15px}.crop-title h2{font-size:.9rem}.crop-title p{font-size:.65rem}.crop-close-button{width:32px;height:32px;font-size:15px}.crop-instructions-banner{padding:6px 10px;gap:6px;flex-wrap:nowrap;overflow-x:auto}.instruction-item{font-size:.65rem;gap:4px;flex-shrink:0}.instruction-icon{font-size:.9rem}.crop-container{padding:6px}.crop-modal-actions{padding:8px 10px max(env(safe-area-inset-bottom),8px) 10px;gap:6px;min-height:60px}.crop-btn-cancel,.crop-btn-confirm{padding:11px 8px;font-size:.85rem;gap:4px}.crop-btn-cancel span,.crop-btn-confirm span{display:none}.crop-btn-cancel svg,.crop-btn-confirm svg{font-size:1.2rem}}@media (max-width: 768px){.camera-instructions-modal{padding:24px;border-radius:16px}.camera-instructions-modal h2{font-size:1.5rem;margin-bottom:20px}.instructions-icon{width:64px;height:64px;font-size:28px;margin-bottom:16px}.instructions-content{padding:16px;margin-bottom:20px}.instruction-step{gap:12px;margin-bottom:16px}.step-number{min-width:32px;height:32px;font-size:1rem}.step-text strong{font-size:.95rem}.step-text p{font-size:.85rem}.instructions-buttons{flex-direction:column;gap:10px}.instructions-buttons .btn-secondary,.instructions-buttons .btn-primary{padding:14px 20px;font-size:1rem}.crop-modal-header{padding:16px}.crop-header-content{gap:12px}.crop-icon{width:40px;height:40px;font-size:20px}.crop-title h2{font-size:1.2rem}.crop-title p{font-size:.8rem}.crop-close-button{width:40px;height:40px;font-size:18px}.crop-instructions-banner{padding:10px 16px;gap:12px}.instruction-item{font-size:.75rem;gap:6px}.instruction-icon{font-size:1rem}.crop-container{padding:12px}.crop-modal-actions{padding:16px;gap:12px}.crop-btn-cancel,.crop-btn-confirm{padding:14px 20px;font-size:1rem}}.draw-instructions-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:999999;padding:20px;animation:fadeIn .2s ease-out}.draw-instructions-modal{background:linear-gradient(135deg,#6a52ee,#8b7cf6);border-radius:20px;padding:32px;max-width:480px;width:100%;box-shadow:0 20px 60px #0006;animation:slideUp .3s ease-out;position:relative;overflow:hidden}.draw-instructions-modal:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#ffd89b,#19547b)}.draw-instructions-modal .instructions-icon{width:80px;height:80px;background:#ffffff26;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;font-size:40px;color:#fff;box-shadow:0 8px 20px #0003}.draw-instructions-modal h2{color:#fff;font-size:1.8rem;font-weight:700;text-align:center;margin:0 0 28px;text-shadow:0 2px 8px rgba(0,0,0,.2);padding:0;background:transparent}.draw-instructions-modal .instructions-content{background:#ffffff1f;border-radius:16px;padding:20px;margin-bottom:28px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.draw-instructions-modal .instruction-step{display:flex;align-items:flex-start;gap:16px;margin-bottom:20px;animation:slideInLeft .4s ease-out backwards}.draw-instructions-modal .instruction-step:nth-child(1){animation-delay:.1s}.draw-instructions-modal .instruction-step:nth-child(2){animation-delay:.2s}.draw-instructions-modal .instruction-step:nth-child(3){animation-delay:.3s}.draw-instructions-modal .instruction-step:last-child{margin-bottom:0}.draw-instructions-modal .step-number{min-width:36px;height:36px;background:#6a52ee;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;color:#fff;box-shadow:0 4px 12px #6a52ee66;flex-shrink:0}.draw-instructions-modal .step-number svg{font-size:1rem}.draw-instructions-modal .step-text{flex:1;color:#fff}.draw-instructions-modal .step-text strong{display:block;font-size:1.05rem;margin-bottom:4px;font-weight:600}.draw-instructions-modal .step-text p{margin:0;padding:0;background:transparent;font-size:.9rem;opacity:.9;line-height:1.4;text-align:left;color:#fff}.draw-instructions-modal .instructions-buttons{display:flex;gap:12px;animation:fadeIn .5s ease-out .4s backwards}.draw-instructions-modal .instructions-buttons .btn-secondary,.draw-instructions-modal .instructions-buttons .btn-primary{flex:1;padding:16px 24px;font-size:1.05rem;font-weight:600;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s ease;border:none;cursor:pointer;box-shadow:0 4px 12px #0003}.draw-instructions-modal .instructions-buttons .btn-secondary{background:#fff3;color:#fff}.draw-instructions-modal .instructions-buttons .btn-secondary:hover{background:#ffffff40;transform:translateY(-2px);box-shadow:0 6px 16px #00000040}.draw-instructions-modal .instructions-buttons .btn-primary{background:#fff;color:#6a52ee}.draw-instructions-modal .instructions-buttons .btn-primary:hover{background:#f8f9fa;transform:translateY(-2px);box-shadow:0 6px 20px #ffffff4d}.draw-signature-modal{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;height:100dvh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);z-index:999999;display:flex;flex-direction:column;overflow:hidden}.draw-modal-header{background:linear-gradient(135deg,#6a52ee,#8b7cf6);padding:20px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 4px 20px #00000026;position:relative;z-index:10}.draw-modal-header h2{margin:0;padding:0;color:#fff;font-size:1.4rem;font-weight:700;text-align:center;flex:1;background:transparent}.draw-header-actions{display:none;gap:12px;align-items:center}.draw-close-btn,.draw-save-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:10px;border:none;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:100px}.draw-close-btn{background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.3)}.draw-close-btn:hover{background:#ffffff4d;transform:scale(1.05)}.draw-save-btn{background:#fff;color:#6a52ee;font-weight:700;box-shadow:0 4px 12px #0003}.draw-save-btn:hover{background:#f8f9fa;transform:translateY(-2px);box-shadow:0 6px 16px #00000040}.draw-clear-btn-landscape,.draw-save-btn-header{display:none}.draw-clear-btn-landscape{background:#dc354526;color:#fff;border:2px solid rgba(255,255,255,.3);padding:12px 20px;gap:8px;min-width:100px}.draw-clear-btn-landscape:hover{background:#dc354540;border-color:#ffffff80;transform:scale(1.05)}.draw-clear-btn-footer,.draw-save-btn-footer{display:flex}.draw-orientation-tip{background:#fffffff2;padding:16px 24px;display:flex;align-items:center;justify-content:center;gap:12px;border-bottom:2px solid rgba(106,82,238,.2);animation:slideDown .3s ease-out}@keyframes slideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.tip-icon{font-size:2rem;animation:rotate 2s ease-in-out infinite;display:flex;align-items:center;justify-content:center;color:#6a52ee}.tip-icon svg{font-size:2rem}@keyframes rotate{0%,to{transform:rotate(0)}25%{transform:rotate(-15deg)}75%{transform:rotate(15deg)}}.draw-orientation-tip p{margin:0;color:#333;font-size:.95rem;line-height:1.4}.draw-orientation-tip strong{color:#6a52ee}.draw-canvas-wrapper{flex:1;display:flex;align-items:center;justify-content:center;padding:20px;overflow:hidden;position:relative;min-height:200px;max-height:calc(100vh - 250px);max-height:calc(100dvh - 250px)}.draw-signature-canvas{border:3px solid #6a52ee;border-radius:16px;box-shadow:0 8px 30px #6a52ee40;cursor:crosshair;touch-action:none;background:#fff;display:block}.draw-modal-footer{background:#fffffff2;padding:20px;display:flex;justify-content:center;gap:16px;border-top:2px solid rgba(106,82,238,.2)}.draw-clear-btn,.draw-clear-btn-footer{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 32px;border-radius:10px;border:2px solid #dc3545;background:#fff;color:#dc3545;font-size:1.05rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #dc354526}.draw-clear-btn:hover,.draw-clear-btn-footer:hover{background:#dc3545;color:#fff;transform:translateY(-2px);box-shadow:0 6px 16px #dc354540}@media (max-width: 768px){.draw-instructions-modal{padding:24px;border-radius:16px}.draw-instructions-modal h2{font-size:1.5rem;margin-bottom:20px}.draw-instructions-modal .instructions-icon{width:64px;height:64px;font-size:32px;margin-bottom:16px}.draw-instructions-modal .instructions-content{padding:16px;margin-bottom:20px}.draw-instructions-modal .instruction-step{gap:12px;margin-bottom:16px}.draw-instructions-modal .step-number{min-width:32px;height:32px;font-size:.9rem}.draw-instructions-modal .step-number svg{font-size:.9rem}.draw-instructions-modal .step-text strong{font-size:.95rem}.draw-instructions-modal .step-text p{font-size:.85rem}.draw-instructions-modal .instructions-buttons{flex-direction:column;gap:10px}.draw-instructions-modal .instructions-buttons .btn-secondary,.draw-instructions-modal .instructions-buttons .btn-primary{padding:14px 20px;font-size:1rem}.draw-modal-header{padding:16px}.draw-modal-header h2{font-size:1.1rem}.draw-close-btn,.draw-save-btn{padding:10px 16px;font-size:.9rem;min-width:80px}.draw-orientation-tip{padding:12px 16px;flex-direction:column;text-align:center}.draw-orientation-tip p{font-size:.85rem}.tip-icon{font-size:1.5rem}.draw-canvas-wrapper{padding:12px}.draw-signature-canvas{border-width:2px;border-radius:12px}.draw-modal-footer{padding:16px}.draw-clear-btn{padding:12px 24px;font-size:.95rem}}@media (orientation: landscape){.draw-orientation-tip{padding:10px 20px}.draw-orientation-tip p{font-size:.85rem}.tip-icon{display:none}.draw-canvas-wrapper{padding:10px 20px}.draw-modal-footer{display:none}.draw-header-actions,.draw-clear-btn-landscape,.draw-save-btn-header{display:flex!important}.draw-modal-header{padding:12px 20px;gap:16px;justify-content:space-between}.draw-modal-header h2{font-size:1.1rem;flex:0 1 auto;text-align:center}.draw-close-btn{order:-1}.draw-clear-btn-landscape,.draw-save-btn-header{padding:10px 16px;font-size:.9rem;min-width:auto}.draw-header-actions{order:1}}@supports (-webkit-touch-callout: none){.draw-signature-modal{height:-webkit-fill-available}.draw-canvas-wrapper{max-height:calc(100vh - 280px);max-height:calc(-webkit-fill-available - 280px)}}@media (max-width: 480px){.success-container h2,.error-container h2{font-size:1.5rem}.success-container p,.error-container p{font-size:.95rem}.success-detail{font-size:.85rem!important}.success-actions{max-width:100%}.success-actions .btn-primary,.success-actions .btn-download,.success-actions .btn-secondary{padding:16px 24px;font-size:1rem}.status-icon{width:80px;height:80px}.status-icon svg{font-size:2.5rem!important}}@media (min-width: 768px){.success-actions{max-width:480px}}@media (max-width: 768px) and (orientation: portrait){.draw-canvas-wrapper{max-height:calc(100vh - 300px);max-height:calc(100dvh - 300px);padding:12px}.draw-modal-footer{position:sticky;bottom:0;z-index:20}.draw-modal-header{position:sticky;top:0;z-index:20}.draw-orientation-tip{flex-shrink:0}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.contract-card-enter{animation:fadeIn .5s ease-out}.fab-button{animation:slideInUp .3s ease-out}.passenger-card-hover:hover{transform:translateY(-4px);transition:transform .3s ease}.loading-shimmer{background:linear-gradient(to right,#f0f0f0,#e0e0e0,#f0f0f0 40%,#f0f0f0);background-size:1000px 100%;animation:shimmer 2s infinite linear}.notification-pulse{animation:pulse 2s infinite}.smooth-transition{transition:all .3s cubic-bezier(.4,0,.2,1)}@keyframes successScale{0%{transform:scale(.5);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.success-icon{animation:successScale .5s ease-out}@media (prefers-color-scheme: dark){.loading-shimmer{background:linear-gradient(to right,#2a2a2a,#3a3a3a,#2a2a2a 40%,#2a2a2a)}}@media (max-width: 768px){.fab-button{bottom:16px;right:16px}}@media print{.no-print{display:none!important}.contract-content{padding:20px;font-size:12pt;line-height:1.6}}@keyframes stepEnter{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes stepExit{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-50px)}}@keyframes iconBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.wizard-step{animation:stepEnter .4s ease-out}.step-icon{animation:iconBounce 1s ease-in-out infinite}.variable-chip{transition:all .2s ease}.variable-chip:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.success-modal-enter{animation:fadeInScale .4s ease-out}.editor-fullscreen-enter{animation:slideDown .3s ease-out}.stepper-step{transition:all .3s ease}.stepper-step.active{transform:scale(1.1)}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.variable-dropdown{animation:dropdownSlide .2s ease-out}.contract-editor:focus{box-shadow:0 0 0 3px #6a52ee1a;transition:box-shadow .2s ease}@keyframes highlightPulse{0%,to{background-color:transparent}50%{background-color:#6a52ee0d}}.tutorial-step{animation:highlightPulse 2s ease-in-out infinite}@keyframes scrollButtonFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.scroll-to-top{animation:scrollButtonFloat 2s ease-in-out infinite}@keyframes savingSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.saving-indicator{animation:savingSpin 1s linear infinite}.variable-tag{background:linear-gradient(135deg,#6a52ee1a,#6a52ee0d);border-radius:4px;padding:2px 6px;font-weight:600;transition:all .2s ease}.variable-tag:hover{background:linear-gradient(135deg,#6a52ee33,#6a52ee1a)}@media (max-width: 768px){.wizard-step{padding:16px}.variable-chip{font-size:.875rem}}@media (prefers-color-scheme: dark){.variable-tag{background:linear-gradient(135deg,#6a52ee33,#6a52ee1a)}.variable-tag:hover{background:linear-gradient(135deg,#6a52ee4d,#6a52ee26)}}@media print{.wizard-controls,.variable-buttons,.no-print{display:none!important}.contract-editor{border:none;box-shadow:none}}.contract-editor::-webkit-scrollbar{width:8px}.contract-editor::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.contract-editor::-webkit-scrollbar-thumb{background:#888;border-radius:10px}.contract-editor::-webkit-scrollbar-thumb:hover{background:#555}.contract-editor{scrollbar-width:thin;scrollbar-color:#888 #f1f1f1}:root{--primary-color: #6a52ee;--primary-light: #4a6fbf;--primary-dark: #6a52ee;--secondary-color: #ff9800;--secondary-light: #ffb74d;--secondary-dark: #f57c00;--success-color: #4caf50;--error-color: #f44336;--warning-color: #ffc107;--info-color: #2196f3;--text-primary: #333333;--text-secondary: #757575;--text-light: #ffffff;--background-light: #f8f9fa;--background-dark: #212121;--border-color: #e0e0e0;--shadow-color: rgba(0, 0, 0, .1);--transition-speed: .3s}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Poppins,sans-serif;color:var(--text-primary);background-color:var(--background-light);line-height:1.6}h1,h2,h3,h4,h5,h6{font-weight:600;margin-bottom:1rem;color:var(--text-primary)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-bottom:1rem}a{color:var(--primary-color);text-decoration:none;transition:color var(--transition-speed) ease}a:hover{color:var(--primary-dark)}.dialog-title-custom{background-color:var(--primary-color);color:var(--text-light)}button,.btn{display:inline-block;font-weight:500;text-align:center;white-space:nowrap;vertical-align:middle;-webkit-user-select:none;user-select:none;border:1px solid transparent;padding:.5rem 1rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:all var(--transition-speed) ease;cursor:pointer}.btn-primary{background-color:var(--primary-color);color:var(--text-light)}.btn-primary:hover{background-color:var(--primary-dark)}.btn-secondary{background-color:var(--secondary-color);color:var(--text-light)}.btn-secondary:hover{background-color:var(--secondary-dark)}.btn-success{background-color:var(--success-color);color:var(--text-light)}.btn-error{background-color:var(--error-color);color:var(--text-light)}.btn-warning{background-color:var(--warning-color);color:var(--text-primary)}.btn-info{background-color:var(--info-color);color:var(--text-light)}.btn-outline{background-color:transparent;border:1px solid var(--primary-color);color:var(--primary-color)}.btn-outline:hover{background-color:var(--primary-color);color:var(--text-light)}input,select,textarea{display:block;width:100%;padding:.5rem .75rem;font-size:1rem;line-height:1.5;color:var(--text-primary);background-color:#fff;background-clip:padding-box;border:1px solid var(--border-color);border-radius:.25rem;transition:border-color var(--transition-speed) ease-in-out}input:focus,select:focus,textarea:focus{border-color:var(--primary-light);outline:0;box-shadow:0 0 0 .2rem #2351a340}label{display:inline-block;margin-bottom:.5rem;font-weight:500}.form-group{margin-bottom:1rem}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid var(--border-color);border-radius:.25rem;box-shadow:0 2px 5px var(--shadow-color);transition:transform var(--transition-speed) ease,box-shadow var(--transition-speed) ease}.card:hover{transform:translateY(-5px);box-shadow:0 5px 15px var(--shadow-color)}.card-header{padding:1rem;border-bottom:1px solid var(--border-color);background-color:#00000008}.card-body{padding:1.25rem}.card-footer{padding:1rem;border-top:1px solid var(--border-color);background-color:#00000008}.text-right{text-align:right}.text-left{text-align:left}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:1rem}.ml-4{margin-left:1.5rem}.ml-5{margin-left:3rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:1rem}.mr-4{margin-right:1.5rem}.mr-5{margin-right:3rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:1rem}.p-4{padding:1.5rem}.p-5{padding:3rem}.d-flex{display:flex}.flex-column{flex-direction:column}.justify-content-center{justify-content:center}.justify-content-between{justify-content:space-between}.justify-content-around{justify-content:space-around}.align-items-center{align-items:center}.flex-wrap{flex-wrap:wrap}.w-100{width:100%}.h-100{height:100%}@media (max-width: 768px){.d-none-mobile{display:none!important}}@media (min-width: 769px){.d-none-desktop{display:none!important}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .5s ease-in}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:var(--primary-light);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--primary-color)}body.dark-mode{background-color:#121212;color:#e0e0e0}:root{--primary-color: #6a52ee;--primary-dark: #5842d8;--secondary-color: #4caf50;--text-color: #333333;--text-light: #666666;--background-color: #f5f5f5;--card-background: #ffffff;--border-color: #dddddd;--error-color: #e53935;--success-color: #4caf50;--warning-color: #ffc107;--info-color: #2196f3}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Roboto,Segoe UI,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background-color);color:var(--text-color);line-height:1.5}a{color:var(--primary-color);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit}input,button,textarea,select{font-family:inherit}@media (max-width: 768px){h1{font-size:24px}h2{font-size:20px}h3{font-size:18px}}.container{max-width:1200px;margin:0 auto;padding:0 20px;width:100%}.text-center{text-align:center}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mt-5{margin-top:3rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mb-5{margin-bottom:3rem}.RKXZIB{padding:20px!important;margin-left:250px!important;transition:margin-left .3s ease!important}@media (max-width: 768px){.RKXZIB{margin-left:0!important}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.animate-slideDown{animation:slideDown .5s ease-out}@keyframes shrink-width{0%{width:100%}to{width:0%}}.animate-shrink-width{animation:shrink-width 5s linear forwards}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes scale-in{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.animate-fade-in{animation:fade-in .3s ease-out}.animate-scale-in{animation:scale-in .3s ease-out}
