@import"https://fonts.googleapis.com/css2?family=Nunito:wght@400;700;800&family=DM+Sans:wght@400;500;600&display=swap";*,*:before,*:after{box-sizing:border-box}:root{--color-primary-start: #f472b6;--color-primary-end: #c084fc;--color-accent: #06b6d4;--color-bg: #fdf2f8;--color-surface: #ffffff;--color-text: #1e293b;--color-text-muted: #64748b;--color-border-dashed: #f0abfc;--color-progress-track: #fce7f3;--color-error: #e11d48;--color-error-bg: #fff1f2;--font-heading: "Nunito", sans-serif;--font-body: "DM Sans", sans-serif}body{margin:0;background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:15px;line-height:1.5;min-height:100vh}h1,h2,h3{font-family:var(--font-heading);letter-spacing:-.02em;margin:0 0 .5rem}a{color:var(--color-accent);text-decoration:underline}a:hover{opacity:.8}.app-header{background:linear-gradient(135deg,var(--color-primary-start),var(--color-primary-end));padding:24px;text-align:center;border-radius:20px;margin:24px 24px 0}.app-header h1{color:#fff;font-size:26px;font-weight:800;margin:0}.app-header p{color:#ffffffe0;font-size:14px;margin:4px 0 0}.mode-toggle{display:inline-flex;background:#fff3;border-radius:999px;padding:4px;margin-top:14px;gap:2px}.mode-toggle button{border:none;background:transparent;color:#ffffffd9;font-family:var(--font-body);font-weight:700;font-size:14px;padding:8px 20px;border-radius:999px;cursor:pointer;transition:background-color .15s,color .15s}.mode-toggle button:hover:not([aria-selected=true]){color:#fff;background:#ffffff14}.mode-toggle button[aria-selected=true]{background:#fff;color:var(--color-primary-end);box-shadow:0 2px 6px #0000001f;cursor:default}.mode-toggle button:focus-visible{outline:2px solid #ffffff;outline-offset:2px}.content-card{background:var(--color-bg);border-radius:20px;overflow:hidden}.content-body{padding:24px}.btn{display:inline-block;padding:12px 28px;font-family:var(--font-body);font-weight:600;font-size:15px;border:none;border-radius:50px;cursor:pointer;transition:opacity .15s,transform .1s;text-decoration:none;text-align:center}.btn:hover{opacity:.9;transform:translateY(-1px)}.btn:active{transform:translateY(1px)}.btn-primary{background:linear-gradient(135deg,var(--color-primary-start),var(--color-primary-end));color:#fff}.btn-secondary{background-color:var(--color-accent);color:#fff}.btn-ghost{background-color:var(--color-surface);color:var(--color-text)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.upload-zone{border:2px dashed var(--color-border-dashed);border-radius:16px;padding:36px 24px;text-align:center;cursor:pointer;transition:background-color .15s;background-color:var(--color-surface)}.upload-zone:hover,.upload-zone.drag-over{background-color:var(--color-progress-track)}.upload-icon{width:60px;height:60px;background:linear-gradient(135deg,var(--color-primary-start),var(--color-primary-end));border-radius:50%;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;font-size:26px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-spinner{display:inline-block;width:48px;height:48px;border:4px solid var(--color-progress-track);border-top-color:var(--color-primary-start);border-radius:50%;animation:spin .8s linear infinite}.progress-bar-track{width:100%;height:10px;background:var(--color-progress-track);border-radius:8px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(135deg,var(--color-primary-start),var(--color-primary-end));border-radius:8px;transition:width .2s ease}.praise-card{background:linear-gradient(135deg,var(--color-primary-start),var(--color-primary-end));border-radius:16px;padding:24px}.praise-card h3{color:#fff;font-size:19px;font-weight:700;margin-bottom:10px}.praise-card p{color:#ffffffeb;font-size:15px;line-height:1.65;margin:0}.image-frame{background:var(--color-surface);border-radius:16px;padding:8px;margin-bottom:16px}.image-frame img{display:block;width:100%;border-radius:12px}.error-message{color:var(--color-error);font-weight:500;font-size:14px;border-radius:12px;padding:14px 18px;background:var(--color-error-bg);text-align:center}.ad-banner-wrapper{background:#fff9;border-radius:12px;border:1px dashed #e9d5ff;margin-top:16px;padding:4px;color:#a78bfa}.site-shell{display:flex;flex-direction:column;min-height:100vh}.site-shell main{flex:1}.site-footer{margin-top:32px;padding:24px;text-align:center;border-top:1px solid rgba(0,0,0,.06);color:var(--color-text-muted);font-size:13px}.site-footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;margin-bottom:12px}.site-footer-links a{color:var(--color-text);text-decoration:none;font-weight:600}.site-footer-links a:hover{color:var(--color-primary-end);text-decoration:underline}.site-footer-meta{margin:0;line-height:1.5}.prose-card{background:var(--color-surface);border-radius:20px;padding:32px;box-shadow:0 4px 24px #a855f70f}.prose-header{border-bottom:1px solid rgba(0,0,0,.06);padding-bottom:20px;margin-bottom:24px}.back-link{display:inline-block;font-size:13px;font-weight:600;color:var(--color-text-muted);text-decoration:none;margin-bottom:14px}.back-link:hover{color:var(--color-primary-end);text-decoration:underline}.prose-header h1{font-size:28px;font-weight:800;margin:0 0 8px}.prose-lead{font-size:16px;color:var(--color-text-muted);margin:0}.prose-body h2{font-size:20px;font-weight:700;margin:28px 0 10px}.prose-body h3{font-size:17px;font-weight:700;margin:20px 0 6px}.prose-body p,.prose-body li{font-size:15px;line-height:1.65}.prose-body ul,.prose-body ol{padding-left:22px}.prose-body li{margin-bottom:6px}.prose-body code{background:var(--color-progress-track);padding:1px 6px;border-radius:4px;font-size:13px}.steps{list-style:none;padding:0;margin:0 0 16px}.steps>li{padding:16px 18px;border-radius:14px;background:var(--color-bg);margin-bottom:12px}.steps>li h3{margin-top:0}.faq-item{padding:16px 0;border-bottom:1px solid rgba(0,0,0,.06)}.faq-item:last-child{border-bottom:none}.faq-item h3{font-size:16px;font-weight:700;margin:0 0 6px}.faq-item p{margin:0}.mode-note{margin:16px 0 0;padding:12px 16px;background:var(--color-progress-track);border-radius:12px;color:var(--color-text);font-size:13px;line-height:1.55}.home-intro{margin-top:32px}.home-intro h2{font-size:18px;font-weight:700;margin:24px 0 8px}.home-intro p,.home-intro li{font-size:14px;line-height:1.6;color:var(--color-text)}.home-intro ul{padding-left:20px;margin:0}#root{max-width:860px;margin:0 auto;padding:2rem 1rem}
