@keyframes svelte-1t8mv3o-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.composer-backdrop.svelte-1t8mv3o{position:fixed;inset:0;background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1040;padding:1rem}.composer-modal.svelte-1t8mv3o{background:var(--bg-card);border-radius:1.5rem;border:1px solid var(--border);width:100%;max-width:720px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.modal-header.svelte-1t8mv3o{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border);flex-shrink:0}.modal-header.svelte-1t8mv3o h2:where(.svelte-1t8mv3o){margin:0;font-size:1.125rem;font-weight:600}.close-btn.svelte-1t8mv3o{background:none;border:none;cursor:pointer;padding:6px;border-radius:.5rem;color:var(--text-secondary)}.close-btn.svelte-1t8mv3o:hover{background:var(--bg-hover);color:var(--text-primary)}.close-btn.svelte-1t8mv3o svg:where(.svelte-1t8mv3o){width:22px;height:22px}.modal-body.svelte-1t8mv3o{padding:1rem 1.25rem;overflow-y:auto;flex-grow:1}.create-form.svelte-1t8mv3o{display:flex;flex-direction:column;height:100%}.form-group.svelte-1t8mv3o{margin-bottom:1rem}.form-row.svelte-1t8mv3o{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 479px){.form-row.svelte-1t8mv3o{grid-template-columns:1fr}}.form-label.svelte-1t8mv3o{display:block;font-weight:600;color:var(--text-primary);margin-bottom:.5rem;font-size:.875rem}.form-input.svelte-1t8mv3o,.form-textarea.svelte-1t8mv3o,.form-select.svelte-1t8mv3o{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:.75rem;background:var(--bg-primary);color:var(--text-primary);font-size:1rem;transition:all .25s ease}.form-input.svelte-1t8mv3o:focus,.form-textarea.svelte-1t8mv3o:focus,.form-select.svelte-1t8mv3o:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-alpha)}.form-input.error.svelte-1t8mv3o,.form-textarea.error.svelte-1t8mv3o{border-color:var(--error)}.form-textarea.svelte-1t8mv3o{resize:vertical;min-height:80px}.form-hint.svelte-1t8mv3o{font-size:.75rem;color:var(--text-secondary);margin-top:.25rem}.error-message.svelte-1t8mv3o{color:var(--error);font-size:.875rem;margin-top:.25rem}.topic-title.svelte-1t8mv3o{font-size:1.25rem;font-weight:700;padding:.5rem 0;border:none;border-radius:0;background:transparent}.topic-title.svelte-1t8mv3o:focus{box-shadow:none;border-bottom:2px solid var(--primary)}.topic-editor.svelte-1t8mv3o{min-height:150px;font-size:1rem;line-height:1.6;border:none;background:transparent;resize:none;padding:.5rem 0}.topic-editor.svelte-1t8mv3o:focus{box-shadow:none}.type-specific-section.svelte-1t8mv3o{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border)}.type-specific-section.svelte-1t8mv3o h3:where(.svelte-1t8mv3o){font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem}.advanced-options.svelte-1t8mv3o{border-top:1px solid var(--border-light);padding-top:1rem;margin-top:auto}.file-upload-area.svelte-1t8mv3o{border:2px dashed var(--border);border-radius:.75rem;padding:1.25rem;text-align:center;transition:all .25s ease}.file-upload-area.svelte-1t8mv3o:hover{border-color:var(--border-hover);background:var(--bg-hover)}.file-input.svelte-1t8mv3o{display:none}.upload-button.svelte-1t8mv3o{display:flex;align-items:center;justify-content:center;gap:.5rem;background:var(--primary);color:#fff;border:none;padding:.75rem 1rem;border-radius:.75rem;cursor:pointer;font-weight:500;transition:all .25s ease}.upload-button.svelte-1t8mv3o:hover{background:var(--primary-dark)}.upload-button.svelte-1t8mv3o svg:where(.svelte-1t8mv3o){width:20px;height:20px}.upload-hint.svelte-1t8mv3o{font-size:clamp(.875rem,.8rem + .375vw,1rem);color:var(--text-secondary);margin-top:.5rem}.image-previews.svelte-1t8mv3o{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.75rem;margin-top:.75rem}.preview-image.svelte-1t8mv3o{position:relative;aspect-ratio:1;border-radius:.75rem;overflow:hidden;border:2px solid var(--border)}.preview-image.svelte-1t8mv3o img:where(.svelte-1t8mv3o){width:100%;height:100%;object-fit:cover}.preview-image.svelte-1t8mv3o .remove-button:where(.svelte-1t8mv3o){position:absolute;top:.25rem;right:.25rem;width:22px;height:22px;background:#000c;color:#fff;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;line-height:1}.preview-image.svelte-1t8mv3o .main-badge:where(.svelte-1t8mv3o){position:absolute;bottom:.25rem;left:.25rem;background:var(--primary);color:#fff;padding:2px .5rem;border-radius:.375rem;font-size:.7rem;font-weight:500}.submit-area.svelte-1t8mv3o{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem}.other-types.svelte-1t8mv3o{display:flex;align-items:center;gap:.75rem;font-size:.875rem;color:var(--text-secondary)}.other-type-btn.svelte-1t8mv3o{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);padding:.5rem .75rem;border-radius:.5rem;cursor:pointer;transition:all .25s ease}.other-type-btn.svelte-1t8mv3o:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-hover)}.submit-error.svelte-1t8mv3o{text-align:right;width:100%;order:-1}.button-group.svelte-1t8mv3o{display:flex;align-items:center;justify-content:flex-end;gap:.75rem}.cancel-button.svelte-1t8mv3o,.submit-button.svelte-1t8mv3o{padding:.75rem 1.25rem;border-radius:.75rem;font-weight:500;cursor:pointer;transition:all .25s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.cancel-button.svelte-1t8mv3o{background:none;border:1px solid var(--border);color:var(--text-secondary)}.cancel-button.svelte-1t8mv3o:hover{background:var(--bg-hover);border-color:var(--border-hover)}.submit-button.svelte-1t8mv3o{background:var(--primary);border:none;color:#fff}.submit-button.svelte-1t8mv3o:hover:not(:disabled){background:var(--primary-dark)}.submit-button.svelte-1t8mv3o:disabled{opacity:.6;cursor:not-allowed}.spinner.svelte-1t8mv3o{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:svelte-1t8mv3o-spin 1s linear infinite}@keyframes svelte-1t8mv3o-spin{to{transform:rotate(360deg)}}
