:root{--ai-bg:#f7f8fb;--ai-ink:#17202b;--ai-muted:#8993a1;--ai-line:#e9ebf0;--ai-purple:#7445e8;--ai-pink:#e84cae;--ai-blue:#2f75e8;--ai-card:#fff}
.ai-page [hidden]{display:none!important}
.ai-page{min-height:100vh;background:var(--ai-bg);color:var(--ai-ink);font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif}
.ai-header{height:76px;background:#fff;border-bottom:1px solid #eceef2;display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:30}
.ai-brand{text-decoration:none;color:inherit}.ai-brand .brand-image{object-fit:contain}.ai-nav{display:flex;align-items:center;gap:9px}.ai-nav-link,.ai-nav-button{height:38px;padding:0 14px;border:1px solid #e8eaf0;border-radius:10px;background:#fff;color:#596372;text-decoration:none;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.ai-nav-link.active{background:#f3efff;color:#6941d7;border-color:#e5dcff;font-weight:700}.ai-nav-button{cursor:pointer}.ai-config-button{background:#f8f6ff;color:#6543c4;border-color:#e7defc}.config-dot{width:7px;height:7px;border-radius:50%;background:#c5cbd4}.config-dot.ready{background:#23b47e;box-shadow:0 0 0 3px #e3f7ef}
.ai-main{max-width:1320px;margin:0 auto;padding:44px 30px 56px}.ai-hero{text-align:center;margin:0 auto 30px}.ai-hero-kicker{display:inline-flex;align-items:center;gap:8px;color:#8d7aa9;font-size:10px;font-weight:800;letter-spacing:2px}.ai-hero-kicker span{width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,var(--ai-pink),var(--ai-purple))}.ai-hero h1{font-size:38px;line-height:1.25;letter-spacing:.2px;margin:12px 0 9px;font-weight:800;color:#171923}.ai-hero h1 em{font-style:normal;background:linear-gradient(90deg,#e84cae,#783de8 72%);-webkit-background-clip:text;background-clip:text;color:transparent}.ai-hero p{font-size:14px;color:#8b929e;margin:0}
.ai-composer{max-width:1040px;margin:0 auto;background:#fff;border:1px solid #e9e9ee;border-radius:25px;padding:20px 22px 14px;box-shadow:0 12px 38px rgba(32,35,54,.045)}.composer-topline{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.composer-model{display:flex;align-items:center;gap:10px}.doubao-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(145deg,#f4e8ff,#e8efff);color:#7847dc;font-weight:900;font-size:17px}.composer-model strong{display:block;font-size:13px}.composer-model small{display:block;font-size:11px;color:#9aa1ad;margin-top:3px}.secure-tip{font-size:11px;color:#a0a6b0}.secure-tip span{color:#3ba77f;margin-right:4px}.ai-composer>textarea{width:100%;min-height:128px;resize:vertical;border:0;outline:none;background:transparent;padding:10px 4px 14px;color:#27303d;font-size:16px;line-height:1.85;font-family:inherit}.ai-composer>textarea::placeholder{color:#a9aeb8}.composer-bottom{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-top:12px;border-top:1px solid #f0f1f4}.composer-tools,.composer-right{display:flex;align-items:center;gap:10px;min-width:0}.upload-doc-btn{height:42px;padding:0 15px;border:1px solid #e7e9ee;border-radius:22px;background:#fff;color:#424c5a;font-size:13px;white-space:nowrap}.upload-doc-btn>span{font-size:20px;vertical-align:-1px;margin-right:5px}.upload-doc-btn small{font-size:10px;color:#a1a7b2;margin-left:5px}.upload-file-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:#6d7785}ai-primary-btn{height:43px;padding:0 22px;border:0;border-radius:23px;background:#151515;color:#fff;font-size:13px;font-weight:700;box-shadow:0 5px 14px #00000012;white-space:nowrap}.ai-primary-btn span{font-size:16px;margin-left:8px}.ai-primary-btn:hover{background:#333}.ai-primary-btn:disabled{opacity:.45;cursor:not-allowed}.composer-foot{display:flex;justify-content:space-between;gap:12px;padding:12px 2px 0;color:#a1a7b2;font-size:10px}.composer-foot #aiStatus{color:#8c77c0;white-space:nowrap}.composer-foot #aiStatus.error{color:#c56a6a}.composer-foot #aiStatus.ready{color:#269c73}
.ai-workbench{max-width:1240px;margin:26px auto 0;display:grid;grid-template-columns:minmax(290px,.82fr) minmax(0,1.35fr);gap:17px;align-items:stretch}.chat-panel,.outline-panel,.detail-section{background:#fff;border:1px solid #e9ebf0;border-radius:18px;padding:20px;min-width:0;box-shadow:0 6px 24px rgba(32,35,54,.025)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-kicker{font-size:9px;letter-spacing:1.4px;font-weight:800;color:#a4a0b5}.panel-heading h2,.detail-top h2{font-size:19px;margin:5px 0 0;color:#222936}.online-pill{font-size:10px;color:#3e9d7b;background:#edf9f4;border-radius:20px;padding:6px 9px}.online-pill i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#3fb58c;margin-right:5px}.panel-description{font-size:11px;line-height:1.65;color:#98a0ac;margin:10px 0 14px}.chat-messages{height:360px;overflow:auto;border:1px solid #f0f1f4;border-radius:12px;background:#fbfbfd;padding:12px;display:flex;flex-direction:column;gap:12px}.chat-bubble{max-width:94%;font-size:12px;line-height:1.75;padding:10px 12px;border-radius:12px;white-space:pre-wrap;overflow-wrap:anywhere}.chat-bubble.assistant{align-self:flex-start;background:#f1eff9;color:#4e4b5c;border-top-left-radius:4px}.chat-bubble.user{align-self:flex-end;background:#eaf1ff;color:#334d76;border-top-right-radius:4px}.chat-bubble .bubble-name{display:block;font-size:9px;font-weight:800;color:#9589b7;margin-bottom:4px}.chat-compose{display:flex;align-items:flex-end;gap:8px;margin-top:10px;padding:8px;border:1px solid #e9eaf0;border-radius:12px}.chat-compose textarea{flex:1;min-width:0;resize:vertical;min-height:42px;border:0;outline:0;font-size:12px;line-height:1.6;font-family:inherit;color:#344054}.chat-compose button{height:34px;padding:0 13px;border-radius:9px;background:#6f49d9;color:#fff;font-size:11px}.outline-heading{margin-bottom:0}.page-count{font-size:11px;color:#7b61c8;background:#f4f0ff;border-radius:18px;padding:6px 10px}.outline-list{display:flex;flex-direction:column;gap:9px;max-height:455px;overflow:auto;padding:2px 2px 4px}.outline-page{display:grid;grid-template-columns:36px minmax(0,1fr);gap:11px;padding:12px;border:1px solid #eceef3;border-radius:12px;background:#fff}.outline-number{width:32px;height:32px;border-radius:9px;background:#f3f0ff;color:#7752d4;display:grid;place-items:center;font-size:11px;font-weight:800}.outline-page-type{font-size:9px;color:#9a91b5;font-weight:800;letter-spacing:.5px}.outline-page h3{font-size:13px;margin:3px 0 4px;color:#263040}.outline-page p{font-size:10px;color:#8d96a3;line-height:1.55;margin:0}.outline-sections{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.outline-sections span{font-size:9px;padding:4px 7px;border-radius:6px;background:#f6f7fa;color:#758091}.empty-outline{padding:50px 15px;text-align:center;color:#a1a7b2;font-size:12px}.outline-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #f0f1f4;margin-top:13px;padding-top:13px}.secondary-btn{height:40px;padding:0 14px;border:1px solid #e6e8ee;border-radius:10px;background:#fff;color:#6c7481;font-size:11px}
.detail-section{max-width:1240px;margin:18px auto 0;padding:22px}.detail-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.detail-top p{font-size:11px;color:#929aa7;margin:8px 0 0}.editable-note{font-size:10px;color:#329b79;background:#eef9f4;border-radius:18px;padding:7px 10px;white-space:nowrap}.detail-slide-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.detail-slide{border:1px solid #e9ebf0;border-radius:13px;padding:14px;min-width:0}.detail-slide-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.detail-slide-head strong{font-size:11px;color:#6d50bd}.detail-slide-head small{font-size:9px;color:#9da4af}.detail-field{display:flex;flex-direction:column;gap:5px;margin-top:9px}.detail-field label{font-size:10px;color:#8e96a3}.detail-field input,.detail-field textarea{width:100%;min-width:0;border:1px solid #e8eaf0;border-radius:8px;padding:8px 9px;font-size:11px;line-height:1.6;font-family:inherit;color:#303a49;outline:none}.detail-field textarea{resize:vertical;min-height:56px}.detail-field input:focus,.detail-field textarea:focus{border-color:#b7a5ec;box-shadow:0 0 0 3px #f2eeff}.detail-section-select{border:1px solid #e7e9ef;border-radius:7px;padding:5px 7px;color:#6b58a7;background:#fff;font-size:10px}.section-edit{margin-top:10px;padding:10px;border-radius:10px;background:#faf9fd;border:1px solid #f0edf8}.section-edit-title{font-size:10px;font-weight:800;color:#7862b1;margin-bottom:4px}.master-build-panel{margin-top:18px;border:1px solid #e8eaf0;border-radius:14px;padding:16px;background:#fcfcfe}.master-choice{display:flex;align-items:center;justify-content:space-between;gap:16px}.master-choice strong{display:block;font-size:13px}.master-choice small{display:block;color:#939ba7;font-size:10px;margin-top:5px}.master-choice select{min-width:260px;max-width:48%;height:39px;padding:0 10px;border:1px solid #e4e6ed;border-radius:9px;background:#fff;color:#465163;font-size:12px}.master-preview-row{display:flex;align-items:center;gap:13px;margin-top:13px;padding:10px;border-radius:11px;background:#fff}.master-preview-row img{width:150px;aspect-ratio:16/9;object-fit:cover;border-radius:8px;background:#f2f3f7}.master-preview-row strong{font-size:12px}.master-preview-row p{font-size:10px;color:#9098a4;margin:6px 0 0}.build-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:13px;padding-top:13px;border-top:1px solid #eceef2}.build-actions>span{font-size:10px;color:#929aa6}
.feature-cards{max-width:1040px;margin:18px auto 0;display:grid;grid-template-columns:1fr;gap:13px}.feature-card{display:flex;align-items:center;gap:12px;min-width:0;min-height:100px;padding:17px 18px;background:#fff;border:1px solid #ebedf1;border-radius:16px;text-align:left;text-decoration:none;color:inherit;cursor:pointer;transition:transform .16s,box-shadow .16s,border-color .16s}.feature-card:hover{transform:translateY(-2px);border-color:#ddd5f4;box-shadow:0 10px 26px #37304d0c}.feature-card>span:nth-child(2){flex:1;min-width:0}.feature-icon{width:12px;height:12px;border-radius:4px;display:grid;place-items:center;font-size:8px;font-weight:800;flex-shrink:0}.feature-icon.orange{color:#e97832;background:#fff2e9}.feature-icon.purple{color:#9850e8;background:#f6edff}.feature-icon.blue{color:#3479e6;background:#edf4ff}.feature-card strong{display:block;font-size:13px}.feature-card small{display:block;margin-top:6px;font-size:10px;line-height:1.5;color:#969eaa}.feature-arrow{color:#b0a6c9;font-size:16px}.ai-bottom-note{text-align:center;color:#b0b5be;font-size:10px;margin:22px 0 0}
.ai-config-dialog{width:min(520px,calc(100vw - 28px));border:1px solid #e8eaf0;border-radius:18px;padding:0;box-shadow:0 24px 80px #20243830}.ai-config-dialog::backdrop{background:#161b2b66;backdrop-filter:blur(3px)}.ai-config-dialog form{padding:23px}.dialog-title-row{display:flex;justify-content:space-between;align-items:flex-start}.dialog-title-row h2{font-size:20px;margin:6px 0 0}.dialog-close{width:30px;height:30px;border-radius:50%;background:#f3f4f7;color:#687282;font-size:20px}.config-explain,.config-help{font-size:11px;line-height:1.7;color:#8f98a5;margin:13px 0}.ai-config-dialog label{display:block;font-size:11px;color:#596474;margin:14px 0 6px}.ai-config-dialog input{width:100%;height:42px;border:1px solid #e3e6ed;border-radius:9px;padding:0 11px;font-size:12px;outline:none}.ai-config-dialog input:focus{border-color:#b4a0ed;box-shadow:0 0 0 3px #f3efff}.config-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:17px}.config-actions .ai-primary-btn{height:40px;border-radius:9px}.config-status{font-size:11px;color:#8b7aba;min-height:17px;margin:11px 0 0}.config-status.error{color:#c66d6d}.config-status.success{color:#269c73}.engine-frame{position:absolute;width:1px;height:1px;left:-10000px;top:-10000px;border:0;visibility:hidden}
@media(max-width:900px){.ai-main{padding:34px 18px 42px}.ai-workbench{grid-template-columns:1fr}.chat-messages{height:260px}.detail-slide-list{grid-template-columns:1fr}.feature-cards{grid-template-columns:1fr}.ai-hero h1{font-size:31px}}
@media(max-width:620px){.ai-header{height:auto;min-height:66px;padding:10px 14px;align-items:flex-start;gap:10px}.ai-nav{gap:5px;flex-wrap:wrap;justify-content:flex-end}.ai-nav-link,.ai-nav-button{height:32px;padding:0 8px;font-size:10px}.ai-brand .brand-image{width:32px;height:32px}.ai-brand h1{font-size:15px}.ai-brand p{display:none}.ai-main{padding:27px 12px 34px}.ai-hero{margin-bottom:20px}.ai-hero h1{font-size:25px}.ai-hero p{font-size:11px;line-height:1.6}.ai-composer{padding:15px;border-radius:17px}.secure-tip{font-size:9px}.ai-composer>textarea{min-height:118px;font-size:13px}.composer-bottom{align-items:stretch;flex-direction:column}.composer-right{justify-content:space-between}.upload-doc-btn small{display:none}.composer-foot{font-size:9px;flex-direction:column}.chat-panel,.outline-panel,.detail-section{padding:15px}.outline-actions{align-items:stretch;flex-direction:column}.outline-actions button{width:100%}.master-choice{align-items:stretch;flex-direction:column}.master-choice select{max-width:none;width:100%;min-width:0}.master-preview-row img{width:112px}.build-actions{align-items:stretch;flex-direction:column}.build-actions button{width:100%}.detail-top{flex-direction:column}.ai-config-dialog form{padding:18px}}

/* Compact upload-template shortcut aligned to the lower right of the composer area. */
.feature-cards{display:flex;justify-content:flex-end;margin:14px auto 0}
.feature-card{width:min(100%,460px);min-height:66px;padding:9px 13px;border-radius:12px;gap:9px}
.feature-card strong{font-size:13px}
.feature-card small{margin-top:3px;font-size:10px;line-height:1.45}
.feature-arrow{font-size:14px}
@media(max-width:620px){.feature-card{width:100%}}

.feature-cards{position:fixed;right:24px;bottom:24px;z-index:80;margin:0;max-width:none;justify-content:flex-end}
@media(max-width:620px){.feature-cards{left:12px;right:12px;bottom:12px}.feature-card{width:100%}}

/* V89.0 — AI smart image matching and local asset library */
.ai-nav-button{white-space:nowrap}
.smart-image-panel{margin:18px 0 0;padding:18px 20px;border:1px solid #e8eaf0;border-radius:15px;background:linear-gradient(135deg,#fbfcff 0%,#f7fafc 100%)}
.smart-image-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.smart-image-head h3{font-size:17px;color:#27364a;margin:5px 0 0}
.smart-image-head p{font-size:11px;line-height:1.7;color:#929aa7;margin:7px 0 0}
.asset-count-pill{flex-shrink:0;border:1px solid #dce8ed;background:#fff;border-radius:999px;padding:7px 11px;color:#547183;font-size:10px;font-weight:700}
.smart-image-controls{display:flex;align-items:flex-end;gap:12px;margin-top:16px;flex-wrap:wrap}
.smart-image-controls label{display:flex;flex-direction:column;gap:6px;min-width:190px;color:#778291;font-size:10px;flex:1}
.smart-image-controls select,.asset-import-grid select,.asset-import-grid input{height:39px;border:1px solid #e3e8ee;border-radius:9px;background:#fff;padding:0 10px;color:#435365;font-size:11px;outline:none}
.smart-image-controls select:focus,.asset-import-grid select:focus,.asset-import-grid input:focus{border-color:#b9a9e9;box-shadow:0 0 0 3px #f3efff}
.smart-image-controls .ai-primary-btn{height:39px;white-space:nowrap}
.smart-image-status{margin-top:12px;padding:9px 11px;border-radius:9px;background:#f1f5f8;color:#778795;font-size:10px;line-height:1.65}
.smart-image-status.success{background:#edf8f3;color:#32856b}
.smart-image-status.error{background:#fff2f1;color:#bd6862}
.smart-image-status.warning{background:#fff8eb;color:#a87932}
.detail-image-plan{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:11px;padding:9px 10px;border:1px dashed #dbe3eb;border-radius:9px;background:#fcfdff}
.detail-image-plan strong{font-size:10px;color:#65778a}
.detail-image-plan small{font-size:9px;color:#9aa4b1}
.detail-image-thumbs{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}
.detail-image-thumb{width:76px;height:52px;position:relative;border:1px solid #e5e9ef;border-radius:7px;overflow:hidden;background:#f4f6f8}
.detail-image-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.detail-image-thumb span{position:absolute;left:3px;bottom:3px;padding:2px 4px;border-radius:4px;background:#152b3dbd;color:#fff;font-size:8px}
.asset-library-dialog{width:min(650px,calc(100vw - 28px))}
.asset-import-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
.asset-import-grid label{display:flex;flex-direction:column;gap:6px;color:#596474;font-size:11px}
.asset-file-label{display:block;margin:12px 0 7px!important;color:#596474!important}
#assetFilesInput{display:block;width:100%;border:1px dashed #d8e0e8;border-radius:10px;background:#fafcff;padding:12px;color:#7c8795;font-size:11px}
.asset-import-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}
.asset-category-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:12px;max-height:200px;overflow:auto}
.asset-category-chip{display:flex;justify-content:space-between;gap:6px;padding:7px 8px;border:1px solid #e8edf1;border-radius:8px;background:#fbfcfd;color:#64788a;font-size:9px}
.asset-category-chip b{color:#345c75}
@media(max-width:620px){.smart-image-panel{padding:14px}.smart-image-head{flex-direction:column}.smart-image-controls{align-items:stretch;flex-direction:column}.smart-image-controls label{min-width:0;width:100%}.smart-image-controls .ai-primary-btn{width:100%}.asset-import-grid{grid-template-columns:1fr}.asset-category-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
