html,body{width:100%;height:100%}input::-ms-clear{display:none}input::-ms-reveal{display:none}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:#0000;font-family:sans-serif;line-height:1.15}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}address{font-style:normal;line-height:inherit;margin-bottom:1em}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{text-align:left;caption-side:bottom;padding-top:.75em;padding-bottom:.3em}input,button,select,optgroup,textarea{color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner{border-style:none;padding:0}[type=reset]::-moz-focus-inner{border-style:none;padding:0}[type=submit]::-moz-focus-inner{border-style:none;padding:0}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{resize:vertical;overflow:auto}fieldset{border:0;min-width:0;margin:0;padding:0}legend{width:100%;max-width:100%;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal;margin-bottom:.5em;padding:0;display:block}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button{height:auto}[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ui-canvas:var(--museum-color-bg-layout,#f3f0ea);--ui-surface-default:var(--museum-color-bg-container,#fffdf9);--ui-surface-muted:#f7f4ee;--ui-surface-accent:#f1ece4;--ui-surface-accent-strong:#e8e0d5;--ui-surface-wash:#faf8f3;--ui-surface-tint:#eee7de;--ui-text-primary:var(--museum-color-text,#24221f);--ui-text-secondary:var(--museum-color-text-secondary,#66615a);--ui-text-tertiary:#756f68;--ui-text-muted:#756f68;--ui-text-on-accent:#fffdf9;--ui-primary:var(--museum-color-primary,#70543b);--ui-primary-hover:#5f452f;--ui-primary-strong:#503824;--ui-primary-deep:#3f2b1d;--ui-secondary-bg:#f4efe8;--ui-secondary-hover:#eae2d8;--ui-secondary-text:#302b26;--ui-human:#70543b;--ui-human-wash:#f8f3ec;--ui-line-subtle:#4b3d3011;--ui-line-strong:#4b3d3024;--ui-line-accent:#70543b21;--ui-danger:var(--museum-color-error,#b94d45);--ui-success:var(--museum-color-success,#48745b);--ui-success-muted:#edf5ef;--ui-warning:var(--museum-color-warning,#a56c23);--ui-warning-muted:#fbf3e5;--ui-overlay:#231c1685;--ui-media-dark:#1d1b19;--ui-shadow-soft:0 1px 2px #30261d0d;--ui-shadow-card:0 10px 28px #30261d12;--ui-shadow-float:0 22px 64px #30261d29;--ui-shadow-accent:0 4px 12px #4f39282e;--ui-shadow-accent-hover:0 7px 18px #4f392833;--ui-shadow-hover:0 12px 26px #30261d1a;--ui-shadow-selected:0 8px 22px #30261d1a;--ui-ring:0 0 0 3px #70543b24;--ui-radius-xs:6px;--ui-radius-sm:8px;--ui-radius-md:10px;--ui-radius-lg:12px;--ui-radius-xl:14px;--ui-radius-pill:999px;--ui-type-caption:11px;--ui-type-label:12px;--ui-type-body:14px;--ui-type-section:16px;--ui-type-page:24px;--ui-leading-tight:1.25;--ui-leading-body:1.5;--ui-motion-fast:.12s;--ui-motion-base:.18s;--ui-motion-slow:.24s;--ui-ease-out:cubic-bezier(.16, 1, .3, 1);--ui-space-1:4px;--ui-space-2:8px;--ui-space-3:12px;--ui-space-4:16px;--ui-space-5:20px;--ui-space-6:24px;--ui-space-8:32px}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:radial-gradient(circle at 12% -10%, #8b6c4b17, transparent 30rem), var(--ui-canvas);min-width:320px;color:var(--ui-text-primary);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,PingFang SC,Noto Sans SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.5}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit}::selection{background:#70543b2e}.sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-tabs .ant-tabs-nav{margin:0}.app-tabs .ant-tabs-content-holder{display:none}.ui-card-header,.ui-card-content{padding:16px 18px}.ui-card-header{border-bottom:1px solid var(--ui-line-subtle);gap:6px;display:grid}.ant-btn{transition:color var(--ui-motion-fast) ease, background-color var(--ui-motion-fast) ease, border-color var(--ui-motion-fast) ease, transform var(--ui-motion-fast) var(--ui-ease-out)}.ant-btn:not(:disabled):active{transform:translateY(1px)scale(.985)}.ant-btn-primary:not(:disabled):hover{box-shadow:var(--ui-shadow-accent);transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){.ant-btn,.ant-select-dropdown,.ant-tabs-ink-bar{transition:none!important;animation:none!important}}:root{--app-bg:var(--ui-canvas);--app-card:var(--ui-surface-default);--app-muted:var(--ui-surface-muted);--app-border:var(--ui-line-subtle);--app-input:var(--ui-line-subtle);--app-fg:var(--ui-text-primary);--app-soft:var(--ui-text-secondary);--app-primary:var(--ui-primary);--app-success:var(--ui-success);--app-danger:var(--ui-danger);--app-radius:var(--ui-radius-md);--app-shadow:0 1px 2px #00000005;--app-panel-shadow:0 1px 2px #00000009, 0 10px 30px #00000006;--app-ring:0 0 0 2px #1111110d}.app-shell{background:var(--app-bg);min-height:100vh;color:var(--app-fg)}.persistent-view{display:contents}.persistent-view[hidden]{display:none}.topbar{z-index:50;border-bottom:1px solid var(--app-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;justify-content:space-between;align-items:center;gap:12px;min-height:46px;padding:6px 16px;display:flex;position:sticky;top:0}.brand,.topbar-actions,.upload-actions,.batch-actions,.gallery-actions,.gallery-form-actions,.exif-queue-actions,.museum-console-tools,.single-actions,.single-submit-bar,.backend-match-actions{align-items:center;gap:8px;display:flex}.brand{gap:7px;min-width:0}.brand-mark{flex:none;width:18px;height:18px}.brand-copy{align-items:baseline;gap:6px;min-width:0;display:flex}.brand h1{white-space:nowrap;margin:0;font-size:13px;font-weight:600;line-height:1.2}.brand-lead,.muted,.field-help,.gallery-line,.museum-console-summary,.small{color:var(--app-soft)}.brand-lead,.muted{margin:0;font-size:10px}.topbar-actions{flex-wrap:wrap;justify-content:flex-end}.view-tabs{border:1px solid var(--app-border);background:var(--app-muted);border-radius:8px;align-items:center;gap:2px;min-height:36px;padding:3px;display:inline-flex}.topbar-nav{align-items:center;display:flex}button:not([class*=ant-]):not([data-ui=interactive-surface]),.gallery-toolbar-link{border:1px solid var(--app-border);background:var(--app-card);min-height:30px;color:var(--app-fg);border-radius:8px;padding:0 10px;font-size:12px;font-weight:500;line-height:1;text-decoration:none;transition:background-color .14s,border-color .14s,color .14s,opacity .14s}button:not([class*=ant-]):not([data-ui=interactive-surface]):hover:not(:disabled),.gallery-toolbar-link:hover{background:var(--app-muted)}button:not([class*=ant-]):not([data-ui=interactive-surface]):disabled{cursor:not-allowed;opacity:.5}button:not([class*=ant-]):not([data-ui=interactive-surface]):focus-visible,input:not([class*=ant-]):focus-visible,textarea:not([class*=ant-]):focus-visible,select:focus-visible,.gallery-toolbar-link:focus-visible{border-color:var(--ui-line-strong);box-shadow:var(--app-ring);outline:none}[data-ui=interactive-surface]:focus-visible{box-shadow:var(--app-ring);outline:none}.view-tabs button{min-height:28px;color:var(--app-soft);background:0 0;border:0}.view-tabs button.active{background:var(--app-card);color:var(--app-fg);box-shadow:0 1px 2px #0000000d, inset 0 0 0 1px var(--app-border)}.danger,button.danger,.error-text{color:var(--app-danger)}.success-text{color:var(--app-success)}.health-pill,.single-status,.single-count,.badge,.backend-match-meta span,.gallery-media-meta>span,.museum-image-panel-count{border:1px solid var(--app-border);background:var(--app-muted);min-height:20px;color:var(--app-soft);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:0 7px;font-size:10px;font-weight:500;display:inline-flex}.health-pill.online,.single-status.ok,.single-status.busy,.badge.best{border-color:color-mix(in oklch, var(--app-success) 16%, var(--app-border));background:color-mix(in oklch, var(--ui-success-muted) 64%, white);color:var(--app-success)}.health-pill.offline{border-color:color-mix(in oklch, var(--app-danger) 18%, var(--app-border));background:color-mix(in oklch, var(--app-danger) 7%, white);color:var(--app-danger)}.status-dot,.pulse,.single-status:before{background:var(--app-soft);border-radius:999px;width:8px;height:8px}.status-dot,.single-status:before{content:"";display:inline-block}.health-pill.online .status-dot,.pulse.done,.pulse.submitted{background:var(--app-success)}.health-pill.offline .status-dot{background:var(--app-danger)}.backend-target-select-wrap{border:1px solid var(--app-border);background:var(--app-card);border-radius:999px;align-items:center;min-height:28px;padding:0 24px 0 14px;display:inline-flex;position:relative}.backend-target-select-wrap.online{border-color:color-mix(in oklch, var(--app-success) 16%, var(--app-border));background:color-mix(in oklch, var(--ui-success-muted) 64%, white);color:var(--app-success)}.backend-target-select-wrap.offline{border-color:color-mix(in oklch, var(--app-danger) 18%, var(--app-border));background:color-mix(in oklch, var(--app-danger) 7%, white);color:var(--app-danger)}.backend-target-select{min-width:7.6em;color:inherit;font:inherit;appearance:none;background:0 0;border:0;padding:0;font-size:12px;font-weight:600;line-height:1}.backend-target-select:focus{outline:none}.backend-target-caret{color:currentColor;pointer-events:none;font-size:10px;position:absolute;right:10px}.health-pill-text{font-size:10px}.pulse.failed,.pulse.error{background:var(--app-danger)}.panel,.single-panel,.single-stream-panel,.single-archive,.exif-queue-panel,.exif-editor-form,.batch-card,.batch-core-card,.backend-match-card,.gallery-card,.gallery-modal-body,.gallery-detail-section,.gallery-advanced-details,.museum-summary-card,.museum-stage,.museum-map-panel,.museum-folder-column,.museum-image-panel,.museum-state-card,.museum-detail-modal-body,.form-section,.single-details,.single-advanced,.empty-state{border:1px solid var(--app-border);background:var(--app-card);box-shadow:none;border-radius:10px}.section-heading,.single-panel-head,.single-workbench-head,.exif-editor-heading,.gallery-detail-head,.museum-console-head,.museum-stage-head,.museum-map-panel-head,.museum-folder-column-head,.museum-image-panel-head,.form-section-head,.batch-head,.batch-section-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-heading h2,.single-panel-head h2,.single-workbench-head h2,.form-section-head h3,.gallery-detail-title,.museum-stage h3,.museum-map-panel-head h3,.museum-image-panel h4,.batch-section-head strong{color:var(--app-fg);margin:0;font-size:15px;font-weight:600;line-height:1.25}.single-kicker,.form-section-kicker,.eyebrow,.gallery-detail-kicker,.museum-detail-modal-kicker{color:var(--app-soft);letter-spacing:0;text-transform:uppercase;font-size:11px;font-weight:500}.step-badge,.flow-index{border:1px solid var(--app-border);background:var(--app-muted);width:22px;height:22px;color:var(--app-soft);border-radius:999px;place-items:center;font-size:12px;display:inline-grid}input:not([class*=ant-]),textarea:not([class*=ant-]),select{border:1px solid var(--app-input);background:var(--app-card);width:100%;color:var(--app-fg);border-radius:6px;outline:none;font-size:13px;font-weight:400}textarea:not([class*=ant-]){resize:vertical;min-height:70px;padding:7px 9px;line-height:1.45}input:not([class*=ant-])::placeholder,textarea:not([class*=ant-])::placeholder{color:color-mix(in oklch, var(--app-soft) 72%, transparent)}label.field,.field{gap:6px;min-width:0;display:grid;position:relative}.field>span:first-child{color:var(--app-soft);font-size:11px;font-weight:500;line-height:1.35}.field-row,.batch-core-grid,.form-section-body,.form-fields,.single-advanced-grid,.gallery-advanced-body,.gallery-detail-lines{gap:10px;display:grid}.field-row,.single-archive .field-row{grid-template-columns:repeat(2,minmax(0,1fr))}.field-invalid input,.field-invalid textarea,.field-invalid select{border-color:color-mix(in oklch, var(--app-danger) 55%, var(--app-border));background:color-mix(in oklch, var(--app-danger) 5%, white)}.field-soft-missing input,.field-soft-missing textarea,.field-soft-missing select{border-color:color-mix(in oklch, var(--ui-warning) 35%, var(--app-border));background:var(--ui-warning-muted)}.field-help{color:var(--app-soft);margin:-1px 0 0;font-size:11px;line-height:1.45}.field-help.error{color:var(--app-danger)}.tag-editor{gap:6px;min-height:0;display:grid}.tag-editor-chips,.tag-row{flex-wrap:wrap;gap:4px;display:flex}.tag-editor-chips .ant-tag{margin-inline-end:0}.exif-queue-actions{flex:none}.autocomplete-option{justify-content:space-between;align-items:center;gap:12px;min-width:0;font-weight:400;display:flex}.autocomplete-option-meta{color:var(--app-soft);white-space:nowrap;margin-left:auto;font-size:10px}.error-text,.success-text{border:1px solid var(--app-border);border-radius:var(--ui-radius-md);background:var(--app-card);align-items:center;min-height:28px;margin:0;padding:0 10px;font-size:12px;font-weight:400;line-height:1.45;display:inline-flex}.success-text{border-color:color-mix(in oklch, var(--app-success) 16%, var(--app-border));background:color-mix(in oklch, var(--ui-success-muted) 60%, white)}.error-text{border-color:color-mix(in oklch, var(--app-danger) 16%, var(--app-border));background:color-mix(in oklch, var(--app-danger) 4%, white)}.result-desc,.reasoning-text,.evidence-list,.gallery-detail-value{color:color-mix(in oklch, var(--app-fg) 78%, var(--app-soft));font-size:13px;font-weight:400;line-height:1.65}.app-shell>.panel.form-wide,.gallery-workbench,.batch-workbench,.museum-console{width:auto;max-width:none;height:calc(100vh - 80px);margin:12px;overflow:auto}.gallery-workbench,.batch-workbench,.museum-console{align-content:start;gap:10px;padding:12px;display:grid}.exif-console,.single-workbench{height:calc(100vh - 52px);padding:10px;overflow:hidden}.exif-console{background:var(--app-bg);grid-template-rows:minmax(0,1fr);gap:0;display:grid}.single-workbench{background:var(--app-bg);grid-template-columns:296px minmax(520px,1fr) minmax(360px,420px);gap:12px;display:grid}.single-rail,.single-panel,.single-stream-panel,.single-archive,.exif-sidebar,.exif-main,.exif-editor-form,.exif-queue-panel{min-height:0}.single-rail{gap:10px;display:grid;overflow:auto}.single-panel,.single-stream-panel,.single-archive{overflow:hidden}.single-panel-head,.single-workbench-head,.exif-queue-panel .section-heading,.exif-editor-heading,.gallery-workbench .gallery-search,.museum-console-head,.batch-workbench>.section-heading{border-bottom:1px solid var(--app-border);min-height:44px;padding:8px 12px}.single-upload-panel,.single-panel{align-content:start;gap:12px;padding-bottom:12px;display:grid}.single-upload-panel>:not(.single-panel-head),.single-panel>:not(.single-panel-head){margin-inline:12px}.single-dropzone{border:1px dashed var(--app-border);background:0 0;border-radius:10px;place-items:center;min-height:196px;display:grid;position:relative;overflow:hidden}.single-dropzone>span{color:var(--app-soft);text-align:center;justify-items:center;gap:8px;display:grid}.single-dropzone>span svg{color:color-mix(in oklch, var(--app-fg) 72%, var(--app-soft));margin-bottom:3px}.single-dropzone>span strong{color:var(--app-fg);font-size:13px;font-weight:600}.single-dropzone>span em{font-size:11px;font-style:normal}.single-dropzone input{opacity:0;position:absolute}.single-dropzone img,.gallery-thumb img,.batch-thumb img,.museum-image-card img,.gallery-modal-main-img,.gallery-modal-thumb img,.existing-artifact-thumb img,.museum-summary-photo{object-fit:cover;width:100%;height:100%}.single-dropzone img{object-fit:contain;background:#111;max-height:320px}.single-meta-list,.single-candidate-list,.single-stream-list,.single-archive-scroll,.exif-queue-list,.batch-list,.gallery-grid,.museum-card-grid,.museum-folder-list,.museum-image-grid{gap:8px;min-height:0;display:grid;overflow:auto}.single-meta-list{border-top:1px solid var(--app-border);gap:4px;padding-top:6px}.single-meta-list span{color:var(--app-soft);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.single-candidate,.single-stream-card,.exif-queue-item,.museum-folder-card,.museum-summary-card,.gallery-card,.batch-card{transition:background-color .14s,border-color .14s,transform .14s}.single-candidate,.exif-queue-item{border:1px solid var(--app-border);background:var(--app-card);width:100%;color:var(--app-fg);text-align:left;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px 12px;display:grid}.single-candidate-list{gap:8px}.single-stream-card.selected,.museum-folder-card.active,.museum-summary-card.active,.stream-card.selected{border-color:var(--app-primary);box-shadow:none}.single-candidate:hover,.single-stream-card:hover,.museum-folder-card:hover,.museum-summary-card:hover,.gallery-card:hover,.batch-card:hover{background:var(--app-muted)}.gallery-card.active,.batch-card.active,.gallery-modal-thumb.active,.existing-artifact-thumb.selected-action,.single-candidate.is-selected{border-color:var(--app-primary);box-shadow:0 0 0 1px var(--app-primary);background:color-mix(in srgb, var(--app-card) 92%, #111 8%)}.single-candidate strong,.single-result-grid strong,.gallery-title,.museum-summary-card-head strong,.museum-folder-text strong,.museum-image-card-copy strong{color:var(--app-fg);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.single-candidate em,.single-current-candidate em{color:var(--app-soft);font-size:11px;font-style:normal}.single-stream-panel,.single-archive,.exif-editor-form,.exif-queue-panel{grid-template-rows:auto minmax(0,1fr) auto;display:grid}.single-stream-list,.single-archive-scroll,.exif-editor-scroll{padding:12px}.single-empty{border:1px dashed var(--app-border);min-height:0;color:var(--app-soft);text-align:center;background:0 0;border-radius:10px;place-content:center;justify-items:center;gap:10px;padding:32px;display:grid}.single-empty-icon{border:1px solid var(--app-border);width:36px;height:36px;color:var(--app-fg);background:0 0;border-radius:9px;place-items:center;margin-bottom:3px;display:inline-grid}.single-empty strong{color:var(--app-fg);font-size:13px;font-weight:600}.single-empty p{max-width:360px;margin:0;font-size:11px;line-height:1.55}.single-stream-card{border:1px solid var(--app-border);background:var(--app-card);border-radius:10px;gap:10px;padding:12px;display:grid}.single-stream-row,.backend-match-head,.gallery-detail-section-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.provider-id{align-items:center;gap:8px;display:flex}.provider-id strong{font-size:13px;font-weight:600}.provider-id span{color:var(--app-soft);font-size:11px}.backend-match-count{color:var(--app-soft);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;font-size:10px;font-weight:500;line-height:1.5}.stepper{border-top:1px solid var(--app-border);border-bottom:1px solid var(--app-border);grid-template-columns:repeat(3,1fr);gap:6px;padding-block:6px;display:grid}.stepper-item,.flow-step{color:var(--app-soft);align-items:center;gap:6px;font-size:11px;display:flex}.stepper-item.done,.flow-step.done,.flow-step.active{color:var(--app-success)}.stepper-dot{border:1px solid var(--app-border);background:var(--app-card);width:18px;height:18px;color:inherit;border-radius:999px;place-items:center;display:inline-grid}.single-result-grid{border:1px solid var(--app-border);background:0 0;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:8px 10px;display:grid}.single-details{border:1px solid var(--app-border);background:0 0;border-radius:9px;padding:8px 10px}.single-details summary,.single-advanced summary,.batch-rename-panel summary,.batch-location-panel summary,.gallery-advanced-summary{color:var(--app-fg);cursor:pointer;font-size:12px;font-weight:500}.single-readiness{flex-wrap:wrap;gap:8px;padding:12px;display:flex}.single-readiness span{border:1px solid var(--app-border);background:var(--app-muted);min-height:24px;color:var(--app-soft);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:11px;font-weight:500;display:inline-flex}.single-readiness span.done{color:var(--app-success);border-color:var(--app-success);background:color-mix(in oklch, var(--ui-success-muted) 64%, white)}.single-current-candidate{border-bottom:1px solid var(--app-border);background:0 0;gap:6px;padding:10px 12px;display:grid}.single-current-candidate span{color:var(--app-soft);font-size:11px;font-weight:500}.single-current-candidate strong{font-size:12px;font-weight:600}.single-archive{grid-template-rows:auto auto auto minmax(0,1fr) auto}.single-submit-bar,.exif-editor-form .form-footer,.gallery-form-footer{border-top:1px solid var(--app-border);background:var(--app-card);justify-content:space-between;min-height:52px;padding:10px 14px}.form-section{gap:10px;padding:0;display:grid}.single-archive-scroll{gap:0;padding:0}.single-archive .form-section{padding:12px}.form-section-head{border-bottom:1px solid var(--app-border);padding-bottom:10px}.single-advanced-grid,.batch-core-grid,.gallery-advanced-body{grid-template-columns:repeat(2,minmax(0,1fr))}.single-advanced{background:var(--app-card)}.single-advanced>summary{justify-content:space-between;align-items:center;gap:10px;min-height:42px;padding:10px 12px;list-style:none;display:flex}.single-advanced>summary::-webkit-details-marker{display:none}.single-advanced>summary>span{align-items:center;gap:6px;display:inline-flex}.single-advanced-affordance{color:var(--app-soft);font-size:11px;font-weight:400}.single-advanced-affordance svg{transition:transform .16s ease-out}.single-advanced[open] .single-advanced-affordance svg{transform:rotate(90deg)}.operation-history-entry>div{gap:2px;min-width:0;display:grid}.operation-history-entry strong,.operation-history-entry p,.operation-history-entry small{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.operation-history-entry strong{font-size:var(--ui-type-label);align-items:center;gap:5px;display:inline-flex}.operation-history-entry p{color:var(--ui-text-secondary);font-size:var(--ui-type-caption)}.operation-history-entry small{color:var(--ui-text-tertiary);font-size:10px}.operation-history-empty{color:var(--ui-text-tertiary);font-size:var(--ui-type-label);text-align:center;padding:28px 24px;line-height:1.6}.operation-history-shortcuts{background:var(--ui-surface-wash);color:var(--ui-text-tertiary);justify-content:space-between;gap:12px;padding:8px 14px 10px;font-size:10px;display:flex}.operation-history-restore-detail{gap:16px;display:grid}.operation-history-restore-detail>p{color:var(--ui-text-secondary);margin:0;font-size:12px;line-height:1.6}.operation-history-restore-detail dl{border-top:1px solid var(--ui-line-subtle);margin:0;display:grid}.operation-history-restore-detail dl>div{border-bottom:1px solid var(--ui-line-subtle);grid-template-columns:76px minmax(0,1fr);gap:10px;padding:9px 0;display:grid}.operation-history-restore-detail dt{color:var(--ui-text-tertiary);font-size:11px}.operation-history-restore-detail dd{min-width:0;color:var(--ui-text-primary);margin:0;font-size:12px;line-height:1.5}.operation-history-restore-detail dd.is-detail{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.operation-history-restore-detail dd.is-affected{flex-wrap:wrap;gap:5px;display:flex}.operation-history-restore-detail dd.is-affected span{background:var(--ui-surface-accent);max-width:180px;color:var(--ui-text-secondary);text-overflow:ellipsis;white-space:nowrap;border-radius:5px;padding:2px 6px;font-size:10px;overflow:hidden}@media (prefers-reduced-motion:reduce){.operation-history-entry.is-action{transition:none}}.topbar-nav{min-width:0}.app-tabs .ant-tabs-nav:before{border:0}.app-tabs .ant-tabs-tab{border-radius:9px 9px 3px 3px;min-height:38px;font-size:13px;font-weight:560;transition:background-color .14s,color .14s;margin:0 4px 0 0!important;padding:8px 10px!important}.app-tabs .ant-tabs-tab:hover{background:var(--ui-surface-accent)}.app-tabs .ant-tabs-tab:focus-visible{outline:2px solid color-mix(in oklch, var(--ui-primary) 55%, transparent);outline-offset:-2px}.app-tabs .ant-tabs-ink-bar{border-radius:999px;height:2px!important}.backend-target-select-wrap{border-color:var(--ui-line-subtle);background:var(--ui-surface-default);min-height:38px;box-shadow:var(--ui-shadow-soft);padding-inline:13px 30px}.backend-target-select{min-width:8.4em;font-size:12px}.backend-target-select-wrap.online{border-color:color-mix(in oklch, var(--ui-success) 28%, var(--ui-line-subtle));background:color-mix(in oklch, var(--ui-success-muted) 80%, white)}.backend-target-select-wrap.offline{border-color:color-mix(in oklch, var(--ui-danger) 28%, var(--ui-line-subtle));background:color-mix(in oklch, var(--ui-danger) 6%, white)}button:not([class*=ant-]):not([data-ui=interactive-surface]),.gallery-toolbar-link{border-radius:10px;min-height:36px;padding-inline:13px;font-size:13px}button:not([class*=ant-]):not([data-ui=interactive-surface]):focus-visible,input:not([class*=ant-]):focus-visible,textarea:not([class*=ant-]):focus-visible,select:focus-visible,.gallery-toolbar-link:focus-visible,[data-ui=interactive-surface]:focus-visible{outline:2px solid color-mix(in oklch, var(--ui-primary) 48%, transparent);outline-offset:2px;box-shadow:none}.panel,.single-panel,.single-stream-panel,.single-archive,.exif-queue-panel,.exif-editor-form,.batch-card,.batch-core-card,.backend-match-card,.gallery-card,.gallery-modal-body,.gallery-detail-section,.gallery-advanced-details,.museum-summary-card,.museum-stage,.museum-map-panel,.museum-folder-column,.museum-image-panel,.museum-state-card,.museum-detail-modal-body,.form-section,.single-details,.single-advanced,.empty-state{border-radius:var(--ui-radius-xl);background:var(--ui-surface-default);border-color:#0000}.module-loading-state{min-height:220px;color:var(--ui-text-secondary);text-align:center;place-content:center;gap:6px;padding:32px 20px;display:grid}.module-loading-state h2,.module-loading-state p{margin:0}.section-heading,.single-panel-head,.single-workbench-head,.exif-editor-heading,.gallery-detail-head,.museum-console-head,.museum-stage-head,.museum-map-panel-head,.museum-folder-column-head,.museum-image-panel-head,.form-section-head,.batch-head,.batch-section-head{border-bottom-color:#0000}.single-panel-head,.single-workbench-head,.exif-queue-panel .section-heading,.exif-editor-heading,.batch-workbench>.section-heading,.form-section,.single-details,.single-advanced,.gallery-detail-section,.gallery-advanced-details,.museum-state-card{background:var(--ui-surface-wash)}.exif-queue-panel,.exif-editor-form,.single-panel,.single-stream-panel,.single-archive,.batch-card,.batch-core-card{box-shadow:var(--ui-shadow-card)}.section-heading h2,.single-panel-head h2,.single-workbench-head h2,.gallery-detail-title,.museum-stage h3,.museum-map-panel-head h3,.museum-image-panel h4{font-size:var(--ui-type-section);font-weight:680;line-height:var(--ui-leading-tight);letter-spacing:-.015em}.form-section-head h3,.batch-section-head strong{font-size:var(--ui-type-body);font-weight:650;line-height:var(--ui-leading-tight)}.page-kicker{color:var(--ui-primary);letter-spacing:.15em;font-size:10px;font-weight:750}input:not([class*=ant-]),select{min-height:36px;padding:7px 11px}input:not([class*=ant-]),textarea:not([class*=ant-]),select{border-color:var(--ui-line-subtle);background:var(--ui-surface-default);border-radius:10px;font-size:14px}textarea:not([class*=ant-]){min-height:86px;padding:9px 11px;line-height:1.6}.field>span:first-child{color:var(--ui-text-secondary);font-size:var(--ui-type-label);font-weight:600}.field-help{font-size:var(--ui-type-caption)}.app-shell>.panel.form-wide,.gallery-workbench,.batch-workbench,.museum-console{height:calc(100dvh - 88px);margin:16px}.gallery-workbench,.batch-workbench,.museum-console{gap:16px;padding:16px}.exif-console,.single-workbench{height:calc(100dvh - 64px);padding:10px}.single-workbench{grid-template-columns:320px minmax(500px,1fr) minmax(380px,430px);gap:16px}.exif-layout,.exif-layout-wide{grid-template-columns:minmax(310px,350px) minmax(0,1fr);gap:10px}.exif-queue-panel,.exif-editor-form{border:0;border-radius:14px;box-shadow:0 8px 26px #30261d0e}.exif-editor-form{box-shadow:none}.exif-preview-card,.exif-form-card,.exif-form-card .form-section{border:0}.exif-preview-card,.exif-form-card{background:var(--ui-surface-wash);box-shadow:none;border-radius:0}.exif-preview-card .ant-card-body{padding:16px}.exif-form-card+.exif-form-card{border-top:0;margin-top:6px}.exif-form-card .ant-card-head{border-bottom:0;min-height:44px;padding-inline:14px}.exif-form-card .ant-card-body{padding:4px 14px 16px}.exif-preview-card,.exif-form-card{border-radius:10px}.exif-editor-heading{min-height:48px;padding:9px 14px}.exif-tool-summary-count,.metadata-sync-target-row>span,.metadata-sync-status>span,.metadata-sync-presets>span{font-size:var(--ui-type-caption)}.exif-form-card,.form-section,.single-panel,.single-stream-panel,.batch-card{transition:background-color var(--ui-motion-base) ease, transform var(--ui-motion-base) var(--ui-ease-out)}.app-content>section{animation:workspace-enter var(--ui-motion-slow) var(--ui-ease-out) both}@keyframes workspace-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (width<=1280px){.single-workbench{grid-template-columns:300px minmax(440px,1fr)}.exif-layout,.exif-layout-wide{grid-template-columns:minmax(300px,330px) minmax(0,1fr)}}@media (width<=960px){.topbar{flex-flow:wrap;align-items:center;gap:6px 12px;padding-block:8px}.brand,.brand-copy,.topbar-actions{flex-direction:row;align-items:center}.brand{flex:1 0 100%}.topbar-actions{flex:1 0 100%;justify-content:space-between;width:100%}.topbar-nav{overscroll-behavior-inline:contain;min-width:0;overflow-x:auto}.app-tabs .ant-tabs-nav-wrap{overflow:visible}.app-tabs .ant-tabs-nav-list{white-space:nowrap}.app-shell>.panel.form-wide,.gallery-workbench,.batch-workbench,.museum-console{margin:12px}.exif-console,.single-workbench{height:auto;min-height:calc(100dvh - 112px);padding:12px}}@media (width<=680px){.topbar{padding-inline:12px;position:relative}.brand-lead{display:none}.brand-mark{width:25px;height:25px}.brand h1{font-size:15px}.topbar-actions{flex-wrap:nowrap;gap:8px}.topbar-nav{scrollbar-width:none;touch-action:pan-x;-webkit-overflow-scrolling:touch;flex:auto;width:auto;min-width:0;max-width:none;overflow-x:auto}.topbar-nav::-webkit-scrollbar{display:none}.topbar-nav .app-tabs{width:100%;min-width:0}.backend-target-select-wrap{flex:none;min-height:44px}.app-tabs .ant-tabs-tab{min-height:44px;padding-inline:9px!important}.app-shell>.panel.form-wide,.gallery-workbench,.batch-workbench,.museum-console{margin:0;padding:14px 12px 28px}.exif-console,.single-workbench{padding:10px}.exif-console{gap:8px}button:not([class*=ant-]):not([data-ui=interactive-surface]),.gallery-toolbar-link{min-height:44px}}.museum-map-layout{grid-template-columns:minmax(460px,.95fr) minmax(420px,1.05fr)}.museum-stage-body{grid-template-columns:300px minmax(0,1fr)}.museum-stage,.museum-map-panel,.museum-folder-column,.museum-image-panel{overflow:hidden}.museum-stage-head,.museum-map-panel-head,.museum-folder-column-head,.museum-image-panel-head{border-bottom:1px solid var(--app-border);padding:10px 12px}.museum-folder-list,.museum-image-grid{padding:10px}.museum-folder-card{text-align:left;grid-template-columns:18px minmax(0,1fr);gap:8px;padding:8px;display:grid}.museum-folder-icon{background:var(--app-muted);border-radius:4px;width:14px;height:14px;margin-top:2px}.museum-image-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.museum-image-card{text-align:left;padding:0;overflow:hidden}.museum-image-card img{height:130px}.museum-image-card-copy{padding:8px}.museum-map-frame,.gallery-location-map-shell,.gps-map-wrap{border:1px solid var(--app-border);background:var(--app-muted);border-radius:8px;min-height:420px;position:relative;overflow:hidden}.museum-map-canvas,.gallery-location-map,.gps-map{width:100%;height:100%;min-height:inherit}.museum-map-overlay,.gallery-location-map-overlay,.gps-map-wrap>span{background:color-mix(in oklch, var(--app-card) 80%, transparent);color:var(--app-soft);place-items:center;display:grid;position:absolute;inset:0}.museum-detail-modal-backdrop{background:0 0;border:0;position:absolute;inset:0}.museum-detail-modal-body{border-radius:12px;width:min(1180px,96vw);max-height:92vh;position:relative;overflow:hidden}.museum-detail-modal-bar{border-bottom:1px solid var(--app-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0;justify-content:space-between;align-items:center;min-height:52px;padding:10px 14px;display:flex}.museum-detail-modal-content{max-height:calc(92vh - 52px);padding:12px;overflow:auto}.gallery-form-footer,.museum-detail-modal-content>.single-submit-bar,.museum-detail-modal-content>.gallery-form-footer{border-top:1px solid var(--app-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0}.empty-state{border:1px solid var(--app-border);min-height:220px;color:var(--app-soft);text-align:center;background:#fafaf9;border-radius:12px;place-content:center;justify-items:center;gap:10px;padding:24px;display:grid}.empty-state strong,.empty-state h2{color:var(--app-fg);font-size:15px;font-weight:600}.empty-state p,.empty-state .muted{max-width:420px;font-size:12px;line-height:1.5}.hidden-folder-input,.exif-file-input{display:none}.empty-icon,.gallery-noimg,.gallery-modal-empty,.gallery-detail-empty{color:var(--app-soft)}@media (width<=1280px){.single-workbench{grid-template-columns:300px minmax(420px,1fr);height:auto;min-height:calc(100vh - 56px);overflow:auto}.single-archive{grid-column:1/-1;min-height:620px}.batch-core-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=960px){.metadata-sync-target-list{grid-template-columns:1fr}.metadata-sync-field-groups.is-preview .metadata-sync-field-group{grid-template-columns:120px minmax(0,1fr)}.metadata-sync-preview-fields-head{flex-direction:column;align-items:flex-start;gap:6px}.metadata-sync-preview-summary{grid-template-columns:1fr}.exif-capture-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.exif-captured-at-field{grid-column:1/-1}.topbar,.brand-copy,.topbar-actions,.gallery-workbench .gallery-search,.museum-console-head,.single-stream-row,.single-submit-bar{flex-direction:column;align-items:flex-start}.single-workbench,.exif-layout,.exif-layout-wide,.gallery-modal-body,.museum-map-layout,.museum-stage-body,.batch-card,.museum-summary-card,.field-row,.single-archive .field-row{grid-template-columns:1fr}.exif-console,.single-workbench,.gallery-workbench,.batch-workbench,.museum-console,.app-shell>.panel.form-wide{height:auto;min-height:calc(100vh - 56px);overflow:visible}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-shell{background:0 0;min-height:100dvh}.app-content{min-width:0}.app-content:focus{outline:none}.skip-link{z-index:120;border-radius:var(--ui-radius-md);background:var(--ui-primary-deep);color:var(--ui-text-on-accent);box-shadow:var(--ui-shadow-float);padding:9px 14px;font-weight:650;text-decoration:none;transition:transform .14s;position:fixed;top:10px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.topbar{border-bottom-color:var(--ui-line-subtle);-webkit-backdrop-filter:blur(18px)saturate(130%);backdrop-filter:blur(18px)saturate(130%);background:#fffdf9e0;min-height:64px;padding:9px clamp(14px,2vw,30px);box-shadow:0 1px #ffffffb8}.brand{gap:10px}.brand-mark{width:28px;height:28px}.brand-copy{gap:9px}.brand h1{color:var(--ui-text-primary);letter-spacing:.01em;font-family:Songti SC,STSong,Noto Serif SC,serif;font-size:16px;font-weight:650}.brand-lead{font-size:11px;line-height:1.35}.topbar-actions{gap:12px;min-width:0}@media (width<=680px){.topbar .topbar-actions{flex-flow:row;align-items:center}.topbar .topbar-nav{flex:1 1 0;width:0;overflow-x:auto}.topbar .topbar-nav .app-tabs{width:max-content;min-width:max-content}}.operation-history-controls{background:var(--ui-surface-wash);border-radius:9px;align-items:center;gap:1px;padding:2px;display:inline-flex}.operation-history-controls .ant-btn{width:30px;min-width:30px;height:30px;color:var(--ui-text-secondary);padding:0;position:relative}.operation-history-controls .ant-btn:not(:disabled):hover{background:var(--ui-surface-accent);color:var(--ui-text-primary)}.operation-history-count{background:var(--ui-primary);color:#fff;border-radius:999px;place-items:center;min-width:13px;height:13px;padding-inline:3px;font-size:8px;font-weight:700;line-height:1;display:grid;position:absolute;top:1px;right:1px}.operation-history-popover .ant-popover-inner{background:var(--ui-surface-default);border:0;border-radius:12px;padding:0;overflow:hidden;box-shadow:0 18px 54px #30261d29}.operation-history-panel{width:min(380px,100vw - 24px);color:var(--ui-text-primary)}.operation-history-head{background:var(--ui-surface-wash);justify-content:space-between;align-items:center;gap:16px;padding:13px 14px 10px;display:flex}.operation-history-head>div{gap:2px;display:grid}.operation-history-head strong{font-size:var(--ui-type-body)}.operation-history-head span{color:var(--ui-text-tertiary);font-size:var(--ui-type-caption)}.operation-history-list{max-height:min(460px,62vh);padding:8px 0;display:grid;position:relative;overflow-y:auto}.operation-history-entry{grid-template-columns:18px minmax(0,1fr);gap:7px;padding:8px 14px;display:grid;position:relative}.operation-history-entry.is-action{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;transition:background .16s,transform .16s}.operation-history-entry.is-action:hover,.operation-history-entry.is-action:focus-visible{background:var(--ui-surface-wash);outline:none}.operation-history-entry.is-action:active{transform:scale(.995)}.operation-history-entry:before{background:var(--ui-line-subtle);content:"";width:1px;position:absolute;top:0;bottom:0;left:22px}.operation-history-marker{z-index:1;background:var(--ui-text-tertiary);width:7px;height:7px;box-shadow:0 0 0 4px var(--ui-surface-default);border-radius:999px;margin:6px auto 0;position:relative}.operation-history-entry.is-current{background:var(--ui-surface-accent)}.operation-history-entry.is-current .operation-history-marker{background:var(--ui-primary);box-shadow:0 0 0 4px var(--ui-surface-accent)}.operation-history-entry.rename .operation-history-marker{background:#a86f3d}.operation-history-entry.location .operation-history-marker{background:#5d7d68}.operation-history-entry.artifact .operation-history-marker{background:#77644d}.operation-history-entry.content .operation-history-marker{background:#657a9e}.operation-history-entry.is-future{opacity:.56}.operation-history-entry.is-future .operation-history-marker{box-shadow:0 0 0 1px var(--ui-text-tertiary), 0 0 0 4px var(--ui-surface-default);background:0 0}
