@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.contents{display:contents}.grid{display:grid}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, )}.resize{resize:both}.blur{--tw-blur:blur(8px);filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}}:root{color:#c5cfd8;font-synthesis:none;--bg:#11171e;--panel:#18212a;--line:#2a3541;--muted:#778895;--text:#dce5eb;--accent:#8ad1c2;--accent-strong:#6bb7a8;--amber:#c4a375;--mono:"Cascadia Code","Consolas",monospace;color-scheme:dark;background:#11171e;font-family:Microsoft YaHei UI,PingFang SC,Noto Sans SC,sans-serif;font-size:13px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{opacity:.35;cursor:not-allowed}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:4px}button{transition:background .16s,color .16s,border-color .16s}button:hover:not(:disabled){color:#f1f6f7}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h2{font-size:13px;font-weight:500}h3{font-weight:500}img,svg{vertical-align:middle}small{font-size:11px}input[type=checkbox]{accent-color:var(--accent)}[hidden]{display:none!important}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-thumb{background:#35424e;border-radius:4px}::-webkit-scrollbar-track{background:0 0}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.muted{color:var(--muted)}.eyebrow{font:10px var(--mono);letter-spacing:2px;color:#88a4ac}.text-button{color:#97a9b6;white-space:nowrap;justify-content:center;align-items:center;gap:7px;padding:5px 0;font-size:12px;display:inline-flex}.text-button:hover:not(:disabled){color:var(--accent)}.icon-button{color:#7f94a3;border-radius:4px;justify-content:center;align-items:center;width:25px;height:25px;display:inline-flex}.icon-button:hover{background:#2a3540}.button{white-space:nowrap;border:1px solid #35424d;border-radius:5px;justify-content:center;align-items:center;gap:8px;height:35px;padding:0 14px;font-size:12px;font-weight:500;line-height:1.4;display:inline-flex}.button.primary{background:var(--accent);border-color:var(--accent);color:#142d2c}.button.primary:hover:not(:disabled){color:#112826;background:#a2e0d4}.button.quiet{color:#c4d0d9;background:#202c36}.button.quiet:hover:not(:disabled){background:#2a3945}.count-badge{font:10px var(--mono);color:#96abb6;background:#2b3943;border-radius:4px;padding:2px 5px}.status-dot{background:#8ac9b4;border-radius:50%;flex:none;width:5px;height:5px;display:inline-block;box-shadow:0 0 7px #8ac9b425}.app-shell{flex-direction:column;height:100dvh;min-height:620px;display:flex;overflow:hidden}.app-header{border-bottom:1px solid var(--line);z-index:15;background:#141c24;align-items:center;gap:22px;height:74px;min-height:74px;padding:0 22px;display:flex}.brand{flex:none;align-items:center;gap:11px;display:flex}.brand-mark{width:37px;height:41px;color:var(--accent);display:flex}.brand-mark svg{width:100%;height:100%}.brand-type{letter-spacing:4px;color:#e0ebe9;font-family:STSong,SimSun,serif;font-size:25px;font-weight:700;line-height:1.1}.brand-type small{font:7px var(--mono);letter-spacing:1.5px;color:#829a9b;margin-top:6px;display:block}.header-divider{background:#34404b;width:1px;height:27px}.project-description{letter-spacing:.7px;color:#8ea0af;white-space:nowrap;align-items:center;gap:10px;font-size:12px;display:flex}.demo-tag{font:8px var(--mono);color:#92aaa9;letter-spacing:1px;border:1px solid #3c4b55;border-radius:3px;padding:3px 5px}.main-nav{align-self:stretch;gap:28px;margin-left:12px;display:flex}.main-nav button{white-space:nowrap;color:#8799a8;align-items:center;gap:9px;font-size:13px;display:flex;position:relative}.main-nav button.active{color:var(--accent)}.main-nav button.active:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:0;left:0;right:0}.nav-demo-dot{background:#c6a777;border-radius:50%;width:4px;height:4px;margin-left:-3px}.header-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.project-title{color:#788c9c;text-overflow:ellipsis;white-space:nowrap;max-width:170px;margin-right:9px;font-size:11px;overflow:hidden}.project-title>i{background:#ceae74;border-radius:50%;width:4px;height:4px;margin-right:7px;display:inline-block}.app-content{flex:1;min-height:0}.studio-shell{grid-template-rows:minmax(0,1fr) 30px;grid-template-columns:70px minmax(0,1fr) 286px;height:100%;display:grid}.toolrail{border-right:1px solid var(--line);z-index:2;background:#141d26;flex-direction:column;grid-row:1;gap:14px;padding:18px 9px;display:flex}.tool-group{border-bottom:1px solid #2c3943;flex-direction:column;gap:7px;padding-bottom:16px;display:flex}.toolrail button{color:#8396a7;border-radius:5px;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:50px;height:55px;font-size:10px;display:flex}.toolrail button:hover:not(:disabled){color:#c4ded7;background:#23313d}.toolrail button.active{color:#9cdbcd;background:#26433f;box-shadow:inset 0 0 0 1px #4d796b65}.rail-bottom{flex-direction:column;gap:9px;margin-top:auto;display:flex}.rail-bottom button:last-child{height:32px}.studio-main{background:#1b2632;flex-direction:column;min-width:0;min-height:0;display:flex}.canvas-toolbar{background:#1a242f;border-bottom:1px solid #303c4870;justify-content:space-between;align-items:center;gap:12px;height:49px;min-height:49px;padding:0 22px;display:flex}.workspace-breadcrumb{color:#788c9c;align-items:center;gap:10px;min-width:0;font-size:11px;display:flex}.workspace-breadcrumb strong{color:#b8c8d2;text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-weight:400;overflow:hidden}.canvas-toolbar-actions{align-items:center;gap:20px;display:flex}.select-wrap{color:#a9bac7;align-items:center;gap:8px;font-size:11px;display:flex;position:relative}.select-wrap select{appearance:none;cursor:pointer;background:0 0;border:0;max-width:150px;padding:6px 18px 6px 0}.select-wrap svg{pointer-events:none;position:absolute;right:0}.select-wrap option{color:#cbd8de;background:#1a242f}.canvas-toolbar-actions .text-button{font-size:11px}.viewport{background:radial-gradient(at 48% 46%,#354452 0,#293644 34%,#1e2a36,#1a2531);flex:1;min-height:320px;position:relative;overflow:hidden}.viewport:before{pointer-events:none;content:"";opacity:.26;background-image:radial-gradient(#a8b7c111 .6px,#0000 .6px);background-size:7px 7px;position:absolute;inset:0}.three-host{position:absolute;inset:0}.three-host canvas{touch-action:none;cursor:crosshair;outline-offset:-3px;width:100%;height:100%;display:block}.orbit-mode .three-host canvas{cursor:grab}.orbit-mode .three-host canvas:active{cursor:grabbing}.scene-heading{pointer-events:none;z-index:1;position:absolute;top:31px;left:30px}.scene-heading .eyebrow{color:#829da8;letter-spacing:1.5px;font-size:9px}.scene-heading h1{color:#d9e1e5;letter-spacing:3px;margin:12px 0 10px;font-family:STSong,SimSun,serif;font-size:27px;font-weight:300}.scene-heading h1 span{color:#9db8ba}.scene-heading p{letter-spacing:1px;color:#7e94a2;font-size:10px}.live-indicator{color:#91aaa9;pointer-events:none;align-items:center;gap:7px;font-size:10px;display:flex;position:absolute;top:28px;right:25px}.live-indicator>i{background:#8bceb9;border-radius:50%;width:5px;height:5px}.live-indicator>span{font:8px var(--mono);color:#5f7888;border:1px solid #4b65733d;border-radius:3px;margin-left:4px;padding:3px 4px}.scene-label{pointer-events:none;white-space:nowrap;align-items:center;gap:14px;display:flex;position:absolute;top:52%;left:71%}.label-line{background:linear-gradient(90deg,#91b3b700,#91b3b790);width:50px;height:1px;position:relative}.label-line:after{content:"";border:1px solid #8aaca8;border-radius:50%;width:5px;height:5px;position:absolute;top:-2px;right:0}.scene-label strong{letter-spacing:2px;color:#bccdd2;font-size:12px;font-weight:400}.scene-label small{color:#6e8999;letter-spacing:.6px;margin-top:7px;font-size:9px;display:block}.viewport-controls{background:#1b2730a3;border:1px solid #45576670;border-radius:5px;align-items:center;height:34px;padding:0 3px;display:flex;position:absolute;bottom:66px;left:26px}.viewport-controls button{color:#8ca3b4;justify-content:center;align-items:center;width:34px;height:29px;display:flex}.viewport-controls button:hover{color:#bce5dc}.viewport-controls>span{background:#3b4d5b;width:1px;height:13px}.axis-gizmo{width:54px;height:60px;font:9px var(--mono);color:#a7b6bc;pointer-events:none;position:absolute;bottom:65px;right:30px}.axis-gizmo i{background:#94aaaf;border-radius:50%;width:5px;height:5px;position:absolute;top:27px;left:24px}.axis-y{color:#93b6a0;position:absolute;top:0;left:23px}.axis-y:after{content:"";background:#789c87;width:1px;height:14px;position:absolute;top:14px;left:3px}.axis-x{color:#b38481;position:absolute;top:37px;right:0}.axis-x:before{content:"";transform-origin:0;background:#9c7470;width:19px;height:1px;position:absolute;top:-8px;left:-21px;transform:rotate(27deg)}.axis-z{color:#819eb6;position:absolute;top:37px;left:0}.axis-z:after{content:"";transform-origin:0;background:#728da2;width:19px;height:1px;position:absolute;top:0;left:8px;transform:rotate(-27deg)}.view-badge{color:#7893a3;pointer-events:none;white-space:nowrap;align-items:center;gap:7px;font-size:9px;display:flex;position:absolute;bottom:76px;left:50%;transform:translate(-50%)}.view-badge>span{color:#526b7b;margin:0 3px}.canvas-hint{pointer-events:none;color:#748b9d;justify-content:center;align-items:center;gap:22px;font-size:10px;display:flex;position:absolute;bottom:20px;left:0;right:0}.canvas-hint>span{align-items:center;gap:6px;display:flex}kbd{font:9px var(--mono);color:#9bb0bc;background:#23333f60;border:1px solid #49617250;border-radius:3px;padding:2px 4px}.scene-error{z-index:5;text-align:center;background:#18242ef0;border:1px solid #ad7852;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:18px;min-width:260px;padding:24px;font-size:13px;line-height:1.8;display:flex;position:absolute;inset:30%}.practice-strip{background:#1a242d;border-top:1px solid #303d47;align-items:center;gap:16px;height:85px;min-height:85px;padding:0 25px;display:flex}.practice-icon{color:#8cbcaf;background:#273c3c4d;border:1px solid #4c626141;border-radius:6px;flex:none;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.practice-copy>strong{color:#c9d6db;align-items:center;gap:12px;font-size:12px;font-weight:500;display:flex}.practice-copy>strong>span{color:#8dafa7;border:1px solid #38544d;border-radius:3px;padding:2px 5px;font-size:9px;font-weight:400}.practice-copy p{color:#738998;margin-top:8px;font-size:10px}.practice-progress{flex:none;width:150px;margin-left:auto}.practice-progress>div:first-child{color:#91a6b1;justify-content:space-between;margin-bottom:10px;font-size:10px;display:flex}.practice-progress strong{font:10px var(--mono);color:#91caba}.practice-progress small{color:#536d7c;margin-left:6px;font-size:9px}.progress-track{background:#2c3c45;border-radius:4px;width:100%;height:3px;overflow:hidden}.progress-track>i{background:#76bcac;height:100%;transition:width .3s;display:block}.history-button{margin:0 5px;font-size:11px}.practice-strip>.button{height:32px;font-size:11px}.properties{border-left:1px solid var(--line);background:#17212b;flex-direction:column;min-height:0;display:flex}.properties-tabs{border-bottom:1px solid var(--line);gap:29px;height:49px;min-height:49px;padding:0 19px;display:flex}.properties-tabs>button{color:#7d91a2;align-items:center;gap:7px;font-size:11px;display:flex;position:relative}.properties-tabs>button.active{color:#a5d4c7}.properties-tabs>button.active:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:-1px;left:0;right:0}.properties-scroll{flex:1;min-height:0;overflow-y:auto}.property-section{border-bottom:1px solid var(--line);padding:18px 20px 19px}.section-label{justify-content:space-between;align-items:center;min-height:19px;margin-bottom:14px;display:flex}.section-label h2{letter-spacing:.5px;color:#c8d4dc;font-size:11px}.section-label>span{font:8px var(--mono);letter-spacing:1px;color:#5c7486}.section-label h2 small{font:9px var(--mono);color:#6a8391;margin-left:5px}.brush-preset-grid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.brush-preset{text-align:left;background:#1b2834;border:1px solid #2e3c49;border-radius:5px;height:68px;padding:6px 11px 9px;position:relative}.brush-preset.selected{background:#243b3c;border-color:#5b9688}.brush-preset>span{color:#8ea4b1;font-size:10px}.brush-preset.selected>span{color:#b4d7cb}.brush-preset>svg{color:#8bd2bb;position:absolute;bottom:10px;right:9px}.brush-art{color:#92b3bc;align-items:center;height:33px;display:flex}.brush-art svg{width:100%;height:25px}.brush-preset.selected .brush-art{color:#a9d6c6}.brush-preview{background:linear-gradient(135deg,#e4e3d6,#cdd3c9);border-radius:4px;height:70px;margin-top:12px;position:relative;overflow:hidden}.brush-preview canvas{width:100%;height:78px;margin-top:-13px;display:block}.brush-preview>span{color:#6d8585;letter-spacing:.3px;font-size:8px;position:absolute;bottom:7px;right:8px}.pigment-section{padding-top:17px}.color-swatches{justify-content:space-between;gap:7px;margin:4px 0 15px;display:flex}.color-swatches>button{background:var(--swatch);border-radius:50%;flex:none;width:19px;height:19px;position:relative;box-shadow:inset 0 0 0 1px #ffffff18}.color-swatches>button.selected:after{content:"";border:1px solid #84bcaf;border-radius:50%;position:absolute;inset:-4px}.current-color{background:#1b2833;border:1px solid #30414e;border-radius:4px;align-items:center;gap:10px;padding:8px 10px;display:flex}.current-color>div>strong{font:10px var(--mono);color:#adc2c9}.current-color small{color:#6d8698;letter-spacing:.5px;margin-top:4px;font-size:8px;display:block}.current-color>svg{color:#759ba7;margin-left:auto}.color-picker{cursor:pointer;flex:none;width:27px;height:27px;display:block;position:relative}.color-picker input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.color-picker>span{pointer-events:none;border:1px solid #c7e0df30;border-radius:3px;width:100%;height:100%;display:block}.parameters{padding-top:16px}.parameters .section-label{margin-bottom:10px}.range-field{margin-bottom:14px;display:block}.range-field>span{color:#8da3b2;justify-content:space-between;align-items:center;margin-bottom:9px;font-size:10px;display:flex}.range-field strong{color:#b9cfd4;font:10px var(--mono);font-weight:400}.range-field strong small{color:#627f91;font:9px var(--mono);margin-left:4px}input[type=range]{appearance:none;background:linear-gradient(to right,#8ccbbb var(--range,55%),#354754 var(--range,55%));cursor:pointer;width:100%;height:3px;accent-color:var(--accent);border-radius:4px;margin:7px 0 4px;display:block}input[type=range]::-webkit-slider-thumb{appearance:none;background:#b1e0d0;border:2px solid #253b3d;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 1px #7db3a5}input[type=range]::-moz-range-thumb{background:#b1e0d0;border:1px solid #7db3a5;border-radius:50%;width:7px;height:7px}.advanced-toggle{color:#708f9e;justify-content:space-between;align-items:center;width:100%;margin-top:18px;padding:0 0 3px;font-size:9px;display:flex}.advanced-settings{margin-top:17px}.pressure-note{color:#668996;align-items:flex-start;gap:6px;margin:13px 0 -5px;font-size:8px;line-height:1.7;display:flex}.pressure-note>svg{flex:none;margin-top:1px}.layer-section{padding-top:15px}.layer-list{flex-direction:column;gap:4px;margin:0 -7px;display:flex}.layer-row{border:1px solid #0000;border-radius:4px;align-items:center;gap:9px;padding:7px 8px;display:flex}.layer-row.selected{background:#263944;border-color:#3d5b64}.layer-visibility{color:#74929f;flex:none;padding:3px 0}.layer-select{text-align:left;flex:1;align-items:center;gap:9px;min-width:0;display:flex}.layer-thumbnail{color:#8b9da1;background-color:#a5b7b0;background-image:conic-gradient(#c7d4cb 25%,transparent 0 50%,#c7d4cb 0 75%,transparent 0);background-size:8px 8px;border:1px solid #607482;border-radius:3px;flex:none;justify-content:center;align-items:center;width:28px;height:29px;display:flex}.layer-thumbnail.decorated{color:#37647e;background:#d4dcce}.layer-select strong{color:#b9cdd3;text-overflow:ellipsis;white-space:nowrap;max-width:155px;font-size:10px;font-weight:400;display:block;overflow:hidden}.layer-select small{color:#71909f;margin-top:6px;font-size:8px;display:block}.layer-opacity{margin-top:16px;margin-bottom:1px}.layer-opacity input{background:#354754}.model-info{border-bottom:0;padding-top:15px}.model-info .section-label{color:#7392a2;margin-bottom:10px}.model-info dl{flex-direction:column;gap:10px;margin:0;font-size:9px;display:flex}.model-info dl>div{justify-content:space-between;gap:12px;display:flex}.model-info dt{color:#5f7c8f}.model-info dd{color:#95acb8;text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:160px;margin:0;overflow:hidden}.model-info dd>span{color:#7db39f;font-size:8px}.studio-status{border-top:1px solid var(--line);color:#728d9e;background:#131c24;grid-column:1/-1;justify-content:space-between;align-items:center;gap:20px;padding:0 17px;font-size:9px;display:flex}.studio-status>span{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:7px;display:flex;overflow:hidden}.studio-status>div{white-space:nowrap;align-items:center;gap:23px;display:flex}.pressure-meter{align-items:center;gap:6px;display:flex}.pressure-meter>b{font:9px var(--mono);color:#94b8b5}.pressure-meter>i{background:linear-gradient(90deg,#75b9a9 var(--pressure),#2e424e var(--pressure));border-radius:2px;width:39px;height:3px;display:inline-block}.status-saved{align-items:center;gap:6px;display:flex}.status-saved>i{background:#648c7f;border-radius:50%;width:4px;height:4px}.status-saved>i.unsaved{background:#c0a36f}.modal-backdrop{z-index:40;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#080f17b8;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.dialog{background:#1a2631;border:1px solid #3d505a;border-radius:12px;width:480px;max-width:100%;max-height:90dvh;padding:34px;position:relative;overflow:auto;box-shadow:0 25px 100px #0006}.dialog .eyebrow{color:#89beb4;margin-bottom:12px;font-size:9px}.dialog h2{letter-spacing:1px;color:#e0e8e8;margin-bottom:16px;font-family:STSong,SimSun,serif;font-size:23px;font-weight:400}.dialog p{color:#8fa6b4;margin:14px 0 20px;font-size:12px;line-height:1.9}.dialog-close{color:#6f8b9d;justify-content:center;align-items:center;width:25px;height:25px;display:flex;position:absolute;top:14px;right:13px}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin:23px 0 5px;display:flex}.text-field{color:#819fae;margin:18px 0;font-size:11px;display:block}.text-field input{color:#cbdedc;outline-offset:1px;background:#15212b;border:1px solid #374f5c;border-radius:4px;width:100%;margin-top:10px;padding:10px 12px;display:block}.new-work-button{border-top:1px solid var(--line);color:#8bafa5;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:22px;padding-top:19px;font-size:12px;display:flex}.export-dialog>button:not(.dialog-close){text-align:left;color:#93b9b0;background:#22333f;border:1px solid #3b505d;border-radius:6px;align-items:center;gap:15px;width:100%;margin:10px 0 0;padding:16px;display:flex}.export-dialog>button:not(.dialog-close):hover{background:#29433f;border-color:#638d7e}.export-dialog>button>span{flex:1}.export-dialog strong{color:#d6e3e2;font-size:13px;font-weight:400;display:block}.export-dialog small{color:#72909f;margin-top:7px;font-size:10px;display:block}.help-dialog dl{border-top:1px solid var(--line);margin:23px 0;font-size:11px}.help-dialog dl>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:13px 0;display:flex}.help-dialog dd{color:#b6d2ce;margin:0;font-size:10px}.help-dialog dt{color:#96acb9}.operation-list{max-height:440px;margin:0;padding:0;list-style:none;overflow:auto}.operation-list li{border-top:1px solid var(--line);color:#a7bec8;align-items:center;gap:16px;padding:12px 0;font-size:12px;display:flex}.operation-list li>span{color:#548b80;font:10px var(--mono)}.toast-notice{z-index:100;color:#cce1dc;background:#263c42;border:1px solid #537f77;border-radius:7px;align-items:center;gap:10px;max-width:min(700px,90vw);padding:14px 17px;font-size:12px;line-height:1.7;display:flex;position:fixed;bottom:48px;left:50%;transform:translate(-50%);box-shadow:0 8px 45px #09121aaa}.toast-notice>svg{color:#8fcabb;flex:none}.toast-notice button{color:#94b8af;flex:none;margin-left:8px;display:flex}.toast-enter-active,.toast-leave-active{transition:opacity .2s,translate .2s}.toast-enter-from,.toast-leave-to{opacity:0;translate:0 8px}.quality-content{background:#151f29;overflow:auto}.quality-page{flex-direction:column;max-width:1600px;min-height:100%;margin:0 auto;padding:33px 38px 0;display:flex}.quality-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px;display:flex}.quality-heading .eyebrow{color:#6c989c;letter-spacing:1.7px;font-size:9px}.quality-heading h1{color:#d7e4e2;letter-spacing:2px;margin:9px 0 10px;font-family:STSong,SimSun,serif;font-size:28px;font-weight:400}.quality-heading h1>span{color:#729794;letter-spacing:1px;vertical-align:middle;margin-left:20px;font-family:Microsoft YaHei UI,sans-serif;font-size:11px;display:inline-block}.quality-heading p{color:#7993a4;letter-spacing:.3px;font-size:11px}.quality-heading-actions{align-items:center;gap:19px;display:flex}.simulation-badge{color:#d4b782;white-space:nowrap;background:#c4a3750c;border:1px solid #9c845751;border-radius:4px;align-items:center;gap:7px;padding:6px 9px;font-size:10px;display:inline-flex}.simulation-notice{color:#b6a079;background:#b392560b;border:1px solid #8f784f33;border-radius:5px;align-items:center;gap:13px;padding:13px 17px;font-size:10px;line-height:1.7;display:flex}.simulation-notice>svg{color:#c7a874;flex:none}.simulation-notice strong{color:#c4ac86;margin-right:16px;font-size:11px;font-weight:500}.simulation-notice span{color:#918b7f}.simulation-notice .notice-end{font:9px var(--mono);color:#8b806d;white-space:nowrap;margin-left:auto}.quality-stats{border-bottom:1px solid #2b3c49;grid-template-columns:1fr 1fr 1fr 1.3fr;margin:24px 0 26px;padding:4px 0 8px;display:grid}.quality-stats>div{border-right:1px solid #2d3d49;min-height:86px;padding:5px 27px 12px;position:relative}.quality-stats>div:first-child{padding-left:1px}.quality-stats>div:last-child{border:0}.quality-stats>div>span:first-child{color:#819eaa;font-size:11px;display:block}.quality-stats>div>span small{color:#526f82;margin-left:9px;font-size:9px}.quality-stats>div>strong{font:31px var(--mono);letter-spacing:-1px;color:#d3e1e5;margin-top:16px;font-weight:400;display:block}.quality-stats strong>small{color:#6a8796;letter-spacing:0;margin-left:9px;font:10px Microsoft YaHei UI,sans-serif}.quality-stats>div>svg{color:#406b70;position:absolute;top:45px;right:29px}.stat-note{color:#486b7e;font-size:9px;position:absolute;bottom:17px;right:25px}.defect-mini>span{margin-bottom:9px}.defect-mini>div{color:#7995a4;align-items:center;gap:14px;margin-top:6px;font-size:9px;display:flex}.defect-mini>div>span{width:73px}.defect-mini i{opacity:.7;background:#ad946c;border-radius:2px;height:4px;display:block}.defect-mini b{font:9px var(--mono);color:#a7b7bc;margin-left:auto;font-weight:400}.inspection-layout{grid-template-columns:minmax(0,1fr) 340px;gap:22px;display:grid}.inspection-image-panel,.inspection-results{background:#1b2833;border:1px solid #30424e;border-radius:7px;overflow:hidden}.panel-heading{border-bottom:1px solid #30424e;justify-content:space-between;align-items:center;gap:12px;min-height:50px;padding:13px 18px;display:flex}.panel-heading h2{color:#bfd0d7;align-items:center;gap:9px;font-size:12px;display:flex}.panel-heading h2>svg{color:#7da9a9}.tiny-label{font:8px var(--mono);letter-spacing:1px;color:#536f82}.segmented{background:#121e28;border:1px solid #314552;border-radius:5px;gap:1px;padding:3px;display:inline-flex}.segmented>button{color:#748f9f;white-space:nowrap;border-radius:3px;padding:5px 12px;font-size:10px}.segmented>button.active{color:#a3d3c3;background:#29413f}.inspection-image-stage{background:radial-gradient(at 50% 45%,#30404c,#17242f 75%);justify-content:center;align-items:center;height:442px;display:flex;position:relative;overflow:hidden}.image-bound{justify-content:center;align-items:center;max-width:100%;height:100%;display:inline-flex;position:relative;overflow:hidden}.image-bound>img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.image-bound:has(img[src^="data:image/png"]){height:auto;max-height:100%}.image-simulation-mark{font:8px var(--mono);letter-spacing:1px;color:#91a3acb3;pointer-events:none;background:#14232ba3;border-radius:3px;padding:5px 7px;position:absolute;bottom:15px;left:17px}.defect-box{pointer-events:none;background:#e5967412;border:1px solid #e59674;position:absolute}.defect-box>span{white-space:nowrap;color:#fff0de;background:#b47050;border-radius:3px 3px 0 0;padding:2px 5px;font-size:9px;position:absolute;top:-20px;left:-1px}.defect-box.mild{background:#d3bc790c;border-color:#d3bc79}.defect-box.mild>span{background:#968146}.scan-sweep{background:linear-gradient(#0000,#81dcc511);border-bottom:1px solid #81dcc5aa;height:35%;animation:1.2s ease-in-out infinite scan;position:absolute;top:0;left:0;right:0}.scan-status{color:#ade1d4;background:#1e3e3be6;border:1px solid #5b9784;border-radius:4px;align-items:center;gap:9px;padding:9px 13px;font-size:10px;display:flex;position:absolute;bottom:20px;right:20px}.spinner{border:1px solid #8dd8c154;border-top-color:#8dd8c1;border-radius:50%;width:13px;height:13px;animation:.8s linear infinite spin}.drop-overlay{color:#b9e5d8;background:#1d433de0;border:2px dashed #81c6b8;flex-direction:column;justify-content:center;align-items:center;gap:15px;font-size:16px;display:flex;position:absolute;inset:0}.image-panel-footer{color:#809caa;border-top:1px solid #30424e;align-items:center;gap:20px;height:47px;padding:0 17px;font-size:10px;display:flex}.image-panel-footer>span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.image-panel-footer>label{white-space:nowrap;align-items:center;gap:6px;font-size:9px;display:flex}.image-panel-footer>.text-button{font-size:10px}.image-panel-footer input{width:11px;height:11px}.inspection-results{padding-bottom:16px}.score-summary{--result-color:#91cdb5;align-items:center;gap:22px;padding:24px 21px 20px;display:flex}.score-summary.accepted{--result-color:#c6b380}.score-summary.rejected{--result-color:#d4937c}.score-ring{background:conic-gradient(var(--result-color) var(--score),#30404b 0);border-radius:50%;flex:none;width:94px;height:94px;padding:3px;transform:rotate(-90deg)}.score-ring>div{background:#1b2833;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex;transform:rotate(90deg)}.score-ring strong{font:30px var(--mono);color:var(--result-color)}.score-ring small{color:#76969f;margin-top:4px;font-size:8px}.result-level{color:var(--result-color);align-items:center;gap:5px;font-size:10px;display:inline-flex}.score-summary h3{letter-spacing:1px;color:#cbdad9;margin-top:8px;font-family:STSong,SimSun,serif;font-size:15px;line-height:1.5}.score-summary p{color:#7d9aa7;margin-top:8px;font-size:8px}.metric-list{grid-template-columns:1fr 1fr;gap:20px 24px;padding:0 22px;display:grid}.metric-list>div>div:first-child{color:#93aeb9;justify-content:space-between;align-items:center;gap:10px;margin-bottom:9px;font-size:9px;display:flex}.metric-list strong{font:10px var(--mono);color:#c2d6d9}.metric-list strong>small{font:8px var(--mono);color:#5d7c8e;margin-left:3px}.metric-track{background:#2f414b;border-radius:3px;height:3px;overflow:hidden}.metric-track>i{background:#7dbda8;height:100%;display:block}.metric-track>i.amber{background:#bba779}.metric-track>i.warning{background:#c28b72}.quality-recommendation{color:#7fb4aa;border-top:1px solid #314450;gap:10px;margin:24px 20px 0;padding-top:17px;display:flex}.quality-recommendation>svg{flex:none;margin-top:1px}.quality-recommendation strong{color:#a2bebd;font-size:10px;font-weight:400}.quality-recommendation p{color:#7999a7;margin:7px 0 0;font-size:10px;line-height:1.9}.report-button{width:calc(100% - 40px);height:36px;margin:20px 20px 0;font-size:11px}.report-button>svg:last-child{margin-left:auto}.report-button>svg:first-child{margin-right:auto}.score-explanation{color:#597f8b;text-align:center;margin-top:10px;font-size:8px}.result-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:430px;padding:30px;display:flex}.result-empty>svg{color:#568a86}.result-empty>h3{color:#b8ccce;margin-top:25px;font-size:15px}.result-empty p{color:#72909f;margin-top:12px;font-size:11px;line-height:1.9}.result-empty>.button{margin-top:28px}.sample-section{padding:24px 0 20px}.sample-section-heading{justify-content:space-between;align-items:center;gap:22px;margin-bottom:17px;display:flex}.sample-section h2{color:#b3c8ce;font-size:12px}.sample-section h2>span{color:#638895;margin-left:12px;font-size:9px}.sample-section p{color:#648594;margin-top:8px;font-size:10px}.scenario-controls{align-items:center;gap:15px;display:flex}.scenario-controls>.button{height:32px;font-size:11px}.scenario-controls .segmented>button{padding:5px 10px;font-size:9px}.sample-gallery{grid-template-columns:repeat(9,minmax(0,1fr)) 1.35fr;gap:10px;display:grid}.sample-item{background:#1a2a35;border:1px solid #314753;border-radius:5px;flex-direction:column;min-width:0;padding:0;display:flex;position:relative;overflow:hidden}.sample-item>img{object-fit:cover;object-position:50% 43%;opacity:.77;width:100%;height:82px;transition:opacity .2s}.sample-item>span{color:#89a2ae;white-space:nowrap;font-size:9px;line-height:28px}.sample-item>i{background:#82bba5;border-radius:50%;width:4px;height:4px;position:absolute;top:6px;right:6px}.sample-item>i.accepted{background:#bbaa76}.sample-item>i.rejected{background:#bb856f}.sample-item.selected{border-color:#7fb5a4}.sample-item.selected>span{color:#a3d1c1}.sample-item.selected>img,.sample-item:hover>img{opacity:1}.sample-item.selected:after{content:"";pointer-events:none;border:1px solid #7fb5a4;border-radius:4px;position:absolute;inset:0}.sample-upload{color:#7b9b9d;background:#20323b38;border:1px dashed #3c5965;border-radius:5px;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.sample-upload>span{color:#8dabae;font-size:10px}.sample-upload>small{color:#4d7284;white-space:nowrap;font-size:7px}.defect-details{border-top:1px solid #2b3d49;padding-top:20px}.defect-details h2{color:#a8c0c6;margin-bottom:14px;font-size:12px}.defect-details h2>span{color:#a38e6c;margin-left:12px;font-size:9px}.defect-details>div{border-top:1px solid #283c47;align-items:center;gap:12px;padding:11px 0;font-size:11px;display:flex}.defect-details>div>svg{color:#b3966d}.defect-details strong{color:#b5cacd;min-width:70px;font-size:11px;font-weight:400}.defect-details>div>span{color:#b19573;background:#b195730b;border-radius:3px;padding:3px 5px;font-size:9px}.defect-details p{color:#73909e;margin-left:5px;font-size:10px}.quality-footer{color:#5a7d8d;border-top:1px solid #293c47;justify-content:space-between;align-items:center;gap:20px;margin-top:auto;padding:16px 0 17px;font-size:9px;display:flex}.quality-footer>span{align-items:center;gap:8px;display:flex}.quality-footer .text-button{font-size:10px}.report-dialog{width:560px}.report-dialog h2{margin-bottom:16px}.report-score{font:11px var(--mono);color:#749398;align-items:baseline;gap:7px;margin-bottom:18px;display:flex}.report-score strong{font:45px var(--mono);color:#b3d8cd}.report-score .quality-pill{margin-left:12px}.report-metrics{border-top:1px solid #334a56;border-bottom:1px solid #334a56;grid-template-columns:1fr 1fr;gap:12px 30px;padding:20px 0;display:grid}.report-metrics>div{color:#90b0bb;justify-content:space-between;font-size:11px;display:flex}.report-metrics strong{font:12px var(--mono);color:#b9d5cf}.report-dialog>.muted{margin-top:16px;font-size:9px;display:block}.history-panel{background:#1a2833;border:1px solid #30434e;border-radius:7px;margin-bottom:30px;overflow:hidden}.history-panel .panel-heading{padding:16px 20px}.history-filters{align-items:center;gap:12px;display:flex}.history-filters label{color:#6b8d9c;background:#15232e;border:1px solid #354c58;border-radius:4px;align-items:center;gap:8px;padding:7px 10px;display:flex}.history-filters input{color:#b1ccd1;background:0 0;border:0;outline:none;width:140px;font-size:10px}.history-filters select{color:#a1bcc3;background:#15232e;border:1px solid #354c58;border-radius:4px;padding:6px 8px;font-size:10px}.history-table-wrap{min-height:250px;max-height:calc(100dvh - 420px);overflow:auto}.history-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:11px}.history-table th{text-align:left;color:#678b9d;background:#172630;padding:13px 20px;font-size:10px;font-weight:400;position:sticky;top:0}.history-table td{color:#85a0b0;border-bottom:1px solid #2d424d;padding:11px 20px}.history-table td:first-child{align-items:center;gap:12px;display:flex}.history-table td>img{object-fit:cover;border:1px solid #3c515b;border-radius:3px;width:36px;height:43px}.history-table td strong{color:#b1c9ce;text-overflow:ellipsis;max-width:220px;font-size:11px;font-weight:400;overflow:hidden}.history-table tr:hover td{background:#263b4340}.table-score{font:16px var(--mono);color:#bad7cd!important}.table-score small{font:8px var(--mono);color:#587d90;margin-left:5px}.quality-pill{color:#8cb6a2;background:#6b9e7c0c;border:1px solid #6b9e7c44;border-radius:3px;padding:4px 9px;font-size:9px}.quality-pill.accepted{color:#c0ad7d;background:#c0ad7d09;border-color:#c0ad7d44}.quality-pill.rejected{color:#c29680;background:#c2968009;border-color:#c2968044}.empty-history{text-align:center;color:#72929f;padding:50px;font-size:12px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes scan{0%{transform:translateY(-100%)}to{transform:translateY(300%)}}@media(min-width:1600px){.properties{font-size:14px}.studio-shell{grid-template-columns:76px minmax(0,1fr) 310px}.toolrail{padding-left:12px}.property-section{padding-left:24px;padding-right:24px}.scene-heading{top:39px;left:40px}.scene-heading h1{font-size:32px}.canvas-toolbar,.practice-strip{padding:0 30px}.quality-page{padding-top:38px}.inspection-image-stage{height:490px}.inspection-layout{grid-template-columns:minmax(0,1fr) 390px}.inspection-results .metric-list{gap:25px 30px}.score-summary{padding-top:28px;padding-bottom:26px}.quality-recommendation,.report-button{margin-top:30px}}@media(max-width:1400px){.project-description{display:none}.main-nav{margin-left:0}.app-header{gap:20px}.practice-copy p{font-size:9px}.practice-strip{gap:12px;padding:0 19px}.practice-progress{width:118px}.history-button{font-size:10px}.scene-label{gap:9px;left:72%}.label-line{width:23px}.scene-label small{font-size:8px}.quality-page{padding:27px 28px 0}.stat-note,.simulation-notice .notice-end{display:none}.sample-section-heading{gap:15px}.sample-gallery{gap:8px}.sample-upload>small{display:none}}@media(max-width:1150px){.app-header{padding:0 16px}.project-title{display:none}.studio-shell{grid-template-columns:62px minmax(0,1fr) 270px}.toolrail{padding:16px 6px}.properties-tabs{gap:24px;padding:0 18px}.property-section{padding-left:17px;padding-right:17px}.scene-heading h1{font-size:23px}.scene-heading{top:26px;left:23px}.scene-heading p{font-size:9px}.live-indicator{top:25px;right:18px}.live-indicator>span,.practice-icon{display:none}.practice-copy>strong{font-size:11px}.practice-copy>strong>span{display:none}.practice-progress{width:105px}.practice-copy p{white-space:nowrap;text-overflow:ellipsis;max-width:170px;overflow:hidden}.practice-strip{gap:14px;height:78px;min-height:78px;padding:0 17px}.history-button{display:none}.canvas-hint{gap:15px;font-size:9px}.canvas-hint .optional-hint,.scene-label{display:none}.view-badge{font-size:8px}.canvas-toolbar{padding:0 17px}.canvas-toolbar-actions{gap:13px}.inspection-layout{grid-template-columns:minmax(0,1fr) 315px;gap:15px}.quality-heading h1{font-size:25px}.quality-heading h1>span{display:none}.simulation-notice strong{margin-bottom:3px;display:block}.quality-stats>div{padding-left:20px;padding-right:20px}.quality-stats>div>span:first-child{font-size:10px}.quality-stats>div>span small{margin:4px 0 0;font-size:8px;display:block}.quality-stats>div>strong{margin-top:13px;font-size:27px}.quality-stats>div:first-child>strong{margin-top:5px}.quality-stats>div>svg{display:none}.sample-section-heading{align-items:flex-start}.sample-section h2{font-size:11px}.sample-section h2>span{margin:7px 0 0;font-size:9px;display:block}.sample-section p{display:none}.sample-gallery{grid-template-columns:repeat(9,minmax(0,1fr))}.sample-upload{display:none}.sample-item>span{font-size:8px}.sample-item>img{height:70px}.quality-heading-actions{gap:10px}.quality-heading-actions>.simulation-badge{display:none}.score-summary{gap:17px;padding:22px 17px}.score-ring{width:86px;height:86px}.metric-list{gap:20px;padding:0 18px}.inspection-image-stage{height:430px}.image-panel-footer{gap:11px;padding:0 12px}.image-panel-footer>label{font-size:8px}.score-summary h3{font-size:14px}.history-table td,.history-table th{padding-left:14px;padding-right:14px}}@media(max-width:900px){.app-header{gap:16px;height:65px;min-height:65px}.brand-type{font-size:22px}.brand-mark{width:31px;height:36px}.header-divider{display:none}.main-nav{gap:21px;margin-left:12px}.main-nav button{gap:6px;font-size:11px}.header-actions{gap:8px}.header-actions .button{height:32px;padding:0 10px;font-size:10px}.brand-type small{font-size:6px}.studio-shell{grid-template-columns:54px minmax(0,1fr) 245px}.toolrail{padding:15px 4px}.toolrail button{width:45px;height:51px;font-size:9px}.toolrail button>svg{width:19px}.canvas-toolbar{height:44px;min-height:44px;padding:0 13px}.workspace-breadcrumb>span,.workspace-breadcrumb>svg:nth-child(3){display:none}.workspace-breadcrumb{gap:7px;font-size:10px}.canvas-toolbar-actions .text-button{gap:5px;font-size:9px}.select-wrap select{max-width:90px;font-size:9px}.properties-tabs{gap:20px;height:44px;min-height:44px;padding:0 15px}.properties-tabs>button{gap:5px;font-size:10px}.property-section{padding:15px}.section-label h2{font-size:10px}.scene-heading{top:23px;left:18px}.scene-heading h1{letter-spacing:2px;font-size:22px}.scene-heading p{display:none}.scene-heading .eyebrow{letter-spacing:.8px;font-size:8px}.live-indicator{font-size:8px;top:20px;right:14px}.practice-strip{gap:10px;height:72px;min-height:72px;padding:0 13px}.practice-copy p{max-width:115px;font-size:8px}.practice-copy>strong{font-size:10px}.practice-progress{width:80px}.practice-progress small{display:none}.practice-strip>.button{gap:4px;padding:0 10px;font-size:9px}.canvas-hint{gap:13px;font-size:8px;bottom:17px}.canvas-hint>span{gap:4px}kbd{font-size:8px}.canvas-hint>span:nth-child(3){display:none}.viewport-controls{bottom:58px;left:18px}.axis-gizmo{bottom:57px;right:16px}.view-badge{bottom:70px}.color-swatches{gap:6px}.color-swatches>button{width:17px;height:17px}.layer-select strong{max-width:130px;font-size:9px}.pressure-note{font-size:7px}.studio-status{padding:0 12px;font-size:8px}.studio-status>div{gap:12px}.pressure-meter>i{display:none}.quality-page{padding:25px 20px 0}.quality-heading h1{font-size:23px}.quality-heading p{font-size:10px}.inspection-layout{grid-template-columns:minmax(0,1fr) 290px;gap:13px}.inspection-image-stage{height:420px}.image-panel-footer>label{display:none}.sample-section-heading{display:block}.scenario-controls{justify-content:space-between;margin-top:15px}.sample-gallery{grid-template-columns:repeat(9,minmax(62px,1fr));gap:7px;padding-bottom:8px;overflow-x:auto}.metric-list{gap:18px 15px}.score-summary{gap:13px;padding:22px 15px}.score-ring{width:80px;height:80px}.score-summary h3{font-size:12px}.quality-recommendation p{font-size:9px}.score-summary p{font-size:7px}.history-filters input{width:100px}}@media(max-width:700px){.app-shell{height:auto;min-height:100dvh;overflow:visible}.app-header{gap:10px;height:62px;min-height:62px;padding:0 12px;position:sticky;top:0}.brand{gap:5px}.brand-type{letter-spacing:2px;font-size:20px}.brand-mark{width:27px;height:32px}.brand-type small{display:none}.main-nav{gap:15px;margin-left:auto}.main-nav button{gap:5px;font-size:10px}.main-nav button svg{width:14px}.header-actions{gap:5px;margin-left:4px}.header-actions .save-button{padding:0 7px}.save-button span{display:none}.header-actions .primary{gap:5px;padding:0 7px;font-size:9px}.header-actions .primary svg:last-child{display:none}.studio-shell{grid-template-rows:570px auto 30px;grid-template-columns:48px minmax(0,1fr);height:auto;min-height:calc(100dvh - 62px)}.toolrail{grid-row:1;gap:12px;padding:14px 2px}.toolrail button{width:42px;height:49px}.tool-group{gap:5px;padding-bottom:13px}.studio-main{grid-area:1/2}.canvas-toolbar{height:42px;min-height:42px;padding:0 11px}.canvas-toolbar-actions{gap:12px}.workspace-breadcrumb strong{max-width:82px;font-size:9px}.workspace-breadcrumb>svg:first-child{display:none}.viewport{min-height:390px}.scene-heading h1{font-size:22px}.scene-heading .eyebrow{letter-spacing:.5px;font-size:7px}.live-indicator{gap:4px;font-size:7px;top:24px}.scene-heading{left:16px}.practice-strip{gap:10px;height:65px;min-height:65px;padding:0 13px}.practice-progress{width:74px}.practice-copy p{display:none}.practice-copy>strong{font-size:10px}.practice-strip>.button,.practice-progress{margin-left:auto}.properties{border-left:0;border-top:1px solid var(--line);grid-area:2/1/auto/-1;min-height:450px}.properties-tabs{gap:30px;height:45px;min-height:45px;padding:0 22px}.properties-tabs>button{font-size:12px}.properties-scroll{grid-template-columns:1fr 1fr;display:grid;overflow:visible}.property-section{border-right:1px solid var(--line);padding:18px}.property-section.parameters{grid-area:1/2/3}.property-section.layer-section,.property-section.model-info{grid-column:1/3}.properties-tabs:has(button:last-child.active)+.properties-scroll{display:block}.layer-list{grid-template-columns:1fr 1fr;gap:8px;display:grid}.layer-opacity{max-width:280px}.color-swatches{gap:5px}.color-swatches>button{width:15px;height:15px}.current-color{padding:7px}.brush-preset{height:67px;padding:5px 8px}.brush-preset>span{font-size:9px}.brush-preview{height:60px}.properties-scroll .section-label{margin-bottom:15px}.range-field{margin-bottom:22px}.range-field>span{font-size:10px}.pressure-note{font-size:8px}.model-info dl{flex-flow:wrap;gap:28px;font-size:9px;display:flex}.model-info dl>div{gap:9px}.studio-status{grid-row:3;height:30px;font-size:8px}.studio-status>span{max-width:70vw}.studio-status>div>span:not(:last-child){display:none}.scene-error{min-width:180px;padding:15px;font-size:11px;inset:20%}.quality-page{padding:24px 16px 0}.quality-heading{align-items:flex-start;gap:12px;margin-bottom:20px}.quality-heading h1{letter-spacing:1px;font-size:22px}.quality-heading p{max-width:200px;font-size:9px;line-height:1.8}.quality-heading .eyebrow{letter-spacing:1px;font-size:7px}.quality-heading-actions>.button{height:29px;padding:0 9px;font-size:9px}.quality-heading-actions .count-badge{display:none}.simulation-notice{align-items:flex-start;gap:10px;padding:11px 12px;font-size:9px}.simulation-notice>svg{width:15px;margin-top:3px}.simulation-notice strong{font-size:10px}.quality-stats{grid-template-columns:repeat(3,1fr);margin:18px 0 20px}.quality-stats>div{min-height:80px;padding:3px 15px 15px}.quality-stats>div>span:first-child{font-size:9px}.quality-stats>div>strong{margin-top:13px;font-size:27px}.quality-stats>div>span small{display:none}.quality-stats>div:first-child>strong{margin-top:13px}.quality-stats>div:nth-child(3){border:0}.quality-stats .defect-mini{border-top:1px solid #2c404a;flex-direction:row;grid-column:1/-1;align-items:center;gap:13px;min-height:0;padding:12px 0 8px;display:flex}.defect-mini>span{margin:0;font-size:8px!important}.defect-mini>div{gap:5px;margin:0;font-size:8px}.defect-mini>div>span{width:auto}.defect-mini>div>i{display:none}.defect-mini b{color:#b2a17e;margin-left:0}.inspection-layout{flex-direction:column;gap:18px;display:flex}.inspection-image-stage{height:390px}.image-panel-footer{font-size:9px}.image-panel-footer>label{font-size:8px;display:flex}.inspection-results{padding-bottom:20px}.score-summary{gap:24px;padding:20px 24px}.score-ring{width:88px;height:88px}.score-summary h3{font-size:16px}.score-summary p{font-size:9px}.metric-list{gap:22px 30px;padding:0 25px}.metric-list>div>div:first-child{font-size:11px}.metric-list strong{font-size:12px}.quality-recommendation{margin:22px 24px 0;padding-top:19px}.quality-recommendation strong,.quality-recommendation p{font-size:11px}.report-button{margin-top:20px;font-size:12px}.result-empty{min-height:300px}.panel-heading{padding:12px 15px}.sample-section{padding-top:24px}.sample-section h2{font-size:12px}.sample-gallery{grid-template-columns:repeat(9,80px);gap:9px;margin-top:20px}.sample-item>img{height:90px}.sample-item>span{font-size:9px}.scenario-controls{gap:8px}.scenario-controls .segmented>button{padding:5px 7px;font-size:8px}.scenario-controls>.button{padding:0 10px;font-size:10px}.defect-details>div{flex-wrap:wrap;align-items:flex-start;gap:8px}.defect-details p{width:100%;margin:0 0 0 25px;line-height:1.7}.quality-footer{gap:10px;font-size:8px}.quality-footer>span{max-width:210px;line-height:1.8}.quality-footer .text-button{font-size:9px}.history-panel .panel-heading{padding:15px;display:block}.history-filters{margin-top:15px}.history-filters label{flex:1}.history-filters input{width:100%}.history-table-wrap{max-height:500px}.history-table th,.history-table td{font-size:10px}.history-table .tiny-label{font-size:7px}.dialog{padding:29px 23px}.dialog h2{font-size:21px}.dialog p,.dialog .button{font-size:11px}.report-metrics{gap:14px 22px;font-size:10px}.toast-notice{width:max-content;max-width:90vw;font-size:11px;bottom:28px}.dialog-actions{gap:8px}.help-dialog dd{font-size:8px}.help-dialog dt{font-size:10px}}@media(max-width:380px){.main-nav{gap:10px}.main-nav button{gap:4px;font-size:9px}.brand-type{font-size:18px}.header-actions .primary{padding:0 6px;font-size:8px}.header-actions .primary>svg{width:12px}.app-header{gap:7px;padding:0 8px}.practice-copy>strong{font-size:9px}.practice-progress{width:58px}.live-indicator{display:none}.properties-scroll{grid-template-columns:1fr 1.1fr}.property-section{padding:16px 12px}.color-swatches{gap:4px}.color-swatches>button{width:13px;height:13px}.scene-heading h1{font-size:21px}.practice-strip{gap:8px;padding:0 10px}.sample-section h2{font-size:11px}.image-panel-footer>label{display:none}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}:root{--bg: #241e19;--panel: #352a22;--line: #65503c;--muted: #b4a18a;--text: #efe3cf;--accent: #d3b17d;--accent-strong: #bc9560;--amber: #caa166;color:#dfcfb9;background:#2b231d}.app-header{background:linear-gradient(100deg,#30271ff5,#37291ff8 58%,#30251df5);border-bottom:1px solid #98764c66;box-shadow:0 2px 18px #2b1b1633}.brand-mark,.brand-type{color:#e8d2a6}.brand-type small,.project-description{color:#b49b79}.header-divider{background:#7b61453d}.main-nav button{color:#baaa94}.main-nav button.active{color:#f0d5a1}.main-nav button.active:after{background:#d1ab70}.demo-tag{border-color:#8f745745;color:#bda98b}.project-title{color:#af9678}.button{border-color:#8d6c494f}.button.primary{background:#c6a16b;border-color:#dbb883;color:#302217}.button.primary:hover:not(:disabled){background:#e2c392;color:#2c2016}.button.quiet{background:#8f704426;border-color:#93734e59;color:#deccb2}.button.quiet:hover:not(:disabled){background:#a88a5140}.text-button{color:#c0a685}.text-button:hover:not(:disabled){color:#f0d9b3}.icon-button{color:#b39b7d}.icon-button:hover{background:#98784d35}.status-dot{background:#b4c49b}.count-badge{background:#a78c5a24;color:#cab48d}.studio-shell{display:block;position:relative;min-height:0;isolation:isolate;background:#8e7758}.studio-main{position:absolute;inset:0 0 28px;display:block;background:none}.viewport{position:absolute;inset:0;min-height:0;background:linear-gradient(#c8b598,#a68c68 58%,#66503a)}.viewport:before{z-index:1;opacity:.11}.viewport:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 43%,transparent 34%,#30211636 100%)}.three-host{z-index:0}.canvas-toolbar{position:absolute;z-index:4;top:15px;left:25px;right:25px;height:36px;min-height:0;padding:0;border:0;background:none}.workspace-breadcrumb{gap:9px;color:#e0d0b6;text-shadow:0 1px 6px #321f15;font-size:11px}.workspace-breadcrumb strong{color:#f4e8d1}.canvas-toolbar-actions{gap:14px;padding:5px 12px;border:1px solid #c6a27045;border-radius:6px;background:#35291ed9;box-shadow:0 3px 16px #291b1920}.canvas-toolbar-actions .text-button{color:#d3bd98}.select-wrap{color:#dfcaa8}.select-wrap option{background:#392d22;color:#ead7b7}.scene-heading{top:74px;left:28px;z-index:2}.scene-heading .eyebrow{font-size:9px;letter-spacing:1.7px;color:#d1b78e;text-shadow:0 1px 5px #1f1712}.scene-heading h1{color:#f8ecd6;font-size:27px;letter-spacing:3px;text-shadow:0 2px 16px #2f2017b3;margin:11px 0}.scene-heading h1 span{color:#e0c69b}.scene-heading p{color:#dfceb1;font-size:10px;text-shadow:0 1px 6px #372615}.live-indicator{top:76px;right:350px;color:#ead9b8;z-index:2;text-shadow:0 1px 4px #3d2b1e}.live-indicator>i{background:#c1cd9b}.live-indicator>span{color:#d4c29e;border-color:#cdb88c59}.scene-label,.axis-gizmo,.view-badge{display:none}.viewport-controls{left:auto;right:calc(50% - 112px);bottom:180px;z-index:2;height:29px;background:#3e2c22c9;border-color:#c0a47257}.viewport-controls button{height:25px;width:29px;color:#d1b793}.viewport-controls>span{background:#8d76544d}.canvas-hint{bottom:154px;z-index:2;color:#ecdbc3;gap:18px;text-shadow:0 1px 3px #392316;font-size:10px}kbd{color:#e1c8a3;border-color:#a3845c70;background:#4c3826b3}.first-mix-hint{position:absolute;z-index:3;left:50%;transform:translate(-50%);bottom:230px;display:flex;align-items:center;gap:12px;background:#32271edf;border:1px solid #c8a26b80;box-shadow:0 8px 30px #2d1b1c33;border-radius:7px;padding:12px 15px;color:#d7bb8a;white-space:nowrap}.first-mix-hint>span{display:flex;flex-direction:column;gap:5px;font-size:12px;color:#efdbb8}.first-mix-hint>span>span{font-size:10px;color:#bda17c}.first-mix-hint>button{display:flex;align-items:center;gap:3px;font-size:11px;margin-left:12px;color:#dfbc7d}.toolrail{position:absolute;z-index:7;left:50%;bottom:113px;transform:translate(-50%);grid-row:auto;display:flex;flex-direction:row;align-items:center;padding:5px 9px;gap:8px;width:max-content;border:1px solid #a4815559;border-radius:10px;background:#34271ee8;box-shadow:0 6px 28px #28181440}.tool-group{flex-direction:row;gap:3px;border:0;border-right:1px solid #a5865945;padding:0 8px 0 0}.toolrail button{width:42px;height:44px;gap:4px;font-size:9px;color:#bca488;border-radius:6px}.toolrail button>svg{width:19px;height:19px}.toolrail button.active{background:#b68c4a36;box-shadow:inset 0 0 0 1px #ba935a73;color:#f0d7a1}.toolrail button:hover:not(:disabled){background:#a588542e;color:#f4deb7}.rail-bottom{margin:0;flex-direction:row;align-items:center;gap:3px}.rail-bottom button:last-child{height:44px;width:29px}.practice-strip{position:absolute;z-index:3;left:50%;bottom:14px;transform:translate(-50%);width:min(760px,calc(100% - 80px));height:68px;min-height:0;gap:14px;padding:0 21px;border:1px solid #a4875666;border-radius:8px;background:#35291fe6;box-shadow:0 8px 28px #28181526}.practice-icon{background:#ae8b5526;border-color:#bd955654;color:#d5b582;width:35px;height:35px}.practice-copy>strong{color:#e5d0ad;font-size:11px}.practice-copy>strong>span{color:#c4a16d;border-color:#a9854b59;font-size:8px}.practice-copy p{color:#ae9574;font-size:9px}.practice-progress{width:127px}.practice-progress>div:first-child{color:#b79e79;font-size:9px}.practice-progress strong{color:#dfc08b}.practice-progress small{color:#8f795c}.progress-track{background:#80613e4d}.progress-track>i{background:#caab70}.history-button{font-size:10px}.practice-strip>.button{height:30px;font-size:10px}.properties{position:absolute;z-index:5;right:25px;top:75px;bottom:125px;width:298px;min-height:0;border:1px solid #a3845e80;border-radius:11px;background:#382c22f2;box-shadow:0 15px 45px #2b1b154d,inset 0 1px #ead3a817;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);overflow:hidden}.workshop-panel-title{display:flex;justify-content:space-between;align-items:center;padding:14px 18px 11px;border-bottom:1px solid #a382552b}.workshop-panel-title>span{font-family:STSong,SimSun,serif;color:#ead2ab;letter-spacing:2px;font-size:16px}.workshop-panel-title>small{font:8px var(--mono);letter-spacing:1px;color:#a78a65}.properties-tabs{height:44px;min-height:44px;padding:0 18px;gap:30px;border-color:#a382552b}.properties-tabs>button{font-size:11px;color:#ad9473}.properties-tabs>button.active{color:#e7c898}.properties-tabs>button.active:after{background:#c6a16b;height:1px}.properties-scroll{display:block;min-height:0;padding-bottom:5px}.property-section{padding:18px;border-color:#a382552b}.section-label h2{color:#ddc6a5;font-size:12px}.section-label>span{color:#947958}.brush-preset{background:#29221c80;border-color:#8c71573b}.brush-preset.selected{background:#ad875829;border-color:#c09b646e}.brush-preset>span{color:#b99f7e}.brush-preset.selected>span{color:#e3c595}.brush-art{color:#bc9f75}.brush-preset.selected .brush-art{color:#dfc18e}.brush-preset>svg{color:#d9ba83}.brush-preview{background:linear-gradient(130deg,#e4d8bd,#c9baa0)}.brush-preview>span{color:#8e7859}.range-field>span{color:#bda27f;font-size:11px}.range-field strong{color:#e0c298}.range-field strong small{color:#a28862}input[type=range]{background:linear-gradient(to right,#c6a16b var(--range,55%),#76604370 var(--range,55%))}input[type=range]::-webkit-slider-thumb{background:#dfc18d;border-color:#5d4730;box-shadow:0 0 0 1px #bc9d6e}.pressure-note,.advanced-toggle{color:#aa906c}.layer-row.selected{background:#a8835230;border-color:#bd9c635c}.layer-visibility{color:#bba079}.layer-select strong{color:#decaac}.layer-select small{color:#a38a68}.layer-opacity input{background:#76604370}.model-info dt{color:#a38965}.model-info dd{color:#d0b78f}.model-info dd>span{color:#b7bb8b}.loaded-color-summary{display:flex;align-items:center;gap:10px;padding-top:0}.loaded-color-summary>span{width:30px;height:30px;border:1px solid #b49a6d66;border-radius:50%;flex:none}.loaded-color-summary>div{min-width:0;flex:1}.loaded-color-summary strong{display:block;font:11px var(--mono);color:#e0c9a4}.loaded-color-summary small{display:block;font-size:9px;color:#a68b66;margin-top:6px;line-height:1.5}.loaded-color-summary>.text-button{font-size:10px}.studio-status{position:absolute;z-index:8;bottom:0;left:0;right:0;height:28px;border-color:#b89a693b;background:#30251def;color:#b09876;font-size:9px}.pressure-meter>b{color:#d2b988}.pressure-meter>i{background:linear-gradient(90deg,#c2ab76 var(--pressure),#7f674940 var(--pressure))}.status-saved>i{background:#b2b88a}.status-saved>i.unsaved{background:#c49c62}.reference-panel{position:absolute;z-index:6;left:27px;top:182px;width:278px;border:1px solid #b59a7394;border-radius:9px;background:#3b3025f2;box-shadow:0 12px 40px #2b1c1652;overflow:hidden;transform:translate(var(--reference-x, 0),var(--reference-y, 0));display:flex;flex-direction:column}.reference-panel.reference-hidden{display:none}.reference-header{height:40px;min-height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;background:#493929d9;border-bottom:1px solid #ab89563d;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none}.reference-header:active{cursor:grabbing}.reference-header>div{display:flex;align-items:center;gap:7px}.reference-header>div>svg{color:#c5ab7e}.reference-header strong{font-size:12px;color:#ead5b2;font-weight:400;letter-spacing:1px}.reference-header small{font:7px var(--mono);color:#aa8c62;letter-spacing:1px;margin-left:2px}.reference-header button{display:flex;padding:3px;color:#c2a57a}.reference-mode{display:flex;padding:10px 12px;gap:12px;align-items:center}.reference-mode>button{font-size:10px;color:#ae9676;padding-bottom:4px;border-bottom:1px solid transparent}.reference-mode>button.active{color:#ebd2a6;border-color:#c5a269}.reference-mode>span{font-size:7px;color:#927857;margin-left:auto}.reference-stage{position:relative;height:262px;min-height:100px;margin:0 12px;background:radial-gradient(ellipse at 45% 40%,#e7ddc7,#baaa8b);border:5px solid #655039;outline:1px solid #a38c6959;box-shadow:inset 0 0 18px #5b3c192b;overflow:hidden}.reference-three{position:absolute;inset:0}.reference-three canvas{display:block;width:100%;height:100%;cursor:grab;touch-action:none}.reference-three canvas:active{cursor:grabbing}.reference-image-area{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;touch-action:none;cursor:grab;overflow:hidden}.reference-image-area:active{cursor:grabbing}.reference-image-area>img{max-width:calc(100% - 22px);max-height:calc(100% - 22px);width:auto;height:auto;object-fit:contain;flex:none;-webkit-user-select:none;user-select:none;pointer-events:none;box-shadow:0 2px 10px #38261d3b}.reference-zoom{position:absolute;bottom:7px;right:7px;padding:4px 5px;border-radius:3px;color:#675139;background:#f1e5caab;font:8px var(--mono);pointer-events:none}.reference-stamp{position:absolute;right:10px;top:9px;padding:3px;border:1px solid #995a3d8c;color:#9f684c;font-family:STSong,SimSun,serif;font-size:13px;pointer-events:none}.reference-tools{height:38px;display:flex;align-items:center;gap:4px;padding:0 13px}.reference-tools>button{display:flex;justify-content:center;align-items:center;height:25px;width:25px;color:#c6ac80;border-radius:3px}.reference-tools>button:hover{background:#b4945a26}.reference-tools>i{width:1px;height:12px;background:#9a805132;margin:0 3px}.reference-tools>button.reference-reset{font-size:9px;width:30px}.reference-tools>button.reference-import{width:auto;gap:5px;margin-left:auto;font-size:9px}.reference-caption{padding:3px 16px 15px}.reference-caption>strong{display:block;font-family:STSong,SimSun,serif;font-weight:400;font-size:14px;letter-spacing:1px;color:#e1c9a4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reference-caption p{font-size:9px;color:#a38a64;margin-top:8px}.reference-error{position:absolute;inset:15%;color:#6e4026;font-size:12px;line-height:1.8}.reference-panel.expanded{position:fixed;inset:94px 12vw 55px;width:auto;z-index:50;transform:none;background:#382d23fc;border-color:#b59563;box-shadow:0 0 0 100vmax #1f140dc4}.reference-panel.expanded .reference-stage{flex:1;height:auto}.reference-panel.expanded .reference-tools{height:45px;min-height:45px;gap:10px}.reference-panel.expanded .reference-caption{padding-bottom:19px}.reference-reopen{position:absolute;left:27px;top:182px;z-index:5;display:flex;align-items:center;gap:9px;background:#3d2d21eb;color:#dcc39a;padding:12px 15px;border:1px solid #b4935b80;border-radius:6px;font-size:11px}.pigment-mixer{padding:18px 17px 16px}.mixing-intro>span{font:8px var(--mono);letter-spacing:2px;color:#b39463}.mixing-intro h2{font:20px STSong,SimSun,serif;color:#efd9b5;letter-spacing:1px;margin:8px 0}.mixing-intro p{font-size:10px;color:#ab9474;line-height:1.8}.mixing-steps{display:flex;align-items:center;gap:12px;margin:18px 0 22px}.mixing-steps>span{display:flex;align-items:center;gap:7px;color:#8d775b;font-size:10px}.mixing-steps b{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #8d775b4d;border-radius:50%;font:9px var(--mono)}.mixing-steps>span.active{color:#edcc8d}.mixing-steps>span.active b{color:#f0d4a5;border-color:#c7a56b;background:#a47c3a2b}.mixing-steps>i{width:19px;height:1px;background:#8a72523d}.mixer-section-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.mixer-section-label h3{font-size:11px;font-weight:400;color:#d5bd98}.mixer-section-label>span{font-size:9px;color:#9e825e}.mixer-section-label h3 small{font:9px var(--mono);color:#9f865f;margin-left:6px}.mixer-section-label>.text-button{font-size:9px}.pigment-jars{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.pigment-jars>button{position:relative;padding:4px 0 0;display:flex;flex-direction:column;align-items:center}.pigment-pot{position:relative;width:32px;height:28px;border-radius:7px 7px 10px 10px;background:linear-gradient(90deg,#86735c,#c2b295 35%,#a18c70 75%,#6f5d47);border:1px solid #b49c7470;box-shadow:0 3px 5px #24160e40}.pigment-pot>i{position:absolute;width:28px;height:13px;border:3px solid #c3ae8b;border-top-color:#d1bd9a;border-radius:50%;background:var(--pigment);left:1px;top:-3px;box-shadow:inset 0 3px 3px #0003}.pigment-jars>button:hover .pigment-pot{translate:0 -2px}.pigment-jars strong{font-size:10px;font-weight:400;color:#d0b897;margin-top:8px}.pigment-jars small{font-size:8px;color:#94795b;margin-top:4px}.jar-count{position:absolute;top:-4px;right:-1px;width:15px;height:15px;border-radius:50%;display:flex;align-items:center;justify-content:center;font:8px var(--mono);background:#c5a067;color:#2f2217;box-shadow:0 1px 4px #2b1e12}.recipe-heading{margin-top:21px;margin-bottom:6px}.mixing-bowl{height:118px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.bowl-inner{width:158px;height:75px;border-radius:50%;border:7px solid #c9b89a;border-top-color:#dfcfaf;border-bottom-color:#a28c69;background:radial-gradient(ellipse at 45% 30%,#a89577,#d2c4a6);box-shadow:0 6px 8px #1d140e54,inset 0 3px 10px #4c311f52,0 0 0 1px #eadbc44d;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.bowl-inner>span:not(.grinding-stick){font-size:10px;color:#756349;letter-spacing:1px}.raw-pigment{position:absolute;width:calc(22px + var(--portions) * 2px);height:calc(16px + var(--portions));border-radius:45% 58% 42% 56%;top:calc(13px + var(--index) * 4px);left:calc(12px + var(--index) * 18px);box-shadow:inset 2px 2px 4px #ffffff25,0 1px 2px #39241542;transform:rotate(calc(var(--index) * 47deg))}.mixing-bowl.blended .bowl-inner{background:radial-gradient(ellipse at 35% 26%,#ffffff30,transparent 60%),var(--mixed-color)}.mixing-bowl small{font-size:9px;color:#9f855f}.grinding-stick{position:absolute;background:linear-gradient(90deg,#cbb17b,#8a6439);width:85px;height:11px;right:-3px;top:3px;box-shadow:0 3px 5px #26190c59;border-radius:8px;transform-origin:left center;animation:grind .6s infinite}.grinding .raw-pigment{animation:mix-pigment .65s forwards}.recipe-list{margin:5px 0 15px}.recipe-row{display:flex;align-items:center;gap:7px;padding:7px 0}.recipe-color{display:block;width:8px;height:8px;border-radius:50%;flex:none;box-shadow:0 0 0 1px #cbb68c40}.recipe-row>strong{color:#ccb18a;font-size:10px;width:23px;flex:none;font-weight:400}.recipe-row>input{flex:1;min-width:28px;height:2px;margin:0 5px;background:#ad916052}.portion-counter{display:flex;align-items:center;gap:2px;background:#211b1580;border:1px solid #96774933;border-radius:4px;height:23px}.portion-counter>button{width:18px;height:22px;font-size:13px;color:#c8ae83}.portion-counter>b{font:10px var(--mono);width:15px;text-align:center;color:#e2c291}.recipe-row>small{width:26px;text-align:right;font:9px var(--mono);color:#987d58}.recipe-empty{color:#9f855e;font-size:9px;line-height:1.9;padding:9px 0 16px}.grind-button{width:100%;height:35px;font-size:11px}.grind-button>small{margin-left:auto;color:#5b4229;font-size:8px}.mixture-result{border:1px solid #ae8c514d;border-radius:5px;padding:11px;background:#9d794a0d}.mixture-result>div{display:flex;align-items:center;gap:10px;margin-bottom:12px}.mixture-result>div>i{width:32px;height:27px;border-radius:48% 52% 46% 40%;box-shadow:inset 0 2px 4px #fff2,0 0 0 1px #c3a46740}.mixture-result strong{display:block;font:11px var(--mono);color:#e2c390}.mixture-result small{display:block;font-size:9px;color:#ac9068;margin-top:5px;line-height:1.7}.mixture-result .button{width:100%;height:32px;font-size:11px}.mixture-result .button:disabled{opacity:.65}.loaded-paint{display:flex;gap:9px;align-items:center;margin-top:17px;padding-top:15px;border-top:1px solid #9c7d4e33}.loaded-paint>span{width:24px;height:24px;border-radius:50%;border:1px solid #b59b6a70;display:flex;align-items:center;justify-content:center;color:#b69b73;flex:none}.loaded-paint small{display:block;color:#9e855f;font-size:9px}.loaded-paint strong{display:block;font-size:10px;color:#ccb18b;font-weight:400;line-height:1.7;margin-top:5px}.mixing-footnote{margin-top:14px;color:#8b7557;font-size:8px;line-height:1.8}.text-field{color:#ba9f79}.text-field input{color:#e6cfac;background:#292019;border-color:#876a4359}.dialog{background:#372b22;border-color:#a5855c73}.dialog .eyebrow{color:#c4a571}.dialog h2{color:#f0dbb9}.dialog p{color:#bba180}.dialog-close{color:#b59970}.export-dialog>button:not(.dialog-close){background:#493927;border-color:#886a414d;color:#ceb284}.export-dialog>button:not(.dialog-close):hover{background:#5b452d;border-color:#b19162}.export-dialog strong{color:#ead4b2}.export-dialog small{color:#ad9067}.operation-list li{border-color:#8b704333;color:#c8af8a}.operation-list li>span{color:#ab8956}.toast-notice{background:#463622f5;border-color:#b6955d;color:#ead4b1}.toast-notice>svg,.toast-notice button{color:#d4b77c}.modal-backdrop{background:#21150ed1}.quality-content{background:#25211b}.quality-heading .eyebrow{color:#ac9062}.quality-heading h1{color:#e7d4b3}.quality-heading h1>span,.quality-heading p{color:#b09874}.simulation-notice{background:#ac844c0b;border-color:#a1844f45}.simulation-notice strong{color:#d1b47e}.simulation-notice span{color:#aa9678}.quality-stats{border-color:#7e653b38}.quality-stats>div{border-color:#816b463b}.quality-stats>div>span:first-child{color:#b29c77}.quality-stats>div>strong{color:#e6d3b1}.quality-stats strong>small,.quality-stats>div>span small,.stat-note{color:#9a815e}.defect-mini>div{color:#aa9372}.defect-mini b{color:#c3a877}.inspection-image-panel,.inspection-results,.history-panel{background:#332c22;border-color:#8067475c}.inspection-image-stage{background:radial-gradient(ellipse at 50% 45%,#695943,#342d23 80%)}.panel-heading,.image-panel-footer{border-color:#92754c40}.panel-heading h2,.image-panel-footer{color:#c9b08b}.tiny-label{color:#8d7652}.segmented{background:#231e17;border-color:#7e653c59}.segmented>button{color:#aa936e}.segmented>button.active{color:#e1c38e;background:#79603947}.score-ring>div{background:#332c22}.score-summary h3{color:#dfcaa5}.score-summary p,.score-ring small{color:#a38c67}.metric-list>div>div:first-child{color:#bca27c}.metric-list strong{color:#dfc79f}.metric-list strong>small{color:#927a56}.metric-track{background:#76613e47}.quality-recommendation{border-color:#876c4740}.quality-recommendation strong{color:#c5ae88}.quality-recommendation p,.score-explanation{color:#a68e67}.sample-section h2{color:#ceb691}.sample-section p,.sample-section h2>span{color:#a38b64}.sample-item{background:#362d22;border-color:#856b495c}.sample-item>span{color:#b8a17b}.sample-item.selected{border-color:#d2ae6e}.sample-item.selected:after{border-color:#d2ae6e}.sample-item.selected>span{color:#edd3a0}.sample-upload{border-color:#8e744759;color:#c3a575}.sample-upload>span,.sample-upload>small{color:#a68e65}.quality-footer{border-color:#8b714536;color:#a18860}.history-table th{color:#ac9166;background:#2a241b}.history-table td{color:#b59a75;border-color:#7f663d33}.history-table td strong{color:#d7bc94}.history-filters label,.history-filters select{background:#292219;border-color:#8b704452;color:#b89b6d}.history-filters input{color:#d1b995}@keyframes grind{0%{transform:rotate(-22deg)}50%{transform:rotate(24deg) translate(-15px,17px)}to{transform:rotate(-22deg)}}@keyframes mix-pigment{to{transform:translate(6px) rotate(80deg) scale(1.4);filter:blur(4px)}}@media(min-width:1600px){.properties{right:35px;width:320px;top:85px;bottom:135px}.reference-panel{left:35px;width:304px;top:194px}.reference-stage{height:290px}.scene-heading{left:36px;top:80px}.scene-heading h1{font-size:31px}.pigment-mixer{padding:22px}.mixing-intro h2{font-size:23px}.pigment-jars{gap:7px}.pigment-pot{width:34px;height:30px}.pigment-pot>i{width:30px}}@media(max-width:1150px)and (min-width:800px){.properties{width:264px;right:17px;top:72px;bottom:125px}.reference-panel{width:222px;left:17px;top:177px}.reference-stage{height:221px;margin:0 10px;border-width:4px}.reference-caption{padding:4px 13px 13px}.reference-caption>strong{font-size:13px}.reference-caption p{font-size:8px}.reference-mode{gap:9px;padding:9px 11px}.reference-mode>span{display:none}.reference-header small{display:none}.reference-tools{gap:2px;padding:0 10px}.reference-tools>button{width:22px}.reference-tools>i{margin:0 1px}.reference-tools>button.reference-import{font-size:8px;gap:3px}.scene-heading{top:72px;left:19px}.scene-heading h1{font-size:23px;letter-spacing:2px}.scene-heading p{font-size:9px;display:block}.live-indicator{right:302px;font-size:9px}.practice-strip{width:650px;bottom:14px}.practice-icon{display:flex}.practice-progress{width:118px}.properties-tabs{gap:25px;padding:0 15px}.pigment-mixer{padding:16px 13px}.mixing-intro h2{font-size:19px;letter-spacing:0}.pigment-jars{gap:4px}.pigment-pot{width:30px}.pigment-pot>i{width:26px}.mixing-steps{gap:10px}.mixing-steps>i{width:16px}.grind-button>small{font-size:8px}.first-mix-hint{padding:10px 12px;gap:8px;bottom:218px}.first-mix-hint>span{font-size:11px}.first-mix-hint>span>span{font-size:9px}.first-mix-hint>button{margin-left:6px;font-size:10px}}@media(max-width:799px){.app-shell{height:auto;min-height:100dvh;overflow:visible}.app-header{position:sticky;top:0;height:62px;min-height:62px}.studio-shell{display:flex;flex-direction:column;min-height:calc(100dvh - 62px);height:auto;padding-bottom:0;background:linear-gradient(#705238,#4d3929 38%,#30261f)}.studio-main{position:relative;inset:auto;width:100%;height:660px;min-height:660px}.viewport{inset:0;min-height:0}.canvas-toolbar{left:17px;right:17px;top:12px;height:35px;padding:0}.canvas-toolbar-actions{gap:12px;padding:5px 9px}.workspace-breadcrumb{font-size:10px}.workspace-breadcrumb strong{font-size:10px;max-width:100px}.scene-heading{top:72px;left:22px}.scene-heading h1{font-size:25px;letter-spacing:2px}.scene-heading .eyebrow{font-size:8px;letter-spacing:1px}.scene-heading p{display:block;font-size:9px}.live-indicator{top:76px;right:20px;font-size:8px}.live-indicator>span{display:none}.first-mix-hint{bottom:188px;padding:10px 12px;width:max-content;max-width:calc(100% - 36px)}.first-mix-hint>span{font-size:10px}.first-mix-hint>span>span{font-size:8px}.first-mix-hint>button{font-size:9px;margin-left:0}.toolrail{left:50%;top:549px;bottom:auto;padding:5px 6px;height:57px;gap:6px;border-radius:8px}.tool-group{gap:1px;padding-right:6px}.toolrail button{width:39px;height:43px;font-size:8px}.rail-bottom button:last-child{width:24px}.toolrail button>svg{width:17px;height:17px}.practice-strip{bottom:11px;width:calc(100% - 32px);height:43px;padding:0 13px;gap:11px}.practice-icon{display:none}.practice-copy>strong{font-size:10px}.practice-copy p,.practice-copy>strong>span,.history-button{display:none}.practice-progress{width:75px;margin-left:auto}.practice-progress>div:first-child{margin-bottom:5px;font-size:8px}.practice-progress small{display:none}.practice-strip>.button{margin:0;height:26px;font-size:9px;padding:0 8px}.viewport-controls{bottom:158px;right:25px;height:26px}.viewport-controls button{height:23px;width:25px}.canvas-hint{bottom:139px;gap:13px;font-size:8px}.canvas-hint>span:nth-child(3){display:flex}.canvas-hint .optional-hint{display:none}.reference-panel{position:relative;order:1;width:calc(100% - 32px);margin:16px 16px 0;left:auto;top:auto;transform:none;height:421px;flex:none}.reference-stage{height:auto;flex:1}.reference-mode>span{font-size:8px}.reference-caption{padding-bottom:14px}.reference-caption p{font-size:9px}.reference-tools{gap:9px}.reference-tools>button{width:27px}.reference-panel.expanded{position:fixed;inset:75px 13px 20px;width:auto;height:auto;margin:0}.reference-reopen{position:relative;left:0;top:0;order:1;margin:16px;justify-content:center}.properties{position:relative;order:2;width:calc(100% - 32px);margin:16px;inset:auto;min-height:400px;border-radius:9px}.properties-scroll{display:block;overflow:visible}.properties-tabs,.properties-tabs:has(button:last-child.active){padding:0 20px;gap:38px}.properties-tabs>button{font-size:12px}.workshop-panel-title{padding:15px 20px}.pigment-mixer{padding:20px}.mixing-intro h2{font-size:24px}.mixing-intro p{font-size:11px}.mixing-steps{gap:16px}.mixing-steps>span{font-size:11px}.mixing-steps>i{flex:1;max-width:35px}.pigment-pot{width:36px;height:30px}.pigment-pot>i{width:32px}.pigment-jars strong{font-size:11px}.pigment-jars small{font-size:9px}.mixing-bowl{height:144px}.bowl-inner{width:188px;height:88px}.recipe-empty{font-size:10px}.loaded-paint strong{font-size:11px}.mixing-footnote{font-size:9px}.property-section{padding:20px;border-right:0}.layer-list{display:block}.range-field{margin-bottom:22px}.model-info dl{display:flex;flex-direction:column;gap:12px}.model-info dl>div{justify-content:space-between}.studio-status{position:relative;order:3;height:30px;font-size:8px}.studio-status>span{max-width:73vw}.studio-status>div>span:not(:last-child){display:none}.scene-error{inset:25% 16%}}@media(max-width:380px){.scene-heading h1{font-size:22px}.scene-heading p{font-size:8px}.toolrail{gap:4px;padding:5px}.toolrail button{width:35px}.practice-copy>strong{font-size:9px}.practice-progress{width:59px}.reference-tools{gap:6px}.pigment-mixer{padding:18px 16px}.pigment-pot{width:32px}.pigment-pot>i{width:28px}.mixing-intro h2{font-size:21px}}
