:root{--bg: #f7f6fb;--bg-soft: #faf9fd;--surface: #ffffff;--glass: #ffffffd9;--glass-strong: #fffffff2;--border: #00000014;--border-strong: #0000002e;--text: #14131a;--text-secondary: #4f4a5e;--text-muted: #7b7590;--accent: #8b5cf6;--accent-strong: #7c3aed;--accent2: #06b6d4;--accent-soft: rgba(139, 92, 246, .1);--accent-line: rgba(139, 92, 246, .4);--grad-accent: linear-gradient(135deg, #7c3aed 0%, #8b5cf6 45%, #06b6d4 100%);--danger: #dc2626;--danger-soft: #fef2f2;--radius-sm: 10px;--radius: 14px;--radius-lg: 20px;--radius-xl: 28px;--ease: cubic-bezier(.16, 1, .3, 1);--spring: cubic-bezier(.22, 1, .36, 1);--shadow-sm: 0 1px 2px #00000008, 0 2px 8px #00000008;--shadow-card: inset 0 1px #fffffff2, 0 1px 2px #0000000a, 0 6px 24px #0000000d;--shadow-hover: inset 0 1px #fff, 0 2px 4px #0000000d, 0 14px 40px #00000014;--shadow-pop: 0 18px 50px #0000001a;--shadow-glow: 0 8px 28px rgba(124, 58, 237, .28);--ring: rgba(124, 58, 237, .45)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:PingFang SC,Microsoft YaHei,system-ui,-apple-system,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(44% 40% at 10% 6%,rgba(139,92,246,.16) 0%,transparent 62%),radial-gradient(40% 36% at 90% 2%,rgba(6,182,212,.12) 0%,transparent 60%),radial-gradient(48% 42% at 76% 98%,rgba(196,181,253,.18) 0%,transparent 62%),var(--bg);pointer-events:none}body:after{content:"";position:fixed;inset:-18%;z-index:-1;pointer-events:none;background:radial-gradient(26% 22% at 20% 24%,rgba(139,92,246,.15),transparent 64%),radial-gradient(22% 19% at 80% 18%,rgba(6,182,212,.12),transparent 64%),radial-gradient(28% 24% at 68% 82%,rgba(167,139,250,.14),transparent 64%);animation:auroraDrift 34s var(--ease) infinite alternate}@keyframes auroraDrift{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(2.2%,-1.6%,0) scale(1.05)}to{transform:translate3d(-1.8%,2%,0) scale(1.02)}}button{font-family:inherit;cursor:pointer;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:9px 18px;font-size:13.5px;font-weight:600;letter-spacing:.01em;position:relative;overflow:hidden;isolation:isolate;transition:color .25s var(--ease),background-color .25s var(--ease),border-color .25s var(--ease),box-shadow .28s var(--ease),transform .22s var(--ease)}button:hover{border-color:var(--accent-line);color:var(--accent-strong);transform:translateY(-2px);box-shadow:var(--shadow-hover)}button:active{transition-duration:.12s;transform:scale(.97)}button.primary{background:var(--grad-accent);color:#fff;border:none;box-shadow:0 1px 2px #00000014,0 8px 26px var(--accent-line)}button.primary:hover{color:#fff;box-shadow:0 2px 4px #0000001a,0 14px 34px var(--accent-line),var(--shadow-glow);filter:brightness(1.04)}button.ghost{background:transparent;border-color:transparent}button.danger{color:var(--danger)}button.danger:hover{border-color:var(--danger);background:var(--danger-soft)}button:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}button:not(:disabled):after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 30%,#ffffffd9 50%,transparent 70%);transform:translate(-120%);transition:transform .6s var(--ease)}button:not(:disabled):hover:after{transform:translate(120%)}input,textarea,select{font-family:inherit;font-size:14px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:9px 14px;transition:border-color .2s var(--ease),box-shadow .2s var(--ease),background-color .2s var(--ease)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:#fff}input::placeholder,textarea::placeholder{color:#a8a29e}textarea{resize:vertical;line-height:1.6}:focus-visible{outline:2px solid var(--ring);outline-offset:2px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}button:focus-visible{outline:2px solid var(--ring);outline-offset:3px}.app{min-height:100%;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:10px;padding:14px 22px;-webkit-backdrop-filter:blur(14px) saturate(1.5);backdrop-filter:blur(14px) saturate(1.5);background:var(--glass);border-bottom:1px solid var(--border)}.topbar .brand{font-weight:800;font-size:16px;letter-spacing:-.01em;color:var(--text)}.topbar .brand span{background:linear-gradient(135deg,var(--accent-strong),#7dd3fc);-webkit-background-clip:text;background-clip:text;color:transparent}.topbar .spacer{flex:1}.topbar select{max-width:160px}.page{flex:1;padding:28px;max-width:1100px;width:100%;margin:0 auto}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px 24px;box-shadow:var(--shadow-card);position:relative;overflow:hidden;isolation:isolate;animation:fadeInUp .6s var(--ease) backwards;transition:box-shadow .28s var(--ease),transform .22s var(--ease),border-color .28s var(--ease)}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad-accent);opacity:0;transition:opacity .3s var(--ease);z-index:2}.card:hover:before{opacity:.85}.card+.card{margin-top:18px}.card:nth-child(2){animation-delay:80ms}.card:nth-child(3){animation-delay:.14s}.card:nth-child(4){animation-delay:.2s}.card:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px);border-color:var(--accent-line)}.muted{color:var(--text-muted);font-size:13px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.space-between{justify-content:space-between}h2{font-size:18px;margin-bottom:12px;font-weight:700;letter-spacing:-.01em}h3{font-size:15px;margin-bottom:8px;font-weight:600}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.hero{text-align:center;padding:36px 8px 26px;animation:fadeInUp .7s var(--ease) backwards}.hero h1{font-size:clamp(28px,4.4vw,46px);font-weight:800;letter-spacing:-.03em;line-height:1.18;color:var(--text);margin-bottom:14px}.hero .hl{background:var(--grad-accent);-webkit-background-clip:text;background-clip:text;color:transparent;white-space:nowrap}.hero .sub{font-size:clamp(14px,1.5vw,16.5px);color:var(--text-secondary);line-height:1.75;max-width:620px;margin:0 auto}.hero-badges{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:20px}.hero-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;font-size:12.5px;font-weight:600;color:var(--accent-strong);background:var(--accent-soft);border:1px solid var(--accent-line)}.input-area{width:100%;min-height:320px;font-size:15px;line-height:1.75;border-radius:var(--radius);padding:16px 18px;background:var(--bg-soft)}.input-area:focus{background:#fff;box-shadow:0 0 0 4px var(--accent-soft)}.drop-zone{position:relative}.drop-zone.dragging .input-area{border-color:var(--accent);border-style:dashed;background:var(--accent-soft);box-shadow:0 0 0 4px var(--accent-soft)}.drop-hint{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);background:#8b5cf60f;color:var(--accent-strong);font-size:15px;font-weight:700;pointer-events:none;z-index:3}.compose-foot{display:flex;align-items:center;gap:12px;margin-top:16px;flex-wrap:wrap}.compose-count{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--text-muted)}.compose-count b{color:var(--accent-strong);font-variant-numeric:tabular-nums}.compose-bar{position:relative;width:120px;height:5px;border-radius:999px;background:var(--border);overflow:hidden}.compose-bar i{position:absolute;inset:0 auto 0 0;border-radius:999px;background:var(--grad-accent);transition:width .35s var(--ease)}.compose-cta{display:flex;align-items:center;gap:10px;margin-left:auto}.compose-cta .btn-lg{font-size:15.5px;padding:12px 30px;box-shadow:0 2px 4px #00000012,0 12px 30px var(--accent-line)}.compose-cta .btn-lg:hover{box-shadow:0 3px 6px #00000018,0 18px 40px var(--accent-line),var(--shadow-glow)}.inline-error{display:flex;align-items:center;gap:8px;margin-top:12px;padding:10px 14px;border-radius:var(--radius-sm);background:var(--danger-soft);border:1px solid #fecaca;color:#b91c1c;font-size:13px;animation:shakeIn .3s var(--ease) backwards}@keyframes shakeIn{0%{opacity:0;transform:translate(-6px)}60%{transform:translate(3px)}to{opacity:1;transform:translate(0)}}.more-toggle{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1px dashed var(--border-strong);color:var(--text-secondary);font-size:13px;padding:7px 16px}.more-toggle:hover{border-style:solid}.more-panel{margin-top:14px;display:flex;flex-direction:column;gap:16px}.more-panel .card+.card{margin-top:0}.more-divider{height:1px;margin:20px 0;background:var(--border)}.opt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px}.opt-grid label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--text-secondary)}.opt-grid input,.opt-grid select{font-size:14px}.chat{display:flex;flex-direction:column;height:calc(100vh - 150px)}.chat-scroll{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:14px;padding:10px 4px}.chat-scroll::-webkit-scrollbar{width:6px}.chat-scroll::-webkit-scrollbar-thumb{background:#00000014;border-radius:3px}.bubble{max-width:82%;padding:13px 17px;border-radius:18px;line-height:1.7;font-size:14.5px;white-space:pre-wrap;word-break:break-word;animation:msgIn .35s var(--spring) both}.bubble.user{align-self:flex-end;background:var(--text);color:#fff;border-bottom-right-radius:6px;box-shadow:0 4px 14px #0000001f}.bubble.assistant{align-self:flex-start;background:#fff;border:1px solid var(--border);color:#44403c;border-bottom-left-radius:6px;box-shadow:0 1px 3px #00000008}.bubble.search{align-self:flex-start;background:#eef4ff;border:1px dashed #8cb4ff;color:#2c5aa0;font-size:13px;border-radius:14px;display:flex;align-items:center;gap:8px;max-width:82%}.bubble.search.done{background:#ecfdf5;border-color:#6ee7b7;color:#047857;border-style:solid}.bubble.search .typing-dots span{background:#6b9cef}@keyframes msgIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.typing-dots{display:inline-flex;gap:4px;align-items:center;padding:6px 2px}.typing-dots span{background:#a8a29e;border-radius:50%;width:6px;height:6px;animation:typingBounce 1.4s var(--ease) infinite}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}.chat-input{display:flex;gap:10px;margin-top:12px}.chat-input textarea{flex:1;min-height:64px}.chat-actions{display:flex;gap:10px;margin-top:8px;justify-content:flex-end}.outline-box{background:var(--bg-soft);border:1px solid var(--border);border-radius:12px;padding:14px 16px;font-size:13px;line-height:1.8}.outline-box b{color:var(--accent-strong)}.gen-progress{text-align:center;padding:48px 0}.spinner{width:46px;height:46px;border:3px solid var(--accent-soft);border-top-color:var(--accent-strong);border-radius:50%;margin:0 auto 24px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.stat-row{display:flex;gap:34px;justify-content:center;margin:20px 0}.stat{text-align:center}.stat .num{font-size:32px;font-weight:800;color:var(--accent-strong);font-family:Georgia,Times New Roman,serif;font-style:italic}.stat .lbl{font-size:12px;color:var(--text-muted);letter-spacing:.05em}.gen-log{max-height:120px;overflow:auto;font-size:12px;color:var(--text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;text-align:left;background:var(--bg-soft);border-radius:12px;padding:12px 14px}.editor-layout{display:grid;grid-template-columns:300px 1fr;gap:20px}.slide-list{display:flex;flex-direction:column;gap:10px;max-height:calc(100vh - 180px);overflow-y:auto;padding-right:4px}.slide-list::-webkit-scrollbar{width:6px}.slide-list::-webkit-scrollbar-thumb{background:#00000014;border-radius:3px}.slide-item{border:1px solid var(--border);border-radius:12px;padding:12px 14px;background:var(--surface);box-shadow:0 1px 2px #00000005;cursor:pointer;position:relative;transition:border-color .2s var(--ease),box-shadow .2s var(--ease),transform .2s var(--ease),background-color .2s var(--ease)}.slide-item:hover{transform:translateY(-1px);box-shadow:var(--shadow-card)}.slide-item.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 8px 20px var(--accent-soft);background:#fdfdff}.slide-item .idx{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.slide-item .t{font-weight:600;font-size:13px;margin:5px 0;color:var(--text)}.slide-item .tools{display:flex;gap:6px;margin-top:7px;flex-wrap:wrap}.slide-item .tools button{padding:3px 9px;font-size:12px}.preview-stage{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius-lg);min-height:420px;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;box-shadow:inset 0 1px 2px #00000006}.slide-render{container-type:size;width:100%;aspect-ratio:var(--sp-aspect, 16/9);display:flex;flex-direction:column;justify-content:center;padding:4.2% 6.5%;position:relative;overflow:hidden;background-color:var(--bg);background-image:none;color:var(--text);font-family:var(--font-body);--sp-headline: calc(4.6cqmin * var(--font-scale));--sp-headline-cover: calc(6.8cqmin * var(--font-scale));--sp-body: 2.5cqmin;--sp-label: 1.6cqmin;--sp-subhead: calc(var(--sp-body) * 1.38);--sp-weight: var(--heading-weight);--sp-lh: 1.5;--sp-tracking: var(--heading-ls);--sp-gap: 2.8cqmin;--sp-pad-x: 6.5%;--sp-pad-y: 4.2%;--sp-media-share: 34%;--sp-text-align: left}.slide-render.cover,.slide-render.closing{--sp-headline: var(--sp-headline-cover);--sp-body: 2.6cqmin;--sp-label: 1.6cqmin}.slide-render.section-divider{--sp-headline: 6.8cqmin;--sp-body: 2.6cqmin}.slide-render.quote{--sp-headline: 4.2cqmin;--sp-body: 2.6cqmin;--sp-lh: 1.6}.slide-render.two-column{--sp-body: 2.1cqmin;--sp-label: 2.3cqmin}.slide-render.stat{--sp-headline: 13cqmin;--sp-body: 2.6cqmin;--sp-label: 2.6cqmin;--sp-subhead: 4.6cqmin}.slide-render.cover,.slide-render.closing{background:radial-gradient(ellipse at top left,color-mix(in srgb,var(--accent) 22%,transparent),transparent 55%),radial-gradient(ellipse at bottom right,color-mix(in srgb,var(--accent2) 18%,transparent),transparent 55%),var(--bg)}.slide-render h1,.slide-render h2{font-size:4.6cqmin;margin-bottom:2cqmin;color:var(--text)}.slide-render .kicker{color:var(--accent);font-size:1.7cqmin;letter-spacing:.22em;margin-bottom:1.8cqmin;text-transform:uppercase;font-weight:700}.slide-render li{font-size:2.5cqmin;line-height:1.55;padding-left:2.6cqmin;position:relative;margin:.5cqmin 0;color:var(--text)}.slide-render li:before{content:"▸";position:absolute;left:0;color:var(--accent)}.slide-render .cols{display:grid;grid-template-columns:1fr 1fr;gap:3cqmin}.slide-render .col-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:2.6cqmin 3cqmin}.slide-render .col-card h3{color:var(--accent2);margin-bottom:1.4cqmin;font-size:2.2cqmin}.slide-render .col-card li{font-size:2.1cqmin}.slide-render .quote-box{font-size:3.8cqmin;font-style:italic;border-left:5px solid var(--accent);padding-left:3cqmin;line-height:1.6;color:var(--text)}.slide-render .quote-author{margin-top:2cqmin;color:var(--text-muted)}.slide-render.cover{position:relative}.slide-render:before{content:"";position:absolute;top:-14cqmin;right:-12cqmin;width:40cqmin;height:40cqmin;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 18%,transparent),transparent 66%);pointer-events:none;z-index:0}.slide-render:after{content:"";position:absolute;bottom:-16cqmin;left:-14cqmin;width:34cqmin;height:34cqmin;border-radius:50%;border:1px solid color-mix(in srgb,var(--accent3, var(--accent2)) 34%,transparent);background:radial-gradient(circle,color-mix(in srgb,var(--accent3, var(--accent2)) 8%,transparent),transparent 70%);pointer-events:none;z-index:0}.slide-render>*:not(.img-bg){position:relative;z-index:1}.slide-render[data-deco=gridLines]:not(.cover):not(.closing){background-image:linear-gradient(color-mix(in srgb,var(--deco-color) 7%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--deco-color) 7%,transparent) 1px,transparent 1px);background-size:7cqmin 7cqmin}.slide-render[data-deco=dots]:not(.cover):not(.closing){background-image:radial-gradient(color-mix(in srgb,var(--deco-color) 9%,transparent) 1.4px,transparent 1.6px);background-size:5cqmin 5cqmin}.slide-render[data-deco=waves]:not(.cover):not(.closing){background-image:repeating-linear-gradient(135deg,color-mix(in srgb,var(--deco-color) 6%,transparent) 0 2px,transparent 2px 16px)}.slide-render.cover,.slide-render.closing{background:radial-gradient(circle at 1.2px 1.2px,color-mix(in srgb,var(--accent) 14%,transparent) 1.2px,transparent 2px) 0 0 / 24px 24px,radial-gradient(ellipse at 12% 8%,color-mix(in srgb,var(--accent) 30%,transparent),transparent 52%),radial-gradient(ellipse at 92% 90%,color-mix(in srgb,var(--accent2) 24%,transparent),transparent 50%),linear-gradient(135deg,var(--bg),color-mix(in srgb,var(--bg-alt) 60%,var(--bg)));justify-content:center;align-items:flex-start}.slide-render.cover h1,.slide-render.closing h1{font-family:var(--font-heading);font-weight:var(--sp-weight);font-size:var(--sp-headline);letter-spacing:-.02em;line-height:1.15;max-width:88%;margin-bottom:2.2cqmin;background:linear-gradient(135deg,var(--text),color-mix(in srgb,var(--text) 70%,var(--accent)));-webkit-background-clip:text;background-clip:text;color:transparent}.slide-render.cover .slide-sub{font-size:var(--sp-body);color:var(--text-muted);line-height:1.6}.slide-render.closing{align-items:flex-start;justify-content:center}.slide-render.closing h1{max-width:90%}.slide-render .kicker{display:inline-flex;align-items:center;gap:.9cqmin;width:fit-content;color:var(--accent);font-size:var(--sp-label);letter-spacing:.18em;text-transform:uppercase;font-weight:700;background:color-mix(in srgb,var(--accent) 13%,transparent);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);padding:.7cqmin 1.6cqmin;border-radius:999px;margin-bottom:2.4cqmin}.slide-render .kicker:before{content:"";width:1.4cqmin;height:1.4cqmin;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent2))}.slide-render h1,.slide-render h2{font-family:var(--font-heading);font-weight:var(--sp-weight);letter-spacing:var(--sp-tracking);font-size:var(--sp-headline);margin-bottom:2.6cqmin;color:var(--text);line-height:1.2}.slide-render h2{position:relative;display:inline-block;padding-bottom:1.6cqmin}.slide-render h2:after{content:"";position:absolute;left:0;bottom:0;width:8cqmin;height:.8cqmin;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent2));box-shadow:0 .4cqmin 1.4cqmin color-mix(in srgb,var(--accent) 35%,transparent)}.slide-render ul{list-style:none}.slide-render li{font-size:var(--sp-body);line-height:var(--sp-lh);padding-left:3.4cqmin;position:relative;margin:.7cqmin 0;color:var(--text)}.slide-render li:before{content:"";position:absolute;left:0;top:.85cqmin;width:1.6cqmin;height:1.6cqmin;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent2));box-shadow:0 0 0 .4cqmin color-mix(in srgb,var(--accent) 16%,transparent)}.slide-render .cols{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-gap)}.slide-render .col-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:3cqmin 3.2cqmin;position:relative;overflow:hidden;box-shadow:inset 0 1px color-mix(in srgb,#ffffff 35%,transparent),0 1.4cqmin 4cqmin color-mix(in srgb,var(--accent) 12%,transparent)}.slide-render .col-card:before{content:"";position:absolute;top:0;left:0;right:0;height:.6cqmin;background:linear-gradient(90deg,var(--accent),var(--accent2))}.slide-render .col-card h3{color:var(--accent2);margin-bottom:1.6cqmin;font-size:var(--sp-label);font-weight:700}.slide-render .col-card li{font-size:var(--sp-body)}.slide-render .quote-box{font-size:var(--sp-headline);font-style:italic;line-height:var(--sp-lh);color:var(--text);padding-left:4.5cqmin;position:relative;max-width:90%}.slide-render .quote-box:before{content:"“";position:absolute;left:-1.5cqmin;top:-4.5cqmin;font-size:12cqmin;line-height:1;color:var(--accent);opacity:.5;font-family:Georgia,serif}.slide-render .quote-author{margin-top:2.6cqmin;color:var(--text-muted);font-weight:600;padding-left:4.5cqmin;font-size:var(--sp-body)}.slide-render .img-wrap{flex:0 0 var(--sp-media-share);height:80%;position:relative;display:flex;align-items:center;justify-content:center;border-radius:var(--radius)}.slide-render .img-wrap svg{width:100%;height:100%;max-height:46cqmin}.slide-render .img-bg{position:absolute;inset:0;z-index:0}[contenteditable=true]{outline:none;border-radius:4px;transition:background-color .15s,box-shadow .15s;cursor:text;min-width:.4em}[contenteditable=true]:empty:before{content:attr(data-placeholder);color:#a8a29e;pointer-events:none}[contenteditable=true]:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}[contenteditable=true]:focus{background:color-mix(in srgb,var(--accent) 9%,transparent);box-shadow:0 0 0 2px var(--accent-line)}.bullet-del{margin-left:8px;padding:0 8px!important;font-size:11px!important;vertical-align:middle;opacity:.55}.bullet-del:hover{opacity:1}.bullet-add{list-style:none!important;padding-left:0!important;margin-top:.8cqmin!important}.bullet-add:before{display:none!important}.bullet-add button{font-size:1.9cqmin!important;padding:.4cqmin 1.4cqmin!important;border-radius:999px!important}.slide-render.section-divider{justify-content:center;align-items:flex-start}.slide-render.section-divider .section-bar{width:7cqmin;height:.8cqmin;background:linear-gradient(90deg,var(--accent),var(--accent2));border-radius:999px;margin-bottom:3cqmin}.slide-render.section-divider h1{font-size:var(--sp-headline);font-weight:800;line-height:1.2;max-width:85%;margin:0}.slide-render.section-divider .section-sub{margin-top:2.2cqmin;font-size:var(--sp-body);color:var(--text-muted);max-width:75%}.slide-render.stat .stat-row{display:flex;align-items:center;gap:4cqmin}.slide-render.stat .stat-text{flex:1 1 auto;min-width:0}.slide-render.stat .stat-num{font-size:var(--sp-headline);font-weight:800;line-height:1;letter-spacing:-.03em;background:linear-gradient(135deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent;margin:0}.slide-render.stat h2{font-size:var(--sp-subhead)}.slide-render.stat .stat-label{margin-top:1.6cqmin;font-size:var(--sp-label);color:var(--text-muted)}.slide-render.stat ul{margin-top:3cqmin}.slide-render.stat li{font-size:var(--sp-body)}.slide-render.stat .img-wrap{flex:0 0 28%;height:28cqmin}.slide-render.stat .img-wrap svg{max-height:28cqmin!important}.slide-render .img-bg{object-fit:cover;opacity:.35}.slide-render.sp-center{align-items:center;--sp-text-align: center}.slide-render.sp-center h1,.slide-render.sp-center h2,.slide-render.sp-center li,.slide-render.sp-center .kicker,.slide-render.sp-center .quote-box,.slide-render.sp-center .quote-author,.slide-render.sp-center .stat-label,.slide-render.sp-center .slide-sub{text-align:center}.slide-render.sp-center .kicker{margin-left:auto;margin-right:auto}.slide-render.sp-center h2:after{left:50%;transform:translate(-50%)}.slide-render.sp-center .quote-box{border-left:none;padding-left:0}.slide-render.sp-cols2 ul{display:grid;grid-template-columns:1fr 1fr;column-gap:calc(var(--sp-gap) * 1.25)}.slide-render.sp-sparse li{margin:calc(var(--sp-gap) * .5) 0}.pres-overlay{position:fixed;inset:0;background:var(--bg);z-index:100}.pres-slide{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:6vmin 9vmin;opacity:0;transition:opacity .3s;color:var(--text)}.pres-slide.active{opacity:1}.pres-slide.anim-fade{animation:fadeIn .35s}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.pres-slide.anim-slide.active{transform:translate(0)}.pres-slide.anim-slide{transform:translate(4vw)}.pres-bar{position:fixed;bottom:0;left:0;height:4px;background:linear-gradient(90deg,var(--accent-strong),var(--accent));z-index:102;transition:width .25s var(--ease)}.pres-ind{position:fixed;bottom:16px;left:20px;z-index:102;color:var(--text-muted);font-size:13px}.pres-notes{position:fixed;left:50%;bottom:24px;transform:translate(-50%);width:min(760px,92vw);max-height:34vh;overflow:auto;background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:14px;padding:18px 22px;z-index:103;line-height:1.6;box-shadow:var(--shadow-card)}.pres-tools{position:fixed;bottom:16px;right:20px;display:flex;gap:8px;z-index:102}.pres-presenter{position:fixed;inset:0;z-index:110;background:#0b1020;color:#e5e7eb;display:flex;flex-direction:column;padding:18px;gap:14px}.pp-main{flex:1;display:grid;grid-template-columns:1fr 360px;gap:16px;min-height:0}.pp-current{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 10px 40px #00000080}.pp-side{display:flex;flex-direction:column;gap:12px;min-height:0}.pp-next{background:#111827;border:1px solid #1f2937;border-radius:10px;padding:10px;flex:1;min-height:0;display:flex;flex-direction:column}.pp-next .slide-stage-wrap{aspect-ratio:16/9}.pp-end{display:flex;align-items:center;justify-content:center;height:100%;color:#6b7280;font-size:14px}.pp-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af;margin-bottom:8px}.pp-notes{background:#111827;border:1px solid #1f2937;border-radius:10px;padding:14px;max-height:30%;overflow:auto}.pp-notes-text{font-size:14px;line-height:1.6;color:#d1d5db;white-space:pre-wrap}.pp-controls{display:flex;gap:8px}.pp-controls button{flex:1;padding:10px;border-radius:8px;border:1px solid #374151;background:#1f2937;color:#fff;cursor:pointer}.pp-controls button:hover:not(:disabled){background:#374151}.pp-controls button:disabled{opacity:.4;cursor:default}.pp-footer{display:flex;justify-content:space-between;align-items:center;color:#9ca3af;font-size:13px;padding:0 4px}.pp-timer{font-variant-numeric:tabular-nums;font-size:16px;color:#fff}.modal-mask{position:fixed;inset:0;background:#0f0f1473;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:90;display:flex;align-items:center;justify-content:center}.modal{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);width:min(520px,92vw);max-height:86vh;overflow:auto;padding:26px 28px;box-shadow:0 24px 60px #0000002e;animation:modalIn .22s var(--spring) both}@keyframes modalIn{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal h2{margin-bottom:18px}.modal .field{margin-bottom:16px;display:flex;flex-direction:column;gap:6px}.modal .field label{font-size:13px;color:var(--text-secondary)}.hist-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.hist-card{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--surface);cursor:pointer;box-shadow:var(--shadow-card);transition:transform .22s var(--ease),box-shadow .28s var(--ease)}.hist-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)}.hist-card img{width:100%;height:100px;object-fit:cover;display:block}.hist-card .info{padding:10px 12px}.hist-card .t{font-weight:600;font-size:13px}.hist-card .m{font-size:11px;color:var(--text-muted);margin-top:2px}.hist-card .tools{display:flex;gap:6px;padding:6px 10px}.hist-card .tools button{flex:1;padding:5px;font-size:12px}@media (max-width: 760px){.page{padding:16px;max-width:100%}.topbar{flex-wrap:wrap;gap:6px;padding:10px 14px}.topbar select{max-width:120px}.editor-layout{grid-template-columns:1fr}.slide-list{max-height:none;order:2}.preview-stage{min-height:300px;order:1}.opt-grid,.clarify-grid{grid-template-columns:1fr}.clarify-grid .chat{height:auto;max-height:60vh}.chat{height:calc(100vh - 200px)}.editor-toolbar{flex-wrap:wrap;gap:8px}.editor-toolbar button{font-size:12px;padding:6px 9px}.ai-toolbar button{font-size:12px;padding:5px 8px}.modal{width:94vw;padding:20px 16px;max-height:92vh}.card{padding:16px 14px}.gen-preview{gap:6px}.gen-preview-card{max-width:46%}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.topbar .brand{display:inline-flex;align-items:center;gap:8px}.brand-mark{display:inline-flex}.clarify-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:20px;align-items:start}.clarify-grid .chat{height:calc(100vh - 170px)}.outline-card{max-height:calc(100vh - 170px);overflow:auto}.pending-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;margin-bottom:10px;border-radius:10px;background:#fff7e6;border:1px solid #f5c97a;color:#9a5a00;font-size:13px;flex-wrap:wrap}.pending-banner button{padding:5px 12px;font-size:12.5px}.outline-title-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.outline-title-row label{font-size:12px;color:var(--text-muted);min-width:36px}.outline-title-row input{flex:1;font-weight:600}.outline-sections{display:flex;flex-direction:column;gap:8px}.outline-section{border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:var(--bg-soft)}.outline-section-head{display:flex;align-items:center;gap:6px}.outline-section-head .idx{width:22px;height:22px;border-radius:50%;background:var(--accent-soft);color:var(--accent-strong);font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.outline-section-head select{font-size:12px;padding:3px 6px;width:auto}.outline-section-head input.outline-heading{flex:1;font-size:13px;font-weight:600}.outline-section-head button{padding:2px 8px;font-size:12px}.outline-bullets{width:100%;margin-top:6px;font-size:12px;padding:6px 10px;background:var(--surface)}.editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.editor-toolbar button{padding:7px 12px;font-size:13px}.gen-page-title{color:var(--accent-strong);font-weight:700;letter-spacing:-.01em}.gen-preview{margin-top:24px;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:720px;margin-left:auto;margin-right:auto}.gen-preview-card{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:var(--bg-soft);border:1px solid var(--border);font-size:12px;max-width:220px;animation:msgIn .3s var(--spring) both}.gen-preview-idx{width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,var(--accent-strong),var(--accent));color:#fff;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.gen-preview-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary)}.sample-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.sample-card{text-align:left!important;padding:14px 16px!important;display:flex;flex-direction:column;gap:6px;border-radius:12px!important;background:var(--bg-soft)!important}.sample-card:hover{background:var(--surface)!important}.sample-title{font-weight:700;font-size:14px;color:var(--text)}.sample-body{font-size:12px;color:var(--text-muted);line-height:1.5}.tpl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}.tpl-card{text-align:left!important;padding:16px!important;border-radius:12px!important;background:var(--bg-soft)!important;display:flex;flex-direction:column;gap:6px;border:1px solid transparent;transition:all .15s}.tpl-card:hover{border-color:var(--accent);transform:translateY(-2px);background:var(--surface)!important}.tpl-icon{font-size:28px;line-height:1}.tpl-name{font-weight:700;font-size:15px;color:var(--text)}.tpl-desc{font-size:12px;color:var(--text-muted);line-height:1.5}.slide-action-row{display:flex;justify-content:flex-end;margin-bottom:8px;position:relative}.slide-action-bar{position:relative;display:flex;gap:6px;align-items:center}.sab-trigger{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border:none;padding:7px 14px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer}.sab-trigger:hover{filter:brightness(1.08)}.sab-cancel{padding:6px 10px;font-size:12px}.sab-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:60;min-width:200px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 12px 32px #0000002e;padding:6px;display:flex;flex-direction:column;gap:1px}.sab-menu button{text-align:left;font-size:13px;padding:8px 10px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:#1f2937}.sab-menu button:hover:not(:disabled){background:#f3f4f6}.sab-menu button:disabled{color:#cbd5e1;cursor:default}.sab-ico{display:inline-block;width:20px}.sab-sep{height:1px;background:#e5e7eb;margin:4px 2px}.sab-sub{font-size:11px;color:#9ca3af;padding:4px 8px 2px}.sab-layouts{display:grid;grid-template-columns:1fr 1fr;gap:2px}.sab-layout{text-align:center!important;font-size:12px!important;padding:6px!important}.sab-stream{margin-top:8px}.sab-stream pre{max-height:160px;overflow:auto;background:#0f172a;color:#e2e8f0;padding:10px 12px;border-radius:8px;font-size:12px;white-space:pre-wrap;margin:0}.sab-confirm{position:absolute;top:calc(100% + 8px);right:0;z-index:70;width:340px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:12px;box-shadow:0 12px 32px #0000002e;display:flex;flex-direction:column;gap:8px;font-size:13px;color:#1f2937}.sab-actions{display:flex;gap:8px;justify-content:flex-end}.sab-diff{max-height:140px;overflow:auto;background:#f8fafc;border:1px solid #e5e7eb;padding:8px;border-radius:6px;font-size:11px;white-space:pre-wrap;margin:0}.sab-error{position:absolute;top:calc(100% + 6px);right:0;z-index:80;background:#fef2f2;color:#b91c1c;border:1px solid #fecaca;padding:8px 12px;border-radius:8px;font-size:12px;display:flex;gap:8px;align-items:center}.sab-error button{border:none;background:transparent;color:#b91c1c;cursor:pointer}.outline-toggle-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0}.outline-toggle-row button{background:transparent;border:1px solid var(--border);padding:3px 10px;border-radius:6px;cursor:pointer;font-size:12px;color:var(--text)}.outline-toggle-row button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.outline-panel{display:flex;flex-direction:column;gap:2px;margin-bottom:8px;max-height:240px;overflow:auto;border:1px solid var(--border);border-radius:8px;padding:4px}.outline-item{display:flex;gap:8px;align-items:center;text-align:left;padding:6px 8px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:var(--text);font-size:12.5px}.outline-item:hover{background:var(--bg-soft)}.outline-item.active{background:color-mix(in srgb,var(--accent) 14%,transparent)}.outline-idx{flex:0 0 22px;height:22px;border-radius:50%;background:var(--bg-soft);color:var(--text-muted);font-size:11px;display:flex;align-items:center;justify-content:center}.outline-item.active .outline-idx{background:var(--accent);color:#fff}.outline-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.muted b{color:var(--text-secondary)}.toast{word-break:break-word;max-width:80vw;text-align:center}.slide-item .idx{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.rtb{position:fixed;z-index:500;display:flex;align-items:center;gap:2px;padding:5px 8px;background:#1f1b2e;border:1px solid rgba(255,255,255,.08);border-radius:10px;box-shadow:0 8px 28px #00000047;color:#f4f4f5;font-size:13px;transform:translateY(-4px);animation:rtbIn .12s ease-out}@keyframes rtbIn{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(-4px)}}.rtb-btn{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 7px;background:transparent;border:none;border-radius:6px;color:#e4e4e7;cursor:pointer;font-size:13px;line-height:1;transition:background .12s,color .12s}.rtb-btn:hover{background:#ffffff1f;color:#fff}.rtb-btn.active{background:var(--accent, #7c5cff);color:#fff}.rtb-pick{gap:4px;font-size:12px}.rtb-sep{width:1px;height:18px;background:#ffffff26;margin:0 3px}.rtb-color-dot{display:inline-block;width:12px;height:12px;border-radius:50%;background:#fff;border:1px solid rgba(0,0,0,.2)}.rtb-ai{color:#fff;background:linear-gradient(135deg,#7c5cff,#5b8cff);margin-left:4px;font-weight:600}.rtb-ai:hover{filter:brightness(1.1)}.rtb-menu-wrap{position:relative}.rtb-menu{position:absolute;top:calc(100% + 6px);left:0;max-height:240px;overflow-y:auto;background:#1f1b2e;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:4px;box-shadow:0 8px 24px #0000004d;display:flex;flex-direction:column;min-width:110px}.rtb-menu button{background:transparent;border:none;color:#e4e4e7;text-align:left;padding:6px 10px;border-radius:5px;cursor:pointer;font-size:12px}.rtb-menu button:hover{background:#ffffff1a}.rtb-menu-size{min-width:168px}.rtb-size-input-row{display:flex;gap:6px;padding:4px}.rtb-size-input-row input{flex:1;min-width:0;background:#0000004d;border:1px solid rgba(255,255,255,.15);border-radius:5px;color:#e4e4e7;font-size:12px;padding:5px 8px;outline:none}.rtb-size-input-row input:focus{border-color:#7c6bffb3}.rtb-size-input-row button{background:#7c6bffe6;color:#fff;border:none;border-radius:5px;padding:5px 10px;font-size:12px;cursor:pointer}.rtb-size-input-row button:hover{background:#7c6bff}.rtb-size-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;max-height:180px;overflow-y:auto}.rtb-size-grid button{text-align:center;padding:5px 4px;font-size:12px}.rtb-colors{position:absolute;top:calc(100% + 6px);left:0;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:8px;background:#1f1b2e;border:1px solid rgba(255,255,255,.1);border-radius:8px;box-shadow:0 8px 24px #0000004d}.rtb-colors button{width:22px;height:22px;border-radius:5px;border:1px solid rgba(255,255,255,.15);cursor:pointer;padding:0}.rtb-colors button:hover{transform:scale(1.12)}.rw-bubble{position:fixed;z-index:510;width:340px;background:#fff;color:#1a1a1a;border:1px solid rgba(0,0,0,.1);border-radius:12px;box-shadow:0 12px 40px #00000038;padding:12px;font-size:13px;animation:rtbIn .14s ease-out}.rw-presets{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.rw-presets button{padding:6px 12px;border-radius:999px;border:1px solid var(--border, #e5e5e5);background:#fafafa;cursor:pointer;font-size:12px;color:#333;transition:all .12s}.rw-presets button:hover{border-color:var(--accent, #7c5cff);color:var(--accent, #7c5cff);background:#f5f3ff}.rw-custom input{width:100%;padding:8px 10px;border:1px solid var(--border, #e5e5e5);border-radius:8px;font-size:13px;outline:none}.rw-custom input:focus{border-color:var(--accent, #7c5cff)}.rw-stream-label{font-size:12px;color:#888;margin-bottom:6px}.rw-stream-out{max-height:160px;overflow-y:auto;padding:8px 10px;background:#f7f7f8;border-radius:8px;line-height:1.6;white-space:pre-wrap}.rw-caret{display:inline-block;width:2px;height:14px;background:var(--accent, #7c5cff);margin-left:2px;animation:rwBlink .8s steps(1) infinite;vertical-align:middle}@keyframes rwBlink{50%{opacity:0}}.rw-preview .rw-diff{display:flex;gap:8px;align-items:stretch}.rw-diff-col{flex:1;min-width:0}.rw-diff-arrow{display:flex;align-items:center;color:#bbb;font-size:16px}.rw-diff-label{font-size:11px;color:#999;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.rw-diff-old,.rw-diff-new{padding:8px 10px;border-radius:8px;line-height:1.6;max-height:140px;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.rw-diff-old{background:#fdf2f2;color:#7a3a3a}.rw-diff-new{background:#f0fdf4;color:#2a5a3a}.rw-footer{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.rw-footer button{padding:6px 14px;border-radius:8px;border:1px solid var(--border, #e5e5e5);background:#fff;cursor:pointer;font-size:12px}.rw-footer button:hover{background:#f5f5f5}.rw-footer .rw-apply{background:var(--accent, #7c5cff);color:#fff;border-color:var(--accent, #7c5cff)}.rw-footer .rw-apply:hover{filter:brightness(1.08)}.rw-footer .rw-retry{color:var(--accent, #7c5cff)}.rw-error{color:#c0392b;font-size:12px;margin-top:8px}[data-rich-root][data-placeholder]:empty:before{content:attr(data-placeholder);color:var(--text-muted, #aaa);pointer-events:none}[data-rich-root] b,[data-rich-root] strong{font-weight:700}.slide-stage-wrap{position:relative;width:100%}.free-canvas{position:absolute;inset:0;z-index:5;pointer-events:none}.free-el{position:absolute;pointer-events:auto;box-sizing:border-box;user-select:none;transform-origin:center center}.free-el.selected{outline:1.5px solid var(--accent, #6366f1);outline-offset:1px}.free-el.free-text{padding:2px 4px}.free-text-inner{width:100%;height:100%;outline:none;overflow:hidden;line-height:1.4;word-break:break-word;white-space:pre-wrap}.free-el.free-text.selected .free-text-inner{overflow:visible}.free-el img{display:block}.free-handle{position:absolute;width:10px;height:10px;background:#fff;border:1.5px solid var(--accent, #6366f1);border-radius:2px;z-index:10;pointer-events:auto;box-shadow:0 1px 3px #00000040}.free-handle-nw{left:-6px;top:-6px;cursor:nwse-resize}.free-handle-n{left:50%;top:-6px;margin-left:-5px;cursor:ns-resize}.free-handle-ne{right:-6px;top:-6px;cursor:nesw-resize}.free-handle-e{right:-6px;top:50%;margin-top:-5px;cursor:ew-resize}.free-handle-se{right:-6px;bottom:-6px;cursor:nwse-resize}.free-handle-s{left:50%;bottom:-6px;margin-left:-5px;cursor:ns-resize}.free-handle-sw{left:-6px;bottom:-6px;cursor:nesw-resize}.free-handle-w{left:-6px;top:50%;margin-top:-5px;cursor:ew-resize}.free-handle-rot{left:50%;top:-26px;margin-left:-6px;width:12px;height:12px;border-radius:50%;cursor:grab;background:#fff;border:1.5px solid var(--accent, #6366f1)}.free-handle-rot:after{content:"";position:absolute;left:50%;top:12px;width:1.5px;height:12px;background:var(--accent, #6366f1);transform:translate(-50%)}.free-marquee{position:absolute;z-index:20;pointer-events:none;border:1px dashed var(--accent, #6366f1);background:color-mix(in srgb,var(--accent, #6366f1) 12%,transparent)}.insert-toolbar{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:30;display:flex;align-items:center;gap:6px;background:color-mix(in srgb,#1f2937 92%,transparent);padding:6px 10px;border-radius:10px;box-shadow:0 6px 20px #00000047;backdrop-filter:blur(6px);pointer-events:auto}.insert-toolbar button,.insert-toolbar select{font-size:12.5px;padding:5px 10px;border-radius:7px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.12);cursor:pointer;white-space:nowrap}.insert-toolbar button:hover{background:#ffffff38}.insert-toolbar select option{color:#111}.insert-sep{width:1px;height:18px;background:#fff3;margin:0 2px}.align-bar{position:absolute;top:10px;right:10px;z-index:30;display:flex;align-items:center;gap:2px;background:color-mix(in srgb,#1f2937 92%,transparent);padding:5px 8px;border-radius:10px;box-shadow:0 6px 20px #00000047}.align-btn{min-width:28px;height:28px;padding:0 6px;font-size:14px;line-height:1;background:transparent;color:#fff;border:none;border-radius:6px;cursor:pointer}.align-btn:hover:not(:disabled){background:#ffffff2e}.align-btn:disabled{opacity:.35;cursor:default}.align-sep{width:1px;height:18px;background:#fff3;margin:0 4px}.style-pop{position:absolute;bottom:10px;left:50%;transform:translate(-50%);z-index:30;display:flex;align-items:center;gap:8px;background:color-mix(in srgb,#1f2937 92%,transparent);padding:6px 12px;border-radius:10px;color:#fff;font-size:12.5px;box-shadow:0 6px 20px #00000047;pointer-events:auto}.style-pop label{display:flex;align-items:center;gap:5px}.style-pop input,.style-pop select{font-size:12px;padding:3px 5px;border-radius:6px;background:#ffffff1f;color:#fff;border:1px solid rgba(255,255,255,.15)}.style-pop select option{color:#111}.free-guide{position:absolute;z-index:25;pointer-events:none}.free-guide-v{top:0;bottom:0;width:0;border-left:1.5px dashed #ef4444}.free-guide-h{left:0;right:0;height:0;border-top:1.5px dashed #ef4444}.free-el.locked{outline:1.5px dashed #94a3b8}.free-lock-badge{position:absolute;top:-10px;right:-10px;width:18px;height:18px;background:#475569;color:#fff;border-radius:50%;font-size:10px;display:flex;align-items:center;justify-content:center;z-index:12;box-shadow:0 1px 3px #0000004d}.canvas-mode-bar{position:absolute;bottom:10px;left:10px;z-index:30;display:flex;align-items:center;gap:4px;background:color-mix(in srgb,#1f2937 92%,transparent);padding:5px;border-radius:10px;box-shadow:0 6px 20px #00000047}.canvas-mode-bar button{font-size:12.5px;padding:5px 10px;border-radius:7px;cursor:pointer;background:transparent;color:#cbd5e1;border:none}.canvas-mode-bar button:hover{background:#ffffff1f;color:#fff}.canvas-mode-bar button.active{background:var(--accent, #6366f1);color:#fff}.snap-toggle{display:flex;align-items:center;gap:4px;color:#cbd5e1;font-size:12px;padding:0 6px;cursor:pointer;user-select:none}.snap-toggle input{accent-color:var(--accent, #6366f1)}.zoom-bar{position:absolute;bottom:10px;right:10px;z-index:30;display:flex;align-items:center;gap:6px;background:color-mix(in srgb,#1f2937 92%,transparent);padding:5px 10px;border-radius:10px;color:#fff;font-size:12.5px;box-shadow:0 6px 20px #00000047}.zoom-bar button{min-width:26px;height:26px;font-size:15px;line-height:1;cursor:pointer;background:transparent;color:#fff;border:none;border-radius:6px}.zoom-bar button:hover{background:#ffffff2e}.zoom-bar span{min-width:42px;text-align:center}.ctx-menu{position:absolute;z-index:50;min-width:180px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 30px #0000002e;padding:6px;display:flex;flex-direction:column;gap:1px}.ctx-menu button{text-align:left;font-size:13px;padding:7px 10px;border:none;background:transparent;color:#1f2937;border-radius:5px;cursor:pointer}.ctx-menu button:hover:not(:disabled){background:#f3f4f6}.ctx-menu button:disabled{color:#cbd5e1;cursor:default}.ctx-sep{height:1px;background:#e5e7eb;margin:4px 2px}.free-canvas-empty-hint{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--text-muted);font-size:13px;pointer-events:none;text-align:center;opacity:.7}.ai-toolbar{flex-wrap:wrap;gap:6px;padding:8px 10px;background:linear-gradient(135deg,var(--accent-soft),transparent);border:1px solid var(--accent-line);border-radius:10px;align-items:center}.ai-toolbar-label{font-size:13px;font-weight:700;color:var(--accent-strong);margin-right:4px;white-space:nowrap}.ai-toolbar button{padding:6px 10px;font-size:12.5px;border-radius:8px;border:1px solid var(--border);background:#fff;color:var(--text);cursor:pointer;transition:all .15s var(--ease);white-space:nowrap}.ai-toolbar button:hover:not(:disabled){border-color:var(--accent);color:var(--accent-strong);box-shadow:0 2px 8px var(--accent-soft)}.ai-toolbar button:disabled{opacity:.5;cursor:default}.field-label{font-size:12.5px;color:var(--text-secondary);font-weight:600;margin:10px 0 4px;display:block}.modal-head{display:flex;align-items:center;justify-content:space-between;margin:-26px -28px 16px;padding:14px 20px;border-bottom:1px solid var(--border);background:var(--bg-soft);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.modal-head b{font-size:15px;letter-spacing:-.01em}.modal-head button{border:none;background:transparent;font-size:16px;line-height:1;color:var(--text-muted);cursor:pointer;padding:4px 6px;border-radius:6px}.modal-head button:hover{background:var(--border);color:var(--text)}.modal-body{display:flex;flex-direction:column;gap:12px}.modal-foot{display:flex;justify-content:flex-end;gap:10px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border)}.modal-foot button{white-space:nowrap}.modal.speech-modal{width:min(720px,94vw)}.modal.add-modal{width:min(600px,94vw)}.modal.cover-modal{width:min(760px,94vw)}.modal.beautify-modal{width:min(680px,94vw)}.ai-loading{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:10px;font-size:13.5px;color:var(--accent-strong);font-weight:600}.ai-loading button{padding:4px 12px;font-size:12px;border-radius:6px;border:1px solid var(--accent-line);background:#fff;color:var(--accent-strong);cursor:pointer}.ai-stream{margin:0;padding:12px 14px;max-height:280px;overflow:auto;background:#0f172a;color:#e2e8f0;border-radius:10px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.ai-panel{position:fixed;right:24px;top:88px;z-index:80;width:min(380px,92vw);max-height:calc(100vh - 110px);background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 16px 40px #0000002e;display:flex;flex-direction:column;overflow:hidden;animation:modalIn .2s var(--spring) both}.ai-panel-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);background:linear-gradient(135deg,var(--accent-soft),transparent)}.ai-panel-head b{font-size:14.5px}.ai-panel-head button{border:none;background:transparent;color:var(--text-muted);font-size:15px;cursor:pointer;padding:2px 6px;border-radius:6px}.ai-panel-head button:hover{background:var(--border);color:var(--text)}.ai-panel-body{padding:14px 16px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.ai-panel-body>button.primary{align-self:flex-start}.ai-summary{font-size:13px;color:var(--text-secondary);font-weight:600;padding:8px 12px;background:var(--bg-soft);border:1px solid var(--border);border-radius:8px}.ai-issues{display:flex;flex-direction:column;gap:10px}.ai-issue{border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:#fff;transition:all .15s var(--ease)}.ai-issue:hover{border-color:var(--accent-line);box-shadow:0 2px 10px var(--accent-soft)}.ai-issue.applied{opacity:.6;background:var(--bg-soft)}.ai-issue-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;gap:8px}.ai-issue-level{font-size:12.5px;font-weight:700}.ai-issue-page{font-size:11.5px;color:var(--text-muted);white-space:nowrap}.ai-issue-msg{font-size:13px;line-height:1.55;color:var(--text)}.ai-issue-fix{font-size:12.5px;color:var(--text-secondary);margin-top:6px;padding:6px 10px;background:var(--bg-soft);border-radius:6px;border-left:3px solid var(--accent)}.ai-issue-actions{display:flex;gap:8px;margin-top:8px}.ai-issue-actions button{padding:4px 12px;font-size:12px;border-radius:6px}.speech-text{width:100%;min-height:440px;resize:vertical;padding:14px 16px;border:1px solid var(--border);border-radius:10px;font-family:PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.8;color:var(--text);background:var(--bg-soft)}.speech-text:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.add-preview{display:flex;flex-direction:column;gap:8px;margin-top:4px}.add-preview-item{border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:var(--bg-soft)}.add-preview-item b{font-size:13px;color:var(--accent-strong)}.add-preview-item ul{margin:6px 0 0;padding-left:20px}.add-preview-item li{font-size:12.5px;color:var(--text-secondary);line-height:1.6}.cover-variants{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.cover-variant{cursor:pointer;border:1px solid var(--border);border-radius:12px;padding:18px 16px;background:linear-gradient(160deg,#fff,var(--bg-soft));display:flex;flex-direction:column;gap:8px;min-height:150px;transition:all .18s var(--ease);position:relative;overflow:hidden}.cover-variant:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--accent-strong),var(--accent));opacity:.8}.cover-variant:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:0 12px 28px var(--accent-soft)}.cv-heading{font-size:17px;font-weight:800;color:var(--text);letter-spacing:-.01em}.cv-sub{font-size:13px;color:var(--text-secondary);line-height:1.5}.cv-quote{font-size:12.5px;font-style:italic;color:var(--accent-strong);border-left:2px solid var(--accent-line);padding-left:8px;margin-top:auto}.cv-use{font-size:12px;color:var(--accent-strong);font-weight:600;margin-top:4px}.beautify-list{display:flex;flex-direction:column;gap:6px;max-height:360px;overflow-y:auto}.beautify-item{padding:9px 12px;border:1px solid var(--border);border-radius:8px;font-size:13px;background:var(--bg-soft);line-height:1.5}.beautify-item b{color:var(--accent-strong);margin-right:6px}.toast{position:fixed;bottom:32px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#261f3d,#171327);color:#fff;padding:12px 22px;border-radius:999px;border:1px solid rgba(255,255,255,.1);font-size:13.5px;font-weight:500;letter-spacing:.01em;line-height:1.5;box-shadow:0 10px 34px #0000004d;z-index:200;animation:toastIn .28s var(--spring) backwards}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,12px) scale(.96)}to{opacity:1;transform:translate(-50%) scale(1)}}.toast.ok{border-color:#34d39973;box-shadow:0 10px 34px #10b98138}.toast.err{border-color:#f8717180;box-shadow:0 10px 34px #ef444438}.chart-wrap{flex:0 0 40%;max-width:42%;align-self:stretch;display:flex;align-items:center;justify-content:center}.chart-svg{width:100%;height:auto;max-height:100%;display:block}.modal.chart-modal{width:min(760px,94vw)}.chart-kind-row{display:flex;gap:8px}.chart-kind-row button{flex:1;padding:10px;border-radius:10px;border:1px solid var(--border);background:#fff;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--text-secondary);transition:all .15s var(--ease)}.chart-kind-row button:hover{border-color:var(--accent)}.chart-kind-row button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong);box-shadow:0 0 0 2px var(--accent-soft)}.chart-samples{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.chart-samples button{padding:3px 12px;font-size:12px;border-radius:14px}.chart-field-row{display:grid;grid-template-columns:1fr 140px;gap:12px}.chart-field-row .field-label{display:flex;flex-direction:column;gap:4px}.chart-field-row input{padding:7px 10px;border:1px solid var(--border);border-radius:8px;font-size:13px}.chart-field-row input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.chart-rows{display:flex;flex-direction:column;gap:6px}.chart-rows-head{display:grid;grid-template-columns:1fr 1fr 1fr 32px;gap:8px;font-size:11.5px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;padding:0 2px}.chart-rows.pie .chart-rows-head{grid-template-columns:1fr 1fr 32px}.chart-row{display:grid;grid-template-columns:1fr 1fr 1fr 32px;gap:8px;align-items:center}.chart-rows.pie .chart-row{grid-template-columns:1fr 1fr 32px}.chart-row input{padding:7px 10px;border:1px solid var(--border);border-radius:8px;font-size:13px;width:100%}.chart-row input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.chart-row .danger.sm{padding:6px}.chart-preview{border:1px solid var(--border);border-radius:12px;padding:6px;background:var(--bg-soft)}.url-input{flex:1;padding:9px 12px;font-size:14px}.chart-preview .chart-svg{max-height:300px}.sab-menu button:hover,.ctx-menu button:hover,.rtb-menu button:hover,.theme-menu button:hover,.theme-opt:hover,.outline-item:hover,.slide-item .tools button:hover,.hist-card .tools button:hover,.tool-group>button:hover,.ai-row-body button:hover,.more-toggle:hover,.pp-controls button:hover{transform:none;box-shadow:none}.topbar{padding:12px 22px;background:var(--glass-strong);box-shadow:0 1px 0 var(--border),0 4px 20px #00000008}.topbar .brand{font-size:16.5px;padding:4px 8px 4px 2px;border-radius:8px;transition:color .2s var(--ease)}.topbar .brand:hover{color:var(--accent-strong)}.brand-mark{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--grad-accent);box-shadow:0 4px 14px var(--accent-line)}.brand-mark svg{width:19px;height:19px}.brand-mark svg rect,.brand-mark svg path{stroke:#fff!important}.icon-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:13px;color:var(--text-secondary)}.icon-btn:hover{color:var(--accent-strong)}.icon-btn .ico{font-size:14px;line-height:1}.icon-btn.primary,.icon-btn.primary:hover{color:#fff;border-color:transparent}.plan-badge{padding:4px 12px;border-radius:999px;font-size:12px;font-weight:700;color:#fff;background:var(--grad-accent);box-shadow:0 3px 12px var(--accent-line)}.theme-select{position:relative}.theme-btn{display:inline-flex;align-items:center;gap:8px;padding:6px 13px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font-size:13px;font-weight:600;color:var(--text);cursor:pointer;transition:border-color .2s var(--ease),color .2s var(--ease),box-shadow .2s var(--ease)}.theme-btn:hover{border-color:var(--accent-line);color:var(--accent-strong);box-shadow:var(--shadow-sm);transform:none}.swatch{display:inline-flex;width:36px;height:16px;border-radius:999px;overflow:hidden;border:1px solid rgba(0,0,0,.12);flex:none}.swatch i{flex:1}.theme-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:60;min-width:218px;max-height:62vh;overflow-y:auto;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-pop);animation:modalIn .18s var(--spring) backwards}.theme-opt{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;border-radius:8px;background:transparent;font-size:13px;color:var(--text);text-align:left;cursor:pointer;transition:background .15s var(--ease)}.theme-opt:hover{background:var(--bg-soft)}.theme-opt.active{background:var(--accent-soft);color:var(--accent-strong);font-weight:700}.theme-opt .check{margin-left:auto;font-size:12px}.editor-tools{display:flex;flex-direction:column;gap:8px;margin:-22px -24px 16px;padding:12px 24px 14px;background:var(--bg-soft);border-bottom:1px solid var(--border)}.tool-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tool-group{display:inline-flex;align-items:center;gap:2px;padding:3px;background:var(--surface);border:1px solid var(--border);border-radius:999px}.tool-group>button,.tool-group>.theme-btn{border:none;background:transparent;padding:6px 12px;border-radius:999px;font-size:12.5px;font-weight:600;color:var(--text-secondary);transition:background .15s var(--ease),color .15s var(--ease)}.tool-group>button:hover{background:var(--bg-soft);color:var(--accent-strong)}.tool-group>button.primary{background:var(--grad-accent);color:#fff}.tool-group>button.primary:hover{background:var(--grad-accent);color:#fff;filter:brightness(1.06)}.tool-group>.tool-sep{width:1px;height:18px;background:var(--border);margin:0 3px}.tool-group>select{border:none;background:transparent;font-size:12.5px;font-weight:600;padding:6px 10px;border-radius:999px;color:var(--text-secondary);cursor:pointer}.tool-group>select:hover{background:var(--bg-soft);color:var(--accent-strong)}.tool-group>select:focus{box-shadow:none;background:var(--bg-soft)}.tool-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-right:2px;white-space:nowrap}.tool-spacer{flex:1}.editor-tools .ai-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px 10px;border-radius:var(--radius);background:linear-gradient(135deg,var(--accent-soft),transparent);border:1px solid var(--accent-line)}.ai-row.collapsed{padding:6px 10px}.ai-row-toggle{display:inline-flex;align-items:center;gap:6px;border:none;background:transparent;color:var(--accent-strong);font-size:12.5px;font-weight:700;padding:4px 8px;border-radius:8px;cursor:pointer}.ai-row-toggle:hover{background:#8b5cf61a;color:var(--accent-strong);transform:none;box-shadow:none}.ai-row-body{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ai-row-body button{padding:6px 11px;font-size:12.5px;border-radius:999px;border:1px solid var(--border);background:#ffffffd9;color:var(--text-secondary);font-weight:600}.ai-row-body button:hover{border-color:var(--accent);color:var(--accent-strong);background:#fff;box-shadow:0 2px 8px var(--accent-soft)}.slide-item{border-radius:var(--radius);padding:12px 14px}.slide-item .tools{opacity:.4;transition:opacity .2s var(--ease)}.slide-item:hover .tools,.slide-item.active .tools,.slide-item:focus-within .tools{opacity:1}.slide-item.active{background:linear-gradient(135deg,rgba(139,92,246,.07),transparent)}.slide-item .idx{font-size:10.5px;font-weight:700;letter-spacing:.07em}.sample-card,.tpl-card{border:1px solid var(--border)!important}.sample-card:hover,.tpl-card:hover{border-color:var(--accent-line)!important;box-shadow:var(--shadow-hover)}.tpl-card{border-color:var(--border)}.tpl-icon{font-size:26px;line-height:1}.tpl-name{font-size:14.5px}.mode-switch{display:inline-flex;gap:2px;padding:3px;margin-bottom:18px;background:var(--bg-soft);border:1px solid var(--border);border-radius:999px}.mode-switch button{border:none;background:transparent;padding:7px 16px;border-radius:999px;font-size:13px;font-weight:600;color:var(--text-secondary);transition:background .18s var(--ease),color .18s var(--ease),box-shadow .18s var(--ease)}.mode-switch button:hover{transform:none;box-shadow:none;color:var(--accent-strong)}.mode-switch button.active{background:var(--surface);color:var(--accent-strong);box-shadow:var(--shadow-sm)}.builtin-box{display:flex;flex-direction:column;gap:9px;padding:14px 16px;margin-bottom:16px;background:linear-gradient(135deg,var(--accent-soft),transparent);border:1px solid var(--accent-line);border-radius:var(--radius)}.bi-row{display:flex;align-items:center;gap:10px;font-size:13px;flex-wrap:wrap}.bi-row label{min-width:68px;color:var(--text-muted)}.bi-row b{color:var(--accent-strong)}.key-mask{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;padding:3px 10px;border-radius:6px;background:var(--surface);border:1px solid var(--border);color:var(--text-secondary);letter-spacing:.04em}@media (max-width: 760px){.hero{padding:22px 4px 18px}.editor-tools{margin:-16px -14px 14px;padding:10px 14px 12px}.compose-cta{margin-left:0;width:100%}.compose-cta .btn-lg{flex:1}}.preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.preview-card{position:relative;display:block;border:1.5px solid var(--border);background:var(--surface);border-radius:14px;overflow:hidden;cursor:pointer;text-align:left;padding:0;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.preview-card:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:0 12px 30px #00000029}.preview-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pv-slide{width:100%;container-type:inline-size}.preview-rec{position:absolute;top:8px;left:8px;z-index:3;background:var(--accent);color:#fff;font-size:12px;font-weight:700;padding:3px 9px;border-radius:999px;box-shadow:0 2px 8px #00000040}.preview-meta{padding:10px 12px 12px}.preview-name{font-weight:700;font-size:15px;color:var(--text)}.preview-rationale{color:var(--text-muted);font-size:13px;margin-top:3px;line-height:1.5}.draft-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;max-width:860px;margin:0 auto 18px;padding:14px 18px;border-radius:14px;background:var(--surface, #fff);border:1px solid var(--border, rgba(0, 0, 0, .08));border-left:4px solid var(--accent, #7c6cff);box-shadow:0 6px 22px #0000000f;animation:draft-in .35s ease both}@keyframes draft-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.draft-banner-info{display:flex;align-items:center;gap:12px;min-width:0}.draft-banner-ico{font-size:26px;line-height:1}.draft-banner-title{font-weight:700;font-size:15px;color:var(--text, #1a1a2e)}.draft-banner-meta{font-weight:500;color:var(--text-secondary, #8a8aa0);font-size:13px;margin-left:6px}.draft-banner-sub{font-size:13px;color:var(--text-secondary, #8a8aa0);margin-top:2px}.draft-banner-actions{display:flex;gap:10px;flex-shrink:0}.draft-banner-actions .btn-sm{padding:8px 16px;font-size:14px;border-radius:10px;border:none;cursor:pointer;font-weight:600;transition:filter .15s ease,transform .15s ease}.draft-banner-actions .btn-sm:active{transform:scale(.97)}.draft-banner-actions .primary{background:var(--grad-accent, linear-gradient(135deg, #7c6cff, #22d3ee));color:#fff}.draft-banner-actions .primary:hover{filter:brightness(1.06)}.draft-banner-actions .btn-ghost{background:transparent;color:var(--text-secondary, #6b6b80);border:1px solid var(--border, rgba(0, 0, 0, .12))}.draft-banner-actions .btn-ghost:hover{background:#7c6cff14;color:var(--accent, #7c6cff)}.design-modal{max-width:560px;width:calc(100% - 32px)}.dp-section{margin-bottom:16px}.dp-label{font-size:12px;font-weight:600;color:var(--text-muted, #6b6b80);margin-bottom:8px;letter-spacing:.02em}.dp-variants{display:flex;flex-wrap:wrap;gap:6px}.dp-chip{padding:5px 12px;font-size:13px;border-radius:999px;cursor:pointer;background:var(--card, #fff);color:var(--text, #1f2937);border:1px solid var(--border, rgba(0,0,0,.12));transition:all .15s}.dp-chip:hover{border-color:var(--accent, #7c6cff)}.dp-chip.active{background:var(--accent, #7c6cff);color:#fff;border-color:var(--accent, #7c6cff)}.dp-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.dp-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.dp-grid3 label,.dp-grid2 label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-muted, #6b6b80)}.dp-grid3 input,.dp-grid3 select,.dp-grid2 input,.dp-grid2 select{padding:6px 8px;font-size:13px;border-radius:8px;border:1px solid var(--border, rgba(0,0,0,.12));background:var(--card, #fff);color:var(--text, #1f2937)}.img-pick-modal{max-width:640px;width:calc(100% - 32px)}.img-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;max-height:60vh;overflow-y:auto}.img-cell{position:relative;padding:0;border:1px solid var(--border, rgba(0,0,0,.12));border-radius:8px;overflow:hidden;cursor:pointer;aspect-ratio:4 / 3;background:var(--card, #fff)}.img-cell img{width:100%;height:100%;object-fit:cover;display:block}.img-cell:hover{border-color:var(--accent, #7c6cff)}.img-credit{position:absolute;left:0;right:0;bottom:0;font-size:10px;color:#fff;background:#0000008c;padding:2px 4px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.svg-prev-fmt{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted, #6b6b80);flex-wrap:wrap}.svg-prev-fmt select{padding:4px 8px;border-radius:8px;border:1px solid var(--border, rgba(0,0,0,.12));background:var(--card, #fff);color:var(--text, #1f2937);font-size:12px}.svg-prev-stage{position:relative;width:100%;background:#14161f;border:1px solid var(--border, rgba(0,0,0,.18));border-radius:10px;overflow:hidden;max-height:56vh}.svg-prev-stage>div{width:100%;height:100%}.svg-prev-stage svg{display:block;width:100%!important;height:100%!important}.svg-prev-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;min-height:200px;color:var(--text-muted, #6b6b80);font-size:13px;text-align:center;padding:24px}.svg-prev-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;flex-wrap:wrap}.svg-prev-pager{display:flex;align-items:center;gap:6px}.svg-prev-pager button{min-width:30px;padding:4px 12px;font-size:16px;line-height:1}.svg-prev-meta{font-size:12px;color:var(--text-muted, #6b6b80)}
