#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""方案A 修订：补回 底图 + 顶栏胶囊 + 落款卡，风格仍为极简信息图。
   原方案A 备份为 RTQ_方案A_极简信息图_v1.png
"""
import os, re, shutil
BASE = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
f = os.path.join(BASE, '脚本/gen_rtq_two_variants.py')
t = open(f, encoding='utf-8').read()
n = 0

# ① 增加底图变量
t = t.replace(
    "QR_TRIAL_IMG = qr(TRIAL, 200)",
    "QR_TRIAL_IMG = qr(TRIAL, 200)\nBG = b64(os.path.join(DIR, 'bg', '海报底图_竖版拼接.png'))", 1)
n += 1

# ② CSS_A：底图淡洗 + 顶栏胶囊 + 落款卡
t = t.replace(
    ".poster{width:1080px;background:#FBFCFE;padding:40px 60px 90px;position:relative}",
    ".poster{width:1080px;padding:34px 40px 90px;position:relative;background:#FBFCFE url(%BG%) center/cover no-repeat}\n"
    ".veil{position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(255,255,255,.90) 0%,rgba(255,255,255,.83) 42%,rgba(255,255,255,.92) 100%)}\n"
    ".inner{position:relative;z-index:2}\n"
    ".topbar{height:92px;border-radius:22px;background:rgba(255,255,255,.86);backdrop-filter:blur(16px);\n"
    "  -webkit-backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:space-between;\n"
    "  padding:0 26px;border:1px solid rgba(224,232,244,.9);box-shadow:0 8px 24px rgba(16,40,90,.08);margin-bottom:26px}\n"
    ".topbar img{height:46px;display:block}\n"
    ".ttag{font-size:30px;font-weight:800;color:#1852B6;border:2px solid rgba(24,82,182,.35);\n"
    "  border-radius:999px;padding:5px 20px;letter-spacing:.5px}", 1)
n += 1

t = t.replace(
    ".tag{display:inline-flex;align-items:center;gap:10px;font-size:30px;font-weight:700;color:#1852B6;\n"
    "  letter-spacing:2px;border-bottom:3px solid #1852B6;padding-bottom:6px}",
    ".tag{display:none}", 1)
n += 1

t = t.replace(
    ".foot{margin-top:44px;text-align:center}",
    ".foot{margin-top:36px;text-align:center;background:rgba(255,255,255,.92);border:1px solid #E4E9F2;\n"
    "  border-radius:24px;padding:26px 24px;box-shadow:0 10px 30px rgba(16,40,90,.07);\n"
    "  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}", 1)
n += 1

# ③ build()：A 版插入顶栏与淡洗层；CSS 注入底图
t = t.replace(
    "    return fill('''<!DOCTYPE html><html><head><meta charset=\"utf-8\"><style>%s</style></head>\n"
    "<body><div class=\"poster\">%s<div class=\"inner\">",
    "    css = css.replace('%BG%', BG) if variant == 'A' else css\n"
    "    veil = '<div class=\"veil\"></div>' if variant == 'A' else ''\n"
    "    if variant == 'A':\n"
    "        top = ('<div class=\"topbar\"><img src=\"%s\"><div class=\"ttag\">实验加速季 · 科研产品</div></div>'\n"
    "               % LOGO_U)\n"
    "    return fill('''<!DOCTYPE html><html><head><meta charset=\"utf-8\"><style>%s</style></head>\n"
    "<body><div class=\"poster\">%s%s<div class=\"inner\">", 1)
n += 1

t = t.replace(
    "        css, glow, top, h1,",
    "        css, glow, veil, top, h1,", 1)
n += 1

open(f, 'w', encoding='utf-8').write(t)
print('  ✅ 方案A 修订补丁应用 %d 处' % n)

# ④ 备份原方案A
d = os.path.join(BASE, '对外物料/科研朋友圈_20261009')
src = os.path.join(d, 'RTQ_方案A_极简信息图.png')
if os.path.exists(src):
    shutil.copy2(src, os.path.join(d, 'RTQ_方案A_极简信息图_v1.png'))
    print('  ✅ 原方案A 已备份为 RTQ_方案A_极简信息图_v1.png')
