@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600;700&display=swap";:root{--primary-color: #2563eb;--primary-hover: #1d4ed8;--primary-light: #dbeafe;--accent-color: #06b6d4;--success-color: #10b981;--warning-color: #f59e0b;--error-color: #ef4444;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--border-radius: .75rem;--border-radius-lg: 1rem}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Poppins,sans-serif;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);min-height:100vh}.document-text{font-family:Inter,sans-serif}.gradient-primary{background:linear-gradient(135deg,var(--primary-color) 0%,var(--accent-color) 100%)}.gradient-card{background:linear-gradient(145deg,#fff,#f8fafc)}.glass{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.btn-primary{background:linear-gradient(135deg,var(--primary-color) 0%,var(--accent-color) 100%);color:#fff;font-weight:500;padding:.625rem 1.25rem;border-radius:var(--border-radius);border:none;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:var(--shadow);position:relative;overflow:hidden}.btn-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-xl)}.btn-primary:hover:not(:disabled):before{left:100%}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{background:var(--gray-600);cursor:not-allowed;transform:none;opacity:.85}.btn-download{font-size:.95rem;padding:.875rem 1.5rem;font-weight:600;letter-spacing:.025em}.upload-area{border:2px dashed var(--gray-300);border-radius:var(--border-radius-lg);background:var(--gray-50);transition:all .3s ease;position:relative;overflow:hidden;aspect-ratio:3/2;display:flex;flex-direction:column;align-items:center;justify-content:center}.file-display-card{border-radius:var(--border-radius-lg);transition:all .3s ease;background:#f0f9ff;border:2px solid #22c55e}.file-display-card:hover{transform:translateY(-1px);box-shadow:0 10px 25px -3px #0000001a,0 4px 6px -2px #0000000d}.upload-area:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .5s}.upload-area:hover{border-color:var(--primary-color);background:var(--primary-light);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.upload-area:hover:before{left:100%}.card{background:#fff;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);border:1px solid var(--gray-200);overflow:hidden}.card-header{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid var(--gray-200);padding:1.5rem}.tab-container{background:var(--gray-100);border-radius:var(--border-radius);padding:.25rem;display:flex;position:relative}.tab-button{flex:1;padding:.625rem .875rem;font-weight:500;font-size:.8125rem;border:none;background:transparent;cursor:pointer;transition:all .2s ease;border-radius:calc(var(--border-radius) - .25rem);position:relative;z-index:1}.tab-button.active{background:#fff;color:var(--primary-color);box-shadow:var(--shadow-sm)}.tab-button:not(.active){color:var(--gray-600)}.tab-button:not(.active):hover{color:var(--gray-800);background:#ffffff80}.privacy-notice{background:linear-gradient(135deg,#ecfdf5,#f0fdf4);border:1px solid #bbf7d0;border-radius:var(--border-radius);padding:1rem;margin:1rem 0;position:relative;box-shadow:var(--shadow-sm)}.privacy-notice:before{content:"🔒";font-size:1.5rem;position:absolute;top:.75rem;left:1rem}.privacy-notice-content{margin-left:2.5rem}.privacy-notice h4{color:var(--success-color);font-weight:600;font-size:.875rem;margin-bottom:.25rem;display:flex;align-items:center;gap:.5rem}.privacy-notice h4:after{content:"✓";display:inline-block;width:1rem;height:1rem;background:var(--success-color);color:#fff;border-radius:50%;font-size:.75rem;text-align:center;line-height:1rem;font-weight:700}.privacy-notice p{color:#059669;font-size:.75rem;line-height:1.4}.signature-gallery{background:var(--gray-50);border-radius:var(--border-radius);border:1px solid var(--gray-200);padding:1rem;max-height:200px;overflow-y:auto}.signature-item{background:#fff;border:2px solid var(--gray-300);border-radius:var(--border-radius);padding:.5rem;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.signature-item:hover{border-color:var(--primary-color);transform:scale(1.02);box-shadow:var(--shadow)}.signature-item.selected{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-light)}.text-element{background:#10b9811a;border:2px dashed var(--success-color);border-radius:var(--border-radius);font-family:Inter,sans-serif}.text-element-list-item{background:var(--gray-100);border-radius:var(--border-radius);padding:.75rem;display:flex;align-items:center;justify-content:between;gap:.5rem;transition:all .2s ease}.text-element-list-item:hover{background:var(--gray-200)}.page-nav{background:#fff;border-radius:var(--border-radius);padding:1rem;box-shadow:var(--shadow);border:1px solid var(--gray-200)}.page-nav-button{background:var(--primary-color);color:#fff;border:none;border-radius:var(--border-radius);padding:.5rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.page-nav-button:hover:not(:disabled){background:var(--primary-hover);transform:scale(1.05)}.page-nav-button:disabled{background:var(--gray-400);cursor:not-allowed}.pdf-viewer{background:#fff;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);overflow:hidden;border:1px solid var(--gray-200)}.pdf-container{display:flex;justify-content:center;align-items:center;max-width:100%;max-height:100%;overflow:auto;padding:.5rem}.pdf-document{display:flex;justify-content:center;align-items:center;max-width:100%;max-height:100%;width:100%}@media (max-width: 767px){.pdf-container{padding:.25rem}}.pdf-page{box-shadow:var(--shadow-lg);border-radius:var(--border-radius);overflow:hidden;background:#fff;border:1px solid var(--gray-200);max-width:95vw;max-height:70vh;width:100%;margin:0 auto}@media (min-width: 768px){.pdf-page{max-width:85vw;max-height:75vh}}@media (min-width: 1024px){.pdf-page{max-width:60vw;max-height:80vh}}@media (min-width: 1536px){.pdf-page{max-width:50vw;max-height:85vh}}.react-pdf__Page__canvas{width:100%!important;height:100%!important;object-fit:contain;touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}@media screen and (max-width: 768px){.react-pdf__Page__canvas{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.pdf-page{touch-action:pan-x pan-y;-ms-touch-action:pan-x pan-y}.signature-overlay{touch-action:none;-webkit-user-drag:none;-webkit-touch-callout:none}.react-rnd-handle{opacity:.8!important;background:var(--primary-color)!important}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.react-pdf__Page__canvas{image-rendering:-webkit-optimize-contrast}}.signature-canvas-container{position:relative;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.signature-canvas{touch-action:none!important;-webkit-touch-callout:none!important;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}@media screen and (max-width: 768px){.signature-canvas-container{-webkit-touch-callout:none;-webkit-user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-focus-ring-color:rgba(0,0,0,0)}.signature-canvas{touch-action:none!important;-webkit-touch-callout:none!important;-webkit-user-select:none!important;user-select:none!important;-webkit-tap-highlight-color:transparent!important}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.signature-canvas{image-rendering:-webkit-optimize-contrast;image-rendering:pixelated}}@supports (-webkit-touch-callout: none){.signature-canvas-container{-webkit-overflow-scrolling:touch;-webkit-transform:translateZ(0);transform:translateZ(0)}}@media screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 1){.signature-canvas{transform:translateZ(0);-webkit-transform:translate3d(0,0,0)}}.signature-overlay{border:2px dashed var(--primary-color);border-radius:var(--border-radius);background:#2563eb1a}.input-field{border:1px solid var(--gray-300);border-radius:var(--border-radius);padding:.625rem;font-size:.8125rem;transition:all .2s ease;font-family:Inter,sans-serif}.input-field:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-light)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--gray-100);border-radius:3px}::-webkit-scrollbar-thumb{background:var(--gray-400);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--gray-500)}@keyframes pulse-glow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.02)}}.loading-pulse{animation:pulse-glow 2s ease-in-out infinite}@media (max-width: 768px){.card-header{padding:1rem}.privacy-notice{padding:.75rem;margin:.75rem 0}.privacy-notice:before{font-size:1.25rem;top:.5rem;left:.75rem}.privacy-notice-content{margin-left:2rem}}.app-header{background:linear-gradient(135deg,var(--primary-color) 0%,var(--accent-color) 100%);color:#fff;padding:2rem 1.5rem;text-align:center;position:relative;overflow:hidden}.app-header:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:rotate 20s linear infinite}.app-header:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.05) 50%,transparent 70%);animation:shimmer 3s ease-in-out infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%,to{opacity:0}50%{opacity:1}}.app-title{font-size:2rem;font-weight:700;margin-bottom:.5rem;position:relative;z-index:1}.app-subtitle{font-size:1rem;opacity:.9;position:relative;z-index:1}.sidebar{background:#fff;box-shadow:var(--shadow-xl);border-right:1px solid var(--gray-200)}.main-content{background:linear-gradient(135deg,#f0f9ff,#e0f2fe)}.signature-management-page{transition:all .2s ease;border-radius:.375rem;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:.25rem}.signature-management-page.signed{background-color:#dcfce7;color:#166534;border-color:#bbf7d0}.signature-management-page.unsigned{background-color:#f3f4f6;color:#4b5563;border-color:#d1d5db}.signature-management-page.unsigned:hover{background-color:#eff6ff;border-color:#93c5fd}.add-signature-overlay{position:absolute;top:1rem;right:1rem;z-index:20;background:linear-gradient(135deg,var(--primary-color) 0%,var(--accent-color) 100%);color:#fff;padding:.75rem 1rem;border-radius:var(--border-radius);border:none;cursor:pointer;font-weight:600;font-size:.875rem;box-shadow:var(--shadow-lg);transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.add-signature-overlay:hover{transform:translateY(-1px);box-shadow:var(--shadow-xl)}.add-signature-overlay svg{width:1rem;height:1rem}.empty-state{text-align:center;color:var(--gray-500);padding:3rem 2rem}.empty-state h3{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:var(--gray-700)}.empty-state p{font-size:.875rem}.signature-remove-btn,.text-remove-btn{position:absolute;top:-8px;right:-8px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:2px solid white;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #ef44444d;z-index:10;opacity:0;transform:scale(.8)}.signature-remove-btn:hover,.text-remove-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:scale(1.1);box-shadow:0 4px 12px #ef444466}.signature-overlay:hover .signature-remove-btn,.text-overlay:hover .text-remove-btn{opacity:1;transform:scale(1)}.text-remove-btn{width:20px;height:20px;top:-6px;right:-6px}.text-remove-btn:hover{transform:scale(1.15)}.signature-overlay,.text-overlay{position:relative}.tab-content-area{min-height:320px}.text-input-area{width:100%;aspect-ratio:3/2;resize:none;padding:1rem;border:2px solid var(--gray-200);border-radius:var(--border-radius-lg);background:#fff;transition:border-color .2s ease}.text-input-area:focus{border-color:var(--primary-color);outline:none}.text-input-area:disabled{background-color:var(--gray-50);color:var(--gray-400)}.watermark-container{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:9999;overflow:hidden;background-image:radial-gradient(circle at 25% 25%,rgba(0,91,170,.01) 0%,transparent 40%),radial-gradient(circle at 75% 75%,rgba(0,91,170,.01) 0%,transparent 40%),radial-gradient(circle at 50% 10%,rgba(0,91,170,.008) 0%,transparent 30%),radial-gradient(circle at 20% 80%,rgba(0,91,170,.008) 0%,transparent 30%),radial-gradient(circle at 80% 30%,rgba(0,91,170,.008) 0%,transparent 30%);background-size:300px 300px,400px 400px,250px 250px,350px 350px,280px 280px;background-position:0 0,150px 150px,75px 200px,200px 50px,300px 250px}.watermark-content{position:absolute;display:flex;flex-direction:column;align-items:center;gap:.3rem;opacity:.025;transition:opacity .3s ease;font-family:Poppins,sans-serif;white-space:nowrap;animation:watermark-pulse 12s ease-in-out infinite;animation-delay:var(--delay, 0s)}.watermark-small{opacity:.015;gap:.2rem}.watermark-logo{width:100px;height:auto;opacity:.9}.watermark-logo-small{width:60px;height:auto;opacity:.7}.watermark-text{font-size:.9rem;font-weight:600;color:#005baa;letter-spacing:.05em}.watermark-content:nth-child(1){animation-delay:0s}.watermark-content:nth-child(2){animation-delay:.5s}.watermark-content:nth-child(3){animation-delay:1s}.watermark-content:nth-child(4){animation-delay:1.5s}.watermark-content:nth-child(5){animation-delay:2s}.watermark-content:nth-child(6){animation-delay:2.5s}.watermark-content:nth-child(7){animation-delay:3s}.watermark-content:nth-child(8){animation-delay:3.5s}.watermark-content:nth-child(9){animation-delay:4s}.watermark-content:nth-child(10){animation-delay:4.5s}.watermark-content:nth-child(11){animation-delay:5s}.watermark-content:nth-child(12){animation-delay:5.5s}.watermark-content:nth-child(13){animation-delay:6s}.watermark-content:nth-child(14){animation-delay:6.5s}.watermark-content:nth-child(15){animation-delay:7s}.watermark-content:nth-child(16){animation-delay:7.5s}.watermark-content:nth-child(17){animation-delay:8s}.watermark-content:nth-child(18){animation-delay:8.5s}.watermark-content:nth-child(19){animation-delay:9s}.watermark-content:nth-child(20){animation-delay:9.5s}.watermark-content[class*=extra]{animation-delay:calc(var(--index, 0) * .3s)}@media print{.watermark-container{display:none}}@keyframes watermark-pulse{0%,to{opacity:.02;transform:translate(-50%,-50%) rotate(var(--rotation)) scale(.95)}25%{opacity:.035;transform:translate(-50%,-50%) rotate(var(--rotation)) scale(1)}50%{opacity:.025;transform:translate(-50%,-50%) rotate(var(--rotation)) scale(1.02)}75%{opacity:.04;transform:translate(-50%,-50%) rotate(var(--rotation)) scale(1)}}@media screen{.watermark-container{user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;mix-blend-mode:multiply}.watermark-container:before,.watermark-container:after{content:"ASTRA DOCUMENT SIGNER";position:absolute;font-family:Poppins,sans-serif;font-size:1.2rem;font-weight:700;color:#005baa04;letter-spacing:.1em;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none}.watermark-container:before{top:15%;left:20%;transform:rotate(-30deg);animation:watermark-pulse 15s ease-in-out infinite}.watermark-container:after{bottom:15%;right:20%;transform:rotate(30deg);animation:watermark-pulse 18s ease-in-out infinite reverse}}@media (max-device-width: 1024px) and (orientation: landscape){.watermark-content{opacity:.06}.watermark-small{opacity:.04}}@media (prefers-contrast: high){.watermark-content{opacity:.08}}@media (max-width: 768px){.watermark-logo{width:80px}.watermark-logo-small{width:50px}.watermark-text{font-size:.75rem}}
