.landing-page{width:100%;color:var(--text-primary);overflow-x:hidden}.section-padding-lp{padding:4rem 2rem;max-width:var(--layout-max-width);margin-left:auto;margin-right:auto}.alt-background-lp{background-color:var(--background-secondary);border-radius:var(--border-radius-large);margin-top:3rem;margin-bottom:3rem}.section-title-lp{text-align:center;font-size:2.4rem;font-weight:700;margin-bottom:1rem;line-height:1.3;color:var(--text-primary)}.section-subtitle-lp{text-align:center;font-size:1.1rem;color:var(--text-secondary);max-width:700px;margin:0 auto 3rem;line-height:1.6}.highlight{color:var(--accent-primary)}.hero-section-lp{display:grid;grid-template-columns:1fr;gap:2rem;align-items:center;padding:3rem 2rem;min-height:70vh;max-width:var(--layout-max-width);margin:0 auto}.hero-content-lp{text-align:center}.hero-title-lp{font-size:3rem;font-weight:800;line-height:1.2;margin-bottom:1.5rem;letter-spacing:-.03em}.hero-title-lp .highlight{display:block;margin-bottom:.25em;color:var(--accent-primary)}.hero-title-sub-points{display:block;font-size:.75em;font-weight:750;color:var(--accent-primary-muted);line-height:1.05;margin-top:.6em;letter-spacing:normal}.hero-subheadline-lp{font-size:1.25rem;color:var(--text-secondary);max-width:680px;margin:0 auto 2.5rem;line-height:1.7}.hero-cta-buttons-lp{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.hero-visual-lp{margin-top:1rem;max-width:600px;width:100%;justify-self:center}.hero-visual-lp img{width:100%;height:auto;object-fit:contain;border-radius:var(--border-radius-medium);box-shadow:0 10px 30px #0000004d,0 0 20px var(--accent-primary-glow)}@media (min-width: 992px){.hero-section-lp{grid-template-columns:1.2fr 1fr;gap:4rem;text-align:left;min-height:calc(100vh - 120px);padding-top:1.5rem;padding-bottom:2rem}.hero-content-lp{text-align:left}.hero-title-lp .highlight{display:inline;margin-bottom:0}.hero-subheadline-lp,.hero-cta-buttons-lp{margin-left:0;justify-content:flex-start}.hero-visual-lp{margin-top:0}}.steps-container-lp{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.step-item-lp{text-align:center;padding:2rem 1.5rem;background-color:var(--background-secondary);border-radius:var(--border-radius-medium);box-shadow:var(--shadow-elevation-low);transition:transform .2s ease-out,box-shadow .2s ease-out}.step-item-lp:hover{transform:translateY(-5px);box-shadow:var(--shadow-elevation-medium)}.alt-background-lp .step-item-lp{background-color:var(--background-tertiary)}.step-icon-lp{font-size:2.5rem;color:var(--accent-primary);margin-bottom:1rem;line-height:1}.step-item-lp h3{font-size:1.4rem;margin-bottom:.75rem;color:var(--text-primary)}.step-item-lp p{color:var(--text-secondary);line-height:1.6;font-size:.95rem}.assets-grid-lp{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.asset-item-lp{background-color:var(--background-tertiary);padding:1.5rem;border-radius:var(--border-radius-medium);display:flex;flex-direction:column;border:1px solid var(--background-tertiary-hover)}.alt-background-lp .asset-item-lp{background-color:var(--background-primary)}.asset-icon-lp{font-size:2rem;color:var(--accent-secondary);margin-bottom:.75rem;line-height:1}.asset-item-lp h4{font-size:1.2rem;margin-bottom:.5rem;color:var(--text-primary)}.asset-item-lp p{color:var(--text-secondary);line-height:1.5;font-size:.9rem;flex-grow:1}.see-samples-cta-lp{text-align:center;margin-top:3rem}.benefits-grid-lp{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.benefit-item-lp{padding:1.5rem}.benefit-icon-lp{font-size:2.2rem;color:var(--accent-primary);margin-bottom:1rem;line-height:1}.benefit-item-lp h4{font-size:1.3rem;margin-bottom:.5rem;color:var(--text-primary)}.benefit-item-lp p{color:var(--text-secondary);line-height:1.6;font-size:.95rem}.cta-button-lp{display:inline-block;padding:.8rem 1.8rem;border-radius:var(--border-radius-medium);text-decoration:none;font-weight:600;font-size:1rem;transition:all var(--transition-speed-fast) ease;border:2px solid transparent;cursor:pointer;text-align:center}.cta-button-lp.primary-lp{background-color:var(--accent-primary);color:#fff;box-shadow:0 4px 15px -5px var(--shadow-color-accent)}.cta-button-lp.primary-lp:hover{background-color:var(--accent-primary-hover);transform:translateY(-2px);box-shadow:0 6px 20px -5px var(--shadow-color-accent)}.cta-button-lp.secondary-lp{background-color:var(--background-tertiary);color:var(--text-primary)}.cta-button-lp.secondary-lp:hover{background-color:var(--background-tertiary-hover);transform:translateY(-2px)}.cta-button-lp.secondary-lp.outline-lp{background-color:transparent;border-color:var(--accent-primary);color:var(--accent-primary)}.cta-button-lp.secondary-lp.outline-lp:hover{background-color:var(--accent-primary-glow);color:var(--text-primary)}.cta-button-lp.large-lp{font-size:1.1rem;padding:1rem 2.5rem}.final-cta-lp{text-align:center}.trial-note-lp{margin-top:1rem;font-size:.85rem;color:var(--text-secondary)}@media (max-width: 768px){.section-padding-lp{padding:3rem 1rem}.alt-background-lp{margin-top:2rem;margin-bottom:2rem}.section-title-lp{font-size:2rem}.section-subtitle-lp{font-size:1rem;margin-bottom:2rem}.hero-title-lp{font-size:2.4rem}.hero-subheadline-lp{font-size:1.1rem}.step-item-lp h3,.benefit-item-lp h4{font-size:1.2rem}.asset-item-lp h4{font-size:1.1rem}.step-item-lp p,.benefit-item-lp p,.asset-item-lp p{font-size:.9rem}}@media (max-width: 480px){.hero-title-lp{font-size:2rem}.hero-subheadline-lp{font-size:1rem}.cta-button-lp{width:100%;margin-bottom:.5rem}.hero-cta-buttons-lp{flex-direction:column;gap:.5rem}.hero-cta-buttons-lp .cta-button-lp.secondary-lp{margin-left:0}.section-title-lp{font-size:1.8rem}}.login-prompt-section{max-width:450px;margin:4rem auto;padding:2rem;text-align:center;border:1px solid var(--background-tertiary-hover);border-radius:var(--border-radius-large);background-color:var(--background-secondary)}.login-prompt-section h2{margin-bottom:.5rem}.login-prompt-section .section-divider{margin:2rem 0}.prompt-button-group{display:flex;flex-direction:column;gap:1rem;align-items:center;margin-top:1.5rem}.auth-separator{color:var(--text-secondary);font-size:.9rem;margin:.25rem 0}.prompt-button-group .login-button{width:100%;max-width:320px;justify-content:center}.login-button.secondary{background-color:var(--background-tertiary);color:var(--text-primary);border:1px solid var(--background-tertiary-hover)}.login-button.secondary:hover{background-color:var(--background-tertiary-hover);border-color:var(--text-secondary)}.auth-legal-text{font-size:.8rem;color:var(--text-secondary);max-width:350px;margin:0 auto}.about-page-container.main-content-page{width:100%;max-width:var(--layout-max-width);margin:2rem auto;padding:2rem 1.5rem}.page-header-ap{text-align:center;margin-bottom:3rem;padding-bottom:1.5rem;border-bottom:1px solid var(--background-tertiary)}.page-header-ap h1{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.75rem}.page-subtitle-ap{font-size:1.2rem;color:var(--text-secondary);max-width:700px;margin:0 auto}.about-section-ap{margin-bottom:3rem;padding:2rem;border-radius:var(--border-radius-medium)}.about-section-ap.alt-background-ap{background-color:var(--background-secondary);box-shadow:var(--shadow-elevation-low)}.section-icon-ap{font-size:2.5rem;color:var(--accent-primary);margin-bottom:1rem;text-align:center}.section-icon-ap svg{width:2em;height:2em}.about-section-ap h2{font-size:1.8rem;font-weight:600;color:var(--text-primary);margin-bottom:1.5rem;text-align:center}.about-section-ap h2 .highlight{color:var(--accent-primary)}.about-section-ap p{font-size:1.05rem;line-height:1.7;color:var(--text-secondary);margin-bottom:1.25rem;max-width:800px;margin-left:auto;margin-right:auto}.about-section-ap p strong{color:var(--text-primary);font-weight:600}.comparison-table-container-ap{margin-top:2.5rem}.comparison-table-container-ap h3{text-align:center;font-size:1.5rem;margin-bottom:1.5rem;color:var(--text-primary)}.comparison-table-ap{width:100%;border-collapse:collapse;margin-bottom:1.5rem;background-color:var(--background-tertiary);border-radius:var(--border-radius-medium);overflow:hidden;box-shadow:var(--shadow-elevation-medium)}.comparison-table-ap th,.comparison-table-ap td{padding:1rem 1.25rem;text-align:left;border-bottom:1px solid var(--background-primary)}.comparison-table-ap th{background-color:var(--background-tertiary-hover);color:var(--text-primary);font-weight:600;font-size:1.05rem}.comparison-table-ap td:first-child{color:var(--text-primary);font-weight:500}.comparison-table-ap td{color:var(--text-secondary);font-size:.95rem;vertical-align:middle}.comparison-table-ap td svg{margin-right:.5em;vertical-align:-.15em;width:1.3em;height:1.3em}.comparison-table-ap tbody tr:last-child td{border-bottom:none}.table-disclaimer-ap{font-size:.85rem;color:var(--text-tertiary);text-align:center;font-style:italic}.final-cta-ap{text-align:center;padding-top:2rem;border-top:1px solid var(--background-tertiary);margin-top:3rem}.final-cta-ap h2{font-size:1.8rem;margin-bottom:1rem}.final-cta-ap p{max-width:500px;margin-bottom:1.5rem}.cta-button-ap.primary-ap{display:inline-block;padding:.8rem 1.8rem;border-radius:var(--border-radius-medium);text-decoration:none;font-weight:600;font-size:1rem;transition:all var(--transition-speed-fast) ease;border:2px solid transparent;cursor:pointer;background-color:var(--accent-primary);color:#fff;box-shadow:0 4px 15px -5px var(--shadow-color-accent)}.cta-button-ap.primary-ap:hover{background-color:var(--accent-primary-hover);transform:translateY(-2px);box-shadow:0 6px 20px -5px var(--shadow-color-accent)}@media (max-width: 768px){.about-page-container.main-content-page{padding:1.5rem 1rem;margin-top:1rem;margin-bottom:1rem}.page-header-ap h1{font-size:2rem}.page-subtitle-ap{font-size:1.1rem}.about-section-ap{padding:1.5rem;margin-bottom:2rem}.about-section-ap h2{font-size:1.5rem}.about-section-ap p{font-size:1rem}.comparison-table-ap{font-size:.9rem}.comparison-table-ap th,.comparison-table-ap td{padding:.75rem}.comparison-table-ap td svg{width:1.1em;height:1.1em}.final-cta-ap h2{font-size:1.5rem}}.samples-page-container-sp.main-content-page{width:100%;max-width:var(--layout-max-width);margin:2rem auto;padding:0 1rem}.page-header-sp{text-align:center;margin-bottom:3rem;padding:1rem 0 2rem;border-bottom:1px solid var(--background-tertiary)}.page-header-sp h1{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.75rem}.page-subtitle-sp{font-size:1.2rem;color:var(--text-secondary);max-width:700px;margin:0 auto}.sample-suite-sp{margin-bottom:4rem;padding:2.5rem;background-color:var(--background-secondary);border-radius:var(--border-radius-large);box-shadow:var(--shadow-elevation-high)}.sample-suite-sp.alt-background-sp{background-color:var(--background-tertiary)}.suite-header-sp{margin-bottom:2.5rem;text-align:center}.suite-title-sp{font-size:2rem;color:var(--accent-primary);margin-bottom:.5rem}.suite-pastor-sp{font-size:1.1rem;color:var(--text-primary);font-style:italic;margin-bottom:.75rem}.suite-description-sp{font-size:1rem;color:var(--text-secondary);line-height:1.6}.asset-category-sp{margin-bottom:3.5rem;padding-top:1rem}.asset-category-sp h3{font-size:1.6rem;color:var(--text-primary);margin-bottom:.5rem;display:flex;align-items:center;gap:.6em}.asset-category-sp h3 svg{width:1.3em;height:1.3em;color:var(--accent-secondary)}.category-description-sp{font-size:1rem;color:var(--text-secondary);margin-bottom:2rem;max-width:750px}.video-gallery-sp{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;justify-items:center;margin-bottom:1rem}.video-sample-item-sp{background-color:var(--background-primary);padding:1rem;border-radius:var(--border-radius-medium);box-shadow:var(--shadow-elevation-low);width:100%;max-width:280px;display:flex;flex-direction:column;align-items:center}.video-sample-item-sp h4{font-size:1rem;color:var(--text-primary);margin-bottom:.75rem;font-weight:500;text-align:center;min-height:2.2em}.sample-video-sp.vertical-sp{width:100%;max-width:240px;aspect-ratio:9 / 16;display:block;margin:0 auto .5rem;background-color:#000;border-radius:var(--border-radius-small);border:1px solid var(--background-tertiary-hover)}.featured-quote-grid-sp{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;max-width:700px;margin:0 auto 1rem}.featured-quote-item-sp{background-color:var(--background-tertiary);padding:.75rem;border-radius:var(--border-radius-medium);box-shadow:var(--shadow-elevation-low)}.sample-image-sp{width:100%;height:auto;aspect-ratio:1 / 1;object-fit:cover;border-radius:var(--border-radius-small);display:block;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.sample-image-sp:hover{transform:scale(1.03);box-shadow:0 4px 15px #0003}.more-samples-note-sp{text-align:center;font-size:.9rem;color:var(--text-secondary);margin-top:1.5rem}.more-samples-note-sp a{color:var(--accent-primary);text-decoration:none;font-weight:500}.more-samples-note-sp a:hover{text-decoration:underline}.document-gallery-sp{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}.document-sample-item-sp{background-color:var(--background-tertiary);padding:1.5rem;border-radius:var(--border-radius-medium);display:flex;flex-direction:column;box-shadow:var(--shadow-elevation-low)}.document-sample-item-sp h4{font-size:1.2rem;color:var(--text-primary);margin-bottom:1rem}.sample-pdf-embed-sp{width:100%;height:450px;border:1px solid var(--background-tertiary-hover);border-radius:var(--border-radius-small);margin-bottom:1rem;background-color:#333}.download-button-sp{display:block;margin-top:auto;padding:.75em 1.5em;background-color:var(--accent-primary);color:#fff;text-decoration:none;border-radius:var(--border-radius-medium);font-weight:500;transition:background-color var(--transition-speed-fast);text-align:center}.download-button-sp:hover{background-color:var(--accent-primary-hover)}.audio-transcript-section-sp{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;align-items:start}.audio-sample-item-sp{background-color:var(--background-tertiary);padding:1.5rem;border-radius:var(--border-radius-medium);box-shadow:var(--shadow-elevation-low)}.audio-sample-item-sp h4{font-size:1.2rem;color:var(--text-primary);margin-bottom:1rem}.sample-audio-player-sp{width:100%;margin-top:.5rem}.sample-audio-player-sp:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:var(--border-radius-small)}.suite-divider-sp{border:none;height:1px;background-color:var(--background-tertiary-hover);margin:5rem auto;width:80%}.final-cta-section-sp{text-align:center;padding:4rem 1rem 2rem;margin-top:2rem;border-top:1px solid var(--background-tertiary)}.final-cta-section-sp h2{font-size:2rem;margin-bottom:1rem;color:var(--text-primary)}.final-cta-section-sp p{font-size:1.1rem;color:var(--text-secondary);margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto}.cta-button-sp.primary-sp{display:inline-block;padding:.8rem 1.8rem;border-radius:var(--border-radius-medium);text-decoration:none;font-weight:600;font-size:1rem;transition:all var(--transition-speed-fast) ease;border:2px solid transparent;cursor:pointer;background-color:var(--accent-primary);color:#fff;box-shadow:0 4px 15px -5px var(--shadow-color-accent)}.cta-button-sp.primary-sp:hover{background-color:var(--accent-primary-hover);transform:translateY(-2px)}.cta-button-sp.large-sp{font-size:1.1rem;padding:1rem 2.5rem}@media (max-width: 992px){.video-gallery-sp{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.featured-quote-grid-sp{max-width:600px}.sample-pdf-embed-sp{height:400px}}@media (max-width: 768px){.page-header-sp h1{font-size:2rem}.page-subtitle-sp{font-size:1.1rem}.sample-suite-sp{padding:1.5rem;margin-bottom:3rem}.suite-title-sp{font-size:1.7rem}.asset-category-sp h3{font-size:1.3rem}.category-description-sp{font-size:.95rem;margin-bottom:1.5rem}.video-gallery-sp{grid-template-columns:1fr;gap:1.5rem}.video-sample-item-sp{max-width:100%;padding:.75rem}.sample-video-sp.vertical-sp{max-width:260px;margin-bottom:.75rem}.featured-quote-grid-sp{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));max-width:100%;gap:1rem}.featured-quote-item-sp{padding:.5rem}.document-gallery-sp,.audio-transcript-section-sp{grid-template-columns:1fr}.sample-pdf-embed-sp{height:350px}.final-cta-section-sp h2{font-size:1.7rem}}.upload-instructions{text-align:center;margin-bottom:1.25rem;color:var(--text-secondary);font-size:.95rem;max-width:450px;margin-left:auto;margin-right:auto}#upload-form{display:flex;flex-direction:column;gap:1.75rem;width:100%;max-width:450px;align-items:stretch;margin-top:1rem}.dropzone-area{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem;border-radius:var(--border-radius-medium);min-height:180px;text-align:center;transition:all var(--transition-speed-medium) ease;width:100%;border-width:2px;border-style:dashed}.dropzone-area:focus-visible{outline:none;box-shadow:var(--glow-ring)}.dropzone-area.has-file{border-color:var(--success-border)!important;background-color:var(--success-bg)!important}.dropzone-area.has-file,.dropzone-area.has-file p,.dropzone-area.has-file svg{color:var(--success-text)!important}.dropzone-area.disabled{background-color:var(--background-tertiary-hover)!important;border-color:var(--background-tertiary)!important;cursor:not-allowed!important;opacity:.7}.dropzone-area.disabled .dropzone-prompt,.dropzone-area.disabled .file-preview-container{opacity:.6}.dropzone-area.disabled p{color:var(--text-tertiary)}.dropzone-prompt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;color:var(--text-secondary);padding:1rem}.dropzone-prompt-icon{width:3.5em;height:3.5em;color:var(--accent-primary);margin-bottom:.75rem;filter:drop-shadow(0 2px 4px var(--shadow-color-accent))}.dropzone-prompt p{margin:0;text-align:center;line-height:1.3}.dropzone-prompt .prompt-action-primary{font-size:1.15rem;font-weight:600;color:var(--text-primary);letter-spacing:.02em}.dropzone-prompt .prompt-subject{font-size:1.3rem;font-weight:700;color:var(--accent-primary);margin-top:.1rem;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.05em}.dropzone-prompt .prompt-separator{font-size:.85rem;font-weight:500;color:var(--text-tertiary);text-transform:uppercase;margin:.3rem 0}.dropzone-prompt .prompt-action-secondary{font-size:.95rem;font-weight:500;color:var(--text-secondary)}.dropzone-area:not(.disabled):not(.has-file):hover .dropzone-prompt-icon{transform:scale(1.1);transition:transform var(--transition-speed-fast) ease-out}.dropzone-area:not(.disabled):not(.has-file):hover .dropzone-prompt .prompt-subject{color:var(--accent-primary-hover);transition:color var(--transition-speed-fast) ease-out}.file-preview-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem;color:var(--text-primary);gap:.5rem}.file-preview-container svg{width:2em;height:2em;color:var(--accent-primary)}.file-preview-container .file-name{font-weight:600;font-size:.95rem;word-break:break-all;padding:0 10px}.file-preview-container .file-size{font-size:.85em;color:var(--text-tertiary)}.change-file-button{background-color:transparent;color:var(--accent-primary);border:1px solid var(--accent-primary);padding:.4rem .8rem;font-size:.8rem;font-weight:600;border-radius:var(--border-radius-small);cursor:pointer;transition:all var(--transition-speed-medium) ease;margin-top:.5rem}.change-file-button:hover,.change-file-button:focus-visible{background-color:var(--accent-primary-glow);color:var(--text-primary);border-color:var(--accent-primary-hover)}.change-file-button:focus-visible{outline:none;box-shadow:0 0 0 2px var(--background-primary),0 0 0 4px var(--accent-primary-hover)}.dropzone-area.disabled .change-file-button{pointer-events:none}.progress-container{width:100%;display:flex;flex-direction:column;align-items:center;gap:.85rem}.progress-label{font-size:1.1rem;color:var(--text-primary);font-weight:600;line-height:1.3;width:100%;text-align:center}.progress-bar-wrapper{width:100%;height:20px;background-color:var(--background-tertiary);border-radius:var(--border-radius-medium);overflow:hidden;border:1px solid var(--background-tertiary-hover);box-shadow:inset 0 1px 3px #0000001a}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent-primary-hover) 0%,var(--accent-primary) 100%);border-radius:var(--border-radius-medium);transition:width var(--transition-speed-medium) cubic-bezier(.25,1,.5,1);background-size:200% 100%;animation:progressBarFillAnimation 2s linear infinite}@keyframes progressBarFillAnimation{0%{background-position:100% 0}to{background-position:-100% 0}}.cancel-button:focus-visible{outline:none;box-shadow:0 0 0 3.5px var(--accent-primary-glow),var(--shadow-elevation-medium)}.submit-button{display:inline-flex;align-items:center;justify-content:center;gap:.6em;padding:.75rem 1.25rem;font-size:.95rem;font-weight:600;border-radius:var(--border-radius-medium);border:1px solid transparent;cursor:pointer;transition:all var(--transition-speed-medium) ease;white-space:nowrap;line-height:1.2;background-color:var(--accent-primary);color:#fff;border-color:var(--accent-primary);box-shadow:0 4px 10px -2px var(--shadow-color-accent);width:100%}.submit-button.is-loading .spinner{display:inline-block;margin-left:8px;border-top-color:#fff}.submit-button:focus-visible{outline:none;box-shadow:0 0 0 3.5px var(--accent-primary-glow),var(--shadow-elevation-medium)}.spinner{border:3px solid rgba(255,255,255,.2);border-radius:50%;width:18px;height:18px;animation:spin .8s linear infinite;vertical-align:middle}.form-status{padding:1rem 1.25rem;border-radius:var(--border-radius-medium);font-weight:500;text-align:left;border-width:1px;border-style:solid;font-size:.95rem;line-height:1.5;width:100%;display:flex;align-items:center;gap:.75em}@media (max-width: 480px){.upload-instructions{font-size:.9rem}#upload-form{gap:1.25rem}.dropzone-area{min-height:150px;padding:1rem}.dropzone-prompt svg{width:2em;height:2em}.dropzone-prompt p,.file-preview-container .file-name{font-size:.9rem}.file-preview-container .file-size{font-size:.8rem}.change-file-button{font-size:.75rem;padding:.3rem .6rem}.progress-label{font-size:1rem}.progress-bar-wrapper{height:16px}.cancel-button{padding:.4rem .8rem;font-size:.8rem}.submit-button,.form-status{padding:.8rem 1rem;font-size:.9rem}}.dropzone-area.has-file .uploading-prompt-text{color:var(--text-secondary)!important;font-weight:600;font-size:1.1rem;text-align:center;padding:1rem}.refresh-jobs-button:hover:not(:disabled){background-color:var(--background-tertiary-hover);color:var(--text-primary);transform:translateY(-2px);box-shadow:var(--shadow-elevation-low)}.refresh-jobs-button:focus-visible{outline:none;box-shadow:0 0 0 3.5px var(--accent-primary-glow),var(--shadow-elevation-medium)}.loading-text{font-size:1rem;color:var(--text-secondary);padding:1rem 0;text-align:center;width:100%}.no-jobs-message{color:var(--text-secondary);font-style:italic;padding:2rem;text-align:center;border:1px dashed var(--background-tertiary);border-radius:var(--border-radius-medium);width:100%;margin-top:1rem}.job-status-badge{padding:.3em .75em;border-radius:var(--border-radius-small);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;flex-shrink:0}.job-error-log{color:var(--error-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:help;max-width:100%}.download-button:hover{background-color:#10b981;transform:translateY(-2px);box-shadow:var(--shadow-elevation-low)}.download-button:focus-visible{outline:none;box-shadow:0 0 0 3.5px var(--accent-primary-glow),var(--shadow-elevation-medium)}.job-in-progress-indicator{display:flex;align-items:center;gap:.5em;font-size:.9rem;font-weight:500;margin-top:.5rem}.job-in-progress-indicator.status-queued,.job-in-progress-indicator.status-waiting{color:#60a5fa}.job-in-progress-indicator.status-processing{color:#fcd34d}.small-spinner{border:2px solid rgba(252,211,77,.2);border-top-color:#fcd34d;width:14px;height:14px;animation:spin .8s linear infinite;display:inline-block;border-radius:50%}@media (max-width: 1023px){.dashboard-header{flex-direction:column;gap:.75rem;align-items:stretch;text-align:center}.refresh-jobs-button{width:auto;align-self:center}}@media (max-width: 480px){.job-filename{font-size:.95rem}.job-status-badge{font-size:.7rem;padding:.2em .5em}.form-status{padding:.8rem 1rem;font-size:.9rem}}.download-button:disabled{background-color:var(--accent-secondary-disabled, #52525b);color:var(--text-disabled, #a1a1aa);opacity:.7;cursor:not-allowed;transform:none;box-shadow:none}.download-button:disabled svg{opacity:.7}.job-status-badge.status-waiting{background-color:#a1620740;color:#facc15;border:1px solid #a1620790}.download-button .small-spinner{border:2px solid rgba(255,255,255,.3);border-top-color:#fff}.job-warning-message{color:var(--warning-text, #f97316)}.icon-with-margin{margin-right:4px;vertical-align:middle}.animated-ellipsis:after{display:inline-block;animation:ellipsis 2s infinite;content:".";width:1.65em;text-align:left}@keyframes ellipsis{0%{content:"."}33%{content:"."}34%{content:".."}66%{content:".."}67%{content:"..."}to{content:"..."}}.auth-callback-container{position:fixed;top:0;right:0;bottom:0;left:0;background-color:var(--background-primary);z-index:9999;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1.5rem}.auth-callback-text{color:var(--accent-primary);font-size:1.2rem;font-weight:500;letter-spacing:.05em;text-align:center}.auth-callback-spinner{width:48px;height:48px;border-radius:50%;border:4px solid var(--background-tertiary);border-top-color:var(--accent-primary);animation:spin 1s linear infinite}.app-header{width:100%;background-color:var(--background-secondary);padding:0;border-bottom:1px solid var(--background-tertiary);margin-bottom:2.5rem}.header-content{width:100%;max-width:var(--layout-max-width);margin:0 auto;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem 1.5rem}.app-branding{display:flex;flex-direction:column;gap:.2rem;flex-shrink:0}.app-title-link{text-decoration:none}.app-title{font-size:1.75rem;font-weight:700;color:var(--text-primary);letter-spacing:-.5px;margin:0}.app-tagline{font-size:.8rem;color:var(--text-secondary);line-height:1.4;max-width:320px;margin:0}.main-navigation{display:flex;gap:1.5rem;align-items:center;flex-grow:1;justify-content:center}.nav-link{text-decoration:none;color:var(--text-secondary);font-weight:500;padding:.5rem .25rem;border-bottom:2px solid transparent;transition:color var(--transition-speed-fast),border-color var(--transition-speed-fast),font-weight var(--transition-speed-fast)}.nav-link:hover{color:var(--text-primary)}.nav-link.active{color:var(--accent-primary);border-bottom-color:var(--accent-primary);font-weight:600}.nav-link-dashboard:not(.active){color:var(--accent-primary-muted);font-weight:500}.nav-link-dashboard:not(.active):hover{color:var(--accent-primary)}.user-actions{display:flex;align-items:center;gap:1.25rem;flex-shrink:0}.user-details{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:.4rem}.user-identifier{font-size:.85rem;color:var(--text-secondary)}.user-identifier strong{color:var(--text-primary);font-weight:500}.credits-balance{display:flex;align-items:center;gap:.5rem;background-color:var(--background-tertiary);padding:.3rem .7rem;border-radius:var(--border-radius-small)}.credits-balance svg{color:var(--accent-primary);width:1em;height:1em}.credits-label{font-size:.8rem;color:var(--text-secondary);font-weight:500}.credits-value{font-size:1rem;font-weight:600;color:var(--text-primary);min-width:1.5ch}.credits-value.loading{color:var(--text-secondary);font-size:.9rem}.credits-value.error{color:var(--error-text);font-size:.9rem;font-weight:500}.logout-button,.login-button{display:inline-flex;align-items:center;justify-content:center;gap:.6em;padding:.6rem 1rem;font-size:.9rem;font-weight:600;border-radius:var(--border-radius-medium);border:1px solid transparent;cursor:pointer;transition:all var(--transition-speed-medium) ease;white-space:nowrap;line-height:1.2}.logout-button svg,.login-button svg{width:1.2em;height:1.2em}.logout-button{background-color:var(--background-tertiary);color:var(--text-secondary);border-color:var(--background-tertiary-hover)}.logout-button:hover:not(:disabled){background-color:var(--background-tertiary-hover);color:var(--text-primary);border-color:#555;transform:translateY(-2px);box-shadow:0 2px 8px #0003}.login-button.primary{background-color:var(--accent-primary);color:#fff;border-color:var(--accent-primary);box-shadow:0 4px 10px -2px var(--shadow-color-accent)}.login-button.primary:hover:not(:disabled){background-color:var(--accent-primary-hover);border-color:var(--accent-primary-hover);transform:translateY(-2px);box-shadow:0 6px 12px -2px var(--shadow-color-accent)}.login-button:disabled,.logout-button:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}@media (max-width: 1023px){.app-header{margin-bottom:2rem}.header-content{flex-direction:column;align-items:center;gap:1.5rem;padding:1rem 1.25rem}.app-branding{text-align:center;align-items:center;width:100%}.app-tagline{max-width:90%}.main-navigation{order:3;width:100%;justify-content:center;flex-wrap:wrap;gap:1rem 1.5rem}.user-actions{order:2;margin-left:0;width:auto;justify-content:center}.user-details{align-items:center;text-align:center}}@media (max-width: 480px){.app-header{margin-bottom:1.5rem}.header-content{padding:.75rem 1rem;gap:1rem}.app-title{font-size:1.6rem}.user-actions{flex-direction:column;align-items:center;gap:1rem;width:100%}.logout-button,.login-button.primary{width:auto;min-width:160px;padding:.7rem 1rem;font-size:.9rem}.credits-balance{justify-content:center}.main-navigation{gap:.5rem 1rem}.nav-link{font-size:.9rem}}.app-footer{width:100%;max-width:var(--layout-max-width);margin:2.5rem auto 0;padding:1.5rem;font-size:.85rem;color:var(--text-tertiary);border-top:1px solid var(--background-tertiary)}.footer-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.25rem}.copyright-text{flex-shrink:0;margin-right:1.5rem}.footer-links{display:flex;justify-content:center;align-items:center;gap:1.5rem;flex-grow:1;flex-wrap:wrap}.footer-links a{color:var(--text-tertiary);text-decoration:none;transition:color var(--transition-speed-fast) ease;white-space:nowrap}.footer-links a:hover{color:var(--text-primary);text-decoration:underline}@media (max-width: 1023px){.footer-content{flex-direction:column;gap:1rem;align-items:center;text-align:center}.copyright-text{order:2;margin-right:0}.footer-links{order:1;justify-content:center;gap:.75rem 1.25rem}}.legal-page-container{max-width:var(--content-max-width);margin:2rem auto 4rem;padding:2rem;background-color:var(--background-secondary);border-radius:var(--border-radius-large);border:1px solid var(--background-tertiary)}.legal-page-container h1{font-size:2.2rem;font-weight:700;color:var(--text-primary);margin-bottom:1.5rem;border-bottom:1px solid var(--background-tertiary);padding-bottom:1rem}.legal-page-container h2{font-size:1.5rem;font-weight:600;color:var(--text-secondary);margin-top:2.5rem;margin-bottom:1rem}.legal-page-container p,.legal-page-container li{font-size:1rem;line-height:1.7;color:var(--text-secondary);margin-bottom:1rem}.legal-page-container a{color:var(--accent-primary);text-decoration:none;border-bottom:1px solid transparent;transition:border-color var(--transition-speed-fast) ease}.legal-page-container a:hover{border-bottom-color:var(--accent-primary)}.legal-page-container ul{list-style-position:inside;padding-left:1rem}.legal-page-container .last-updated{font-size:.9rem;color:var(--text-tertiary);margin-bottom:2rem}@media (max-width: 768px){.legal-page-container{margin:1rem;padding:1.5rem}.legal-page-container h1{font-size:1.8rem}.legal-page-container h2{font-size:1.3rem}}.legal-table{width:100%;margin:1.5rem 0;border-collapse:collapse;font-size:.9rem}.legal-table th,.legal-table td{text-align:left;padding:.75rem;border-bottom:1px solid var(--background-tertiary)}.legal-table th{color:var(--text-primary);font-weight:600}.legal-table td{color:var(--text-secondary)}.notification-banner{position:relative;width:100%;padding:.75rem 3rem;background-color:var(--accent-primary-glow);border-bottom:1px solid var(--accent-primary);color:var(--text-primary);display:flex;align-items:center;justify-content:center;text-align:center;font-size:.9rem;font-weight:500}.banner-content p{margin:0;line-height:1.5}.banner-link{color:var(--accent-primary-muted);font-weight:600;text-decoration:underline;margin-left:.75rem;white-space:nowrap}.banner-link:hover{color:#fff}.banner-close-button{position:absolute;top:50%;right:1rem;transform:translateY(-50%);background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.5rem;border-radius:var(--border-radius-small);transition:background-color var(--transition-speed-fast),color var(--transition-speed-fast)}.banner-close-button:hover{color:var(--text-primary);background-color:#ffffff1a}.banner-close-button svg{width:1.25em;height:1.25em;display:block}.feedback-page-container.main-content-page{max-width:var(--layout-max-width, 100%);margin:0 auto;padding:3rem 1.5rem;color:var(--text-primary)}.feedback-page-header{text-align:center;margin-bottom:2.5rem}.feedback-page-header h1{font-size:2.2rem;font-weight:700;margin-bottom:.75rem;color:var(--text-primary)}.feedback-page-header p{font-size:1.1rem;color:var(--text-secondary);line-height:1.6}.notion-embed-container{width:100%;border-radius:var(--border-radius-large);overflow:hidden;box-shadow:var(--shadow-elevation-medium);background-color:#fff}.contact-page-container{padding:2rem;max-width:900px;margin:2rem auto;background-color:var(--background-secondary);border-radius:var(--border-radius-large);box-shadow:var(--shadow-elevation-medium);border:1px solid var(--background-tertiary)}.contact-page-header{text-align:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--background-tertiary-hover)}.contact-page-header h1{font-size:2.5rem;color:var(--text-primary);margin-bottom:.5rem}.contact-page-header p{font-size:1.1rem;color:var(--text-secondary);max-width:600px;margin:0 auto}.notion-embed-container{border-radius:var(--border-radius-medium);overflow:hidden;box-shadow:var(--shadow-elevation-low);background-color:#fff}.notion-embed-container iframe{display:block;border:none}@media (max-width: 768px){.contact-page-container{padding:1.5rem;margin:1rem}.contact-page-header h1{font-size:2rem}}.instructions-page-container{max-width:900px;margin:2rem auto;padding:2rem}.instructions-header{text-align:center;margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid var(--background-tertiary-hover)}.instructions-header h1{font-size:2.5rem;color:var(--text-primary);margin-bottom:1rem}.instructions-subtitle{font-size:1.1rem;color:var(--text-secondary);line-height:1.7;max-width:750px;margin:0 auto 1.5rem}.instructions-note{font-size:.95rem;color:var(--text-tertiary);background-color:var(--background-secondary);padding:1rem;border-radius:var(--border-radius-small);display:inline-block}.instructions-section{margin-bottom:3.5rem}.instructions-section h2{font-size:2rem;margin-bottom:1.5rem;color:var(--accent-primary);border-bottom:2px solid var(--background-tertiary);padding-bottom:.5rem}.instructions-section h2 .icon-prefix{margin-right:.75rem}.instructions-section>p{color:var(--text-secondary);margin-bottom:1.5rem}.tool-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.tool-card{background-color:var(--background-secondary);padding:1.5rem;border-radius:var(--border-radius-medium);border:1px solid var(--background-tertiary-hover);transition:transform .2s ease,box-shadow .2s ease}.tool-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-elevation-medium)}.tool-card h3{display:flex;align-items:center;gap:.75rem;font-size:1.3rem;margin-bottom:1rem;color:var(--text-primary)}.tool-card h3 svg{color:var(--accent-secondary);flex-shrink:0}.tool-card p,.tool-card li{color:var(--text-secondary);line-height:1.6}.tool-card ul{list-style-position:outside;padding-left:1.25rem;margin-top:.5rem}.strategy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.strategy-card{background-color:transparent;padding:1.5rem;border:1px solid var(--background-tertiary-hover);border-radius:var(--border-radius-medium)}.strategy-card h4{font-size:1.1rem;margin-bottom:1rem;color:var(--accent-primary-muted)}.strategy-card p{color:var(--text-secondary);margin-bottom:.5rem}.checklist-section h2{display:flex;align-items:center;gap:.75rem}.checklist-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}.checklist-day{padding:1.5rem;background-color:var(--background-tertiary);border-left:4px solid var(--accent-primary);border-radius:0 var(--border-radius-small) var(--border-radius-small) 0}.checklist-day h3{font-size:1.2rem;font-weight:700;letter-spacing:1px;color:var(--text-primary);margin-bottom:1rem}.checklist-day p{color:var(--text-secondary);margin-bottom:.5rem}.checklist-day ul{list-style:none;padding-left:0}.checklist-day li{color:var(--text-secondary);padding-left:1.5rem;position:relative;margin-bottom:.5rem}.checklist-day li:before{content:"✓";position:absolute;left:0;color:var(--accent-secondary);font-weight:700}@media (min-width: 768px){.checklist-grid{grid-template-columns:repeat(2,1fr)}}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#121212b3;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:var(--background-secondary);color:var(--text-secondary);padding:1.5rem 2rem;border-radius:var(--border-radius-large);width:100%;max-width:500px;box-shadow:var(--shadow-elevation-high);border:1px solid var(--background-tertiary-hover)}.modal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--background-tertiary);padding-bottom:1rem;margin-bottom:1rem}.modal-header h2{margin:0;font-size:1.25rem;color:var(--text-primary)}.close-button{background:none;border:none;font-size:1.75rem;cursor:pointer;color:var(--text-tertiary);transition:color var(--transition-speed-fast)}.close-button:hover{color:var(--text-primary)}.modal-body p{margin:.5rem 0}.modal-body strong{color:var(--text-primary);font-weight:500}.form-group{margin-top:1rem}.form-group label{display:block;font-weight:500;margin-bottom:.5rem;color:var(--text-secondary)}.form-group input{width:100%;padding:.75rem;border:1px solid var(--background-tertiary-hover);border-radius:var(--border-radius-small);font-size:1rem;background-color:var(--background-primary);color:var(--text-primary);transition:border-color var(--transition-speed-medium)}.form-group input:focus{outline:none;border-color:var(--accent-primary);box-shadow:var(--glow-ring)}.error-text{color:var(--error-text);font-size:.875rem;margin-top:.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--background-tertiary)}.button-secondary{background-color:var(--background-tertiary);color:var(--text-secondary);border:1px solid var(--background-tertiary-hover);padding:.6rem 1.2rem;border-radius:var(--border-radius-medium);cursor:pointer;font-weight:600;transition:all var(--transition-speed-fast)}.button-secondary:hover{background-color:var(--background-tertiary-hover);color:var(--text-primary)}.button-primary{background-color:var(--accent-primary);color:#fff;border:none;padding:.6rem 1.2rem;border-radius:var(--border-radius-medium);cursor:pointer;font-weight:600;transition:all var(--transition-speed-fast)}.button-primary:hover{background-color:var(--accent-primary-hover);transform:translateY(-1px)}.button-primary:disabled,.button-secondary:disabled{opacity:.5;cursor:not-allowed;transform:none}.table-wrapper{overflow-x:auto;border:1px solid var(--background-tertiary-hover);border-radius:var(--border-radius-medium);background-color:var(--background-tertiary);box-shadow:var(--shadow-elevation-low)}.user-table{width:100%;border-collapse:collapse;font-size:.9rem}.user-table th,.user-table td{padding:.85rem 1.25rem;text-align:left;border-bottom:1px solid var(--background-tertiary-hover);color:var(--text-secondary);vertical-align:middle}.user-table td:first-child{color:var(--text-primary);font-weight:500}.user-table thead th{background-color:var(--background-tertiary-hover);color:var(--text-primary);font-weight:600;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.user-table tbody tr:last-child td{border-bottom:none}.user-table tbody tr:hover td{background-color:#ffffff09}.action-button{background-color:var(--accent-primary);color:#fff;border:none;padding:.6rem 1.1rem;border-radius:var(--border-radius-small);font-size:.875rem;font-weight:600;cursor:pointer;transition:background-color var(--transition-speed-fast),transform var(--transition-speed-fast)}.action-button:hover{background-color:var(--accent-primary-hover);transform:translateY(-2px)}.action-button:focus-visible{outline:none;box-shadow:var(--glow-ring)}.user-table thead th.sorted,.user-table thead th:hover{cursor:pointer;background-color:var(--background-tertiary-hover);color:var(--text-primary)}.user-table thead th .sort-arrow{margin-left:.5em;font-size:.7em;vertical-align:middle;display:inline-block}.summary-card-container{display:flex;gap:1.5rem}.summary-card{background-color:var(--background-tertiary);padding:1.5rem;border-radius:var(--border-radius-medium);border:1px solid var(--background-tertiary-hover);text-align:center;flex-grow:1;transition:transform var(--transition-speed-medium) ease,box-shadow var(--transition-speed-medium) ease}.summary-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-elevation-medium)}.summary-card h3{margin:0 0 .5rem;font-size:1rem;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.05em}.summary-value{margin:0;font-size:2.75rem;font-weight:700;color:var(--text-primary)}.admin-dashboard.admin-container{padding:2.5rem 3rem;background-color:var(--background-secondary);border-radius:var(--border-radius-large);box-shadow:var(--shadow-elevation-high);border:1px solid var(--background-tertiary);color:var(--text-primary)}.admin-dashboard h1{color:var(--text-primary);border-bottom:1px solid var(--background-tertiary);padding-bottom:1rem;margin-bottom:2rem;font-size:2.25rem;text-align:left}.admin-dashboard h2{font-size:1.5rem;color:var(--text-secondary);margin-bottom:1rem;text-align:left}.admin-dashboard .error-message{color:var(--error-text);background-color:var(--error-bg);padding:1rem;border:1px solid var(--error-border);border-radius:var(--border-radius-medium)}@media (max-width: 768px){.admin-dashboard.admin-container{padding:2rem 1.5rem;margin:1rem}.admin-dashboard h1{font-size:1.8rem;margin-bottom:1.5rem}.admin-dashboard h2{font-size:1.3rem}.summary-card-container{flex-direction:column;gap:1rem}}@media (max-width: 480px){.admin-dashboard.admin-container{padding:1.5rem 1rem;margin:.5rem;border-radius:var(--border-radius-medium)}}.admin-form{display:flex;flex-direction:column;gap:1rem;background-color:var(--background-tertiary);padding:1.5rem;border-radius:var(--border-radius-medium);border:1px solid var(--background-tertiary-hover)}.admin-form p{font-size:.9rem;color:var(--text-secondary);margin-top:0}.admin-textarea{width:100%;padding:.75rem;border:1px solid var(--background-tertiary-hover);border-radius:var(--border-radius-small);font-size:1rem;font-family:var(--font-sans);background-color:var(--background-primary);color:var(--text-primary);transition:border-color .2s;resize:vertical}.admin-textarea:focus{outline:none;border-color:var(--accent-primary);box-shadow:var(--glow-ring)}.admin-form-footer{display:flex;align-items:center;gap:1rem;margin-top:.5rem}.form-status-text{font-size:.9rem;font-weight:500;color:var(--text-secondary)}.app-container{width:100%;flex-grow:1;display:flex;flex-direction:column;align-items:center;padding:0 0 50px;min-height:100vh}.router-view-content{width:100%;flex-grow:1;display:flex;flex-direction:column;align-items:center;padding:0 20px}.main-content-wrapper{display:flex;flex-direction:column;gap:2.5rem;width:100%;max-width:var(--layout-max-width)}.main-content{width:100%;padding:2.5rem 3rem;background-color:var(--background-secondary);border-radius:var(--border-radius-large);box-shadow:var(--shadow-elevation-high);display:flex;flex-direction:column;align-items:center;border:1px solid var(--background-tertiary)}.login-prompt-section{max-width:var(--content-max-width);align-self:center;margin-top:2rem;margin-bottom:2rem}.login-prompt-section p{color:var(--text-secondary);font-size:1.05rem;line-height:1.7;max-width:480px;margin-bottom:1.75rem;text-align:center}.login-prompt-section .login-button.primary{padding:.75rem 1.25rem;font-size:.95rem}.prompt-button-group{display:flex;gap:1rem;margin-top:.5rem;flex-wrap:wrap;justify-content:center;width:100%}@media (min-width: 1024px){.main-content-wrapper{flex-direction:row;align-items:flex-start}.upload-section-container{flex:0 0 420px}.job-dashboard-container{flex:1 1 600px}.login-prompt-section{margin-left:auto;margin-right:auto}}.main-content h2{margin-bottom:1.5rem;color:var(--text-primary);font-size:1.85rem;font-weight:600;text-align:center;letter-spacing:-.5px}.section-divider{border:none;height:2px;width:60%;max-width:250px;margin:2.5rem auto;background-image:linear-gradient(to right,transparent,var(--accent-primary-glow),var(--accent-primary),var(--accent-primary-glow),transparent);opacity:.6}*:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;box-shadow:var(--glow-ring)}@media (max-width: 1023px){.router-view-content{padding:0 15px}.main-content-wrapper{flex-direction:column;align-items:center;max-width:100%;gap:2rem;margin-top:0}.upload-section-container,.job-dashboard-container,.login-prompt-section{flex-basis:auto;max-width:var(--content-max-width);width:100%;padding:2rem 1.5rem}.main-content h2{font-size:1.65rem}.login-prompt-section p{font-size:1rem}}@media (max-width: 480px){.router-view-content{padding:0 10px}.upload-section-container,.job-dashboard-container,.login-prompt-section{padding:1.5rem 1rem}.main-content h2{font-size:1.5rem}.login-prompt-section p{font-size:.9rem}.section-divider{margin:1.5rem auto}}#upload-form{display:flex;flex-direction:column;gap:1.75rem;width:100%;max-width:450px;align-items:stretch;margin-top:1.5rem}.form-group{display:flex;flex-direction:column;gap:.6rem}.file-input-group{position:relative}.file-input-hidden{display:none}.file-input-label{display:inline-flex;align-items:center;justify-content:center;gap:.75em;padding:.85rem 1.25rem;background-color:var(--background-tertiary);border:2px dashed var(--background-tertiary-hover);border-radius:var(--border-radius-medium);cursor:pointer;transition:all var(--transition-speed-medium) ease;color:var(--text-secondary)}.file-input-label:hover,.file-input-label:focus-within{border-color:var(--accent-primary);color:var(--text-primary);background-color:var(--background-tertiary-hover);box-shadow:var(--glow-ring)}.file-input-label svg{width:1.3em;height:1.3em}.file-input-label span{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress-container{width:100%;display:flex;flex-direction:column;align-items:center;gap:.75rem}.progress-label{font-size:.9rem;color:var(--text-secondary);font-weight:500}.progress-bar-wrapper{width:100%;height:14px;background-color:var(--background-tertiary);border-radius:var(--border-radius-small);overflow:hidden;border:1px solid var(--background-tertiary-hover)}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent-primary-hover),var(--accent-primary));border-radius:var(--border-radius-small);transition:width var(--transition-speed-slow) cubic-bezier(.25,1,.5,1);box-shadow:inset 0 0 5px #0003}.cancel-button{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;font-size:.85rem;background-color:var(--cancel-red-bg);color:var(--cancel-red-text);border:1px solid transparent;border-radius:var(--border-radius-medium);font-weight:600;cursor:pointer;transition:all var(--transition-speed-medium) ease}.cancel-button:hover:not(:disabled){background-color:var(--cancel-red-bg-hover);transform:translateY(-1px)}.cancel-button:disabled{opacity:.5;cursor:not-allowed}.spinner{display:none;border:3px solid rgba(255,255,255,.2);border-radius:50%;border-top-color:#fff;width:18px;height:18px;animation:spin .8s linear infinite;vertical-align:middle}.submit-button.is-loading .spinner{display:inline-block;margin-left:8px}@keyframes spin{to{transform:rotate(360deg)}}.form-status{padding:1rem 1.25rem;border-radius:var(--border-radius-medium);font-weight:500;text-align:left;border-width:1px;border-style:solid;font-size:.95rem;line-height:1.5;width:100%;margin-bottom:1rem;display:flex;align-items:center;gap:.75em}.form-status svg{flex-shrink:0;width:1.3em;height:1.3em}.form-status.success{background-color:var(--success-bg);color:var(--success-text);border-color:var(--success-border)}.form-status.success svg{color:var(--success-text)}.form-status.error{background-color:var(--error-bg);color:var(--error-text);border-color:var(--error-border)}.form-status.error svg{color:var(--error-text)}.loading-text{font-size:1rem;color:var(--text-secondary);padding:1rem 0;text-align:center}.job-status-dashboard h2{margin-bottom:1rem}.dashboard-header{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:1.5rem;flex-wrap:wrap;gap:.5rem}.refresh-jobs-button{display:inline-flex;align-items:center;justify-content:center;gap:.6em;padding:.5rem 1rem;font-size:.9rem;font-weight:500;border-radius:var(--border-radius-medium);border:1px solid transparent;cursor:pointer;transition:all var(--transition-speed-medium) ease;background-color:var(--background-tertiary);color:var(--text-secondary);border-color:var(--background-tertiary-hover)}.refresh-jobs-button:hover:not(:disabled){background-color:var(--background-tertiary-hover);color:var(--text-primary);transform:translateY(-2px)}.refresh-jobs-button:disabled{opacity:.6;cursor:not-allowed}.refresh-jobs-button svg{width:1.1em;height:1.1em}.no-jobs-message{color:var(--text-secondary);font-style:italic;padding:2rem;text-align:center;border:1px dashed var(--background-tertiary);border-radius:var(--border-radius-medium);width:100%}.job-list{list-style:none;padding:0;width:100%;display:flex;flex-direction:column;gap:1.25rem}.job-item{background-color:var(--background-tertiary);padding:1.25rem 1.5rem;border-radius:var(--border-radius-medium);border:1px solid var(--background-tertiary-hover);box-shadow:var(--shadow-elevation-low);transition:transform var(--transition-speed-medium) ease,box-shadow var(--transition-speed-medium) ease}.job-item:hover{transform:translateY(-3px);box-shadow:0 4px 10px #0003}.job-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;flex-wrap:wrap;gap:.5rem}.job-filename{font-weight:600;color:var(--text-primary);font-size:1.05rem;word-break:break-all;flex-grow:1;margin-right:1rem}.job-status-badge{padding:.3em .75em;border-radius:var(--border-radius-small);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.job-status-badge.status-queued{background-color:#3b82f630;color:#60a5fa;border:1px solid #3b82f680}.job-status-badge.status-processing{background-color:#f59e0b30;color:#fcd34d;border:1px solid #f59e0b80}.job-status-badge.status-complete{background-color:var(--success-bg);color:var(--success-text);border:1px solid var(--success-border)}.job-status-badge.status-failed{background-color:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border)}.job-status-badge.status-unknown{background-color:#6b728030;color:#9ca3af;border:1px solid #6b728080}.job-status-badge.status-waiting_upload{background-color:#6b728040;color:#d1d5db;border:1px solid #6b728090}.job-item-details{font-size:.9rem;color:var(--text-secondary);margin-bottom:1rem;display:flex;flex-direction:column;gap:.3rem}.job-processing-note,.job-error-log{font-style:italic;font-size:.85rem}.job-error-log{color:var(--error-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:help}.download-button{display:inline-flex;align-items:center;justify-content:center;gap:.6em;padding:.6rem 1.1rem;font-size:.9rem;font-weight:500;text-decoration:none;background-color:var(--accent-secondary);color:#fff;border-radius:var(--border-radius-medium);border:1px solid transparent;cursor:pointer;transition:all var(--transition-speed-medium) ease}.download-button:hover{background-color:#10b981;transform:translateY(-2px)}.download-button svg{width:1.1em;height:1.1em}.job-in-progress-indicator{display:flex;align-items:center;gap:.5em;font-size:.9rem;color:#fcd34d;margin-top:.5rem}.small-spinner{border:2px solid rgba(252,211,77,.2);border-top-color:#fcd34d;width:14px;height:14px;animation:spin .8s linear infinite;display:inline-block}.submit-button{display:inline-flex;align-items:center;justify-content:center;gap:.6em;padding:.75rem 1.25rem;font-size:.95rem;font-weight:600;border-radius:var(--border-radius-medium);border:1px solid transparent;cursor:pointer;transition:all var(--transition-speed-medium) ease;white-space:nowrap;line-height:1.2;background-color:var(--accent-primary);color:#fff;border-color:var(--accent-primary);box-shadow:0 4px 10px -2px var(--shadow-color-accent)}.submit-button:hover:not(:disabled){background-color:var(--accent-primary-hover);border-color:var(--accent-primary-hover);transform:translateY(-2px);box-shadow:0 6px 12px -2px var(--shadow-color-accent)}.submit-button:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.submit-button svg{width:1.2em;height:1.2em}@media (max-width: 1023px){.dashboard-header{flex-direction:column;gap:.75rem;align-items:stretch;text-align:center}.dashboard-header h2{margin-bottom:.5rem}.refresh-jobs-button{width:auto;align-self:center}}@media (max-width: 480px){#upload-form{gap:1.25rem}.file-input-label{padding:.75rem 1rem;font-size:.9rem}.progress-bar-wrapper{height:12px}.cancel-button{padding:.4rem .8rem;font-size:.8rem}.form-status{padding:.8rem 1rem;font-size:.9rem}.job-filename{font-size:.95rem}.job-status-badge{font-size:.7rem;padding:.2em .5em}.submit-button{padding:.8rem 1rem;font-size:.9rem}}:root{--background-primary: #121212;--background-secondary: #1e1e1e;--background-tertiary: #2a2a2a;--background-tertiary-hover: #383838;--text-primary: #f0f0f0;--text-secondary: #b0b0b0;--text-tertiary: #7f8c8d;--text-on-accent-disabled: #a0aec0;--accent-primary: #a855f7;--accent-primary-muted: #d9bff5;--accent-primary-hover: #9333ea;--accent-primary-glow: rgba(168, 85, 247, .25);--accent-secondary: #34d399;--accent-secondary-disabled: #2d6b56;--success-bg: rgba(16, 185, 129, .1);--success-text: var(--accent-secondary);--success-border: rgba(16, 185, 129, .4);--error-bg: rgba(239, 68, 68, .1);--error-text: #ef4444;--error-border: rgba(239, 68, 68, .4);--cancel-red-bg: #452328;--cancel-red-bg-hover: #5e2e35;--cancel-red-text: #fca5a5;--font-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--border-radius-small: 8px;--border-radius-medium: 12px;--border-radius-large: 16px;--header-border-radius: var(--border-radius-large);--transition-speed-fast: .15s;--transition-speed-medium: .25s;--transition-speed-slow: .4s;--content-max-width: 780px;--layout-max-width: 1280px;--shadow-color: rgba(0, 0, 0, .3);--shadow-color-accent: rgba(168, 85, 247, .2);--shadow-elevation-low: 0 2px 4px var(--shadow-color);--shadow-elevation-medium: 0 5px 15px var(--shadow-color);--shadow-elevation-high: 0 10px 30px var(--shadow-color);--glow-ring: 0 0 0 3.5px var(--accent-primary-glow)}*{box-sizing:border-box;margin:0;padding:0}html{height:100%;scroll-behavior:smooth}body{min-height:100%;display:flex;flex-direction:column;font-family:var(--font-sans);line-height:1.6;background:var(--background-primary);color:var(--text-primary);font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}#root{width:100%;flex-grow:1;display:flex;flex-direction:column}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.beta-banner{position:fixed;top:25px;right:-45px;z-index:9999;width:150px;transform:rotate(45deg);background-color:#ef4444;color:#fff;box-shadow:0 4px 10px #0000004d;text-align:center;font-weight:700;font-size:.8rem;letter-spacing:1px;text-transform:uppercase;text-decoration:none;line-height:2.5;cursor:pointer;transition:background-color .2s ease}.beta-banner:hover{background-color:#dc2626}.beta-banner span{display:block}@media (max-width: 480px){.beta-banner{top:15px;right:-50px;width:140px;font-size:.7rem;line-height:2.2}}
