@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-ext-wght-normal-DCwSJGxG.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-wght-normal-D_ZTVpCC.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper:#fbf2e3;--paper-deep:#f4e6cd;--surface:#fffcf4;--ink:#33231a;--ink-soft:#6e5644;--ink-faint:#33231a9e;--line:#53351d24;--line-strong:#53351d3d;--accent:#ed8b16;--accent-deep:#c56f08;--accent-soft:#ed8b1624;--font-display:"Bricolage Grotesque Variable", "Bricolage Grotesque", sans-serif;--font-body:"Figtree Variable", Figtree, -apple-system, BlinkMacSystemFont, sans-serif;--shadow-btn:0 1px 2px #53351d1f}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font-body);color:var(--ink);background:radial-gradient(120% 90% at 50% -20%, #fef7e9 0%, var(--paper) 55%, #f6e8d0 100%);-webkit-font-smoothing:antialiased;background-attachment:fixed}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}button:focus-visible,input:focus-visible,[contenteditable]:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.app{flex-direction:column;height:100%;display:flex}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 24px;display:flex}.brand{font-family:var(--font-display);letter-spacing:-.03em;-webkit-user-select:none;user-select:none;align-items:baseline;font-size:26px;font-weight:700;display:flex}.brand-caret{background:var(--accent);border-radius:2px;align-self:center;width:11px;height:.92em;margin-left:4px;animation:1.2s step-end infinite caret-blink;display:inline-block}@keyframes caret-blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.topbar-actions{align-items:center;gap:10px;display:flex}.btn{letter-spacing:.01em;border-radius:11px;align-items:center;gap:7px;height:38px;padding:0 16px;font-size:13.5px;font-weight:600;transition:transform .12s,box-shadow .12s,background .12s;display:inline-flex}.btn:disabled{opacity:.55;cursor:default}.btn--ghost{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-btn)}.btn--ghost:hover:not(:disabled){border-color:var(--accent);color:var(--accent-deep)}.btn--primary{background:var(--accent);color:#fff9ee;box-shadow:var(--shadow-btn), 0 6px 16px -6px #ed8b168c}.btn--primary:hover:not(:disabled){background:var(--accent-deep);transform:translateY(-1px)}.btn--primary:active:not(:disabled){transform:translateY(0)}.template-rail{flex-wrap:wrap;justify-content:center;gap:8px;padding:16px 24px 4px;display:flex}.template-pill{height:34px;color:var(--ink-soft);border:1px solid #0000;border-radius:17px;align-items:center;gap:8px;padding:0 15px;font-size:13.5px;font-weight:600;transition:color .12s,background .12s,border-color .12s;display:inline-flex}.template-pill:hover{color:var(--ink);background:var(--accent-soft)}.template-pill.is-active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.template-icon{justify-content:center;align-items:center;width:15px;height:15px;display:inline-flex}.custom-pill-caret{background:var(--accent);border-radius:2px;width:7px;height:13px;display:inline-block}.stage{flex:1;min-height:0;padding:20px 24px;display:flex}.stage-scroll{border:1px solid var(--line);border-radius:18px;flex:1;display:flex;overflow:auto}.stage-scroll--workbench{background-image:radial-gradient(#33231a21 1px,#0000 1.2px);background-size:22px 22px;background-color:var(--paper-deep)}.stage-scroll::-webkit-scrollbar{width:10px;height:10px}.stage-scroll::-webkit-scrollbar-thumb{background:#33231a52 padding-box padding-box;border:3px solid #0000;border-radius:5px}.stage-scroll::-webkit-scrollbar-track{background:0 0}.frame{flex-shrink:0;margin:auto;padding:64px;position:relative}.frame-content{width:min(620px,max(240px,100vw - 192px));position:relative}.frame-alpha{background-image:linear-gradient(45deg,#33231a1a 25%,#0000 25% 75%,#33231a1a 75%),linear-gradient(45deg,#33231a1a 25%,#0000 25% 75%,#33231a1a 75%);background-position:0 0,9px 9px;background-size:18px 18px;position:absolute;inset:0}.frame-watermark{font-family:var(--font-display);letter-spacing:-.01em;color:#33231a99;-webkit-user-select:none;user-select:none;background:#fffcf4a6;border-radius:999px;padding:3px 10px 4px;font-size:12.5px;font-weight:700;position:absolute;bottom:-34px;right:2px}.frame-watermark--on-dark{color:#fff9eebf;background:#140c0647}.frame-watermark:after{content:"";background:var(--accent);vertical-align:-.08em;border-radius:1px;width:5px;height:.8em;margin-left:3px;display:inline-block}.dock{border-top:1px solid var(--line);flex-wrap:wrap;align-items:flex-end;gap:28px;padding:14px 24px 18px;display:flex}.dock-group{flex-direction:column;gap:8px;display:flex}.dock-group--backgrounds{min-width:260px}.ph-badge{border-radius:10px;align-self:center;margin:0 auto;display:inline-flex}.ph-badge img{width:auto;height:42px;display:block}.dock-label{letter-spacing:.09em;text-transform:uppercase;color:var(--ink-faint);-webkit-user-select:none;user-select:none;font-size:10.5px;font-weight:700}.swatch-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.swatch-slot{align-items:center;gap:8px;display:inline-flex}.swatch-divider{background:var(--line-strong);width:1px;height:18px}.swatch{border-radius:50%;width:26px;height:26px;transition:transform .12s,box-shadow .12s;box-shadow:inset 0 0 0 1px #33231a2e}.swatch:hover{transform:scale(1.12)}.swatch.is-active{box-shadow:inset 0 0 0 1px #33231a2e, 0 0 0 2px var(--paper), 0 0 0 4px var(--accent)}.swatch--alpha{background-color:#fffcf4;background-image:linear-gradient(45deg,#33231a2e 25%,#0000 25% 75%,#33231a2e 75%),linear-gradient(45deg,#33231a2e 25%,#0000 25% 75%,#33231a2e 75%);background-position:0 0,5px 5px;background-size:10px 10px}.segmented{border:1px solid var(--line-strong);background:var(--surface);height:32px;box-shadow:var(--shadow-btn);border-radius:10px;gap:2px;padding:2px;display:inline-flex}.segment{color:var(--ink-soft);border-radius:7px;padding:0 12px;font-size:12.5px;font-weight:600;transition:background .1s,color .1s}.segment:hover{color:var(--ink)}.segment.is-active{background:var(--ink);color:var(--paper)}.toggle{background:var(--line-strong);border-radius:13px;width:44px;height:26px;padding:3px;transition:background .14s;display:flex}.toggle-knob{background:var(--surface);border-radius:50%;width:20px;height:20px;transition:transform .14s;box-shadow:0 1px 3px #33231a4d}.toggle.is-on{background:var(--accent)}.toggle.is-on .toggle-knob{transform:translate(18px)}.spinner{background:currentColor;border-radius:2px;flex-shrink:0;width:7px;height:14px;animation:.8s step-end infinite caret-blink}.about-link{height:32px;color:var(--ink-faint);letter-spacing:.02em;align-self:flex-end;padding:0 4px;font-size:12px;font-weight:600;transition:color .12s}.about-link:hover{color:var(--accent-deep)}.about{z-index:40;background:radial-gradient(120% 90% at 50% -20%, #fef7e9 0%, var(--paper) 55%, #f6e8d0 100%);justify-content:center;align-items:center;padding:6rem clamp(1.5rem,4vw,3rem);display:flex;position:fixed;inset:0}.about-close{color:var(--ink-soft);border-radius:9px;padding:6px 10px;font-size:13.5px;font-weight:600;transition:color .12s,background .12s;position:absolute;top:20px;left:24px}.about-close:hover{color:var(--ink);background:var(--accent-soft)}.about-body{text-align:center;max-width:520px;animation:.7s cubic-bezier(.22,1,.36,1) both about-in}@keyframes about-in{0%{opacity:0;transform:translateY(26px)}}.about-heading{font-family:var(--font-display);letter-spacing:.14em;margin-bottom:2rem;font-size:clamp(1.4rem,3vw,1.9rem);font-weight:700}.about-rule{background:var(--line-strong);transform-origin:50%;height:1px;margin-bottom:2rem;animation:.8s .25s both rule-in}@keyframes rule-in{0%{transform:scaleX(0)}}.about-text{letter-spacing:.01em;color:var(--ink-soft);font-size:.9375rem;line-height:1.8}.about-text+.about-text{margin-top:1.25rem}.about-text a{color:var(--ink);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.about-text a:hover{color:var(--accent-deep)}.about-flourish{color:var(--ink);font-family:ui-serif,Georgia,serif;font-style:italic}.toast{background:var(--ink);color:var(--paper);z-index:10;border-radius:12px;padding:10px 18px;font-size:13.5px;font-weight:600;animation:.18s toast-in;position:fixed;bottom:92px;left:50%;transform:translate(-50%);box-shadow:0 12px 32px -8px #140a0466}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(8px)}}@media (width<=720px){.topbar{padding:12px 16px}.btn-label{display:none}.btn--ghost{padding:0 11px}.stage{padding:12px 16px}.dock{gap:18px;padding:12px 16px 16px}.frame-content{width:max(240px,100vw - 176px)}.toast{top:68px;bottom:auto}}.card{text-align:left;border-radius:22px;width:100%;padding:20px 22px 18px;box-shadow:0 1px 2px #140a0424,0 12px 32px -8px #140a0447,0 32px 64px -16px #140a044d}.card-header{align-items:center;gap:9px;margin-bottom:14px;display:flex}.card-title{letter-spacing:-.01em;font-size:15px;font-weight:600}.composer-row{justify-content:space-between;align-items:center;margin-top:14px;display:flex}.composer-left,.composer-right{align-items:center;gap:8px;display:flex}.prompt-text{white-space:pre-wrap;overflow-wrap:break-word;caret-color:currentColor;outline:none;min-height:1.6em;font-size:15.5px;line-height:1.6}.prompt-text:empty:before{content:attr(data-placeholder);opacity:.45;pointer-events:none}.prompt-text:focus-visible{outline:none}[class*=-composer]:focus-within{outline-offset:3px;outline:2px solid #ed8b168c}.model-select{display:inline-flex;position:relative}.model-select>button{cursor:pointer;white-space:nowrap}.model-menu{z-index:20;text-align:left;border-radius:14px;min-width:232px;max-height:280px;padding:6px;position:absolute;right:0;overflow-y:auto;box-shadow:0 4px 12px #0000002e,0 16px 40px -8px #0000004d}.model-menu--up{bottom:calc(100% + 8px)}.model-menu--down{top:calc(100% + 8px);left:0;right:auto}.model-menu--dark{color:#e8e8e6;background:#262828;border:1px solid #3a3c3c}.model-menu--light{color:#2a2a2e;background:#fff;border:1px solid #e6e2d8}.model-menu-label{opacity:.65;padding:7px 10px 5px;font-size:12.5px}.model-item{width:100%;font:inherit;cursor:pointer;text-align:left;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;font-size:13.5px;display:flex}.model-menu--dark .model-item:hover{background:#ffffff12}.model-menu--light .model-item:hover{background:#2a2a2e0f}.model-item-name{align-items:center;gap:7px;font-weight:500;display:flex}.model-item-badge{border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:500}.model-menu--dark .model-item-badge{color:#8ed3dc;background:#7ec8d229}.model-menu--light .model-item-badge{color:#55555c;background:#2a2a2e14}.model-item-note{opacity:.6;margin-top:2px;font-size:12px;font-weight:400;display:block}.model-item-check{opacity:.9;flex-shrink:0}.card--chatgpt{color:#ececec;background:#212121;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif}.chatgpt-logo{color:#fff}.chatgpt-model{color:#b4b4b4;align-items:center;gap:4px;margin-left:1px;font-size:14px;display:inline-flex}.chatgpt-composer{background:#303030;border-radius:24px;padding:16px 16px 12px}.chatgpt-composer .prompt-text{color:#ececec}.chatgpt-chip{color:#b4b4b4;border:1px solid #ffffff24;border-radius:16px;justify-content:center;align-items:center;gap:6px;min-width:32px;height:32px;padding:0 8px;font-size:13px;display:inline-flex}.chatgpt-mic{color:#b4b4b4;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.chatgpt-send{color:#0d0d0d;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.card--claude{color:#3d3929;background:#f5f3ea;font-family:ui-serif,Georgia,Times New Roman,serif}.claude-logo{color:#d97757}.card-title--serif{color:#3d3929;font-family:ui-serif,Georgia,serif;font-size:16px;font-weight:500}.claude-composer{background:#fdfcf8;border:1px solid #e3decc;border-radius:16px;padding:16px 16px 12px;box-shadow:0 2px 8px #3d39290d}.claude-composer .prompt-text{color:#3d3929;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px}.claude-chip{color:#7a745e;border:1px solid #e3decc;border-radius:9px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.claude-model{color:#7a745e;align-items:center;gap:3px;margin-right:4px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;display:inline-flex}.card--claude .model-menu,.card--gemini .model-menu{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.claude-send{color:#fff;background:#d97757;border-radius:10px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.card--gemini{color:#1f1f1f;background:#fff;font-family:Google Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.card-title--gemini{background:linear-gradient(90deg,#4285f4,#9b72cb,#d96570);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;font-size:16px;font-weight:500}.gemini-composer{background:#fff;border:1px solid #dadce0;border-radius:24px;padding:16px 18px 12px}.gemini-composer .prompt-text{color:#1f1f1f}.gemini-chip{color:#444746;border-radius:17px;justify-content:center;align-items:center;gap:6px;min-width:34px;height:34px;font-size:13px;display:inline-flex}.gemini-chip--label{padding:0 10px}.gemini-model{color:#444746;background:#f0f4f9;border-radius:15px;align-items:center;gap:5px;height:30px;padding:0 13px;font-size:13px;font-weight:500;display:inline-flex}.gemini-send{color:#1f1f1f;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.card--manus{color:#34322d;background:#fcfcfa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,sans-serif}.manus-logo{color:#34322d}.card-title--manus{letter-spacing:.01em;color:#34322d;font-size:16px;font-weight:600}.manus-composer{background:#fff;border:1px solid #ebebe8;border-radius:18px;padding:16px 16px 12px;box-shadow:0 2px 10px #34322d0d}.manus-composer .prompt-text{color:#34322d}.manus-chip{color:#85837c;border:1px solid #e8e8e5;border-radius:15px;justify-content:center;align-items:center;gap:5px;min-width:30px;height:30px;padding:0 8px;font-size:12.5px;display:inline-flex}.manus-chip--label{padding:0 11px}.manus-send{color:#fff;background:#1a1a19;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.card--perplexity{color:#e8e8e6;background:#1a1b1b;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,sans-serif}.perplexity-logo{color:#e8e8e6}.card-title--perplexity{letter-spacing:.02em;color:#e8e8e6;font-size:16.5px;font-weight:400}.perplexity-composer{background:#202222;border:1px solid #2e3030;border-radius:22px;padding:16px 16px 12px}.perplexity-composer .prompt-text{color:#e8e8e6}.perplexity-composer .prompt-text:empty:before{opacity:.38}.perplexity-plus{color:#9b9f9e;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.perplexity-modes{background:#2a2c2c;border-radius:16px;align-items:center;padding:2px;display:inline-flex}.perplexity-mode{color:#d5d7d6;border-radius:14px;align-items:center;gap:6px;height:28px;padding:0 11px;font-size:13px;display:inline-flex}.perplexity-mode:first-child{background:#383b3b}.perplexity-model{color:#9b9f9e;align-items:center;gap:4px;margin-right:2px;font-family:inherit;font-size:13px;display:inline-flex}.perplexity-mic{color:#9b9f9e;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.perplexity-send{color:#0a1414;background:#20b8cd;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.card--custom-light{color:#2a2a2e;background:#fff;font-family:Figtree Variable,-apple-system,sans-serif}.card--custom-dark{color:#eaeaec;background:#17181a;font-family:Figtree Variable,-apple-system,sans-serif}.custom-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px}.card--custom-light .custom-dot{background:#2a2a2e}.card--custom-dark .custom-dot{background:#eaeaec}.custom-title{font:inherit;letter-spacing:-.01em;color:inherit;background:0 0;border:none;outline:none;width:100%;padding:0;font-size:15px;font-weight:600}.custom-title::placeholder{color:currentColor;opacity:.4}.custom-composer{border-radius:16px;padding:16px 16px 12px}.card--custom-light .custom-composer{background:#f6f5f2;border:1px solid #e9e6df}.card--custom-dark .custom-composer{background:#202126;border:1px solid #2e2f36}.custom-send{border-radius:10px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.card--custom-light .custom-send{color:#f7f7f5;background:#2a2a2e}.card--custom-dark .custom-send{color:#202126;background:#eaeaec}
