.bricolage-heading,.page-header h2,.form-section-header h3,.modal-title,.bold-title{font-family:"Bricolage Grotesque",sans-serif!important;font-weight:800}.form-container-wide{max-width:800px;margin:0 auto;padding:0 1rem;position:relative;color:var(--color-text-primary)}.top-left-back{}.bold-title{font-size:2.5rem;color:var(--color-text-primary);margin-bottom:2rem}.page-header{border-bottom:3px solid var(--color-border-strong);margin-bottom:3rem}.quiz-page .page-header{padding:0;border:none;margin-bottom:30px;margin-top:3rem;display:flex;justify-content:space-between;align-items:center}.grayscale-card{padding:2rem;margin-bottom:2rem}.grayscale-input{}.step-circle-dark{background:var(--color-text-primary)!important;color:var(--color-bg-page)!important;font-weight:800;border:2px solid var(--color-text-primary);display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;margin-right:12px}.quiz-page .form-control{background-color:var(--color-input-bg);border:3px solid var(--color-input-border)!important;border-radius:8px;box-sizing:border-box;color:var(--color-text-primary);font-family:sans-serif;font-size:1rem;min-height:44px;padding:1rem;width:100%!important}.quiz-page .form-control::placeholder{color:var(--color-placeholder-text)!important;opacity:1}.centered-upload{text-align:center;border:2px dashed var(--color-border-strong);padding:2rem;border-radius:12px;background:var(--color-bg-subtle);transition:all 0.2s ease}.centered-upload:hover{background:var(--color-bg-hover);border-color:var(--color-text-primary)}.file-upload-input{display:none}.file-upload-label{cursor:pointer;background:var(--color-bg-card);color:var(--color-text-primary);border-color:var(--color-border-strong)}.file-upload-label{transition:all 0.2s ease}.file-upload-label:hover{background:var(--color-bg-hover);border-color:var(--color-accent-primary);color:var(--color-text-primary)}.file-upload-wrapper.has-file .file-upload-label{background:var(--color-bg-subtle);border-color:var(--color-accent-primary);border-width:3px}.file-upload-wrapper.has-file .file-upload-filename{color:var(--color-accent-primary)!important;background:var(--color-bg-subtle);padding:0.5rem;border-radius:8px;display:inline-block;border:1px solid var(--color-accent-primary-soft)}.lang-buttons{display:flex}.return-link{font-size:1.1rem;font-weight:700;text-decoration:underline;transition:color 0.2s ease;color:var(--color-text-muted)}.return-link:hover{color:var(--color-text-primary)!important}.manual-trigger{display:inline-block;padding:0.5rem 1rem;border-radius:8px;transition:all 0.2s ease;color:var(--color-text-muted)}.manual-trigger:hover{background:var(--color-bg-hover);color:var(--color-text-primary)!important}.cool-progress-scope{background:var(--color-bg-page)!important;border-radius:16px;box-shadow:8px 8px 0px var(--color-border-strong)!important;border:3px solid var(--color-border-strong)!important;color:var(--color-text-primary)}.form-actions-center{display:flex;justify-content:center;width:100%}.form-description{color:var(--color-text-secondary);margin-bottom:1rem}.option-input-container{display:flex;align-items:center;gap:10px;margin-bottom:10px}.custom-radio{display:inline-block;width:20px;height:20px;border:2px solid var(--color-border-strong);border-radius:50%;position:relative;cursor:pointer}input[type="radio"]:checked + .custom-radio{border-color:var(--color-accent-primary)}input[type="radio"]:checked + .custom-radio::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:10px;height:10px;background:var(--color-accent-primary);border-radius:50%}input[type="radio"]{display:none}.custom-flex-header{display:flex!important;flex-direction:row!important;align-items:center;justify-content:flex-start;gap:1rem;border-bottom:3px solid var(--color-border-strong);padding-bottom:1.5rem;margin-bottom:3rem}.header-main-title{margin:0;padding:0;font-size:2rem;border:none;flex-grow:1;text-align:center;padding-right:100px;color:var(--color-text-primary)}.ai-dropzone{position:relative;overflow:hidden;border:2px dashed var(--color-border-strong);background-color:var(--color-bg-subtle);border-radius:12px;color:var(--color-text-secondary);transition:all 0.4s cubic-bezier(0.16,1,0.3,1);cursor:pointer;display:block;text-align:center;z-index:1}.ai-dropzone::before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--color-border-strong) 1px,transparent 1px),linear-gradient(90deg,var(--color-border-strong) 1px,transparent 1px);background-size:20px 20px;background-position:center center;opacity:0;z-index:-2;transition:opacity 0.5s ease-in-out,transform 0.5s ease;transform:scale(0.95)}.ai-dropzone::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,transparent 30%,var(--color-bg-card) 90%);opacity:0;z-index:-1;transition:opacity 0.5s ease}.ai-dropzone-content{position:relative;z-index:2}.ai-dropzone .ai-icon{color:var(--color-text-secondary);transition:all 0.5s cubic-bezier(0.16,1,0.3,1)}.ai-dropzone .ai-text{color:var(--color-text-primary);transition:all 0.4s ease}.ai-scanner-line{position:absolute;left:0;right:0;height:4px;background:var(--color-accent-primary);box-shadow:0 0 20px 8px var(--color-accent-primary-soft);top:-20px;opacity:0;z-index:3;pointer-events:none}.ai-dropzone:hover{border-color:var(--color-accent-primary);border-style:solid;box-shadow:0 8px 30px rgba(0,0,0,0.1),inset 0 0 20px var(--color-accent-primary-soft);transform:translateY(-4px) scale(1.01);background-color:transparent}.ai-dropzone:hover::before{opacity:0.15;transform:scale(1)}.ai-dropzone:hover::after{opacity:1}.ai-dropzone:hover .ai-icon{color:var(--color-accent-primary);filter:drop-shadow(0 0 12px var(--color-accent-primary-soft));transform:translateY(-8px) scale(1.15)}.ai-dropzone:hover .ai-text{letter-spacing:2px;text-shadow:0 0 10px var(--color-accent-primary-soft)}.ai-dropzone:hover .ai-scanner-line{opacity:1;animation:scan-vertical 2.5s cubic-bezier(0.4,0,0.2,1) infinite}@keyframes scan-vertical{0%{top:-20px;opacity:0}10%{opacity:1}90%{opacity:1}100%{top:calc(100% + 20px);opacity:0}}.file-upload-wrapper.has-file .ai-dropzone{border:3px solid var(--color-accent-primary);background:var(--color-bg-subtle);box-shadow:inset 0 0 15px var(--color-accent-primary-soft)}.file-upload-wrapper.has-file .ai-icon{color:var(--color-accent-primary)}.ai-dropzone{position:relative;overflow:hidden;border:2px dashed var(--color-border-strong);background-color:var(--color-bg-subtle);border-radius:12px;color:var(--color-text-secondary);transition:all 0.4s cubic-bezier(0.16,1,0.3,1);cursor:pointer;display:block;text-align:center;z-index:1}.ai-dropzone::before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--color-border-strong) 1px,transparent 1px),linear-gradient(90deg,var(--color-border-strong) 1px,transparent 1px);background-size:20px 20px;background-position:center center;opacity:0;z-index:-2;transition:opacity 0.5s ease-in-out,transform 0.5s ease;transform:scale(0.95)}.ai-dropzone::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,transparent 30%,var(--color-bg-card) 90%);opacity:0;z-index:-1;transition:opacity 0.5s ease}.ai-dropzone-content{position:relative;z-index:2}.ai-dropzone .ai-icon{color:var(--color-text-secondary);transition:all 0.5s cubic-bezier(0.16,1,0.3,1)}.ai-dropzone .ai-text{color:var(--color-text-primary);transition:all 0.4s ease}.ai-scanner-line{position:absolute;left:0;right:0;height:4px;background:var(--color-accent-primary);box-shadow:0 0 20px 8px var(--color-accent-primary-soft);top:-20px;opacity:0;z-index:3;pointer-events:none}.ai-dropzone:hover{border-color:var(--color-accent-primary);border-style:solid;box-shadow:0 8px 30px rgba(0,0,0,0.1),inset 0 0 20px var(--color-accent-primary-soft);transform:translateY(-4px) scale(1.01);background-color:transparent}.ai-dropzone:hover::before{opacity:0.15;transform:scale(1)}.ai-dropzone:hover::after{opacity:1}.ai-dropzone:hover .ai-icon{color:var(--color-accent-primary);filter:drop-shadow(0 0 12px var(--color-accent-primary-soft));transform:translateY(-8px) scale(1.15)}.ai-dropzone:hover .ai-text{letter-spacing:2px;text-shadow:0 0 10px var(--color-accent-primary-soft)}.ai-dropzone:hover .ai-scanner-line{opacity:1;animation:scan-vertical 2.5s cubic-bezier(0.4,0,0.2,1) infinite}@keyframes scan-vertical{0%{top:-20px;opacity:0}10%{opacity:1}90%{opacity:1}100%{top:calc(100% + 20px);opacity:0}}.file-upload-wrapper.has-file .ai-dropzone{border:3px solid var(--color-accent-primary);background:var(--color-bg-subtle);box-shadow:inset 0 0 15px var(--color-accent-primary-soft)}.file-upload-wrapper.has-file .ai-icon{color:var(--color-accent-primary)}