.device-photo-dialog{width:min(1000px,94vw);max-height:90vh;overflow:auto;border:1px solid var(--border,#344857);border-radius:18px;background:var(--panel,#15212c);color:var(--text,#e6eef5);padding:24px}.device-photo-dialog::backdrop{background:#001020ba}.device-photo-dialog header{display:flex;justify-content:space-between;align-items:center}.device-photo-dialog label{display:block;margin:12px 0}.device-photo-dialog label input:not([type=checkbox]){display:block;width:100%;margin-top:6px}.device-photo-dialog label input[type=checkbox]{margin:0 12px}.photo-fields,.photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.photo-grid section{border:1px solid #54708366;border-radius:12px;padding:14px;overflow-wrap:anywhere}.photo-grid img{display:block;max-width:100%;max-height:200px;object-fit:contain;background:#fff;margin:8px auto}.device-photo-dialog button{margin:6px 8px 6px 0}.device-photo-dialog [role=status]{padding:12px;background:#54708320}.device-photo-dialog a{color:inherit;text-decoration:underline}@media(max-width:600px){.photo-fields,.photo-grid{grid-template-columns:1fr}.device-photo-dialog{padding:14px}}[data-theme=light] .device-photo-dialog{background:#f3f7fa;color:#173047}

.photo-editor canvas{display:block;max-width:100%;max-height:420px;margin:12px auto;touch-action:none;cursor:crosshair;background:#fff}.photo-crop-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}@media(max-width:600px){.photo-crop-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Explicit control surfaces avoid native light buttons inheriting pale dialog text. */
.device-photo-dialog{--photo-control-bg:#213747;--photo-control-text:#f2f7fb;--photo-control-border:#8da8bc;--photo-focus:#63dcff;--photo-disabled-bg:#29343e;--photo-disabled-text:#bfcbd5}
[data-theme=light] .device-photo-dialog{--photo-control-bg:#e0ebf2;--photo-control-text:#173047;--photo-control-border:#617d92;--photo-focus:#005f88;--photo-disabled-bg:#e4e9ed;--photo-disabled-text:#4a5d6b}
.device-photo-dialog button,.device-photo-dialog input:not([type=checkbox]),.device-photo-dialog select,.device-photo-dialog input::file-selector-button{background:var(--photo-control-bg);color:var(--photo-control-text);border:1px solid var(--photo-control-border);border-radius:7px;padding:9px 12px;font:inherit;box-sizing:border-box}
.device-photo-dialog button:not(:disabled){cursor:pointer}.device-photo-dialog button:hover:not(:disabled){filter:brightness(1.12)}
.device-photo-dialog button:disabled,.device-photo-dialog input:disabled,.device-photo-dialog select:disabled{opacity:1;background:var(--photo-disabled-bg);color:var(--photo-disabled-text);cursor:not-allowed}
.device-photo-dialog :is(button,input,select):focus-visible{outline:3px solid var(--photo-focus);outline-offset:3px}

.device-photo-dialog .photo-diagnostics{padding:14px;border:1px solid var(--photo-control-border);border-radius:12px;margin:12px 0;max-width:100%;}
.device-photo-dialog .photo-diagnostics summary{cursor:pointer;font-weight:600;}
.device-photo-dialog .photo-diagnostics pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.5;max-height:320px;overflow:auto;}

.device-photo-dialog .photo-candidate-selected{border:3px solid var(--photo-focus);box-shadow:0 0 0 2px var(--photo-control-bg);}

.photo-picker{width:min(1100px,94vw);max-height:90vh;overflow:auto;padding:20px;border:1px solid var(--photo-control-border);border-radius:16px;background:var(--panel,#15212c);color:var(--text,#e6eef5)}
.photo-picker::backdrop{background:#001020cc}.photo-picker-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.photo-picker-grid section{padding:14px;border:1px solid var(--photo-control-border);border-radius:12px;overflow-wrap:anywhere}.photo-picker-grid img{display:block;width:100%;height:180px;object-fit:contain;background:#fff;border-radius:8px}.photo-picker-grid h3{font-size:14px}.photo-picker-grid [role=status]{font-size:13px}
.photo-editor{padding:16px;border:1px solid var(--photo-control-border);border-radius:14px}.photo-wizard-tools select{max-width:100%}.photo-wizard-review{padding:14px;background:var(--photo-control-bg);border-radius:10px}.device-photo-dialog [hidden]{display:none!important}
[data-theme=light] .photo-picker{background:#f3f7fa;color:#173047}

.photo-wizard{width:min(1000px,94vw);max-height:90vh;overflow:auto;background:var(--panel,#15212c);color:var(--text,#e6eef5)}.photo-wizard::backdrop{background:#001020cc}[data-theme=light] .photo-wizard{background:#f3f7fa;color:#173047}

/* Give photographs priority over long retailer descriptions. */
.photo-picker{width:min(1400px,96vw)}
.photo-picker-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}
.photo-picker-grid section{display:flex;flex-direction:column;gap:12px;min-width:0}
.photo-picker-grid img{order:-1;height:clamp(260px,30vh,420px);background:#f6f8fa}
.photo-picker-grid img[hidden]{display:none!important}
.photo-picker-grid details{font-size:13px;line-height:1.45}.photo-picker-grid summary{cursor:pointer;font-weight:600}
.photo-picker-grid details h3{font-size:13px}.photo-picker-grid [role=status]{margin:0;white-space:normal}
.photo-picker-grid button{margin-top:auto;min-height:44px}
@media(max-width:600px){.photo-picker-grid{grid-template-columns:1fr}.photo-picker-grid img{height:260px}}

.photo-additional-views {margin:1rem 0}.photo-additional-views > summary {cursor:pointer;padding:.75rem;font-weight:600}.photo-additional-views .photo-grid {margin-top:.75rem}

.photo-picker-grid .photo-candidate-resolution{order:-1;margin:0;font-size:.85rem;font-weight:600}.photo-picker-grid img{order:-2}

.photo-editor canvas{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
