/* Real, editable text. The existing banner image and upload route are unchanged. */
@font-face{font-family:BannerBrush;src:url('fonts/MaShanZheng-Regular.ttf') format('truetype');font-display:swap;font-weight:400 900}
@font-face{font-family:BannerButter;src:url('fonts/ZCOOLQingKeHuangYou-Regular.woff2') format('woff2');font-display:swap;font-weight:400}
@font-face{font-family:BannerChill;src:url('fonts/ChillRoundGothic-Medium.woff2') format('woff2');font-display:swap;font-weight:500}
@font-face{font-family:BannerSmiley;src:url('fonts/SmileySans-Oblique.woff2') format('woff2');font-display:swap;font-weight:400 900}
.banner{position:relative}
.bt-stage{position:absolute;inset:12px;z-index:2;pointer-events:none;overflow:hidden;--bt-scale:1;--bt-text-width:76%;--bt-text-x:50%;--bt-text-y:50%;--bt-shift-x:-50%;--bt-shift-y:-50%;--bt-title-size:48px;--bt-subtitle-size:16px;--bt-badge-size:12px;--bt-title-color:#fff6cc;--bt-subtitle-color:#fffef5;--bt-accent-color:#82512e;box-sizing:border-box}
.bt-stage[hidden],.bt-stage [hidden]{display:none!important}
.bt-content{position:absolute;left:var(--bt-text-x);top:var(--bt-text-y);transform:translate(var(--bt-shift-x),var(--bt-shift-y));width:var(--bt-text-width);max-width:100%;padding:calc(10px * var(--bt-scale)) calc(16px * var(--bt-scale));box-sizing:border-box;text-align:center;overflow-wrap:anywhere;color:var(--bt-subtitle-color);line-height:1.35}
.bt-stage[data-bt-align=left] .bt-content{text-align:left}.bt-stage[data-bt-align=right] .bt-content{text-align:right}
.bt-title{font-family:'Microsoft YaHei','PingFang SC',sans-serif;font-size:calc(var(--bt-title-size) * var(--bt-scale));font-weight:400;line-height:1.22;white-space:pre-line;color:var(--bt-title-color);paint-order:stroke fill;letter-spacing:.025em;text-shadow:0 3px 0 var(--bt-accent-color),0 5px 10px rgba(0,0,0,.22);-webkit-text-stroke:calc(1.5px * var(--bt-scale)) var(--bt-accent-color)}
.bt-stage[data-bt-font=brush] .bt-title{font-family:BannerBrush,KaiTi,serif}
.bt-stage[data-bt-font=huangyou] .bt-title{font-family:BannerButter,'Microsoft YaHei',sans-serif}
.bt-stage[data-bt-font=sans] .bt-title{font-family:'Microsoft YaHei','PingFang SC',sans-serif;font-weight:900;letter-spacing:.02em}
.bt-stage[data-bt-font=chill] .bt-title{font-family:BannerChill,'Microsoft YaHei',sans-serif;font-weight:500;letter-spacing:.02em}
.bt-stage[data-bt-font=smiley] .bt-title{font-family:BannerSmiley,'Microsoft YaHei',sans-serif;font-weight:700;letter-spacing:.02em}
.bt-subtitle{font-family:'Microsoft YaHei','PingFang SC',sans-serif;font-size:calc(var(--bt-subtitle-size) * var(--bt-scale));line-height:1.55;white-space:pre-line;margin-top:calc(7px * var(--bt-scale));color:var(--bt-subtitle-color);text-shadow:0 1px 3px rgba(0,0,0,.55)}
/* All text styles stay transparent over the separately configured banner image. */
.bt-badge{font-family:'Microsoft YaHei','PingFang SC',sans-serif;font-size:calc(var(--bt-badge-size) * var(--bt-scale));font-weight:700;display:inline-block;max-width:100%;padding:calc(3px * var(--bt-scale)) calc(12px * var(--bt-scale));margin-bottom:calc(7px * var(--bt-scale));line-height:1.4;letter-spacing:.12em;color:var(--bt-subtitle-color);text-shadow:0 1px 3px rgba(0,0,0,.55)}
.bt-stage[data-bt-style=cream] .bt-title{-webkit-text-stroke:calc(4px * var(--bt-scale)) #fffdf4;filter:drop-shadow(0 3px 0 var(--bt-accent-color));text-shadow:0 2px 0 var(--bt-accent-color)}
.bt-stage[data-bt-style=sky] .bt-title{-webkit-text-stroke:calc(2px * var(--bt-scale)) var(--bt-accent-color);text-shadow:0 4px 0 var(--bt-accent-color),0 9px 16px rgba(20,100,150,.22)}
.bt-stage[data-bt-style=sakura] .bt-title{letter-spacing:.08em;-webkit-text-stroke:0;text-shadow:0 2px 0 var(--bt-accent-color),0 3px 12px var(--bt-accent-color)}
.bt-stage[data-bt-style=sakura] .bt-badge{letter-spacing:.22em}
.bt-stage[data-bt-style=grove] .bt-badge{padding:0;letter-spacing:.2em}
.bt-stage[data-bt-style=sea] .bt-title{-webkit-text-stroke:0;text-shadow:0 2px 2px var(--bt-accent-color)}
.bt-stage[data-bt-style=sunset] .bt-title{-webkit-text-stroke:calc(1px * var(--bt-scale)) var(--bt-accent-color);text-shadow:1px 1px 0 var(--bt-accent-color),2px 2px 0 var(--bt-accent-color),3px 3px 0 var(--bt-accent-color),4px 4px 0 var(--bt-accent-color),0 7px 12px rgba(101,47,12,.25)}
.bt-stage[data-bt-style=night] .bt-title{-webkit-text-stroke:calc(1px * var(--bt-scale)) #fff;text-shadow:0 0 4px var(--bt-accent-color),0 0 12px var(--bt-accent-color),0 0 25px var(--bt-accent-color)}
.bt-stage[data-bt-style=night] .bt-badge{text-shadow:0 0 10px var(--bt-accent-color)}
.bt-stage[data-bt-style=candy] .bt-title{-webkit-text-stroke:calc(2px * var(--bt-scale)) var(--bt-accent-color);text-shadow:0 4px 0 var(--bt-accent-color),0 -1px 0 white}
.bt-stage[data-bt-style=toy] .bt-title{-webkit-text-stroke:calc(2px * var(--bt-scale)) var(--bt-accent-color);text-shadow:3px 4px 0 var(--bt-accent-color);letter-spacing:.05em}
.bt-stage[data-bt-style=toy] .bt-badge{color:var(--bt-accent-color);text-shadow:1px 1px 0 var(--bt-title-color)}
@media(max-width:600px){.bt-stage{inset:8px}}
