*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--tg-theme-bg-color, #fafafa);color:var(--tg-theme-text-color, #1a1a1a);min-height:100vh;padding:0;margin:0;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{max-width:600px;margin:0 auto;padding:16px}header{text-align:center;margin-bottom:32px;padding-bottom:20px;border-bottom:1px solid var(--tg-theme-hint-color, #e5e5e5)}h1{font-size:26px;font-weight:700;margin-bottom:16px;color:var(--tg-theme-text-color, #1a1a1a);letter-spacing:-.5px}.credits-display{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:var(--tg-theme-secondary-bg-color, #f5f5f5);border-radius:24px;font-weight:600;font-size:15px;border:1px solid var(--tg-theme-hint-color, #e0e0e0)}.credits-label{color:var(--tg-theme-hint-color, #666);font-weight:500}.credits-value{color:var(--tg-theme-text-color, #1a1a1a);font-weight:700;font-size:16px}.pro-badge{background:linear-gradient(135deg,gold,#ffed4e);color:#000;font-weight:700;font-size:12px;padding:4px 10px;border-radius:12px;letter-spacing:.5px;box-shadow:0 2px 8px #ffd7004d}.upload-section{margin-bottom:24px}.upload-area{border:2px dashed var(--tg-theme-hint-color, #d0d0d0);border-radius:16px;padding:48px 24px;text-align:center;cursor:pointer;transition:all .25s ease;background:var(--tg-theme-secondary-bg-color, #fafafa)}.upload-area:hover{border-color:var(--tg-theme-button-color, #0066cc);background:var(--tg-theme-secondary-bg-color, #f5f5f5);transform:translateY(-2px)}.upload-label{cursor:pointer;display:block}.upload-icon{width:56px;height:56px;margin:0 auto 16px;color:var(--tg-theme-hint-color, #999);transition:color .25s ease}.upload-area:hover .upload-icon{color:var(--tg-theme-button-color, #0066cc)}.upload-text{font-size:16px;font-weight:600;color:var(--tg-theme-text-color, #1a1a1a);margin-bottom:4px}.upload-hint{font-size:14px;color:var(--tg-theme-hint-color, #999);margin-top:4px;font-weight:400}.image-preview{margin-top:20px;text-align:center}.image-preview img{max-width:100%;max-height:400px;border-radius:8px;box-shadow:0 4px 12px #0000001a}.actions-section{margin-bottom:24px}.btn{width:100%;padding:16px 24px;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease;margin-bottom:12px;font-family:inherit;letter-spacing:-.2px}.btn-primary{background:var(--tg-theme-button-color, #0066cc);color:var(--tg-theme-button-text-color, #ffffff);box-shadow:0 2px 8px #0066cc26}.btn-primary:hover:not(:disabled){background:var(--tg-theme-button-color, #0052a3);box-shadow:0 4px 12px #0066cc40;transform:translateY(-2px)}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 4px #0066cc26}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-secondary{background:var(--tg-theme-secondary-bg-color, #f5f5f5);color:var(--tg-theme-text-color, #1a1a1a);border:1px solid var(--tg-theme-hint-color, #e0e0e0)}.btn-secondary:hover{background:var(--tg-theme-secondary-bg-color, #ebebeb);transform:translateY(-2px);box-shadow:0 2px 8px #00000014}.btn-secondary:active{transform:translateY(0);box-shadow:0 1px 4px #0000000f}.btn-outline{background:transparent;color:var(--tg-theme-text-color, #1a1a1a);border:1.5px solid var(--tg-theme-hint-color, #d0d0d0)}.btn-outline:hover{background:var(--tg-theme-secondary-bg-color, #f5f5f5);border-color:var(--tg-theme-text-color, #1a1a1a);transform:translateY(-2px);box-shadow:0 2px 8px #00000014}.btn-outline:active{transform:translateY(0);box-shadow:0 1px 4px #0000000f}.btn-success{background:#10b981;color:#fff;box-shadow:0 2px 8px #10b98126}.btn-success:hover{background:#059669;box-shadow:0 4px 12px #10b98140;transform:translateY(-2px)}.btn-success:active{transform:translateY(0);box-shadow:0 1px 4px #10b98126}.btn-pro{background:linear-gradient(135deg,gold,#ffed4e);color:#000;font-weight:700;box-shadow:0 2px 12px #ffd7004d;border:2px solid #ffc700}.btn-pro:hover:not(:disabled){background:linear-gradient(135deg,#ffed4e,gold);box-shadow:0 4px 16px #ffd70080;transform:translateY(-2px)}.btn-pro:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 8px #ffd7004d}.btn-pro:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-pro.loading:after{border-top-color:#000}.credit-cost,.credit-reward{opacity:.7;font-weight:500;font-size:14px}.processed-image{margin-top:24px;text-align:center}.processed-image h3{margin-bottom:20px;color:var(--tg-theme-text-color, #1a1a1a);font-size:18px;font-weight:700;letter-spacing:-.3px}#result-canvas{max-width:100%;border-radius:8px;box-shadow:0 4px 12px #0000001a;margin-bottom:16px;display:block;margin-left:auto;margin-right:auto}.earn-credits-section{background:var(--tg-theme-secondary-bg-color, #fafafa);padding:24px;border-radius:16px;border:1px solid var(--tg-theme-hint-color, #e5e5e5)}.earn-credits-section h2{font-size:18px;font-weight:700;margin-bottom:16px;text-align:center;color:var(--tg-theme-text-color, #1a1a1a);letter-spacing:-.3px}.credit-options{display:flex;flex-direction:column;gap:12px}.credit-info{text-align:center;margin-top:12px;color:var(--tg-theme-hint-color, #666);font-size:13px;font-weight:500}.loading-overlay{position:fixed;inset:0;background:#000000d9;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000}.loading-content{display:flex;flex-direction:column;align-items:center;gap:16px;padding:20px}.spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top:4px solid #ffffff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-overlay p{color:#fff;font-size:16px;margin:0}.progress-container{width:200px;height:6px;background:#fff3;border-radius:3px;overflow:hidden}.progress-bar{height:100%;width:0%;background:linear-gradient(90deg,#3390ec,#4caf50);border-radius:3px;transition:width .3s ease}.progress-hint{font-size:13px!important;opacity:.7}.result-buttons{display:flex;flex-direction:column;gap:10px;width:100%}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn.loading{position:relative;color:transparent!important}.btn.loading:after{content:"";position:absolute;width:20px;height:20px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:spin .8s linear infinite;left:50%;top:50%;margin-left:-10px;margin-top:-10px}.btn-secondary.loading:after,.btn-outline.loading:after{border-top-color:var(--tg-theme-text-color, #1a1a1a)}.btn-primary.loading:after,.btn-success.loading:after{border-top-color:#fff}@media(max-width:480px){.container{padding:12px}h1{font-size:20px}.btn{padding:12px 20px;font-size:14px}}
