:root{--paper:#f7f5ef;--surface:#fffdf8;--ink:#171819;--muted:#74736d;--faint:#a8a299;--line:#1d1b1717;--line-strong:#1d1b1730;--gold:#8b6a23;--gold-soft:#d7c18a;--error:#a33c2f;--ok:#4f7834;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,input,textarea,select{font:inherit}button{color:inherit;cursor:pointer;background:0 0;border:0}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,#stage:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:5;background:#fffaf0cc;grid-template-columns:1fr auto;align-items:center;gap:18px;height:76px;padding:0 32px;display:grid;position:sticky;top:0}.brand{letter-spacing:2px;align-items:center;gap:12px;font-size:15px;font-weight:600;display:flex}.brand small{letter-spacing:1px;color:var(--muted);margin-top:4px;font-size:11px;font-weight:400;display:block}.seal{border:1px solid var(--gold);width:36px;height:40px;color:var(--gold);border-radius:2px;place-items:center;font:25px KaiTi,STKaiti,serif;display:grid;transform:rotate(-4deg)}.account-bar{justify-self:end}.account-bar button,.ghost,.button{border:1px solid var(--line-strong);background:var(--surface);border-radius:2px;padding:9px 14px;font-size:13px}.button{justify-content:center;align-items:center;gap:8px;transition:background .16s,border-color .16s,color .16s,opacity .16s;display:inline-flex}.button-default{background:var(--ink);border-color:var(--ink);color:#fff;font-weight:600}.button-default:hover{background:#2b2b28}.button-secondary,.button-outline{background:var(--surface);border-color:var(--line-strong);color:var(--ink)}.button-secondary:hover,.button-outline:hover,.button-ghost:hover{color:var(--ink);background:#efe8d8}.button-ghost{color:var(--ink);background:0 0;border-color:#0000}.button-size-default{padding:9px 14px}.button-size-sm{padding:7px 10px;font-size:12px}.button-size-lg{padding:12px 18px;font-size:14px}.button-size-icon{width:34px;height:34px;padding:0}.input{border:1px solid var(--line-strong);width:100%;color:var(--ink);background:#fff;border-radius:2px;outline:none;padding:12px 13px;font-size:14px;line-height:1.55}.input:focus,.input:focus-visible{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px #8b6a2317}.select-trigger{border:1px solid var(--line-strong);width:100%;height:47px;color:var(--ink);background:#fff;border-radius:2px;outline:none;justify-content:space-between;align-items:center;gap:12px;padding:0 13px;font-size:14px;line-height:1.55;display:flex}.select-trigger:focus,.select-trigger:focus-visible{border-color:var(--gold);box-shadow:0 0 0 3px #8b6a2317}.select-icon{color:var(--muted);font-size:17px;line-height:1}.select-content{z-index:30;min-width:var(--radix-select-trigger-width);border:1px solid var(--line-strong);background:var(--surface);overflow:hidden;box-shadow:0 18px 46px #1d1b1718}.select-viewport{padding:4px}.select-item{min-height:38px;color:var(--ink);cursor:pointer;border-radius:2px;outline:none;align-items:center;padding:9px 11px;font-size:13px;line-height:1.45;display:flex;position:relative}.select-item[data-highlighted]{color:var(--ink);background:#efe8d8}.select-item[data-state=checked]{color:var(--gold);font-weight:600}#user-menu{align-items:center;gap:10px;display:flex}#user-email{text-overflow:ellipsis;white-space:nowrap;max-width:220px;color:var(--muted);font-size:13px;overflow:hidden}.user-menu{position:relative}.user-email-trigger{text-align:right;display:block;background:0 0!important;border:0!important;padding:0!important}.user-email-trigger:hover{color:var(--gold)}.account-popover{border:1px solid var(--line-strong);background:var(--surface);z-index:8;width:142px;padding:4px;position:absolute;top:42px;right:68px;box-shadow:0 16px 34px #1d1b1714}.account-popover button,.account-popover a{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;padding:10px 11px;font-size:13px;display:block}.account-popover button:hover,.account-popover a:hover{background:#efe8d8}.workspace{grid-template-columns:minmax(350px,430px) minmax(0,1fr);align-items:start;gap:24px;max-width:1440px;margin:0 auto;padding:28px 32px 0;display:grid}.generator,.preview-panel,.section-panel{background:var(--surface);border:1px solid var(--line);box-shadow:inset 0 1px #fff}.generator{position:sticky;top:100px}.generator-form{gap:18px;padding:24px;display:grid}.generator-form fieldset{border:0;gap:18px;margin:0;padding:0;display:grid}.generator-form fieldset:disabled{opacity:.62}.preview-editor{border-top:1px solid var(--line);gap:14px;padding-top:18px;display:grid}.generation-options{grid-template-columns:1fr}.section-head{border-bottom:1px solid var(--line);padding-bottom:18px}.section-head p,.preview-head p,.eyebrow{color:var(--gold);letter-spacing:2px;margin:0 0 8px;font-size:12px}.section-head h1{letter-spacing:1px;margin:0;font:400 30px/1.2 Songti SC,STSong,KaiTi,serif}.generator label{letter-spacing:1px;color:var(--muted);font-size:12px;display:block}.generator textarea,.generator input,.generator select{border:1px solid var(--line-strong);width:100%;color:var(--ink);background:#fff;border-radius:2px;outline:none;margin-top:9px;padding:12px 13px;font-size:14px;line-height:1.55}.generator textarea{resize:vertical;min-height:142px}.generator select{height:47px}.generator textarea:focus,.generator input:focus,.generator select:focus{border-color:var(--gold);box-shadow:0 0 0 3px #8b6a2317}.prompt-template-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-top:-8px;display:flex}.prompt-template-bar span{color:var(--faint);letter-spacing:1px;font-size:12px}.prompt-template-bar button{border:1px solid var(--line);color:var(--gold);background:#fffaf0;border-radius:2px;padding:7px 10px;font-size:12px}.prompt-template-bar button:hover{border-color:var(--gold);background:#f4ead2}.meta-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.meta-grid label:first-child{grid-column:1/-1}.model-cost-panel{border:1px solid var(--line);background:#fffaf0;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.model-cost-panel div{border-left:1px solid var(--line);padding:12px 14px}.model-cost-panel div:first-child{border-left:0}.model-cost-panel span{color:var(--muted);margin-bottom:6px;font-size:12px;display:block}.model-cost-panel strong{color:var(--gold);font-size:15px;display:block}.generator-actions{border-top:1px solid var(--line);gap:12px;padding-top:18px;display:grid}.credit-pill{border:1px solid var(--line-strong);color:var(--muted);background:#fffaf0;border-radius:999px;justify-self:start;align-items:center;gap:8px;padding:8px 10px;font-size:12px;display:inline-flex}.credit-pill span{color:var(--gold);letter-spacing:1px}.credit-pill strong{color:var(--ink);font-size:15px}.credit-pill em{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:18px;height:18px;font-style:normal;line-height:1;display:grid}.draft-status{border:1px solid var(--line);color:var(--gold);background:#fffaf0;margin:0;padding:10px 12px;font-size:13px;line-height:1.7}.primary,.button-primary{background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:2px;padding:12px 18px;font-size:14px;font-weight:600}.primary:hover,.button-primary:hover{background:#2b2b28}.primary:disabled,.button-primary:disabled,.button:disabled{opacity:.55;cursor:wait}#job-status{color:var(--muted);margin:0;font-size:13px;line-height:1.7}#job-status[data-state=error]{color:var(--error)}#job-status[data-state=done]{color:var(--ok)}.dialog-overlay{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f7f5efcc;position:fixed;inset:0}.dialog-content{z-index:21;border:1px solid var(--line-strong);background:var(--surface);width:min(620px,100vw - 48px);padding:22px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 28px 70px #1d1b1726}.dialog-header{border-bottom:1px solid var(--line);padding-bottom:16px}.dialog-header p{color:var(--gold);letter-spacing:2px;margin:0 0 6px;font-size:12px}.dialog-title{letter-spacing:1px;margin:0;font:400 30px/1.2 Songti SC,STSong,KaiTi,serif}.dialog-description{color:var(--muted);margin:8px 44px 0 0;font-size:13px;line-height:1.6}.dialog-close-button{color:var(--gold);font-size:22px;line-height:1;position:absolute;top:14px;right:14px}.template-search{grid-template-columns:1fr auto;gap:10px;margin-top:16px;display:grid}.template-search input{margin:0}.template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.template-state{border:1px solid var(--line);color:var(--muted);background:#fffaf0;grid-column:1/-1;margin:0;padding:14px;font-size:13px}.template-item{border:1px solid var(--line);background:#fff;grid-template-columns:1fr auto;align-items:stretch;display:grid}.template-item:hover{border-color:var(--gold);background:#fffaf0}.template-item>button:first-child{text-align:left;background:0 0;border:0;width:100%;padding:14px;display:block}.template-item>.button{color:var(--gold);border-width:0 0 0 1px;border-radius:0;align-self:stretch}.template-grid span{color:var(--ink);letter-spacing:1px;font:400 18px/1.35 Songti SC,STSong,KaiTi,serif;display:block}.template-grid em{color:var(--gold);letter-spacing:0;margin-left:8px;font:12px/1 PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;display:inline-block}.template-grid small{color:var(--muted);margin-top:8px;font-size:12px;display:block}.style-row{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:16px;display:flex}.style-row button{border:1px solid var(--line);color:var(--gold);background:#fffaf0;border-radius:2px}.style-row button:hover{border-color:var(--gold);background:#f4ead2}.credit-dialog{width:min(720px,100vw - 48px)}.credit-balance{border:1px solid var(--line);background:#fffaf0;justify-content:space-between;align-items:center;margin-top:16px;padding:14px;display:flex}.credit-balance span{color:var(--muted);font-size:13px}.credit-balance strong{color:var(--gold);font:400 30px/1 Songti SC,STSong,KaiTi,serif}.credit-package-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.credit-package-card{border:1px solid var(--line);background:#fff;gap:14px;padding:14px;display:grid}.credit-package-card p{color:var(--gold);letter-spacing:1px;margin:0;font-size:12px}.credit-package-card strong{margin-top:8px;font:400 26px/1 Songti SC,STSong,KaiTi,serif;display:block}.credit-package-card small{color:var(--muted);margin-top:8px;font-size:13px;display:block}.credit-order-state{color:var(--muted);margin:14px 0 0;font-size:13px;line-height:1.7}.credit-order-state.error{color:var(--error)}.preview-panel{min-height:720px}.preview-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:86px;padding:0 24px;display:flex}.preview-head h2{letter-spacing:2px;margin:0;font:400 36px/1 Songti SC,STSong,KaiTi,serif}.preview-head>span{border:1px solid var(--line-strong);color:var(--muted);border-radius:2px;padding:8px 11px;font-size:13px}.preview-grid{grid-template-columns:260px minmax(0,1fr);min-height:632px;display:grid}.card-notes{border-right:1px solid var(--line);flex-direction:column;gap:18px;padding:24px;display:flex}.subheading{color:var(--ink);letter-spacing:2px;margin:0;font:400 20px/1.4 Songti SC,STSong,KaiTi,serif}.description{color:var(--muted);margin:0;font-size:13px;line-height:1.9}dl{gap:14px;margin:0;display:grid}dl div{border-top:1px solid var(--line);padding-top:14px}dt{color:var(--faint);letter-spacing:2px;margin-bottom:7px;font-size:11px}dd{margin:0;font-size:15px;line-height:1.6}.actions{gap:10px;margin-top:auto;display:grid}.actions button{border:1px solid var(--line-strong);text-align:left;background:#fff;border-radius:2px;padding:11px 12px;font-size:13px}.actions .primary{background:var(--gold);border-color:var(--gold);color:#fff}.actions .primary[aria-pressed=true]{background:#5f4818}.display{background:#f0eee7;flex-direction:column;justify-content:center;align-items:center;min-width:0;display:flex;position:relative;overflow:hidden}#stage{touch-action:none;cursor:grab;width:100%;height:590px;position:relative}#stage:active{cursor:grabbing}.stage-canvas{position:absolute;inset:0}.stage-canvas canvas{width:100%;height:100%;display:block}#loading{z-index:1;color:var(--gold);letter-spacing:2px;text-align:center;white-space:pre-wrap;place-items:center;padding:30px;font-size:13px;display:grid;position:absolute;inset:0}.stage-hint{color:var(--muted);border:1px solid var(--line);background:#fffaf0d9;border-radius:2px;align-items:center;gap:9px;padding:8px 10px;font-size:12px;display:flex;position:absolute;bottom:20px;left:24px}.stage-hint b{color:var(--faint);font-weight:400}.stage-hint button{color:var(--gold);margin-left:8px;font-weight:600}.view-label{color:var(--muted);border:1px solid var(--line);background:#fffaf0d9;border-radius:2px;margin:0;padding:8px 10px;font-size:12px;position:absolute;bottom:20px;right:24px}.stage-controls{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex;position:absolute;top:20px;right:24px}.stage-controls button{border:1px solid var(--line);color:var(--ink);background:#fffaf0d9;border-radius:2px;padding:8px 10px;font-size:12px}input[type=range]{width:100%;height:2px;accent-color:var(--gold);cursor:pointer;margin-top:12px;display:block}.save{border-left:1px solid var(--line);color:var(--gold);white-space:nowrap;padding-left:20px;font-size:13px;font-weight:600}footer{max-width:1376px;color:var(--muted);justify-content:space-between;margin:0 auto;padding:20px 24px 30px;font-size:12px;display:flex}.auth-dialog{border:1px solid var(--line-strong);background:var(--surface);width:min(440px,100vw - 36px);color:var(--ink);padding:0}.auth-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f7f5efcc}.auth-dialog form{gap:15px;padding:24px;display:grid}.auth-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding-bottom:16px;display:flex}.auth-head p{color:var(--gold);letter-spacing:2px;margin:0 0 6px;font-size:12px}.auth-head h2{margin:0;font:400 28px/1.2 Songti SC,STSong,KaiTi,serif}.close{color:var(--gold);font-size:24px;line-height:1}.auth-dialog label{color:var(--muted);letter-spacing:1px;font-size:12px;display:block}.auth-dialog input{border:1px solid var(--line-strong);width:100%;color:var(--ink);background:#fff;border-radius:2px;outline:none;margin-top:8px;padding:12px 13px;font-size:14px}.verification-row{grid-template-columns:1fr auto;gap:10px;display:grid}.verification-row button{border:1px solid var(--line-strong);color:var(--gold);background:#fff;border-radius:2px;margin-top:8px;padding:0 12px;font-weight:600}.google-slot{border:1px solid var(--line);background:#fff;place-items:center;min-height:42px;display:grid}.google-slot:empty:before{content:"未配置 Google Client ID";color:var(--muted);font-size:13px}.auth-divider{color:var(--faint);align-items:center;gap:12px;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--line);flex:1;height:1px}#auth-message{color:var(--muted);margin:0;font-size:13px;line-height:1.6}#auth-message[data-state=error]{color:var(--error)}#auth-message[data-state=done]{color:var(--ok)}.profile-topbar .account-bar{align-items:center;gap:12px;display:flex}.profile-page{max-width:1440px;margin:0 auto;padding:34px 32px 56px}.profile-hero{border:1px solid var(--line);background:var(--surface);margin-bottom:22px;padding:28px 30px}.profile-hero p{color:var(--gold);letter-spacing:2px;margin:0 0 8px;font-size:12px}.profile-hero h1{letter-spacing:1px;margin:0;font:400 36px/1.2 Songti SC,STSong,KaiTi,serif}.profile-state{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.profile-state.error{color:var(--error)}.profile-history-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.profile-card{border:1px solid var(--line);background:var(--surface);grid-template-rows:auto 1fr;min-width:0;display:grid}.profile-card-image{aspect-ratio:4/3;color:var(--muted);background:#ebe6dc;place-items:center;font-size:13px;display:grid;overflow:hidden}.profile-card-image img{object-fit:cover;width:100%;height:100%;display:block}.profile-card-body{gap:10px;padding:16px;display:grid}.profile-card-body p{color:var(--gold);letter-spacing:2px;margin:0;font-size:11px}.profile-card-title{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.profile-card-title h2{letter-spacing:1px;margin:0;font:400 25px/1.22 Songti SC,STSong,KaiTi,serif}.profile-card-title span{border:1px solid var(--line);color:var(--muted);white-space:nowrap;padding:5px 8px;font-size:12px}.profile-card-body h3{letter-spacing:1px;margin:0;font:400 17px/1.4 Songti SC,STSong,KaiTi,serif}.profile-card-body small{min-height:42px;color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.75;display:-webkit-box;overflow:hidden}.profile-card-actions{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:10px;padding-top:12px;display:grid}.profile-card-actions .button,.profile-card-actions button{text-align:center}.admin-page{max-width:1240px;margin:0 auto;padding:34px 32px 56px}.admin-hero{border:1px solid var(--line);background:var(--surface);margin-bottom:18px;padding:28px 30px}.admin-hero p{color:var(--gold);letter-spacing:2px;margin:0 0 8px;font-size:12px}.admin-hero h1{letter-spacing:1px;margin:0;font:400 36px/1.2 Songti SC,STSong,KaiTi,serif}.admin-tabs{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.admin-panel{border:1px solid var(--line);background:var(--surface);gap:18px;padding:20px;display:grid}.admin-toolbar{max-width:360px}.admin-panel .field,.admin-credit-form .field{color:var(--muted);letter-spacing:1px;gap:8px;font-size:12px;display:grid}.admin-panel .input,.admin-credit-form .input{background:#fffdfb;height:42px;margin:0}.admin-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.admin-stats article{border:1px solid var(--line);background:var(--surface);padding:18px}.admin-stats span{color:var(--muted);margin-bottom:10px;font-size:12px;display:block}.admin-stats strong{color:var(--gold);font:400 32px/1 Songti SC,STSong,KaiTi,serif}.admin-table{gap:10px;display:grid}.admin-row{border:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.admin-row strong{font-size:14px;display:block}.admin-row small{color:var(--muted);margin-top:6px;font-size:12px;display:block}.admin-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.admin-form{border-bottom:1px solid var(--line);grid-template-columns:1.35fr .9fr .9fr .7fr auto auto auto;align-items:end;gap:12px;padding-bottom:18px;display:grid}.admin-form.compact{grid-template-columns:repeat(3,minmax(0,1fr)) auto}.admin-checkbox{border:1px solid var(--line);height:42px;color:var(--muted);background:#fffaf0;align-items:center;gap:8px;padding:0 12px;font-size:13px;display:flex!important}.admin-checkbox input{width:auto;margin:0}.admin-credit-dialog{width:min(520px,100vw - 48px)}.admin-credit-form{gap:14px;margin-top:16px;display:grid}.admin-credit-total{border:1px solid var(--line);background:#fffaf0;justify-content:space-between;align-items:center;padding:14px;display:flex}.admin-credit-total span{color:var(--muted);font-size:13px}.admin-credit-total strong{color:var(--gold);font:400 30px/1 Songti SC,STSong,KaiTi,serif}.payment-result-page{max-width:860px;margin:0 auto;padding:48px 32px}.payment-result-card{border:1px solid var(--line);background:var(--surface);gap:18px;padding:34px;display:grid}.payment-result-card>p{color:var(--gold);letter-spacing:2px;margin:0;font-size:12px}.payment-result-card h1{margin:0;font:400 38px/1.2 Songti SC,STSong,KaiTi,serif}.payment-result-summary{border:1px solid var(--line);background:#fffaf0;gap:8px;padding:18px;display:grid}.payment-result-summary span{color:var(--muted);font-size:13px}.payment-result-summary strong{color:var(--gold);font:400 32px/1 Songti SC,STSong,KaiTi,serif}.payment-result-summary small,.payment-result-note{color:var(--muted);margin:0;font-size:13px;line-height:1.8}.payment-result-note.error{color:var(--error)}.payment-result-actions{flex-wrap:wrap;gap:10px;display:flex}@media (max-width:1120px){.workspace{grid-template-columns:1fr}.generator{position:static}.control-heading,.save{grid-column:1/-1}.save{border-left:0;border-top:1px solid var(--line);padding:14px 0 0}}@media (max-width:760px){.topbar{grid-template-columns:1fr;gap:14px;height:auto;padding:16px 18px}.account-bar{justify-self:stretch}.account-bar button{width:100%}#user-menu{justify-content:space-between}.workspace{gap:18px;padding:18px}.generator-form{padding:18px}.section-head h1{font-size:25px}.meta-grid,.preview-grid,.model-cost-panel{grid-template-columns:1fr}.model-cost-panel div{border-left:0;border-top:1px solid var(--line)}.model-cost-panel div:first-child{border-top:0}.preview-head{align-items:flex-start;gap:14px;height:auto;padding:18px}.preview-head h2{font-size:31px}.card-notes{border-right:0;border-bottom:1px solid var(--line)}#stage{height:540px}.template-grid,.template-search,.credit-package-grid,.admin-grid,.admin-form,.admin-form.compact{grid-template-columns:1fr}.admin-row{flex-direction:column;align-items:flex-start}footer{gap:12px;padding-left:18px;padding-right:18px;display:grid}.account-popover{top:36px;right:0}.profile-page{padding:18px}.profile-history-grid{grid-template-columns:1fr}}
