@font-face{font-family:TaoBao MaiCai;src:url(/fonts/taobao-maicai/TaoBaoMaiCaiTi-Regular.woff2)format("woff2");font-display:swap}@font-face{font-family:Douyin Sans;src:url(/fonts/douyin-sans/DouyinSansBold.ttf)format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Alimama FangYuan;src:url(/fonts/alimama-fangyuan/AlimamaFangYuanTiVF-Thin.woff2)format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:"Alibaba PuHuiTi 3.0";src:url(/fonts/alibaba-puhuiti-3/AlibabaPuHuiTi-3-35-Thin.woff2)format("woff2");font-weight:100;font-display:swap}@font-face{font-family:"Alibaba PuHuiTi 3.0";src:url(/fonts/alibaba-puhuiti-3/AlibabaPuHuiTi-3-45-Light.woff2)format("woff2");font-weight:300;font-display:swap}@font-face{font-family:"Alibaba PuHuiTi 3.0";src:url(/fonts/alibaba-puhuiti-3/AlibabaPuHuiTi-3-55-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:"Alibaba PuHuiTi 3.0";src:url(/fonts/alibaba-puhuiti-3/AlibabaPuHuiTi-3-65-Medium.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:"Alibaba PuHuiTi 3.0";src:url(/fonts/alibaba-puhuiti-3/AlibabaPuHuiTi-3-75-SemiBold.woff2)format("woff2");font-weight:600;font-display:swap}@font-face{font-family:"Alibaba PuHuiTi 3.0";src:url(/fonts/alibaba-puhuiti-3/AlibabaPuHuiTi-3-85-Bold.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:"Alibaba PuHuiTi 3.0";src:url(/fonts/alibaba-puhuiti-3/AlibabaPuHuiTi-3-95-ExtraBold.woff2)format("woff2");font-weight:800;font-display:swap}@font-face{font-family:"Alibaba PuHuiTi 3.0";src:url(/fonts/alibaba-puhuiti-3/AlibabaPuHuiTi-3-105-Heavy.woff2)format("woff2");font-weight:900;font-display:swap}@font-face{font-family:"Alibaba PuHuiTi 3.0";src:url(/fonts/alibaba-puhuiti-3/AlibabaPuHuiTi-3-115-Black.woff2)format("woff2");font-weight:1000;font-display:swap}:root{color:#17202a;background:#f2f4f7;font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{min-width:1120px;margin:0}button,input,textarea,select{font:inherit}.app-shell{min-height:100vh}.topbar{background:#fff;border-bottom:1px solid #e5e9ef;justify-content:space-between;align-items:center;height:92px;padding:18px 34px;display:flex}.primary-nav{align-self:stretch;align-items:stretch;gap:4px;display:flex}.primary-nav button{color:#66717d;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:0 22px;font-weight:700}.primary-nav button.active{color:#d92727;border-bottom-color:#d92727}.topbar h1,.panel-heading h2,.panel-card h2{margin:3px 0 0}.topbar h1{font-size:24px}.eyebrow{letter-spacing:.13em;color:#7a8491;font-size:11px;font-weight:700}.upload-button{color:#fff;cursor:pointer;background:#e22b2b;border-radius:10px;justify-content:center;align-items:center;height:44px;padding:0 22px;font-weight:700;display:inline-flex;box-shadow:0 8px 18px #e22b2b33}.upload-button input{display:none}.upload-button.disabled{opacity:.55;cursor:wait}.error-banner{color:#9d1c1c;background:#fff0f0;border:1px solid #f1b3b3;border-radius:10px;margin:18px 34px 0;padding:12px 16px}.context-navigation{background:#fff;border-bottom:1px solid #e5e9ef;padding:14px 34px 0}.output-level{border-bottom:1px solid #eef1f4;justify-content:space-between;align-items:center;min-height:48px;display:flex}.batch-download-actions{align-items:center;gap:8px;display:flex}.batch-download{color:#c92323;cursor:pointer;background:#fff5f5;border:1px solid #db3434;border-radius:9px;padding:9px 15px;font-weight:700}.batch-download.secondary{color:#4b5563;background:#f7f8fa;border-color:#cfd5dc}.batch-download:disabled{color:#9aa2ab;cursor:not-allowed;background:#f5f6f8;border-color:#dde1e6}.package-switcher{align-items:center;gap:14px;display:flex}.package-switcher>b{color:#697481;flex:none;font-size:12px}.package-switcher>div{gap:8px;padding-bottom:10px;display:flex;overflow-x:auto}.package-switcher button{text-align:left;cursor:pointer;background:#fff;border:1px solid #e0e5ea;border-radius:9px;gap:2px;min-width:150px;padding:8px 12px;display:grid}.package-switcher button.active{color:#c92525;background:#fff4f4;border-color:#e75454}.package-switcher small{color:#89939e;font-size:10px}.output-navigation,.template-kind-tabs{gap:4px;display:flex}.output-navigation button,.template-kind-tabs button{color:#6d7783;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:9px 18px;font-weight:700}.output-navigation button.active,.template-kind-tabs button.active{color:#d12626;border-bottom-color:#d12626}.workbook-diagnostics{color:#8a590d;padding:8px 0 12px;font-size:12px}.workbook-diagnostics p{margin:5px 0}.batch-render-host{pointer-events:none;width:540px;height:960px;position:fixed;top:0;left:-10000px;overflow:hidden}.planned-output{background:#fff;border:1px solid #e4e8ee;border-radius:18px;width:min(900px,100% - 68px);margin:52px auto;padding:42px;box-shadow:0 8px 30px #18212b0d}.planned-output h2{margin:6px 0 10px;font-size:28px}.planned-output>p{color:#75808d}.planned-output-flow{align-items:center;gap:10px;margin-top:28px;display:flex}.planned-output-flow span{background:#f3f5f7;border-radius:9px;padding:10px 14px}.empty-state{text-align:center;width:760px;margin:120px auto}.empty-icon{color:#e22b2b;background:#ffe7e7;border-radius:24px;place-items:center;width:76px;height:76px;margin:auto;font-size:30px;font-weight:800;display:grid}.empty-state h2{margin:24px 0 8px;font-size:28px}.empty-state p,.muted,.source-note{color:#75808d}.flow{justify-content:center;align-items:center;gap:12px;margin-top:38px;display:flex}.flow span{background:#fff;border:1px solid #dfe4ea;border-radius:9px;padding:9px 14px}.workspace{grid-template-columns:420px minmax(660px,1fr);align-items:start;gap:24px;padding:24px 34px 40px;display:grid}.inspector{gap:16px;display:grid}.panel-card,.preview-panel{background:#fff;border:1px solid #e4e8ee;border-radius:16px;box-shadow:0 6px 24px #18212b0a}.metric-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:18px;display:grid}.metric{background:#f6f7f9;border-radius:10px;padding:13px}.metric span{color:#7c8590;font-size:12px;display:block}.metric strong{margin-top:4px;font-size:20px;display:block}.source-note{word-break:break-all;margin:16px 0 0;font-size:11px}.section-title{justify-content:space-between;align-items:center;display:flex}.section-title h3{margin:0;font-size:16px}.section-title>span{text-align:center;background:#eef1f5;border-radius:20px;min-width:26px;padding:3px 8px;font-size:12px}.diagnostic{color:#855710;background:#fff7e8;border-radius:8px;margin:12px 0 0;padding:10px 12px;font-size:13px}.difference{border:1px solid #e8ebef;border-radius:9px;gap:4px;margin-top:12px;padding:12px;font-size:12px;display:grid}.difference strong{color:#303942}.difference span{color:#78828e}.difference em{color:#0a7359;font-style:normal}.config-center{padding:0;overflow:hidden}.config-center>summary{cursor:pointer;justify-content:space-between;align-items:center;padding:18px 20px;list-style:none;display:flex}.config-center>summary::-webkit-details-marker{display:none}.config-center>summary span{gap:3px;display:grid}.config-center>summary small,.config-center>summary i,.config-hint,.config-block small{color:#75808d;font-size:11px;font-style:normal}.config-hint{background:#f7f8fa;border-radius:8px;margin:0 20px 14px;padding:10px 12px;line-height:1.55}.config-block{border:1px solid #e5e9ee;border-radius:10px;margin:0 20px 14px;padding:14px}.config-block h4{margin:0 0 10px;font-size:14px}.inline-fields{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inline-fields input:not([type=checkbox]):not([type=color]),.item-setting-body input,.item-setting-body textarea,.item-setting-body select{background:#fff;border:1px solid #d8dde4;border-radius:7px;min-width:0;padding:7px 8px}.inline-fields button,.save-button{color:#fff;cursor:pointer;background:#e22b2b;border:0;border-radius:7px;padding:7px 11px}.color-fields label{align-items:center;gap:6px;font-size:12px;display:flex}.color-fields input{background:0 0;border:0;width:30px;height:30px;padding:0}.config-list{border-top:1px solid #e8ebef;max-height:520px;overflow:auto}.item-setting{border-bottom:1px solid #eef0f3}.item-setting-head{text-align:left;cursor:pointer;background:#fff;border:0;gap:2px;width:100%;padding:11px 20px;display:grid}.item-setting-head:hover{background:#fafbfc}.item-setting-head span{font-size:13px;font-weight:700}.item-setting-head em{color:#929aa4;font-size:11px;font-style:normal}.item-setting-body{background:#fafbfc;gap:10px;padding:4px 20px 16px;display:grid}.item-setting-body>label{color:#58626e;gap:4px;font-size:11px;display:grid}.item-setting-body textarea{resize:vertical;min-height:64px}.item-setting-body .inline-fields label{color:#58626e;align-items:center;gap:4px;font-size:11px;display:flex}.save-button{justify-self:start}.preview-panel{min-height:900px;padding:20px}.panel-heading{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.panel-heading h2{font-size:20px}.preview-actions{align-items:center;gap:7px;display:flex}.preview-actions button{color:#fff;cursor:pointer;background:#263341;border:0;border-radius:8px;padding:7px 11px;font-size:12px;font-weight:700}.preview-actions button:disabled{opacity:.4;cursor:not-allowed}.export-blocked,.export-error{border-radius:8px;margin:-7px 0 15px;padding:9px 12px;font-size:12px}.export-blocked{color:#855710;background:#fff7e8}.export-error{color:#9d1c1c;background:#fff0f0}.status{border-radius:20px;padding:6px 10px;font-size:12px;font-weight:700}.poster-viewport{background:#ddd;border-radius:8px;width:540px;height:960px;margin:0 auto;overflow:hidden;box-shadow:0 15px 40px #1c263047}.poster{transform-origin:0 0;width:1080px;height:1920px;position:relative;overflow:hidden;transform:scale(.5)}.poster-header{border-radius:26px;position:absolute;overflow:hidden}.module-background,.editor-module-background{z-index:0;opacity:var(--bg-opacity,1);position:absolute;inset:0}.poster-header>span,.gift-title-layer,.gift-badge-layer,.category-title-bar>span{z-index:2}.market-price-layer{text-decoration-line:line-through;text-decoration-thickness:.08em}.price-layer{align-items:baseline;line-height:1;display:inline-flex}.price-prefix{flex:none;line-height:1}.poster-section{border:4px solid;border-radius:18px;position:absolute;overflow:hidden}.category-title-bar{z-index:2;width:100%;position:absolute;top:0;left:0;overflow:hidden}.poster-items{box-sizing:border-box;flex-direction:column;justify-content:center;height:100%;padding:78px 12px 16px;font-weight:650;display:flex;position:absolute;inset:0}.poster-item{white-space:nowrap;justify-content:space-between;align-items:baseline;gap:10px;min-width:0;display:flex}.poster-item span{flex:auto;min-width:0}.poster-item span>i{margin-right:3px;font-style:normal}.poster-item .item-note{margin-left:2px;font-size:.68em;font-weight:650}.poster-item b{text-align:right;flex:none;margin-left:auto;font-size:.84em}.poster-item.highlight-1,.poster-item.highlight-2{color:#df1e1e}.poster-section.is-overflow{box-shadow:inset 0 0 0 8px #ff9b26}.section-gift .poster-items{justify-content:center;bottom:auto;right:auto}.settings-page{padding:28px 34px 50px}.settings-heading{justify-content:space-between;align-items:end;margin-bottom:20px;display:flex}.settings-heading h2{margin:4px 0;font-size:28px}.settings-heading p,.settings-card>p{color:#75808d;margin:5px 0 16px;font-size:13px}.save-toast{color:#08755c;background:#e4f8f1;border-radius:20px;padding:8px 12px;font-size:12px}.settings-layout{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:18px;min-height:650px;display:grid}.settings-sidebar{background:#fff;border:1px solid #e4e8ee;border-radius:16px;gap:5px;padding:8px;display:grid;position:sticky;top:18px;box-shadow:0 6px 24px #18212b0a}.settings-sidebar button{text-align:left;color:#626d79;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;width:100%;padding:13px 12px;display:flex}.settings-sidebar button:hover{background:#f7f8fa}.settings-sidebar button>b{color:#8b949f;background:#eef1f4;border-radius:7px;place-items:center;width:26px;height:26px;font-size:12px;display:grid}.settings-sidebar span{gap:2px;min-width:0;display:grid}.settings-sidebar strong{font-size:13px}.settings-content{min-width:0}.template-kind-tabs{background:#fff;border:1px solid #e4e8ee;border-radius:12px;margin-bottom:10px;padding:0 10px}.output-template-roadmap{min-height:420px}.roadmap-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px;display:grid}.roadmap-grid article{background:#fafbfc;border:1px solid #e3e7ec;border-radius:12px;align-content:start;gap:8px;min-height:130px;padding:18px;display:grid}.roadmap-grid span,.phase-note{color:#75808d;font-size:12px;line-height:1.6}.phase-note{background:#fff7e8;border-radius:9px;margin-top:22px;padding:12px 14px}.settings-content>.settings-card{min-height:650px}.settings-card{background:#fff;border:1px solid #e4e8ee;border-radius:16px;min-width:0;padding:22px;box-shadow:0 6px 24px #18212b0a}.settings-tall{min-height:460px}.setting-title{align-items:center;gap:10px;display:flex}.setting-title>b{color:#fff;background:#e22b2b;border-radius:8px;place-items:center;width:28px;height:28px;display:grid}.setting-title h3{margin:0;font-size:18px}.style-preview{border-radius:12px;align-items:end;height:150px;padding:16px;display:flex;overflow:hidden;box-shadow:inset 0 0 0 1px #00000012}.style-preview span{color:#fff;border-radius:7px;padding:8px 12px;font-weight:800}.template-editor-card{padding:18px}.template-toolbar{align-items:center;gap:8px;margin:12px 0;display:flex}.template-toolbar select{min-width:230px;margin-right:auto}.template-toolbar button{cursor:pointer;background:#fff;border:1px solid #d7dce3;border-radius:8px;padding:8px 11px}.template-toolbar button.primary{color:#fff;background:#d92525;border-color:#d92525}.font-status{color:#2563eb!important;margin:-4px 0 10px!important}.template-workbench{grid-template-columns:348px minmax(260px,1fr);align-items:start;gap:16px;display:grid}.canvas-column{background:#f1f3f6;border-radius:13px;padding:12px}.editor-canvas{touch-action:none;border-radius:6px;width:324px;height:576px;position:relative;overflow:hidden;box-shadow:0 8px 25px #11182726;background-size:cover!important}.editor-region{z-index:3;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border:1px dashed #0000;position:absolute}.editor-region.selected{border:2px solid #2563eb;box-shadow:0 0 0 2px #fffa}.region-tag{color:#fff;background:#2563eb;border-radius:4px 4px 0 0;padding:2px 5px;font-size:9px;line-height:16px;position:absolute;top:-20px;left:-2px}.editor-region{border-radius:5px;overflow:hidden}.editor-region>span,.editor-gift-content{z-index:2}.editor-text-layer{cursor:move;touch-action:none;border-radius:2px}.editor-text-layer:hover,.editor-text-layer.selected{outline:1px solid #fff;box-shadow:0 0 0 2px #2563eb}.editor-text-layer.is-hidden{outline:1px dashed #64748b;opacity:.2!important}.editor-gift-content{gap:3px;display:grid}.editor-category-card{z-index:1;cursor:pointer;background:#fff;border:1px solid #d5a82f;border-radius:5px;position:absolute;overflow:hidden}.editor-category-bar{width:100%;position:relative;overflow:hidden}.editor-category-bar>span{z-index:2}.editor-locked-lines{color:#2d333b;white-space:nowrap;padding:5px 7px;font-size:8px;line-height:1.55}.canvas-help{color:#727c88;margin-top:9px;font-size:11px;line-height:1.5}.template-properties{background:#fff;border:1px solid #e0e4ea;border-radius:12px;gap:10px;max-height:600px;padding:14px;display:grid;overflow:auto}.template-properties label{color:#58616d;gap:4px;font-size:11px;display:grid}.template-properties input:not([type=color]),.template-properties select,.template-toolbar select{background:#fff;border:1px solid #d8dde4;border-radius:7px;min-width:0;padding:7px 8px}.template-properties input[type=color]{background:0 0;border:0;width:36px;height:30px;padding:0}.property-tabs{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.property-tabs button{cursor:pointer;background:#eef1f4;border:0;border-radius:7px;padding:7px 4px;font-size:11px}.property-tabs button.active{color:#fff;background:#d92525}.property-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.property-divider{background:#e6e9ee;height:1px;margin:3px 0}.layer-controls,.background-controls{background:#fafbfc;border:1px solid #e5e8ed;border-radius:9px;gap:8px;padding:9px;display:grid}.layer-controls>strong{color:#343b45;font-size:12px}.font-field{gap:8px;display:grid}.font-manual-row{grid-template-columns:1fr auto;gap:6px;display:grid}.font-manual-row button{cursor:pointer;background:#fff;border:1px solid #d8dde4;border-radius:7px;padding:0 10px}.checkbox-label{grid-template-columns:auto 1fr;align-items:center;display:flex!important}.checkbox-label input{width:auto!important}.editor-upload{cursor:pointer;justify-content:center;display:flex!important}.generation-template-select{color:#67717e;align-items:center;gap:8px;margin-top:9px;font-size:12px;display:flex}.generation-template-select select{background:#fff;border:1px solid #d9dee5;border-radius:7px;padding:6px 8px}.color-row{gap:18px;margin:14px 0;display:flex}.color-row label{align-items:center;gap:7px;font-size:12px;display:flex}.color-row input{background:0 0;border:0;width:34px;height:30px;padding:0}.spacing-settings{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:14px 0;display:grid}.spacing-settings label{color:#68737f;gap:5px;font-size:11px;display:grid}.spacing-settings input{border:1px solid #d9dee5;border-radius:7px;min-width:0;padding:7px 8px}.settings-actions{gap:8px;display:flex}.settings-actions button,.secondary-upload,.catalog-row button,.rule-list button,.merge-groups button{cursor:pointer;border:0;border-radius:7px;padding:7px 11px}.settings-actions button,.catalog-row button{color:#fff;background:#e22b2b}.secondary-upload{color:#49535f;background:#eef1f5}.secondary-upload input{display:none}.rule-list{max-height:120px;margin-bottom:12px;overflow:auto}.rule-list>div{border-bottom:1px solid #edf0f3;grid-template-columns:1fr auto 1fr auto;align-items:center;gap:8px;padding:8px 0;font-size:12px;display:grid}.rule-list button,.merge-groups button{color:#7c3333;background:#fff0f0}.catalog-list{border:1px solid #e8ebef;border-radius:10px;max-height:330px;overflow:auto}.catalog-row{border-bottom:1px solid #edf0f3;grid-template-columns:minmax(150px,1fr) minmax(130px,1fr) auto;align-items:center;gap:8px;padding:10px;display:grid}.catalog-row:last-child{border-bottom:0}.catalog-row>div{gap:3px;min-width:0;display:grid}.catalog-row b{font-size:12px}.catalog-row small{color:#8a939e;max-height:34px;font-size:10px;overflow:hidden}.catalog-row input,.catalog-row textarea{border:1px solid #d9dee5;border-radius:7px;min-width:0;padding:7px 8px;font-size:12px}.catalog-row textarea{resize:vertical;height:52px}.empty-small{text-align:center;color:#8a939e;background:#f7f8fa;border-radius:10px;padding:35px}.merge-groups{gap:8px;margin-bottom:12px;display:grid}.merge-groups article{background:#fff6f0;border:1px solid #ffd9c5;border-radius:9px;justify-content:space-between;align-items:flex-start;gap:12px;padding:11px 12px;display:flex}.merge-group-main{flex:1;gap:5px;min-width:0;display:grid}.merge-groups em{color:#d05a28;font-size:11px;font-style:normal;font-weight:700}.merge-groups small{color:#865c49;font-size:10px}.merge-member-list{gap:3px;margin-top:4px;display:grid}.merge-member-list>div{background:#ffffffb8;border-radius:6px;grid-template-columns:minmax(0,1fr) 130px auto;align-items:center;gap:8px;min-height:28px;padding:4px 6px;display:grid}.merge-member-list span{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.merge-member-list small{text-align:right}.merge-member-list button{color:#a03c3c;background:#fff;padding:4px 7px}.merge-member-list .member-actions{gap:4px;display:flex;overflow:visible}.merge-member-list .member-actions button.active{color:#cf1d1d;background:#ffe0e0}.dissolve-group{flex:none}.merge-workbench{grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:12px;display:grid}.draggable-projects{background:#f5f7f9;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;max-height:330px;padding:9px;display:grid;overflow:auto}.draggable-project-row{cursor:grab;background:#fff;border:1px solid #dfe4ea;border-radius:8px;justify-content:space-between;align-items:center;gap:7px;min-width:0;padding:8px 9px;display:flex}.draggable-project-row>div{gap:4px;min-width:0;display:grid}.draggable-project-row>button{color:#7a5360;cursor:pointer;background:#f4edf0;border:0;border-radius:6px;flex:none;padding:5px 7px;font-size:9px}.draggable-project-row>button.active{color:#bd1f1f;background:#ffe5e5}.draggable-projects b{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.draggable-projects small{color:#e22b2b;font-size:10px}.merge-bucket{background:snow;border:2px dashed #e0a0a0;border-radius:10px;flex-direction:column;gap:8px;min-height:190px;padding:14px;display:flex}.merge-bucket>strong{color:#9a4646;font-size:12px}.merge-bucket>span{background:#fff;border-radius:6px;justify-content:space-between;padding:5px 7px;font-size:11px;display:flex}.merge-bucket>span button{color:#b22828;cursor:pointer;background:0 0;border:0}.merge-bucket>input{border:1px solid #d8dde4;border-radius:7px;margin-top:auto;padding:8px}.merge-bucket .save-button:disabled{opacity:.45;cursor:not-allowed}.generation-projects{padding:0;overflow:hidden}.generation-projects>summary{cursor:pointer;justify-content:space-between;padding:18px 20px;list-style:none;display:flex}.generation-projects>summary span{gap:3px;display:grid}.generation-projects>summary small,.generation-projects>summary i{color:#75808d;font-size:11px;font-style:normal}.generation-projects .merge-editor{padding:0 15px 15px}.generation-projects .merge-workbench{grid-template-columns:1fr}.generation-projects .draggable-projects{grid-template-columns:1fr;max-height:300px}.generation-projects .draggable-project-row{min-height:35px}.generation-projects .draggable-project-row>div{flex:1}.generation-projects .draggable-projects small{text-align:right;flex:none}.generation-projects .merge-member-list>div{grid-template-columns:minmax(0,1fr) 90px auto}.definition-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:16px;display:grid}.definition-list{background:#f5f7f9;border-radius:11px;gap:6px;max-height:530px;padding:7px;display:grid;overflow:auto}.definition-list article{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:5px;display:grid}.definition-list article.disabled{opacity:.52}.definition-select,.add-definition{text-align:left;cursor:pointer;background:#fff;border:1px solid #dfe4ea;border-radius:8px;padding:11px}.definition-select{gap:3px;min-width:0;display:grid}.definition-select b{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.definition-select small{color:#8a939e;font-size:10px}.add-definition{color:#c52828;border-style:dashed;font-weight:700}.definition-toggle{color:#7e4b4b;cursor:pointer;background:#ffeaea;border:0;border-radius:7px;padding:0 8px;font-size:11px}.definition-editor{border:1px solid #e3e7ec;border-radius:11px;flex-direction:column;gap:15px;min-height:420px;padding:18px;display:flex}.definition-editor>label{color:#59636f;gap:6px;font-size:12px;font-weight:700;display:grid}.definition-editor input{border:1px solid #d8dde4;border-radius:8px;min-width:0;padding:9px 10px}.member-input{grid-template-columns:minmax(0,1fr) auto;gap:7px;display:grid}.member-input button{color:#fff;cursor:pointer;background:#e22b2b;border:0;border-radius:8px;padding:0 13px}.manual-members{gap:5px;display:grid}.manual-members>div{background:#f7f8fa;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;min-height:34px;padding:6px 9px;display:flex}.manual-members span{font-size:12px}.manual-members button{color:#a23838;cursor:pointer;background:0 0;border:0;font-size:11px}.definition-note{color:#808a95;font-size:11px}.definition-editor>.save-button{margin-top:auto}.definition-editor>.save-button:disabled{opacity:.45;cursor:not-allowed}.single-output-workspace{padding:24px 34px 40px}.single-output-workspace .preview-panel{min-height:1040px}.detail-generation-workspace{grid-template-columns:238px minmax(0,1fr);align-items:start;gap:18px;display:grid}.detail-generation-controls{background:#fff;border:1px solid #e0e5eb;border-radius:14px;gap:16px;padding:18px;display:grid;position:sticky;top:18px;box-shadow:0 8px 24px #1f29370d}.detail-generation-controls h3{margin:-8px 0 0}.detail-generation-controls p,.detail-generation-controls small{color:#75808c;margin:0;font-size:11px;line-height:1.5}.detail-generation-controls label{color:#4d5966;grid-template-columns:1fr auto;gap:7px;font-size:12px;display:grid}.detail-generation-controls label input{grid-column:1/-1;width:100%}.detail-generation-controls button{cursor:pointer;background:#f8fafc;border:1px solid #d7dde4;border-radius:8px;padding:9px}.kt-viewport{background:#ddd;border-radius:8px;margin:0 auto;overflow:hidden;box-shadow:0 15px 40px #1c263047}.kt-board{transform-origin:0 0;position:relative;overflow:hidden}.kt-header-art{background-size:cover;place-items:end center;display:grid;position:absolute;overflow:hidden}.kt-header-art>span{color:#fffc;margin-bottom:20px;font-size:30px;font-weight:800}.kt-price-module,.kt-gift-shell,.kt-footer{border-radius:28px;position:absolute;overflow:hidden}.kt-price-module>span,.kt-gift-title,.kt-footer>span{z-index:2}.kt-strike{text-decoration:line-through;text-decoration-thickness:.08em}.kt-sale-price,.kt-strike{align-items:baseline;display:inline-flex}.kt-sale-price small,.kt-strike small{line-height:1}.kt-gift-shell{border:2px solid #c92029}.kt-gift-title{background:#cb2d60;border-radius:18px;place-items:center;min-width:210px;height:105px;display:grid}.kt-gift-line{white-space:nowrap;justify-content:space-between;gap:20px;font-weight:700;display:flex;position:absolute;right:20px}.kt-gift-line b{color:#c92029}.kt-category{border:3px solid;border-radius:22px;position:absolute;overflow:hidden}.kt-category>header{place-items:center;display:grid;position:relative;overflow:hidden}.kt-category>header>span{z-index:2;color:#fff;line-height:1;position:relative}.kt-items{flex-direction:column;justify-content:center;display:flex;position:absolute;inset:76px 0 0}.kt-item{white-space:nowrap;justify-content:space-between;align-items:baseline;gap:8px;min-width:0;font-weight:650;display:flex}.kt-item>span{min-width:0}.kt-item i{margin-right:3px;font-style:normal}.kt-item small{margin-left:2px;font-size:.67em}.kt-item b{flex:none;margin-left:auto;font-size:.84em}.kt-item.highlight-1,.kt-item.highlight-2{color:#d91e25}.kt-category.is-overflow{box-shadow:inset 0 0 0 8px #ff9b26}.kt-footer{border-radius:0;place-items:center;display:grid}.detail-viewport{background:#ddd;border-radius:8px;margin:0 auto;overflow:hidden;box-shadow:0 15px 40px #1c263047}.detail-page{transform-origin:0 0;background-repeat:no-repeat;position:relative;overflow:hidden}.detail-page header{text-align:center;border-radius:22px 22px 0 0;align-content:center;justify-items:center;padding:34px 48px;display:grid}.detail-page header h1{margin:0}.detail-table{background:#fff;border:2px solid;border-top:0;overflow:hidden}.detail-table-head,.detail-row{align-items:stretch;display:grid}.detail-table-head>*,.detail-row>*{text-align:center;border-right:1px solid #fff5;justify-content:center;align-items:center;min-width:0;padding:10px 12px;display:flex}.detail-table-head{border:2px solid;border-radius:24px 24px 0 0;font-size:48px;line-height:1;overflow:hidden}.detail-table-head>*{border-color:inherit;border-right-width:2px;padding:8px 12px;font-weight:700}.detail-table-head>:last-child{border-right:0}.detail-table-head small{font-size:.62em;font-weight:500;line-height:1.15;display:block}.detail-head-project{grid-area:1/1/3}.detail-head-caption{border-bottom:2px solid;border-color:inherit;grid-area:1/2/auto/-1;font-size:.88em;border-right:0!important}.detail-head-content{grid-area:2/2}.detail-head-audience,.detail-head-clinical{grid-row:2}.detail-head-audience{white-space:nowrap;flex-direction:column;gap:4px;padding-inline:4px!important}.detail-head-audience small{white-space:nowrap}.detail-group{border-top:1px solid;place-items:center;font-size:25px;font-weight:800;display:grid}.detail-row{border-top:1px solid}.detail-row>*{border-right:1px solid;line-height:1.28;overflow:hidden}.detail-content-cell,.detail-clinical-cell{text-align:left!important;justify-content:flex-start!important}.detail-clinical-cell{padding:10px 15px!important}.detail-row i{font-size:48px;font-style:normal;font-weight:900;line-height:1;padding-inline:4px!important}.detail-check-male{color:#246bea}.detail-check-femaleUnmarried{color:#ef59d5}.detail-check-femaleMarried{color:#d9005b}.detail-notes{grid-template-columns:1fr 1fr;gap:22px;margin-top:28px;display:grid}.detail-notes article{border-radius:24px;padding:24px 30px}.detail-notes h2{margin:0 0 10px;font-size:30px}.detail-notes p{margin:0;font-size:20px;line-height:1.5}.detail-module-stack{flex-direction:column;align-items:stretch;display:flex}.detail-module-stack>img{object-fit:contain;flex:none;align-self:center;display:block}.detail-document-pages{grid-template-columns:repeat(auto-fit,minmax(448px,1fr));align-items:start;gap:28px;display:grid}.detail-document-pages>article{justify-items:center;gap:8px;min-width:0;display:grid}.detail-document-pages>article>span{color:#596273;background:#edf1f5;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700}.other-template-settings{min-height:650px}.other-template-name{color:#58616d;gap:5px;font-size:12px;display:grid}.other-template-name input{border:1px solid #d8dde4;border-radius:7px;padding:8px}.other-template-grid{grid-template-columns:320px minmax(280px,1fr);align-items:start;gap:22px;margin-top:18px;display:grid}.template-miniature{border-radius:12px;height:500px;overflow:hidden;box-shadow:0 10px 30px #11182726}.template-miniature.kt{background:#ffd3df;grid-template-rows:145px 60px 55px 1fr;gap:8px;padding:12px;display:grid}.template-miniature.kt>div,.template-miniature.kt>strong,.template-miniature.kt>span{color:#7d2740;background-size:cover;border-radius:8px;place-items:center;display:grid}.template-miniature.kt>section{grid-template-columns:1fr 1fr;gap:8px;display:grid}.template-miniature.kt i{color:#fff;text-align:center;border-radius:8px 8px 0 0;padding:10px;font-style:normal}.template-miniature.detail{background-size:cover;grid-template-rows:100px 55px 42px 1fr 70px;gap:5px;padding:12px;display:grid}.template-miniature.detail>*{place-items:center;margin:0;padding:10px;font-style:normal;display:grid}.other-template-controls{gap:18px;display:grid}.other-template-controls>.secondary-upload{justify-self:start}.other-template-controls .property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.other-template-controls label{color:#58616d;gap:5px;font-size:12px;display:grid}.other-template-controls input{background:#fff;border:1px solid #d8dde4;border-radius:7px;min-width:0;height:38px;padding:6px}.kt-template-summary{border-radius:12px;justify-self:center;width:300px;max-height:620px;position:relative;overflow:hidden;box-shadow:0 10px 30px #11182726;background-size:100% 100%!important}.kt-template-summary>*{color:#fff;place-items:center;width:92%;font-size:12px;font-style:normal;display:grid;position:absolute;left:4%;overflow:hidden}.kt-template-summary>span{color:#fff;background:#11182799;border-radius:5px;width:auto;padding:4px 7px;top:8px;left:8px}.kt-editor-shell{background:#eef1f4;border-radius:12px;justify-self:center;padding:10px}.kt-editor-canvas{-webkit-user-select:none;user-select:none;border-radius:8px;position:relative;overflow:hidden;box-shadow:0 10px 30px #11182726;background-size:100% 100%!important}.kt-editor-region{z-index:5;cursor:grab;border:1px dashed #2563eb66;position:absolute;overflow:hidden}.kt-editor-region.selected{border:2px solid #2563eb;box-shadow:0 0 0 2px #fffa}.kt-editor-region>small{z-index:8;color:#fff;background:#2563ebcc;border-radius:3px;padding:2px 4px;font-size:7px;position:absolute;top:2px;left:2px}.kt-editor-text{z-index:7;cursor:move}.kt-editor-category{background:#fff;border:1px solid #c92029;border-radius:5px;position:absolute;overflow:hidden}.kt-editor-category header{place-items:center;display:grid;overflow:hidden}.kt-editor-category header b{white-space:nowrap;line-height:1}.kt-editor-category>div{color:#111;flex-direction:column;justify-content:center;gap:1px;padding:4px 5px;font-size:7px;line-height:1.04;display:flex}.kt-editor-category>div span{white-space:nowrap}.kt-editor-footer{color:#fff;cursor:pointer;place-items:center;font-size:9px;display:grid;position:absolute}.module-tabs{grid-template-columns:repeat(5,1fr);gap:5px;display:grid}.module-tabs button{color:#5d6671;cursor:pointer;background:#eef1f4;border:0;border-radius:7px;padding:8px 4px;font-size:11px}.module-tabs button.active{color:#fff;background:#d92525}.compact-editor{background:#fafbfc;border:1px solid #e1e6eb;border-radius:10px;gap:10px;padding:12px;display:grid}.compact-editor>strong{font-size:13px}.compact-editor .secondary-upload{justify-self:start}.detail-template-workbench{grid-template-columns:340px minmax(0,1fr);align-items:start;gap:18px;margin-top:18px;display:grid}.detail-template-editor{grid-template-columns:1fr;align-items:start;gap:18px;display:grid}.detail-style-controls{gap:12px;display:grid}.detail-template-preview{background:#eef1f4;border-radius:12px;padding:12px;position:sticky;top:18px}.detail-template-preview-heading{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.detail-template-preview-heading strong{font-size:13px}.detail-template-preview-heading span{color:#79838e;font-size:10px}.detail-template-preview-canvas{background-repeat:no-repeat;border-radius:8px;flex-direction:column;gap:7px;max-height:720px;padding:10px;display:flex;overflow:auto;box-shadow:0 8px 24px #11182726}.detail-template-preview-canvas>header{text-align:center;border-radius:7px;align-content:center;place-items:center;min-height:76px;display:grid}.detail-preview-table{background:#fff;border:1px solid #d8a8b8;border-radius:6px;overflow:hidden}.detail-preview-table-head{border:1px solid;border-color:inherit;background-repeat:no-repeat;grid-template-rows:24px 36px;grid-template-columns:1.1fr 1.4fr .45fr .55fr .55fr 1.7fr;align-items:stretch;display:grid}.detail-preview-table-head>*{border-right:1px solid;border-color:inherit;text-align:center;place-items:center;padding:3px 2px;font-size:8px;line-height:1;display:grid}.detail-preview-table-head>:first-child{grid-area:1/1/3}.detail-preview-table-head>strong{border-bottom:1px solid;border-right:0;border-color:inherit;grid-area:1/2/auto/-1;font-size:9px}.detail-preview-table-head>:nth-child(3){grid-area:2/2}.detail-preview-table-head>:nth-child(4){grid-area:2/3}.detail-preview-table-head>:nth-child(5){grid-area:2/4}.detail-preview-table-head>:nth-child(6){grid-area:2/5}.detail-preview-table-head>:nth-child(7){border-right:0;grid-area:2/6}.detail-preview-table-head small{font-size:6px;display:block}.detail-preview-group p{grid-template-columns:1.1fr 1.4fr .45fr .55fr .55fr 1.7fr;align-items:stretch;display:grid}.detail-preview-group strong{text-align:center;padding:4px;font-size:8px;display:block}.detail-preview-group p{color:#3d3337;margin:0}.detail-preview-group p>*{text-align:center;min-width:0;font-size:inherit;border-right:1px solid #eadde2;place-items:center;padding:5px 3px;font-style:normal;display:grid;overflow:hidden}.detail-preview-group p>:nth-child(3){color:#246bea}.detail-preview-group p>:nth-child(4){color:#ef59d5}.detail-preview-group p>:nth-child(5){color:#d9005b}.detail-preview-fixed{color:#8d5368;background:#fff7fa;border:1px dashed #c98ba2;border-radius:7px;align-content:center;place-items:center;min-height:66px;display:grid}.detail-preview-fixed img{width:100%;height:auto;display:block}.detail-preview-fixed span{margin-top:4px;font-size:9px}.detail-template-preview>p{color:#78838e;margin:9px 2px 0;font-size:10px;line-height:1.45}.fixed-module-editor{border:1px solid #e1e6eb;border-radius:12px;padding:16px}.fixed-module-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.fixed-module-heading h4{margin:0 0 4px}.fixed-module-heading p{color:#77818c;margin:0 0 14px;font-size:11px}.fixed-module-heading button{color:#fff;cursor:pointer;background:#d92525;border:0;border-radius:7px;padding:8px 10px}.fixed-module-list{gap:8px;margin-top:12px;display:grid}.fixed-module-list article{background:#fafbfc;border:1px solid #e3e7ec;border-radius:8px;grid-template-columns:auto auto minmax(120px,1fr) auto auto auto;align-items:center;gap:6px;padding:9px;display:grid}.fixed-module-list article input{border:1px solid #d8dde4;border-radius:6px;min-width:0;padding:7px}.fixed-module-list article span{color:#7b8591;font-size:10px}.fixed-module-list article button{cursor:pointer;border:0;border-radius:6px;padding:6px}.fixed-module-list article button:disabled{opacity:.35}.detail-module-order article{cursor:grab}.detail-module-order article:active{cursor:grabbing}.detail-module-order article.dynamic-module{background:#f1f6ff;border-color:#b9d1ff}.drag-handle{color:#7b8591;font-size:18px}.module-index{background:#7c8794;border-radius:50%;place-items:center;width:22px;height:22px;display:grid;color:#fff!important}.detail-module-order article small{color:#65758a}:root{--ui-bg:#f7f7f8;--ui-panel:#fff;--ui-panel-muted:#f2f3f5;--ui-border:#e2e3e7;--ui-border-strong:#cfd1d8;--ui-text:#1f2024;--ui-muted:#73757d;--ui-subtle:#9a9ca3;--ui-accent:#0d99ff;--ui-accent-hover:#0787e5;--ui-accent-soft:#eaf5ff;--ui-purple:#a259ff;--ui-success:#14ae5c;--ui-warning:#f5a623;--ui-radius:10px;color:var(--ui-text);background:var(--ui-bg);font-family:Inter,SF Pro Text,PingFang SC,Microsoft YaHei,sans-serif}html{background:var(--ui-bg)}body{min-width:1080px;color:var(--ui-text);background:var(--ui-bg)}button,input,textarea,select{outline:none}button{transition:color .14s,background-color .14s,border-color .14s,box-shadow .14s,transform .14s}button:not(:disabled):active,.upload-button:not(.disabled):active,.empty-upload-action:active{transform:translateY(1px)}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,label[tabindex]:focus-visible{border-color:var(--ui-accent)!important;box-shadow:0 0 0 3px color-mix(in srgb, var(--ui-accent) 18%, transparent)!important}input:not([type=range]):not([type=color]),textarea,select{min-height:34px;color:var(--ui-text);border:1px solid var(--ui-border-strong)!important;background:var(--ui-panel)!important;border-radius:7px!important}input[type=range]{accent-color:var(--ui-accent);cursor:pointer}input[type=checkbox]{accent-color:var(--ui-accent)}input[type=color]{cursor:pointer;overflow:hidden;border:1px solid var(--ui-border)!important;border-radius:7px!important}::selection{color:#fff;background:var(--ui-accent)}*{scrollbar-color:#c5c7cd transparent;scrollbar-width:thin}.topbar{z-index:100;border-bottom:1px solid var(--ui-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;height:64px;padding:0 24px;position:sticky;top:0;box-shadow:inset 0 1px #fff}.app-brand{align-items:center;gap:11px;display:flex}.app-mark{background:#1f2024;border-radius:8px;grid-template-columns:1fr 1fr;gap:3px;width:32px;height:32px;padding:6px;display:grid;box-shadow:0 1px 2px #0002}.app-mark i{background:#fff;border-radius:2px;display:block}.app-mark i:first-child{background:#f24e1e}.app-mark i:nth-child(2){background:#ff7262}.app-mark i:nth-child(3){background:#a259ff}.app-mark i:nth-child(4){background:#1abcfe}.topbar .eyebrow{color:var(--ui-subtle);letter-spacing:.12em;font-size:8px}.topbar h1{letter-spacing:-.01em;margin-top:0;font-size:16px;font-weight:650}.primary-nav{border:1px solid var(--ui-border);background:var(--ui-panel-muted);border-radius:9px;align-self:auto;gap:2px;height:38px;padding:3px}.primary-nav button{color:#666870;border:0;border-radius:6px;justify-content:center;align-items:center;gap:7px;min-width:108px;padding:0 14px;font-size:13px;display:flex}.primary-nav button span{color:var(--ui-subtle);font-size:15px}.primary-nav button:hover{color:var(--ui-text);background:#ffffffa8}.primary-nav button.active{color:var(--ui-text);background:#fff;border:0;box-shadow:0 1px 2px #00000018,0 0 0 1px #00000008}.primary-nav button.active span{color:var(--ui-accent)}.upload-button{background:var(--ui-accent);border-radius:7px;gap:6px;height:36px;padding:0 14px;font-size:13px;font-weight:600;box-shadow:0 1px 2px #0002}.upload-button:hover{background:var(--ui-accent-hover)}.upload-button>span{font-size:16px;font-weight:400}.error-banner{border-color:#f4b6b6;border-radius:8px;margin:12px 24px 0;padding:10px 12px;font-size:12px}.context-navigation{border-bottom-color:var(--ui-border);background:#fff;padding:0 24px}.output-level{border-bottom-color:#ececef;min-height:54px}.output-navigation{background:var(--ui-panel-muted);border-radius:8px;gap:2px;height:38px;padding:3px}.output-navigation button,.template-kind-tabs button{color:#696b73;border:0;border-radius:6px;padding:0 16px;font-size:12px;font-weight:600}.output-navigation button:hover,.template-kind-tabs button:hover{color:var(--ui-text);background:#fff9}.output-navigation button.active,.template-kind-tabs button.active{color:var(--ui-text);background:#fff;border:0;box-shadow:0 1px 2px #00000016,0 0 0 1px #00000008}.batch-download-actions{gap:6px}.batch-download{border-color:var(--ui-accent);color:#fff;background:var(--ui-accent);border-radius:7px;min-height:34px;padding:0 12px;font-size:12px;font-weight:600}.batch-download:hover{border-color:var(--ui-accent-hover);background:var(--ui-accent-hover)}.batch-download.secondary{color:#4e5158;border-color:var(--ui-border-strong);background:#fff}.batch-download.secondary:hover{color:var(--ui-text);background:#f8f8f9;border-color:#b9bbc3}.package-switcher{min-height:58px}.package-switcher>b{color:var(--ui-muted);font-weight:550}.package-switcher>div{padding:8px 0}.package-switcher button{border-color:var(--ui-border);border-radius:7px;min-width:148px;padding:7px 10px}.package-switcher button:hover{background:#fafafa;border-color:#bfc2ca}.package-switcher button.active{color:#086eb8;background:var(--ui-accent-soft);border-color:#86c9fa;box-shadow:inset 0 0 0 1px #fff}.empty-state{text-align:center;justify-items:stretch;gap:28px;width:min(960px,100% - 48px);margin:72px auto;display:grid}.empty-upload-card{border:1px solid var(--ui-border);background:#fff;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;min-height:390px;padding:54px;display:flex;box-shadow:0 1px 2px #0000000a,0 12px 35px #1f293708}.empty-icon{width:74px;height:74px;color:var(--ui-accent);background:linear-gradient(145deg,#f5fbff,#e8f5ff);border:1px solid #b9dcf7;border-radius:18px;align-content:center;place-items:center;gap:2px;margin:0 0 22px;display:grid;box-shadow:inset 0 1px #fff}.empty-icon span{font-size:27px;line-height:1}.empty-icon small{color:#4b9bd3;letter-spacing:.08em;font-size:8px;font-weight:800}.empty-state h2{letter-spacing:-.025em;margin:8px 0 7px;font-size:25px;font-weight:650}.empty-state p{max-width:560px;color:var(--ui-muted);margin:0;font-size:13px;line-height:1.7}.empty-upload-action{color:#fff;background:var(--ui-accent);cursor:pointer;border-radius:7px;align-items:center;gap:7px;height:38px;margin-top:24px;padding:0 17px;font-size:13px;font-weight:600;display:inline-flex;box-shadow:0 1px 2px #0002}.empty-upload-action:hover{background:var(--ui-accent-hover)}.privacy-note{color:var(--ui-subtle);margin-top:12px;font-size:10px}.flow{grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:12px;margin:0;display:grid}.flow>span{text-align:left;border:1px solid var(--ui-border);background:#fff;border-radius:10px;grid-template-columns:27px 1fr;column-gap:9px;min-width:0;padding:14px;display:grid}.flow>span i{color:#4b4d54;background:var(--ui-panel-muted);border-radius:6px;grid-row:1/3;place-items:center;width:27px;height:27px;font-size:9px;font-style:normal;font-weight:700;display:grid}.flow>span b{font-size:12px;font-weight:650}.flow>span small{color:var(--ui-subtle);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:9px;overflow:hidden}.flow>em{color:#b3b5bc;font-style:normal}.workspace,.single-output-workspace{padding:20px 24px 36px}.workspace{grid-template-columns:330px minmax(650px,1fr);gap:16px}.inspector{gap:10px;max-height:calc(100vh - 104px);padding-right:2px;position:sticky;top:84px;overflow:auto}.panel-card,.preview-panel,.settings-card{border-color:var(--ui-border);border-radius:11px;box-shadow:0 1px 2px #00000008}.panel-card{padding:16px}.panel-card h2{font-size:20px}.metric-grid{gap:7px;margin-top:14px}.metric{background:#fafafb;border:1px solid #ebebee;border-radius:7px;padding:10px}.metric span{color:var(--ui-muted);font-size:10px}.metric strong{margin-top:2px;font-size:16px}.preview-panel{background-color:#f2f3f5;background-image:radial-gradient(#d7d9de 1px,#0000 1px);background-size:16px 16px;min-height:820px;padding:0 18px 24px;overflow:clip}.panel-heading{z-index:20;border-bottom:1px solid var(--ui-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff4;margin:0 -18px 20px;padding:14px 18px;position:sticky;top:64px}.panel-heading h2{margin-top:2px;font-size:17px}.panel-heading .eyebrow{color:var(--ui-subtle);font-size:9px}.preview-actions{flex-wrap:wrap;justify-content:flex-end}.preview-actions button{border:1px solid var(--ui-border-strong);color:#41434a;background:#fff;border-radius:7px;min-height:32px;padding:0 11px;font-size:11px;font-weight:600}.preview-actions button:hover{color:#086eb8;background:#f4faff;border-color:#9fcef0}.preview-actions button:first-of-type{color:#fff;border-color:var(--ui-accent);background:var(--ui-accent)}.preview-actions button:first-of-type:hover{background:var(--ui-accent-hover)}.preview-actions button.psd-download{color:#fff;border-color:var(--ui-purple);background:var(--ui-purple)}.preview-actions button.psd-download:hover{background:#8b45e5;border-color:#8b45e5}.status{border-radius:6px;font-size:10px;font-weight:650}.status.ready{color:#087e43;background:#e8f8ef}.status.warning{color:#9a6400;background:#fff4da}.poster-viewport,.kt-viewport,.detail-viewport{border-radius:6px;box-shadow:0 8px 28px #17191d24,0 0 0 1px #0000000d}.generation-template-select{margin-top:7px}.generation-template-select select{min-height:30px;padding:4px 28px 4px 8px}.settings-page{max-width:1600px;margin:0 auto;padding:24px 24px 50px}.settings-heading{margin-bottom:16px}.settings-heading h2{letter-spacing:-.02em;margin:2px 0;font-size:24px}.settings-heading p,.settings-card>p{color:var(--ui-muted)}.save-toast{color:#087e43;background:#effaf4;border:1px solid #bce8cf;border-radius:7px}.settings-layout{grid-template-columns:224px minmax(0,1fr);gap:12px}.settings-sidebar{border-color:var(--ui-border);border-radius:11px;gap:2px;padding:6px;top:80px;box-shadow:0 1px 2px #00000008}.settings-sidebar button{color:#676970;border-radius:7px;gap:9px;min-height:48px;padding:8px 9px}.settings-sidebar button:hover{color:var(--ui-text);background:#f5f5f6}.settings-sidebar button.active{color:#086eb8;background:var(--ui-accent-soft)}.settings-sidebar button>b{color:#7b7e86;background:#ededf0;border-radius:6px;width:24px;height:24px;font-size:10px}.settings-sidebar button.active>b{color:#fff;background:var(--ui-accent)}.settings-sidebar strong{font-size:12px;font-weight:650}.settings-sidebar small{color:var(--ui-subtle);font-size:9px}.template-kind-tabs{border-color:var(--ui-border);background:var(--ui-panel-muted);border-radius:9px;gap:2px;height:42px;margin-bottom:8px;padding:3px;display:inline-flex}.template-kind-tabs button{min-width:96px}.settings-card{padding:18px}.setting-title{gap:8px}.setting-title>b{background:var(--ui-accent);border-radius:6px;width:24px;height:24px;font-size:11px}.setting-title h3{font-size:16px}.template-toolbar{z-index:15;border-top:1px solid #f2f2f4;border-bottom:1px solid var(--ui-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff4;margin:10px -18px 14px;padding:10px 18px;position:sticky;top:68px}.template-toolbar button{border-color:var(--ui-border-strong);color:#45474e;background:#fff;border-radius:7px;min-height:32px;padding:0 10px;font-size:11px;font-weight:550}.template-toolbar button:hover{color:#086eb8;background:#f4faff;border-color:#9fcef0}.template-toolbar button.primary{color:#fff;border-color:var(--ui-accent);background:var(--ui-accent)}.template-toolbar button.primary:hover{background:var(--ui-accent-hover)}.template-toolbar select{min-width:260px;min-height:32px;font-size:11px}.template-workbench{grid-template-columns:360px minmax(300px,1fr);gap:12px}.canvas-column,.kt-editor-shell,.detail-template-preview{border:1px solid var(--ui-border);background-color:#eceef1;background-image:linear-gradient(45deg,#e4e6e9 25%,#0000 25%),linear-gradient(-45deg,#e4e6e9 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#e4e6e9 75%),linear-gradient(-45deg,#0000 75%,#e4e6e9 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px;border-radius:10px;padding:14px}.editor-canvas,.kt-editor-canvas{border-radius:4px;box-shadow:0 8px 24px #17191d2b,0 0 0 1px #0001}.editor-region.selected,.kt-editor-region.selected{border-color:var(--ui-accent);box-shadow:0 0 0 1px #fff, 0 0 0 3px var(--ui-accent)}.region-tag,.kt-editor-region>small{background:var(--ui-accent)}.editor-text-layer:hover,.editor-text-layer.selected{box-shadow:0 0 0 2px var(--ui-accent)}.canvas-help{color:#666970}.template-properties,.other-template-controls{border-color:var(--ui-border);background:#fff;border-radius:10px;max-height:calc(100vh - 146px);padding:12px;position:sticky;top:126px}.property-tabs,.module-tabs{background:var(--ui-panel-muted);border-radius:8px;gap:2px;padding:3px}.property-tabs button,.module-tabs button{color:#666870;background:0 0;border-radius:6px;min-height:30px}.property-tabs button:hover,.module-tabs button:hover{color:var(--ui-text);background:#fff9}.property-tabs button.active,.module-tabs button.active{color:var(--ui-text);background:#fff;box-shadow:0 1px 2px #00000016,0 0 0 1px #00000008}.layer-controls,.background-controls,.compact-editor{border-color:var(--ui-border);background:#fafafb;border-radius:8px}.secondary-upload{color:#4d5057;border:1px solid var(--ui-border-strong);background:#fff;border-radius:7px;font-weight:550}.secondary-upload:hover{color:#086eb8;background:#f4faff;border-color:#9fcef0}.settings-actions button,.catalog-row button,.rule-list button,.save-button,.member-input button,.fixed-module-heading button{color:#fff;background:var(--ui-accent)}.settings-actions button:hover,.catalog-row button:hover,.rule-list button:hover,.save-button:hover,.member-input button:hover,.fixed-module-heading button:hover{background:var(--ui-accent-hover)}.add-definition{color:#086eb8;background:#f4faff;border-color:#9fcef0}.fixed-module-editor,.definition-editor{border-color:var(--ui-border);border-radius:9px}.fixed-module-list article,.definition-list,.draggable-projects{background:#f7f7f8}.detail-template-preview{top:80px}.other-template-grid,.detail-template-workbench{gap:14px}.detail-generation-workspace{grid-template-columns:248px minmax(0,1fr);gap:12px}.detail-generation-controls{border-color:var(--ui-border);border-radius:10px;gap:14px;padding:15px;top:80px;box-shadow:0 1px 2px #00000008}.detail-generation-controls button{border-color:var(--ui-border-strong);background:#fff;border-radius:7px}.detail-generation-controls button:hover{color:#086eb8;background:#f4faff;border-color:#9fcef0}.detail-document-pages{gap:20px}.detail-document-pages>article>span{color:#666970;border:1px solid var(--ui-border);background:#fff;border-radius:6px}@media (width<=1240px){.workspace{grid-template-columns:300px minmax(620px,1fr)}.settings-layout{grid-template-columns:204px minmax(0,1fr)}.template-workbench{grid-template-columns:344px minmax(270px,1fr)}.template-toolbar{flex-wrap:wrap}.template-toolbar select{min-width:220px}}.auth-loading,.login-page{min-height:100vh;color:var(--ui-text);background:radial-gradient(circle at 50% 10%,#fff 0,#f5f6f8 48%,#eceef2 100%);place-items:center;display:grid}.auth-loading{color:var(--ui-muted);align-content:center;gap:14px}.auth-loading .app-mark{margin:auto}.login-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff2;border:1px solid #dfe1e6;border-radius:16px;width:min(420px,100vw - 36px);padding:34px;box-shadow:0 24px 70px #252b3a1a,0 1px 2px #0000000d}.login-brand{align-items:center;gap:14px;display:flex}.login-brand>div>span{color:var(--ui-subtle);letter-spacing:.12em;font-size:9px;font-weight:700}.login-brand h1{margin:3px 0 0;font-size:22px}.login-card>p{color:var(--ui-muted);margin:22px 0;line-height:1.7}.login-card form,.password-form{gap:14px;display:grid}.login-card label,.password-form label{color:#555861;gap:7px;font-size:12px;font-weight:600;display:grid}.login-card input,.password-form input,.login-card form button{min-height:42px}.login-card>small{color:var(--ui-subtle);text-align:center;margin-top:18px;display:block}.login-error{color:#b42318;background:#fff4f3;border:1px solid #f1c2c2;border-radius:7px;padding:9px 11px;font-size:12px}.topbar-account{align-items:center;gap:12px;display:flex}.topbar-account>span{text-align:right;line-height:1.25;display:grid}.topbar-account b{color:#3c3e44;text-overflow:ellipsis;white-space:nowrap;max-width:110px;font-size:11px;overflow:hidden}.topbar-account small{color:var(--ui-subtle);font-size:9px}.profile-page{width:min(1240px,100% - 40px);margin:0 auto;padding:30px 0 60px}.profile-heading{justify-content:space-between;align-items:flex-end;margin-bottom:20px;display:flex}.profile-heading h2{margin:4px 0;font-size:26px}.profile-heading p{color:var(--ui-muted);margin:0}.profile-heading>button{border:1px solid var(--ui-border-strong);color:#555861;background:#fff;border-radius:7px;min-height:34px;padding:0 13px}.profile-layout{border:1px solid var(--ui-border);background:#fff;border-radius:12px;grid-template-columns:220px minmax(0,1fr);min-height:560px;display:grid;overflow:hidden;box-shadow:0 1px 3px #0000000a}.profile-layout>aside{border-right:1px solid var(--ui-border);background:#f8f8f9;padding:8px}.profile-layout>aside button{color:#60636b;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;width:100%;padding:11px;display:flex}.profile-layout>aside button:hover{background:#f0f1f3}.profile-layout>aside button.active{color:#086eb8;background:#eaf5fd}.profile-layout>aside b{font-size:10px}.profile-layout>aside span{gap:2px;font-size:12px;font-weight:650;display:grid}.profile-layout>aside small{color:var(--ui-subtle);font-size:9px;font-weight:400}.profile-content{padding:26px 30px}.profile-content header h3,.permission-settings header h3{margin:0 0 6px;font-size:18px}.profile-content header p,.permission-settings header p{color:var(--ui-muted);margin:0}.profile-message{color:#086eb8;background:#f1f9fe;border:1px solid #b9dcf4;border-radius:7px;margin:0 0 14px;padding:9px 11px}.record-list{gap:8px;margin-top:20px;display:grid}.record-list article{border:1px solid var(--ui-border);background:#fff;border-radius:9px;justify-content:space-between;align-items:center;gap:20px;padding:13px 14px;display:flex}.record-list article>div:first-child{gap:3px;min-width:0;display:grid}.record-list article strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.record-list article span,.record-list article small{color:var(--ui-muted);font-size:10px}.record-list article>div:last-child{flex:none;gap:7px;display:flex}.record-list button,.user-actions button,.reset-cell button{border:1px solid var(--ui-border-strong);background:#fff;border-radius:6px;min-height:30px;padding:0 10px}.danger-quiet{color:#b42318!important}.profile-empty{border:1px dashed var(--ui-border-strong);color:var(--ui-subtle);text-align:center;background:#fafafb;border-radius:9px;padding:60px 20px}.password-form{max-width:440px;margin-top:22px}.password-form button{justify-self:start;min-height:36px;padding:0 16px}.permission-settings{padding:2px}.new-user-form{border:1px solid var(--ui-border);background:#f8f8f9;border-radius:9px;grid-template-columns:1.1fr 1.1fr .8fr 1.25fr auto;gap:8px;margin:20px 0;padding:13px;display:grid}.new-user-form input,.new-user-form select{min-width:0}.new-user-form button{padding:0 14px}.user-table{border:1px solid var(--ui-border);border-radius:9px;overflow-x:auto}.user-row{border-top:1px solid var(--ui-border);grid-template-columns:1fr 1fr .72fr 1.45fr .8fr;align-items:center;gap:8px;min-width:850px;padding:9px 11px;display:grid}.user-row:first-child{border-top:0}.user-head{color:var(--ui-subtle);background:#f7f7f8;font-size:10px;font-weight:700}.reset-cell,.user-actions{gap:6px;display:flex}.reset-cell input{flex:1;min-width:0}.user-actions button{flex:1}@media (width<=980px){.topbar-account>span{display:none}.profile-layout{grid-template-columns:170px minmax(0,1fr)}.new-user-form{grid-template-columns:1fr 1fr}.new-user-form button{min-height:36px}}
