*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;height:-webkit-fill-available}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;min-height:-webkit-fill-available}button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--navbar-height:64px;--text-primary:#1a1a1a;--text-secondary:#666;--bg-primary:#fff;--bg-secondary:#f8f9fa;--accent-primary:#06c;--accent-primary-dark:#0052a3;--border-radius:8px;--success:#10b981;--warning:#f59e0b;--border-color:#e5e7eb}.landing-page{background:linear-gradient(135deg,#f8faff,#f0f4ff);justify-content:center;min-height:100vh}.landing-container,.landing-page{align-items:center;display:flex;padding:2rem}.landing-container{gap:4rem;justify-content:space-between;max-width:1400px;width:100%}.landing-left{flex:1 1;max-width:600px}.landing-right{align-items:center;display:flex;flex:1 1;justify-content:center;padding:2rem}.landing-right svg{height:auto;max-width:100%}.landing-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,var(--text-primary),var(--text-secondary));-webkit-background-clip:text;background-clip:text;font-size:3.5rem;margin-bottom:1rem}.subtitle{color:var(--text-secondary);font-size:1.2rem;margin-bottom:2rem}.hero-text{margin-bottom:4rem}.hero-text h2{color:var(--text-primary);font-size:2.5rem;margin-bottom:1.5rem}.hero-text p{color:var(--text-secondary);font-size:1.1rem;line-height:1.6;margin-bottom:2rem}.features{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(3,1fr);margin-top:4rem}.feature-card{background:#fff;border-radius:var(--border-radius);box-shadow:0 4px 6px #0000000d;flex-direction:column;padding:2rem;text-align:center}.feature-card,.feature-icon{align-items:center;display:flex;transition:var(--transition)}.feature-icon{background:var(--bg-primary);border-radius:50%;justify-content:center;margin-bottom:1.5rem;padding:1rem}.feature-content h3{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin-bottom:.75rem}.feature-content p{color:var(--text-secondary);font-size:1rem;line-height:1.5}.feature-card:hover{box-shadow:0 8px 16px #6366f11a;transform:translateY(-4px)}.feature-card:hover .feature-icon{transform:scale(1.1)}@media (max-width:1280px){.landing-container{gap:2rem;padding:1rem}.landing-header h1{font-size:3rem}.hero-text h2{font-size:2rem}}@media (max-width:1024px){.landing-container{flex-direction:column;text-align:center}.landing-right{order:-1;padding:0}.landing-right svg{width:400px}.features{gap:1.5rem;grid-template-columns:repeat(3,1fr);padding:0 1rem}.feature-card{padding:1.5rem}}@media (max-width:768px){.landing-page{padding:1rem}.landing-header h1{font-size:2.5rem}.landing-right svg{width:300px}.features{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.landing-right{display:none}.landing-header h1{font-size:2rem}.hero-text h2{font-size:1.5rem}.auth-buttons{flex-direction:column}.sign-in-button,.sign-up-button{width:100%}.features{grid-template-columns:1fr;margin:2rem auto;max-width:320px}.feature-card{padding:1.5rem}}.auth-buttons{display:flex;gap:1rem;margin-top:2rem}.sign-in-button,.sign-up-button{border-radius:var(--border-radius);cursor:pointer;font-size:1rem;font-weight:500;min-width:120px;padding:.875rem 2rem;transition:var(--transition)}.sign-in-button{background:#0000;border:1px solid var(--accent-primary);color:var(--accent-primary)}.sign-up-button{background:var(--accent-primary);border:none;color:#fff}.sign-in-button:hover,.sign-up-button:hover{box-shadow:0 4px 12px #6366f133;transform:translateY(-2px)}.sign-in-button:hover{background:#6366f10d}.sign-up-button:hover{background:var(--accent-hover)}.modal-close{border-radius:50%;line-height:1;padding:.5rem;transition:var(--transition)}.modal-close:hover{background:#0000000d}.signup-form{display:flex;flex-direction:column;gap:1.5rem}.signup-submit{background:var(--accent-primary);border:none;border-radius:var(--border-radius);color:#fff;cursor:pointer;font-size:1rem;font-weight:500;margin-top:1rem;padding:.875rem;transition:var(--transition)}.signup-submit:hover{background:var(--accent-hover)}.name-row{display:flex;gap:1rem;margin-bottom:-.5rem}.name-row .form-group{flex:1 1}.name-row input{width:100%}.password-strength{margin-top:.5rem}.strength-bars{display:flex;gap:4px;margin-bottom:.25rem}.strength-bar{background-color:#e2e8f0;border-radius:2px;flex:1 1;height:4px;transition:background-color .3s ease}.strength-text{font-size:.75rem;font-weight:500}@media (max-width:480px){.name-row{flex-direction:column;gap:1rem;margin-bottom:0}.modal-content{margin:1rem;padding:1.5rem}}.password-error{animation:shake .2s ease-in-out;color:#ef4444;font-size:.75rem;font-weight:500;margin-top:.25rem}.error-message{background-color:#fee2e2;padding:.75rem}.signup-submit:disabled{cursor:not-allowed;opacity:.7}.verification-message{background-color:#f0fdf4;border-radius:var(--border-radius);margin:1.5rem 0;padding:1.5rem;text-align:center}.verification-message p{color:var(--text-secondary);line-height:1.5;margin:.5rem 0}.verification-message p:first-child{color:var(--text-primary);font-weight:500}.error-message-with-link{align-items:center;display:flex;gap:1rem;justify-content:space-between;width:100%}.error-link{background:none;border:none;color:var(--accent-primary);cursor:pointer;font-size:.75rem;padding:0;text-decoration:underline;white-space:nowrap}.error-link:hover{color:var(--accent-hover)}.success-message{background-color:#f0fdf4;margin:1.5rem 0;padding:1.5rem}.success-message p{color:var(--text-secondary);line-height:1.5;margin:.5rem 0}.email-sent{color:var(--text-primary)!important;font-weight:500;word-break:break-all}.reset-form{display:flex;flex-direction:column;gap:1.5rem;padding:.5rem 0}.signin-submit{width:100%}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000}.modal-content{background:#fff;border-radius:var(--border-radius);box-shadow:0 10px 25px #0000001a;max-width:400px;padding:2rem;position:relative;width:100%}.modal-close{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;line-height:0;padding:0;position:absolute;right:1rem;top:1rem;transform:translateY(-1px);width:32px}.modal-header{margin-bottom:2rem}.modal-header h2{color:var(--text-primary);font-size:1.5rem;margin-bottom:.5rem}.modal-header p{color:var(--text-secondary)}.signin-form{gap:1.5rem}.form-group,.signin-form{display:flex;flex-direction:column}.form-group{gap:.5rem;position:relative}.form-group label{font-weight:500}.form-group input{background:#fff;border:1px solid #e2e8f0;border-radius:var(--border-radius);font-size:.875rem;padding:.75rem 1rem;transition:var(--transition)}.form-group input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #6366f11a;outline:none}.forgot-password{background:none;border:none;color:var(--accent-primary);cursor:pointer;font-size:.75rem;font-weight:500;margin-top:-.25rem;padding:0;text-align:right}.forgot-password:hover{text-decoration:underline}.signin-submit{background:var(--accent-primary);border:none;border-radius:var(--border-radius);color:#fff;cursor:pointer;font-size:1rem;font-weight:500;margin-top:.5rem;padding:.875rem;transition:var(--transition)}.signin-submit:hover{background:var(--accent-hover)}.signin-submit:disabled{background:var(--accent-primary);cursor:not-allowed;opacity:.7}.error-message{background-color:#fef2f2;border:1px solid #fee2e2;color:#991b1b;margin-bottom:1rem;padding:.75rem 1rem}.error-message:before{align-items:center;background-color:#dc2626;border-radius:50%;color:#fff;content:"!";display:flex;font-size:14px;font-weight:700;height:20px;justify-content:center;width:20px}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}.modal-footer{color:var(--text-secondary);margin-top:1.5rem;text-align:center}.text-button{background:none;border:none;color:var(--accent-primary);cursor:pointer;font-size:inherit;font-weight:500;padding:0}.text-button:hover{text-decoration:underline}@media (max-width:480px){.modal-content{margin:1rem;padding:1.5rem}}.remember-me{margin-top:-.5rem}.checkbox-label{align-items:center;color:var(--text-primary);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{cursor:pointer;height:0;opacity:0;position:absolute;width:0}.checkbox-custom{background-color:#fff;border:1px solid #e2e8f0;border-radius:4px;height:16px;position:relative;transition:all .2s ease;width:16px}.checkbox-label:hover .checkbox-custom{border-color:var(--accent-primary)}.checkbox-label input:checked~.checkbox-custom{background-color:var(--accent-primary);border-color:var(--accent-primary)}.checkbox-custom:after{border:solid #fff;border-width:0 2px 2px 0;content:"";display:none;height:8px;left:5px;position:absolute;top:2px;transform:rotate(45deg);width:4px}.checkbox-label input:checked~.checkbox-custom:after{display:block}:root{--bg-primary:#f8fafc;--bg-secondary:#fff;--accent-primary:#8b5cf6;--accent-hover:#a78bfa;--text-primary:#1e293b;--text-secondary:#64748b;--success:#34d399;--error:#f87171;--card-bg:#ffffffe6;--border-radius:12px;--transition:all 0.3s cubic-bezier(0.4,0,0.2,1)}body{background:#f8faff;color:#1e293b;color:var(--text-primary);font-family:Inter,-apple-system,sans-serif;margin:0}.app-container{background:#f8fafc;padding-top:64px}.content-area{margin:0 auto;max-width:1400px;padding:2rem}.upload-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;background:var(--card-bg);border:1px solid #8b5cf61a;border-radius:12px;border-radius:var(--border-radius);box-shadow:0 8px 32px #0000001a;padding:3rem;width:100%}.colored-pages h1,.description,.loading-text,.page-number,.progress-text,.results-count,h1{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,#1e293b,#64748b);background:linear-gradient(45deg,var(--text-primary),var(--text-secondary));-webkit-background-clip:text;background-clip:text;color:#1e293b;color:var(--text-primary);text-align:center}.description{margin-bottom:2.5rem}.description,.file-upload-button{font-size:1.1rem;text-align:center}.file-upload-button{background:linear-gradient(135deg,#8b5cf6,#a78bfa);background:linear-gradient(135deg,var(--accent-primary),var(--accent-hover));border:none;border-radius:12px;border-radius:var(--border-radius);box-shadow:0 4px 12px #6366f133;color:#fff;cursor:pointer;display:block;font-weight:600;margin:0 auto;overflow:hidden;padding:1.2rem 2.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:240px}.file-upload-button:not(.analyzing){animation:pulse 2s infinite}.file-upload-button:not(.analyzing):hover{animation:none;box-shadow:0 6px 25px #6366f14d;transform:translateY(-2px)}.file-upload-button:not(.analyzing):before{content:"📄";font-size:1.2em;margin-right:10px}.file-upload-button.analyzing{animation:none;background:#fff;background:var(--bg-secondary);box-shadow:none;cursor:not-allowed}.file-upload-button.analyzing .button-text{color:#4b5563;font-weight:600;text-shadow:0 1px 0 #ffffff80}@keyframes pulse{0%{box-shadow:0 4px 15px #6366f133}50%{box-shadow:0 4px 25px #6366f166}to{box-shadow:0 4px 15px #6366f133}}.file-upload-button .progress-overlay{background:linear-gradient(135deg,#8b5cf6,#a78bfa);background:linear-gradient(135deg,var(--accent-primary),var(--accent-hover));height:100%;left:0;position:absolute;top:0;transform-origin:left;transition:width .3s ease-out;z-index:0}.file-upload-button .button-text{align-items:center;display:flex;justify-content:center;position:relative;z-index:1}.file-upload-button.analyzing:before{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#0000,#fff3,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:2}.progress-indicator{align-items:center;display:flex;flex-direction:column;margin-top:2rem;opacity:1;transition:opacity .3s ease}.progress-text{margin-bottom:1rem;text-align:center}.error-message{align-items:center;border-left:4px solid #f87171;border-left:4px solid var(--error);border-radius:4px;color:#f87171;color:var(--error);display:flex;gap:.5rem;margin-top:2rem;padding:1rem}.results-section{filter:blur(10px);margin-top:2.5rem;opacity:0;pointer-events:none;transition:all .5s ease-out}.results-section.visible{filter:blur(0);opacity:1;pointer-events:auto}.results-card{background:#ffffffe6;background:var(--card-bg);border:1px solid #ffffff1a;border-radius:12px;border-radius:var(--border-radius);overflow:hidden;padding:2rem;position:relative;text-align:center}.results-count{font-size:2.5rem;font-weight:700;margin:1.5rem 0}.results-count:after{color:#64748b;color:var(--text-secondary);display:block;font-size:1rem;font-weight:400;margin-top:.5rem}.primary-button:after,.primary-button:before,.primary-button:hover:after,.primary-button:hover:before{content:none}.results-actions{display:flex;gap:1rem;justify-content:center;margin-top:1.5rem}.results-actions button{align-items:center;border-radius:12px;border-radius:var(--border-radius);box-sizing:border-box;cursor:pointer;display:flex;flex:1 1;font-size:1rem;font-weight:500;height:44px;justify-content:center;max-width:180px;padding:0 2rem;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition);white-space:nowrap}.results-actions .primary-button{background:#8b5cf6;background:var(--accent-primary);border:none;color:#fff;margin:0}.results-actions .secondary-button{background:#fff;border:1px solid #8b5cf6;border:1px solid var(--accent-primary);color:#8b5cf6;color:var(--accent-primary)}.results-actions button:hover{box-shadow:0 4px 12px #6366f133;transform:translateY(-2px)}.cancel-button{align-items:center;background:#0000;border:1px solid #f87171;border:1px solid var(--error);border-radius:12px;border-radius:var(--border-radius);color:#f87171;color:var(--error);cursor:pointer;display:inline-flex;font-weight:500;gap:.5rem;margin-top:1.5rem;padding:.75rem 1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.cancel-button:before{content:"×";font-size:1.2em;line-height:1}.cancel-button:hover{background:#ef44441a;transform:translateY(-2px)}.cancel-button:active{transform:translateY(0)}.progress-indicator.hidden{opacity:0}.success-overlay{animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.success-indicator,.success-overlay{align-items:center;display:flex;justify-content:center}.success-indicator{animation:scaleIn .5s cubic-bezier(.34,1.56,.64,1);background:#34d3991a;border:3px solid #34d399;border:3px solid var(--success);border-radius:16px;height:120px;width:120px}.checkmark{stroke:#34d399;stroke:var(--success);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;fill:none;animation:drawCheck .6s cubic-bezier(.65,0,.45,1) forwards;height:60px;width:60px}@keyframes scaleIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.loading,.text-gradient{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,#1e293b,#64748b);background:linear-gradient(45deg,var(--text-primary),var(--text-secondary));-webkit-background-clip:text;background-clip:text}.file-upload-button,.primary-button,.remove-button,.undo-button{box-shadow:0 4px 12px #6366f133}.button-text,.content-area,.file-upload-button,.loading-container,.progress-indicator{display:flex}@supports not ((-webkit-backdrop-filter:blur()) or (backdrop-filter:blur())){.success-overlay,.upload-section{background:#fff;background:var(--bg-secondary)}}.original-view-overlay{background:#0f172afa;padding:1rem}.original-view-container{background:#fff;border-radius:12px;height:100%;width:100%}.original-page-wrapper,.original-view-container{align-items:center;display:flex;justify-content:center}.original-page-wrapper{height:-webkit-fit-content;height:fit-content;max-height:100%;max-width:100%;width:-webkit-fit-content;width:fit-content}.original-page-wrapper img{max-height:100%;max-width:100%;object-fit:contain}@media (max-width:768px){.original-view-overlay{padding:.5rem}.original-view-container{margin-top:60px;padding:.5rem}.highlight-toggle-button{font-size:.9rem;padding:.5rem 1rem;top:10px}}.analysis-progress{align-items:center;display:flex;flex-direction:column;gap:1rem;margin:2rem auto;max-width:400px;text-align:center;width:100%}.progress-bar{background:#fff;background:var(--bg-secondary);border-radius:4px;height:8px;margin-bottom:1rem;overflow:hidden;width:100%}.progress-fill{background:#8b5cf6;background:var(--accent-primary);height:100%;transition:width .3s ease}.progress-text{color:#64748b;color:var(--text-secondary);font-size:.9rem}.analysis-results{animation:fadeIn .3s ease;text-align:center}.results-stats{display:flex;gap:2rem;justify-content:center;margin:1.5rem 0}.stat{align-items:center;display:flex;flex-direction:column}.stat-value{color:#8b5cf6;font-size:2rem}.stat-label{color:#64748b;font-size:.9rem;margin-top:.25rem}.view-results-button{background:#8b5cf6;background:var(--accent-primary);border:none;border-radius:12px;border-radius:var(--border-radius);color:#fff;cursor:pointer;font-weight:500;padding:.875rem 1.5rem;transition:all .2s ease}.view-results-button:hover{background:#a78bfa;background:var(--accent-hover);transform:translateY(-1px)}.cancel-analysis-button{background:#f87171;background:var(--error);border:none;border-radius:12px;border-radius:var(--border-radius);color:#fff;cursor:pointer;font-weight:500;margin-top:1rem;opacity:.9;padding:.5rem 1rem;transition:all .2s ease}.cancel-analysis-button:hover{opacity:1;transform:translateY(-1px)}.results-buttons{display:flex;gap:1rem;justify-content:center;margin-top:1.5rem}.results-buttons button{flex:1 1;max-width:200px}.view-results-button.secondary{background:#fff;background:var(--bg-secondary);border:2px solid #1e293b;border:2px solid var(--text-primary);color:#1e293b;color:var(--text-primary);font-weight:500;padding:.875rem 1.5rem}.view-results-button.secondary:hover{background:#f8fafc;background:var(--bg-primary);border-color:#1e293b;border-color:var(--text-primary);opacity:.9;transform:translateY(-1px)}.user-welcome{background:#fff;border-radius:var(--border-radius);box-shadow:0 2px 4px #0000000d;cursor:pointer;gap:1rem;padding:.5rem 1rem;z-index:1000}.welcome-message{color:var(--text-primary);font-size:.875rem;white-space:nowrap}.welcome-message svg{height:16px;transition:transform .2s ease;width:16px}.welcome-message.open svg{transform:rotate(180deg)}.subscription-badge{background:var(--success);display:inline-block;margin:8px 16px}.subscription-badge.free{background:var(--warning)}.user-dropdown{background:#fff;border-radius:var(--border-radius);box-shadow:0 4px 12px #00000026;min-width:200px;padding:.5rem;position:absolute;right:0;top:calc(100% + 8px);z-index:1100}.dropdown-item{display:block;transition:background-color .2s ease}.dropdown-item:hover{background-color:var(--bg-secondary)}.dropdown-overlay{bottom:0;left:0;position:fixed;right:0;top:0;z-index:1050}.support-form-container{box-shadow:0 4px 12px #00000026;position:absolute;right:0;top:calc(100% + 8px);width:300px;z-index:1100}.user-welcome{display:inline-block;position:relative}@media (max-width:768px){.user-dropdown{left:auto;min-width:180px;right:0}}.support-form-container{background:#fff;border-radius:var(--border-radius);padding:1rem}.support-form-container h3{color:var(--text-primary);font-size:1.1rem;margin:0 0 1rem}.form-group{margin-bottom:1rem}.form-group label{color:var(--text-primary);display:block;font-size:.875rem;margin-bottom:.5rem}.form-group input,.form-group textarea{border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:.875rem;padding:.5rem;transition:border-color .2s ease;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:var(--accent-primary);outline:none}.submit-button{background:var(--accent-primary);border:none;border-radius:var(--border-radius);color:#fff;cursor:pointer;font-size:.875rem;padding:.75rem;transition:background-color .2s ease;width:100%}.submit-button:hover:not(:disabled){background:var(--accent-primary-dark)}.submit-button:disabled{cursor:not-allowed;opacity:.7}.success-message{background:#10b9811a;color:#10b981;padding:1rem}.error-message,.success-message{border-radius:var(--border-radius);font-size:.875rem;text-align:center}.error-message{background:#ef44441a;color:#ef4444;margin-top:.5rem;padding:.5rem}.navbar{background:#fff;box-shadow:0 1px 3px #0000001a;left:0;padding:.75rem 0;position:fixed;right:0;top:0;z-index:1000}.navbar-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1400px;padding:0 2rem}.navbar-left{flex:1 1}.navbar-center{flex:2 1;text-align:center}.navbar-right{align-items:center;display:flex;flex:1 1;justify-content:flex-end;position:relative}.app-title{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0}.app-title-link{color:inherit;text-decoration:none}.user-welcome{align-items:center;display:inline-flex}.user-name{color:var(--text-primary);font-size:.9375rem;font-weight:500;white-space:nowrap}.dropdown-menu{animation:dropdown-appear .2s ease-out;background:#fff;border:1px solid #0000000d;border-radius:var(--border-radius);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;left:0;margin-top:.5rem;min-width:200px;padding:.5rem;position:absolute;top:100%;z-index:1000}.dropdown-item{align-items:center;background:none;border:none;border-radius:var(--border-radius);color:var(--text-primary);cursor:pointer;display:flex;font-size:.875rem;gap:.75rem;padding:.75rem 1rem;text-align:left;transition:all .2s ease;width:100%}.dropdown-item:hover{background-color:#8b5cf61a;color:var(--accent-primary)}.dropdown-item svg{color:var(--text-secondary)}.dropdown-item:hover svg{color:var(--accent-primary)}@keyframes dropdown-appear{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.separator{background:linear-gradient(180deg,#0000,#6366f133,#0000);height:24px;width:1px}.welcome-arrow{color:var(--text-secondary)}.welcome-message:hover .welcome-arrow:not([style*=rotate]){transform:translateY(2px)}.credits-display{align-items:center;background:var(--bg-secondary);border-radius:var(--border-radius);box-shadow:0 1px 3px #0000001a;color:var(--text-primary);cursor:pointer;display:flex;font-weight:500;padding:.5rem 1rem;transition:all .2s ease;-webkit-user-select:none;user-select:none}.credits-display:hover{background:var(--bg-primary);box-shadow:0 2px 4px #0000001a;color:var(--accent-primary);transform:translateY(-1px)}.credits-display:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.credits-count{align-items:center;display:flex;gap:.5rem}.credits-icon{color:var(--accent-primary);height:20px;width:20px}.credits-loading{opacity:.7}@media (max-width:768px){.navbar-container{padding:0 1rem}.app-title{font-size:1.25rem}.user-name{display:none}}.notifications-indicator{align-items:center;background:var(--accent-primary);border-radius:50%;color:#fff;display:flex;font-size:.75rem;font-weight:600;height:20px;justify-content:center;position:absolute;right:-8px;top:-8px;width:20px}.subscription-status{border-radius:4px;font-size:.9rem;margin-left:8px;padding:4px 8px}.subscription-status.active{background:#10b9811a;color:#10b981}.user-stats{align-items:center;display:flex;gap:8px}.credits-count{background:#8b5cf61a;border-radius:4px;color:var(--accent-primary);font-size:.9rem;padding:4px 8px}.subscription-status-button{align-items:center;background:var(--bg-secondary);border:none;border-radius:var(--border-radius);color:var(--text-secondary);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;justify-content:center;min-width:100px;padding:6px 12px;text-align:center;transition:all .2s ease}.subscription-status-button.active{background:var(--success);color:#fff}.welcome-message{align-items:center;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.95rem;gap:.5rem;padding:4px 8px;position:relative;transition:all .2s ease}.welcome-message:hover{background:#0000000d}.user-first-name{color:var(--text-primary);font-weight:500;pointer-events:none}.subscription-badge{background:var(--accent-primary);border-radius:4px;color:#fff;font-size:.8rem;font-weight:500;padding:4px 8px}.active-subscription{color:#10b981;font-weight:500}.no-subscription{color:var(--text-secondary)}.subscription-status-wrapper{display:inline-block;position:relative}@media (max-width:768px){.navbar{padding:.75rem 1rem}}.duplicate-message{background:var(--bg-primary);border-radius:var(--border-radius);margin:2rem 0;padding:1.5rem;text-align:center}.file-name{color:var(--text-primary);font-weight:500;margin-bottom:1rem;word-break:break-word}.info-text{color:var(--text-secondary)}.modal-actions{display:flex;gap:1rem;margin-top:1.5rem}.modal-actions button{border:none;border-radius:var(--border-radius);cursor:pointer;flex:1 1;font-size:1rem;font-weight:500;padding:.875rem;transition:all .2s ease}.secondary-button{background:var(--bg-secondary);color:var(--text-primary)}.secondary-button:hover{background:#e5e7eb}.primary-button:hover{background:var(--accent-hover)}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;overflow-y:auto;padding:20px;position:fixed;right:0;top:0;z-index:1100}.purchase-modal{background:#fff;border-radius:var(--border-radius);display:flex;flex-direction:column;gap:1rem;max-height:90vh;max-width:900px;overflow-y:auto;padding:2rem;position:relative;width:100%}.modal-header{margin-bottom:1rem;text-align:center}.subscription-packages{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.payment-section{background:var(--bg-secondary);border-radius:var(--border-radius);margin-top:2rem;padding:1.5rem}.paypal-button-wrapper{margin-top:1rem;min-height:200px;width:100%}.loading-paypal{color:var(--text-secondary);padding:2rem;text-align:center}.payment-status{font-weight:500;margin:-1rem -1rem 1rem;padding:1rem;text-align:center}.payment-status.error{background:#ef44441a;color:#ef4444}.payment-status.success{background:#10b9811a;color:#10b981}.order-summary{align-items:center;background:var(--bg-secondary);border-radius:var(--border-radius);display:flex;gap:2rem;height:45px;padding:.5rem 1rem}.order-summary p{align-items:center;color:var(--text-secondary);display:flex;font-size:.9rem;gap:.5rem;margin:0;white-space:nowrap}.order-summary p span{color:var(--text-primary);font-weight:500}.paypal-button-wrapper{flex-shrink:0;height:45px;width:300px}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.package-card{background:#fff;border:2px solid var(--border-color);border-radius:var(--border-radius);box-shadow:0 2px 4px #0000000d;cursor:pointer;display:flex;flex-direction:column;gap:1rem;padding:1.5rem;position:relative;text-align:center;transition:all .2s ease}.package-card:hover{box-shadow:0 8px 16px #0000001a;transform:translateY(-4px)}.package-card.popular,.package-card:hover{border-color:var(--accent-primary)}.package-card h3{color:var(--text-primary);font-size:1.25rem;margin:0}.package-card .price{color:var(--text-primary);font-size:2rem;font-weight:600;margin:.5rem 0}.select-button{background:var(--bg-secondary);border:none;border-radius:var(--border-radius);color:var(--text-primary);cursor:pointer;font-size:.9rem;font-weight:500;margin-top:auto;padding:.75rem 1.5rem;transition:all .2s ease}.package-card.popular .select-button,.package-card:hover .select-button{background:var(--accent-primary);color:#fff}.package-card.popular .select-button:hover{background:var(--accent-primary-dark)}.popular-badge{background:var(--accent-primary);border-radius:1rem;color:#fff;font-size:.75rem;font-weight:500;left:50%;padding:.25rem 1rem;position:absolute;top:-12px;transform:translateX(-50%);z-index:1}@media (max-width:768px){.purchase-modal{margin:1rem;max-height:calc(100vh - 2rem);padding:1.5rem}.subscription-packages{grid-template-columns:1fr}.payment-status{margin:-1.5rem -1.5rem 1.5rem}.order-summary{justify-content:center;width:100%}.paypal-button-wrapper{width:100%}.payment-section{flex-direction:column;gap:.75rem;height:auto;padding:.75rem 1rem}}.test-section{border:1px dashed var(--warning);border-radius:var(--border-radius);margin-top:2rem;padding:1rem}.test-button{background:var(--warning);border:none;border-radius:var(--border-radius);color:#fff;cursor:pointer;margin-top:1rem;padding:.5rem 1rem;width:100%}.test-button:hover{opacity:.9}.retry-button{font-size:.875rem}.retry-button:hover{background:var(--accent-hover)}.payment-status.warning{background:#f59e0b1a;color:var(--warning)}.colored-pages{background:linear-gradient(135deg,#f8faff,#f0f4ff);min-height:100vh;padding:2rem}.colored-pages header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--card-bg);border:1px solid #ffffff1a;border-radius:var(--border-radius);left:0;left:50%;margin:1rem auto;max-width:1200px;padding:1.5rem 2rem;position:fixed;right:0;top:0;transform:translateX(-50%);z-index:100}.colored-pages h1{flex-grow:1;font-size:2rem;margin:0;text-align:left}.pages-grid{grid-gap:2rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin:calc(88px + 2rem) auto 0;max-width:1200px;padding:1rem}.page-container{background:var(--card-bg);border:1px solid #ffffff1a;border-radius:var(--border-radius);cursor:pointer;overflow:hidden;position:relative;transition:var(--transition)}.page-container:hover{box-shadow:0 8px 32px #0000004d;transform:translateY(-5px)}.page-container img{display:block;height:auto;transition:var(--transition);width:100%}.page-container:hover img{transform:scale(1.02)}.loading{align-items:center;background:var(--card-bg);border:1px solid #ffffff1a;border-radius:var(--border-radius);color:var(--text-secondary);display:flex;font-size:1.2rem;justify-content:center;min-height:400px}.loading:after{animation:spin 1s linear infinite;border:3px solid var(--text-secondary);border-radius:50%;border-top-color:var(--accent-primary);content:"";height:2rem;margin-left:1rem;width:2rem}.page-container.selected{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary)}.page-overlay{bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;z-index:1}.page-container.selected .page-overlay{background:#6366f11a}.selection-indicator{align-items:center;background:var(--accent-primary);border-radius:50%;color:#fff;display:flex;height:24px;justify-content:center;opacity:0;position:absolute;right:10px;top:10px;transform:scale(.8);transition:var(--transition);width:24px}.page-container.selected .selection-indicator{opacity:1;transform:scale(1)}.page-number{background:#00000080;bottom:0;color:#fff;font-size:.9rem;left:0;padding:.5rem;position:absolute;right:0;text-align:center}.remove-button{background:var(--error);border:none;border-radius:var(--border-radius);color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:var(--transition)}.remove-button:not(:disabled):hover{box-shadow:0 4px 12px #ef44444d;transform:translateY(-2px)}.remove-button:disabled{background:var(--error);box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.view-original-button{background:var(--accent-primary);border:none;border-radius:50%;color:#fff;cursor:pointer;height:36px;opacity:0;position:absolute;right:10px;top:10px;transform:scale(.8);transition:var(--transition);width:36px;z-index:2}.original-view-overlay,.view-original-button{align-items:center;display:flex;justify-content:center}.original-view-overlay{animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);bottom:0;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:1000}.original-view-container{animation:scaleIn .3s ease-out;background:var(--bg-secondary);border-radius:var(--border-radius);margin-top:70px;max-height:95vh;max-width:95vw;overflow:auto;padding:1rem;position:relative}.original-page-wrapper{border-radius:8px;box-shadow:0 0 40px #0000004d;margin:auto;overflow:hidden;position:relative}.highlight-toggle-button{align-items:center;background:var(--accent-primary);border:none;border-radius:var(--border-radius);color:#fff;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;position:fixed;top:20px;transition:var(--transition);z-index:1000}.highlight-toggle-button:hover{box-shadow:0 4px 12px #6366f14d;transform:translateX(-50%) translateY(-2px)}.highlight-toggle-button:active{transform:translateX(-50%) translateY(0)}.loading-container{align-items:center;background:var(--card-bg);border:1px solid #8b5cf61a;border-radius:var(--border-radius);box-shadow:0 8px 32px #0000001a;display:flex;flex-direction:column;justify-content:center;margin:0 auto;max-width:1200px;min-height:60vh;padding:2rem}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #8b5cf61a;border-left:4px solid var(--accent-primary);border-radius:50%;height:50px;margin-bottom:1.5rem;width:50px}.loading-text{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,var(--text-primary),var(--text-secondary));-webkit-background-clip:text;background-clip:text;font-size:1.2rem}.page-placeholder{align-items:center;aspect-ratio:1.414;background:var(--bg-secondary);border-radius:var(--border-radius);color:var(--text-secondary);display:flex;flex-direction:column;gap:1rem;justify-content:center;width:100%}.page-placeholder .loading-spinner{height:30px;margin:0;width:30px}.page-placeholder p{font-size:.9rem;margin:0}.header-buttons{gap:1rem}.header-buttons,.undo-button{align-items:center;display:flex}.undo-button{background:var(--accent-primary);border:none;border-radius:var(--border-radius);color:#fff;cursor:pointer;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:var(--transition)}.undo-button:before{content:"↩";font-size:1.2em;line-height:1}.undo-button:not(:disabled):hover{box-shadow:0 4px 12px #6366f14d;transform:translateY(-2px)}.undo-button:disabled{background:var(--accent-primary);box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.colored-pages header{align-items:center;display:flex;gap:2rem;justify-content:space-between}.page-container:hover .view-original-button{opacity:1;transform:scale(1)}.view-original-button:hover{background:var(--accent-hover);transform:scale(1.1)}@media (hover:none){.view-original-button{background:#6366f1e6;opacity:1;transform:scale(1)}.page-container{-webkit-tap-highlight-color:transparent}.page-container:active{transform:scale(.98)}.button-touch-target{min-height:44px;min-width:44px}}.highlight-toggle-button,.remove-button,.undo-button,.view-original-button{min-height:44px;min-width:44px;padding:12px}.button-text,.page-container,.page-number{-webkit-user-select:none;user-select:none}.highlight-toggle-button:active,.remove-button:active,.undo-button:active{transform:scale(.95)}.original-view-container{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}img{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}canvas{image-rendering:pixelated}.original-view-overlay{background:#0f172af2;@supports ((-webkit-backdrop-filter:none) or (backdrop-filter:none)){-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172acc}}.text-gradient{color:var(--text-primary);@supports ((-webkit-background-clip:text) or (background-clip:text)){-webkit-text-fill-color:#0000;background:linear-gradient(45deg,var(--text-primary),var(--text-secondary));-webkit-background-clip:text;background-clip:text;color:#0000}}.highlight-toggle-button{left:50%;transform:translateX(-50%);-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%)}.pages-grid{display:flex;flex-wrap:wrap;gap:2rem;@supports (display:grid){display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.page-container{transition:all .3s cubic-bezier(.4,0,.2,1)}.original-view-container{box-shadow:0 8px 32px #0006}.border-radius-fix{border-radius:var(--border-radius);-webkit-mask-image:radial-gradient(#fff,#000);mask-image:radial-gradient(#fff,#000)}@media (max-width:768px){.view-original-button{background:#6366f1e6;box-shadow:0 2px 8px #0003;height:44px;opacity:1;right:15px;top:15px;transform:scale(1);width:44px}.view-original-button svg{height:28px;width:28px}.page-overlay{pointer-events:none}.view-original-button{pointer-events:auto;z-index:3}.view-original-button:active{background:var(--accent-hover);transform:scale(.95)}.colored-pages header{flex-direction:column;gap:1rem;margin:.5rem auto;padding:1rem;width:calc(100% - 2rem)}.empty-state,.pages-grid{margin-top:calc(132px + 1rem)}}@media (hover:none){.view-original-button{opacity:1;pointer-events:auto;visibility:visible}}.empty-state{align-items:center;background:var(--card-bg);border:1px solid #8b5cf61a;border-radius:var(--border-radius);box-shadow:0 8px 32px #0000001a;display:flex;flex-direction:column;justify-content:center;margin:calc(88px + 2rem) auto 0;max-width:1200px;min-height:60vh;padding:2rem;text-align:center}.empty-state p{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,var(--text-primary),var(--text-secondary));-webkit-background-clip:text;background-clip:text;font-size:1.2rem;margin:.5rem 0}.reset-container{align-items:center;background:var(--bg-primary);display:flex;justify-content:center;min-height:100vh;padding:2rem}.reset-card{background:#fff;border-radius:var(--border-radius);box-shadow:0 4px 6px -1px #0000001a;max-width:400px;padding:2rem;width:100%}.reset-card h2{color:var(--text-primary);margin-bottom:.5rem;text-align:center}.reset-card p{color:var(--text-secondary);margin-bottom:1.5rem;text-align:center}.app-container{background:var(--bg-primary);min-height:100vh}.history-container{margin:0 auto;max-width:1000px;padding:6rem 2rem 2rem}.history-container h1{color:var(--text-primary);font-size:1.75rem;font-weight:600;margin-bottom:2rem}.history-list{display:flex;flex-direction:column;gap:1rem}.history-item{background:#fff;border-radius:var(--border-radius);box-shadow:0 1px 3px #0000001a;padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease}.history-item:hover{box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.history-item-content{align-items:center;display:flex;gap:2rem;justify-content:space-between;position:relative}.history-item-left{flex:1 1;min-width:0}.history-item-left h3{color:var(--text-primary);font-size:1.125rem;font-weight:500;margin:0 0 .5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-date{color:var(--text-secondary);font-size:.875rem}.history-item-stats{gap:1.5rem;padding-left:1.5rem}.history-item-stats,.stat-item{align-items:center;display:flex}.stat-item{flex-direction:column;gap:.25rem}.stat-value{color:var(--accent-primary);font-size:1.5rem;font-weight:600}.stat-label{color:var(--text-secondary);font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.stat-divider{background:linear-gradient(180deg,#0000,#6366f133,#0000);height:40px;width:1px}.history-empty{background:#fff;border-radius:var(--border-radius);color:var(--text-secondary);padding:4rem 2rem;text-align:center}.history-empty p{color:var(--text-primary);font-size:1.125rem;margin-bottom:.5rem}.history-empty span{font-size:.875rem}.history-error,.history-loading{align-items:center;color:var(--text-secondary);display:flex;font-size:1.125rem;justify-content:center;min-height:calc(100vh - 64px)}@media (max-width:640px){.history-item-content{align-items:flex-start;flex-direction:column;gap:1rem}.history-item-stats{justify-content:space-around;padding-left:0;width:100%}}.delete-button{align-items:center;background:none;border:none;border-radius:var(--border-radius);color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;margin-left:1rem;padding:.5rem;transition:all .2s ease}.delete-button:hover{background:#ef44441a;color:#ef4444}.delete-button:disabled{cursor:not-allowed;opacity:.5}.delete-spinner{stroke:currentColor;animation:spin 1s linear infinite;height:16px;width:16px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.retry-button{background:var(--accent-primary);border:none;border-radius:var(--border-radius);color:#fff;cursor:pointer;font-weight:500;margin-top:1rem;padding:.5rem 1rem;transition:background-color .2s ease}.retry-button:hover{background:var(--accent-primary-dark)}.history-error{align-items:center;color:var(--error);display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 64px);padding:2rem;text-align:center}.history-empty-link{color:var(--accent-primary);font-size:.875rem;text-decoration:none;transition:color .2s ease}.history-empty-link:hover{color:var(--accent-primary-dark);text-decoration:underline}.subscription-page{margin:0 auto;max-width:1200px;min-height:calc(100vh - var(--navbar-height));padding:2rem}.subscription-header{margin-bottom:3rem;text-align:center}.subscription-header h1{color:var(--text-primary);font-size:2.5rem;margin-bottom:.5rem}.subscription-header p{color:var(--text-secondary);font-size:1.1rem}.subscription-content{grid-gap:2rem;display:grid;gap:2rem;margin:0 auto}.current-plan{background:var(--bg-secondary);border-radius:var(--border-radius);box-shadow:0 2px 4px #0000001a;padding:2rem}.current-plan h2{color:var(--text-primary);margin-bottom:1.5rem}.plan-status{display:flex;flex-direction:column;gap:1rem}.status{align-items:center;display:flex;font-weight:500;gap:.5rem}.status-dot{border-radius:50%;height:8px;width:8px}.status.active{color:var(--success)}.status.active .status-dot{background:var(--success)}.status.inactive{color:var(--warning)}.status.inactive .status-dot{background:var(--warning)}.features-section{background:var(--bg-secondary);border-radius:var(--border-radius);box-shadow:0 2px 4px #0000001a;padding:2rem}.features-section h2{color:var(--text-primary);margin-bottom:1.5rem}.features-list{grid-gap:1rem;display:grid;gap:1rem;list-style:none;padding:0}.features-list li{align-items:center;color:var(--text-secondary);display:flex;gap:1rem}.features-list svg{color:var(--success);flex-shrink:0}.subscription-actions{display:flex;justify-content:center;margin-top:2rem}.primary-button{background:var(--accent-primary);border:none;border-radius:var(--border-radius);color:#fff;cursor:pointer;font-size:1.1rem;font-weight:500;padding:1rem 2rem;transition:background-color .2s ease}.primary-button:hover{background:var(--accent-primary-dark)}@media (max-width:768px){.subscription-page{padding:1rem}.subscription-header h1{font-size:2rem}}.plan-status p{display:inline;flex-direction:column;gap:.5rem}.plan-status p span{color:var(--text-primary);font-weight:600}.auto-renewal-notice{background-color:#f59e0b1a;border-radius:var(--border-radius);color:var(--warning);font-size:.875rem;line-height:1.4;margin-top:.75rem;padding:.75rem}
/*# sourceMappingURL=main.402dbcda.css.map*/