/* Lumina: a quiet, image-first workspace. No external assets or fonts. */
.uwapp-body:has(.uwapp-lumina){background:#171a1c;overflow:hidden}
.uwapp-body:has(.uwapp-lumina) .uwapp-bar{height:44px;background:#202426;border-color:#353b3d;color:#d8ddda;box-shadow:none}
.uwapp-body:has(.uwapp-lumina) .uwapp-brand,.uwapp-body:has(.uwapp-lumina) .uwapp-help{color:#e5e9e4}
.uwapp-body:has(.uwapp-lumina) .uwapp-platform{color:#a8b0ac}
.uwapp-lumina.lm-studio{--lm-bg:#202426;--lm-surface:#272c2e;--lm-canvas:#171a1c;--lm-border:#373d3e;--lm-text:#e5e9e4;--lm-muted:#a0a9a5;--lm-accent:#d0e4ac;--lm-ink:#20291d;color:var(--lm-text);background:var(--lm-bg);height:calc(100dvh - 44px);flex:none;display:grid;grid-template-rows:74px minmax(0,1fr) 29px;font:13px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow:hidden}
.uwapp-lumina.lm-light{--lm-bg:#f1f3ee;--lm-surface:#fff;--lm-canvas:#dce0d8;--lm-border:#ccd2c8;--lm-text:#26332b;--lm-muted:#59665d;--lm-accent:#3d612f;--lm-ink:#fff}
.uwapp-lumina *{box-sizing:border-box}
.uwapp-lumina [hidden]{display:none!important}
.uwapp-lumina button,.lm-dialog button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:transparent;color:inherit;border:1px solid var(--lm-border,#4a514c);border-radius:7px;padding:8px 12px;min-height:36px;font:inherit;line-height:1.3;cursor:pointer;box-shadow:none;white-space:normal}
.uwapp-lumina button:hover,.lm-dialog button:hover{background:color-mix(in srgb,currentColor 7%,transparent);border-color:var(--lm-muted,#a0a9a5)}
.uwapp-lumina button:disabled{opacity:.35;cursor:default}
.uwapp-lumina :focus-visible,.lm-dialog :focus-visible{outline:2px solid #a3c77e;outline-offset:3px}
.uwapp-lumina svg,.lm-dialog svg{width:19px;height:19px;flex:none}
.uwapp-lumina .lm-primary,.lm-dialog .lm-primary{color:var(--lm-ink,#20291d);background:var(--lm-accent,#d0e4ac);border-color:transparent;font-weight:650}
.uwapp-lumina .lm-primary:hover,.lm-dialog .lm-primary:hover{filter:brightness(1.07)}
.uwapp-lumina .lm-icon{width:34px;height:34px;min-height:34px;padding:7px;border-color:transparent}
.uwapp-lumina .lm-icon span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.uwapp-lumina .lm-zoom-button{font-size:22px;line-height:1}
.uwapp-lumina .lm-top{display:flex;align-items:center;gap:20px;padding:13px 22px;border-bottom:1px solid var(--lm-border);background:var(--lm-bg)}
.uwapp-lumina .lm-project-title{display:flex;align-items:center;gap:12px;min-width:180px}
.uwapp-lumina .lm-project-title>div:last-child{display:flex;flex-direction:column}
.uwapp-lumina .lm-project-mark{display:grid;place-items:center;width:38px;height:42px;background:var(--lm-surface);border:1px solid var(--lm-border);border-radius:7px;color:var(--lm-accent)}
.uwapp-lumina input.lm-name{width:210px;background:transparent;color:var(--lm-text);font-size:15px;font-weight:600;padding:0;border:0;border-radius:0;min-height:23px}
.uwapp-lumina .lm-save-status{font-size:11px;color:var(--lm-muted);margin-left:auto}
.uwapp-lumina .lm-top-actions{display:flex;gap:7px}
.uwapp-lumina .lm-top-actions>button{font-size:12px}
.uwapp-lumina .lm-body{display:grid;grid-template-columns:76px minmax(0,1fr) 308px;min-height:0}
.uwapp-lumina .lm-rail{display:flex;flex-direction:column;gap:8px;align-items:center;padding:18px 8px 10px;border-right:1px solid var(--lm-border)}
.uwapp-lumina .lm-rail>button{width:58px;min-height:61px;border:none;display:flex;flex-direction:column;gap:7px;padding:9px 4px;color:var(--lm-muted);font-size:10px}
.uwapp-lumina .lm-rail>button svg{width:21px;height:21px}
.uwapp-lumina .lm-rail>button.active{background:color-mix(in srgb,var(--lm-accent) 12%,transparent);color:var(--lm-accent)}
.uwapp-lumina .lm-rail-bottom{margin-top:auto;display:grid;gap:5px}
.uwapp-lumina .lm-center{min-width:0;min-height:0;display:grid;grid-template-rows:49px minmax(120px,1fr) 155px;background:var(--lm-canvas)}
.uwapp-lumina .lm-toolbar{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:5px 15px;border-bottom:1px solid var(--lm-border);background:var(--lm-bg)}
.uwapp-lumina .lm-toolbar-group{display:flex;gap:5px;align-items:center}
.uwapp-lumina .lm-toolbar button{font-size:11px;border-color:transparent}
.uwapp-lumina .lm-toolbar button[aria-pressed=true]{background:var(--lm-surface);color:var(--lm-accent)}
.uwapp-lumina .lm-toolbar input[type=range]{width:100px}
.uwapp-lumina .lm-toolbar span{font-size:11px}
.uwapp-lumina .lm-divider{height:20px;width:1px;background:var(--lm-border);margin:0 10px}
.uwapp-lumina .lm-zoom{min-width:36px;text-align:center;color:var(--lm-muted);font-variant-numeric:tabular-nums}
.uwapp-lumina .lm-stage{overflow:auto;position:relative;display:flex;padding:24px;min-width:0;min-height:0;background:radial-gradient(ellipse at 50% 40%,color-mix(in srgb,var(--lm-surface) 50%,var(--lm-canvas)),var(--lm-canvas))}
.uwapp-lumina .lm-photo{position:relative;margin:auto;flex:none;box-shadow:0 16px 55px #0005;overflow:hidden;background:repeating-conic-gradient(#777 0% 25%,#999 0% 50%) 50%/16px 16px;touch-action:none}
.uwapp-lumina .lm-photo canvas{display:block;width:100%;height:100%}
.uwapp-lumina .lm-original{position:absolute;inset:0;pointer-events:none}
.uwapp-lumina .lm-compare-line{display:none;position:absolute;top:0;bottom:0;width:2px;background:#fff;box-shadow:0 0 3px #000;pointer-events:none}
.uwapp-lumina.lm-comparing .lm-compare-line{display:block}
.uwapp-lumina .lm-grid:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 33.1%,#fff8 33.2%,#fff8 33.4%,transparent 33.5%,transparent 66.4%,#fff8 66.5%,#fff8 66.7%,transparent 66.8%),linear-gradient(transparent 33.1%,#fff8 33.2%,#fff8 33.4%,transparent 33.5%,transparent 66.4%,#fff8 66.5%,#fff8 66.7%,transparent 66.8%)}
.uwapp-lumina .lm-drop-hint{display:none}
.uwapp-lumina .lm-dropping .lm-drop-hint{display:grid;place-items:center;position:absolute;inset:12px;border:2px dashed var(--lm-accent);background:#202426ee;color:#d0e4ac;border-radius:10px;font-size:24px;pointer-events:none}
.uwapp-lumina .lm-looks-bar{background:var(--lm-bg);border-top:1px solid var(--lm-border);padding:12px 20px 9px;min-width:0}
.uwapp-lumina .lm-looks-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}
.uwapp-lumina .lm-looks-heading>div{display:flex;gap:14px;align-items:baseline}
.uwapp-lumina .lm-looks-heading strong{font-size:12px;font-weight:550}
.uwapp-lumina .lm-looks-heading span{font-size:11px;color:var(--lm-muted)}
.uwapp-lumina .lm-looks-heading button{border:0;color:var(--lm-accent);font-size:11px;padding:0;min-height:20px}
.uwapp-lumina .lm-preset-strip{display:grid;grid-template-columns:repeat(6,minmax(65px,1fr));gap:10px;overflow:auto}
.uwapp-lumina .lm-preset{display:flex;flex-direction:column;gap:5px;min-width:65px;padding:0 0 3px;border:1px solid transparent;border-radius:5px;overflow:hidden;font-size:10px;line-height:1.4;color:var(--lm-muted)}
.uwapp-lumina .lm-preset canvas{width:100%;height:67px;object-fit:cover;display:block}
.uwapp-lumina .lm-preset.active{color:var(--lm-accent);border-color:var(--lm-accent)}
.uwapp-lumina .lm-side{min-width:0;min-height:0;overflow:hidden;display:flex;flex-direction:column;border-left:1px solid var(--lm-border);background:var(--lm-bg)}
.uwapp-lumina .lm-histogram{padding:16px 21px 12px;border-bottom:1px solid var(--lm-border)}
.uwapp-lumina .lm-histogram>div{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.2px;color:var(--lm-muted)}
.uwapp-lumina .lm-histogram>div span:last-child{letter-spacing:0}
.uwapp-lumina .lm-histogram canvas{display:block;width:100%;height:65px;opacity:.7;margin-top:7px}
.uwapp-lumina .lm-histogram small{display:block;margin-top:4px;font-size:9px}
.uwapp-lumina .lm-side-content{overflow:auto;min-height:0;scrollbar-width:thin;scrollbar-color:var(--lm-border) transparent}
.uwapp-lumina .lm-panel-body{padding:21px}
.uwapp-lumina .lm-panel-title h2{font-size:20px;font-weight:500;letter-spacing:-.6px;margin:0 0 6px;color:var(--lm-text)}
.uwapp-lumina .lm-panel-title p{font-size:11px;color:var(--lm-muted);margin:0 0 17px}
.uwapp-lumina .lm-auto{width:100%;color:var(--lm-accent);background:color-mix(in srgb,var(--lm-accent) 7%,transparent);border-color:color-mix(in srgb,var(--lm-accent) 30%,var(--lm-border));min-height:37px;font-size:12px}
.uwapp-lumina .lm-section{padding-top:21px;margin-top:18px;border-top:1px solid var(--lm-border)}
.uwapp-lumina .lm-section h3{font-size:11px;letter-spacing:.5px;text-transform:uppercase;font-weight:600;color:var(--lm-text);margin:0 0 17px}
.uwapp-lumina .lm-range{display:block;margin:0 0 14px}
.uwapp-lumina .lm-range>span{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;font-size:11px;color:var(--lm-muted)}
.uwapp-lumina .lm-range output{font-size:10px;color:var(--lm-text);font-variant-numeric:tabular-nums}
.uwapp-lumina input[type=range],.lm-dialog input[type=range]{display:block;width:100%;height:14px;margin:0;accent-color:#b5ce98;padding:0;cursor:pointer;border:0;background:transparent;min-height:0}
.uwapp-lumina .lm-wide{width:100%;margin-top:12px;font-size:12px}
.uwapp-lumina .lm-field,.lm-dialog .lm-field{display:flex;flex-direction:column;gap:7px;margin:13px 0;font-size:12px;color:var(--lm-muted,#a0a9a5)}
.uwapp-lumina .lm-field input:not([type=range]),.uwapp-lumina .lm-field select,.uwapp-lumina .lm-field textarea,.lm-dialog input:not([type=range]):not([type=checkbox]),.lm-dialog select{padding:8px 10px;min-height:36px;border-radius:6px;border:1px solid var(--lm-border,#424b43);background:var(--lm-surface,#2c332d);color:var(--lm-text,#e5e9e4);font:inherit;width:100%;max-width:100%;box-shadow:none}
.uwapp-lumina input[type=color]{height:40px}
.uwapp-lumina .lm-button-grid,.lm-dialog .lm-button-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:center}
.uwapp-lumina .lm-button-grid button{font-size:11px;padding:8px 6px}
.uwapp-lumina .lm-looks-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 10px}
.uwapp-lumina .lm-look{display:flex;flex-direction:column;padding:0 0 8px;overflow:hidden;font-size:11px;gap:7px}
.uwapp-lumina .lm-look canvas{display:block;width:100%;height:auto}
.uwapp-lumina .lm-layer{display:flex;justify-content:flex-start;width:100%;margin-top:9px;font-size:11px}
.uwapp-lumina .lm-layer span{max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:auto}
.uwapp-lumina .lm-layer.active{border-color:var(--lm-accent);color:var(--lm-accent)}
.uwapp-lumina .lm-muted{color:var(--lm-muted);font-size:11px}
.uwapp-lumina .lm-tool-card{display:flex;gap:10px;align-items:center;color:var(--lm-text);text-decoration:none;padding:14px 0;border-bottom:1px solid var(--lm-border)}
.uwapp-lumina .lm-tool-card>span{margin-left:auto;color:var(--lm-accent)}
.uwapp-lumina .lm-tool-card strong{font-size:12px;font-weight:550}
.uwapp-lumina .lm-tool-card p{color:var(--lm-muted);margin:3px 0 0;font-size:10px}
.uwapp-lumina .lm-tool-card:hover strong{color:var(--lm-accent)}
.uwapp-lumina .lm-swatches{display:grid;gap:5px;margin-top:12px}
.uwapp-lumina .lm-swatch{display:flex;justify-content:space-between;align-items:center;padding:10px;border-radius:5px;font-size:11px}
.uwapp-lumina .lm-status{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 16px;border-top:1px solid var(--lm-border);font-size:10px;color:var(--lm-muted);overflow:hidden}
.uwapp-lumina .lm-status>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.uwapp-lumina .lm-private{display:flex;align-items:center;gap:6px}
.uwapp-lumina .lm-dot{width:5px;height:5px;background:#aecb8c;border-radius:50%}
.uwapp-lumina .lm-error{color:#ffb4a3}
.lm-dialog{--lm-border:#424b43;--lm-text:#e5e9e4;--lm-muted:#b0b9b2;--lm-surface:#2c332d;color:var(--lm-text);background:#242b26;border:1px solid #495448;border-radius:16px;box-shadow:0 25px 100px #0008;width:500px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 40px);padding:28px;overflow:auto;font:13px/1.6 system-ui,sans-serif}
.lm-dialog::backdrop{background:#080e0bcc;backdrop-filter:blur(7px)}
.lm-dialog header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:18px}
.lm-dialog h2{font-size:26px;line-height:1.2;letter-spacing:-.8px;font-weight:500;margin:0;color:#edf3e9}
.lm-dialog .lm-icon{border:0;padding:3px;min-height:25px}
.lm-dialog .lm-icon span{display:none}
.lm-dialog .lm-muted,.lm-dialog .lm-credit{color:var(--lm-muted);font-size:11px}
.lm-dialog .lm-intro{font-size:14px;color:#d4e0d0}
.lm-dialog .lm-help-steps{padding-left:22px;margin:24px 0}
.lm-dialog .lm-help-steps li{padding-left:5px;margin-bottom:18px}
.lm-dialog .lm-help-steps li::marker{color:#bfd5a3}
.lm-dialog .lm-help-steps strong{font-size:13px;color:#e7efdf;font-weight:600}
.lm-dialog .lm-help-steps p{font-size:12px;color:var(--lm-muted);margin:5px 0 0}
.lm-dialog .lm-dialog-actions{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-top:22px}
.lm-dialog a{color:#c1d8a3}
.lm-dialog .lm-recent{display:flex;width:100%;justify-content:flex-start;margin:8px 0}
.lm-dialog .lm-shortcuts{display:grid;grid-template-columns:1fr 1fr;font-size:11px;gap:6px}
.lm-dialog .lm-shortcuts dd{margin:0;color:var(--lm-muted)}
.lm-dialog .lm-checkbox{display:flex;align-items:center;gap:8px;margin:10px 0;font-size:12px}
.lm-dialog .lm-checkbox input{accent-color:#b5ce98}
.lm-dialog .lm-wide{width:100%;margin-top:16px}
.lm-dialog .lm-print-image{width:100%;height:auto;display:block}
@media(max-width:1100px){.uwapp-lumina .lm-save-status{display:none}.uwapp-lumina .lm-top-actions{margin-left:auto}.uwapp-lumina .lm-body{grid-template-columns:66px minmax(0,1fr) 275px}.uwapp-lumina .lm-panel-body{padding:17px}.uwapp-lumina .lm-looks-heading span{display:none}.uwapp-lumina .lm-toolbar-group>span.lm-muted{display:none}}
@media(max-width:850px){.uwapp-lumina .lm-top{padding:10px 14px;gap:8px}.uwapp-lumina .lm-top-actions>button:not(.lm-primary) span{display:none}.uwapp-lumina .lm-top-actions>button:not(.lm-primary):not(:has(svg)){display:none}.uwapp-lumina .lm-body{grid-template-columns:58px minmax(0,1fr) 250px}.uwapp-lumina .lm-rail>button{width:48px}.uwapp-lumina .lm-preset-strip{gap:6px}.uwapp-lumina .lm-toolbar{padding:5px 8px}.uwapp-lumina .lm-divider{margin:0 2px}.uwapp-lumina .lm-looks-bar{padding:12px}.uwapp-lumina input.lm-name{width:170px}.uwapp-lumina .lm-project-mark{display:none}}
@media(max-width:650px){.uwapp-lumina.lm-studio{grid-template-rows:64px minmax(0,1fr) 26px}.uwapp-lumina .lm-body{grid-template-columns:1fr;grid-template-rows:57px minmax(170px,1fr) minmax(140px,34%)}.uwapp-lumina .lm-rail{flex-direction:row;padding:0 6px;gap:2px;border-bottom:1px solid var(--lm-border);justify-content:space-between}.uwapp-lumina .lm-rail>button{min-height:50px;gap:2px;font-size:9px}.uwapp-lumina .lm-rail>button svg{width:18px;height:18px}.uwapp-lumina .lm-rail-bottom{margin:0;display:flex;gap:0}.uwapp-lumina .lm-rail-bottom button:first-child{display:none}.uwapp-lumina .lm-center{grid-template-rows:40px minmax(90px,1fr)}.uwapp-lumina .lm-looks-bar{display:none}.uwapp-lumina .lm-histogram{display:none}.uwapp-lumina .lm-side{border-left:0;border-top:1px solid var(--lm-border)}.uwapp-lumina .lm-panel-body{padding:15px 18px}.uwapp-lumina .lm-panel-title h2{font-size:18px}.uwapp-lumina .lm-section{padding-top:14px;margin-top:14px}.uwapp-lumina .lm-stage{padding:14px}.uwapp-lumina .lm-status{padding:0 10px;font-size:9px;gap:6px}.uwapp-lumina .lm-status>span:nth-child(2){display:none}.uwapp-lumina .lm-project-title{min-width:100px}.uwapp-lumina input.lm-name{width:145px;font-size:13px}.uwapp-lumina .lm-project-title .lm-muted{font-size:10px}.uwapp-lumina .lm-top-actions .lm-primary span{display:none}.uwapp-lumina .lm-top-actions{gap:2px}.uwapp-lumina .lm-top-actions button{padding:6px 8px}}
@media(prefers-reduced-motion:reduce){.uwapp-lumina *{scroll-behavior:auto!important}}
@media print{.uwapp-body>.uwapp-bar,.uwapp-lumina,.uwapp-body>script{display:none!important}.lm-dialog:not(.lm-print-dialog){display:none!important}.lm-print-dialog{position:static;max-width:none;max-height:none;width:100%;border:0;box-shadow:none;background:white;padding:0;overflow:visible}.lm-print-dialog>*:not(.lm-print-image){display:none!important}.lm-print-dialog::backdrop{display:none}.lm-print-image{max-width:100%;max-height:95vh;object-fit:contain}.uwapp-body:has(.uwapp-lumina){overflow:visible;background:white}}

.uwapp-lumina .lm-center{grid-template-columns:minmax(0,1fr)}
.uwapp-lumina .lm-toolbar{min-width:0;overflow-x:auto;scrollbar-width:none}
.uwapp-lumina .lm-toolbar-group{flex:none}
@media(max-width:650px){.uwapp-lumina .lm-toolbar input[type=range]{width:65px}.uwapp-lumina .lm-toolbar-group{gap:2px}.uwapp-lumina .lm-toolbar .lm-icon{width:28px}.uwapp-lumina .lm-toolbar .lm-divider{margin:0}}


.uwapp-lumina .lm-clipping-overlay{position:absolute;inset:0;pointer-events:none}
.uwapp-lumina .lm-tone-kicker{font-size:9px;letter-spacing:.15em;color:var(--lm-muted)}
.uwapp-lumina .lm-tone-analysis{background:var(--lm-bg);border:1px solid var(--lm-border);border-radius:9px;padding:10px;margin:18px 0 12px}
.uwapp-lumina .lm-tone-head{display:flex;align-items:center;gap:8px;justify-content:space-between;margin-bottom:10px}
.uwapp-lumina .lm-tone-head strong{font-size:9px;letter-spacing:.12em;white-space:nowrap}
.uwapp-lumina .lm-tone-head select{max-width:155px;font-size:10px;padding:5px}
.uwapp-lumina .lm-tone-analysis canvas{display:block;width:100%;height:90px}
.uwapp-lumina .lm-tone-analysis p{font-size:10px;line-height:1.6;margin:8px 0}
.uwapp-lumina .lm-tone-analysis small{font-size:9px;line-height:1.5;display:block}
.uwapp-lumina .lm-tone-curve{width:100%;height:auto;display:block;margin:12px 0;background:#202a24;border-radius:7px;touch-action:none;cursor:crosshair}
.uwapp-lumina .lm-tone-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.uwapp-lumina .lm-tone-points{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}
.uwapp-lumina .lm-tone-points input,.uwapp-lumina .lm-tone-levels input{width:100%;padding:7px 3px;text-align:center;min-width:0}
.uwapp-lumina .lm-tone-points label{font-size:10px}
.uwapp-lumina .lm-tone-panel .lm-section>select{width:100%;margin:7px 0}
@media(max-width:650px){.uwapp-lumina .lm-rail{justify-content:flex-start;overflow-x:auto;scrollbar-width:none}.uwapp-lumina .lm-rail>button{flex:0 0 40px;width:40px}.uwapp-lumina .lm-rail-bottom{flex:none}.uwapp-lumina .lm-tone-analysis canvas{height:75px}}

.uwapp-lumina.lm-tone-active .lm-histogram{display:none}
.uwapp-lumina .lm-tone-panel .lm-section{margin-top:16px;padding-top:16px}
.uwapp-lumina .lm-tone-levels label{display:flex;flex-direction:column;justify-content:space-between}

.uwapp-lumina .lm-tone-expand{display:none}
.uwapp-lumina .lm-tone-points input{appearance:textfield;-moz-appearance:textfield}
.uwapp-lumina .lm-tone-points input::-webkit-inner-spin-button,.uwapp-lumina .lm-tone-points input::-webkit-outer-spin-button{appearance:none;margin:0}
@media(max-width:650px){.uwapp-lumina .lm-tone-expand{display:flex;margin-top:10px}.uwapp-lumina.lm-tone-active.lm-tone-expanded .lm-body{grid-template-rows:57px minmax(90px,1fr) minmax(0,68%)}.uwapp-lumina .lm-tone-head select{max-width:180px}}

.uwapp-lumina .lm-tone-panel select{background:var(--lm-surface);color:var(--lm-text);border:1px solid var(--lm-border);border-radius:6px;padding:8px;font:inherit;min-width:0}
.uwapp-lumina .lm-tone-head select{font-size:10px;padding:5px}

/* QA polish: interactive crop, text selection, color mixer, zoom & pan, recent list, mobile rail. */
.uwapp-lumina .lm-crop-box{position:absolute;box-shadow:0 0 0 9999px #000a;outline:1px solid #fffd;cursor:move;touch-action:none;z-index:3;background:linear-gradient(90deg,transparent calc(33.33% - .5px),#fff6 calc(33.33% - .5px),#fff6 calc(33.33% + .5px),transparent calc(33.33% + .5px),transparent calc(66.67% - .5px),#fff6 calc(66.67% - .5px),#fff6 calc(66.67% + .5px),transparent calc(66.67% + .5px)),linear-gradient(transparent calc(33.33% - .5px),#fff6 calc(33.33% - .5px),#fff6 calc(33.33% + .5px),transparent calc(33.33% + .5px),transparent calc(66.67% - .5px),#fff6 calc(66.67% - .5px),#fff6 calc(66.67% + .5px),transparent calc(66.67% + .5px))}
.uwapp-lumina.lm-cropping .lm-photo{cursor:crosshair;overflow:hidden}
.uwapp-lumina .lm-crop-handle{position:absolute;width:18px;height:18px;margin:-9px 0 0 -9px;border:2px solid #fff;background:#20291dcc;border-radius:3px;box-shadow:0 0 4px #000a}
.uwapp-lumina .lm-h-nw{left:0;top:0;cursor:nwse-resize}.uwapp-lumina .lm-h-n{left:50%;top:0;cursor:ns-resize}.uwapp-lumina .lm-h-ne{left:100%;top:0;cursor:nesw-resize}.uwapp-lumina .lm-h-e{left:100%;top:50%;cursor:ew-resize}
.uwapp-lumina .lm-h-se{left:100%;top:100%;cursor:nwse-resize}.uwapp-lumina .lm-h-s{left:50%;top:100%;cursor:ns-resize}.uwapp-lumina .lm-h-sw{left:0;top:100%;cursor:nesw-resize}.uwapp-lumina .lm-h-w{left:0;top:50%;cursor:ew-resize}
@media(pointer:coarse){.uwapp-lumina .lm-crop-handle{width:26px;height:26px;margin:-13px 0 0 -13px}}
.uwapp-lumina .lm-text-box{position:absolute;outline:1.5px dashed var(--lm-accent);outline-offset:1px;pointer-events:none;z-index:2;border-radius:3px}
.uwapp-lumina .lm-stage.lm-pannable .lm-photo{cursor:grab}.uwapp-lumina .lm-stage.lm-panning .lm-photo{cursor:grabbing}
.uwapp-lumina .lm-photo{user-select:none;-webkit-user-select:none}
.uwapp-lumina button.lm-zoom{min-height:30px;padding:4px 6px;border-color:transparent;font-size:11px}
.uwapp-lumina .lm-segmented{display:flex;gap:2px;padding:3px;border:1px solid var(--lm-border);border-radius:8px;margin:0 0 14px;background:var(--lm-surface)}
.uwapp-lumina .lm-segmented>button{flex:1 1 0;min-width:0;min-height:30px;padding:5px 6px;font-size:11px;border:0;border-radius:6px;color:var(--lm-muted);overflow-wrap:anywhere}
.uwapp-lumina .lm-segmented>button.active{background:color-mix(in srgb,var(--lm-accent) 18%,transparent);color:var(--lm-accent);font-weight:600}
.uwapp-lumina .lm-swatch-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-inline-end:7px;flex:none}
.uwapp-lumina .lm-range>span .lm-swatch-dot+*{margin-inline-start:0}
.uwapp-lumina .lm-range>span:has(.lm-swatch-dot){justify-content:flex-start}.uwapp-lumina .lm-range>span:has(.lm-swatch-dot) output{margin-inline-start:auto}
.uwapp-lumina .lm-swatch-dot.lm-band-red{background:#e2574c}.uwapp-lumina .lm-swatch-dot.lm-band-orange{background:#ee9a3a}.uwapp-lumina .lm-swatch-dot.lm-band-yellow{background:#e8d24a}.uwapp-lumina .lm-swatch-dot.lm-band-green{background:#5cbf5a}
.uwapp-lumina .lm-swatch-dot.lm-band-aqua{background:#4cc8c8}.uwapp-lumina .lm-swatch-dot.lm-band-blue{background:#4a7fe0}.uwapp-lumina .lm-swatch-dot.lm-band-purple{background:#8f5ad8}.uwapp-lumina .lm-swatch-dot.lm-band-magenta{background:#d651b8}
.uwapp-lumina .lm-quiet{opacity:.7}
.uwapp-lumina .lm-exact{margin:14px 0;border:1px solid var(--lm-border);border-radius:8px;padding:8px 12px}
.uwapp-lumina .lm-exact>summary{cursor:pointer;font-size:12px;color:var(--lm-muted);padding:2px 0}
.uwapp-lumina .lm-exact[open]>summary{margin-bottom:4px}
.uwapp-lumina .lm-rotate-left svg{transform:scaleX(-1)}
.uwapp-lumina .lm-toggle{min-height:30px}
.uwapp-lumina .lm-field textarea{resize:vertical;min-height:70px}
.lm-dialog .lm-recent-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;margin:6px 0}
.lm-dialog .lm-recent-row .lm-recent{justify-content:flex-start;text-align:start;min-width:0;overflow-wrap:anywhere}
.lm-dialog .lm-recent-row small{white-space:nowrap}
@media(max-width:650px){
 .uwapp-lumina .lm-rail>button{flex:0 0 auto;width:auto;min-width:48px;padding:5px 6px;white-space:nowrap}
 .uwapp-lumina .lm-rail-bottom button:first-child{display:inline-flex}
 .uwapp-lumina .lm-top-actions>button:not(.lm-primary):not(:has(svg)){display:none}
 .uwapp-lumina .lm-crop-handle{width:20px;height:20px}
 .lm-dialog .lm-recent-row{grid-template-columns:minmax(0,1fr) auto}.lm-dialog .lm-recent-row small{grid-column:1;grid-row:2;margin-top:-4px}
}

/* Short viewports: the rail must never push the body over the status bar (1366×768 overlapped the footer). */
.uwapp-lumina .lm-body>*{min-height:0}
@media(min-width:651px){.uwapp-lumina .lm-body{grid-template-rows:minmax(0,1fr)}}
.uwapp-lumina .lm-rail{min-height:0;overflow-y:auto;scrollbar-width:none}
@media(max-height:860px) and (min-width:651px){.uwapp-lumina .lm-rail{gap:3px;padding-top:10px}.uwapp-lumina .lm-rail>button{min-height:52px;gap:4px;padding:6px 3px}.uwapp-lumina .lm-rail-bottom{gap:2px}}
/* Crop handles sit inside the box so the photo frame (overflow hidden for the shade) never clips them. */
.uwapp-lumina .lm-crop-handle{margin:0}
.uwapp-lumina .lm-h-n,.uwapp-lumina .lm-h-s{transform:translateX(-50%)}.uwapp-lumina .lm-h-e,.uwapp-lumina .lm-h-w{transform:translateY(-50%)}
.uwapp-lumina .lm-h-ne,.uwapp-lumina .lm-h-e{left:auto;right:0}.uwapp-lumina .lm-h-se{left:auto;right:0;top:auto;bottom:0}.uwapp-lumina .lm-h-s,.uwapp-lumina .lm-h-sw{top:auto;bottom:0}
@media(pointer:coarse){.uwapp-lumina .lm-crop-handle{margin:0}}
@media(max-width:650px){.uwapp-lumina .lm-crop-handle{margin:0}}
@media(max-width:650px){
 .uwapp-lumina .lm-top{min-width:0}
 .uwapp-lumina .lm-project-title{min-width:0;flex:1 1 auto}
 .uwapp-lumina .lm-project-title>div:last-child{min-width:0}
 .uwapp-lumina input.lm-name{width:100%;min-width:0}
 .uwapp-lumina .lm-top-actions{flex:none;margin-left:0}
 .uwapp-lumina .lm-top-actions button{min-width:34px;padding:6px 7px}
 .uwapp-lumina .lm-status>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}
.uwapp-lumina .lm-rail>button span{max-width:100%;overflow-wrap:anywhere;hyphens:auto;line-height:1.15;text-align:center}
@media(max-width:850px) and (min-width:651px){.uwapp-lumina .lm-body{grid-template-columns:64px minmax(0,1fr) 250px}.uwapp-lumina .lm-rail{padding-inline:4px}.uwapp-lumina .lm-rail>button{width:56px;font-size:9.5px}}
@media(max-width:650px){.uwapp-lumina .lm-rail>button span{overflow-wrap:normal;hyphens:none}}
.uwapp-lumina .lm-layer span{max-width:none;flex:1 1 auto;min-width:0;margin-right:0;margin-inline-end:auto;text-align:start}
.uwapp-lumina .lm-layer{gap:8px}
