:root{color:#101828;background:#f5f7fa;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--ink: #101828;--muted: #667085;--line: #e1e7f0;--line-strong: #cbd5e1;--panel: #ffffff;--soft: #f8fafc;--blue: #1d5fd8;--blue-weak: #eaf1ff;--green: #0f9f6e;--orange: #b25a1a;--red: #e25555;--shadow: 0 18px 44px rgba(31, 43, 68, .08)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:linear-gradient(180deg,#ffffffe6,#f4f6faf0),#f5f7fa}button,input,select{font:inherit}button,.button-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:0;border-radius:8px;padding:0 14px;color:#fff;background:var(--blue);text-decoration:none;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}button:hover:not(:disabled),.button-link:hover{transform:translateY(-1px);box-shadow:0 12px 24px #2457d62e}button:disabled{cursor:not-allowed;opacity:.46}input,select{width:100%;min-height:42px;border:1px solid var(--line);border-radius:8px;padding:0 12px;color:var(--ink);background:#fff}input[type=file]{padding:9px 10px}input:focus,select:focus{border-color:var(--blue);outline:3px solid rgba(36,87,214,.12)}label{display:grid;gap:8px;color:#536073;font-size:13px;font-weight:650}.shell{width:min(1540px,100%);min-height:100vh;margin:0 auto;padding:20px}.app-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:-20px -20px 18px;padding:14px 20px;border-bottom:1px solid rgba(221,227,236,.88);background:#f4f6fae0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand,.header-actions,.account-chip,.hero-status,.section-label,.inline-actions,.submit-row,.task-actions{display:flex;align-items:center}.brand{gap:12px;min-width:0}.brand-mark{display:grid;flex:0 0 auto;width:38px;height:38px;place-items:center;border-radius:8px;color:#fff;background:linear-gradient(135deg,#2457d6,#173b8f);font-weight:900}.brand strong,.account-chip strong{display:block;color:var(--ink)}.brand small,.account-chip span{display:block;margin-top:2px;color:var(--muted);font-size:12px}.header-actions{justify-content:flex-end;gap:12px}.header-actions a{color:#3f4d61;font-size:13px;font-weight:750;text-decoration:none}.account-chip{min-width:132px;justify-content:space-between;gap:12px;padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.account-button{min-height:0;color:var(--ink);box-shadow:none}.account-button:hover:not(:disabled){transform:none;border-color:#1d5fd861;box-shadow:0 8px 20px #1f2b4414}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:20px;background:#1018286b;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.login-modal{width:min(440px,100%);box-shadow:0 26px 80px #10182838}.login-stack{display:grid;gap:12px}.login-mode-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:4px;border-radius:999px;background:#eff3f8}.login-mode-switch button{min-height:38px;padding:0 12px;color:var(--muted);background:transparent;box-shadow:none;font-size:13px;font-weight:800}.login-mode-switch button:hover:not(:disabled){transform:none;box-shadow:none}.login-mode-switch button.active{color:var(--blue);background:#fff}.login-hint{margin:-2px 0 0;color:var(--muted);font-size:12px;line-height:1.6}.icon-close{width:34px;min-height:34px;padding:0;color:var(--muted);border:1px solid var(--line);background:#fff;font-size:22px;line-height:1}.hero-workspace{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);gap:18px;align-items:stretch;margin-bottom:18px}.hero-copy,.hero-visual,.panel{border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:var(--shadow)}.hero-copy{display:grid;align-content:center;gap:18px;min-height:292px;padding:28px}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.hero-primary{width:auto;min-width:164px}.eyebrow{margin:0;color:var(--blue);font-size:12px;font-weight:850;letter-spacing:0;text-transform:uppercase}h1,h2,.subtitle{margin:0}h1{max-width:760px;font-size:clamp(30px,3.2vw,48px);line-height:1.08}h2{display:flex;align-items:center;gap:8px;font-size:17px;line-height:1.25}.subtitle,.composer-head p{max-width:720px;color:var(--muted);font-size:15px;line-height:1.72}.hero-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:520px}.hero-metrics div{padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.hero-metrics span,.task>span{display:block;color:var(--muted);font-size:12px;font-weight:750}.hero-metrics strong{display:block;margin-top:6px;color:var(--ink);font-size:26px}.hero-visual{position:relative;overflow:hidden;min-height:292px}.hero-visual img,.results>img,.results>video,.visual-empty img,.style-card img,.preview-card img{display:block;width:100%;object-fit:cover}.hero-visual img{height:100%;min-height:292px}.hero-status{position:absolute;right:16px;bottom:16px;gap:8px;padding:9px 12px;border:1px solid rgba(255,255,255,.66);border-radius:8px;color:#172033;background:#ffffffdb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:13px;font-weight:800}.workspace{display:grid;grid-template-columns:316px minmax(470px,1fr) 360px;gap:18px;align-items:start}.side-stack,.composer,.panel{min-width:0}.side-stack{display:grid;gap:18px}.panel{display:grid;gap:16px;padding:16px}.account-summary{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.account-avatar{display:grid;width:44px;height:44px;flex:0 0 auto;place-items:center;border-radius:8px;color:var(--blue);background:var(--blue-weak);font-weight:900}.account-summary strong,.account-summary small{display:block}.account-summary small,.plan small{margin-top:4px;color:var(--muted);font-size:12px;font-weight:650}.benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.benefit-grid span{padding:9px 8px;border:1px solid var(--line);border-radius:8px;color:#294472;background:var(--blue-weak);font-size:12px;font-weight:800;text-align:center}.panel-title,.composer-head,.feature-row,.project-pill,.plan{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-title>span,.cost-badge,.section-label em{flex:0 0 auto;padding:4px 8px;border-radius:8px;color:#294472;background:var(--blue-weak);font-size:12px;font-weight:850}.full-button,.primary{width:100%}.notice{margin:0;padding:10px 12px;border:1px solid #d5e4f7;border-radius:8px;color:#264d85;background:#f0f6ff;font-size:13px;line-height:1.55}.compact-notice{max-height:112px;overflow:auto}.feature-list,.plan-list,.project-switcher,.task-list{display:grid;gap:10px}.record-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px;border-radius:999px;background:#eff3f8}.record-tabs button{min-height:34px;padding:0 8px;color:var(--muted);background:transparent;box-shadow:none;font-size:12px;font-weight:800}.record-tabs button:hover:not(:disabled){transform:none;box-shadow:none}.record-tabs button.selected{color:var(--blue);background:#fff}.feature-row{min-height:72px;border:1px solid var(--line);padding:10px;color:var(--ink);background:#fff;text-align:left}.feature-row:hover:not(:disabled){box-shadow:0 10px 22px #1f2b4414}.feature-row.selected{border-color:#2457d67a;background:linear-gradient(180deg,#fff,#f4f7ff);box-shadow:0 0 0 3px #2457d61c}.feature-mark{display:grid;flex:0 0 auto;width:38px;height:38px;place-items:center;border-radius:8px;color:#fff;background:#172033;font-size:13px;font-weight:900}.feature-row span:nth-child(2){min-width:0;flex:1 1 auto}.feature-row strong,.project-pill span,.plan span{display:block;min-width:0;overflow:hidden;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}.feature-row small{display:block;margin-top:4px;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.feature-row em{flex:0 0 auto;color:var(--blue);font-size:12px;font-style:normal;font-weight:850}.composer{gap:18px;padding:20px}.composer-head{align-items:flex-start}.composer-head>div{display:grid;gap:8px;min-width:0}.cost-badge{margin-top:2px}.project-bar{display:grid;grid-template-columns:minmax(0,1fr) 138px minmax(0,1fr);gap:12px;align-items:end;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.style-section,.plus-panel{display:grid;gap:12px}.section-label{gap:8px;color:#334155;font-size:13px;font-weight:850}.section-label em{margin-left:auto;font-style:normal}.style-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.style-card{display:grid;overflow:hidden;min-height:0;border:1px solid var(--line);padding:0;color:var(--ink);background:#fff}.style-card img{aspect-ratio:4 / 3}.style-card span{padding:9px 10px;color:var(--ink);font-size:12px;font-weight:850}.style-card.selected{border-color:var(--blue);box-shadow:0 0 0 3px #2457d61c}.style-card:hover:not(:disabled){box-shadow:0 10px 22px #1f2b4414}.upload-layout{display:grid;grid-template-columns:minmax(0,.94fr) minmax(260px,1.06fr);gap:12px}.upload-box{align-content:center;justify-items:center;min-height:220px;border:1px dashed var(--line-strong);border-radius:8px;padding:18px;color:var(--muted);background:#fbfcfe;text-align:center;cursor:pointer}.upload-box strong{max-width:100%;overflow:hidden;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}.upload-box input{width:1px;height:1px;min-height:0;opacity:0;pointer-events:none}.preview-card{position:relative;overflow:hidden;min-height:220px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.preview-card img,.empty{width:100%;height:100%;min-height:220px;aspect-ratio:16 / 10}.preview-card span{position:absolute;left:10px;top:10px;z-index:1;padding:5px 8px;border-radius:8px;color:#fff;background:#121c2db8;font-size:12px;font-weight:850}.results>video{border-radius:8px;background:#101828;aspect-ratio:16 / 10}.report-preview{overflow:auto;max-height:340px;border:1px solid var(--line);border-radius:8px;padding:14px;color:var(--ink);background:#f8fafc;font-size:12px;line-height:1.7;white-space:pre-wrap}.empty{display:grid;place-items:center;color:#7a8493}.plus-panel{padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.dimension-card{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fff}.section-label.compact{font-size:12px}.dimension-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.dimension-grid label{display:grid;gap:6px;color:#475569;font-size:12px;font-weight:850}.dimension-grid input{min-height:38px;border:1px solid var(--line);border-radius:8px;padding:0 10px;color:var(--ink);background:#fbfcfe;font-size:13px}.dimension-grid input:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px #2457d61c}.dimension-hint{margin:0;color:var(--muted);font-size:12px;line-height:1.6}.face-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.face-grid input{min-height:38px;font-size:12px}.primary{min-height:48px;background:linear-gradient(135deg,#2457d6,#173b8f);font-weight:850}.ghost-action{color:#334155;border:1px solid var(--line);background:#fff}.ghost-action.danger{color:#b42318;border-color:#f4b8b2;background:#fff7f6}.ghost-action:hover:not(:disabled){box-shadow:0 10px 22px #1f2b4414}.submit-row{gap:10px}.generation-feedback{display:flex;align-items:flex-start;gap:9px;margin:4px 0 0;border:1px solid #c9d9ef;border-radius:8px;padding:11px 12px;color:#294472;background:#f3f7fd;font-size:13px;font-weight:700;line-height:1.55}.generation-feedback svg{flex:0 0 auto;margin-top:1px}.generation-feedback.success{border-color:#b8dccb;color:#176447;background:#eff9f4}.generation-feedback.error{border-color:#efc1bd;color:#9f2d24;background:#fff5f4}.submit-row .primary{flex:1 1 auto}.submit-row .ghost-action{flex:0 0 auto}.generating-panel{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px 14px;overflow:hidden;padding:14px;border:1px solid rgba(36,87,214,.24);border-radius:8px;background:linear-gradient(90deg,#2457d614,#ffffffc7),#f6f9ff}.generating-panel:before{position:absolute;top:0;right:0;bottom:0;left:0;content:"";background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.78) 45%,transparent 58%);transform:translate(-100%);animation:scanline 1.6s ease-in-out infinite}.generating-orbit,.generating-copy,.generation-progress{position:relative;z-index:1}.generating-orbit{position:relative;display:grid;width:44px;height:44px;place-items:center;border-radius:8px;color:var(--blue);background:#fff;box-shadow:inset 0 0 0 1px #2457d629}.generating-orbit span{position:absolute;top:6px;right:6px;bottom:6px;left:6px;border:2px solid rgba(36,87,214,.18);border-top-color:var(--blue);border-radius:999px;animation:spin 1.2s linear infinite}.generating-copy{display:grid;align-content:center;gap:4px;min-width:0}.generating-copy strong{color:var(--ink);font-size:14px}.generating-copy span{overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.generation-progress{grid-column:1 / -1;overflow:hidden;height:7px;border-radius:999px;background:#2457d61f}.generation-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2457d6,#4c7dff);transition:width .35s ease}.muted{margin:0;color:var(--muted);font-size:13px;line-height:1.62}.results>img{aspect-ratio:4 / 3;border-radius:8px;background:var(--soft)}.visual-empty{position:relative;overflow:hidden;min-height:260px;border:1px solid var(--line);border-radius:8px;color:#fff}.visual-empty:after{position:absolute;top:0;right:0;bottom:0;left:0;content:"";background:linear-gradient(180deg,#121c2d0f,#121c2d7a)}.visual-empty img{position:absolute;top:0;right:0;bottom:0;left:0;height:100%}.visual-empty span{position:relative;z-index:1;padding:8px 12px;border-radius:8px;background:#121c2da8;font-weight:850}.inline-actions{flex-wrap:wrap;gap:10px}.vr-section{display:grid;gap:12px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.vr-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.vr-head strong,.vr-head span{display:block}.vr-head strong{color:var(--ink);font-size:14px}.vr-head span{margin-top:3px;color:var(--muted);font-size:12px}.vr-head em{flex:0 0 auto;padding:4px 8px;border-radius:8px;color:#294472;background:var(--blue-weak);font-size:12px;font-style:normal;font-weight:850}.vr-viewer-wrap{position:relative;overflow:hidden;min-height:310px;border-radius:8px;background:#111827}.vr-viewer{width:100%;height:340px;min-height:310px}.vr-placeholder,.vr-loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:grid;align-content:center;justify-items:center;gap:8px;padding:18px;color:#fff;background:linear-gradient(180deg,#111827c2,#111827e6),#111827;text-align:center}.vr-placeholder strong,.vr-loading span{font-size:14px;font-weight:850}.vr-placeholder span{max-width:260px;color:#ffffffb8;font-size:12px;line-height:1.6}.vr-loading.error{color:#ffe5e1;background:#501414e6}.cube-face-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.cube-face{position:relative;display:block;overflow:hidden;width:100%;min-height:76px;border:1px solid var(--line);border-radius:8px;padding:0;color:var(--muted);background:#fff;box-shadow:none;text-decoration:none;text-align:left}.cube-face:hover:not(:disabled){transform:none;border-color:#2457d66b;box-shadow:0 8px 18px #1f2b4414}.cube-face.selected{border-color:#2457d6b8;box-shadow:inset 0 0 0 1px #2457d66b,0 10px 22px #2457d61f}.cube-face img{display:block;width:100%;height:76px;object-fit:cover}.cube-face>span{display:grid;height:76px;place-items:center;color:var(--muted);font-size:12px;font-weight:800}.cube-face em{position:absolute;left:6px;bottom:6px;padding:3px 6px;border-radius:6px;color:#fff;background:#121c2db8;font-size:11px;font-style:normal;font-weight:850}.cube-face.missing em{color:var(--muted);background:#eef2f7}.cube-face-preview{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff}.cube-face-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.cube-face-preview-head strong,.cube-face-preview-head span{display:block}.cube-face-preview-head strong{color:var(--ink);font-size:13px}.cube-face-preview-head span{margin-top:3px;color:var(--muted);font-size:12px}.cube-face-preview-head a{flex:0 0 auto;color:var(--blue);font-size:12px;font-weight:850;text-decoration:none}.cube-face-preview-actions{display:flex;flex:0 0 auto;align-items:center;gap:10px}.cube-face-preview-actions button{min-height:0;padding:0;color:var(--blue);background:transparent;font-size:12px;font-weight:850}.cube-face-preview-actions button:hover:not(:disabled){transform:none;box-shadow:none}.cube-face-preview-stage{display:grid;overflow:hidden;width:100%;min-height:180px;place-items:center;border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,#edf3ffc2,#f7f9fcf5),#f7f9fc}.cube-face-preview-stage img{display:block;width:100%;height:100%;object-fit:cover}.cube-face-preview-stage span{color:var(--muted);font-size:12px;font-weight:800}.project-pill,.plan{min-height:42px;border:1px solid var(--line);color:var(--ink);background:#fff}.project-pill:hover:not(:disabled),.plan:hover:not(:disabled){box-shadow:0 10px 22px #1f2b4414}.project-pill strong{display:grid;flex:0 0 auto;min-width:28px;height:24px;place-items:center;border-radius:8px;color:#294472;background:var(--blue-weak);font-size:12px}.project-pill.selected{border-color:#2457d67a;background:#f4f7ff}.plan strong{color:var(--orange)}.task{display:grid;grid-template-columns:82px minmax(0,1fr);gap:10px 12px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:13px}.task-thumb{display:grid;overflow:hidden;width:82px;height:68px;place-items:center;border-radius:8px;color:var(--blue);background:var(--blue-weak);font-weight:900}.task-thumb img{width:100%;height:100%;object-fit:cover}.task-running{display:grid;place-items:center;gap:3px}.task-running em{font-size:11px;font-style:normal;font-weight:900}.task-copy{display:grid;gap:5px;min-width:0}.task-copy>span{overflow:hidden;color:var(--ink);font-weight:850;text-overflow:ellipsis;white-space:nowrap}.task progress{width:100%;height:7px;accent-color:var(--blue)}.task p{margin:0;color:var(--red);font-size:12px;line-height:1.45}.task-actions{grid-column:1 / -1;gap:8px}.small{min-height:32px;padding:0 10px;font-size:12px}.status{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-width:68px;padding:3px 8px;border-radius:8px;background:#eef2f7;font-weight:800}.status.succeeded{color:var(--green);background:#e7f7f2}.status.failed{color:var(--red);background:#fae9e7}.status.cancelled{color:#7a5a17;background:#f8efd8}.status.processing,.status.queued{color:#2457d6;background:#edf3ff}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes scanline{0%{transform:translate(-100%)}55%,to{transform:translate(100%)}}:root{--ink: #111827;--muted: #667085;--line: #e1e7f0;--line-strong: #cbd5e1;--panel: #ffffff;--soft: #f8fafc;--blue: #255fda;--blue-weak: #eef4ff;--shadow: 0 10px 28px rgba(15, 23, 42, .06)}body{background:linear-gradient(180deg,#fbfcfe,#f4f7fb 46%,#f6f8fb),#f6f8fb}button,.button-link,input,select,.panel,.hero-copy,.hero-visual,.feature-row,.style-card,.upload-box,.preview-card,.plus-panel,.dimension-card,.face-grid label,.vr-section,.cube-face,.cube-face-preview,.project-pill,.plan,.task{border-radius:10px}button,.button-link{min-height:40px;font-weight:760}input,select{min-height:40px;background:#fbfdff}.shell{width:min(1480px,100%);padding:18px}.app-header{margin:-18px -18px 16px;padding:12px 18px;background:#f7f9fceb}.brand-mark{width:34px;height:34px;border-radius:10px;background:#1f4fc0}.header-actions a,.account-chip{border-radius:10px}.account-chip{padding:8px 11px;background:#fff}.hero-workspace{grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:14px;margin-bottom:14px}.hero-copy,.hero-visual,.hero-visual img{min-height:238px}.hero-copy{gap:14px;padding:24px}h1{max-width:660px;font-size:clamp(28px,2.65vw,40px);letter-spacing:0}.subtitle,.composer-head p{font-size:14px;line-height:1.65}.hero-metrics{gap:10px;max-width:470px}.hero-metrics div{padding:10px 12px;background:#fbfdff}.hero-metrics strong{font-size:22px}.hero-status{right:14px;bottom:14px;border-radius:10px}.workspace{grid-template-columns:304px minmax(470px,1fr) 342px;gap:14px}.side-stack,.feature-list,.plan-list,.project-switcher,.task-list{gap:9px}.panel{gap:14px;padding:15px;box-shadow:0 6px 20px #0f172a0a}.panel-title>span,.cost-badge,.section-label em{border-radius:999px;padding:4px 9px}.feature-row{min-height:66px;padding:10px 11px}.feature-mark{width:34px;height:34px;border-radius:9px;background:#1f2937}.feature-row.selected{border-color:#255fda8c;background:#f6f9ff;box-shadow:inset 3px 0 0 var(--blue)}.plan,.project-pill{min-height:40px;background:#fbfdff}.plan strong{color:#b85c1e}.composer{gap:16px;padding:18px}.project-bar,.plus-panel,.dimension-card,.vr-section{background:#f8fafc}.style-grid{gap:8px}.style-card img{aspect-ratio:16 / 10}.style-card span{padding:8px 10px}.upload-box,.preview-card,.preview-card img,.empty{min-height:200px}.dimension-card{padding:12px}.face-grid{gap:8px}.face-grid label{border-color:#dce4ef;background:#fff}.generating-panel{border-radius:10px}.results>img,.visual-empty{border-radius:10px}.vr-viewer-wrap,.vr-placeholder,.vr-loading,.cube-face-preview-stage{border-radius:10px}.cube-face-preview-stage{background:#f8fafc}@media(max-width:1280px){.workspace{grid-template-columns:300px minmax(0,1fr)}.workspace>.side-stack:last-child{grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:980px){.hero-workspace,.workspace{grid-template-columns:1fr}.hero-workspace{gap:14px}.workspace>.side-stack:last-child{grid-template-columns:1fr}.side-stack{grid-template-columns:1fr}}@media(max-width:720px){.shell{padding:14px}.app-header{align-items:flex-start;flex-direction:column;margin:-14px -14px 14px;padding:14px}.header-actions{width:100%;justify-content:space-between}.account-chip{min-width:0}.hero-copy{min-height:auto;padding:20px}.hero-metrics,.project-bar,.style-grid,.upload-layout,.dimension-grid,.face-grid{grid-template-columns:1fr}.composer{padding:16px}.composer-head,.submit-row{align-items:stretch;flex-direction:column}.submit-row .ghost-action{width:100%}.hero-visual,.hero-visual img{min-height:220px}}:root{--ink: #17312d;--muted: #66766f;--line: #d9e3de;--line-strong: #b8ccc3;--panel: #fcfdfc;--soft: #f1f5f2;--blue: #176d61;--blue-weak: #e4f1ed;--green: #11775e;--orange: #ad6742;--red: #c65454;--shadow: 0 14px 38px rgba(24, 52, 46, .07);font-family:Noto Sans SC,Source Han Sans SC,PingFang SC,Microsoft YaHei,sans-serif}body{color:var(--ink);background-color:#eff3f0;background-image:linear-gradient(rgba(31,80,68,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(31,80,68,.035) 1px,transparent 1px);background-size:36px 36px}button,input,select{font-family:inherit}button,.button-link{min-height:42px;border-radius:10px;background:#176d61;font-weight:800}button:hover:not(:disabled),.button-link:hover{box-shadow:0 12px 24px #115c4e2e}input,select{min-height:44px;border-color:#cfddd7;border-radius:10px;background:#fff}input:focus,select:focus{border-color:#288171;outline:3px solid rgba(40,129,113,.12)}.shell{width:min(1520px,100%);padding:22px}.app-header{min-height:66px;margin:-22px -22px 20px;padding:13px 22px;border-bottom-color:#c0d1cae6;background:#f4f8f5e6;-webkit-backdrop-filter:blur(16px) saturate(120%);backdrop-filter:blur(16px) saturate(120%)}.brand{gap:11px}.brand-mark{width:38px;height:38px;border-radius:11px;background:#17463e;box-shadow:inset 0 1px #fff3}.brand strong{color:#15342e;font-family:"Noto Serif SC","Source Han Serif SC",STSong,serif;font-size:17px}.brand small{color:#78877f}.header-actions{gap:0}.account-chip{min-width:146px;border-color:#ceddd7;border-radius:12px;padding:8px 11px;background:#ffffffc2}.account-chip strong{color:#176d61}.hero-workspace{grid-template-columns:minmax(0,1.06fr) minmax(390px,.94fr);gap:14px;margin-bottom:16px}.hero-copy,.hero-visual{min-height:342px;border:0;border-radius:16px;box-shadow:0 18px 44px #1337301a}.hero-copy{position:relative;overflow:hidden;padding:32px;color:#fff;background:#17463e}.hero-copy:after{position:absolute;right:0;bottom:0;width:214px;height:172px;border-top:1px solid rgba(219,242,233,.18);border-left:1px solid rgba(219,242,233,.18);content:"";background-image:linear-gradient(rgba(219,242,233,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(219,242,233,.12) 1px,transparent 1px);background-size:20px 20px}.hero-copy>*{position:relative;z-index:1}.hero-copy .eyebrow{color:#bfe2d5}.hero-copy h1{max-width:680px;color:#fff;font-family:"Noto Serif SC","Source Han Serif SC",STSong,serif;font-size:42px;font-weight:700;line-height:1.22}.hero-copy .subtitle{max-width:590px;color:#edf8f3cc}.hero-actions{gap:10px}.hero-primary{min-width:156px;color:#17463e;background:#e6c2a3;box-shadow:none}.hero-primary:hover:not(:disabled){color:#17463e;background:#f1d2b7;box-shadow:0 12px 22px #071e1a33}.hero-actions .ghost-action{border-color:#e3f4ed70;color:#fff;background:#0c322b57}.hero-actions .ghost-action:hover:not(:disabled){background:#0c322b94}.hero-metrics{gap:8px}.hero-metrics div{padding:10px 12px;border-color:#ddf2ea3b;border-radius:10px;background:#0a2f2852;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hero-metrics span{color:#e7f6efad}.hero-metrics strong{margin-top:4px;color:#fff;font-family:"Noto Serif SC","Source Han Serif SC",STSong,serif;font-size:24px}.hero-visual{border:1px solid rgba(18,72,61,.16)}.hero-visual img{min-height:342px}.hero-status{right:16px;bottom:16px;border-color:#ffffffc7;border-radius:10px;color:#1a443c;background:#f6fcf9e6}.workspace{grid-template-columns:294px minmax(0,1fr) 330px;gap:14px}.side-stack{gap:14px}.panel{gap:16px;border-color:#c9d8d1db;border-radius:12px;padding:17px;background:#fcfdfced;box-shadow:0 8px 24px #1b3d350b}.panel-title h2,.composer-head h2{color:#1c3933;font-family:"Noto Serif SC","Source Han Serif SC",STSong,serif;font-size:18px}.panel-title>span,.cost-badge,.section-label em{color:#28695e;background:#e4f1ed}.account-summary{border-color:#dce8e2;border-radius:10px;background:#f2f7f4}.account-avatar{border-radius:10px;color:#fff;background:#235f54}.benefit-grid span{border-color:#d9e8e1;border-radius:9px;color:#28695e;background:#f1f7f4}.legal-link-grid button{border-color:transparent;border-radius:8px;color:#61736c;background:transparent}.legal-link-grid button:hover:not(:disabled){border-color:#d5e3dd;background:#f4f8f6}.notice{border-color:#d4e4dd;border-radius:10px;color:#35645a;background:#eff7f3}.feature-list,.plan-list,.project-switcher,.task-list{gap:8px}.feature-row{min-height:70px;border-color:transparent;border-radius:10px;padding:10px 9px;background:#f5f8f6}.feature-row:hover:not(:disabled){background:#edf5f1;box-shadow:none}.feature-row.selected{border-color:#a9cec2;background:#e8f3ee;box-shadow:inset 3px 0 #1a7767}.feature-mark{width:36px;height:36px;border-radius:10px;color:#dff0e9;background:#214b43}.feature-row em{color:#a8623e}.plan,.project-pill{min-height:48px;border-color:#dde7e2;border-radius:10px;background:#fbfcfb}.plan:hover:not(:disabled),.project-pill:hover:not(:disabled){border-color:#bed6cd;background:#f4f9f6;box-shadow:none}.plan strong{color:#a8623e}.project-pill.selected{border-color:#8fbdaf;background:#eaf4ef}.project-pill strong{color:#28695e;background:#deeee7}.composer{gap:20px;border-top:3px solid #1d6d60;padding:22px}.composer-head{padding-bottom:3px;border-bottom:1px solid #e2ebe6}.composer-head .eyebrow{color:#5e897d}.composer-head p{color:#66766f}.project-bar,.plus-panel,.dimension-card{border-color:#d9e6e0;border-radius:10px;background:#f2f7f4}.project-bar{gap:10px;padding:13px}.project-bar button{background:#285f55}.style-grid{gap:9px}.style-card{border-color:#dbe5e0;border-radius:10px;background:#fff}.style-card span{color:#2d4d45}.style-card.selected{border-color:#32816f;box-shadow:0 0 0 3px #32816f21}.upload-box{min-height:228px;border-color:#9dc4b6;border-radius:12px;color:#688078;background:#f4f9f6}.upload-box:hover{border-color:#4e9a88;background:#edf7f2}.preview-card,.results>img,.results>video,.visual-empty{border-radius:12px}.preview-card{border-color:#d8e4de;background:#eef4f1}.preview-card span{border-radius:8px;background:#143e35c7}.submit-row{gap:10px;padding-top:4px}.submit-row .primary,.inline-actions .button-link{background:#176d61}.ghost-action{border-color:#ccdcd5;color:#44665c;background:#fff}.task{gap:10px 12px;border-color:#dce6e1;border-radius:10px;background:#fbfcfb}.task-thumb{border-radius:9px;color:#28695e;background:#e5f1ec}.task progress{accent-color:#1b7969}.status{border-radius:999px}.status.processing,.status.queued{color:#28695e;background:#e3f1eb}.record-tabs{border:1px solid #dfe9e4;border-radius:10px;background:#f3f7f5}.record-tabs button.selected{color:#176d61;background:#fff}.ai-generated-mark{border-color:#c5ddd4;color:#28695e;background:#eff8f4f0;box-shadow:0 14px 30px #195a4c1a}@keyframes studio-reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.hero-workspace,.workspace>.panel,.workspace>.side-stack{animation:studio-reveal .36s ease-out both}.workspace>.composer{animation-delay:.05s}.workspace>.side-stack:last-child{animation-delay:.1s}@media(max-width:1280px){.workspace{grid-template-columns:286px minmax(0,1fr)}}@media(max-width:980px){.hero-workspace,.workspace{grid-template-columns:minmax(0,1fr)}.hero-copy,.hero-visual,.hero-visual img{min-height:286px}}@media(max-width:720px){.shell{padding:14px}.app-header{min-height:58px;align-items:center;flex-direction:row;margin:-14px -14px 14px;padding:10px 14px}.header-actions{width:auto}.account-chip{min-width:112px;padding:6px 8px}.brand-mark{width:34px;height:34px}.brand strong{font-size:16px}.hero-copy,.hero-visual,.hero-visual img{min-height:248px;border-radius:13px}.hero-copy{gap:14px;padding:24px 20px}.hero-copy h1{font-size:31px;line-height:1.24}.hero-copy .subtitle{font-size:13px}.hero-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-metrics div{padding:8px}.hero-metrics strong{font-size:20px}.panel,.composer{border-radius:11px;padding:16px}.composer{gap:16px}.composer-head{gap:10px}.composer-head h2{font-size:17px}.project-bar{grid-template-columns:1fr}.project-bar button{width:100%}.style-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.upload-layout{grid-template-columns:1fr}.upload-box,.preview-card{min-height:190px}.submit-row{align-items:stretch}.submit-row .primary,.submit-row .ghost-action{width:100%}.hero-workspace,.workspace>.panel,.workspace>.side-stack{animation:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.ai-generated-mark{position:fixed;right:18px;bottom:18px;z-index:40;max-width:min(360px,calc(100vw - 32px));padding:10px 12px;border:1px solid #cfe0ff;border-radius:999px;color:#1d5fd8;background:#eaf1fff5;box-shadow:0 14px 36px #1d5fd81f;font-size:12px;font-weight:850;line-height:1.45;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ai-generated-mark span{color:#667085;font-weight:650}.legal-link-grid{display:grid;gap:8px}.legal-link-grid button{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;color:#334155;background:#fff;border:1px solid var(--line);border-radius:8px;font-size:13px;font-weight:800}.legal-link-grid button:hover{border-color:#bfd0ea;box-shadow:0 10px 22px #1f2b4414}.legal-page{min-height:100vh;padding:28px;background:radial-gradient(circle at top left,rgba(29,95,216,.14),transparent 34%),linear-gradient(180deg,#fff,#f5f7fa 62%)}.legal-card{width:min(920px,100%);margin:0 auto;padding:clamp(22px,4vw,44px);border:1px solid var(--line);border-radius:18px;background:#fffffff0;box-shadow:var(--shadow)}.legal-back{display:inline-flex;margin-bottom:22px;color:var(--blue);font-weight:850;text-decoration:none}.legal-card h1{max-width:780px;margin-bottom:14px}.legal-sections{display:grid;gap:18px;margin-top:28px}.legal-sections section{padding:18px;border:1px solid var(--line);border-radius:14px;background:#fbfdff}.legal-sections h2{margin-bottom:8px}.legal-sections p,.legal-updated{margin:0;color:var(--muted);line-height:1.8}.legal-updated{margin-top:24px;font-size:13px}@media(max-width:720px){.ai-generated-mark{left:14px;right:14px;bottom:14px;border-radius:14px}}.modal-backdrop{padding:16px;background:#09122294;-webkit-backdrop-filter:blur(18px) saturate(120%);backdrop-filter:blur(18px) saturate(120%)}.login-modal{display:grid;grid-template-columns:minmax(260px,.84fr) minmax(360px,1.16fr);width:min(820px,100%);max-height:min(720px,calc(100vh - 32px));overflow:hidden;border:1px solid rgba(255,255,255,.72);border-radius:24px;background:#fff;box-shadow:0 32px 90px #040f2047,0 8px 24px #040f201f;animation:login-modal-in .24s ease-out both}.login-visual{position:relative;display:flex;min-height:560px;flex-direction:column;justify-content:space-between;overflow:hidden;padding:28px;color:#fff;background:#173d3a url(/assets/app-hero.webp) center / cover no-repeat}.login-visual:before{position:absolute;top:0;right:0;bottom:0;left:0;content:"";background:linear-gradient(180deg,#081c1cc7,#0d393538 44%,#06191adb)}.login-visual>*{position:relative;z-index:1}.login-visual-brand,.login-visual-footer,.login-security{display:flex;align-items:center}.login-visual-brand{gap:10px;font-size:16px;font-weight:850}.login-brand-mark{display:grid;width:36px;height:36px;place-items:center;border:1px solid rgba(255,255,255,.36);border-radius:12px;color:#fff;background:#07201e5c;box-shadow:inset 0 1px #ffffff38;font-size:18px;font-weight:950}.login-visual-copy{max-width:280px;margin-top:auto;padding:82px 0 36px}.login-visual-copy>span,.login-kicker{color:#b9d7ca;font-size:11px;font-weight:850;text-transform:uppercase}.login-visual-copy h2{display:block;margin:14px 0 12px;color:#fff;font-size:clamp(26px,3vw,36px);line-height:1.18}.login-visual-copy p{margin:0;color:#ffffffc7;font-size:13px;line-height:1.75}.login-visual-footer{justify-content:space-between;gap:12px;color:#ffffffbd;font-size:11px;font-weight:750}.login-visual-footer span{display:inline-flex;align-items:center;gap:6px}.login-form-panel{display:grid;align-content:start;gap:22px;min-width:0;overflow:auto;padding:36px 40px 28px;background:#fff}.login-form-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.login-form-header h2{margin-top:8px;color:#172033;font-size:24px;line-height:1.25}.login-intro{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.6}.icon-close{flex:0 0 auto;width:40px;min-height:40px;border-color:#e4eaf2;border-radius:12px;color:#667085;background:#f8fafc;font-size:0}.icon-close:hover:not(:disabled){color:#172033;background:#eef3f8;box-shadow:none;transform:none}.login-mode-switch{gap:3px;padding:4px;border:1px solid #e8edf3;border-radius:14px;background:#f4f7f9}.login-mode-switch button{min-height:42px;padding:0 10px;border:1px solid transparent;border-radius:10px;color:#748095;background:transparent;box-shadow:none;font-size:12px;font-weight:800}.login-mode-switch button:hover:not(:disabled){color:#34506c;background:#ffffff9e;box-shadow:none;transform:none}.login-mode-switch button.active{border-color:#e2e9ee;color:#155d53;background:#fff;box-shadow:0 4px 12px #16393d14}.login-stack{gap:15px}.login-stack label{gap:8px;color:#344054;font-size:12px;font-weight:800}.login-stack label>span{display:block}.login-stack input{min-height:50px;border-color:#dfe7ee;border-radius:12px;padding:0 15px;color:#172033;background:#fbfdfd;box-shadow:inset 0 1px 2px #142a3205;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.login-stack input::placeholder{color:#a0abba}.login-stack input:hover:not(:focus){border-color:#c6d4db;background:#fff}.login-stack input:focus{border-color:#258575;outline:0;background:#fff;box-shadow:0 0 0 4px #2585751f,0 8px 18px #16393d0d}.login-hint{margin:-2px 0 0;color:#84909f;font-size:12px;line-height:1.65}.login-stack .sms-code-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.sms-request-button{min-width:116px;min-height:50px;padding:0 12px;border:1px solid #b9d9d1;border-radius:12px;color:#16685c;background:#eef8f5;box-shadow:none;font-size:12px;font-weight:850;white-space:nowrap}.sms-request-button:hover:not(:disabled){border-color:#75b7aa;color:#104f46;background:#e0f2ed;box-shadow:none;transform:none}.sms-request-button:disabled{opacity:.58}.auth-feedback{display:flex;align-items:center;min-height:42px;margin:-8px 0 0;padding:9px 11px;border:1px solid transparent;border-radius:11px;font-size:12px;font-weight:700;line-height:1.5}.auth-feedback.info{border-color:#d9e5ef;color:#39617a;background:#f3f8fc}.auth-feedback.success{border-color:#bfe1d6;color:#176658;background:#eef9f5}.auth-feedback.error{border-color:#f2c7c7;color:#a33939;background:#fff5f5}.login-submit{min-height:52px;border-radius:13px;color:#fff;background:linear-gradient(135deg,#1d7064,#155247);box-shadow:0 12px 24px #1552472e;font-size:14px;font-weight:850}.login-submit:hover:not(:disabled){background:linear-gradient(135deg,#258575,#155247);box-shadow:0 16px 28px #1552473b}.login-submit svg:last-child{margin-left:auto}.login-modal button:focus-visible{outline:3px solid rgba(37,133,117,.25);outline-offset:2px}.login-security{justify-content:center;gap:6px;color:#8b98a5;font-size:11px;font-weight:700}.login-security svg{color:#258575}@keyframes login-modal-in{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:760px){.modal-backdrop{align-items:center;padding:12px}.login-modal{display:flex;height:calc(100vh - 24px);max-height:calc(100vh - 24px);flex-direction:column;border-radius:20px}.login-visual{flex:0 0 144px;min-height:144px;padding:20px}.login-visual-copy{max-width:68%;padding:24px 0 0}.login-visual-copy h2{margin:8px 0 0;font-size:24px}.login-visual-copy p,.login-visual-footer span:last-child{display:none}.login-form-panel{min-height:0;flex:1 1 auto;gap:14px;padding:20px 20px 18px}.login-stack{gap:12px}.login-stack input{min-height:46px}.sms-request-button{min-width:108px;min-height:46px;padding:0 9px;font-size:11px}.auth-feedback{min-height:40px;margin-top:-4px}.login-submit{position:sticky;bottom:0;z-index:2}.login-form-header h2{font-size:21px}}@media(max-width:420px){.login-mode-switch button{padding:0 6px;font-size:11px}.login-form-panel{padding-right:16px;padding-left:16px}}html,body,#root{max-width:100%;overflow-x:hidden}img,video,canvas{max-width:100%}button,input,select,textarea,.shell,.hero-workspace,.workspace,.hero-copy,.hero-visual,.side-stack,.composer,.panel,.project-bar,.upload-layout,.style-grid,.plan-list,.feature-list,.task-list{min-width:0}.hero-copy h1,.subtitle,.composer-head p,.feature-row span,.plan span,.project-pill span,.task-copy,.notice,.legal-sections p{overflow-wrap:anywhere;word-break:break-word}.plan.disabled,.plan:disabled{color:#667085;border-color:#d8e0eb;background:#f4f7fb;box-shadow:none}.plan.disabled strong,.plan:disabled strong{color:#94a3b8}.plan-unavailable{display:block;margin-top:4px;color:#b25a1a;font-size:12px;font-weight:800}@media(max-width:720px){.shell{width:100%;max-width:100vw;overflow-x:hidden}.app-header{width:100%;margin:-14px 0 14px}.brand{width:100%;max-width:100%}.brand>div{min-width:0}.hero-workspace,.workspace{width:100%;grid-template-columns:minmax(0,1fr)}.hero-copy h1{max-width:100%;font-size:clamp(28px,9vw,36px);line-height:1.12}.hero-actions,.header-actions{min-width:0;flex-wrap:wrap}.hero-actions>button,.header-actions>*{max-width:100%}.header-actions{justify-content:flex-start}.header-actions a,.account-chip{flex:1 1 auto}.hero-primary{width:100%;min-width:0}.panel,.composer,.hero-copy,.hero-visual{width:100%;max-width:100%}.feature-row,.plan,.project-pill{width:100%}.plan{align-items:flex-start;flex-direction:column}.legal-page{padding:14px}.legal-card{width:100%;padding:22px}}
