.portal{--portal-ink: var(--ui-ink);--portal-muted: var(--ui-muted);--portal-line: var(--ui-border);min-height:100vh;padding:16px 32px 0;font-family:var(--ui-font);color:var(--ui-ink);background:var(--ui-bg)}.portal *,.portal *:before,.portal *:after{box-sizing:border-box}.portal h1,.portal h2,.portal h3,.portal p{margin:0}.portal h1{font-size:24px;line-height:32px;font-weight:600;letter-spacing:-.04em}.portal h2{font-size:16px;line-height:24px;font-weight:600}.portal h3{font-size:14px;line-height:20px;font-weight:600}.portal p{font-size:14px;line-height:24px}.portal small{font-size:12px;line-height:16px}.portal a{color:inherit}.portal button,.portal input,.portal textarea,.portal select{font:inherit}.portal button{border:0}.portal button:disabled{opacity:.45}.portal button:active:not(:disabled){transform:translateY(1px)}.portal :focus-visible{outline:2px solid var(--ui-focus);outline-offset:4px}.portal input,.portal select,.portal textarea{min-width:0;max-width:100%;padding:8px 12px;border:1px solid var(--ui-border);border-radius:8px;background:var(--ui-surface);color:var(--ui-ink);font-size:14px;line-height:20px}.portal textarea{display:block;width:100%;resize:vertical}.portal select{min-height:40px}.portal input::placeholder,.portal textarea::placeholder{color:#92939a}.portal label{font-size:14px;line-height:20px}.portal fieldset{min-width:0;margin:0;padding:24px;border:1px solid var(--ui-border);border-radius:12px}.portal legend{padding:0 8px;color:var(--ui-ink);font-size:14px;line-height:20px;font-weight:600}.portal fieldset label{display:grid;gap:8px;margin-bottom:16px}.portal fieldset input,.portal fieldset select{width:100%}.portal .portal-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 12px;border:1px solid transparent;border-radius:8px;font-size:14px;line-height:20px;font-weight:600;text-decoration:none}.portal .portal-button-primary{background:var(--ui-primary);color:#fff;border-color:var(--ui-primary);box-shadow:0 1px 2px #17171b12}.portal .portal-button-primary:hover:not(:disabled){background:#41424a;border-color:#41424a}.portal .portal-button-secondary{background:var(--ui-surface);color:var(--ui-ink);border-color:#d9d9d6}.portal .portal-button-secondary:hover:not(:disabled){background:#f0f0ed}.portal .portal-button:disabled{background:#efefed;border-color:#e6e6e2;color:#9a9ba0;opacity:1;box-shadow:none}.portal-full{width:100%}.portal-main{width:100%;max-width:1440px;margin:0 auto;padding:0 0 40px}.portal-main>.MuiAlert-root{margin-bottom:16px}.portal-card{padding:24px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface)}.portal-workspace-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin:8px 0 24px}.portal-access{display:flex;align-items:center;gap:16px;color:var(--ui-muted);font-size:12px;line-height:16px}.portal-access-state{display:flex;align-items:center;gap:8px}.portal-access-state:before{content:"";width:4px;height:4px;border-radius:50%;background:#718373}.portal-access-pending .portal-access-state:before{background:#b48037}.portal-access-disabled .portal-access-state:before{background:#a56555}.portal-allowance{font-variant-numeric:tabular-nums}.portal-section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.portal-section-heading h2{font-size:12px;line-height:16px;color:var(--ui-muted);font-weight:500}.portal-section-meta{color:var(--ui-muted);font-size:12px;line-height:16px}.atelier-start{display:grid;grid-template-columns:320px minmax(0,1fr);max-width:1120px;min-height:480px;margin:0 auto;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface);overflow:hidden}.atelier-start-aside{display:flex;flex-direction:column;justify-content:center;padding:40px;background:#eeefeb}.atelier-start-kicker{display:block;margin-bottom:24px;color:#85867f;font-size:12px;line-height:16px;letter-spacing:.12em}.atelier-start-heading h2{font-size:24px;line-height:32px;letter-spacing:-.04em}.atelier-steps{display:grid;gap:8px;margin:32px 0 0;padding:0;list-style:none}.atelier-steps li{display:flex;align-items:center;gap:16px;min-height:48px;padding:12px 0;color:#93958c}.atelier-steps li>span{font-size:12px;line-height:16px;font-variant-numeric:tabular-nums}.atelier-steps strong{font-size:14px;line-height:20px;font-weight:500}.atelier-steps i{margin-left:auto;font-style:normal;font-size:18px;line-height:24px}.atelier-steps .is-current{color:var(--ui-ink)}.atelier-start-form{display:grid;align-content:center;padding:40px 64px}.atelier-photo-form{width:100%;min-width:0}.atelier-photo-picker{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;width:100%;height:224px;padding:24px;overflow:hidden;border:1px dashed #c9cbc4!important;border-radius:8px;background:var(--ui-panel);color:var(--ui-ink)}.atelier-photo-picker:hover:not(:disabled){border-color:#8d8f86!important;background:#f1f2ed}.atelier-photo-picker strong{font-size:16px;line-height:24px;font-weight:500}.atelier-photo-picker small{color:var(--ui-muted);font-size:12px;line-height:16px}.atelier-import-icon,.atelier-import-icon svg{display:block;width:48px;height:56px}.atelier-import-icon{margin-bottom:8px;color:#888b80}.atelier-photo-picker.has-photo{padding:0;border-style:solid!important}.atelier-photo-picker.has-photo img{width:100%;height:100%;object-fit:contain;opacity:1;animation:none}.atelier-photo-replace{position:absolute;right:8px;bottom:8px;padding:4px 8px;border:1px solid var(--ui-border);border-radius:4px;background:#ffffffed;color:var(--ui-ink);font-size:12px;line-height:16px}.portal-file-limit{margin:12px 0 0!important;color:var(--ui-muted);font-size:12px!important;line-height:16px!important}.portal .portal-consent,.portal .portal-confirm{align-items:flex-start;margin:16px 0;gap:8px}.portal-consent .MuiCheckbox-root,.portal-confirm .MuiCheckbox-root{padding:0}.portal .portal-consent .MuiFormControlLabel-label,.portal .portal-confirm .MuiFormControlLabel-label{color:var(--ui-muted);font-size:12px;line-height:20px}.portal .atelier-create-button{justify-content:space-between;width:100%;min-height:40px}.atelier-create-button>span{font-size:18px;line-height:24px}.portal-details{margin-top:16px;color:var(--ui-muted);font-size:12px;line-height:20px}.portal-details summary{width:fit-content;padding:4px 0;cursor:pointer}.portal-details p{margin-top:8px;font-size:12px;line-height:20px}.portal-details a{text-decoration:underline;text-underline-offset:3px}.portal-workspace{display:grid;grid-template-columns:192px minmax(0,1fr);gap:24px;align-items:start}.portal-sidebar{min-width:0}.atelier-source-toggle{display:none}.atelier-source-content{display:grid;gap:24px}.portal-source-card{min-width:0}.portal-source-thumbnail{display:block;width:100%;height:160px;object-fit:contain;padding:8px;border:1px solid var(--ui-border);border-radius:8px;background:var(--ui-surface)}.portal-source-replace{margin-top:8px;color:var(--ui-muted);font-size:12px;line-height:20px}.portal-source-replace>summary{padding:8px 0;cursor:pointer}.portal-source-replace .atelier-photo-picker{height:160px}.portal-source-replace .atelier-photo-form{margin-top:8px}.portal-library{min-width:0}.portal-job-list{display:grid;gap:4px;max-height:360px;overflow-y:auto}.portal-job-choice{display:flex;align-items:center;gap:12px;min-width:0;width:100%;padding:8px;border:1px solid transparent!important;border-radius:8px;background:transparent;text-align:left}.portal-job-choice:hover{background:#efefeb}.portal-job-choice.is-current{border-color:var(--ui-border)!important;background:var(--ui-surface)}.portal-job-choice img{width:40px;height:48px;border-radius:4px;object-fit:cover;background:var(--ui-panel)}.portal-job-choice>span{display:grid;gap:4px;min-width:0}.portal-job-choice b{font-size:12px;line-height:16px;font-weight:600}.portal-job-choice small{color:var(--ui-muted);font-size:12px;line-height:16px}.portal-editor{min-width:0;overflow:hidden;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface)}.portal-editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:12px 24px}.portal-view-tabs{display:flex;gap:4px}.portal .portal-view-tabs button{padding:8px 12px;border-radius:8px;background:transparent;color:var(--ui-muted);font-size:14px;line-height:20px}.portal .portal-view-tabs button[aria-selected=true]{background:#efefed;color:var(--ui-ink);font-weight:600}.portal-view-tabs button:hover:not(:disabled){background:var(--ui-panel)}.portal-design-layout{display:grid;grid-template-columns:minmax(0,1fr) 256px;gap:24px;padding:0 24px 24px;align-items:start}.portal-design-preview{min-width:0}.portal-design-image{display:grid;place-items:center;min-height:480px;overflow:hidden;border-radius:8px;background:#f3f3f0}.portal-design-image>a{display:block;width:100%}.portal-design-image img{display:block;width:100%;height:clamp(480px,calc(100vh - 256px),640px);object-fit:contain}.atelier-waiting-reference{position:relative;width:100%}.atelier-waiting-reference>span{position:absolute;bottom:16px;left:50%;transform:translate(-50%);padding:8px 12px;border:1px solid var(--ui-border);border-radius:8px;background:#ffffffed;color:var(--ui-muted);font-size:12px;line-height:16px;white-space:nowrap}.portal-design-controls{min-width:0;padding:0}.portal-form-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.portal-form-row label,.portal-field-label{color:var(--ui-muted);font-size:12px!important;line-height:20px!important}.portal-form-row select{width:112px}.portal-field-label{display:block;margin-bottom:8px}.portal-design-controls>.portal-button{margin-top:16px}.portal-prompt-editor{margin:16px 0 8px;font-size:12px;line-height:20px;color:var(--ui-muted)}.portal-prompt-editor>summary{cursor:pointer;padding:4px 0}.portal-prompt-editor[open]>summary{margin-bottom:12px}.portal-design-controls textarea{min-height:112px;font-size:14px;line-height:24px}.portal-hint{margin-top:8px!important;color:var(--ui-muted);font-size:12px!important;line-height:20px!important}.portal-traits{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.portal-traits span{padding:4px 8px;border-radius:4px;background:#f1f1ee;color:var(--ui-muted);font-size:12px;line-height:16px}.portal-reference-list{display:flex;gap:8px;margin-top:12px;overflow-x:auto;padding-bottom:4px}.portal-reference-list button{flex:0 0 64px;padding:4px;border:1px solid transparent;border-radius:8px;background:var(--ui-panel);color:var(--ui-muted);font-size:12px;line-height:16px}.portal .portal-reference-list button.is-current{border-color:var(--ui-accent);background:var(--ui-accent-soft)}.portal-reference-list img{display:block;width:54px;height:64px;object-fit:contain;margin-bottom:4px}.portal-design-card>.MuiAlert-root,.portal-operation{margin:0 24px 16px}.portal-operation p{margin-top:8px;color:var(--ui-muted);font-size:12px;line-height:20px}.portal-empty{display:grid;place-content:center;justify-items:center;gap:16px;min-height:280px;padding:32px;color:var(--ui-muted);text-align:center}.portal-model-card{padding:0 24px 24px}.portal-model-stage{height:clamp(480px,calc(100vh - 256px),640px);border-radius:8px;background:#f3f3f0;overflow:hidden}.portal-model-stage .viewer-tools{left:16px;right:16px;bottom:16px}.portal-print-box{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px}.portal-print-box h3{font-size:16px;line-height:24px}.portal-admin-note{margin-top:8px!important;font-size:14px;line-height:24px}.portal-model-notice{margin-top:16px}.portal-cloud-recovery{margin:24px 0;padding:24px;border:1px solid #e6dcc8;border-radius:12px;background:#faf8f3}.portal-cloud-recovery>p{margin:8px 0 16px;color:var(--ui-muted)}.portal-cloud-recovery>.MuiAlert-root{margin-top:16px}.portal-recovery-choices{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.portal-recovery-choices>div{padding:16px;border:1px solid var(--ui-border);border-radius:8px;background:#fff}.portal-recovery-choices h4{margin:0 0 16px;font-size:14px;line-height:20px;font-weight:600}.portal-recovery-choices label{display:grid;gap:8px}.portal-recovery-choices .MuiFormControlLabel-root{display:flex;align-items:flex-start;gap:8px;margin:16px 0}.portal-recovery-choices .MuiCheckbox-root{padding:0}.portal-recovery-choices .MuiFormControlLabel-label{font-size:12px;line-height:20px}.portal-loading{display:grid;gap:24px;width:100%;max-width:1440px;margin:0 auto;padding:24px}.portal-loading-grid{display:grid;grid-template-columns:192px minmax(0,1fr);gap:24px}@media(max-width:1100px){.portal{padding:16px 24px 0}.portal-workspace{grid-template-columns:160px minmax(0,1fr);gap:16px}.portal-design-layout{grid-template-columns:minmax(0,1fr) 224px;gap:16px;padding:0 16px 16px}.portal-editor-toolbar{padding:12px 16px}.atelier-start{grid-template-columns:280px minmax(0,1fr)}.atelier-start-form{padding:32px 40px}}@media(max-width:960px){.portal-workspace{grid-template-columns:160px minmax(0,1fr)}.portal-design-layout{grid-template-columns:1fr}.portal-design-image img,.portal-model-stage{height:480px}.portal-design-controls{max-width:100%}.portal-access{gap:12px}.atelier-start{grid-template-columns:240px minmax(0,1fr)}.atelier-start-aside,.atelier-start-form{padding:32px}.portal-recovery-choices{grid-template-columns:1fr}}@media(max-width:640px){.portal{padding:8px 16px 0}.portal-main{padding-bottom:24px}.portal h1{font-size:20px;line-height:28px}.portal-workspace-heading{margin:8px 0 16px;gap:12px;align-items:flex-start}.portal-access{flex-direction:column;align-items:flex-end;gap:4px}.portal-allowance{max-width:160px;text-align:right}.portal-workspace{grid-template-columns:1fr;gap:16px}.atelier-source-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:12px 16px;border:1px solid var(--ui-border)!important;border-radius:8px;background:var(--ui-surface);font-size:14px;line-height:20px}.atelier-source-toggle>span{display:flex;align-items:center;gap:12px;color:var(--ui-muted);font-size:12px}.atelier-source-toggle i{font-style:normal}.atelier-source-content{display:none;padding:16px 0}.portal-sidebar.is-open .atelier-source-content{display:grid;grid-template-columns:1fr 1fr;gap:16px}.portal-sidebar.is-open .atelier-source-toggle i{transform:rotate(180deg)}.portal-source-thumbnail,.portal-source-replace .atelier-photo-picker{height:144px}.portal-editor-toolbar{padding:12px;gap:8px;flex-wrap:wrap}.portal-editor-toolbar>.portal-section-meta{margin-left:auto;max-width:112px;text-align:right}.portal-view-tabs button{padding:8px 12px!important}.portal-design-layout{padding:0 12px 16px;gap:24px}.portal-design-image{min-height:360px}.portal-design-image img{height:400px}.portal-model-card{padding:0 12px 16px}.portal-model-stage{height:400px}.portal-model-stage .viewer-tools{left:8px;right:8px;bottom:8px;gap:4px}.portal-model-stage .view-actions button{width:28px;padding:4px}.portal-print-box{align-items:flex-start;flex-wrap:wrap;gap:12px;margin-top:16px}.portal-print-box .portal-button{width:100%}.portal-form-row{margin-bottom:16px}.portal-design-card>.MuiAlert-root,.portal-operation{margin-left:12px;margin-right:12px}.atelier-start{grid-template-columns:1fr;min-height:auto}.atelier-start-aside{padding:24px}.atelier-start-kicker{display:none}.atelier-start-heading h2{font-size:18px;line-height:28px}.atelier-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.atelier-steps li{flex-direction:column;align-items:flex-start;gap:4px;padding:0;min-height:0}.atelier-steps strong{font-size:12px;line-height:16px;white-space:nowrap}.atelier-steps i{display:none}.atelier-start-form{padding:24px}.atelier-photo-picker{height:192px}.portal-loading{padding:16px;gap:16px}.portal-loading-grid{grid-template-columns:1fr;gap:16px}.portal-cloud-recovery{padding:16px}.portal-recovery-choices{gap:16px}}.portal-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;width:100%;max-width:1440px;min-height:64px;margin:0 auto 24px;padding:16px 0;gap:24px;border:0;border-bottom:1px solid var(--ui-border, #e5e5e1);border-radius:0;background:transparent;box-shadow:none;color:var(--ui-ink, #25262c);font-family:Manrope,Microsoft YaHei,sans-serif}.portal-header .portal-brand{display:inline-flex;align-items:center;flex:0 0 auto;gap:12px;color:var(--ui-ink, #25262c);font-size:18px;line-height:28px;font-weight:600;letter-spacing:-.035em;text-decoration:none;white-space:nowrap}.portal-header .portal-brand>.portal-brand-mark{display:grid;place-items:center;flex:0 0 auto;width:32px;height:32px;padding:0;border:0;border-radius:8px;background:var(--ui-primary, #2b2c33);color:#fff;font-size:18px;line-height:28px;letter-spacing:-.06em;box-shadow:none;transform:none}.portal-header .portal-brand>.portal-brand-wordmark{display:block;width:auto;height:auto;padding:0;border:0;border-radius:0;background:transparent;color:var(--ui-ink, #25262c);font:inherit;letter-spacing:inherit}.portal-header nav{display:flex;align-items:center;flex-wrap:nowrap;min-width:0;gap:4px}.portal-header nav>a,.portal-header .portal-text-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 12px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--ui-muted, #73757e);font:inherit;font-size:14px;line-height:20px;font-weight:500;text-decoration:none;white-space:nowrap;box-shadow:none;transform:none}.portal-header nav>a[aria-current=page]{background:#ededea;color:var(--ui-ink, #25262c)}.portal-header nav>a:hover,.portal-header .portal-text-button:hover:not(:disabled){background:#efefec;color:var(--ui-ink, #25262c)}.portal-header .portal-text-button:disabled{background:transparent;color:var(--ui-muted, #73757e);cursor:not-allowed;opacity:.55}.portal-header .portal-account{display:flex;align-items:center;min-width:0;max-width:192px;margin-left:16px;gap:8px;color:var(--ui-muted, #73757e);font-size:14px;line-height:20px}.portal-header .portal-avatar{display:grid;place-items:center;flex:0 0 auto;width:32px;height:32px;border:1px solid var(--ui-border, #e5e5e1);border-radius:8px;background:var(--ui-surface, #fff);color:var(--ui-ink, #25262c);font-size:12px;line-height:16px;font-weight:500}.portal-header .portal-account-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-login{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:calc(100svh - 208px);padding:24px 0 48px;color:var(--ui-ink, #25262c);font-family:Manrope,Microsoft YaHei,sans-serif}.portal-login>.MuiAlert-root{width:100%;max-width:1120px;margin-bottom:16px}.portal-login .portal-login-panel{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);width:100%;max-width:1120px;margin:0;padding:0;overflow:hidden;border:1px solid var(--ui-border, #e5e5e1);border-radius:12px;background:var(--ui-surface, #fff);box-shadow:none}.portal-login .portal-login-brand{position:relative;min-width:0;min-height:520px;overflow:hidden;background:#e9e4dc}.portal-login .portal-login-art{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 60%}.portal-login .portal-login-action{display:flex;flex-direction:column;justify-content:center;align-items:stretch;min-width:0;padding:48px}.portal-login .portal-login-action h1{margin:0;color:var(--ui-ink, #25262c);font-size:24px;line-height:32px;font-weight:600;letter-spacing:-.035em;text-wrap:balance}.portal-login .portal-login-description{margin:12px 0 32px;color:var(--ui-muted, #73757e);font-size:16px;line-height:24px;text-wrap:pretty}.portal-login .portal-login-action>.portal-button{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:40px;padding:8px 12px;border:1px solid var(--ui-primary, #2b2c33);border-radius:8px;background:var(--ui-primary, #2b2c33);color:#fff;font-size:16px;line-height:24px;font-weight:500;text-decoration:none;box-shadow:none;transform:none}.portal-login .portal-login-action>.portal-button:hover:not(:disabled){background:#3e3f47;border-color:#3e3f47}.portal-login .portal-login-action>.portal-button:disabled{border-color:var(--ui-border, #e5e5e1);background:#efefed;color:var(--ui-muted, #73757e);cursor:not-allowed;opacity:1}.portal-login .portal-login-action .portal-hint{margin:12px 0 0;color:var(--ui-muted, #73757e);font-size:14px;line-height:20px}.portal-login .portal-login-flow{display:flex;flex-wrap:wrap;gap:16px;margin:32px 0 0;padding:0;list-style:none}.portal-login .portal-login-flow li{display:inline-flex;align-items:center;gap:8px;color:var(--ui-muted, #73757e);font-size:14px;line-height:20px;white-space:nowrap}.portal-login .portal-login-step{color:var(--ui-accent, #b95e43);font-size:12px;line-height:16px;font-variant-numeric:tabular-nums}.portal-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;width:100%;max-width:1440px;margin:auto auto 0;padding:24px 0;gap:16px 32px;border:0;border-top:1px solid var(--ui-border, #e5e5e1);background:transparent;color:var(--ui-muted, #73757e);font-family:Manrope,Microsoft YaHei,sans-serif;font-size:12px;line-height:20px}.portal-footer .portal-footer-brand{min-width:0;color:var(--ui-muted, #73757e);font-weight:400}.portal-footer nav{display:flex;flex-wrap:wrap;gap:24px}.portal-footer a{color:var(--ui-muted, #73757e);font-weight:400;text-decoration:none;text-underline-offset:4px}.portal-footer a:hover{color:var(--ui-ink, #25262c);text-decoration:underline}.portal-legal{width:100%;max-width:760px;padding:16px 0 64px;color:var(--ui-ink, #25262c);font-family:Manrope,Microsoft YaHei,sans-serif}.portal-legal .portal-card{padding:40px;border:1px solid var(--ui-border, #e5e5e1);border-radius:12px;background:var(--ui-surface, #fff);box-shadow:none}.portal-legal .portal-eyebrow{margin:0 0 12px;padding:0;background:transparent;color:var(--ui-muted, #73757e);font-size:12px;line-height:16px}.portal-legal h1,.portal-state-panel h1{margin:0 0 24px;color:var(--ui-ink, #25262c);font-size:24px;line-height:32px;font-weight:600}.portal-legal h2{margin:32px 0 12px;color:var(--ui-ink, #25262c);font-size:18px;line-height:28px;font-weight:600}.portal-legal p{margin:16px 0;color:var(--ui-ink, #25262c);font-size:16px;line-height:24px;text-wrap:pretty;overflow-wrap:anywhere}.portal-legal .portal-button{margin-top:24px}.portal-state-page{width:100%;max-width:680px;padding:40px 0 64px}.portal-state-panel{display:grid;justify-items:start;gap:16px;padding:32px;border:1px solid var(--ui-border, #e5e5e1);border-radius:12px;background:var(--ui-surface, #fff);color:var(--ui-ink, #25262c)}.portal-state-panel h1{margin:0}.portal-state-panel>.MuiAlert-root{width:100%}.portal-studio-shell{display:flex;flex-direction:column;min-height:100svh;background:var(--ui-bg, #f6f6f4);color:var(--ui-ink, #25262c);font-family:Manrope,Microsoft YaHei,sans-serif}.portal-studio-shell>.portal-studio-bar{max-width:none;margin:0;padding:16px 24px;background:var(--ui-surface, #fff)}.portal-studio-content{flex:1;min-width:0}.portal-studio-error{padding:16px 24px 0}.portal-studio-shell>.portal-footer{max-width:none;margin:0;padding:16px 24px}.portal-header a:focus-visible,.portal-header button:focus-visible,.portal-login a:focus-visible,.portal-login button:focus-visible,.portal-footer a:focus-visible,.portal-legal a:focus-visible,.portal-state-page a:focus-visible{outline:2px solid var(--ui-primary, #2b2c33);outline-offset:2px}@media(max-width:960px){.portal-header .portal-account{margin-left:8px}.portal-header .portal-account-name{display:none}.portal-login .portal-login-action{padding:32px}}@media(max-width:760px){.portal-login .portal-login-panel{grid-template-columns:minmax(0,1fr);max-width:520px}.portal-login .portal-login-brand{min-height:0;aspect-ratio:16 / 10}.portal-login .portal-login-action{padding:32px}}@media(max-width:640px){.portal-header{flex-wrap:wrap;min-height:0;margin-bottom:16px;padding:12px 0;gap:12px}.portal-header .portal-brand{gap:8px;font-size:18px;line-height:28px}.portal-header nav{width:100%;justify-content:flex-start;gap:4px}.portal-header nav>a{padding:8px}.portal-header .portal-account{margin-left:auto}.portal-header .portal-avatar{width:24px;height:24px;border-radius:8px}.portal-header .portal-text-button{padding:8px}.portal-login{min-height:0;padding:16px 0 40px}.portal-login .portal-login-action{padding:32px 24px}.portal-login .portal-login-description{margin:12px 0 24px}.portal-login .portal-login-flow{gap:16px;margin-top:24px}.portal-footer{gap:16px;padding:16px 0}.portal-footer nav{gap:16px}.portal-legal{padding:8px 0 40px}.portal-legal .portal-card{padding:24px}.portal-legal h2{margin-top:24px}.portal-state-page{padding:24px 0 40px}.portal-state-panel{padding:24px}.portal-studio-shell>.portal-studio-bar{padding:12px 16px}.portal-studio-shell>.portal-footer{padding:16px}}@media(prefers-reduced-motion:reduce){.portal-header *,.portal-login *,.portal-footer *,.portal-legal *,.portal-state-page *{animation:none!important;transition:none!important}}:root{font-family:Manrope,Microsoft YaHei,sans-serif;color:var(--ui-ink, #25262c);background:var(--ui-bg, #f6f6f4);font-synthesis:none}.app{min-height:100vh;background:var(--ui-bg, #f6f6f4);color:var(--ui-ink, #25262c);font:14px/20px Manrope,Microsoft YaHei,sans-serif}.app *,.viewer-shell *{box-sizing:border-box}.app h1,.app h2,.app h3,.app p,.app figure{margin:0}.app h1{font-size:24px;line-height:32px;font-weight:600;letter-spacing:-.02em}.app h2,.app h3{font-size:16px;line-height:24px;font-weight:600}.app p{font-size:16px;line-height:24px;text-wrap:pretty}.app a{color:inherit;text-decoration:none}.app button,.app input,.app select,.app textarea{font:inherit;color:inherit}.app button{cursor:pointer;border:0}.app button:disabled{cursor:not-allowed;opacity:.45}.MuiDialog-root button:disabled{cursor:not-allowed;opacity:.45}.app :focus-visible,.MuiDialog-root :focus-visible,.viewer-shell :focus-visible{outline:2px solid var(--ui-accent, #b95e43);outline-offset:3px}.app button,.MuiDialog-root button{transition:transform .3s cubic-bezier(.22,1,.36,1),opacity .3s cubic-bezier(.22,1,.36,1)}.app button:not(:disabled):active,.MuiDialog-root button:not(:disabled):active{transform:translateY(1px)}.app input:not([type=checkbox]),.app textarea,.app select{min-width:0;max-width:100%;border:1px solid var(--ui-border, #e5e5e1);border-radius:8px;padding:8px 12px;background:#fff;font-size:14px;line-height:20px}.app textarea{resize:vertical}.app input[type=checkbox]{accent-color:var(--ui-primary, #2b2c33)}.app .muted,.MuiDialog-root .muted{color:var(--ui-muted, #73757e)}.app .small,.MuiDialog-root .small{font-size:14px;line-height:20px}.app .topbar{min-height:72px;padding:16px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;border-bottom:1px solid var(--ui-border, #e5e5e1)}.app .brand{display:flex;align-items:center;gap:12px;font-size:20px;line-height:28px;font-weight:600;white-space:nowrap}.app .brand-symbol{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;border-radius:8px;background:var(--ui-primary, #2b2c33);color:#fff;font-size:24px;line-height:32px;letter-spacing:-.08em}.app .brand-symbol span{color:#d9b5a7}.app .brand-divider{width:1px;height:16px;margin:0 4px;background:var(--ui-border, #e5e5e1)}.app .brand-studio{color:var(--ui-muted, #73757e);font-size:14px;line-height:20px;font-weight:400}.app .beta{font-size:12px;line-height:16px;font-weight:400;color:var(--ui-muted, #73757e)}.app .topbar nav{display:flex;align-items:center;flex-wrap:wrap;gap:16px}.app .nav-button{display:inline-flex;align-items:center;gap:8px;padding:8px 0;background:transparent;font-size:14px;line-height:20px;color:var(--ui-muted, #73757e)}.app .nav-button:hover{color:var(--ui-ink, #25262c)}.app .connection{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--ui-border, #e5e5e1);border-radius:8px;background:var(--ui-panel, #f9f9f7);font-size:14px;line-height:20px;white-space:nowrap}.app .connection .status-dot,.app .connection svg{flex-shrink:0}.app .status-dot,.app .preview-status>span{width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:#748570}.app .status-dot.off{background:#b58b54}.app .count{padding:2px 4px;border-radius:4px;background:var(--ui-panel, #f9f9f7);font-size:12px;line-height:16px}.app>main{max-width:1600px;margin:0 auto;padding:32px}.app .studio-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px 24px;margin-bottom:24px}.app .studio-heading-title{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 16px;min-width:0}.app .studio-heading nav{display:flex;align-items:center;flex-wrap:wrap;gap:16px}.app .studio-heading p{color:var(--ui-muted, #73757e);font-size:14px;line-height:20px}.app .workspace{display:grid;grid-template-columns:296px minmax(0,1fr) 280px;gap:24px;align-items:start}.app .panel,.app .center-panel,.app .export-card{min-width:0;border:1px solid var(--ui-border, #e5e5e1);border-radius:12px;background:#fff}.app .left-panel,.app .journey,.app .features,.app .export-card{padding:24px}.app .panel-heading{display:flex;align-items:center;gap:8px;margin-bottom:24px}.app .step-number{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;border-radius:4px;background:var(--ui-panel, #f9f9f7);color:var(--ui-muted, #73757e);font-size:12px;line-height:16px}.app .photo-label,.app .label-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px;font-size:14px;line-height:20px}.app .photo-label span:last-child,.app .label-row>span{color:var(--ui-muted, #73757e);font-size:12px;line-height:16px}.app .upload{position:relative;display:flex;width:100%;min-height:200px;align-items:center;justify-content:center;flex-direction:column;gap:12px;overflow:hidden;padding:16px;border:1px dashed #cccac4;border-radius:8px;background:var(--ui-panel, #f9f9f7)}.app .upload:hover:not(:disabled),.app .upload.dragging{background:var(--ui-accent-soft, #f6ebe6);border-color:var(--ui-accent, #b95e43)}.app .upload strong{font-size:14px;line-height:20px;font-weight:500}.app .upload small{font-size:12px;line-height:16px;color:var(--ui-muted, #73757e)}.app .upload-illustration{width:80px;height:80px;position:relative}.app .photo-card{position:absolute;left:16px;top:8px;display:flex;align-items:center;justify-content:center;width:56px;height:64px;border:1px solid #d8d6d0;border-radius:8px;background:#fff;color:#86837b}.app .photo-card.rear{left:8px;top:0;background:#f0eeea}.app .photo-card>span{position:absolute;bottom:8px;width:24px;height:2px;background:#dedbd5}.app .upload-plus{position:absolute;right:0;bottom:0;display:grid;place-items:center;width:24px;height:24px;background:var(--ui-accent-soft, #f6ebe6);color:var(--ui-accent, #b95e43);border-radius:8px;font-size:20px;line-height:24px}.app .upload.has-photo{height:240px;padding:0}.app .upload.has-photo img{width:100%;height:100%;object-fit:contain}.app .replace-photo{position:absolute;right:8px;bottom:8px;display:flex;align-items:center;gap:4px;padding:4px 8px;border:1px solid var(--ui-border, #e5e5e1);border-radius:4px;background:#fffffff0;font-size:12px;line-height:16px}.app .upload-tip{display:flex;align-items:flex-start;gap:8px;margin-top:12px;font-size:12px;line-height:16px;color:var(--ui-muted, #73757e)}.app .upload-tip svg{flex:0 0 auto}.app .section-line{height:1px;background:var(--ui-border, #e5e5e1);margin:24px 0}.app .ratio-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:24px}.app .ratio-options>button{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 4px;border:1px solid var(--ui-border, #e5e5e1);border-radius:8px;background:#fff}.app .ratio-options>button.active{border-color:#bbb8b0;background:var(--ui-panel, #f9f9f7)}.app .ratio-options strong{font-size:12px;line-height:16px;font-weight:500}.app .ratio-options small{color:var(--ui-muted, #73757e);font-size:12px;line-height:16px}.app .ratio-check{position:absolute;top:4px;right:4px;color:var(--ui-accent, #b95e43)}.app .mini-person{display:block;width:24px;height:40px;position:relative}.app .mini-person i{position:absolute;width:16px;height:16px;top:0;left:4px;border-radius:8px;background:#ccc9c0}.app .mini-person b{position:absolute;width:12px;height:16px;top:16px;left:6px;border-radius:4px;background:#bcb9b0}.app .mini-person b:before,.app .mini-person b:after{content:"";position:absolute;top:0;width:4px;height:16px;border-radius:4px;background:#ccc9c0}.app .mini-person b:before{left:-4px}.app .mini-person b:after{right:-4px}.app .mini-person em{position:absolute;bottom:0;left:8px;width:4px;height:12px;border-radius:4px;background:#bcb9b0}.app .mini-person em:last-child{left:16px}.app .ratio-0 i{width:20px;height:20px;left:2px}.app .ratio-0 b{top:20px}.app .ratio-2 i{width:12px;height:12px;left:6px}.app .ratio-2 b{top:12px}.app .height-options{display:flex;gap:8px;margin-bottom:16px}.app .height-options>button{flex:1;min-height:40px;padding:8px;border:1px solid var(--ui-border, #e5e5e1);border-radius:8px;background:#fff;font-size:14px;line-height:20px}.app .height-options>button.active{border-color:var(--ui-primary, #2b2c33);background:var(--ui-panel, #f9f9f7)}.app .height-options span{margin-left:4px;color:var(--ui-muted, #73757e);font-size:12px}.app .base-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px;font-size:14px;line-height:20px}.app .base-toggle>span{display:flex;align-items:center;gap:8px}.app .likeness-note{display:flex;gap:8px;padding:16px;margin-bottom:16px;border-radius:8px;background:var(--ui-panel, #f9f9f7);color:var(--ui-muted, #73757e)}.app .likeness-note>svg{flex:0 0 auto}.app .likeness-note strong{font-size:14px;line-height:20px;color:var(--ui-ink, #25262c)}.app .likeness-note p{font-size:12px;line-height:16px;margin-top:8px}.app .studio-likeness-note{margin:0 0 16px;color:var(--ui-muted, #73757e);font-size:12px;line-height:20px}.app .studio-likeness-note summary{cursor:pointer}.app .studio-likeness-note p{margin-top:8px;font-size:12px;line-height:20px}:where(.app,.MuiDialog-root,.boot) .primary,:where(.app,.MuiDialog-root,.boot) .secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 12px;border:1px solid var(--ui-border, #e5e5e1);border-radius:8px;font:600 14px/20px Manrope,Microsoft YaHei,sans-serif;cursor:pointer;text-align:center;text-decoration:none}:where(.app,.MuiDialog-root,.boot) .primary{background:var(--ui-primary, #2b2c33);border-color:var(--ui-primary, #2b2c33);color:#fff}:where(.app,.MuiDialog-root,.boot) .primary:hover:not(:disabled){background:#404149}:where(.app,.MuiDialog-root,.boot) .secondary{background:#fff;color:var(--ui-ink, #25262c)}:where(.app,.MuiDialog-root,.boot) .secondary:hover:not(:disabled){background:var(--ui-panel, #f9f9f7);border-color:#c7c7c1}:where(.app,.MuiDialog-root,.boot) .full{width:100%}.app .generate{width:100%;min-height:48px}.app .compare-all{margin-top:12px}.app .cost-note{margin-top:12px;font-size:12px;line-height:16px;color:var(--ui-muted, #73757e)}.app .inline-error,.MuiDialog-root .inline-error{color:#994f3d;padding:12px;border:1px solid #ead9d3;border-radius:8px;background:#fbf3ef;font-size:14px;line-height:20px;overflow-wrap:anywhere;margin-top:12px}.app .center-panel{overflow:hidden}.app .preview-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 24px;border-bottom:1px solid var(--ui-border, #e5e5e1)}.app .preview-tabs{display:flex;align-items:center;gap:4px;padding:4px;border-radius:8px;background:var(--ui-panel, #f9f9f7)}.app .preview-tabs button{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 12px;border-radius:4px;background:transparent;color:var(--ui-muted, #73757e);font-size:14px;line-height:20px}.app .preview-tabs button.active{background:#fff;color:var(--ui-ink, #25262c);box-shadow:0 1px 4px #25262c0a}.app .preview-status{display:inline-flex;align-items:center;gap:8px;font-size:12px;line-height:16px;color:var(--ui-muted, #73757e)}.app .preview-stage{height:600px;position:relative;background:var(--ui-panel, #f9f9f7)}.app .stage-caption{position:absolute;left:24px;top:24px;z-index:1;pointer-events:none}.app .stage-caption>span{font-size:12px;line-height:16px;color:var(--ui-muted, #73757e)}.app .stage-caption h3{margin-top:4px;font-weight:500}.app .stage-footnote{position:absolute;left:24px;right:24px;bottom:80px;display:flex;align-items:center;gap:8px;pointer-events:none;font-size:12px;line-height:16px;color:var(--ui-muted, #73757e)}.app .stage-footnote>span{margin-left:auto}.app .preview-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 24px;border-top:1px solid var(--ui-border, #e5e5e1)}.app .preview-bottom strong{display:block;font-size:14px;line-height:20px;font-weight:500;margin-top:4px}.app .small-label,.app .stage-kind{font-size:12px;line-height:16px;color:var(--ui-muted, #73757e)}.app .right-panel{display:grid;gap:24px;min-width:0}.app .studio-process>summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;list-style:none;font-size:14px;line-height:20px;font-weight:600}.app .studio-process>summary::-webkit-details-marker{display:none}.app .studio-process>summary:after{content:"+";color:var(--ui-muted, #73757e)}.app .studio-process[open]>summary:after{content:"−"}.app .studio-process>.panel-heading{margin:24px 0 16px}.app .steps{margin:24px 0 0;padding:0;list-style:none}.app .steps li{display:flex;align-items:flex-start;gap:12px;padding-bottom:24px;color:var(--ui-muted, #73757e)}.app .steps li:last-child{padding-bottom:0}.app .steps li.current{color:var(--ui-ink, #25262c)}.app .step-icon{display:grid;place-items:center;width:24px;height:24px;flex:0 0 auto;background:var(--ui-panel, #f9f9f7);border:1px solid var(--ui-border, #e5e5e1);border-radius:8px}.app .steps li.current .step-icon{color:var(--ui-accent, #b95e43);background:var(--ui-accent-soft, #f6ebe6);border-color:#e6cec2}.app .steps strong{display:block;font-size:14px;line-height:20px;font-weight:500}.app .steps p{font-size:12px;line-height:16px;margin-top:4px}.app .task-progress{display:flex;align-items:flex-start;gap:8px;margin-top:16px;padding:12px;background:var(--ui-panel, #f9f9f7);border-radius:8px;font-size:12px;line-height:20px;color:var(--ui-muted, #73757e)}.app .task-progress>div{flex:0 0 auto;width:8px;height:8px;margin-top:4px;border-radius:50%;background:var(--ui-accent, #b95e43)}.app .trait-tags{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.app .trait-tags span{padding:4px 8px;border-radius:4px;background:var(--ui-panel, #f9f9f7);font-size:12px;line-height:16px;color:var(--ui-muted, #73757e)}.app .features dl{margin:0}.app .features dl>div{margin-top:16px}.app .features dt{font-size:12px;line-height:16px;color:var(--ui-muted, #73757e)}.app .features dd{margin:4px 0 0;font-size:14px;line-height:20px}.app .inferred{font-size:12px;line-height:20px;color:var(--ui-muted, #73757e);margin-top:16px}.app .text-button{display:inline-flex;align-items:center;gap:8px;padding:8px 0;border:0;border-radius:4px;background:none;font-size:14px;line-height:20px;color:var(--ui-accent, #b95e43)}.app .features-empty{min-height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--ui-muted, #73757e);text-align:center}.app .features-empty span{font-size:12px;line-height:16px}.app .export-title{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:16px}.app .file-type{margin-left:auto;font-size:12px;line-height:16px;color:var(--ui-muted, #73757e)}.app .export-card>p{font-size:14px;line-height:20px;color:var(--ui-muted, #73757e);margin:12px 0}.app .export-check{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:16px 0;font-size:12px;line-height:16px}.app .export-check>span{width:4px;height:4px;border-radius:50%;background:#cbcbc5}.app .export-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.app .export-buttons>*{flex:1}.app .reference-download{display:inline-flex;align-items:center;gap:8px;margin-top:16px;color:var(--ui-muted, #73757e);font-size:12px;line-height:16px}.app .reference-download:hover{color:var(--ui-ink, #25262c);text-decoration:underline}.app .print-note{font-size:12px;line-height:20px;color:var(--ui-muted, #73757e);margin-top:16px}.app .bottom-note{margin-top:24px;color:var(--ui-muted, #73757e);font-size:12px;line-height:16px}.app .bottom-note>span{display:flex;align-items:center;gap:8px}.app>footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 32px;color:var(--ui-muted, #73757e);font-size:12px;line-height:16px}.viewer-shell{position:relative;width:100%;height:100%;min-width:0;overflow:hidden}.viewer-shell .canvas{position:absolute;inset:0}.viewer-shell .canvas canvas{display:block;width:100%;height:100%}.viewer-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--ui-muted, #73757e);font:14px/20px Manrope,Microsoft YaHei,sans-serif;background:var(--ui-panel, #f9f9f7)}.viewer-tools{position:absolute;left:24px;right:24px;bottom:24px;display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:none}.angle-tools,.view-actions{pointer-events:auto;display:flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--ui-border, #e5e5e1);border-radius:8px;background:#ffffffed;box-shadow:0 4px 16px #25262c08}.viewer-tools button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:32px;padding:8px 12px;border:0;border-radius:4px;background:transparent;color:var(--ui-ink, #25262c);cursor:pointer;font:14px/20px Manrope,Microsoft YaHei,sans-serif}.viewer-tools button:hover{background:var(--ui-panel, #f9f9f7)}.view-actions button{width:32px;height:32px;padding:4px}.view-actions button.selected{background:var(--ui-accent-soft, #f6ebe6);color:var(--ui-accent, #b95e43)}.loader{display:block;width:24px;height:24px;border:2px solid var(--ui-border, #e5e5e1);border-top-color:var(--ui-accent, #b95e43);border-radius:50%;animation:studio-spin 1s linear infinite}@keyframes studio-spin{to{transform:rotate(360deg)}}.MuiDialog-root .dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:20px;line-height:28px;font-weight:600}.MuiDialog-root .icon-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:4px;border:0;border-radius:8px;background:var(--ui-panel, #f9f9f7);color:var(--ui-muted, #73757e);cursor:pointer}.MuiDialog-root .settings-section{margin-top:24px}.MuiDialog-root .settings-section h3{font-size:16px;line-height:24px;font-weight:600;margin:0 0 16px}.MuiDialog-root .settings-section h3 .tiny-status{display:inline-flex;align-items:center;gap:4px;margin-left:8px;color:var(--ui-muted, #73757e);font-size:12px;line-height:16px;font-weight:400}.MuiDialog-root .field-row{display:flex;gap:16px;margin-top:16px}.MuiDialog-root .field-row>*{min-width:0}.MuiDialog-root .dialog-footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:24px}.MuiDialog-root .model-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.MuiDialog-root .model-list span{padding:4px 8px;border:1px solid var(--ui-border, #e5e5e1);border-radius:4px;background:var(--ui-panel, #f9f9f7);font-size:12px;line-height:16px;overflow-wrap:anywhere}.MuiDialog-root .history-item{display:flex;align-items:center;gap:12px;padding:16px 0}.MuiDialog-root .history-item img{width:48px;height:64px;object-fit:cover;border-radius:8px;background:var(--ui-panel, #f9f9f7)}.MuiDialog-root .history-item>button:not(.icon-button){flex:1;display:grid;gap:8px;min-width:0;padding:8px;border:0;border-radius:8px;background:transparent;text-align:left;cursor:pointer}.MuiDialog-root .history-item strong{font-size:14px;line-height:20px;font-weight:500}.MuiDialog-root .history-item span{font-size:12px;line-height:16px;color:var(--ui-muted, #73757e)}.MuiDialog-root .help-content p{font-size:14px;line-height:24px;color:var(--ui-muted, #73757e);margin:0 0 16px}.boot{max-width:520px;margin:80px auto;padding:32px;border:1px solid var(--ui-border, #e5e5e1);border-radius:12px;background:#fff}.boot h2{font-size:24px;line-height:32px}.boot p{font-size:16px;line-height:24px;color:var(--ui-muted, #73757e);margin:16px 0 24px}@media(max-width:1280px){.app>main{padding:24px}.app .workspace{grid-template-columns:272px minmax(0,1fr)}.app .right-panel{grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.app .preview-header{flex-wrap:wrap;padding:16px}}@media(max-width:900px){.app .topbar{padding:16px 24px;flex-wrap:wrap;gap:16px}.app .topbar nav{gap:16px}.app .brand-divider,.app .brand-studio{display:none}.app .right-panel{grid-template-columns:1fr}}@media(max-width:640px){.app .topbar{padding:16px}.app .brand{font-size:18px;line-height:28px}.app .topbar nav{width:100%;justify-content:space-between;gap:8px}.app .nav-button{font-size:12px;line-height:16px}.app .connection{padding:8px;font-size:12px;line-height:16px}.app .connection>span:not(.status-dot){max-width:none}.app>main{padding:24px 16px}.app .studio-heading{align-items:flex-start;flex-direction:column;gap:16px;margin-bottom:16px}.app .studio-heading nav{width:100%;gap:8px 16px}.app .studio-heading .nav-button{padding:8px 0}.app .studio-heading .connection{margin-left:auto}.app .workspace{grid-template-columns:1fr;gap:16px}.app .left-panel,.app .journey,.app .features,.app .export-card{padding:16px}.app.studio-has-job .workspace .center-panel{grid-row:1}.app .right-panel{grid-column:auto;gap:16px}.app .preview-header{gap:12px}.app .preview-tabs button{padding:8px;font-size:14px;line-height:20px}.app .preview-stage{height:480px}.app .stage-caption{left:16px;top:16px}.app .stage-footnote{left:16px;right:16px;bottom:80px}.app .stage-footnote>span{display:none}.app .preview-bottom{padding:16px}.app .stage-kind{display:none}.app>footer{padding:24px 16px}.viewer-tools{left:12px;right:12px;bottom:12px;gap:8px}.viewer-tools button{padding:8px;font-size:12px;line-height:16px}.view-actions button{padding:4px}.MuiDialog-root .field-row{flex-direction:column}.MuiDialog-root .dialog-heading{font-size:18px;line-height:28px}.boot{margin:32px 16px;padding:24px}}@media(prefers-reduced-motion:reduce){.app *,.app *:before,.app *:after,.MuiDialog-root *,.viewer-shell *{animation:none!important;transition:none!important}.app button:not(:disabled):active,.MuiDialog-root button:not(:disabled):active{transform:none}}@font-face{font-family:Manrope;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/manrope-latin-B6Sd7_ZV.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ui-bg: #f6f6f4;--ui-surface: #ffffff;--ui-panel: #f9f9f7;--ui-ink: #25262c;--ui-muted: #73757e;--ui-border: #e5e5e1;--ui-primary: #2b2c33;--ui-accent: #b95e43;--ui-accent-soft: #f6ebe6;--ui-focus: #915136;--ui-font: Manrope, "Microsoft YaHei", sans-serif;--ui-curve: cubic-bezier(.22,1,.36,1);font-family:var(--ui-font);color:var(--ui-ink);background:var(--ui-bg);font-size:14px;font-synthesis:none;font-weight:400;-webkit-font-smoothing:antialiased}body{margin:0;min-width:320px;background:var(--ui-bg)}*,*:before,*:after{box-sizing:border-box}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{transition:transform .3s var(--ui-curve),opacity .3s var(--ui-curve)}button{cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{outline:2px solid var(--ui-focus);outline-offset:4px}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}::selection{background:#eddbd2;color:var(--ui-ink)}.portal-skip{position:fixed;top:16px;left:24px;z-index:10000;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border-radius:8px;background:var(--ui-primary);color:#fff!important;text-decoration:none}.portal-skip:focus{width:auto;height:auto;padding:8px 12px;overflow:visible;clip-path:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}button:active,button:hover,a:active{transform:none!important}}
