@charset "UTF-8";
:root{color-scheme:dark;--bg:#171819;--panel:#1d1e20;--text:#ecebe7;--muted:#89898b;--line:#303133;--accent:#d8c6a2;--serif:Georgia,'Songti SC',serif;--sans:-apple-system,BlinkMacSystemFont,'Helvetica Neue','PingFang SC',sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:13px;-webkit-font-smoothing:antialiased;overflow:hidden}button,input,a,summary{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{color:inherit;border:0;background:none;cursor:pointer}button:disabled{opacity:.3;cursor:default}a{color:inherit;text-decoration:none}svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button,a,summary{transition:background .16s,color .16s,opacity .16s}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;border-bottom:1px solid var(--line);gap:24px}.brand{display:flex;align-items:center;gap:20px}.brand-mark{font-size:25px;font-weight:600;letter-spacing:-1.5px;position:relative}.brand-dot{width:4px;height:4px;background:var(--accent);display:inline-block;margin:0 0 2px 3px}.brand-name{border-left:1px solid #464648;padding-left:18px;font-size:12px;letter-spacing:2px}.brand-name small{display:block;font-size:8px;letter-spacing:2.3px;color:var(--muted);margin-top:5px}.project-title{display:flex;align-items:center;gap:10px;margin-left:auto;margin-right:auto}.title-dot{width:5px;height:5px;border-radius:50%;background:#5d5d5f}.project-title input{width:148px;background:transparent;color:#d7d7d5;border:0;padding:7px 2px;font-size:12px}.saved-indicator{font-size:10px;color:#6e6e72;white-space:nowrap}.header-actions{display:flex;align-items:center;gap:24px}.history-actions{display:flex;gap:8px;padding-right:22px;border-right:1px solid var(--line)}.icon-button{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;color:#97989b;border-radius:3px}.icon-button:hover:not(:disabled){color:var(--text);background:#2b2c2e}.text-button{font-size:12px;color:#bfbfbd;padding:8px 0}.text-button:hover{color:#fff}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:22px;background:#ecebe7;color:#1b1c1d;min-height:38px;padding:0 19px;font-size:12px;font-weight:500;letter-spacing:.5px;border-radius:2px}.primary-button:hover{background:#fff}.primary-button:disabled{opacity:.45}.primary-button svg{width:16px;height:16px}.workbench{display:grid;grid-template-columns:minmax(0,1fr) 306px;height:calc(100dvh - 78px)}.photo-column{min-width:0;display:flex;flex-direction:column;padding:0 30px}.stage-toolbar{height:60px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.stage-label{display:flex;gap:9px;align-items:center;font-size:11px;color:#98999c;min-width:0}.stage-label>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}.status-dot{width:5px;height:5px;background:#747f70;border-radius:50%;flex-shrink:0}.stage-tools{display:flex;gap:13px;align-items:center}.small-button{display:flex;align-items:center;gap:7px;color:#a6a7a9;font-size:11px;padding:6px 0}.small-button:hover,.small-button.held{color:#fff}.small-button svg{width:15px;height:15px}.divider{width:1px;height:15px;background:var(--line)}.stage{position:relative;display:flex;align-items:center;justify-content:center;min-height:220px;flex:1;overflow:hidden;background:#121314;border:1px solid #232426;isolation:isolate}.stage:has(.empty-state:not([hidden])){background:radial-gradient(ellipse at 50% 52%,#1d1f20 0%,#151617 60%,#121314 100%)}.stage canvas{display:block;max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 4px 35px #0003}.stage.zoomed{overflow:auto;align-items:flex-start;justify-content:flex-start}.stage.zoomed canvas{max-width:none;max-height:none;flex-shrink:0}.empty-state{text-align:center;padding:28px 20px 32px;position:relative;z-index:1}.empty-art{width:66px;height:70px;position:relative;margin:0 auto 25px}.empty-art span{display:block;position:absolute;left:8px;top:5px;width:48px;height:58px;border:1px solid #5e5f5e;transform:rotate(-8deg)}.empty-art i{position:absolute;left:15px;top:0;width:48px;height:58px;background:#1c1e1f;border:1px solid #a0a095;transform:rotate(8deg)}.empty-art i:before{content:'';position:absolute;left:8px;top:8px;width:30px;height:30px;border:1px solid #7b7e76;background:linear-gradient(145deg,#343a32,#212621)}.empty-art b{position:absolute;left:23px;top:10px;width:26px;height:26px;background:linear-gradient(155deg,transparent 45%,#777766 46%,#4a5144 70%);transform:rotate(8deg)}.eyebrow{font-size:9px;letter-spacing:2.6px;font-weight:500;color:#858789;margin:0 0 15px}.empty-state .eyebrow{color:#777d73;font-size:8px;letter-spacing:2.4px}.empty-state h1{font-size:25px;font-weight:400;letter-spacing:2px;margin:0 0 16px}.empty-copy{font-size:12px;color:#888b8b;line-height:1.8;margin:0 0 27px}.empty-choose{min-height:40px;padding:0 24px;gap:10px}.sample-button{display:flex;align-items:center;gap:8px;font-size:11px;color:#acafa4;margin:16px auto 0;padding:5px}.sample-button svg{width:13px;height:13px}.file-hint{display:block;font-size:9px;letter-spacing:.3px;color:#666a69;margin-top:31px}.original-badge{position:absolute;left:20px;top:20px;background:#141415bf;border:1px solid #ffffff25;padding:7px 13px;font-size:11px;letter-spacing:2px;z-index:2;pointer-events:none}.rendering{position:absolute;right:16px;bottom:15px;display:flex;align-items:center;gap:8px;font-size:10px;color:#ddd;background:#151515bb;padding:7px 10px;z-index:2}.spinner{width:10px;height:10px;border:1px solid #888;border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.drop-overlay{position:absolute;inset:0;background:#191b1df0;border:1px dashed #b4b7ac;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;font-size:22px;pointer-events:none}.drop-overlay svg{width:36px;height:36px}.photo-meta{height:33px;display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.4px;color:#747679;flex-shrink:0}.photo-strip{display:flex;gap:8px;overflow-x:auto;align-items:center;flex-shrink:0;margin:0 0 13px;padding:2px 0 4px}.photo-chip{position:relative;width:44px;height:35px;border:1px solid transparent;padding:0;opacity:.65;flex-shrink:0;border-radius:1px}.photo-chip.active{border-color:#d1d1c8;opacity:1}.photo-chip img{width:100%;height:100%;object-fit:cover}.looks-section{height:178px;flex-shrink:0;padding:0 0 17px}.looks-header{display:flex;align-items:center;justify-content:space-between;height:38px}.looks-tabs{display:flex;gap:25px}.look-tab{font-size:11px;color:#717477;padding:0 0 8px;border-bottom:1px solid transparent}.look-tab.active{color:#dadbd5;border-bottom-color:#c5c7bd}.look-tab span{font-size:9px;padding-left:5px;color:#8b8e88}.subtle-button{font-size:10px;color:#85888a;display:flex;align-items:center;gap:6px;padding:5px 0}.subtle-button:hover{color:#dedfd8}.subtle-button svg{width:13px;height:13px}.preset-list{display:flex;gap:14px;overflow-x:auto;padding:9px 2px 4px;scrollbar-width:thin;scrollbar-color:#424444 transparent}.preset-card{width:99px;flex-shrink:0;text-align:left;padding:0}.preset-image{width:99px;height:65px;background:#222627;position:relative;margin-bottom:9px;outline:1px solid transparent;outline-offset:3px;transition:outline-color .15s}.preset-card.active .preset-image{outline-color:#c9c9bd}.preset-card canvas{width:100%;height:100%;object-fit:cover}.preset-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-style:italic;font-size:22px;letter-spacing:-1px;color:#9a9e91;background:linear-gradient(145deg,#2a2d2e,#202324)}.preset-card[data-id="gold"] .preset-placeholder{background:linear-gradient(145deg,#585040,#292722);color:#d1c09c}.preset-card[data-id="warm"] .preset-placeholder{background:linear-gradient(145deg,#4c4337,#25231f);color:#b6a78d}.preset-card[data-id="quiet"] .preset-placeholder{background:linear-gradient(145deg,#3c4140,#232726);color:#aab5ad}.preset-card[data-id="deep"] .preset-placeholder{background:linear-gradient(145deg,#263731,#1c2521);color:#98ae9e}.preset-card strong{display:block;font-size:10px;font-weight:500;letter-spacing:.4px;color:#c9cbc4}.preset-card.active strong{color:#f2f3eb}.preset-card small{display:block;font-size:9px;color:#646a69;margin-top:4px}.empty-projects{display:flex;align-items:center;justify-content:flex-start;height:100px;font-size:11px;line-height:1.9;color:#8a8d88;padding-left:5px}.adjustments{background:var(--panel);border-left:1px solid var(--line);padding:35px 29px 24px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#434446 transparent;display:flex;flex-direction:column}.panel-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.panel-heading .eyebrow{font-size:8px;letter-spacing:2px;color:#7b7e7c;margin-bottom:9px}.panel-heading h2{font-size:25px;font-weight:400;letter-spacing:3px;margin:0}.current-look{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid #343638;border-bottom:1px solid #343638;padding:14px 0;margin-bottom:24px}.current-look>span{font-size:11px;color:#cccfc7}.current-look small{font-size:9px;color:#7e837e}.control{margin-bottom:27px}.control-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.control-heading label{font-size:11px;color:#c9ccc6;letter-spacing:.3px}.control-value{color:#80877d;font-size:10px;font-variant-numeric:tabular-nums;min-width:28px;text-align:right}.control-value.modified{color:#d6dfc9}.range-shell{height:18px;position:relative;display:flex;align-items:center}.range-shell:before{content:'';position:absolute;left:0;right:0;height:1px;background:#53574f;pointer-events:none}.range-shell:after{content:'';position:absolute;left:50%;height:5px;width:1px;top:7px;background:#929886;pointer-events:none}.range-fill{position:absolute;height:1px;background:#e1e3d9;pointer-events:none;z-index:1}.control input[type="range"]{position:relative;z-index:2;-webkit-appearance:none;appearance:none;width:100%;margin:0;height:18px;cursor:ew-resize;background:transparent;outline-offset:7px}.control input[type="range"]::-webkit-slider-runnable-track{height:1px;background:transparent}.control input[type="range"]::-webkit-slider-thumb{-webkit-appearance:none;background:#e5e7de;width:9px;height:9px;border-radius:50%;margin-top:-4px;box-shadow:0 0 0 4px var(--panel)}.control input[type="range"]::-moz-range-track{height:1px;background:transparent}.control input[type="range"]::-moz-range-thumb{background:#e5e7de;width:9px;height:9px;border:0;border-radius:50%}.range-labels{display:flex;justify-content:space-between;color:#676d65;font-size:8px;margin-top:7px;letter-spacing:.5px}.fine-details{border-top:1px solid #343638;margin-top:2px;padding-top:18px}.fine-details summary{display:flex;align-items:center;justify-content:space-between;color:#90978b;font-size:11px;cursor:pointer;list-style:none;padding:5px 0 20px}.fine-details summary::-webkit-details-marker,.firmware-details summary::-webkit-details-marker{display:none}.fine-details summary svg{width:15px;height:15px}.fine-details[open] summary svg,.firmware-details[open] summary>svg{transform:rotate(180deg)}.fine-details .control:last-child{margin-bottom:18px}.panel-foot{margin-top:auto;padding-top:26px}.foot-line{display:block;width:24px;height:1px;background:#737a69;margin-bottom:18px}.panel-foot p{font-size:11px;color:#8c9485;line-height:1.9;margin:0 0 14px;letter-spacing:1px}.panel-foot small{font-size:8px;color:#626b5e;line-height:1.8}.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);padding:12px 20px;border:1px solid #4f514c;background:#292c27;color:#e3e6da;font-size:12px;box-shadow:0 4px 24px #0005;z-index:30;border-radius:2px;max-width:80%;line-height:1.6}.modal{color:var(--text);background:#202223;border:1px solid #454746;border-radius:4px;padding:40px;width:480px;max-width:calc(100vw - 32px);box-shadow:0 25px 100px #0007}.modal::backdrop{background:#08090ac7;backdrop-filter:blur(5px)}.modal>.close-dialog{position:absolute;right:14px;top:12px}.modal .eyebrow{font-size:8px;color:#9b9f94;margin-bottom:15px}.modal h2{font-size:24px;font-weight:400;letter-spacing:1px;margin:0 0 15px}.modal-copy{font-size:11px;color:#969c90;line-height:1.8;margin:0 0 30px}.field-label{display:block;font-size:10px;color:#979d91;margin-bottom:10px}.name-field{width:100%;height:44px;background:#181a1b;border:1px solid #4c5147;color:#e1e7d8;padding:0 12px;border-radius:2px}.modal-actions{display:flex;justify-content:space-between;align-items:center;margin-top:30px}.export-modal{max-height:90dvh;overflow-y:auto}.export-options{border-top:1px solid #3a3f36}.export-option{display:flex;align-items:center;gap:16px;width:100%;text-align:left;padding:20px 0;border-bottom:1px solid #3a3f36}.export-option:hover{background:#272b25}.option-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid #4b5441;color:#bac6aa;font-family:monospace;font-size:10px;flex-shrink:0}.export-option strong{display:block;font-size:12px;font-weight:400;color:#e2e8d8;margin-bottom:6px}.export-option small{font-size:10px;color:#929e84}.export-option>svg{margin-left:auto;width:16px;height:16px;color:#a3b094}.firmware-details{margin-top:29px}.firmware-details summary{display:flex;justify-content:space-between;align-items:center;list-style:none;cursor:pointer;font-size:11px;color:#bec9ae}.firmware-details summary small{display:block;font-size:9px;color:#77846b;margin-top:7px}.firmware-details summary>svg{width:15px;height:15px}.firmware-content{padding-top:20px}.firmware-content p{font-size:11px;line-height:1.8;color:#c1c9b5;margin:0 0 12px}.firmware-content .firmware-note{color:#8e9b7f;font-size:10px}.full-button{width:100%;margin-top:10px;min-height:40px}.build-progress{margin-top:23px}.progress-label{display:flex;justify-content:space-between;font-size:11px;color:#d1dfbf;margin-bottom:11px}.build-progress progress{display:block;width:100%;height:2px;border:0;background:#4b573e;accent-color:#c9d6b6}.build-progress progress::-webkit-progress-bar{background:#4b573e}.build-progress progress::-webkit-progress-value{background:#c9d6b6}.build-progress small{display:block;color:#8d9f79;font-size:10px;margin-top:11px}.firmware-content .build-error{color:#e9ac9c;margin-top:15px}.connection-error{position:fixed;top:80px;left:50%;transform:translateX(-50%);padding:10px 18px;background:#45342c;border:1px solid #8a6554;z-index:40;display:flex;gap:20px;align-items:center;color:#ebd1bc;font-size:12px}.connection-error .text-button{color:inherit}body.dragging .drop-overlay{display:flex!important}
@media(min-width:1500px){.photo-column{padding:0 45px}.workbench{grid-template-columns:minmax(0,1fr) 340px}.adjustments{padding-left:36px;padding-right:36px}.preset-card,.preset-image{width:113px}.preset-image{height:73px}.looks-section{height:192px}.stage-toolbar{height:68px}}
@media(max-width:1050px){.topbar{padding:0 22px}.header-actions{gap:16px}.brand-name{display:none}.project-title{margin-left:20px}.saved-indicator{display:none}.workbench{grid-template-columns:minmax(0,1fr) 270px}.photo-column{padding:0 20px}.adjustments{padding:28px 23px 20px}.stage-tools{gap:9px}.stage-tools .small-button span{display:none}.preset-list{gap:12px}.preset-card,.preset-image{width:86px}.preset-image{height:60px}.looks-section{height:164px}.panel-heading{margin-bottom:24px}.control{margin-bottom:22px}.panel-foot{padding-top:20px}}
@media(max-width:720px){body{overflow:auto}.topbar{height:64px;padding:0 16px;gap:10px}.brand-mark{font-size:22px}.project-title{margin:0}.project-title input{width:104px;font-size:11px}.header-actions{gap:12px}.history-actions{display:none}.header-actions .text-button{font-size:10px}.primary-button{min-height:34px;padding:0 13px;gap:9px}.workbench{display:flex;flex-direction:column;height:auto;min-height:calc(100dvh - 64px)}.photo-column{padding:0 16px}.stage-toolbar{height:52px}.stage-label>span:last-child{max-width:140px}.stage-tools{gap:8px}.stage-tools #add-photos{font-size:0;gap:0}.stage-tools .divider{display:none}.stage{height:49dvh;min-height:320px;flex:auto}.empty-state{padding:25px 10px}.empty-state h1{font-size:22px;letter-spacing:1px}.empty-art{margin-bottom:17px}.file-hint{margin-top:22px}.looks-section{height:162px}.photo-meta{font-size:8px}.adjustments{border-left:0;border-top:1px solid var(--line);padding:25px 25px 20px}.panel-heading{margin-bottom:20px}.panel-heading h2{font-size:23px}.current-look{margin-bottom:24px}.controls{display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.control{margin-bottom:26px}.panel-foot{display:none}.modal{padding:32px 25px}.modal h2{font-size:22px}.connection-error{top:65px;width:90%;font-size:11px}.export-option{padding:17px 0}.original-badge{left:12px;top:12px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
.workbench{grid-template-columns:minmax(0,1fr) 350px}.adjustments{padding:28px 27px 20px}.panel-heading{margin-bottom:21px}.current-look{margin-bottom:18px}.editor-tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);margin-bottom:24px;flex-shrink:0}.editor-tabs button{color:#777d78;font-size:12px;padding:0 0 12px;border-bottom:1px solid transparent;flex:1}.editor-tabs button.active{color:#e2e3d9;border-bottom-color:#c3c9b9}.editor-pane{flex-shrink:0}.tool-title{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#c1c6bb;margin-bottom:16px}.palette-list{display:flex;gap:9px;margin:0 0 18px;justify-content:space-between}.palette-list button{display:flex;align-items:center;flex-direction:column;gap:8px;font-size:9px;color:#777e76;padding:4px 1px;min-width:36px}.palette-list i{width:24px;height:24px;border-radius:50%;border:3px solid var(--panel);outline:1px solid transparent}.palette-list .active{color:#e6e8df}.palette-list .active i{outline-color:#c3c9b9}.pad-frame{position:relative;padding:18px 0 20px;margin-bottom:7px}.pad-top,.pad-bottom{position:absolute;left:0;right:0;text-align:center;font-size:9px;color:#8b9284;pointer-events:none}.pad-top{top:0}.pad-bottom{bottom:0}.style-pad{--palette:#a7987c;position:relative;width:100%;height:210px;border:1px solid #44483f;border-radius:5px;touch-action:none;background:linear-gradient(180deg,#e1e0ce36,transparent 55%,#03090680),linear-gradient(90deg,#292c2a,var(--palette));cursor:crosshair;isolation:isolate}.pad-grid{position:absolute;inset:8px;opacity:.23;background-image:radial-gradient(#eaeee0 1px,transparent 1px);background-size:15px 15px}.style-pad:before,.style-pad:after{content:'';position:absolute;background:#e1e6d225;pointer-events:none}.style-pad:before{height:1px;left:0;right:0;top:50%}.style-pad:after{width:1px;top:0;bottom:0;left:50%}.pad-dot{display:block;position:absolute;width:16px;height:16px;border-radius:50%;border:2px solid #f0f2e9;background:#27332855;box-shadow:0 0 0 3px #0c120c35;transform:translate(-50%,-50%);pointer-events:none;z-index:2}.pad-left,.pad-right{position:absolute;top:50%;transform:translateY(-50%);font-size:9px;writing-mode:vertical-rl;color:#e6e9db80;pointer-events:none}.pad-left{left:7px}.pad-right{right:7px}.pad-values{display:flex;justify-content:space-around;gap:14px;margin:7px 0 25px;font-size:10px;color:#8d9783}.pad-values input{font:inherit;color:#d6decc;border:0;border-bottom:1px solid #454d3d;background:transparent;width:43px;padding:4px 0;text-align:center;appearance:textfield}.pad-values input::-webkit-inner-spin-button{appearance:none}.tool-hint{font-size:9px;line-height:1.9;color:#737e6b;margin:0 0 18px}.segmented{display:flex;gap:3px;border:1px solid #41473b;border-radius:3px;padding:3px;margin-bottom:17px}.segmented button{flex:1;font-size:10px;color:#838e79;padding:7px 4px;border-radius:2px}.segmented button.active{background:#363d30;color:#e0e7d4}.advanced-section{border-bottom:1px solid #3b4135;margin-bottom:18px;padding-bottom:4px}.advanced-section summary{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#cbd4be;list-style:none;cursor:pointer;padding:4px 0 15px}.advanced-section summary::-webkit-details-marker{display:none}.advanced-section summary svg{width:14px;height:14px}.advanced-section[open] summary svg{transform:rotate(180deg)}.section-body{padding:3px 0 10px}.curve-editor{display:block;width:100%;height:auto;stroke-width:1;stroke-linejoin:round;stroke-linecap:round;border:1px solid #42483b;background:#181c17;border-radius:3px;touch-action:none;overflow:visible;cursor:crosshair;margin-bottom:13px}.curve-grid{stroke:#343c2d;stroke-width:.7}.curve-diagonal{stroke:#626e54;stroke-dasharray:3 4;stroke-width:.7}#curve-path{stroke:var(--curve-color);stroke-width:1.6;fill:none}#curve-points circle{stroke:var(--curve-color);stroke-width:1.5;fill:#20271c;cursor:ns-resize}#curve-points circle:focus{fill:var(--curve-color);outline:none;stroke:#fff}.curve-presets{display:flex;gap:6px;margin:0 0 12px}.curve-presets button{font-size:9px;color:#a3b195;border:1px solid #424d38;padding:6px 5px;flex:1;border-radius:2px}.curve-presets button:hover{background:#333f29}.color-chips{display:flex;justify-content:space-between;gap:6px;margin:0 0 20px}.color-chips button{position:relative;background:var(--chip);width:23px;height:23px;border-radius:50%;border:4px solid var(--panel);outline:1px solid transparent}.color-chips button.active{outline-color:#dde3d3}.color-chips button.has-edit:after{content:'';position:absolute;left:5px;bottom:-11px;width:3px;height:3px;background:#d5ddc7;border-radius:50%}.wheel-frame{display:flex;justify-content:center;margin-bottom:24px}.grading-wheel{position:relative;width:190px;height:190px;border-radius:50%;background:radial-gradient(circle,#b0b3ac 0%,#b0b3ac33 50%,transparent 70%),conic-gradient(from 90deg,#bc6767,#b7b969,#6bb682,#67b9bc,#6c85ba,#b66eb8,#bc6767);border:7px solid #282e23;touch-action:none;cursor:crosshair;box-shadow:0 0 0 1px #515d42}.grading-wheel:after{content:'';position:absolute;left:50%;top:50%;width:3px;height:3px;background:#e2e8d4;border-radius:50%;transform:translate(-50%,-50%)}.preview-modes{display:flex;border:1px solid #3a3e36;border-radius:3px;padding:2px;margin-right:6px;flex-shrink:0}.preview-modes button{font-size:9px;white-space:nowrap;color:#7f8977;padding:5px 8px;border-radius:2px}.preview-modes button.active{background:#33392d;color:#dfe5d5}.fit-summary{border:1px solid #4a5640;border-radius:3px;padding:12px;margin-top:22px;flex-shrink:0}.fit-summary strong{font-size:10px;color:#c1cfaf;font-weight:400}.fit-summary small{display:block;font-size:9px;color:#839575;line-height:1.9;margin-top:7px}.panel-foot{padding-top:22px;margin-top:20px}.panel-foot .foot-line{margin-bottom:12px}
@media(min-width:1500px){.workbench{grid-template-columns:minmax(0,1fr) 370px}}
@media(max-width:1100px) and (min-width:721px){.workbench{grid-template-columns:minmax(0,1fr) 316px}.adjustments{padding:25px 21px}.stage-tools #add-photos{font-size:0;gap:0}.stage-label>span:last-child{max-width:130px}.stage-tools{gap:8px}.preview-modes button{padding:5px 6px}.stage-tools .divider{display:none}}
@media(max-width:720px){.workbench{display:flex}.adjustments{padding:25px}.stage-toolbar{height:auto;min-height:60px;flex-wrap:wrap;gap:6px;padding:10px 0}.stage-label>span:last-child{max-width:120px}.stage-tools{gap:5px}.stage-tools .icon-button{width:25px}.preview-modes{margin-right:0}.preview-modes button{font-size:8px;padding:5px}.editor-tabs{margin-bottom:24px}.style-pad{height:230px}.editor-pane .controls{grid-template-columns:1fr 1fr}.curve-editor{max-width:300px;margin-left:auto;margin-right:auto}.palette-list{justify-content:flex-start;gap:26px}.grading-wheel{width:200px;height:200px}.tool-hint{font-size:10px}.fit-summary{display:block}.panel-foot{display:block}.color-chips{justify-content:flex-start;gap:13px}}
.photo-column{min-height:0}@media(min-width:721px){.stage{min-height:0}}
@media(max-height:760px) and (min-width:721px){
  .stage-toolbar{height:49px}.looks-section{height:158px}.looks-header{height:34px}.preset-list{padding-top:7px}.preset-image{height:57px}.photo-strip{margin-bottom:8px}.photo-meta{height:28px}
  .empty-state{padding:18px 14px}.empty-art{height:46px;margin-bottom:16px;transform:scale(.7);transform-origin:center bottom}.empty-state .eyebrow{margin-bottom:12px}.empty-state h1{font-size:22px;margin-bottom:12px}.empty-copy{margin-bottom:19px}.empty-choose{min-height:35px}.sample-button{margin-top:11px}.file-hint{margin-top:17px}
  .adjustments{padding-top:25px}.panel-heading{margin-bottom:20px}.current-look{padding:11px 0;margin-bottom:18px}.control{margin-bottom:16px}.control-heading{margin-bottom:9px}.fine-details{padding-top:13px}.panel-foot{padding-top:20px}
}
/* Sensor development stays beside the creative tools. */
.raw-info{font-size:12px;line-height:1.7;color:var(--muted);margin:14px 0 24px}.raw-wb-label{display:block;font-size:12px;margin:24px 0 10px}.raw-select{width:100%;padding:12px;border:1px solid #424443;border-radius:6px;color:#ddd;background:#242625;font:inherit;font-size:12px;margin-bottom:20px}.raw-camera-note{font-size:11px;line-height:1.8;border-left:2px solid #8d876d;padding-left:12px;color:#aaa79b;margin-top:24px}.raw-status{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;padding:12px 18px;border-radius:6px;background:#202322ee;color:#e0ddcf;font-size:12px;z-index:5;white-space:nowrap}#raw-wb-controls input:disabled{opacity:.35}.editor-tabs button{flex:1}.control-value:disabled{opacity:.45}#download-tiff:disabled{opacity:.55}

.raw-info{white-space:pre-line}.raw-select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
/* Base color: choose first, reveal coefficients only when needed. */
.editor-tabs{gap:13px}.matrix-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:15px}.matrix-card{min-width:0;text-align:left;padding:0 0 9px;border-bottom:2px solid transparent;color:#82858b}.matrix-card.active{border-color:var(--accent);color:#eee9dd}.matrix-card strong{font-size:10px;display:block;margin-top:9px;font-weight:500}.matrix-card small{display:none}.matrix-card .preset-image{width:100%;height:65px;border-radius:5px;overflow:hidden;background:#292c2d}.matrix-card .preset-placeholder{font-size:12px}.matrix-card canvas{width:100%;height:100%;object-fit:cover}.matrix-blend-head{display:flex;align-items:center;justify-content:space-between;margin:21px 0 20px;font-size:11px;color:#b7b9b3}.matrix-blend-head select{width:110px;margin:0;border-radius:5px}.matrix-blend-control{margin-bottom:19px}.matrix-compare{width:100%;background:#282b2b;border:1px solid #353b36;border-radius:6px;min-height:36px;font-size:10px;color:#b4bbaa}.matrix-compare.held{background:#414a3b;color:#fff}.matrix-swatches{display:flex;gap:6px;margin:17px 0 25px}.matrix-swatches>span{flex:1;overflow:hidden;border-radius:3px}.matrix-swatches i{display:block;height:12px}.matrix-grid{display:grid;grid-template-columns:33px repeat(3,1fr);gap:5px;margin:20px 0}.matrix-axis,.matrix-corner{display:flex;align-items:center;justify-content:center;font-size:10px;color:#7f8779;min-height:22px}.matrix-corner{font-size:8px;white-space:nowrap}.matrix-grid button{font-size:12px;font-variant-numeric:tabular-nums;padding:12px 2px;background:#282c28;color:var(--matrix-channel);border:1px solid #343d30;border-radius:5px;min-height:44px}.matrix-grid button.selected{border-color:#c2c9b9;background:#3a4333}.matrix-cell-editor{padding:15px;border-radius:8px;background:#262a24;margin-bottom:20px}.matrix-cell-editor .control-heading{margin-bottom:13px}.matrix-cell-editor .tool-hint{margin-bottom:12px}.matrix-cell-value{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#8f9985;margin:15px 0}.matrix-cell-value input{color:#e0e5d6;font-size:17px;font-variant-numeric:tabular-nums;background:none;border:0;border-bottom:1px solid #49523f;width:80px;text-align:right;padding:5px 0}.matrix-lock{display:flex;gap:14px;align-items:center;justify-content:space-between;margin-bottom:15px}.matrix-lock strong{font-size:11px;font-weight:400;display:block;color:#ccd3c4}.matrix-lock small{font-size:9px;color:#7e8b72;display:block;margin-top:6px}.matrix-lock input{appearance:none;width:32px;height:20px;border-radius:12px;background:#464d40;flex-shrink:0;position:relative;cursor:pointer;transition:background .15s}.matrix-lock input:checked{background:#a4b695}.matrix-lock input:before{content:'';position:absolute;width:14px;height:14px;border-radius:50%;background:#eef0e9;top:3px;left:3px;transition:transform .15s}.matrix-lock input:checked:before{transform:translateX(12px)}.matrix-fit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-bottom:15px}.matrix-fit-grid span{background:#282c28;padding:9px;font-size:11px;font-variant-numeric:tabular-nums;text-align:center;color:#a2ac99;border-radius:3px}
@media(max-width:720px){.matrix-card .preset-image{height:80px}.matrix-cards{gap:12px}.matrix-grid button{min-height:48px}.matrix-cell-editor{padding:19px}}
/* Color intent: a touch surface, with the photograph as the other control. */
.color-touch-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 20px}.color-touch-title>span{font-size:12px;letter-spacing:.2px;color:#d4d7ce}.touch-pick-button{display:flex;width:100%;align-items:center;gap:10px;padding:12px 13px;border:1px solid #40463d;border-radius:10px;color:#bec7b4;background:#282d25;font-size:11px;text-align:left}.touch-pick-button svg{width:15px;height:15px}.touch-pick-button i{font-style:normal;margin-left:auto;color:#879d74}.touch-pick-button.active{border-color:#a8bd99;background:#34432d;color:#e4efdb}.touch-colors{display:flex;align-items:center;justify-content:space-between;gap:3px;margin:21px 0 19px}.touch-colors button{width:31px;height:31px;border:6px solid var(--panel);outline:1px solid transparent;border-radius:50%;background:var(--chip);position:relative}.touch-colors button.active{outline-color:#d1d8c7}.touch-selected{display:flex;align-items:center;gap:9px;margin:0 0 8px}.touch-selected>span:first-child{width:13px;height:13px;border-radius:50%;background:#7698c5;box-shadow:0 0 0 3px #eceee608}.touch-selected strong{font-weight:400;font-size:12px;color:#d7ddce}.touch-selected>span:last-child{margin-left:auto;font-size:9px;color:#86927a}.touch-pad-wrap{position:relative;padding:24px 0 24px;margin:5px 0 9px}.touch-top,.touch-bottom{position:absolute;left:0;right:0;text-align:center;font-size:9px;letter-spacing:.5px;color:#899a7e}.touch-top{top:2px}.touch-bottom{bottom:2px}.touch-pad{position:relative;height:184px;--touch-left:#478f84;--touch-center:#527c9f;--touch-right:#7a639d;border-radius:22px;overflow:hidden;touch-action:none;cursor:crosshair;background:linear-gradient(0deg,#747872,transparent 80%),linear-gradient(90deg,var(--touch-left),var(--touch-center),var(--touch-right));box-shadow:inset 0 0 0 1px #eef8db15,inset 0 0 50px #14231325}.touch-cross{position:absolute;inset:17px;opacity:.15;pointer-events:none;background:linear-gradient(90deg,transparent calc(50% - .5px),#fff calc(50% - .5px),#fff calc(50% + .5px),transparent calc(50% + .5px)),linear-gradient(0deg,transparent calc(50% - .5px),#fff calc(50% - .5px),#fff calc(50% + .5px),transparent calc(50% + .5px))}.touch-origin{position:absolute;left:50%;top:50%;width:4px;height:4px;border-radius:50%;background:#f5f9e485;transform:translate(-50%,-50%);pointer-events:none}#touch-cursor{position:absolute;left:50%;top:50%;width:25px;height:25px;border:2px solid #fff;border-radius:50%;transform:translate(-50%,-50%);background:#eff7e214;box-shadow:0 0 0 5px #15211012,0 2px 9px #0b150833;pointer-events:none}#touch-left,#touch-right{position:absolute;top:50%;font-size:10px;color:#f0f5e499;pointer-events:none;transform:translateY(-50%)}#touch-left{left:12px}#touch-right{right:12px}.touch-hint{font-size:10px;line-height:1.8;color:#85957a;min-height:18px;margin:0 0 18px}.touch-bases{margin-top:23px;border-top:1px solid #394132;padding-top:17px}.touch-bases>summary{display:flex;align-items:center;gap:9px;list-style:none;font-size:11px;color:#afbda1;cursor:pointer}.touch-bases>summary::-webkit-details-marker{display:none}.touch-bases>summary>span{margin-left:auto;font-size:10px;color:#6f8262}.touch-bases>summary>svg{width:13px;height:13px}.touch-bases[open]>summary>svg{transform:rotate(180deg)}.touch-bases .section-body{padding-top:22px}.touch-bases .matrix-grid button:disabled{opacity:1;cursor:default}.touch-bases .matrix-grid button.selected{background:#282c28;border-color:#343d30}.touch-bases .matrix-lock{display:none}.touch-photo-pin{position:absolute;width:25px;height:25px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 4px #17231755,0 2px 12px #0008;transform:translate(-50%,-50%);pointer-events:none;z-index:4}.color-picking{cursor:crosshair;touch-action:none}#pane-matrix .matrix-compare{border-radius:9px;min-height:36px}#pane-matrix .tool-hint{font-size:10px}.touch-colors button:focus-visible{outline-offset:3px}.touch-pad:focus-visible{outline:2px solid #d1e0c3;outline-offset:5px}.touch-pad-wrap~.touch-hint+button{font-size:10px}
@media(max-width:720px){.touch-pad{height:220px}.touch-colors button{width:36px;height:36px}.touch-pick-button{min-height:44px}}
/* A live result, not nine editing targets. */
.result-matrix{margin-top:23px;padding:17px 14px 14px;border:1px solid #3d423c;border-radius:15px;background:linear-gradient(150deg,#ffffff04,transparent)}.result-matrix-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.result-matrix-heading strong{font-size:11px;font-weight:500;color:#c8d0bf}.result-matrix-heading>span{font-size:8px;color:#84917a}.result-matrix-grid{display:flex;flex-direction:column;gap:5px}.result-matrix-row{display:grid;grid-template-columns:32px repeat(3,minmax(0,1fr));gap:5px;align-items:center}.result-matrix-row [role=columnheader],.result-matrix-row [role=rowheader]{font-size:9px;text-align:center;color:#818b7a}.result-matrix-row [role=columnheader]{padding:0 0 3px}.result-matrix-row [role=columnheader]:first-child{font-size:8px}.result-matrix-row [role=cell]{display:flex;align-items:center;justify-content:center;min-height:35px;border-radius:6px;font-size:12px;font-variant-numeric:tabular-nums;color:rgb(var(--result-rgb));background:rgba(var(--result-rgb),var(--matrix-weight,.035));transition:background .3s,color .3s}.result-matrix-row [role=cell].negative{background:#808a9b13}.result-matrix.pending [role=cell]{opacity:.4}.result-matrix-caption{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:13px}.result-matrix-caption>span{font-size:8px;color:#8c9981}.result-matrix-caption button{font-size:9px;color:#bac9ad}.result-matrix>p{font-size:9px;line-height:1.8;color:#75816b;margin:11px 0 0}.result-matrix-caption button:focus-visible{outline:2px solid #ccd7be;outline-offset:4px}
/* Three intentions, one camera recipe. */
.editor-tabs{gap:24px}.editor-tabs [hidden]{display:none!important}.flow-intro{font-size:11px;line-height:1.8;color:#94a187;margin:0 0 16px}.flow-raw-button{font-size:10px;text-align:left;color:#9daa92;padding:0 0 18px}.flow-disclosure{margin-top:20px;border-top:1px solid #394032;padding-top:14px;flex-shrink:0}.flow-disclosure>summary{display:flex;align-items:center;gap:8px;list-style:none;font-size:11px;color:#b8c5a9;cursor:pointer}.flow-disclosure>summary::-webkit-details-marker{display:none}.flow-disclosure>summary span{font-size:9px;color:#75856b;margin-left:auto}.flow-disclosure>summary svg{width:13px;height:13px;margin-left:auto}.flow-disclosure[open]>summary svg{transform:rotate(180deg)}.flow-fine-body{padding-top:23px}.flow-strength{margin:22px 0 4px}.adjustments .looks-section{height:auto;flex-shrink:0;border:0;padding:0;margin:0;overflow:visible}.adjustments .looks-header{height:35px;gap:10px}.adjustments .looks-tabs{gap:14px}.adjustments .look-tab{font-size:10px}.adjustments #import-project{font-size:0;gap:0}.adjustments #import-project svg{width:15px;height:15px}.adjustments .preset-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px;overflow:visible;padding-top:13px;padding-bottom:0}.adjustments .preset-card{width:auto;min-width:0;margin:0}.adjustments .preset-image{height:74px;width:100%;border-radius:9px}.adjustments .preset-card strong{font-size:11px}.adjustments .preset-card small{font-size:8px;white-space:normal;line-height:1.5}.adjustments .touch-bases{margin-top:21px}.adjustments .touch-bases>summary{font-size:10px}.light-zones{display:flex;gap:5px;margin:22px 0 8px;border:1px solid #3d4535;border-radius:9px;padding:3px}.light-zones button{flex:1;padding:8px 3px;font-size:10px;color:#849575;border-radius:6px}.light-zones button.active{background:#35412d;color:#d9e4cd}.light-intent-pad{position:relative;height:190px;border-radius:22px;touch-action:none;cursor:crosshair;background:linear-gradient(0deg,#24292255,#f0ecda33),linear-gradient(90deg,#75806c,#535d4d,#31382c);box-shadow:inset 0 0 0 1px #fff1}.light-intent-pad #light-intent-dot{position:absolute;width:25px;height:25px;border:2px solid #fff;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 5px #13250c22;pointer-events:none}.intent-left,.intent-right{position:absolute;top:50%;transform:translateY(-50%);font-size:10px;color:#edf4e0a0;pointer-events:none}.intent-left{left:12px}.intent-right{right:12px}.light-intent-pad:focus-visible{outline:2px solid #d1e0c3;outline-offset:5px}.light-picking{cursor:crosshair;touch-action:none}.result-matrix{flex-shrink:0}.result-curve-heading{font-size:9px;color:#93a087;margin:16px 0 7px}#result-curves{width:100%;height:auto;display:block}.result-curve-grid{stroke:#8da27b12;fill:none;stroke-width:1}.result-curve-diagonal{stroke:#879b7340;stroke-dasharray:3 4;fill:none}.result-curve-line{stroke-width:1.4;fill:none}.result-curve-line.red{stroke:#d59186}.result-curve-line.green{stroke:#9db690}.result-curve-line.blue{stroke:#8ba9ce}.result-matrix.pending #result-curves{opacity:.4}.result-matrix-caption{flex-wrap:wrap;row-gap:8px}.fit-review{flex-shrink:0;padding:17px 0 4px;border-top:1px solid #30352c;margin-top:8px}.fit-review>div:first-child{display:flex;gap:14px;align-items:baseline;justify-content:space-between}.fit-review strong{font-weight:400;font-size:11px;color:#bac5af}.fit-review #review-status{font-size:10px;color:#8a9980}.fit-review>small{display:block;font-size:9px;color:#68775f;line-height:1.7;margin-top:11px}.review-groups{display:flex;gap:12px;margin-top:12px}.review-group{display:flex;gap:10px;align-items:center;border:1px solid #343d2d;border-radius:8px;padding:9px 12px;font-size:10px;color:#a4b299}.review-group small{font-size:8px;color:#7a8c6c}.review-swatches{display:flex;border-radius:4px;overflow:hidden}.review-swatches i{width:15px;height:17px}.flow-fine-body .editor-pane{padding:0}.panel-foot{margin-top:10px}.fit-summary{display:none!important}
@media(max-width:720px){.fit-review>div:first-child{flex-direction:column;gap:7px}.review-groups{flex-wrap:wrap}.light-intent-pad{height:220px}.adjustments .preset-image{height:110px}.flow-disclosure>summary{min-height:25px}.result-matrix-caption>span{font-size:9px}}
.touch-axis{display:flex;gap:14px;justify-content:center;margin:17px 0 3px}.touch-axis button{font-size:10px;color:#7d8f6e;padding:4px 6px;border-bottom:1px solid transparent}.touch-axis button.active{color:#c9d8ba;border-color:#acbd9a}.global-color-pad{position:relative;height:155px;border-radius:18px;touch-action:none;cursor:crosshair;background:linear-gradient(180deg,#b08d9e60,transparent,#678b6360),linear-gradient(90deg,#59798b,#85887c,#a4906b)}#global-color-dot{position:absolute;width:23px;height:23px;border:2px solid white;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 4px #24352122;pointer-events:none}.global-top,.global-bottom{position:absolute;left:50%;transform:translateX(-50%);font-size:9px;color:#edf1df90;pointer-events:none}.global-top{top:10px}.global-bottom{bottom:10px}.global-color-pad:focus-visible{outline:2px solid #d1e0c3;outline-offset:4px}
.download-ready{display:block;font-size:11px;color:#c8d7b8;border:1px solid #4a573f;border-radius:8px;padding:12px 14px;margin-top:12px;text-decoration:none;overflow-wrap:anywhere}.download-ready:hover{background:#35432c}
/* Reserve the same space before, during and after a fit. Photo geometry must
   not depend on how many review swatches have arrived. */
.fit-review>div:first-child{min-width:0;line-height:16px}
.fit-review strong{flex-shrink:0;white-space:nowrap}
.fit-review #review-status{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;height:16px}
.review-groups{height:44px;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;align-items:flex-start;scrollbar-width:thin;scrollbar-color:#434d3c transparent}
.review-group{flex-shrink:0;white-space:nowrap}
/* The sampled source color gives the light gesture an immediate visual anchor.
   It stays independent of the in-flight rendered frame. */
.light-intent-pad{background:linear-gradient(0deg,#080a0e85,transparent 50%,#ffffff80),linear-gradient(90deg,#ffffff30,transparent 60%,#00000030),rgb(var(--light-sample,83 93 77))}
.light-intent-pad #light-intent-dot{background:rgb(var(--light-sample,83 93 77));box-shadow:0 0 0 5px #0002,0 1px 8px #0005;z-index:1}
.light-intent-pad .intent-left,.light-intent-pad .intent-right{color:#fff;text-shadow:0 1px 4px #000b}
#light-sample-label{position:absolute;top:13px;left:50%;transform:translateX(-50%);padding:4px 8px;border-radius:9px;background:#1118;color:#fff;font-size:9px;white-space:nowrap;pointer-events:none}
#light-hint{min-height:54px;line-height:18px}
@media(max-width:720px){.fit-review #review-status{width:100%}.review-groups{flex-wrap:nowrap}}
#light-pick.sampled{background:rgb(var(--light-sample));color:var(--light-ink);border-color:#ffffff35}
#light-pick.sampled i{color:inherit;opacity:.75}
#light-pick.sampled.active{border-color:#ddd;box-shadow:0 0 0 2px #ffffff12}
.light-zones{background:#191c20;border-color:#ffffff25}
.light-zones button{background:rgb(var(--light-zone-color,66 66 66));color:var(--light-zone-ink,#fff);transition:box-shadow .15s}
.light-zones button.active{background:rgb(var(--light-zone-color,66 66 66));color:var(--light-zone-ink,#fff);box-shadow:inset 0 0 0 1.5px var(--light-zone-ink,#fff);font-weight:600}
/* Compact tools: visual state first, detail at the point of use. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.adjustments{padding-top:25px}.current-look{border:0;padding:0;margin-bottom:22px;gap:12px}.current-look>span{font-size:16px;letter-spacing:.5px}.current-look #reset{margin-left:auto}.current-look .inline-help{flex-shrink:0}
.editor-tabs{margin-bottom:23px}.flow-intro,.preset-card small{display:none}.flow-raw-button{padding-bottom:15px;color:#bbc3b4}
.gesture-toolbar{gap:8px;margin-bottom:14px;align-items:center}.gesture-toolbar .touch-pick-button{width:112px;min-height:36px;padding:8px 11px;font-size:11px;border-radius:9px}.gesture-toolbar .gesture-reset{margin-left:auto;width:32px;height:32px;padding:6px;justify-content:center}.gesture-reset svg{width:15px;height:15px}
.pick-swatch{display:none;width:9px;height:9px;border-radius:50%;border:1px solid currentColor;margin-left:auto!important;background:rgb(var(--light-sample));opacity:.8}#light-pick.sampled .pick-swatch{display:block}
.light-zones{margin-top:12px}.light-zones button{font-size:9px;padding:9px 2px}.touch-pad-wrap{margin-bottom:0}.gesture-coach{font-size:10px;line-height:18px;color:#85957c;text-align:center;margin:5px 0 16px}.touch-selected{margin-top:20px}.touch-axis{margin-top:18px;margin-bottom:4px}.touch-axis button{font-size:10px}.matrix-compare{display:flex;align-items:center;justify-content:center;gap:7px;width:auto;min-width:90px;padding:8px 12px;margin:10px auto 0}.matrix-compare svg{width:13px;height:13px}
.inline-help{position:relative;display:inline-block;font-size:11px}.inline-help>summary{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;cursor:pointer;list-style:none;color:#899384}.inline-help>summary::-webkit-details-marker,.recipe-disclosure>summary::-webkit-details-marker,.model-check>summary::-webkit-details-marker{display:none}.inline-help>summary svg{width:16px;height:16px}.inline-help[open]>summary,.inline-help>summary:hover{background:#ffffff0d;color:#d3dbc8}
.help-popover,.review-popover{position:fixed;z-index:60;width:min(275px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:18px;background:#25282a;border:1px solid #4a5049;border-radius:12px;box-shadow:0 10px 40px #0007;color:#bbc4b3;font-size:11px;line-height:1.8}.help-popover p,.help-popover .tool-hint,.help-popover .raw-camera-note,.help-popover .raw-info{margin:0 0 12px;font-size:11px;color:#bbc4b3;min-height:0;white-space:normal}.help-popover p:last-child{margin-bottom:0}.help-popover .touch-hint{min-height:0!important;line-height:1.8!important}
.recipe-disclosure{border-top:1px solid #394032;margin-top:20px;padding-top:14px;flex-shrink:0}.recipe-disclosure>summary{display:flex;align-items:center;gap:10px;font-size:11px;line-height:22px;color:#b8c5a9;list-style:none;cursor:pointer}.recipe-disclosure>summary svg{width:13px;height:13px}.recipe-disclosure>summary #result-matrix-status{margin-left:auto;color:#748469;font-size:9px}.recipe-disclosure[open]>summary>svg{transform:rotate(180deg)}.recipe-disclosure>.result-matrix{border:0;border-radius:0;margin:0;padding:17px 0 0;background:none}.recipe-disclosure .result-matrix-heading{margin-bottom:12px}.recipe-disclosure .result-matrix-heading strong{font-size:10px;color:#8e9d81}
.fit-review{height:43px;padding:8px 0 6px;margin-top:4px;border-color:#ffffff0c}.model-check>summary{display:flex;align-items:center;gap:8px;width:max-content;font-size:10px;line-height:22px;color:#87917e;list-style:none;cursor:pointer}.model-check>summary svg{width:13px;height:13px;color:#75816c}.model-check>summary i{width:5px;height:5px;border-radius:50%;background:#72776e}.model-check>summary i[data-state=close]{background:#93a889}.model-check>summary i[data-state=difference],.model-check>summary i[data-state=error]{background:#c4a37a}.model-check>summary i[data-state=pending]{opacity:.45}.review-popover{width:min(390px,calc(100vw - 32px))}.review-popover>strong{font-size:12px;font-weight:500;color:#d0d8c8}.review-popover #review-status{display:block;margin-top:7px;height:auto;white-space:normal;color:#a7b59b}.review-popover .review-groups{flex-direction:column;gap:7px;height:auto;margin-top:13px;overflow:visible}.review-popover .review-group{width:100%;font-size:10px;padding:8px 10px}.review-popover .review-swatches{margin-left:auto}.review-popover>p{font-size:10px;color:#8f9e83;margin:13px 0 0}
.raw-scope{font-size:9px;color:#89957e;margin:0 0 22px}.raw-select{font-size:11px}.flow-fine-body .inline-help{display:block;width:max-content;margin-left:auto}.adjustments .touch-bases>summary{font-size:10px}.adjustments .preset-card strong{font-size:11px}.adjustments .looks-section{margin-bottom:6px}.empty-state h1{font-size:24px;margin-bottom:24px;letter-spacing:1px}.empty-state .sample-button{margin-top:17px}.empty-state .file-hint{margin-top:25px;font-size:9px}
@media(max-width:720px){.gesture-toolbar .touch-pick-button{min-height:42px}.gesture-toolbar .gesture-reset,.inline-help>summary{width:38px;height:38px}.light-zones button{font-size:11px}.fit-review{height:43px}.adjustments{padding-top:23px}.touch-selected{margin-top:18px}}
/* Context tools: one task per panel, with the final recipe remaining global. */
#context-amount{position:relative;margin:0 0 18px;padding-right:35px}
#context-amount .inline-help{position:absolute;right:0;top:-7px}
#context-amount .control-heading{margin-bottom:7px}
#context-amount .control-heading label{font-size:10px;color:var(--muted)}
#context-amount .range-shell{height:16px}
.context-tool{margin-top:12px}
.context-tool>.flow-fine-body{padding:8px 0 14px}
.selected-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.selected-values label{display:flex;flex-direction:column;gap:9px;color:var(--muted);font-size:10px}
.selected-values input{min-width:0;width:100%;background:#ffffff08;border:1px solid var(--line);color:var(--text);padding:9px 8px;border-radius:6px;font:inherit;font-variant-numeric:tabular-nums}
.extra-adjustment{display:flex;align-items:center;gap:12px;padding:9px 0;font-size:10px;border-bottom:1px solid var(--line)}
.extra-adjustment span{flex:1;color:var(--muted)}
.extra-adjustment b{font-weight:400;font-variant-numeric:tabular-nums}
.extra-adjustment button{font-size:10px;color:var(--accent);padding:8px}

.web-icon-editor{display:flex;gap:18px;align-items:center;margin:24px 0}.web-icon-editor canvas{width:64px;height:64px;image-rendering:pixelated}.web-icon-editor input{display:block;max-width:110px;background:#292a29;border:1px solid #777;color:#eee;padding:8px}#cancel-raw{position:fixed;bottom:20px;left:20px;z-index:100;background:#292a29;padding:12px;border:1px solid #e5b828}

/* Workspace actions belong to the photo and style, outside global navigation. */
.stage-heading{display:flex;align-items:center;gap:16px;min-width:0}
.stage-toolbar .history-actions{display:flex;align-items:center;gap:4px;margin:0;padding:0 0 0 12px;border:0;border-left:1px solid var(--line);flex-shrink:0}
.stage-toolbar .history-actions .icon-button{width:30px;height:30px}
.adjustments{padding:0;overflow:hidden;min-height:0;display:flex;flex-direction:column}
.style-identity{padding:24px 27px 16px;flex-shrink:0}
.style-name-label{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.style-name-label label{font-size:10px;color:var(--muted);letter-spacing:.5px}
.style-identity .saved-indicator{display:block;font-size:10px;color:var(--muted)}
.style-identity input{width:100%;min-width:0;background:transparent;color:var(--text);font-size:18px;line-height:1.4;border:0;border-bottom:1px solid transparent;border-radius:0;padding:3px 0 7px}
.style-identity input:hover{border-bottom-color:var(--line)}
.style-identity input:focus{outline:none;border-bottom-color:var(--accent)}
.adjustment-content{flex:1;min-height:0;overflow-y:auto;padding:0 27px 24px;scrollbar-width:thin;scrollbar-color:#434446 transparent}
.studio-actions{display:flex;align-items:center;gap:10px;flex-shrink:0;padding:18px 27px;border-top:1px solid var(--line);background:var(--panel)}
.studio-actions button{flex:1;min-height:40px;font-size:12px;border-radius:5px}
.save-style-button{border:1px solid #464b47;color:var(--text);padding:0 16px}
.save-style-button:hover{background:#ffffff08;border-color:#747b71}
.studio-actions .primary-button{justify-content:space-between;gap:12px;padding:0 16px}
@media(min-width:1500px){.style-identity{padding-left:36px;padding-right:36px}.adjustment-content{padding-left:36px;padding-right:36px}.studio-actions{padding-left:36px;padding-right:36px}}
@media(max-width:1100px) and (min-width:721px){.style-identity{padding:22px 21px 14px}.adjustment-content{padding:0 21px 20px}.studio-actions{padding:16px 21px}}
@media(max-width:720px){.adjustments{padding:0;overflow:visible}.style-identity{padding:22px 25px 14px}.adjustment-content{overflow:visible;padding:0 25px 24px}.studio-actions{position:sticky;bottom:0;z-index:4;padding:16px 25px max(16px,env(safe-area-inset-bottom))}.stage-heading{gap:8px}.stage-toolbar .history-actions{gap:2px;padding-left:8px}.stage-toolbar .history-actions .icon-button{width:28px}.stage-tools{margin-left:auto}}
