:root{--bg: var(--tg-theme-bg-color, #0f1115);--fg: var(--tg-theme-text-color, #f2f4f8);--hint: var(--tg-theme-hint-color, #8b93a1);--btn: var(--tg-theme-button-color, #2f7ef7);--btn-fg: var(--tg-theme-button-text-color, #ffffff);--card: var(--tg-theme-secondary-bg-color, #171a21)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.card{max-width:560px;margin:0 auto;padding:20px 16px 40px;display:flex;flex-direction:column;gap:18px}header h1{margin:0;font-size:1.6rem}header .sub{margin:4px 0 0;color:var(--hint)}.upload{display:flex;flex-direction:column;align-items:center;gap:10px;padding:36px 16px;border:2px dashed var(--hint);border-radius:16px;cursor:pointer;text-align:center}.upload .big{font-size:2.4rem}.hint{color:var(--hint);font-size:.85rem;text-align:center}.btn{display:block;width:100%;padding:14px 16px;margin:8px 0;border:none;border-radius:12px;font-size:1rem;font-weight:600;text-align:center;text-decoration:none;cursor:pointer}.btn.primary{background:var(--btn);color:var(--btn-fg)}.btn.ghost{background:var(--card);color:var(--fg)}.btn.buy{background:#ffc233;color:#1a1a1a}.btn.contact{background:var(--card);color:var(--fg)}.banner{font-weight:700;font-size:1.1rem}.preview,.summary{background:var(--card);border-radius:12px;padding:12px;font-size:.85rem;white-space:pre-wrap;word-break:break-word;max-height:320px;overflow:auto}.spinner{width:34px;height:34px;margin:10px auto;border:4px solid var(--hint);border-top-color:var(--btn);border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error{background:#5a1d1d;color:#fff;border-radius:10px;padding:12px;font-size:.9rem}.cta{display:flex;flex-direction:column;gap:8px;margin-top:8px}
