:root{color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;--font-display: ui-rounded, "SF Pro Rounded", "PingFang SC", "Microsoft YaHei", sans-serif;--font-data: ui-monospace, "SFMono-Regular", "Cascadia Code", monospace;--snow: #f8fbfd;--ice: #8ccbf2;--glacier: #b7cfdf;--ink: #233449;--mint: #55bca2;--coral: #e97787;--muted: #71809a;--line: rgba(106, 126, 170, .16);--glass: rgba(247, 250, 255, .72);--glass-strong: rgba(252, 253, 255, .9);--shadow-soft: 0 18px 55px rgba(64, 91, 111, .1);--shadow-float: 0 24px 70px rgba(58, 87, 108, .15);--radius-sm: 12px;--radius-md: 18px;--radius-lg: 26px;--tap: 48px;--ease-out: cubic-bezier(.22, .8, .25, 1);--instant: .18s;--transition: .42s;--breath: 4.2s;--ambient: 16s}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:#f2f7fa}body{min-width:320px;min-height:100vh;min-height:100dvh;margin:0;overflow:hidden;background:radial-gradient(circle at 78% 10%,rgba(167,205,230,.14),transparent 35rem),radial-gradient(circle at 18% 78%,rgba(140,203,242,.17),transparent 38rem),linear-gradient(155deg,#fbfdfe,#f1f6f9 52%,#f8fbfc);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,select{font:inherit}button,label{-webkit-tap-highlight-color:transparent}button{min-height:40px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#ffffffc2;color:var(--ink);cursor:pointer;transition:transform var(--instant) var(--ease-out),border-color var(--instant) ease,background-color var(--instant) ease,box-shadow var(--instant) ease,color var(--instant) ease}button:hover{border-color:#86c9ff9e;box-shadow:0 10px 26px #40667f1a}button:active{transform:scale(.975)}button:disabled{cursor:not-allowed;opacity:.46}button:focus-visible,input:focus-visible,select:focus-visible,label:has(input:focus-visible){outline:3px solid rgba(134,201,255,.4);outline-offset:3px}input,select{min-height:42px;border:1px solid var(--line);border-radius:11px;background:#fffc;color:var(--ink)}input[type=number],output,.workspace-head h1,.confirm-head h1{font-variant-numeric:tabular-nums}img,canvas,svg{display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{position:relative;isolation:isolate;min-height:100vh;min-height:100dvh}.ambient-field{position:fixed;inset:0;z-index:-2;overflow:hidden;pointer-events:none}.ambient-field:after{position:absolute;inset:0;background:linear-gradient(#ffffff2e,#fff0),radial-gradient(circle at 50% 50%,transparent 45%,rgba(126,134,198,.05) 100%);content:""}.ambient-field i{position:absolute;width:min(62vw,760px);aspect-ratio:1;border-radius:50%;opacity:.32;filter:blur(28px);will-change:transform}.ambient-field i:nth-child(1){top:-34%;left:-12%;background:radial-gradient(circle,#8ccbf2b8,#8ccbf200 68%);animation:ambient-drift-a var(--ambient) ease-in-out infinite alternate}.ambient-field i:nth-child(2){top:-16%;right:-20%;background:radial-gradient(circle,#b7cfdf99,#b7cfdf00 69%);animation:ambient-drift-b 18s ease-in-out infinite alternate}.ambient-field i:nth-child(3){bottom:-46%;left:28%;background:radial-gradient(circle,#d7e7f0a3,#d7e7f000 70%);animation:ambient-drift-c 20s ease-in-out infinite alternate}.flow-shell{display:grid;place-items:center;overflow:auto;padding:clamp(24px,5vw,64px)}.flow-shell--upload{position:relative;height:100dvh;min-height:0;overflow:hidden}.flow-shell--confirm{position:relative}.brand-logo{display:inline-flex;align-items:center;gap:9px;line-height:0}.brand-logo__icon,.brand-logo__wordmark{height:auto;flex:0 0 auto;object-fit:contain}.brand-mark{position:absolute;z-index:2;top:clamp(22px,4vw,40px);left:clamp(22px,4vw,52px);display:block}.brand-mark .brand-logo__icon{width:clamp(58px,6vw,76px)}.brand-mark .brand-logo__wordmark{width:clamp(142px,14vw,178px)}.privacy-help{position:fixed;z-index:30;top:clamp(18px,3vw,32px);right:clamp(18px,3vw,36px);width:auto;color:#4e5260}.privacy-help:not([open]){width:auto}.privacy-help[open]{width:min(340px,calc(100vw - 36px))}.privacy-help summary{width:max-content;margin-left:auto;padding:9px 14px;border:1px solid rgba(112,116,140,.14);border-radius:999px;background:#ffffffc7;box-shadow:0 8px 24px #41455a1a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-size:14px;cursor:pointer;list-style:none}.privacy-help summary::-webkit-details-marker{display:none}.privacy-help__content{margin-top:10px;padding:18px;border:1px solid rgba(112,116,140,.14);border-radius:18px;background:#fffffff0;box-shadow:0 18px 48px #41455a29;font-size:14px;line-height:1.65}.privacy-help__content strong{color:#343745;font-size:15px}.privacy-help__content p{margin:3px 0 13px}.privacy-help__content p:last-child{margin-bottom:0}.flow-shell--upload .upload-screen{min-height:100%}.upload-screen,.confirm-screen,.processing-screen{position:relative;z-index:1}.upload-screen{display:grid;place-items:center;width:100%;min-height:calc(100dvh - clamp(48px,10vw,128px));transition:transform var(--transition) var(--ease-out)}.upload-screen.is-dragover{transform:scale(1.015)}.upload-reference-file{position:absolute;inset:0;z-index:8;width:100%;height:100%;min-height:0;border:0;opacity:0;cursor:pointer}.upload-orbit__hit{position:absolute;inset:0;display:grid;place-items:center;cursor:pointer}.confirm-screen{display:grid;width:min(100%,980px);min-height:calc(100dvh - clamp(48px,10vw,128px));align-content:center;justify-items:center;gap:clamp(24px,4vh,42px);padding:12px 0}.confirm-head{display:grid;justify-items:center;gap:7px;text-align:center}.confirm-head h1,.workspace-head h1{margin:0;font-family:var(--font-display);font-weight:720;letter-spacing:-.045em}.confirm-head h1{font-size:clamp(36px,7vw,64px)}.confirm-head p{max-width:480px;margin:0;color:var(--muted);font-size:14px;line-height:1.7}.upload-photo-strip{display:flex;width:min(100%,820px);max-height:min(34dvh,260px);flex-wrap:wrap;justify-content:center;gap:12px;overflow:auto;padding:14px;scrollbar-width:thin}.upload-photo-thumb,.upload-photo-add{position:relative;width:clamp(68px,10vw,92px);height:clamp(68px,10vw,92px);flex:0 0 auto;border:1px solid rgba(255,255,255,.86);border-radius:20px;background:#fff9;box-shadow:0 12px 30px #3f5f751c;overflow:hidden}.upload-photo-thumb.is-entering{animation:photo-enter .48s var(--ease-out) both;animation-delay:calc(var(--photo-index) * 35ms)}.upload-photo-thumb img{width:100%;height:100%;object-fit:cover}.upload-photo-thumb__delete,.photo-delete{position:absolute;z-index:4;display:grid;place-items:center;width:27px;min-height:27px;padding:0;border:1px solid rgba(255,255,255,.74);border-radius:50%;background:#20304a94;color:#fff;font-size:17px;line-height:1;box-shadow:0 6px 16px #20304a2e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.upload-photo-thumb__delete{top:5px;right:5px;opacity:.5}.upload-photo-thumb:hover .upload-photo-thumb__delete,.upload-photo-thumb__delete:focus-visible{opacity:1}.upload-photo-add{overflow:visible;border-style:dashed;border-color:#7789bb47}.upload-orbit--compact{position:relative;width:100%;height:100%}.build-panel{position:relative;display:grid;place-items:center;min-height:92px}.processing-screen{display:grid;place-items:center}.processing-frame{position:relative;display:grid;place-items:center;width:min(72vw,420px);aspect-ratio:4 / 3;border-radius:var(--radius-lg);background:#ffffff8a;box-shadow:var(--shadow-float);color:var(--ink);font-family:var(--font-display);font-size:18px;font-weight:720;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.processing-frame:after{position:absolute;inset:16%;border-radius:50%;background:radial-gradient(circle,rgba(134,201,255,.28),transparent 68%);content:"";animation:processing-pulse var(--breath) ease-in-out infinite}.processing-frame span{z-index:1}.panel{border:1px solid rgba(255,255,255,.78);border-radius:var(--radius-md);background:var(--glass);box-shadow:var(--shadow-soft),inset 0 1px #fffc;-webkit-backdrop-filter:blur(18px) saturate(1.08);backdrop-filter:blur(18px) saturate(1.08)}.workspace-shell{display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;height:100vh;height:100dvh;padding:14px}.workspace-head{position:relative;z-index:2;display:grid;grid-template-columns:236px minmax(0,1fr) 286px;min-height:60px;align-items:center;gap:12px}.workspace-brand{display:flex;grid-column:1;min-width:0;align-items:center}.workspace-brand .brand-logo__icon{width:60px}.workspace-brand .brand-logo__wordmark{width:148px}.workspace-summary{grid-column:2;min-width:0;justify-self:start;white-space:nowrap}.workspace-head h1{font-size:clamp(22px,2.2vw,31px)}.back-button{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;color:#5d68a2}.back-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.editor-return-button{grid-column:3;justify-self:end;border-color:#71a7dc57;background:#e8f3ffeb;box-shadow:0 8px 22px #49759e1f;color:#3f6598;font-weight:760}.editor-return-button:hover{border-color:#5c9ad694;background:#dbedfffa;color:#294f82}.workspace-grid{position:relative;z-index:1;display:grid;grid-template-columns:236px minmax(0,1fr) 286px;gap:12px;min-width:0;min-height:0}.workspace-tools-column{display:grid;min-width:0;min-height:0;grid-template-rows:minmax(0,1fr) auto;gap:12px}.tool-panel{min-height:0;overflow:auto;padding:18px}.panel-title{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:18px}.panel-title>div{display:grid;gap:3px}.panel-title h2{margin:0;font-family:var(--font-display);font-size:22px;letter-spacing:-.03em}.panel-title small{color:var(--muted);font-size:11px}.template-panel__head{align-items:center}.template-panel__head .apply-all-action{flex:0 0 auto;width:auto;margin:0}.template-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.template-card{position:relative;display:grid;min-width:0;gap:7px;padding:8px;border-color:transparent;background:#ffffff6b;box-shadow:none;text-align:left}.template-card:hover{transform:translateY(-2px)}.template-card.is-active{border-color:#86c9ff9e;background:#eff4ffe0;box-shadow:0 0 0 2px #8ccbf21a,0 10px 25px #4a687e1a}.template-mini{position:relative;display:block;width:100%;aspect-ratio:1;overflow:hidden;border:1px solid rgba(105,122,168,.12);border-radius:10px;background:linear-gradient(145deg,#fbfcff,#eef2fa)}.template-mini i{position:absolute;border:2px solid rgba(247,250,255,.94);background:linear-gradient(145deg,#8ccbf26b,#b7cfdf57)}.template-card__name{overflow:hidden;color:#53617a;font-size:11px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.template-card__check{position:absolute;top:5px;right:5px;display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:linear-gradient(145deg,var(--ice),var(--glacier));color:#fff;font-size:12px;opacity:0;transform:scale(.72);transition:opacity var(--instant),transform var(--instant) var(--ease-out)}.template-card.is-active .template-card__check{opacity:1;transform:scale(1)}.secondary-action{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:8px;padding:8px 12px;color:#53617a;font-size:13px;font-weight:680}.secondary-action svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6}.apply-all-action{width:100%;margin-top:14px}.danger-action{color:#b84c63}.danger-action:hover{border-color:#f06f866b;background:#fff4f7e0}.workspace-stage{min-width:0;min-height:0;overflow:hidden;background:#fafcff91}.wall-view,.product-wall{min-height:0}.wall-view{height:100%;overflow:auto}.product-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));align-content:start;gap:14px;padding:18px}.product-card{position:relative;padding:11px;border:1px solid rgba(255,255,255,.82);border-radius:20px;background:#ffffffb8;box-shadow:0 12px 32px #3a586c17,inset 0 1px #ffffffe0;transition:transform var(--instant) var(--ease-out),border-color var(--instant),box-shadow var(--instant)}.product-card:hover{transform:translateY(-3px);box-shadow:0 18px 42px #3a586c21,inset 0 1px #fffffff0}.product-card.is-selected{border-color:#86c9ff8a;box-shadow:0 0 0 2px #8ccbf217,0 18px 42px #46627821}.product-card.is-drop-target,.product-card.is-move-target{border-color:#45c7a4b8;background:#f0fffac7}.product-card.is-move-source{opacity:.68}.product-preview-wrap{position:relative;display:block;width:100%;min-height:0;aspect-ratio:var(--preview-ratio, 1);overflow:hidden;padding:0;border:0;border-radius:14px;background:linear-gradient(145deg,#eff2f8,#f9faff);box-shadow:none}.product-preview-wrap:hover{border:0;box-shadow:none}.product-preview{width:100%;height:100%}.thumb-row{display:flex;min-height:46px;flex-wrap:wrap;align-items:center;gap:7px}.product-drop-zone{position:relative;min-height:53px;padding:5px 3px;border:1px dashed transparent;border-radius:12px}.is-drop-target .product-drop-zone,.is-move-target .product-drop-zone{border-color:#45c7a485}.photo-tile{position:relative;display:inline-flex}.thumb,.product-upload{width:44px;height:44px;min-height:44px;padding:0;overflow:hidden;border-radius:10px}.thumb img{width:100%;height:100%;object-fit:cover}.thumb.is-active{border-color:var(--ice);box-shadow:0 0 0 2px #86c9ff38}.photo-delete{top:-7px;right:-7px;width:32px;height:32px;min-height:32px;border:0;background:transparent;box-shadow:none;color:transparent;font-size:0;opacity:.62;-webkit-backdrop-filter:none;backdrop-filter:none}.photo-delete:after{display:grid;width:18px;height:18px;place-items:center;border:1px solid rgba(255,255,255,.74);border-radius:50%;background:#20304aa8;box-shadow:0 4px 12px #20304a29;color:#fff;content:"×";font-size:12px;line-height:1;pointer-events:none}.photo-tile:hover .photo-delete,.photo-delete:focus-visible{opacity:1}.product-upload{position:relative;display:grid;place-items:center;border:1px dashed rgba(112,130,177,.34);background:#ffffff6b;color:#66749a;cursor:pointer}.product-upload input,.upload-box input{position:absolute;inset:0;z-index:2;width:100%;height:100%;min-height:0;margin:0;border:0;opacity:0;cursor:pointer}.product-upload span{font-size:22px;font-weight:350}.move-target{position:absolute;inset:5px;width:calc(100% - 10px);border-color:#45c7a485;background:#f0fffaf0;color:#287b66;font-weight:720}.setting-block{display:grid;gap:10px;padding:16px 0;border-top:1px solid rgba(101,120,168,.12)}.settings-panel{padding:14px}.settings-panel .panel-title{margin-bottom:12px}.settings-panel .setting-block{gap:7px;padding:11px 0}.settings-panel .upload-box{min-height:68px;padding:9px}.setting-block:first-of-type{padding-top:0;border-top:0}.task-setting{border-top:0}.setting-block h3,.tool-section h3{margin:0;color:#53617a;font-size:12px;font-weight:760;letter-spacing:.04em}.upload-box{position:relative;display:grid;min-height:82px;place-items:center;padding:12px;border:1px dashed rgba(109,127,174,.28);border-radius:14px;background:#ffffff61;color:#63718d;text-align:center;cursor:pointer}.upload-box.is-dragover{border-color:var(--mint);background:#effff9b8}.upload-box span,.upload-box b{display:inline-flex;align-items:center;gap:8px;font-size:12px}.upload-box svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5}.setting-block__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.setting-block__head h3{margin:0}.text-action{border:0;background:transparent;color:#6d63a8;font:inherit;cursor:pointer}.text-action:disabled{color:#a9acb7;cursor:default}.frame-library__note{margin:10px 0 0;color:#7d8190;font-size:13px;line-height:1.55}.frame-library__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.preset-frame{position:relative;min-width:0}.preset-frame__use{display:grid;gap:5px;width:100%;padding:7px;border:1px solid rgba(112,116,140,.14);border-radius:12px;background:#ffffff94;color:#565a68;cursor:pointer}.preset-frame__use img{width:100%;aspect-ratio:1;object-fit:contain;border-radius:8px;background:#f2f3f8d1}.preset-frame__use span{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.frame-preview{display:block;width:86px;height:58px;margin-bottom:8px;padding:5px;overflow:hidden;border-radius:10px;background:linear-gradient(45deg,#e6eaf2 25%,transparent 25%) 0 0 / 14px 14px,linear-gradient(45deg,transparent 75%,#e6eaf2 75%) 0 0 / 14px 14px,#f7f9fc}.frame-preview img{width:100%;height:100%;object-fit:contain}.stepper{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;gap:7px}.stepper button,.stepper input{width:100%;padding:0;text-align:center}.stepper button{display:grid;place-items:center;touch-action:manipulation;user-select:none;-webkit-user-select:none}.stepper-icon{position:relative;display:block;width:16px;height:16px;pointer-events:none}.stepper-icon:before,.stepper-icon--plus:after{position:absolute;top:50%;left:50%;width:14px;height:2px;border-radius:999px;background:currentColor;content:"";transform:translate(-50%,-50%)}.stepper-icon--plus:after{transform:translate(-50%,-50%) rotate(90deg)}.unified-editor{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:14px;height:100%;min-height:0;padding:14px}.editor-canvas-shell{position:relative;display:grid;min-width:0;min-height:0;place-items:center;overflow:hidden;border-radius:16px;background:radial-gradient(circle at 50% 38%,#ffffffdb,#e8edf8ad 68%),#edf1f8}.editor-canvas{max-width:100%;max-height:100%;border-radius:10px;box-shadow:0 24px 64px #27335b33;cursor:grab;touch-action:none}.editor-canvas:active{cursor:grabbing}.editor-tool-column{display:grid;min-height:0;align-content:start;gap:10px;overflow:auto;padding:2px}.editor-tools{display:grid;align-content:start;gap:10px}.tool-section{display:grid;gap:11px;padding:13px;border:1px solid rgba(255,255,255,.76);border-radius:15px;background:#ffffff8c}.tool-section label{display:grid;gap:6px;color:var(--muted);font-size:11px}.crop-control__row{display:grid;grid-template-columns:minmax(0,1fr) 48px;align-items:center;gap:8px}.crop-control input[type=range]{width:100%;min-height:30px}.crop-control output{color:#60709a;font-family:var(--font-data);font-size:11px;text-align:right}.rotate-actions,.tool-action-row{display:flex;gap:7px}.rotate-actions button,.tool-action-row button{flex:1;min-width:0;padding:6px;font-size:11px}.layer-head,.layer-grid{display:grid;gap:8px}.layer-head{grid-template-columns:minmax(0,1fr) auto}.layer-head input,.layer-grid input{min-width:0;padding:7px 9px}.layer-head__actions{display:flex;gap:6px}.layer-head__actions button{min-height:42px;padding-inline:10px}.text-layer{display:grid;gap:9px}.layer-grid{grid-template-columns:1fr 1fr}.toggle-button.is-on{border-color:#86c9ff9e;background:#e7f2ffcc;color:#5268a4}.empty-note{margin:0;color:var(--muted);font-size:12px;line-height:1.6}.workflow-dock{position:relative;z-index:12;display:grid;grid-template-columns:minmax(0,1fr);width:min(100%,420px);min-height:66px;justify-self:center;gap:6px;padding:7px;border:1px solid rgba(255,255,255,.78);border-radius:24px;background:#f7faffc2;box-shadow:0 16px 44px #3a586c26,inset 0 1px #ffffffe0;-webkit-backdrop-filter:blur(20px) saturate(1.12);backdrop-filter:blur(20px) saturate(1.12)}.dock-current-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.workflow-action-region{display:grid;min-width:0;gap:6px}.editor-skill-dock{display:none}.workflow-dock>button,.dock-current-actions>button,.editor-skill-dock>button{position:relative;display:grid;min-width:0;min-height:52px;grid-template-columns:auto auto;align-content:center;justify-content:center;align-items:center;gap:3px 7px;overflow:hidden;padding:6px 10px;border-color:transparent;border-radius:18px;background:transparent;box-shadow:none;color:#66738f;font-size:12px;font-weight:690}.workflow-dock>button svg,.dock-current-actions>button svg,.editor-skill-dock>button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.workflow-dock>button.is-active,.dock-current-actions>button.is-active,.editor-skill-dock>button.is-active{background:#e8f1ffc7;color:#5268a4}.dock-current-actions .danger-action{color:#b84c63}.workflow-dock [data-dock-action=primary]{color:#fff;background:linear-gradient(130deg,#a4d9f7,#74b9e5 58%,#a9cedf);box-shadow:inset 0 1px #ffffffb8,inset 0 -8px 18px #316c9121,0 10px 25px #3e74973b;text-shadow:0 1px 8px rgba(43,84,112,.2);animation:dock-primary-breathe var(--breath) ease-in-out infinite}.workflow-dock [data-dock-action=primary]:disabled{opacity:1}.workflow-dock [data-dock-action=primary] small{grid-column:1 / -1;color:#ffffffc7;font-family:var(--font-data);font-size:9px;line-height:1}.workflow-dock .buildfx--dock{width:100%;min-width:0;min-height:55px;padding-inline:18px;border-radius:18px}.workflow-dock .buildfx--dock .buildfx__label{font-size:14px;letter-spacing:.04em}.workflow-dock--processing{display:flex;align-items:center;gap:12px;padding:12px 16px}.workflow-progress{position:relative;width:54px;height:5px;overflow:hidden;border-radius:999px;background:#6675a01f}.workflow-progress i{position:absolute;inset:0;background:linear-gradient(90deg,var(--ice),var(--glacier));transform:scaleX(max(.12,calc(var(--progress) / 100)));transform-origin:left}.workflow-dock--processing strong{font-size:13px}.toast{position:fixed;left:50%;bottom:calc(92px + env(safe-area-inset-bottom,0px));z-index:100;max-width:min(88vw,440px);padding:10px 14px;border:1px solid rgba(255,255,255,.72);border-radius:999px;background:#20304adb;box-shadow:0 14px 34px #20304a38;color:#fff;font-size:13px;opacity:0;pointer-events:none;transform:translate(-50%,12px) scale(.96);transition:opacity var(--instant),transform var(--instant) var(--ease-out);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.toast__action{min-height:28px;margin-left:10px;padding:2px 9px;border-color:#ffffff57;background:#ffffff24;color:#fff;font-size:12px;font-weight:720}.toast.is-visible{opacity:1;transform:translate(-50%) scale(1)}@keyframes ambient-drift-a{to{transform:translate3d(12vw,8vh,0) scale(1.08)}}@keyframes ambient-drift-b{to{transform:translate3d(-10vw,10vh,0) scale(.94)}}@keyframes ambient-drift-c{to{transform:translate3d(-6vw,-12vh,0) scale(1.12)}}@keyframes photo-enter{0%{opacity:0;transform:translateY(18px) scale(.88)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes dock-primary-breathe{0%,to{filter:brightness(1);transform:scale(.992)}50%{filter:brightness(1.055);transform:translateY(-1px) scale(1.012)}}@keyframes processing-pulse{0%,to{opacity:.55;transform:scale(.9)}50%{opacity:1;transform:scale(1.14)}}@media(min-width:761px){.workspace-tools-column .workflow-dock{width:100%;min-width:0;justify-self:stretch}.workflow-dock{min-width:400px;grid-template-columns:minmax(0,1fr)}.dock-current-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.workflow-dock [data-action=save-all]{grid-column:1 / -1;width:100%}.workflow-action-region{grid-column:1 / -1}.workflow-dock [data-mobile-panel],.editor-skill-dock{display:none}}@media(max-width:1050px)and (min-width:761px){.workspace-grid{grid-template-columns:190px minmax(0,1fr) 238px}.tool-panel{padding:14px}.template-list{grid-template-columns:1fr}.unified-editor{grid-template-columns:minmax(0,1fr) 270px}}@media(max-width:760px){html,body{scrollbar-width:none}body::-webkit-scrollbar,.tool-panel::-webkit-scrollbar,.editor-tools::-webkit-scrollbar{display:none}body{overflow:auto}.ambient-field i{width:105vw;opacity:.25;filter:blur(20px)}.flow-shell{padding:22px 16px calc(30px + env(safe-area-inset-bottom,0px))}.brand-mark{top:16px;left:16px}.brand-mark .brand-logo{gap:6px}.brand-mark .brand-logo__icon{width:42px}.brand-mark .brand-logo__wordmark{width:106px}.upload-screen{min-height:calc(100dvh - 52px - env(safe-area-inset-bottom,0px))}.confirm-screen{min-height:calc(100dvh - 60px - env(safe-area-inset-bottom,0px));align-content:center;gap:22px}.confirm-head h1{font-size:clamp(38px,13vw,58px)}.confirm-head p{max-width:300px;font-size:12px}.upload-photo-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));max-height:none;justify-items:center;gap:7px;overflow:visible;padding:4px}.upload-photo-strip--single{grid-template-columns:repeat(2,minmax(48px,64px));justify-content:center}.upload-photo-thumb,.upload-photo-add{width:clamp(48px,16vw,64px);height:clamp(48px,16vw,64px);border-radius:16px}.upload-photo-thumb__delete{top:3px;right:3px;width:23px;min-height:23px;font-size:14px}.build-panel{min-height:82px;transform:scale(.9)}.workspace-shell{display:block;height:auto;min-height:100dvh;overflow:visible;padding:14px 12px calc(100px + env(safe-area-inset-bottom,0px))}.workspace-head{grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto;min-height:60px;gap:6px;padding:0 4px 12px}.workspace-brand{grid-column:1;grid-row:1}.workspace-brand .brand-logo{gap:4px}.workspace-brand .brand-logo__icon{width:34px}.workspace-brand .brand-logo__wordmark{width:76px}.workspace-summary{grid-column:2;grid-row:1;overflow:hidden;text-overflow:ellipsis}.workspace-head h1{font-size:clamp(16px,4.8vw,20px)}.back-button{min-width:44px;padding:8px}.editor-return-button{grid-column:3;grid-row:1;align-self:center;justify-self:end}.back-button span{display:none}.workspace-grid{display:block;min-height:0}.workspace-tools-column{display:contents}.workspace-stage{min-height:calc(100dvh - 190px - env(safe-area-inset-bottom,0px));overflow:visible;border-radius:22px;-webkit-backdrop-filter:none;backdrop-filter:none}.wall-view{height:auto;overflow:visible}.product-wall{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:9px}.product-card{padding:7px;border-radius:16px}.product-card:hover{transform:none}.product-drop-zone{min-height:43px;padding:3px 1px}.thumb-row{min-height:38px;gap:4px}.thumb,.product-upload{width:clamp(32px,10vw,40px);height:clamp(32px,10vw,40px);min-height:clamp(32px,10vw,40px);border-radius:8px}.tool-panel{position:fixed;left:10px;right:10px;bottom:calc(94px + env(safe-area-inset-bottom,0px));z-index:40;display:block;max-height:min(calc(100dvh - 190px),640px);padding:18px;border-radius:24px;opacity:0;pointer-events:none;transform:translateY(calc(100% + 120px));transition:transform var(--transition) var(--ease-out),opacity var(--instant)}.tool-panel.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.template-panel{display:flex;flex-direction:column;overflow:hidden}.template-panel__head{z-index:2;display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;padding-bottom:4px;background:transparent}.template-panel__head .apply-all-action{min-height:38px;padding:7px 10px;white-space:nowrap}.template-list{display:flex;min-width:0;flex-wrap:nowrap;gap:10px;overflow-x:auto;overflow-y:hidden;padding:2px 2px 8px;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none}.template-list::-webkit-scrollbar{display:none}.template-card{width:clamp(98px,30vw,126px);flex:0 0 clamp(98px,30vw,126px);padding:6px;scroll-snap-align:start}.template-card__name{font-size:9px}.workflow-dock{position:fixed;left:10px;right:10px;bottom:calc(18px + env(safe-area-inset-bottom,0px));box-sizing:border-box;width:auto;height:70px;justify-self:stretch;min-height:70px;max-height:70px;border-radius:24px}.workflow-dock--wall{grid-template-columns:1fr minmax(138px,1.25fr) 1fr}.workflow-dock--wall .dock-current-actions,.workflow-dock--wall .editor-skill-dock{display:none}.workflow-dock--editor{grid-template-columns:minmax(0,1fr)}.workflow-dock--editor .dock-current-actions,.workflow-dock--editor [data-action=save-all],.workflow-dock--editor>[data-mobile-panel]{display:none}.workflow-dock--editor .workflow-action-region{display:none}.workflow-dock--editor .editor-skill-dock,.workflow-dock--editor.editor-skill-dock{display:grid;height:100%;min-height:0;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;gap:3px}.workflow-dock--editor .editor-skill-dock>button{height:100%;min-height:0}.workflow-dock>button,.editor-skill-dock>button{min-height:55px;grid-template-columns:1fr;justify-items:center;gap:2px;padding:5px 6px;font-size:10px}.editor-skill-dock>button{padding-inline:3px}.workflow-dock .buildfx--dock{min-width:0;padding-inline:8px}.workflow-dock .buildfx--dock .buildfx__label{font-size:12px;letter-spacing:0}.workflow-dock [data-dock-action=primary]{grid-template-columns:minmax(0,1fr)}.workflow-dock [data-dock-action=primary] small{display:none}.unified-editor{display:block;height:auto;min-height:calc(100dvh - 210px);padding:10px}.editor-canvas-shell{min-height:min(62dvh,540px)}.editor-canvas{max-height:min(60dvh,520px)}.editor-tool-column{display:contents}.editor-tools{position:fixed;left:10px;right:10px;bottom:calc(94px + env(safe-area-inset-bottom,0px));z-index:38;display:block;max-height:min(52dvh,480px);overflow:auto;padding:10px;border:1px solid rgba(255,255,255,.78);border-radius:22px;background:#f7fafff0;box-shadow:var(--shadow-float);opacity:0;pointer-events:none;transform:translateY(calc(100% + 110px));transition:transform var(--transition) var(--ease-out),opacity var(--instant);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.editor-tools.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.editor-tools--zoom [data-editor-section]:not([data-editor-section=zoom]),.editor-tools--rotation [data-editor-section]:not([data-editor-section=rotation]),.editor-tools--text [data-editor-section]:not([data-editor-section=text]){display:none}.toast{bottom:calc(92px + env(safe-area-inset-bottom,0px))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}.ambient-field i,.workflow-dock [data-dock-action=primary]{animation:none!important}}.flow-shell--upload{background:radial-gradient(circle at 32% 20%,rgba(240,212,233,.5),transparent 38%),radial-gradient(circle at 68% 74%,rgba(176,168,217,.38),transparent 42%),radial-gradient(circle at 50% 46%,rgba(191,178,255,.3),transparent 31%),linear-gradient(135deg,#f8faff,#f3f0fb 48%,#edf6fb)}.upload-reference-main{--perspective: 800px;position:fixed;inset:0;z-index:2;display:grid;grid-template-columns:repeat(5,1fr);transform-style:preserve-3d}.upload-reference-main:before,.upload-reference-main:after{position:absolute;inset:0;margin:auto;content:"";filter:blur(70px);opacity:.5;pointer-events:none}.upload-reference-main:before{width:min(92vw,600px);height:min(78vh,500px);background:radial-gradient(circle,#b0a8d9,#a2a1bf00 70%);transform:translate3d(90px,80px,-120px)}.upload-reference-main:after{width:min(96vw,600px);height:min(64vh,380px);background:radial-gradient(circle,#f0d4e9,#ae98c700 70%);transform:translate3d(-40px,-110px,-100px)}.upload-reference-main__wrap{position:absolute;inset:0;z-index:9;display:flex;align-items:center;justify-content:center;pointer-events:none;transform-style:preserve-3d}.upload-reference-main__card{position:relative;display:flex;width:100vw;height:100dvh;align-items:center;justify-content:center;pointer-events:none;transform-style:preserve-3d;transition:transform .6s ease}.upload-reference-main__button{position:relative;z-index:10;display:grid;width:123px;height:123px;flex:0 0 auto;place-items:center;border-radius:50%;pointer-events:auto;cursor:pointer;transform-style:preserve-3d;-webkit-tap-highlight-color:transparent}.upload-reference-main__button:after{position:absolute;inset:-10px;z-index:0;border:1px solid rgba(255,255,255,.72);border-radius:50%;box-shadow:0 0 24px #846fda3d;content:"";opacity:0;pointer-events:none;transform:scale(.9);transition:opacity .52s ease,transform .6s var(--ease-out),box-shadow .52s ease}.upload-reference-main__button:hover:after{opacity:.42;transform:scale(1)}.upload-reference-main__file{position:absolute;inset:0;z-index:20;width:100%;height:100%;min-height:0;border:0;border-radius:50%;opacity:0;pointer-events:auto;cursor:pointer}.upload-reference-main__wave{position:absolute;left:50%;top:50%;width:224px;height:224px;margin:-112px 0 0 -112px;pointer-events:none}.upload-reference-main__wave:before,.upload-reference-main__wave:after{position:absolute;inset:0;border:2px solid white;border-radius:50%;box-shadow:0 0 30px #6a4cac80;content:"";filter:blur(2px);opacity:0;animation:upload-reference-wave 4.2s linear infinite}.upload-reference-main__wave:after{animation-delay:.75s}.upload-reference-main__circle-1{--z: 0px;position:absolute;left:50%;top:50%;z-index:1;display:flex;width:224px;height:224px;margin:-112px 0 0 -112px;align-items:center;justify-content:center;border-radius:50%;background:#b3b3b31a;box-shadow:inset 0 0 3px #fff,inset 60px 40px 30px -40px #6a4cac26,20px 20px 70px -5px #96a6c5,-50px -50px 70px 20px #ffffffb3,inset 0 0 30px #fff;pointer-events:none;transform-style:preserve-3d;animation:upload-reference-circle-1 4.2s ease-in-out infinite .3s;transition:scale .6s var(--ease-out),filter .6s ease}.upload-reference-main__circle-1:before,.upload-reference-main__circle-1:after{position:absolute;width:30%;height:30%;border-radius:50%;content:"";filter:blur(40px)}.upload-reference-main__circle-1:before{top:30%;right:30%;background:#ff0073}.upload-reference-main__circle-1:after{bottom:10%;left:30%;background:#00baff}.upload-reference-main__lines{display:grid;width:463px;height:462px;flex:0 0 463px;place-items:center;animation:upload-reference-rotate 30s linear infinite}.upload-reference-main__lines svg{width:463px;height:462px;overflow:visible;stroke:#fff;stroke-width:2px;transform:scale(.41);animation:upload-reference-lines 3s ease-in-out infinite}.upload-reference-main__lines path{stroke-dasharray:100;stroke-dashoffset:10;animation:upload-reference-line 3s ease-in-out calc(var(--i) * -1s) infinite}.upload-reference-main__circle-2{--z: 10px;position:absolute;inset:0;z-index:9;width:123px;height:123px;border-radius:50%;background:#fff;pointer-events:none;transform-style:preserve-3d;animation:upload-reference-circle-2 4.2s ease-in-out infinite;transition:scale .6s var(--ease-out),filter .6s ease}.upload-reference-main__circle-2:before,.upload-reference-main__circle-2:after{position:absolute;z-index:1;border-radius:50%;content:"";filter:blur(30px)}.upload-reference-main__circle-2:before{top:20%;right:20%;width:30%;height:30%;background:#ff0073}.upload-reference-main__circle-2:after{bottom:10%;left:40%;width:20%;height:20%;background:#0bf}.upload-reference-main__bg{position:absolute;inset:0;border-radius:50%;background:#9292d8;box-shadow:inset 0 0 25px 10px #fffc,0 0 10px 10px #ffffffe6;transition:filter .3s ease}.upload-reference-main__content{position:absolute;inset:0;z-index:10;display:grid;place-items:center;color:#fff;pointer-events:none;transform:translateZ(50px)}.upload-reference-main__content-plus,.upload-reference-main__content-label{grid-area:1 / 1;filter:drop-shadow(0 3px 13px rgba(77,67,152,.2));will-change:opacity,filter,transform}.upload-reference-main__content-plus{width:64px;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;animation:upload-reference-content-plus 9s ease-in-out infinite}.upload-reference-main__content-label{width:max-content;font-size:15px;font-weight:720;letter-spacing:.02em;animation:upload-reference-content-label 9s ease-in-out infinite}.upload-reference-main.is-upload-pressed .upload-reference-main__circle-1{scale:.94;filter:brightness(1.08) saturate(1.1);transition-duration:.32s}.upload-reference-main.is-upload-pressed .upload-reference-main__circle-2{scale:.88;filter:brightness(1.22) saturate(1.12);transition-duration:.32s}.upload-reference-main.is-upload-pressed .upload-reference-main__button:after{box-shadow:0 0 34px #846fda6b;opacity:.92;transform:scale(1.22);transition-duration:.32s}@keyframes upload-reference-rotate{to{transform:rotate(360deg)}}@keyframes upload-reference-lines{0%,36%,to{transform:scale(.41)}15%{transform:scale(.37)}50%{transform:scale(.38)}65%{transform:scale(.43)}80%{transform:scale(.39)}}@keyframes upload-reference-line{0%,to{stroke-dashoffset:10}50%{stroke-dashoffset:45}}@keyframes upload-reference-circle-1{0%,60%,to{transform:scale(.97) translateZ(calc(20px + var(--z)))}15%,45%,85%{transform:scale(1) translateZ(calc(30px + var(--z)))}30%{transform:scale(.98) translateZ(calc(20px + var(--z)))}}@keyframes upload-reference-circle-2{0%,to{transform:scale(1) translateZ(calc(20px + var(--z)))}15%,85%{transform:scale(1.03) translateZ(calc(30px + var(--z)))}30%{transform:scale(.98) translateZ(calc(20px + var(--z)))}45%{transform:scale(1.04) translateZ(calc(30px + var(--z)))}60%{transform:scale(.97) translateZ(calc(20px + var(--z)))}}@keyframes upload-reference-wave{0%{opacity:0;transform:scale(1)}6%{opacity:.82}55%{opacity:0;transform:scale(7)}to{opacity:0;transform:scale(7)}}@keyframes upload-reference-content-plus{0%,27%,78%,to{opacity:1;filter:blur(0);transform:translateY(0) scale(1)}36%,69%{opacity:0;filter:blur(5px);transform:translateY(-14px) scale(.82)}}@keyframes upload-reference-content-label{0%,27%,78%,to{opacity:0;filter:blur(5px);transform:translateY(14px) scale(.92)}36%,69%{opacity:1;filter:blur(0);transform:translateY(0) scale(1)}}@media(max-width:760px){.upload-reference-main__circle-1,.upload-reference-main__wave{width:204px;height:204px;margin:-102px 0 0 -102px}.upload-reference-main__button,.upload-reference-main__circle-2{width:112px;height:112px}.upload-reference-main__content-plus{width:58px}.upload-reference-main__content-label{font-size:14px}}@media(prefers-reduced-motion:reduce){.upload-reference-main__circle-1,.upload-reference-main__circle-2,.upload-reference-main__wave:before,.upload-reference-main__wave:after{animation-duration:4.2s!important;animation-iteration-count:infinite!important}.upload-reference-main__lines{animation-duration:30s!important;animation-iteration-count:infinite!important}.upload-reference-main__lines svg,.upload-reference-main__lines path{animation-duration:3s!important;animation-iteration-count:infinite!important}.upload-reference-main__content-plus,.upload-reference-main__content-label{animation-duration:9s!important;animation-iteration-count:infinite!important}.upload-reference-main__circle-1,.upload-reference-main__circle-2{transition-duration:.6s!important}.upload-reference-main__bg{transition-duration:.3s!important}.upload-reference-main__button:after{transition-duration:.52s,.6s,.52s!important}.upload-reference-main.is-upload-pressed .upload-reference-main__circle-1,.upload-reference-main.is-upload-pressed .upload-reference-main__circle-2{transition-duration:.32s!important}.upload-reference-main.is-upload-pressed .upload-reference-main__button:after{transition-duration:.32s!important}}.upload-orbit--compact .upload-orbit__compact-plus{z-index:2;display:grid;width:40px;height:40px;place-items:center;color:#7277a4;pointer-events:none;animation:none;transition:color .22s ease,transform .22s ease}.upload-orbit--compact .upload-orbit__compact-plus svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}.upload-orbit--compact .upload-orbit__hit:hover .upload-orbit__compact-plus,.upload-orbit--compact .upload-orbit__hit:has(input:focus-visible) .upload-orbit__compact-plus{color:#62679b;transform:scale(1.06)}.build-sparkle{--rest-top: #383540;--rest-bottom: #292730;--upload-core: #c0aaff;--upload-warm: #cb9eff;--upload-cool: #b2bdff;--upload-halo-warm: #f7dcff;--upload-halo-cool: #c2e1ff;--sparkle-radius: 999px;position:relative;isolation:isolate;display:inline-grid;min-width:218px;min-height:62px;grid-template-columns:auto auto;align-items:center;justify-content:center;gap:9px;overflow:visible;padding:0 34px;border:0;border-radius:var(--sparkle-radius);background:transparent;color:#aaa6b1;cursor:pointer;filter:saturate(1);transform:scale(.992);transition:color .8s cubic-bezier(.22,.8,.25,1),transform .56s cubic-bezier(.22,.8,.25,1),filter .8s ease,box-shadow .8s ease;-webkit-tap-highlight-color:transparent}.build-sparkle:before,.build-sparkle:after{position:absolute;border-radius:inherit;content:"";pointer-events:none}.build-sparkle:before{inset:-1px;z-index:-1;border:1px solid transparent;box-shadow:0 10px 25px #2824321a;opacity:1;transition:border-color .18s ease,box-shadow .26s cubic-bezier(.22,.8,.25,1),transform .68s cubic-bezier(.22,.8,.25,1)}.build-sparkle:after{inset:-28px -42px;z-index:-3;background:radial-gradient(ellipse at 50% 25%,color-mix(in srgb,var(--upload-halo-warm) 72%,transparent),transparent 58%),radial-gradient(ellipse at 50% 75%,color-mix(in srgb,var(--upload-halo-cool) 68%,transparent),transparent 62%);filter:blur(18px);opacity:0;transition:opacity .8s cubic-bezier(.22,.8,.25,1),transform .9s cubic-bezier(.22,.8,.25,1)}.build-sparkle:is(:hover,:focus-visible){color:#fff;filter:brightness(1.03) saturate(1.04);transform:translateY(-2px) scale(1.045)}.build-sparkle:is(:hover,:focus-visible):before{border-color:#fffffff0;box-shadow:0 0 0 4px #ffffff61,0 13px 34px #b2d5ff6b;transform:scale(1.035)}.build-sparkle:is(:hover,:focus-visible):after{opacity:1;transform:scale(1.12)}.build-sparkle:focus-visible{outline:3px solid rgba(131,125,159,.3);outline-offset:7px}.build-sparkle:active{color:#fff;filter:brightness(1.05) saturate(1.05);transform:scale(.97);transition-duration:.16s}.build-sparkle:active:before{border-color:#fffffff0;box-shadow:0 0 0 4px #ffffff61,0 10px 30px #b2d5ff66}.build-sparkle:active:after{opacity:1}.build-sparkle__backdrop{position:absolute;inset:0;z-index:0;overflow:hidden;border-radius:inherit;background:linear-gradient(145deg,var(--rest-top),var(--rest-bottom));box-shadow:inset 0 1px 1px #ffffff1a,inset 0 -8px 18px #0000002e,0 10px 25px #28243233;pointer-events:none}.build-sparkle__backdrop:before{position:absolute;content:"";pointer-events:none}.build-sparkle__backdrop:before{inset:0;background:radial-gradient(ellipse at 50% -8%,rgba(255,255,255,.7),transparent 38%),radial-gradient(ellipse at 50% 8%,var(--upload-warm),transparent 55%),radial-gradient(ellipse at 50% 108%,var(--upload-cool),transparent 58%),linear-gradient(180deg,var(--upload-warm) 0%,var(--upload-core) 50%,var(--upload-cool) 100%);box-shadow:inset 7px 8px 18px #fff9,inset -8px -10px 22px #7b69c417,0 -8px 28px #f7dcff99,0 13px 34px #b2d5ff85;opacity:0;transition:opacity .22s ease-out}.build-sparkle:is(:hover,:focus-visible) .build-sparkle__backdrop:before,.build-sparkle:active .build-sparkle__backdrop:before{opacity:1}.build-sparkle__icon,.build-sparkle__label{position:relative;z-index:4;pointer-events:none}.build-sparkle__icon{width:23px;overflow:visible;color:inherit;filter:drop-shadow(0 2px 8px rgba(55,49,82,.28));transform:translateY(-1px)}.build-sparkle__icon path{fill:currentColor;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;transform-box:fill-box;transform-origin:center}.build-sparkle:is(:hover,:focus-visible) .build-sparkle__icon path,.build-sparkle:active .build-sparkle__icon path{animation:build-sparkle-bounce .76s ease both}.build-sparkle__icon path:nth-of-type(1){--sparkle-scale: .58;animation-delay:80ms}.build-sparkle__icon path:nth-of-type(2){--sparkle-scale: 1.48;animation-delay:.16s}.build-sparkle__icon path:nth-of-type(3){--sparkle-scale: 2.1;animation-delay:.26s}.build-sparkle__label{color:inherit;font-family:var(--font-display, ui-rounded, "PingFang SC", sans-serif);font-size:17px;font-weight:760;letter-spacing:.08em;text-shadow:0 2px 12px rgba(48,44,68,.32);transition:color .8s cubic-bezier(.22,.8,.25,1)}.build-sparkle__particles{position:absolute;inset:-50px -64px;z-index:5;overflow:visible;opacity:.12;pointer-events:none;transition:opacity .8s cubic-bezier(.22,.8,.25,1);-webkit-mask:radial-gradient(ellipse,#000 18%,transparent 72%);mask:radial-gradient(ellipse,#000 18%,transparent 72%)}.build-sparkle__particles i{position:absolute;left:var(--x);top:var(--y);width:var(--size);aspect-ratio:1;background:#fff;clip-path:polygon(50% 0,59% 39%,100% 50%,59% 61%,50% 100%,41% 61%,0 50%,41% 39%);filter:drop-shadow(0 0 5px rgba(255,255,255,.94));opacity:0;animation:build-sparkle-float 3.2s ease-out var(--delay) infinite both;animation-play-state:paused}.build-sparkle__particles i:nth-child(3n+1){background:color-mix(in srgb,var(--upload-warm) 28%,white)}.build-sparkle__particles i:nth-child(3n+2){background:color-mix(in srgb,var(--upload-cool) 28%,white)}.build-sparkle:is(:hover,:focus-visible) .build-sparkle__particles,.build-sparkle:active .build-sparkle__particles{opacity:.92}.build-sparkle:is(:hover,:focus-visible) .build-sparkle__particles i,.build-sparkle:active .build-sparkle__particles i{animation-play-state:running}@keyframes build-sparkle-bounce{0%,to{transform:scale(1)}45%,68%{transform:scale(var(--sparkle-scale))}}@keyframes build-sparkle-float{0%,14%{opacity:0;transform:translateZ(0) rotate(0) scale(.35)}32%{opacity:.96}82%,to{opacity:0;transform:translate3d(var(--tx),var(--ty),0) rotate(180deg) scale(1.25)}}.buildfx{--build-radius: 20px;position:relative;isolation:isolate;display:grid;min-width:218px;min-height:62px;place-items:center;overflow:visible;padding:0 34px;border:1px solid rgba(255,255,255,.84);border-radius:var(--build-radius);background:radial-gradient(ellipse at 50% -8%,rgba(255,255,255,.7),transparent 38%),radial-gradient(ellipse at 50% 8%,#cb9eff,transparent 55%),radial-gradient(ellipse at 50% 108%,#b2bdff,transparent 58%),linear-gradient(180deg,#cb9eff,#c0aaff,#b2bdff);color:#fff;box-shadow:inset 7px 8px 18px #fff9,inset -8px -10px 22px #7b69c417,0 -8px 28px #f7dcff73,0 13px 34px #b2d5ff66;text-shadow:0 2px 10px rgba(76,62,135,.24);animation:buildfx-breathe 4.2s ease-in-out infinite;transition:transform .18s cubic-bezier(.22,.8,.25,1),filter .18s ease,box-shadow .18s ease}.buildfx:hover{border-color:#fffffff0;filter:brightness(1.035) saturate(1.04);box-shadow:inset 7px 8px 20px #ffffffa8,inset -8px -10px 22px #7b69c414,0 -10px 32px #f7dcff8f,0 16px 40px #b2d5ff80}.buildfx:active{animation-play-state:paused;transform:scale(.955)}.buildfx:disabled{cursor:progress;opacity:1}.buildfx--dock{width:100%;min-width:0}.buildfx__halo{position:absolute;inset:-22px -34px;z-index:-2;border-radius:50%;background:radial-gradient(ellipse at 50% 25%,rgba(247,220,255,.58),transparent 58%),radial-gradient(ellipse at 50% 75%,rgba(194,225,255,.56),transparent 64%);opacity:.74;filter:blur(14px);animation:buildfx-halo 4.2s ease-in-out infinite;pointer-events:none}.buildfx__glass{position:absolute;inset:2px;z-index:1;overflow:hidden;border-radius:calc(var(--build-radius) - 2px);background:linear-gradient(165deg,rgba(255,255,255,.36),transparent 38%),linear-gradient(350deg,rgba(178,189,255,.12),transparent 42%);box-shadow:inset 0 1px #ffffffd1,inset 0 -10px 18px #5c4e9c14;pointer-events:none}.buildfx__glass:before,.buildfx__glass:after{position:absolute;top:-45%;bottom:-45%;width:46%;border-radius:50%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.23),transparent);content:"";transform:rotate(18deg)}.buildfx__glass:before{left:-6%}.buildfx__glass:after{right:-14%;opacity:.42}.buildfx__label{position:relative;z-index:5;font-family:var(--font-display, ui-rounded, "PingFang SC", sans-serif);font-size:17px;font-weight:760;letter-spacing:.08em}.buildfx__particles{position:absolute;inset:-32px -44px;z-index:6;overflow:visible;pointer-events:none}.buildfx__particles i{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:50%;background:#fff;box-shadow:0 0 6px #fffffff5,0 0 12px #cb9effd1,0 0 18px #b2bdff85;opacity:0;animation:buildfx-particle 3.1s ease-out var(--delay) infinite}.buildfx__progress{position:absolute;right:14px;bottom:6px;left:14px;z-index:7;height:2px;overflow:hidden;border-radius:999px;background:#ffffffd1;opacity:calc(var(--action-progress) / 100);transform:scaleX(calc(var(--action-progress) / 100));transform-origin:left;transition:transform .32s ease,opacity .18s ease}@keyframes buildfx-breathe{0%,to{transform:scale(.988)}50%{transform:translateY(-2px) scale(1.018)}}@keyframes buildfx-halo{0%,to{opacity:.55;transform:scale(.92)}50%{opacity:.96;transform:scale(1.08)}}@keyframes buildfx-particle{0%,54%{opacity:0;transform:translateZ(0) scale(.4)}64%{opacity:.92}86%,to{opacity:0;transform:translate3d(var(--tx),var(--ty),0) scale(1.2)}}@media(max-width:760px){.build-sparkle{min-width:204px;min-height:58px;padding-inline:28px}.build-sparkle__particles i:nth-child(n+13){display:none}.buildfx{min-width:204px;min-height:58px}.buildfx__particles i:nth-child(n+7){display:none}}.workflow-export-all .buildfx__label{width:100%;grid-column:1 / -1;justify-self:stretch;font-size:17px;letter-spacing:.05em;text-align:center}@media(hover:none){.build-sparkle:before{opacity:.68}.build-sparkle:after{opacity:.08}.build-sparkle__particles{opacity:.5}.build-sparkle__particles i{animation-play-state:running}}@media(prefers-reduced-motion:reduce){.buildfx,.buildfx__halo,.buildfx__particles i{animation:none}.buildfx__particles{display:none}.build-sparkle,.build-sparkle:before,.build-sparkle:after,.build-sparkle__label,.build-sparkle__particles{transition-duration:.8s!important}.build-sparkle__backdrop:before{transition-duration:.22s!important}.build-sparkle:active{transition-duration:.16s!important}.build-sparkle:is(:hover,:focus-visible) .build-sparkle__icon path{animation:build-sparkle-bounce .9s ease both!important}.build-sparkle__particles i{animation-duration:4.2s!important;animation-iteration-count:infinite!important}}
